:root{--bg:#F2F5F3;--card:#FFFFFF;--line:#DDE6E0;--line2:#EAF0EC;--ink:#111111;--ink2:#3B3935;--mute:#5C5A55;--mute2:#8A877F;--primary:#153B2A;--primary2:#2D5D49;--onprimary:#FFFFFF;--accent:#57BF7F;--accent2:#DCEFE3;--accent-ink:#0E3523;--red:#C2410C;--red2:#FBE9E1;--green:#1E7A46;--green2:#E2F3E8;--soft:#F3F2EE;--r:5px;--rc:8px;--mono:"JetBrains Mono",ui-monospace,monospace}html[data-theme=dark]{--bg:#0A0A0A;--card:#141414;--line:#262626;--line2:#1F1F1F;--ink:#F5F5F5;--ink2:#D4D4D4;--mute:#A1A1A1;--mute2:#737373;--primary:#57BF7F;--primary2:#6BC285;--onprimary:#0E3523;--accent:#57BF7F;--accent2:#1E3A2A;--accent-ink:#0E3523;--red:#F08A5B;--red2:#3A1D12;--green:#6FCF97;--green2:#12301E;--soft:#1E1E1E;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.4 Archivo,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}h1{font-size:22px;font-weight:800;letter-spacing:-.01em;margin:0}h2{font-size:17px;font-weight:800;margin:0}.mono{font-family:var(--mono);font-weight:600;letter-spacing:-.01em}.mute{color:var(--mute)}.small{font-size:12.5px}.row{display:flex;align-items:center;gap:10px}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.r{text-align:right}.good{color:var(--green)}.bad{color:var(--red)}.shell{display:flex;flex-direction:column;height:100%}.top{display:flex;align-items:center;gap:14px;height:52px;padding:0 18px;background:var(--primary);color:var(--onprimary);flex:none}html[data-theme=dark] .top{background:#000;color:#f5f5f5;border-bottom:1px solid #1F1F1F}.brand{display:flex;align-items:center;gap:9px;border:0;background:none;padding:0;color:inherit}.brand b{font-weight:800;letter-spacing:.06em;font-size:13px}.mark{width:18px;height:18px;border-radius:var(--r);background:var(--accent);display:inline-block;flex:none}.top .pill{background:#fff2;color:inherit;height:22px}.tabs{display:flex;gap:2px;margin-left:10px}.tabs button{height:32px;padding:0 12px;border:0;border-radius:var(--r);background:none;color:inherit;font-weight:700;opacity:.75}.tabs button:hover{opacity:1;background:#ffffff14}.tabs button.on{opacity:1;background:#fff2}html[data-theme=dark] .tabs button.on{background:var(--accent);color:var(--accent-ink)}.top .mini{background:#ffffff14;border-color:#ffffff30;color:inherit}.ro-note{flex:none;padding:7px 18px;background:var(--red2);color:var(--red);border-bottom:1px solid var(--line);font-size:12.5px}.ro-note b{font-weight:800}.input[readonly],textarea.input[readonly],.input:disabled,.select:disabled{opacity:.7;cursor:default}.cell[readonly]:hover,.cell[readonly]:focus{border-color:transparent;background:transparent;cursor:default}.x:disabled{opacity:.35;cursor:default}.x:disabled:hover{color:var(--mute)}.main{flex:1;min-width:0;overflow:auto;padding:16px 18px 40px}.main>*{max-width:1280px;margin-left:auto;margin-right:auto}.signin{height:100%;display:grid;place-items:center;padding:20px}.signin .brand{margin-bottom:4px;color:var(--ink)}.signin .mark{background:var(--primary)}.signin .pill{margin-left:4px}.signin .input{width:100%;margin-top:12px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--rc)}.card+.card,.card+div{margin-top:12px}.pad{padding:14px 16px}.hero{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.hero h1{margin-right:6px}.sec-h{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);min-height:44px}.sec-h b{font-size:14px}.lbl{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin:0 0 8px}.pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:var(--r);font-size:11.5px;font-weight:700;background:var(--line2);white-space:nowrap}.pill.ok{background:var(--green2);color:var(--green)}.pill.warn{background:var(--red2);color:var(--red)}.pill.bad{background:var(--red);color:#fff}.btn{height:32px;padding:0 12px;border-radius:var(--r);border:1px solid var(--line);background:var(--card);font-weight:700;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}.btn:hover{border-color:var(--mute2)}.btn.dark{background:var(--primary);border-color:var(--primary);color:var(--onprimary)}.btn.dark:hover{background:var(--primary2)}.btn.danger{color:var(--red);border-color:var(--red2)}.btn.danger:hover{background:var(--red2)}.btn.sm{height:30px;padding:0 10px;font-size:12.5px}.btn:disabled{opacity:.4;cursor:default}.mini{height:28px;padding:0 9px;border-radius:var(--r);border:1px solid var(--line);background:var(--card);font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.mini:hover{border-color:var(--mute2)}.mini:disabled{opacity:.4;cursor:default}.mini.on{background:var(--primary);border-color:var(--primary);color:var(--onprimary)}.input,.select{height:32px;border:1px solid var(--line);border-radius:var(--r);background:var(--card);padding:0 10px;min-width:0;outline:none;font-size:13.5px}.select{appearance:none;-webkit-appearance:none;padding-right:28px;background:var(--card) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23888' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>") no-repeat right 10px center;cursor:pointer}.input:focus,.select:focus,textarea:focus{border-color:var(--primary)}textarea.input{height:auto;padding:8px 10px;resize:vertical}html[data-theme=dark] .input,html[data-theme=dark] .select,html[data-theme=dark] textarea.input{background:#111;border-color:#3a3a3a}.seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;height:32px}.seg button{height:100%;padding:0 11px;border:0;border-right:1px solid var(--line);background:var(--card);font-weight:700;font-size:12.5px;color:var(--mute)}.seg button:last-child{border-right:0}.seg button.on{background:var(--primary);color:var(--onprimary)}.seg button:disabled:not(.on){opacity:.5;cursor:default}.chip{height:28px;padding:0 10px;border-radius:var(--r);border:1px solid var(--line);background:var(--card);font-size:12.5px;font-weight:700;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.chip.on{background:var(--accent2);border-color:var(--accent);color:var(--ink)}.x{border:0;background:none;padding:0 4px;color:var(--mute);font-size:15px;line-height:1}.x:hover{color:var(--red)}.skel{height:14px;border-radius:var(--r);background:linear-gradient(90deg,var(--line2),var(--line),var(--line2));background-size:200% 100%;animation:sk 1.2s linear infinite}@keyframes sk{to{background-position:-200% 0}}.empty{text-align:center;color:var(--mute);padding:28px 10px!important}.statusrow{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:10px 16px}.statusrow>span{display:inline-flex;flex-direction:column;gap:1px}.statusrow .k{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}.statusrow b{font-size:15px}.statusrow .total b{font-size:18px}.statusrow .total{padding-left:18px;border-left:1px solid var(--line)}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}.tile{border:1px solid var(--line);border-radius:var(--rc);padding:10px 12px;display:flex;flex-direction:column;gap:6px;background:var(--card)}.tile b{font-size:13.5px}.tile.on{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.tile .row{gap:6px;margin-top:2px}.form{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px 14px}.form>label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700;color:var(--mute)}.form>label .input,.form>label .select{width:100%;color:var(--ink);font-weight:500}.form>.full{grid-column:1/-1}.form>.row{grid-column:1/-1}.tbl{width:100%;border-collapse:collapse;font-size:13px}.tbl th{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);text-align:left;padding:6px 10px;border-bottom:1px solid var(--line);white-space:nowrap;height:32px;background:var(--card);position:sticky;top:0;z-index:1}.tbl th.r{text-align:right}.tbl td{padding:0 10px;height:32px;border-bottom:1px solid var(--line2);vertical-align:middle;white-space:nowrap}.tbl td:first-child,.tbl th:first-child{padding-left:14px}.tbl td:last-child,.tbl th:last-child{padding-right:14px}.tbl tr.click{cursor:pointer}.tbl tr.click:hover td{background:var(--soft)}.tbl tr.grp td{background:var(--soft);font-weight:800;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink2);height:28px}.tbl tr.picked td{background:var(--accent2)}.tbl tr.expired td,.tbl tr.expired td .cell{color:var(--mute)}.tbl tr.saved td{opacity:.6}.tbl input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--primary);display:block}.tbl .x{height:32px}.lines td{padding:0 6px}.cell{height:26px;width:100%;min-width:60px;border:1px solid transparent;border-radius:var(--r);background:transparent;padding:0 6px;outline:none;font-size:13px}.cell:hover{border-color:var(--line)}.cell:focus{border-color:var(--primary);background:var(--card)}.cell.r{text-align:right}.cell::placeholder{color:var(--mute2)}.tbl td .select{height:26px;font-size:12.5px;padding:0 24px 0 6px;background-position:right 6px center}.tbl .mini{height:24px;padding:0 7px;font-size:11.5px}.toasts{position:fixed;left:50%;bottom:18px;transform:translate(-50%);display:flex;flex-direction:column;gap:6px;z-index:50;pointer-events:none}.toast{background:var(--ink);color:var(--bg);padding:8px 14px;border-radius:var(--r);font-size:13px;font-weight:700;box-shadow:0 6px 24px #0003}.toast.err{background:var(--red);color:#fff}@media (max-width:760px){.top{height:auto;padding:8px 12px;flex-wrap:wrap;gap:8px}.tabs{margin-left:0;width:100%;overflow:auto}.main{padding:12px 10px 40px}.statusrow{gap:14px}.tbl{display:block;overflow:auto}}@media (hover:none){.btn:hover,.mini:hover,.chip:hover,.tabs button:hover,.tbl tr.click:hover td{background:inherit}}.lines{table-layout:auto}.lines td:nth-child(2){max-width:300px;white-space:normal}.lines .addons{max-width:260px}.addon-names{display:inline-block;max-width:190px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.addon-names:not(:empty){margin-right:4px}.tbl td .select.addsel{width:34px;padding:0 0 0 8px;background-position:right 6px center;background-size:9px;margin:0}.lines .cell{min-width:54px}.lines td:nth-child(11) .cell{min-width:110px}.lines td:nth-child(2){min-width:230px}.lines td:nth-child(11){width:100%}.tbl .bad{color:var(--ink);text-decoration:underline dotted var(--mute2)}.pkgs td:first-child{min-width:170px}.pkgs td{height:auto;padding-top:4px;padding-bottom:4px}.pkg-items{white-space:normal;width:100%}.pkg-items .chip{height:24px;padding:0 4px 0 8px;font-size:12px;font-weight:600}.pkg-items .chip .x{font-size:13px}
