:root{--paper:#F2F5F9;--surface:#fff;--surface-2:#E9EEF5;--surface-3:#DCE4EE;--ink:#12203A;--ink-2:#46536B;--ink-3:#7B879C;--line:#CFD8E4;--line-2:#E4EAF2;--accent:#1D6FA3;--accent-soft:#E1EEF8;--ok:#1C7A52;--ok-soft:#DFF1E8;--cond:#8E6208;--cond-soft:#F8EEDA;--bad:#A93228;--bad-soft:#F8E4E1}
*{box-sizing:border-box}
html,body{height:100%;margin:0}
body{background:var(--paper);color:var(--ink);font:17px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-tap-highlight-color:transparent}
#app,#app>.screen{display:flex;flex-direction:column;height:100%}
button,.btn{font:inherit;min-height:48px;padding:0 22px;border-radius:9px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink-2);cursor:pointer}
button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}
.btn-ghost{background:transparent}
input,textarea,select{font:inherit;min-height:48px;padding:8px 12px;border:1.5px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);width:100%}
textarea{min-height:96px}
.tbar{display:flex;align-items:center;gap:16px;height:60px;padding:0 22px;background:var(--surface-2);border-bottom:1px solid var(--line);flex:none}
.brand{font-weight:700;color:var(--accent);letter-spacing:.04em;font-size:19px}
.tbar .doc{font-family:ui-monospace,monospace;font-size:14px;color:var(--ink-2)}
.tbar .right{margin-left:auto;display:flex;gap:9px;align-items:center}
.thead{padding:16px 26px 12px;border-bottom:1px solid var(--line-2);flex:none}
.thead h1{margin:2px 0 4px;font-size:25px;font-weight:600}
.thead .num,.thead .sp{font-family:ui-monospace,monospace;font-size:13px;color:var(--ink-3)}
.tbody{flex:1;overflow:auto;padding:16px 26px}
.tfoot{display:flex;align-items:center;gap:14px;padding:12px 26px;background:var(--surface-2);border-top:1px solid var(--line);flex:none}
.tfoot .spacer{flex:1}
.verdict{display:flex;gap:10px;margin-top:12px}
.vb{padding:0 20px;font-weight:600}
.vb.on-ok{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}
.vb.on-bad{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}
.vb.on-cond{background:var(--cond-soft);border-color:var(--cond);color:var(--cond)}
.list{display:flex;flex-direction:column;gap:6px}
.row{display:flex;align-items:center;gap:14px;min-height:56px;padding:8px 18px;border:1px solid var(--line);border-radius:9px;background:var(--surface);cursor:pointer}
.row.now{border-color:var(--accent);background:var(--accent-soft)}
.row .grow{flex:1}
.mono{font-family:ui-monospace,monospace}
.muted{color:var(--ink-3)}
.badge{font-family:ui-monospace,monospace;font-size:13px;font-weight:600;color:var(--accent);background:var(--accent-soft);padding:3px 9px;border-radius:20px}
.chip{font-size:13.5px;font-weight:600;padding:5px 12px;border-radius:20px;white-space:nowrap}
.chip.ok{background:var(--ok-soft);color:var(--ok)}.chip.bad{background:var(--bad-soft);color:var(--bad)}.chip.cond{background:var(--cond-soft);color:var(--cond)}.chip.none{background:var(--surface-2);color:var(--ink-3)}.chip.draft{background:var(--accent);color:#fff}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.pick{padding:0 16px;min-height:44px;display:inline-flex;align-items:center}
.pick.sel{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}
.lbl{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:600;margin:14px 0 7px}
.field{margin-bottom:12px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.photos{display:flex;gap:10px;flex-wrap:wrap}
.photos img{width:120px;height:90px;object-fit:cover;border-radius:7px;border:1px solid var(--line)}
.rec{display:flex;gap:11px;align-items:baseline;padding:9px 13px;background:var(--surface-2);border-left:3px solid var(--accent);border-radius:0 7px 7px 0}
.rec .where{font-weight:600;min-width:140px}
.error{color:var(--bad);margin-top:8px}
#update-banner{background:var(--cond-soft);color:var(--cond);padding:10px 22px;text-align:center}
.login{margin:auto;width:420px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:28px}
