@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-color:#0b0f19;--card-bg:#161c2db3;--card-border:#ffffff14;--text-primary:#f8fafc;--text-secondary:#94a3b8;--primary:#6366f1;--primary-hover:#4f46e5;--accent:#06b6d4;--success:#10b981;--error:#f43f5e;--warning:#f59e0b;--glass-bg:#0f172aa6;--glass-border:#ffffff0d;--nav-bg:#0f172acc;background-color:var(--bg-color);color:var(--text-primary);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(circle at top right, #6366f126, transparent 40%), radial-gradient(circle at bottom left, #06b6d41a, transparent 45%), var(--bg-color);background-attachment:fixed;min-height:100vh;overflow-x:hidden}.app-container{flex-direction:column;max-width:600px;min-height:100vh;margin:0 auto;padding-bottom:90px;display:flex}header{background:var(--nav-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--glass-border);z-index:100;justify-content:space-between;align-items:center;padding:20px 16px;display:flex;position:sticky;top:0}.logo{background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;align-items:center;gap:8px;font-size:1.4rem;font-weight:700;display:flex}.bottom-nav{background:var(--nav-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--glass-border);width:100%;max-width:600px;padding:12px 0 calc(12px + env(safe-area-inset-bottom,0px));z-index:100;justify-content:space-around;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 32px #0006}.nav-item{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;width:33.33%;font-size:.75rem;font-weight:500;transition:color .2s,transform .1s;display:flex}.nav-item:active{transform:scale(.95)}.nav-item.active{color:var(--primary)}.nav-item svg{width:22px;height:22px;transition:transform .2s}.nav-item.active svg{color:var(--primary);filter:drop-shadow(0 0 6px #6366f166);transform:translateY(-2px)}main{flex:1;width:100%;padding:24px 16px}.card{background:var(--card-bg);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;margin-bottom:24px;padding:24px;transition:transform .3s,border-color .3s;box-shadow:0 8px 32px #00000040}.card:hover{border-color:#ffffff26}h1{color:var(--text-primary);margin-bottom:8px;font-size:1.8rem;font-weight:700}h2{color:var(--text-primary);margin-bottom:16px;font-size:1.3rem;font-weight:600}p{color:var(--text-secondary);font-size:.95rem;line-height:1.6}.btn{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 24px;font-size:1rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-hover));color:#fff;box-shadow:0 4px 15px #6366f14d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #6366f166}.btn-primary:active{transform:translateY(1px)}.btn-secondary{color:var(--text-primary);background:#ffffff14;border:1px solid #ffffff1a}.btn-secondary:hover{background:#ffffff1f}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.form-group{margin-bottom:20px}label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.85rem;font-weight:600;display:block}.form-control{width:100%;color:var(--text-primary);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;padding:12px 16px;font-family:inherit;font-size:1rem;transition:border-color .2s,background-color .2s}.form-control:focus{border-color:var(--primary);background:#ffffff14;outline:none}select.form-control{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.scanner-container{flex-direction:column;align-items:center;gap:16px;display:flex}#reader,#qr-reader,#photo-reader{background:#0000004d;border:2px dashed #fff3;border-radius:16px;justify-content:center;align-items:center;width:100%;min-height:250px;display:flex;overflow:hidden}#reader video,#qr-reader video,#photo-reader video{object-fit:cover;border-radius:12px;width:100%!important;height:100%!important}.tab-selector{background:#ffffff0d;border-radius:10px;width:100%;margin-bottom:20px;padding:4px;display:flex}.tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:10px;font-size:.9rem;font-weight:600;transition:all .2s}.tab-btn.active{background:var(--primary);color:#fff}.file-upload-zone{text-align:center;cursor:pointer;background:#6366f108;border:2px dashed #6366f166;border-radius:16px;flex-direction:column;align-items:center;gap:12px;width:100%;padding:40px 20px;transition:border-color .2s,background-color .2s;display:flex}.file-upload-zone:hover{border-color:var(--primary);background:#6366f10f}.file-upload-zone svg{color:var(--primary);width:40px;height:40px}.alert{border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:20px;padding:16px;font-size:.95rem;display:flex}.alert-error{color:#fda4af;background:#f43f5e1a;border:1px solid #f43f5e33}.alert-success{color:#a7f3d0;background:#10b9811a;border:1px solid #10b98133}.alert svg{flex-shrink:0;width:20px;height:20px;margin-top:2px}.success-screen{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:20px 0;display:flex}.success-icon-wrapper{width:80px;height:80px;color:var(--success);background:#10b9811a;border-radius:50%;justify-content:center;align-items:center;margin-bottom:8px;display:flex}.success-icon-wrapper svg{width:40px;height:40px}.result-badge{color:#c7d2fe;background:linear-gradient(135deg,#6366f133,#06b6d433);border:1px solid #6366f14d;border-radius:20px;margin-top:8px;padding:8px 16px;font-weight:600;display:inline-block}.summary-grid{background:#0003;border-radius:12px;grid-template-columns:1fr 1fr;gap:16px;width:100%;margin-top:16px;padding:16px;display:grid}.summary-item{flex-direction:column;gap:4px;display:flex}.summary-label{color:var(--text-secondary);text-transform:uppercase;font-size:.75rem;font-weight:600}.summary-value{color:var(--text-primary);font-size:1rem;font-weight:600}.summary-item.full-width{grid-column:span 2}.image-preview-container{background:#000;border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;width:100%;max-height:250px;margin-bottom:20px;display:flex;overflow:hidden}.image-preview{object-fit:contain;max-width:100%;max-height:250px}.spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.date-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;display:grid}.quick-periods{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:24px;display:grid}.quick-period-btn{color:var(--text-secondary);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff14;border-radius:8px;padding:8px;font-size:.85rem;font-weight:600;transition:all .2s}.quick-period-btn:hover{color:var(--text-primary);background:#ffffff14}.quick-period-btn.active{border-color:var(--primary);color:var(--primary);background:#6366f126}.settings-warning{color:#fde68a;background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:12px;gap:12px;margin-bottom:24px;padding:16px;font-size:.9rem;display:flex}.settings-warning svg{color:var(--warning);flex-shrink:0}.footer-text{text-align:center;color:var(--text-secondary);margin-top:40px;font-size:.75rem}
