@import"https://api.fontshare.com/v2/css?f[]=clash-display@400,500,600,700&f[]=satoshi@400,500,700&display=swap";:root{--font-display: "Clash Display", sans-serif;--font-body: "Satoshi", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-base: 16px;--space-lg: 20px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-full: 9999px;--transition: .2s ease}[data-theme=dark],.theme-dark{--bg-base: #0B2545;--bg-surface: #13293D;--bg-surface-hover: #1a3550;--color-border: #1e3a5f;--color-border-focus: #B45309;--text-primary: #E8F1F2;--text-secondary: #94a3b8;--text-muted: #64748b;--color-accent: #B45309;--color-accent-hover: #D97706;--color-accent-glow: rgba(180, 83, 9, .15);--color-success: #22c55e;--color-warning: #f59e0b;--color-error: #ef4444;--shadow-card: 0 2px 8px rgba(0, 0, 0, .3);--shadow-card-hover: 0 4px 16px rgba(0, 0, 0, .4);--shadow-glow: 0 0 20px rgba(180, 83, 9, .15);--shadow-input-focus: 0 0 0 3px rgba(180, 83, 9, .2)}[data-theme=light],.theme-light{--bg-base: #f8fafc;--bg-surface: #ffffff;--bg-surface-hover: #f1f5f9;--color-border: #e2e8f0;--color-border-focus: #B45309;--text-primary: #0B2545;--text-secondary: #475569;--text-muted: #94a3b8;--color-accent: #B45309;--color-accent-hover: #92400E;--color-accent-glow: rgba(180, 83, 9, .08);--color-success: #16a34a;--color-warning: #d97706;--color-error: #dc2626;--shadow-card: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-card-hover: 0 4px 12px rgba(0, 0, 0, .08);--shadow-glow: 0 0 16px rgba(180, 83, 9, .08);--shadow-input-focus: 0 0 0 3px rgba(180, 83, 9, .15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg-base);color:var(--text-primary);min-height:100dvh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:contain;touch-action:manipulation}::-moz-selection{background:#b453094d;color:var(--text-primary)}::selection{background:#b453094d;color:var(--text-primary)}.font-display{font-family:var(--font-display)}.font-body{font-family:var(--font-body)}.text-logo{font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--color-accent);letter-spacing:-.5px;line-height:1.1}.text-heading{font-family:var(--font-display);font-size:22px;font-weight:600;line-height:1.2}.text-subheading{font-family:var(--font-display);font-size:17px;font-weight:600;line-height:1.3}.text-body{font-family:var(--font-body);font-size:15px;font-weight:400;line-height:1.6}.text-label{font-family:var(--font-body);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);line-height:1.4}.text-meta{font-family:var(--font-body);font-size:13px;color:var(--text-muted);line-height:1.5}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-accent{color:var(--color-accent)}.container{max-width:480px;margin:0 auto;padding:var(--space-xl) var(--space-lg) var(--space-3xl)}.container-wide{max-width:900px;margin:0 auto;padding:var(--space-2xl) var(--space-lg)}.card{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-card);padding:var(--space-lg);transition:box-shadow var(--transition),border-color var(--transition)}.card:hover{box-shadow:var(--shadow-card-hover)}.input{width:100%;background:var(--bg-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:16px;padding:var(--space-md) var(--space-base);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color var(--transition),box-shadow var(--transition)}.input:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-input-focus)}.input::-moz-placeholder{color:var(--text-muted)}.input::placeholder{color:var(--text-muted)}textarea.input{resize:vertical;min-height:70px}select.input option{background:var(--bg-surface)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);font-family:var(--font-body);font-size:14px;font-weight:600;border:none;cursor:pointer;min-height:44px;transition:all var(--transition);-webkit-tap-highlight-color:transparent}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-accent{background:var(--color-accent);color:#fff}.btn-accent:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--shadow-glow)}.btn-accent-lg{width:100%;padding:18px;border-radius:var(--radius-lg);font-size:17px;font-weight:700;background:var(--color-accent);color:#fff;border:none;cursor:pointer;min-height:56px;transition:all var(--transition);-webkit-tap-highlight-color:transparent}.btn-accent-lg:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--shadow-glow)}.btn-accent-lg:active:not(:disabled){transform:scale(.98)}.btn-accent-lg:disabled{opacity:.5;cursor:not-allowed}.btn-approve{background:#166534;color:#4ade80}.btn-approve:hover:not(:disabled){background:#15803d}.btn-reject{background:#7f1d1d;color:#f87171}.btn-reject:hover:not(:disabled){background:#991b1b}.badge{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:3px var(--space-sm);border-radius:var(--radius-sm);text-transform:capitalize}.gps-bar{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:#13293dcc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition)}.gps-bar.located{color:var(--color-success)}.gps-bar.error{color:var(--color-warning)}.gps-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--text-secondary);flex-shrink:0}.gps-bar.located .gps-dot{background:var(--color-success)}.gps-bar.error .gps-dot{background:var(--color-warning)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.gps-dot.pulsing{animation:pulse 1.2s ease-in-out infinite}.camera-btn{width:100%;min-height:50dvh;border:none;border-radius:20px;background:var(--bg-surface);background-image:linear-gradient(180deg,var(--bg-surface-hover) 0%,var(--bg-surface) 100%);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-base);transition:all var(--transition);-webkit-tap-highlight-color:transparent;box-shadow:var(--shadow-card),inset 0 1px #ffffff0a;position:relative;overflow:hidden}.camera-btn:before{content:"";position:absolute;inset:0;border-radius:20px;border:2px solid var(--color-border);transition:border-color var(--transition);pointer-events:none}.camera-btn:hover,.camera-btn:active{background-image:linear-gradient(180deg,rgba(180,83,9,.06) 0%,var(--bg-surface) 100%);box-shadow:var(--shadow-card-hover),var(--shadow-glow)}.camera-btn:hover:before,.camera-btn:active:before{border-color:var(--color-accent)}.camera-btn .camera-icon-wrap{width:88px;height:88px;border-radius:50%;background:#b453091a;border:2px solid rgba(180,83,9,.25);display:flex;align-items:center;justify-content:center;animation:cameraPulse 2.5s ease-in-out infinite}@keyframes cameraPulse{0%,to{transform:scale(1);box-shadow:0 0 #b4530926}50%{transform:scale(1.04);box-shadow:0 0 20px 4px #b453091a}}.camera-btn svg{opacity:.7;color:var(--color-accent);transition:opacity var(--transition)}.camera-btn:hover svg{opacity:1}.camera-btn .cta{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--text-primary)}.camera-btn .hint{font-size:13px;color:var(--text-muted)}.status-card{display:none;text-align:center;padding:var(--space-2xl) var(--space-xl);background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-card)}.status-card.visible{display:block}.status-card .icon{width:56px;height:56px;margin:0 auto var(--space-base)}.status-card .title{font-family:var(--font-display);font-size:20px;font-weight:700;margin-bottom:var(--space-sm)}.status-card .subtitle{font-size:14px;color:var(--text-secondary);line-height:1.5}.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.15);border-top-color:var(--color-accent);border-radius:var(--radius-full);animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.offline-banner{display:none;background:#f59e0b1f;color:var(--color-warning);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);border:1px solid rgba(245,158,11,.2);font-size:12px;font-weight:500;text-align:center;margin-bottom:var(--space-md)}.error-page{text-align:center;padding:80px var(--space-xl)}.error-page h1{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--color-error);margin-bottom:var(--space-md)}.error-page p{font-size:14px;color:var(--text-secondary)}.nav{background:var(--bg-surface);padding:var(--space-base) var(--space-xl);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.fade-in{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
