:root{--bg:#f4f5f7;--surface:#fff;--text:#1d2330;--muted:#667085;--line:#d9dde5;--accent:#1f5fa8;--danger:#b42318;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.45}*{box-sizing:border-box}body{margin:0}h1{margin:0 0 1rem;font-size:1.35rem}.center{text-align:center;color:var(--muted);margin-top:20vh}.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;max-width:1000px;margin:1.5rem auto;padding:1.5rem}.card.narrow{max-width:420px;margin-top:12vh}.page{min-height:100vh}.bar{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:1rem;padding:.75rem 1.5rem;display:flex}.bar .who{margin-left:auto}form{gap:.9rem;display:grid}label{gap:.3rem;font-size:.92rem;font-weight:600;display:grid}input{font:inherit;border:1px solid var(--line);border-radius:6px;padding:.55rem .7rem;font-weight:400}input:focus{outline:2px solid var(--accent);outline-offset:1px}button{font:inherit;background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:6px;justify-self:start;padding:.55rem 1rem}button:disabled{opacity:.6;cursor:wait}button.link{color:var(--accent);background:0 0;padding:.2rem 0;text-decoration:underline}[role=alert]{color:var(--danger)}.small{color:var(--muted);font-size:.85rem}.muted{color:var(--muted)}.qr{width:200px;height:200px;margin:.5rem 0;display:block}.search{max-width:360px;margin-bottom:.5rem}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:.5rem .6rem}th{color:var(--muted);font-size:.85rem;font-weight:600}tbody tr:hover{background:#f8fafc}tr.linked td{padding:0}tr.linked a{color:inherit;padding:.5rem .6rem;text-decoration:none;display:block}tr.linked:hover{cursor:pointer;background:#eef4fb}tr.linked:hover td:first-child a,tr.linked a:focus-visible{color:var(--accent)}tr.linked a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}tr.linked:focus-within{background:#eef4fb}code{word-break:break-all;background:#eef1f5;border-radius:4px;padding:.1rem .3rem}.card.wide{max-width:1280px}.split{grid-template-columns:minmax(340px,1fr) minmax(0,1.15fr);align-items:start;gap:1.5rem;display:grid}.scan{border:1px dashed var(--line);background:#fafbfc;border-radius:8px;flex-direction:column;justify-content:center;align-items:stretch;min-height:60vh;display:flex;position:sticky;top:1rem}.scan>.muted{text-align:center}.scan-viewer{scroll-behavior:auto;background:#e4e7ec;height:calc(100vh - 9.5rem);min-height:22rem;overflow:hidden auto}.scan-viewer>p{text-align:center;margin:0;padding:2rem 1rem}.scan-pages{position:relative}.scan-pages img{background:#fff;width:100%;height:auto;margin-bottom:10px;display:block;box-shadow:0 1px 3px #1018282e}.scan-check{border-bottom:1px solid var(--line);background:var(--surface);gap:.25rem;margin:0;padding:.4rem .75rem;font-size:.85rem;list-style:none;display:grid}.scan-check li{padding-left:1.3rem;position:relative}.scan-check li:before{font-weight:700;position:absolute;left:0}.scan-check .ok{color:#067647}.scan-check .ok:before{content:"✓"}.scan-check .error{color:var(--danger);font-weight:600}.scan-check .error:before{content:"✕"}.scan-check .warning{color:#93370d}.scan-check .warning:before{content:"!"}.scan-check .info{color:var(--muted)}.scan-check .info:before{content:"i"}.scan-band{pointer-events:none;background:#ffd60a38;border-top:2px solid #eaaa08bf;border-bottom:2px solid #eaaa08bf;transition:top .35s,height .35s;position:absolute;left:0;right:0}@media (prefers-reduced-motion:reduce){.scan-band{transition:none}}.scan-dialog{flex-direction:column;gap:.75rem;width:min(1100px,100%);max-height:calc(100vh - 2rem);display:flex}.scan-dialog-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.scan-dialog-head h2{margin:0;font-size:1.05rem}.scan-dialog .scan-viewer{border-radius:6px;height:calc(100vh - 8rem)}fieldset{border:1px solid var(--line);border-radius:6px;gap:.4rem;padding:.6rem .8rem;display:grid}legend{padding:0 .3rem;font-size:.92rem;font-weight:600}label.choice{align-items:center;gap:.5rem;font-weight:400;display:flex}select{font:inherit;border:1px solid var(--line);border-radius:6px;padding:.5rem}.field-error{color:var(--danger);font-size:.85rem;font-weight:400}input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--danger)}.actions{align-items:center;gap:1rem;display:flex}.notice{color:#067647;background:#ecfdf3;border:1px solid #abefc6;border-radius:6px;padding:.5rem .75rem}.toolbar{justify-content:space-between;align-items:center;gap:1rem;display:flex}@media (width<=900px){.split{grid-template-columns:1fr}.scan{min-height:0;position:static}.scan-viewer{height:70vh}}.field{gap:.3rem;display:grid}.field>label{font-size:.92rem;font-weight:600}.chosen-file{border-bottom:1px solid var(--line);background:var(--surface);border-radius:8px 8px 0 0;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem .75rem;font-size:.9rem;display:flex}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visually-hidden:focus+.file-picker button{outline:2px solid var(--accent);outline-offset:1px}.bar .brand{color:var(--text);font-weight:700;text-decoration:none}.bar .brand:hover{color:var(--accent)}a.back{color:var(--accent);margin-bottom:.5rem;font-size:.92rem;text-decoration:none;display:inline-block}a.back:hover{text-decoration:underline}button.secondary{background:var(--surface);color:var(--accent);border:1px solid var(--accent)}button.danger{background:var(--danger)}.file-picker{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}input.date{max-width:10rem}.save-bar{z-index:1;background:var(--surface);border-top:1px solid var(--line);margin-top:.5rem;padding:.75rem 0;position:sticky;bottom:0}.scan.dragging{border:2px dashed var(--accent);background:#eef4fb}.drop-hint{text-align:center;color:var(--accent);font-weight:600}.overlay{z-index:10;background:#10182873;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.card.dialog{margin:0;box-shadow:0 12px 32px #10182840}.card.dialog h2{margin:0 0 .5rem;font-size:1.15rem}.scan.empty{background:#f2f7fd;border:2px dashed #9db7d8}.scan .drop-target{width:100%;min-height:60vh;color:var(--text);cursor:pointer;text-align:center;background:0 0;border-radius:8px;flex:1;align-self:stretch;justify-items:center;gap:.4rem;padding:2rem;display:grid}.scan .drop-target:before{content:"⬆";color:var(--accent);font-size:2rem}.scan .drop-target strong{color:var(--accent);font-size:1.05rem}.scan .drop-target span{color:var(--muted);font-size:.92rem}.scan .drop-target:hover,.scan .drop-target:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:#e6f0fb}.save-message{color:var(--danger);margin:0;font-weight:600}.bar{z-index:5;min-height:3.25rem;position:sticky;top:0}.scan{top:4.25rem}html{scroll-padding-top:4.5rem;scroll-padding-bottom:5rem}.field-warning{color:#93370d;background:#fffaeb;border:1px solid #fedf89;border-radius:6px;padding:.35rem .6rem;font-size:.85rem;font-weight:400}.required-mark{color:var(--danger);margin-left:.15rem}.required-legend{margin:0}.required-legend:first-letter{color:var(--danger)}.label-row{align-items:baseline;gap:.15rem;display:flex}.label-row>label{font-size:.92rem;font-weight:600}fieldset.section{border:0;gap:.9rem;min-width:0;margin:.4rem 0 0;padding:0}fieldset.section>legend{border-bottom:1px solid var(--line);width:100%;margin-bottom:.2rem;padding:0 0 .3rem;font-size:1rem;font-weight:700}input.short{max-width:10rem}label.choice input{width:1.05rem;height:1.05rem;margin:0}fieldset.entry{border:1px solid var(--line);background:#fafbfc;border-radius:8px;gap:.7rem;min-width:0;padding:.6rem .9rem .8rem}fieldset.entry>legend{color:var(--muted);padding:0 .3rem;font-size:.9rem;font-weight:600}fieldset.entry>button.link{color:var(--danger);justify-self:end}.list-add{align-items:center;gap:.75rem;display:flex}fieldset.entry{grid-template-columns:minmax(0,1fr)}fieldset.entry select{max-width:100%}.person-summary{color:var(--muted);margin:-.6rem 0 1rem}.card-section{border-top:1px solid var(--line);padding:.9rem 0 .4rem}.card-section h2{margin:0 0 .5rem;font-size:1rem}dl.pairs{grid-template-columns:max-content 1fr;gap:.3rem 1.2rem;margin:0;display:grid}dl.pairs>div{display:contents}dl.pairs dt{color:var(--muted);font-size:.9rem}dl.pairs dd{margin:0}.source{margin:.35rem 0 .6rem}.secret{font-variant-numeric:tabular-nums}details.history{margin:.2rem 0 .6rem}details.history summary{cursor:pointer;color:var(--accent);font-size:.9rem}details.corrections ul{margin:.3rem 0;padding-left:1.2rem;font-size:.9rem}form.correction{border-left:3px solid var(--accent);margin:.6rem 0 1rem;padding:.2rem 0 .2rem 1rem}form.correction .actions{gap:.5rem;display:flex}.entry-view p{margin:.2rem 0 0}.company-switch{gap:.5rem;margin-bottom:.5rem;display:flex}
