.qr-scanner-container {
max-width: 600px;
margin: 20px auto;
padding: 25px;
background: #ffffff;
border-radius: 12px;
box-shadow: 0 4px 20px rgba(0,0,0,0.1);
border: 1px solid #e1e1e1;
}
.qr-scanner-header {
text-align: center;
margin-bottom: 25px;
}
.qr-scanner-header h3 {
color: #1d2327;
margin: 0 0 8px 0;
font-size: 24px;
}
.qr-scanner-header p {
color: #646970;
margin: 0;
font-size: 14px;
}
.scanner-status {
margin: 15px 0;
}
.status-loading {
padding: 12px;
background: #f0f6fc;
border: 1px solid #72aee6;
border-radius: 6px;
text-align: center;
color: #135e96;
font-weight: 500;
}
.qr-reader {
width: 100%;
margin: 0 auto 20px;
border-radius: 8px;
overflow: hidden;
border: 2px solid #f0f0f0;
}
.scanner-controls {
text-align: center;
margin: 20px 0;
}
.qr-btn {
padding: 12px 24px;
border: none;
border-radius: 6px;
cursor: pointer;
font-size: 14px;
font-weight: 500;
margin: 5px;
transition: all 0.2s ease;
}
.qr-btn-primary {
background: #007cba;
color: white;
}
.qr-btn-primary:hover {
background: #005a87;
transform: translateY(-1px);
}
.qr-btn-secondary {
background: #6c757d;
color: white;
}
.qr-btn-secondary:hover {
background: #545b62;
}
.qr-btn-success {
background: #d52b1e;
color: white !important;
font-size: 20px !important;
padding: 18px 25px !important;
font-weight: bold !important;
letter-spacing: normal;
font-family: 'suzukipro';
margin: 0 auto;
display: block;
line-height: 20px !important;
border-top-left-radius: 50px;
border-top-right-radius: 50px;
border-bottom-right-radius: 50px;
border-bottom-left-radius: 50px;
text-transform: uppercase;
}
.qr-btn-success:hover {
background: #005aa9;
}
.qr-btn:disabled {
background: #a7aaad;
cursor: not-allowed;
transform: none;
}
.row-gris{
max-width: 600px;
margin: 20px auto;
padding: 25px;
background: #ffffff;
border-radius: 12px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
border: 1px solid #e1e1e1;
}
.scan-result {
padding: 15px;
margin: 20px 0;
border-radius: 6px;
display: none;
font-weight: 500;
}
.scan-result.success {
background: #d1e7dd;
color: #0f5132;
border: 1px solid #badbcc;
}
.scan-result.error {
background: #f8d7da;
color: #721c24;
border: 1px solid #f1aeb5;
}
.scan-result.warning {
background: #fff3cd;
color: #664d03;
border: 1px solid #ffecb5;
}
.scan-form {
margin-top: 25px;
padding-top: 20px;
border-top: 1px solid #f0f0f0;
}
.form-group {
margin-bottom: 20px;
}
.form-group label {
display: block;
margin-bottom: 8px;
font-weight: 600;
color: #1d2327;
}
.form-group input,
.form-group textarea {
width: 100%;
padding: 12px;
border: 1px solid #dcdcde;
border-radius: 6px;
font-size: 14px;
transition: border-color 0.2s ease;
box-sizing: border-box;
}
.form-group input:focus,
.form-group textarea:focus {
outline: none;
border-color: #007cba;
box-shadow: 0 0 0 2px rgba(0, 124, 186, 0.2);
}
.form-group input[readonly] {
background-color: #f6f7f7;
color: #646970;
} @media (max-width: 768px) {
.qr-scanner-container {
margin: 10px;
padding: 20px;
}
.scanner-controls {
display: flex;
flex-direction: column;
}
.qr-btn {
margin: 5px 0;
}
}