:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--bg-base: #0a0e17;--bg-surface: #111827;--bg-elevated: #1a2235;--bg-inset: #0d1320;--text-primary: #f0f4f8;--text-secondary: #94a3b8;--text-muted: #64748b;--gray-50: #1a2235;--gray-100: #111827;--gray-200: rgba(255,255,255,.06);--gray-300: rgba(255,255,255,.1);--gray-400: #64748b;--gray-500: #94a3b8;--gray-600: #cbd5e1;--gray-700: #e2e8f0;--gray-800: #f0f4f8;--gray-900: #f8fafc;--primary: #3b82f6;--primary-hover: #60a5fa;--supervisor: #8b5cf6;--supervisor-hover: #a78bfa;--success: #22c55e;--success-bg: rgba(34,197,94,.1);--warning: #f59e0b;--warning-bg: rgba(245,158,11,.1);--danger: #ef4444;--danger-bg: rgba(239,68,68,.1);--border-subtle: rgba(255,255,255,.06);--border-default: rgba(255,255,255,.1);--border-strong: rgba(255,255,255,.15);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--text-xs: 11px;--text-sm: 13px;--text-base: 14px;--text-lg: 18px;--text-xl: 22px;--shadow-sm: 0 1px 3px rgba(0,0,0,.3), 0 0 0 1px rgba(255,255,255,.06);--shadow-md: 0 4px 12px rgba(0,0,0,.4), 0 0 0 1px rgba(255,255,255,.1);--shadow-lg: 0 8px 24px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.1);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color:var(--text-primary);background-color:var(--bg-base);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100vh;width:100%}body{background:var(--bg-base);font-size:var(--text-base)}a{font-weight:500;color:var(--primary);text-decoration:none}a:hover{color:var(--primary-hover)}button{font-family:inherit;font-size:var(--text-base);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}button:focus,button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--bg-base),0 0 0 4px var(--primary)}button:disabled{cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:var(--text-base)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--bg-base: #0a0e17;--bg-surface: #111827;--bg-elevated: #1a2235;--bg-inset: #0d1320;--text-primary: #f0f4f8;--text-secondary: #94a3b8;--text-muted: #64748b;--gray-50: #1a2235;--gray-100: #111827;--gray-200: rgba(255,255,255,.06);--gray-300: rgba(255,255,255,.1);--gray-400: #64748b;--gray-500: #94a3b8;--gray-600: #cbd5e1;--gray-700: #e2e8f0;--gray-800: #f0f4f8;--gray-900: #f8fafc;--primary: #3b82f6;--primary-hover: #60a5fa;--success: #22c55e;--success-bg: rgba(34,197,94,.1);--warning: #f59e0b;--warning-bg: rgba(245,158,11,.1);--danger: #ef4444;--danger-bg: rgba(239,68,68,.1);--border-subtle: rgba(255,255,255,.06);--border-default: rgba(255,255,255,.1);--border-strong: rgba(255,255,255,.15);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-xs: 11px;--text-sm: 13px;--text-base: 14px;--text-lg: 18px;--text-xl: 22px;--shadow-sm: 0 1px 3px rgba(0,0,0,.3), 0 0 0 1px rgba(255,255,255,.06);--shadow-md: 0 4px 12px rgba(0,0,0,.4), 0 0 0 1px rgba(255,255,255,.1);--shadow-lg: 0 8px 24px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.1)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes confettiFall{0%{transform:translateY(-100vh) rotate(0);opacity:1}85%{opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}@keyframes confettiSway{0%,to{transform:translate(0)}25%{transform:translate(15px)}75%{transform:translate(-15px)}}@keyframes successPop{0%{opacity:0;transform:scale(.5)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes successFadeOut{0%{opacity:1}to{opacity:0}}.success-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#0a0e17d9;animation:successFadeOut .4s ease-in 2.1s forwards}.success-message{text-align:center;animation:successPop .5s cubic-bezier(.175,.885,.32,1.275) forwards}.success-checkmark{width:72px;height:72px;border-radius:50%;background:#22c55e26;border:3px solid #22c55e;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:36px}.success-title{font-size:24px;font-weight:700;color:var(--text-primary);margin:0 0 6px}.success-subtitle{font-size:14px;color:var(--text-secondary);margin:0}.confetti-piece{position:fixed;top:-10px;width:10px;height:10px;border-radius:2px;animation:confettiFall linear forwards;z-index:10000}.confetti-piece:nth-child(odd){border-radius:50%}.confetti-piece:nth-child(3n){width:8px;height:14px;border-radius:1px}.confetti-piece:nth-child(5n){width:6px;height:6px}@keyframes pulseGlow{0%,to{box-shadow:0 0 8px #3b82f64d}50%{box-shadow:0 0 16px #3b82f680}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes countdown-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes deadline-pulse{0%,to{opacity:1}50%{opacity:.4}}.app{max-width:480px;margin:0 auto;min-height:100vh;background:var(--bg-base)}@media (min-width: 640px){.app{max-width:640px}}@media (min-width: 900px){.app{max-width:800px}}.app-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:#111827d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-primary);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--border-subtle)}.app-header h1{font-size:var(--text-base);font-weight:600;margin:0;letter-spacing:-.025em}.header-actions{display:flex;align-items:center;gap:var(--space-3)}.team-name{font-size:var(--text-xs);color:var(--text-muted);display:none}@media (min-width: 400px){.team-name{display:block}}.btn-logout{background:transparent;border:1px solid var(--border-default);color:var(--text-secondary);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-logout:hover{background:var(--bg-elevated);border-color:var(--border-strong);color:var(--text-primary)}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:var(--bg-base);background-image:radial-gradient(ellipse at 50% 30%,rgba(59,130,246,.08) 0%,transparent 60%);padding:var(--space-4)}.login-card{background:var(--bg-surface);padding:var(--space-6) var(--space-5);border-radius:var(--radius-xl);width:100%;max-width:280px;text-align:center;box-shadow:var(--shadow-lg);border:1px solid var(--border-subtle);animation:fadeInUp .4s cubic-bezier(.4,0,.2,1)}.login-card-wide{max-width:360px}.login-card h2{margin:0 0 var(--space-3) 0;color:var(--text-primary);font-size:var(--text-lg);font-weight:600;letter-spacing:-.025em}.login-step-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.login-outlet-label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500}.login-change-link{background:none;border:none;color:var(--primary);font-size:var(--text-sm);font-weight:500;cursor:pointer;padding:0}.login-change-link:hover{color:var(--primary-hover);text-decoration:underline}.login-list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3);max-height:60vh;overflow-y:auto}.login-group-label{font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding:var(--space-2) 0 var(--space-1) 0}.login-group-label:first-child{padding-top:0}.login-option-btn{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:var(--space-3) var(--space-4);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);min-height:48px;justify-content:center;text-align:left}.login-option-btn:hover{background:var(--bg-surface);border-color:var(--primary);box-shadow:0 0 20px #3b82f61a,var(--shadow-sm)}.login-option-btn:active{background:#3b82f61a}.login-option-supervisor{border-left:3px solid var(--text-muted)}.login-option-supervisor:hover{border-left-color:var(--primary)}.login-option-name{font-size:var(--text-base);font-weight:500;color:var(--text-primary)}.login-option-sub{font-size:var(--text-xs);color:var(--text-muted)}.login-empty{color:var(--text-muted);text-align:center;padding:var(--space-4);font-size:var(--text-sm)}.login-loading{display:flex;justify-content:center;padding:var(--space-6)}.passcode-input{width:100%;padding:var(--space-4);font-size:24px;text-align:center;letter-spacing:8px;border:2px solid var(--border-default);border-radius:var(--radius-md);margin:var(--space-4) 0;transition:all .2s cubic-bezier(.4,0,.2,1);font-weight:600;color:var(--text-primary);background:var(--bg-inset)}.passcode-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 20px #3b82f626,0 0 0 1px var(--primary)}.btn-login{width:100%;padding:var(--space-3) var(--space-4);background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-login:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 0 20px #3b82f633}.btn-login:disabled{background:#ffffff1a;color:var(--text-muted);cursor:not-allowed}.attestation-icon{font-size:36px;margin-bottom:var(--space-2)}.attestation-text{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6;text-align:left;margin:0 0 var(--space-5) 0;padding:var(--space-4);background:var(--bg-inset);border:1px solid var(--border-default);border-radius:var(--radius-md)}.btn-attestation{background:var(--success);font-size:15px;padding:var(--space-4)}.btn-attestation:hover:not(:disabled){background:#16a34a;box-shadow:0 0 20px #22c55e40}.error{color:var(--danger);margin:0 0 var(--space-3) 0;font-size:var(--text-sm);background:var(--danger-bg);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid rgba(239,68,68,.25)}.dashboard{padding:var(--space-3)}@media (min-width: 640px){.dashboard{padding:var(--space-4)}}.section{margin-bottom:var(--space-5);animation:fadeInUp .3s cubic-bezier(.4,0,.2,1)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle)}.section-title{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.badge-count{background:var(--primary);color:#fff;padding:var(--space-1) var(--space-2);border-radius:10px;font-size:var(--text-xs);font-weight:600;min-width:20px;text-align:center}.tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-4);background:var(--bg-inset);border-radius:var(--radius-md);padding:3px;border:1px solid var(--border-subtle)}.tab{flex:1;padding:var(--space-2) var(--space-3);background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--text-muted);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.tab:hover{background:#ffffff0d;color:var(--text-secondary)}.tab.active{background:var(--bg-elevated);color:var(--primary);box-shadow:var(--shadow-sm)}.tab-badge{background:#ffffff1a;color:var(--text-muted);padding:2px 6px;border-radius:10px;font-size:var(--text-xs);font-weight:600;min-width:18px;text-align:center}.tab.active .tab-badge{background:var(--primary);color:#fff}.empty{color:var(--text-muted);text-align:center;padding:var(--space-6) var(--space-4);background:var(--bg-surface);border:1px dashed var(--border-default);border-radius:var(--radius-md);font-size:var(--text-sm)}.checklist-list{display:flex;flex-direction:column;gap:var(--space-2)}.checklist-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.checklist-card:hover{border-color:var(--primary);box-shadow:0 0 20px #3b82f614,var(--shadow-sm);transform:translateY(-1px)}.checklist-card-inner{display:grid;grid-template-columns:1fr auto;gap:var(--space-3);align-items:start}.checklist-main{min-width:0}.checklist-title{font-size:var(--text-base);font-weight:500;color:var(--text-primary);margin:0 0 var(--space-1) 0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.025em}.checklist-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}.checklist-meta-separator{color:var(--border-default)}.checklist-status-col{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1)}.badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.badge-pending{background:var(--warning-bg);color:var(--warning);border:1px solid rgba(245,158,11,.25)}.badge-completed{background:var(--success-bg);color:var(--success);border:1px solid rgba(34,197,94,.25)}.badge-pending-verification{background:var(--warning-bg);color:var(--warning);border:1px solid rgba(245,158,11,.25)}.badge-verified{background:#3b82f61a;color:#60a5fa;border:1px solid rgba(59,130,246,.25)}.badge-expired,.badge-rejected{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(239,68,68,.25)}.badge-resubmitted{background:#8b5cf61a;color:#a78bfa;border:1px solid rgba(139,92,246,.25)}.checklist-card.completed{background:var(--bg-surface);border-color:var(--border-subtle)}.checklist-card.completed:hover{border-color:var(--success);box-shadow:0 0 20px #22c55e14,var(--shadow-sm);transform:translateY(-1px)}.checklist-card.completed.verified{background:#3b82f60d;border-color:#3b82f633}.checklist-card.completed.verified:hover{border-color:#3b82f6;box-shadow:0 0 20px #3b82f61a,var(--shadow-sm)}.view-text{font-size:var(--text-xs);color:var(--text-muted);font-weight:500}.checklist-card:hover .view-text{color:var(--primary)}.countdown-timer{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);font-weight:500}.countdown-normal{color:var(--success)}.countdown-warning{color:var(--warning)}.countdown-critical{color:var(--danger);font-weight:700;animation:countdown-pulse 1s ease-in-out infinite}.countdown-expired{color:var(--text-muted);text-decoration:line-through}.btn-sync{width:100%;padding:var(--space-3) var(--space-4);background:var(--success);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;margin-top:var(--space-3);transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-sync:hover:not(:disabled){background:#16a34a;box-shadow:0 0 20px #22c55e33}.btn-sync:disabled{background:#ffffff1a;color:var(--text-muted);cursor:not-allowed}.sync-message{background:var(--success);color:#fff;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-3);text-align:center;font-size:var(--text-sm);font-weight:500}.sync-message.error{background:var(--danger)}.checklist-form{padding:var(--space-3)}@media (min-width: 640px){.checklist-form{padding:var(--space-4)}}.form-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.btn-back{display:inline-flex;align-items:center;gap:var(--space-1);background:transparent;border:none;color:var(--primary);font-size:var(--text-sm);font-weight:500;padding:var(--space-1) 0;cursor:pointer}.btn-back:hover{color:var(--primary-hover)}.form-header-title{flex:1;min-width:0}.form-header-title h2{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);margin:0 0 var(--space-1) 0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.025em}.date-label{font-size:var(--text-xs);color:var(--text-muted);margin:0}.deadline-banner{background:var(--warning-bg);border:1px solid rgba(245,158,11,.25);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3)}.deadline-banner.expired{background:var(--danger-bg);border-color:#ef444440}.deadline-banner.warning{background:#fb923c1a;border-color:#fb923c40}.deadline-banner.critical{background:var(--danger-bg);border-color:#ef444440}.deadline-time-warning{color:#fb923c}.deadline-time-critical{color:var(--danger);animation:deadline-pulse 1s ease-in-out infinite}.deadline-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.deadline-main{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:500;color:var(--warning)}.deadline-banner.expired .deadline-main{color:var(--danger)}.deadline-time{font-size:var(--text-xs);font-weight:600;padding:2px var(--space-2);background:#ffffff14;border-radius:var(--radius-sm);color:var(--text-primary)}.deadline-sub{font-size:var(--text-xs);color:var(--warning);margin:var(--space-1) 0 0 0;opacity:.8}.deadline-banner.expired .deadline-sub{color:var(--danger);opacity:.8}.progress-section{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-3)}.progress-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.progress-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.progress-percent{font-size:var(--text-base);font-weight:700;color:var(--primary)}.progress-percent.complete{color:var(--success)}.progress-bar{height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),#60a5fa);border-radius:3px;transition:width .3s ease}.progress-fill.complete{background:linear-gradient(90deg,var(--success),#4ade80)}.progress-footer{display:flex;justify-content:space-between;margin-top:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}.progress-hint{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-2);padding:var(--space-2);background:var(--warning-bg);border:1px solid rgba(245,158,11,.25);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--warning)}.items-list{display:flex;flex-direction:column;gap:var(--space-2)}.item-row{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.item-row:hover{border-color:var(--border-default)}.item-row.complete{background:#22c55e0f;border-color:#22c55e33}.item-main{display:flex;align-items:flex-start;gap:var(--space-2);flex:1;min-width:0}.item-number{font-size:var(--text-xs);font-weight:700;color:var(--text-muted);min-width:20px;padding-top:2px}.item-text{flex:1;font-size:var(--text-base);font-weight:600;color:var(--text-primary);line-height:1.4;margin:0}.item-row.complete .item-text{color:var(--success)}.item-controls{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.photo-controls{display:flex;align-items:center;gap:var(--space-2)}.btn-photo-capture{padding:var(--space-2) var(--space-3);background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.btn-photo-capture:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 0 16px #3b82f633}.btn-photo-capture:disabled{opacity:.6;cursor:not-allowed}.photo-preview-inline{display:flex;align-items:center;gap:var(--space-2)}.photo-preview-inline img{width:60px;height:60px;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border-default)}.btn-photo-retake{padding:var(--space-1) var(--space-2);background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.btn-photo-retake:hover:not(:disabled){background:#ffffff1a}.btn-photo-retake:disabled{opacity:.6;cursor:not-allowed}.btn-response{flex:1;height:36px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center}.btn-response:hover:not(:disabled){border-color:var(--border-strong);background:#ffffff14}.btn-response:disabled{opacity:.5;cursor:not-allowed}.btn-response.yes.selected{background:var(--success);border-color:var(--success);color:#fff;box-shadow:0 0 12px #22c55e4d}.btn-response.no.selected{background:var(--danger);border-color:var(--danger);color:#fff;box-shadow:0 0 12px #ef44444d}.btn-response.na.selected{background:#ffffff26;border-color:#ffffff40;color:var(--text-primary)}.item-input{width:80px;flex:none;height:36px;padding:0 var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:var(--text-sm);text-align:center;transition:all .2s cubic-bezier(.4,0,.2,1);background:var(--bg-inset);color:var(--text-primary)}.item-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 12px #3b82f626}.item-input.complete{border-color:#22c55e66;background:#22c55e14}.temperature-input-wrapper{display:flex;align-items:center;gap:var(--space-1)}.temperature-unit{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary)}.temperature-range{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.item-input.flagged{border-color:var(--danger);background:var(--danger-bg);box-shadow:0 0 8px #ef444433}.btn-note{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:16px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0}.btn-note:hover:not(:disabled){border-color:var(--border-strong);background:#ffffff14}.btn-note.has-note{background:var(--warning-bg);border-color:#f59e0b4d}.btn-note:disabled{opacity:.4;cursor:not-allowed}.signature-section{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);margin-top:var(--space-4)}.signature-section h3{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin:0 0 var(--space-3) 0}.btn-signature{width:100%;padding:var(--space-3);border:2px dashed var(--border-default);border-radius:var(--radius-md);background:var(--bg-inset);color:var(--text-muted);font-size:var(--text-sm);font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--space-2);transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-signature:hover{border-color:var(--primary);color:var(--primary);background:#3b82f60d}.signature-preview{background:var(--bg-inset);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-3)}.signature-preview img{max-width:100%;max-height:80px;display:block}.signature-meta{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-2)}.signature-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.btn-secondary{flex:1;padding:var(--space-2) var(--space-3);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-secondary:hover{background:#ffffff14;border-color:var(--border-strong)}.btn-danger{color:var(--danger);border-color:#ef44444d}.btn-danger:hover{background:var(--danger-bg)}.form-actions{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border-subtle)}.btn-save{width:100%;padding:var(--space-3) var(--space-4);background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-save:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 0 20px #3b82f633}.btn-save:disabled{background:#ffffff1a;color:var(--text-muted);cursor:not-allowed}.btn-save.saved{background:var(--success);box-shadow:0 0 20px #22c55e33}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.modal{background:var(--bg-elevated);border-radius:var(--radius-lg);padding:var(--space-4);width:100%;max-width:360px;max-height:90vh;overflow-y:auto;border:1px solid var(--border-default);box-shadow:var(--shadow-lg);animation:modalIn .25s cubic-bezier(.4,0,.2,1)}.modal h3{font-size:var(--text-base);font-weight:600;margin:0 0 var(--space-3) 0;color:var(--text-primary);letter-spacing:-.025em}.modal textarea{width:100%;padding:var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:var(--text-sm);resize:vertical;min-height:100px;font-family:inherit;background:var(--bg-inset);color:var(--text-primary)}.modal textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 12px #3b82f626}.modal-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);color:var(--text-muted)}.loading-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.08);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:var(--space-3);filter:drop-shadow(0 0 8px rgba(59,130,246,.3))}.version-footer{text-align:center;padding:var(--space-4) var(--space-3);font-size:var(--text-xs);color:var(--text-muted)}
