:root{--navy:#14213d;--char:#2b2f36;--amber:#f5a524;--bg:#f3f5f8;--line:#d5dbe3;--mut:#5b6675;--ok:#2f855a;--bad:#c53030}
*{box-sizing:border-box}html,body{margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:#1f2933;font-size:16px}
header.top{background:var(--navy);color:#fff;display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:4px solid var(--amber);position:sticky;top:0;z-index:5}
.brand{font-weight:800;letter-spacing:-.3px;font-size:19px}.brand span{color:var(--amber)}
header.top img{height:34px;width:34px;object-fit:contain;background:#fff;border-radius:50%}
header.top .sp{flex:1}
.pill{font-size:12px;padding:3px 9px;border-radius:12px;background:#334;color:#fff;white-space:nowrap}.pill.ok{background:var(--ok)}.pill.warn{background:var(--amber);color:var(--navy)}.pill.bad{background:var(--bad)}
main{max-width:980px;margin:0 auto;padding:14px}
.card{background:#fff;border-radius:10px;padding:14px;margin-bottom:12px;box-shadow:0 1px 2px #0001}
h1,h2,h3{color:var(--navy);margin:.2em 0 .5em}h2{font-size:18px}
label{display:block;font-weight:600;font-size:14px;margin:10px 0 4px;color:var(--char)}
input,select,textarea{width:100%;font-size:17px;padding:11px;border:1.5px solid var(--line);border-radius:8px;background:#fff}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px #f5a52433}
button,.btn{font-size:16px;font-weight:700;border:0;border-radius:8px;padding:12px 16px;background:var(--navy);color:#fff;cursor:pointer;text-decoration:none;display:inline-block}
button.amber,.btn.amber{background:var(--amber);color:var(--navy)}button.ghost{background:#e4e8ee;color:var(--navy)}
.row{display:flex;gap:10px;flex-wrap:wrap}.row>*{flex:1;min-width:130px}
.chips{display:flex;flex-wrap:wrap;gap:6px}.chips label{margin:0;font-weight:600;border:1.5px solid var(--line);border-radius:20px;padding:8px 13px;background:#fff;cursor:pointer}
.chips input{display:none}.chips label:has(input:checked){background:var(--navy);color:#fff;border-color:var(--navy)}
.err{color:var(--bad);font-weight:600}.muted{color:var(--mut);font-size:14px}
table{width:100%;border-collapse:collapse;font-size:14px;background:#fff}th{background:var(--navy);color:#fff;text-align:left;padding:7px;cursor:pointer;white-space:nowrap;position:sticky;top:0}
td{padding:6px 7px;border-bottom:1px solid #e6e9ee}tr:nth-child(even) td{background:#f8f9fb}.tw{overflow:auto;max-height:70vh;border-radius:8px}
nav.tabs{display:flex;gap:4px;overflow-x:auto;margin-bottom:10px}nav.tabs button{background:#e4e8ee;color:var(--navy);padding:10px 14px;white-space:nowrap}nav.tabs button.on{background:var(--amber)}
.plist{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.plist button{background:#fff;color:var(--navy);border:1.5px solid var(--line);text-align:left;font-weight:600;padding:9px}.plist button b{color:var(--amber);background:var(--navy);border-radius:4px;padding:1px 6px;margin-right:6px}
.plist button.done{border-color:var(--ok)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}@media(min-width:700px){.grid2{grid-template-columns:repeat(4,1fr)}}
.num{font-size:28px;font-weight:800;color:var(--navy)}.saved{color:var(--ok);font-size:12px}
footer{text-align:center;color:var(--mut);font-size:12px;padding:20px}
@media(max-width:600px){header.top .brand{display:none}}

.taps{display:flex;gap:8px}.taps button{flex:1;font-size:26px;padding:16px 0;background:#e4e8ee;color:var(--navy);border:2px solid transparent}.taps button.on{background:var(--amber);border-color:var(--navy)}
.att{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.att input{padding:10px 6px;text-align:center}@media(min-width:700px){.att{grid-template-columns:repeat(8,1fr)}}
.sendgrid{display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:12px;align-items:start}@media(max-width:900px){.sendgrid{grid-template-columns:1fr}}
.srow{display:flex;gap:10px;align-items:center;padding:8px;border-radius:8px}.srow+.srow{border-top:1px solid #eef1f5}.srow.on{background:#fff6e5}.srow input[type=checkbox]{width:22px;height:22px;flex:none}
button:disabled{opacity:.45;cursor:not-allowed}
