:root{--brand:#1f4e79;--brand-dark:#173b5c;--line:#e3e8ee;--muted:#5b6b7b;--bg:#f2f5f8;--bad:#b00020}*{box-sizing:border-box}body{color:#1c2733;background:var(--bg);margin:0;font:15px/1.45 system-ui,-apple-system,Segoe UI,Arial,sans-serif}header{z-index:10;background:var(--brand);color:#fff;align-items:center;gap:10px;padding:6px 12px;display:flex;position:sticky;top:0;box-shadow:0 2px 6px #0003}header b{letter-spacing:.3px;white-space:nowrap;font-size:17px}nav{scrollbar-width:none;flex:1;gap:2px;min-width:0;display:flex;overflow-x:auto}nav::-webkit-scrollbar{display:none}nav button,header button{color:#dbe7f3;white-space:nowrap;background:0 0;border:0;flex:none;padding:7px 11px}nav button:hover,header button:hover{color:#fff;background:#ffffff1f}nav button.on{color:var(--brand);background:#fff;font-weight:600}nav select{color:#fff;background:#ffffff1f;border-color:#ffffff40;flex:none;padding:6px 8px}nav select option{color:#1c2733}header>span{color:#c5d6e8;white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:13px;overflow:hidden}@media (width<=700px){header>span{display:none}}main{max-width:1150px;margin:0 auto;padding:16px}h2{color:var(--brand-dark);margin:4px 0 14px;font-size:22px}h3{color:var(--brand-dark);font-size:17px}button{font:inherit;border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;border-radius:7px;padding:8px 14px;transition:background .15s,box-shadow .15s}button:hover:not(:disabled){background:var(--brand-dark)}button:disabled{opacity:.45;cursor:default}button.plain{color:var(--brand);background:#fff;border-color:#c6d3e0}button.plain:hover:not(:disabled){background:#eef3f8}button.danger{color:var(--bad);background:#fff;border-color:#e5b3bc}button.danger:hover:not(:disabled){background:#fdf0f2}td button{padding:4px 10px;font-size:14px}td select{min-width:150px}input,select,textarea{font:inherit;width:100%;color:inherit;background:#fff;border:1px solid #c3ccd6;border-radius:7px;padding:8px 10px}input:focus,select:focus,textarea:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px #1f4e7926}input:disabled,select:disabled,textarea:disabled{color:#3a4754;background:#f5f7f9}input[type=checkbox]{width:auto;accent-color:var(--brand)}label{color:#34414e;margin-bottom:12px;font-size:14px;font-weight:600;display:block}label>input,label>select,label>textarea{margin-top:4px}label span{color:var(--muted);font-size:14px;font-weight:400;display:block}.card{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:16px;padding:16px;box-shadow:0 1px 2px #0000000d}.scroll{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:16px;overflow-x:auto}.card .scroll{border-radius:8px;margin:8px 0}table{border-collapse:collapse;background:#fff;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:9px 12px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;background:#f3f6f9;font-size:12px;font-weight:600}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#f7fafc}.row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.err{color:var(--bad);background:#fdf0f2;border:1px solid #f2c4cc;border-radius:7px;margin:8px 0 12px;padding:8px 12px}.center{max-width:380px;margin:64px auto;padding:24px}.center h2{text-align:center}.center button{width:100%;margin-top:4px}.grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 14px;display:grid}@media (width<=600px){main{padding:12px}h2{font-size:20px}}.printonly{display:none}.a5 h3{margin:0 0 8px}.a5 .meta{justify-content:space-between;gap:12px;margin-bottom:8px;font-size:12px;display:flex}.a5 table{table-layout:fixed;font-size:12px}.a5 th,.a5 td{white-space:normal;border:1px solid #999;padding:3px 4px}.a5 .no{width:28px}.a5 th:nth-child(3),.a5 td:nth-child(3){width:70px}.a5 th:nth-child(4),.a5 td:nth-child(4),.a5 th:nth-child(5),.a5 td:nth-child(5){width:80px}.a5 .r{text-align:right}@page{size:A5 portrait;margin:8mm}@media print{.noprint{display:none!important}.printonly{display:block}body{background:#fff}main{max-width:none;padding:0}}.sheet h3{margin:0 0 8px}.sheet table{table-layout:fixed;font-size:13px}.sheet th,.sheet td{white-space:normal;border:1px solid #999;padding:3px 4px}.sheet .no{width:28px}.sheet th:nth-child(3),.sheet td:nth-child(3),.sheet th:nth-child(4),.sheet td:nth-child(4){width:90px}.sheet .r{text-align:right}
