body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@media print{.no-print{display:none!important}body{background:#fff!important}.card{box-shadow:none!important;page-break-inside:avoid}}.pwa-install-prompt{animation:slideUp .3s ease-out;bottom:20px;left:50%;max-width:500px;position:fixed;transform:translateX(-50%);width:90%;z-index:9999}.pwa-install-ios{bottom:calc(20px + env(safe-area-inset-bottom))}@keyframes slideUp{0%{opacity:0;transform:translateX(-50%) translateY(100px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.pwa-install-content{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#1e3c72,#2a5298);border-radius:12px;box-shadow:0 8px 24px #0000004d;color:#fff;display:flex;gap:15px;padding:16px 20px}.pwa-install-icon{align-items:center;display:flex;flex-shrink:0;justify-content:center}.pwa-install-icon svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.pwa-install-text{flex:1 1}.pwa-install-text h3{font-size:16px;font-weight:600;margin:0 0 4px;text-shadow:0 1px 2px #0003}.pwa-install-text p{font-size:13px;line-height:1.4;margin:0;opacity:.95}.pwa-install-text strong{background:#ffffff26;border-radius:4px;color:#fff;font-weight:700;padding:2px 6px}.pwa-install-actions{align-items:center;display:flex;gap:10px}.pwa-install-btn{background:#fff;border:none;border-radius:6px;box-shadow:0 2px 8px #00000026;color:#1e3c72;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px;transition:all .2s}.pwa-install-btn:hover{box-shadow:0 4px 12px #ffffff4d;transform:scale(1.05)}.pwa-install-btn:active{transform:scale(.98)}.pwa-dismiss-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:32px;justify-content:center;transition:all .2s;width:32px}.pwa-dismiss-btn:hover{background:#ffffff4d;transform:scale(1.1)}.pwa-dismiss-btn:active{transform:scale(.95)}.pwa-install-ios .pwa-install-content{align-items:flex-start;flex-direction:column;gap:12px;padding:16px}.pwa-install-ios .pwa-install-icon{align-self:flex-start}.pwa-install-ios .pwa-dismiss-btn{position:absolute;right:12px;top:12px}@media (max-width:600px){.pwa-install-prompt{bottom:10px;width:95%}.pwa-install-ios{bottom:calc(10px + env(safe-area-inset-bottom))}.pwa-install-content{gap:12px;padding:12px 16px}.pwa-install-icon svg{height:20px;width:20px}.pwa-install-text h3{font-size:14px}.pwa-install-text p{font-size:12px}.pwa-install-btn{font-size:13px;padding:6px 16px}.pwa-dismiss-btn{font-size:16px;height:28px;width:28px}}@media (max-height:500px) and (orientation:landscape){.pwa-install-prompt{bottom:5px}.pwa-install-content{gap:10px;padding:8px 12px}.pwa-install-text h3{font-size:13px}.pwa-install-text p{font-size:11px}}.offline-indicator{animation:slideDown .3s ease-out;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);box-shadow:0 2px 8px #0003;color:#fff;left:0;padding:10px;position:fixed;right:0;text-align:center;top:0;z-index:9998}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.offline-content{align-items:center;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center}.offline-icon{animation:pulse 2s infinite;font-size:18px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.offline-text{letter-spacing:.3px}@media (max-width:600px){.offline-indicator{padding:8px}.offline-content{font-size:13px}.offline-icon{font-size:16px}}*{box-sizing:border-box;margin:0;padding:0}::-webkit-scrollbar{height:1px;width:1px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}::-webkit-scrollbar-thumb{background:#888;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#555}*{scrollbar-color:#888 #f1f1f1;scrollbar-width:thin}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;padding:0}.App,body{background:#f5f7fa;min-height:100vh}.container{margin:0 auto;max-width:1400px;padding:15px}.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:15px;padding:25px}.header{background:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 1px 3px #0000000d;color:#1e3c72;justify-content:space-between;min-height:50px;padding:8px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.header,.header-content{align-items:center;display:flex}.header-content{gap:12px}.logo{height:32px;width:auto}.header h1{color:#1e3c72;font-size:18px;font-weight:700;margin:0}.header-actions{align-items:center;display:flex;gap:10px}.btn{border:none;border-radius:6px;cursor:pointer;display:inline-block;font-size:14px;font-weight:600;padding:8px 20px;text-align:center;text-decoration:none;transition:all .3s ease}.btn-primary{background:#4caf50;color:#fff}.btn-primary:hover{background:#45a049;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.btn-secondary{background:#2196f3;color:#fff}.btn-secondary:hover{background:#0b7dda;transform:translateY(-2px)}.btn-danger{background:#f44336;color:#fff}.btn-danger:hover{background:#da190b}.btn-outline{background:#fff;border:2px solid #2196f3;color:#2196f3}.btn-outline:hover{background:#2196f3;color:#fff}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-weight:600;margin-bottom:8px}.form-group label .required-star{color:#f44336;font-weight:700}.form-group input,.form-group select,.form-group textarea{border:2px solid #ddd;border-radius:8px;font-size:16px;padding:12px;transition:border-color .3s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2196f3;outline:none}.form-row,.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stats-grid{margin-bottom:30px}.stat-card{background:#fff;border-left:4px solid #2196f3;border-radius:12px;box-shadow:0 2px 8px #00000014;color:#1e3c72;padding:25px;transition:all .3s ease}.stat-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-4px)}.stat-card h3{color:#666;font-size:18px;font-weight:500;margin-bottom:10px}.stat-card .stat-value{color:#1e3c72;font-size:36px;font-weight:700}.table-container{overflow-x:auto}table{border-collapse:collapse;margin-top:20px;width:100%}table td,table th{border-bottom:1px solid #ddd;padding:15px;text-align:left}table th{background:#f5f5f5;color:#333;font-weight:600}table tr:hover{background:#f9f9f9}.status-badge{border-radius:4px;display:inline-block;font-size:13px;font-weight:700;letter-spacing:.3px;padding:6px 14px;text-transform:uppercase}.status-valid{background:#4caf50;color:#fff}.status-expired{background:#f44336;color:#fff}.status-suspicious{background:#ff9800;color:#fff}.qr-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:30px;text-align:center}.image-preview{border:2px solid #ddd;border-radius:8px;margin-top:10px;max-height:200px;max-width:200px}.alert{border-radius:8px;font-weight:500;margin-bottom:20px;padding:15px}.alert-success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert-warning{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.loading{color:#666;font-size:18px;padding:40px;text-align:center}.receipt-details{background:#f9f9f9;border-radius:8px;margin-top:20px;padding:20px}.receipt-details h3{color:#333;margin-bottom:15px}.receipt-details p{color:#666;margin-bottom:10px}.receipt-details strong{color:#333}.info-section{margin-bottom:30px}.info-section h2{border-bottom:3px solid #2196f3;color:#1e3c72;margin-bottom:15px;padding-bottom:10px}.info-section p,.info-section ul{color:#666;line-height:1.8;margin-bottom:15px}.info-section ul{padding-left:30px}.info-section li{margin-bottom:10px}@media (max-width:768px){.container{padding:10px}.card{border-radius:8px;margin-bottom:10px;padding:15px}.header{flex-direction:column;gap:15px}.header-actions{flex-direction:column;width:100%}.btn{width:100%}.form-row{grid-template-columns:1fr}.stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)}table{font-size:14px}table td,table th{padding:10px}}@media print{.no-print{display:none!important}body{margin:0;padding:0}.thermal-receipt,body{background:#fff!important}.thermal-receipt{box-shadow:none!important;font-size:11pt!important;margin:0!important;max-width:80mm!important;padding:10mm!important;width:80mm!important}.thermal-receipt *{max-width:100%!important}.thermal-logo{height:auto!important;margin:0 auto 5mm!important;width:50mm!important}.thermal-header{margin-bottom:5mm!important;text-align:center!important}.thermal-divider{border-top:2px dashed #000!important;margin:3mm 0!important}.thermal-section{margin-bottom:4mm!important}.thermal-row{display:flex!important;font-size:10pt!important;justify-content:space-between!important;margin-bottom:2mm!important}.thermal-qr{margin:5mm 0!important;text-align:center!important}.thermal-footer{border-top:2px solid #000!important;font-size:9pt!important;margin-top:5mm!important;padding-top:3mm!important;text-align:center!important}.card{box-shadow:none!important;page-break-inside:avoid}}.thermal-receipt{border:2px dashed #ccc;margin:20px auto;max-width:80mm;padding:15px;width:80mm}.thermal-logo{display:block;height:auto;margin:0 auto 10px;width:60mm}.thermal-header h2{font-size:18px}.thermal-divider{border-top:2px dashed #333;margin:10px 0}.thermal-section-title{margin-bottom:6px;padding-bottom:3px;text-transform:uppercase}.thermal-row{margin-bottom:4px}.thermal-row-value{max-width:60%}.thermal-qr{background:#f9f9f9;border-radius:8px;margin:15px 0;padding:10px}.thermal-qr svg{display:block;margin:0 auto}.thermal-qr-text{font-size:10px;margin-top:8px}.thermal-footer{border-top:2px solid #333;margin-top:15px;padding-top:10px}.thermal-footer p{margin:4px 0}.thermal-status{border-radius:4px;font-size:12px;margin:8px 0;padding:4px 12px}.animal-icon{font-size:24px;margin:0 5px}.receipt-id-box{background:#f0f0f0;border:2px solid #333;margin:10px 0}.thermal-receipt{background:#fff;border:2px solid #333;border-radius:8px;box-shadow:0 4px 6px #0000001a;font-family:Courier New,monospace;margin:0 auto;max-width:400px;padding:20px}.thermal-header{border-bottom:2px dashed #333;margin-bottom:15px;padding-bottom:15px;text-align:center}.thermal-logo{height:50px;margin-bottom:10px;width:auto}.thermal-header h2{color:#1e3c72;font-size:20px;font-weight:700;margin:5px 0}.thermal-header p{color:#666;font-size:12px;margin:3px 0}.thermal-divider{border-top:1px dashed #999;margin:12px 0}.receipt-id-box{background:#1e3c72;border-radius:4px;color:#fff;font-size:14px;font-weight:700;letter-spacing:1px;padding:8px;text-align:center}.receipt-id-box,.thermal-section{margin-bottom:12px}.thermal-section-title{border-bottom:1px solid #ddd;color:#1e3c72;font-size:13px;font-weight:700;margin-bottom:8px;padding:4px 0}.thermal-row{display:flex;font-size:12px;justify-content:space-between;line-height:1.4;padding:3px 0}.thermal-row-label{color:#333;flex-shrink:0;font-weight:600;margin-right:10px}.thermal-row-value{color:#666;text-align:right;word-break:break-word}.thermal-qr{padding:15px 0;text-align:center}.thermal-qr-text{color:#666;font-size:11px;margin:8px 0 0}.thermal-status{border-radius:20px;display:inline-block;font-size:13px;font-weight:700;padding:6px 16px;text-transform:uppercase}.thermal-status.valid{background:#4caf50;color:#fff}.thermal-status.expired{background:#f44336;color:#fff}.thermal-status.suspicious{background:#ff9800;color:#fff}.thermal-footer{border-top:2px dashed #333;color:#666;font-size:11px;margin-top:12px;padding-top:12px;text-align:center}.thermal-footer p{margin:3px 0}@media print{.thermal-receipt{border:none;box-shadow:none;margin:0;max-width:80mm;padding:10px}.thermal-header h2{font-size:18px}.thermal-row{font-size:11px}.thermal-section-title{font-size:12px}.receipt-id-box{font-size:13px}}@media (max-width:480px){.thermal-receipt{max-width:100%;padding:15px}}.compact-receipt{background:#fff;border:1px dashed #ccc;box-shadow:0 2px 4px #0000001a;color:#000;font-family:Arial,Helvetica Neue,sans-serif;font-size:13px;line-height:1.5;margin:0 auto;max-width:76mm;padding:2mm;width:76mm}.compact-header{border-bottom:2px solid #000;margin-bottom:8px;padding-bottom:6px;text-align:center}.compact-single-column{display:flex;flex-direction:column;gap:3px;margin-top:8px}.compact-item{align-items:flex-start;border-bottom:1px dotted #ddd;display:flex;font-size:12px;gap:5px;justify-content:space-between;line-height:1.4;padding:3px 0}.compact-label{word-wrap:break-word;flex-shrink:0;max-width:45%}.compact-label,.compact-value{color:#000;font-size:13px;font-weight:600}.compact-value{flex:1 1;text-align:right;word-break:break-word}.compact-status{background:#fff;border:2px solid #000;color:#000;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.3px;padding:4px 10px;text-transform:uppercase}.compact-status.valid{background:#fff;border-color:#000;color:#000}.compact-status.expired{background:#000;border-color:#000;color:#fff}.compact-status.suspicious{background:#fff;border-color:#000;color:#000}@media print{@page{size:80mm auto;margin:2mm}body *{visibility:hidden}.compact-receipt,.compact-receipt *{visibility:visible}.compact-receipt{background:#fff;border:none;box-shadow:none;color:#000;font-family:Arial,sans-serif;font-size:12px;left:0;line-height:1.3;margin:0;max-width:76mm;padding:0;page-break-inside:avoid;position:absolute;top:0;width:76mm}.btn,.container>:not(.compact-receipt),.header,.no-print,button{display:none!important;visibility:hidden!important}.compact-header{border-bottom:2px solid #000;margin-bottom:6px;padding-bottom:4px}.compact-item{border-bottom:1px dashed #000;font-size:11px;line-height:1.4;padding:3px 0}.compact-label,.compact-value{font-size:13px;font-weight:700}.compact-status{border:2px solid #000;font-size:10px;font-weight:700;padding:3px 8px}*{color-adjust:exact!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.compact-receipt{font-weight:600}.compact-label,.compact-value{font-weight:700}svg{height:auto;max-width:100%}.line,hr{border:none;border-top:1px dashed #000;margin:3mm 0}table{border-collapse:collapse;font-size:11px;width:100%}td,th{padding:2px 0;text-align:left;word-break:break-word}.right{text-align:right}.center{text-align:center}.bold,.total{font-weight:700}.total{font-size:14px}}@media (max-width:480px){.compact-receipt{max-width:100%;padding:10px;width:100%}.compact-single-column{gap:2px}}
/*# sourceMappingURL=main.ab6af2e8.css.map*/