
:root{
  --bg:#f5f6fa;--card:#fff;--ink:#202124;--muted:#6b7280;--line:#e5e7eb;
  --red:#c6222c;--red2:#9f1620;--green:#238b57;--blue:#2f65c7;--gold:#b88408;--orange:#c76b0b;
  --shadow:0 10px 32px rgba(22,28,45,.07);--radius:18px;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.app{max-width:1580px;margin:auto;padding:22px}
.top{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:16px}
.brand{display:flex;gap:13px;align-items:center}.mark{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;font-size:27px;color:#fff;background:linear-gradient(135deg,var(--red),var(--red2));box-shadow:var(--shadow)}
h1{font-size:24px;margin:0}.sub{font-size:13px;color:var(--muted);margin-top:3px}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.btn{border:1px solid var(--line);border-radius:11px;background:#fff;padding:10px 13px;font-weight:750;color:#222}
.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--red);border-color:var(--red);color:#fff}.btn.green{background:var(--green);border-color:var(--green);color:#fff}.btn.danger{color:#a5161d}
.userchip{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:7px 10px}.avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#f8e9ea;color:var(--red2);font-weight:900}.userchip b{font-size:13px}.userchip small{display:block;color:var(--muted)}
.bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.tabs{display:flex;gap:4px;background:#e9ebf0;padding:4px;border-radius:13px}.tab{border:0;background:transparent;padding:9px 14px;border-radius:10px;font-weight:800;color:#555}.tab.active{background:#fff;color:#222;box-shadow:0 1px 5px rgba(0,0,0,.08)}
.live{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:7px}.dot{width:8px;height:8px;border-radius:50%;background:var(--green)}
.cards{display:grid;grid-template-columns:repeat(6,minmax(135px,1fr));gap:12px;margin-bottom:16px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:17px;box-shadow:var(--shadow)}
.metric .k{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}.metric .v{font-size:25px;font-weight:900;margin-top:6px}.metric .h{font-size:11px;color:var(--muted);margin-top:4px}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.toolbar{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:9px;padding:13px;border-bottom:1px solid var(--line)}.toolbar input,.toolbar select{width:100%;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fff}
.tablewrap{overflow:auto;max-height:65vh}table{border-collapse:collapse;width:100%;min-width:1450px}th,td{padding:12px 13px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;font-size:13px}th{position:sticky;top:0;z-index:2;background:#fafafa;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.nm{font-weight:850}.tiny{font-size:11px;color:var(--muted);margin-top:3px}
.badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#f1f3f5;font-size:11px;font-weight:800;white-space:nowrap}.badge.blue{background:#e9f0ff;color:#224d9e}.badge.green{background:#e6f5ed;color:#17643d}.badge.red{background:#fdebec;color:#9f1d25}.badge.gold{background:#fff5d8;color:#7b5900}.badge.orange{background:#fff0dd;color:#955300}
.empty{padding:45px;text-align:center;color:var(--muted)}.foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:11px 13px;font-size:11px;color:var(--muted)}
.modal{position:fixed;inset:0;z-index:50;background:rgba(17,24,39,.52);display:none;align-items:center;justify-content:center;padding:18px}.modal.open{display:flex}.box{width:min(930px,100%);max-height:94vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.25)}.box.small{max-width:650px}.mh{position:sticky;top:0;z-index:4;background:#fff;display:flex;justify-content:space-between;align-items:center;padding:17px 20px;border-bottom:1px solid var(--line)}.mh h2{font-size:19px;margin:0}.mb{padding:20px}.mf{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:14px 20px;display:flex;gap:9px;justify-content:flex-end}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.field{display:flex;flex-direction:column;gap:5px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:850}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:10px;padding:10px 11px;background:#fff}.field textarea{min-height:92px;resize:vertical}.checks{display:flex;flex-wrap:wrap;gap:14px}.check{display:flex;align-items:center;gap:7px;font-size:13px}.sect{font-weight:900;font-size:13px;margin:2px 0 10px}.summary{margin-top:14px;background:#fff8e6;border:1px solid #f0ddb0;border-radius:13px;padding:12px;font-size:13px}
.pkggrid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:15px}.pkg{border:1px solid var(--line);border-radius:12px;padding:10px}.pkg b{display:block;font-size:12px}.pkg span{font-size:10px;color:var(--muted)}
.auth{position:fixed;inset:0;z-index:100;background:linear-gradient(135deg,#f7f0eb,#f4f6fb);display:flex;align-items:center;justify-content:center;padding:18px}.authbox{width:min(470px,100%);background:#fff;border:1px solid var(--line);border-radius:24px;padding:27px;box-shadow:0 30px 90px rgba(0,0,0,.13)}.authbrand{display:flex;gap:12px;align-items:center;margin-bottom:19px}.authbox h2{margin:0 0 5px}.authbox p{font-size:13px;color:var(--muted);margin:0}.authbox .field{margin-top:12px}.authbox .btn{width:100%;margin-top:14px}.alink{border:0;background:none;color:var(--blue);padding:0;margin-top:12px;font-size:13px}.msg{font-size:12px;margin-top:10px;padding:9px 10px;border-radius:9px;background:#f4f5f7}.msg.error{background:#fdecec;color:#991b1b}.msg.ok{background:#e9f6ef;color:#16613b}
.member{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:10px;margin-top:8px}.member-main{display:flex;gap:10px;align-items:center}.member small{display:block;color:var(--muted)}
.importbox{border:1px dashed #c7ccd5;border-radius:13px;padding:14px;background:#fafbfc}.import-result{margin-top:10px;font-size:12px;line-height:1.55}
.setup-warning{background:#fff5dd;color:#7a5200;border:1px solid #efd69b;border-radius:13px;padding:12px;margin-bottom:14px;font-size:13px}
@media(max-width:1150px){.cards{grid-template-columns:repeat(3,1fr)}.toolbar{grid-template-columns:1fr 1fr}.pkggrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.app{padding:13px}.top,.bar{align-items:flex-start;flex-direction:column}.cards{grid-template-columns:repeat(2,1fr)}.toolbar,.grid{grid-template-columns:1fr}.field.full{grid-column:auto}.pkggrid{grid-template-columns:1fr 1fr}.actions{width:100%}.tablewrap{max-height:none}}

.upgradebox{border:1px solid var(--line);background:#fafbfc;border-radius:13px;padding:13px;display:flex;flex-direction:column;gap:11px}
.sponsorpack-row{display:flex;gap:15px;align-items:center;flex-wrap:wrap}
.sponsorpack-count{font-size:12px;font-weight:800;display:flex;align-items:center;gap:7px}
.sponsorpack-count input{width:68px;border:1px solid var(--line);border-radius:9px;padding:7px}
.merchbox{border:1px solid var(--line);background:#fafbfc;border-radius:13px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.history-row{border:1px solid var(--line);border-radius:13px;padding:13px;margin-bottom:10px;background:#fafbfc}
.history-grid{display:grid;grid-template-columns:100px 135px 1fr 1fr auto;gap:9px;align-items:end}
.history-grid .field label{font-size:11px}
.history-remove{height:39px}
@media(max-width:850px){.history-grid{grid-template-columns:1fr 1fr}.history-remove{height:auto}}

.yearbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.yearselect{border:1px solid var(--line);background:#fff;border-radius:11px;padding:9px 12px;font-weight:850}
.yearlabel{font-size:12px;color:var(--muted);font-weight:800}
.no-year{opacity:.66}
.no-year td{background:#fcfcfd}
.year-settings-grid{display:grid;grid-template-columns:1.4fr 100px 120px 120px;gap:9px;align-items:end;margin-top:8px}
.year-settings-head{font-size:11px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.pkg-settings-row{display:grid;grid-template-columns:1.4fr 100px 120px 120px;gap:9px;align-items:center;border-top:1px solid var(--line);padding:8px 0}
.pkg-settings-row input[type=number],.pkg-settings-row input[type=text]{width:100%;border:1px solid var(--line);border-radius:9px;padding:8px}
.inline-note{font-size:11px;color:var(--muted);margin-top:4px}
.season-empty{padding:10px 12px;border:1px dashed #c8ccd4;border-radius:11px;background:#fafbfc;color:var(--muted);font-size:12px}
.year-chip{display:inline-flex;gap:5px;align-items:center;border-radius:999px;padding:5px 9px;background:#edf1f7;font-size:11px;font-weight:850}
@media(max-width:850px){
  .year-settings-grid,.pkg-settings-row{grid-template-columns:1fr 100px}
  .year-settings-head:nth-child(n+3){display:none}
}

.pkggrid .pkg{cursor:pointer;transition:.15s ease;position:relative}
.pkggrid .pkg:hover{transform:translateY(-1px);border-color:#b8bec8;box-shadow:0 5px 16px rgba(0,0,0,.05)}
.pkggrid .pkg.selected{border:2px solid var(--red);background:#fff7f7;padding:9px}
.pkggrid .pkg.selected::after{content:"✓";position:absolute;right:8px;top:7px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff;font-size:12px;font-weight:900}
.selected-package{border:1px solid var(--line);border-radius:10px;padding:10px 11px;background:#fafbfc;font-weight:800;min-height:40px}
