:root{--bg:#f3f7fd;--card:#fff;--tx:#14233b;--mu:#5b6b85;--pr:#1d5fd1;--bd:#d6e0f0;--dg:#c0392b;--cH:#000;--cS:#d9a400;--cI:#12327a;--cA:#e8710a;--cB:#8b1a1a;color-scheme:light}
@media(prefers-color-scheme:dark){:root{--bg:#0e1626;--card:#16223a;--tx:#e8eefb;--mu:#9bacc9;--pr:#5b9bff;--bd:#2a3b5c;--dg:#ff7b6b;--cH:#e8eefb;--cS:#f2c200;--cI:#7aa2ff;--cA:#ff9a3c;--cB:#ff7b7b;color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tx);font:15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
header{background:var(--pr);color:#fff;padding:12px 16px;display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.lgs{display:flex;align-items:center;gap:8px}#lgo{font-size:32px;line-height:1}.hr{display:flex;gap:8px;align-items:center}
header h1{font-size:17px;margin:6px 0 0;letter-spacing:.03em}
.hr select{max-width:150px;background:#fff;color:#14233b;font-weight:700}.hr select option{font-weight:700}
nav{display:flex;gap:6px;overflow-x:auto;padding:10px 12px;background:var(--card);border-bottom:1px solid var(--bd)}
nav button{white-space:nowrap;background:none;border:1px solid var(--bd);color:var(--tx);border-radius:20px;padding:7px 14px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}
nav button.on{background:var(--pr);color:#fff;border-color:var(--pr)}
.app{max-width:1400px;margin:0 auto;padding:12px}main{min-width:0}
.card{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:14px;margin-bottom:12px}
h1,h2{text-transform:uppercase}
h2{font-size:16px;margin:0 0 10px}
input,select,textarea{font:inherit;padding:8px 10px;border:1px solid var(--bd);border-radius:8px;background:var(--card);color:var(--tx);max-width:100%}
textarea{width:100%;margin-bottom:8px}
label{display:block;font-size:13px;color:var(--mu);margin:8px 0 3px}
.row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.row>input{flex:1;min-width:120px}
button{font:inherit;cursor:pointer}
.pb{background:var(--pr);color:#fff;border:0;border-radius:8px;padding:8px 14px}
.gb{background:none;color:var(--dg);border:1px solid var(--dg);border-radius:8px;padding:6px 10px}
.sc{overflow-x:auto}table{border-collapse:collapse;width:100%}
th,td{border-bottom:1px solid var(--bd);padding:7px 6px;text-align:left;white-space:nowrap}
th{color:var(--mu);font-weight:600;font-size:13px}
td input[type=number]{width:70px}
.sm th,.sm td{text-align:center;padding:4px 3px;font-size:12px;border:1px solid var(--bd)}.sm td.l{text-align:left}
.sb{width:36px;height:36px;border-radius:8px;border:1px solid var(--bd);background:none;color:var(--tx);margin-right:4px;font-weight:700;font-size:15px;opacity:.5}
.sb.on{opacity:1;border:2px solid currentColor}.sb.H,.xC{color:var(--cH)}.xG{color:var(--cA)}.sb.S,.xS{color:var(--cS)}.sb.I,.xI{color:var(--cI)}.sb.A,.xA{color:var(--cA)}.sb.B,.xB{color:var(--cB)}.xC,.xG,.xS,.xI,.xA,.xB{font-weight:700}
.ar{display:flex;justify-content:space-between;align-items:center;gap:6px 10px;flex-wrap:wrap;padding:6px 0;border-bottom:1px solid var(--bd)}
.gw{overflow:auto;max-height:68vh;border:1px solid var(--bd);border-radius:8px;-webkit-overflow-scrolling:touch}
table.g{border-collapse:separate;border-spacing:0;width:max-content}
.g th,.g td{border-right:1px solid var(--bd);border-bottom:1px solid var(--bd);padding:0;text-align:center;white-space:nowrap}
.g th{position:sticky;top:0;z-index:2;background:var(--card);font-size:13px;height:42px;min-width:36px;color:var(--tx)}
.g th small{display:block;font-size:9px;font-weight:400;color:var(--mu)}
.g th.tdy{background:var(--pr);color:#fff}.g th.tdy small{color:#fff}
.g .s0,.g .s1{position:sticky;z-index:1;background:var(--card)}
.g .s0{left:0;min-width:32px;width:32px;text-align:center}
.g .s1{left:32px;min-width:120px;max-width:130px;white-space:normal;text-align:left;font-size:12px;line-height:1.2;padding:4px 6px;box-shadow:2px 0 3px rgba(0,0,0,.12)}
.g th.s0,.g th.s1{z-index:3}
.g .ce{min-width:36px;height:38px;font-size:15px;font-weight:700;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation}
.g .ce.tc{background:rgba(29,95,209,.10)}.g .tt{min-width:34px;font-weight:700}
@media(min-width:700px){.g .s1{min-width:200px;max-width:240px;font-size:13px}}
#lg{min-height:100vh;min-height:100dvh;align-items:center;justify-content:center;padding:16px;background:var(--pr)}
@media(max-width:600px){.app{padding:8px}.card{padding:12px}header h1{font-size:16px}.sb{width:40px;height:40px}th,td{padding:6px 4px}h2{font-size:15px}td input[type=number]{width:60px}}
.mu{color:var(--mu);font-size:13px}
.it{display:flex;align-items:center;gap:8px;padding:8px 2px;border-bottom:1px solid var(--bd)}
.it a,.it span.n{flex:1;color:var(--pr);cursor:pointer;text-decoration:none;word-break:break-word}
.cr a{color:var(--pr);cursor:pointer}
.jr{border-bottom:1px solid var(--bd);padding:10px 0}.jr:last-child{border:0}
#t{position:fixed;left:50%;transform:translateX(-50%);bottom:20px;background:var(--tx);color:var(--bg);padding:9px 16px;border-radius:20px;display:none;z-index:9}
