:root{--bg:#f4f6f9;--card:#ffffff;--ink:#0f1b2a;--muted:#5b6878;--line:#d8dee6;--navy:#0f2a44;--stop:#c62828;--stop-bg:#fdecec;--warn:#b26a00;--warn-bg:#fff4e0;--ok:#1b7f3b;--ok-bg:#e7f6ec;--amber:#d98e04;--radius:14px}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:17px;-webkit-text-size-adjust:100%}.app{max-width:560px;margin:0 auto;padding:max(12px,env(safe-area-inset-top)) 16px max(24px,env(safe-area-inset-bottom))}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 0 10px}.topbar-actions{display:flex;gap:4px;white-space:nowrap}.brand{font-weight:800;font-size:19px;color:var(--navy)}.statusbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.chip{font-size:14px;padding:6px 10px;border-radius:999px;background:#e9edf2;color:var(--muted)}.chip.ok{background:var(--ok-bg);color:var(--ok)}.chip.warn{background:var(--warn-bg);color:var(--warn)}.modes{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.mode{border:2px solid var(--line);background:var(--card);border-radius:12px;padding:10px 6px;text-align:center;color:var(--ink);font:inherit;display:flex;flex-direction:column;gap:2px}.mode span{font-weight:700}.mode small{font-size:12px;color:var(--muted)}.mode.active{border-color:var(--navy);background:#e6edf5}.mode.amber.active{border-color:var(--amber);background:#fff4dd}.banner{margin:10px 0 0;padding:10px 12px;border-radius:10px;font-size:15px}.banner.amber{background:#fff4dd;color:#7a4f00}.tabs{display:flex;gap:6px;margin:14px 0;border-bottom:1px solid var(--line)}.tabs button{font:inherit;background:none;padding:10px 12px;color:var(--muted);border:none;border-bottom:3px solid transparent}.tabs button.active{color:var(--navy);font-weight:700;border-bottom-color:var(--navy)}.stack{gap:14px}.stack,.stack-sm{display:flex;flex-direction:column}.row,.stack-sm{gap:8px}.row{display:flex}.row>*{flex:1 1}.row.spread{justify-content:space-between;align-items:center}.row.spread>*{flex:initial}.center{text-align:center}.muted{color:var(--muted)}.small{font-size:14px}.btn{font:inherit;font-weight:700;border-radius:12px;border:2px solid transparent;padding:12px 16px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.btn.disabled,.btn:disabled{opacity:.45;pointer-events:none}.btn.big{min-height:56px;font-size:18px}.btn.huge{min-height:96px;font-size:22px}.btn.primary{background:var(--navy);color:#fff}.btn.secondary{background:var(--card);color:var(--navy);border-color:var(--navy)}.btn.danger{background:var(--stop);color:#fff}.btn.amber{background:var(--amber);color:#fff}.btn.link{background:none;min-height:40px;padding:8px}.btn.link,.busy{color:var(--navy);font-weight:600}.busy{display:flex;align-items:center;gap:10px;margin:0}.spinner{width:18px;height:18px;border:3px solid #c9d4e0;border-top:3px solid var(--navy);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.error{margin:0;padding:12px;border-radius:10px;background:var(--stop-bg);color:var(--stop);font-weight:600}.card{background:var(--card);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:14px;border-top:6px solid var(--line);box-shadow:0 1px 3px rgba(15,27,42,.08)}.card h2{margin:0 0 4px;font-size:22px}.card-head p{margin:0}.card.tone-stop{border-top-color:var(--stop)}.card.tone-stop h2{color:var(--stop)}.card.tone-warn{border-top-color:var(--warn)}.card.tone-ok{border-top-color:var(--ok)}.card.tone-ok h2{color:var(--ok)}.photo{width:100%;max-height:240px;object-fit:contain;background:#111;border-radius:10px}.plate-row{display:flex;gap:10px}.grow{flex:1 1}.field{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted);font-weight:600}.field input,.field select,textarea{font:inherit;font-size:18px;color:var(--ink);padding:12px;border:2px solid var(--line);border-radius:10px;background:#fff;min-height:52px;width:100%}.plate-input{font-family:ui-monospace,Menlo,monospace;font-size:24px!important;font-weight:700;letter-spacing:2px}.field select{min-width:86px}.list{list-style:none;margin:0;padding:0;gap:8px}.list,.list li{display:flex;flex-direction:column}.list li{background:var(--card);border-radius:12px;padding:12px;gap:6px}.section-title{font-size:17px;margin:8px 0 0}.dialog-backdrop{position:fixed;inset:0;background:rgba(10,20,30,.5);display:flex;align-items:flex-end;justify-content:center;padding:16px;z-index:10}.dialog{background:var(--card);border-radius:16px;padding:18px;width:100%;max-width:520px;display:flex;flex-direction:column;gap:12px}.dialog h2,.dialog p{margin:0}.login{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:16px}.login .card{width:100%;max-width:420px;border-top-color:var(--navy)}.prose h2{font-size:18px;margin:8px 0 0}.prose ol,.prose p,.prose ul{margin:0;line-height:1.45}.prose li{margin-bottom:6px}