:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e9edf7;background:#090b10;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:#090b10;color:#e9edf7}button,input,textarea,select{font:inherit}.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}aside{position:sticky;top:0;height:100vh;background:#0d1017;border-right:1px solid #222735;padding:24px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;margin:0 8px 30px}.brand.big{margin:0 0 28px}.brandmark{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#8b5cf6,#22d3ee);font-weight:900}.brand strong{display:block;letter-spacing:.14em}.brand small{display:block;color:#747d92;font-size:10px;letter-spacing:.14em;margin-top:3px}nav{display:grid;gap:5px}nav button,.logout{border:0;background:transparent;color:#9ba4b8;text-align:left;padding:11px 13px;border-radius:9px;cursor:pointer}nav button:hover,nav button.active{background:#171b25;color:#fff}.side-bottom{margin-top:auto;border-top:1px solid #222735;padding-top:16px}.admin span,.admin small{display:block}.admin small{color:#747d92;margin-top:3px}.logout{padding-left:0;color:#ef8d8d}main{min-width:0}.page{padding:38px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.page-head h1{font-size:30px;margin:0}.page-head p{color:#8993a8;margin:7px 0 0}.card,.table-card{background:#10141d;border:1px solid #242a38;border-radius:14px;padding:20px}.card h3{margin:0 0 18px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.stat strong{font-size:34px;display:block}.stat span{color:#7d879b;text-transform:capitalize}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cards-list{display:grid;gap:12px;margin-top:18px}.field{display:grid;gap:7px;margin-bottom:14px}.field>span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#7f899e}input,textarea,select{width:100%;background:#0b0e14;border:1px solid #2b3242;color:#edf1fa;border-radius:9px;padding:11px 12px;outline:none}textarea{resize:vertical;min-height:90px}input:focus,textarea:focus,select:focus{border-color:#7c66ff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-grid .field:has(textarea),.form-grid .actions{grid-column:1/-1}.form-grid.compact{grid-template-columns:1fr 1fr}.btn{border:0;border-radius:9px;padding:10px 15px;cursor:pointer;background:#7357f5;color:#fff;font-weight:650}.btn.ghost{background:#1a2030;color:#c8d0df}.btn.danger{background:#9f3344}.btn:disabled{opacity:.5;cursor:not-allowed}.actions{display:flex;gap:10px;align-items:center;margin-top:8px}.table-card{padding:0;overflow:auto;margin-top:18px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid #222837}th{font-size:11px;text-transform:uppercase;color:#768095;letter-spacing:.08em}td small{display:block;color:#707a8f;margin-top:3px}.badge{display:inline-flex;border:1px solid #353d50;border-radius:999px;padding:4px 8px;color:#aeb7ca;font-size:12px}.flow{font-weight:700;color:#c7c0ff}.flow b{color:#596174;margin:0 8px}.notice,.error{padding:13px 15px;border-radius:10px;margin-top:16px}.notice{background:#121a27;border:1px solid #26354d;color:#9eb0cb}.error{background:#29131a;border:1px solid #5a2635;color:#f0a5b7}.row-between{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.row-between p{margin:5px 0;color:#8892a7}.empty{color:#6f798e;padding:20px;text-align:center}.json,.pre{white-space:pre-wrap;overflow:auto;background:#090c12;border:1px solid #202635;border-radius:9px;padding:12px;color:#b9c6df;font-size:12px;max-height:420px}.login-wrap,.center{min-height:100vh;display:grid;place-items:center}.login-card{width:min(430px,calc(100vw - 32px));background:#10141d;border:1px solid #262c3a;border-radius:18px;padding:32px}.login-card h1{margin:0}.login-card>p{color:#7f899d;margin-bottom:24px}.login-card .btn{width:100%;margin-top:5px}.hint{display:block;color:#626c80;margin-top:16px;text-align:center}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#000a;display:grid;place-items:center;padding:20px;z-index:5}.modal{width:min(760px,100%);max-height:90vh;overflow:auto;background:#10141d;border:1px solid #303749;border-radius:16px;padding:24px}details{margin-top:12px}summary{cursor:pointer;color:#a9b2c4}@media(max-width:900px){.shell{grid-template-columns:1fr}aside{position:relative;height:auto}.stats,.grid2,.form-grid{grid-template-columns:1fr}.form-grid .field:has(textarea),.form-grid .actions{grid-column:auto}.page{padding:22px}nav{grid-template-columns:repeat(2,1fr)}}.error-page{max-width:620px;margin:70px auto;background:#10141d;border:1px solid #402a35;border-radius:16px;padding:28px}.error-page h1{margin-top:0}.error-page p{color:#d7a5b0}.artist-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:12px;margin-bottom:18px}.artist-tile{padding:0;overflow:hidden;border-radius:14px;border:1px solid #342654;background:#11101d;color:#fff;text-align:left;cursor:pointer}.artist-tile img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}.artist-tile div{padding:12px}.artist-tile strong,.artist-tile span,.artist-tile small{display:block}.artist-tile span{font-size:12px;color:#b9afd0;margin-top:3px}.artist-tile small{font-size:11px;color:#776d8f;margin-top:4px}.avatar-sm{width:48px;height:48px;border-radius:12px;object-fit:cover}.collectible-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin-bottom:18px}.collectible{background:#100d1d;border:1px solid #30264a;border-radius:14px;overflow:hidden}.collectible img,.card-placeholder{width:100%;aspect-ratio:5/7;object-fit:cover;background:#181226;display:block}.collectible>div:last-child{padding:11px;display:grid;gap:3px}.collectible b{font-size:11px;color:#b69cff}.collectible strong{font-size:13px}.collectible span{font-size:11px;color:#81778f}.collectible.ssr{border-color:#b98a38;box-shadow:0 0 18px #b98a3826}.collectible.sr{border-color:#9a56c8}.collectible.r{border-color:#58459d}@media(max-width:1100px){.artist-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:700px){.artist-grid{grid-template-columns:repeat(2,1fr)}}
