:root{font-family:system-ui,sans-serif;color:#153050;background:#f3f6fa;line-height:1.45;--blue:#155cc4;--line:#d6e2ef;--muted:#4b6582}*{box-sizing:border-box}body{margin:0}main{max-width:1120px;padding:20px;margin:auto}h1{font-size:1.75rem;margin:0 0 14px}h2{font-size:1.18rem;margin:0 0 10px}p{margin:0 0 12px}button,input,select{font:inherit;color:inherit}button{min-height:44px;padding:8px 14px;border-radius:8px;border:1px solid #b8cce4;background:#fff;font-weight:650;cursor:pointer}button:hover:not(:disabled){background:#e9f2ff}button:disabled{opacity:.55;cursor:not-allowed}.primary{background:var(--blue);border-color:var(--blue);color:#fff}.primary:hover:not(:disabled){background:#0c4da9}.danger{color:#9b2124}.danger.active{background:#a72330;color:#fff}:focus-visible{outline:3px solid #1880e8;outline-offset:2px}input,select{display:block;width:100%;height:44px;margin-top:4px;padding:8px 10px;border:1px solid #b8cce4;border-radius:7px;background:#fff}label{display:block;min-width:0;font-size:.94rem;font-weight:620}fieldset{border:0;padding:0;margin:0;min-width:0}.mast{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#153867;color:#fff;padding:14px max(18px,calc((100% - 1080px)/2));border-bottom:3px solid #f3c65a}.mast span{display:block;font-size:.8rem;color:#d7e6fa}.mast button{color:#153050;white-space:nowrap}nav,.actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.actions{margin:12px 0 0}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:14px;min-width:0}.split{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.split h2{margin:0}.split+.fields,.split+fieldset{margin-top:14px}.scales,.drafts,.balances{display:grid;gap:10px}.scales{grid-template-columns:repeat(2,minmax(0,1fr))}.reading{font-size:clamp(1.9rem,5vw,3.2rem);font-weight:800;color:var(--blue);line-height:1;margin:14px 0 8px}.reading small{font-size:.85rem;color:var(--muted)}.muted{color:var(--muted);overflow-wrap:anywhere}.drafts,.balances{grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 14px}.draft{text-align:left;display:grid;gap:2px;border-radius:10px}.draft span{font-size:.85rem}.draft.selected{background:#e5f0ff;border-color:var(--blue);box-shadow:inset 0 -3px var(--blue)}.draft.selected strong{color:#084aab}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px;margin:0 0 14px}.manual{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.manual input{max-width:180px}.table-wrap{overflow-x:auto;margin-top:12px}table{width:100%;border-collapse:collapse;font-size:.9rem}td,th{padding:8px;text-align:left;border-bottom:1px solid var(--line)}th{background:#eef4fb}.return td{color:#922633;background:#fff4f5}.error{margin:12px 0;padding:9px 12px;background:#fff1f1;border:1px solid #edb2b2;border-radius:8px;color:#8f212a}.balances{margin-top:14px}.balances div{padding:10px;background:#edf4fe;border-radius:8px;display:grid}.balances strong{font-size:1.05rem}.login{width:min(420px,calc(100% - 32px));margin:12vh auto;background:#fff;border-radius:14px;border:1px solid var(--line);padding:24px}.login button{margin-top:12px;width:100%}.eyebrow{font-size:.8rem;font-weight:800;letter-spacing:.08em;color:var(--blue)}.receipt{display:none}@media(max-width:670px){main{padding:12px}.mast{padding:10px 12px}.scales .split button{font-size:.84rem}.scales .panel{padding:10px}.scales button{width:100%}.drafts{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc((100% - 10px)/2);overflow:auto;scroll-snap-type:x mandatory;padding-bottom:4px}.draft{scroll-snap-align:start}.balances{gap:4px}.balances strong{font-size:.9rem}.fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{body{background:#fff;color:#000}.mast,main{display:none!important}.receipt{display:block;font:11pt Arial,sans-serif;max-width:720px;margin:auto}.receipt header,.receipt h2{text-align:center}.receipt header{margin-bottom:20px}.receipt h1{font-family:Georgia,serif;font-size:20pt;margin:2px 0}.receipt h2{margin-top:16px}.receipt table{margin:12px 0}.receipt th,.receipt td{border-bottom:1px solid #000;background:#fff;color:#000}.receipt small{display:block}.receipt tbody tr{break-inside:avoid}}
