:root{--bg:#14161A;--bg2:#1C1F24;--bg3:#0F1115;--gold:#EBB732;--gold2:#F4CE63;--text:#F0E6C8;--muted:#9A958A;--back:#5A96DC;--ok:#35C77A;--warn:#FF5A5A;--line:rgba(235,183,50,0.20);--line-strong:rgba(235,183,50,0.45)}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}body{background:radial-gradient(ellipse at 50% 0%,rgba(235,183,50,0.07),rgba(20,22,26,0) 60%),linear-gradient(160deg,#14161A 0%,#0F1115 100%);background-attachment:fixed;color:var(--text);font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;font-size:13px;line-height:1.6;-webkit-font-smoothing:antialiased}.wrap{max-width:1080px;margin:0 auto;padding:26px 22px 56px}header.site-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:26px}header.site-head h1{font-size:18px;font-weight:600;color:var(--gold);letter-spacing:0.08em;margin:0;text-shadow:0 0 18px rgba(235,183,50,0.35)}header.site-head .sub{font-size:12px;color:var(--muted)}header.site-head .spacer{flex:1 1 auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 16px;border-radius:999px;font-size:12px;font-family:inherit;color:var(--text);background:rgba(235,183,50,0.08);border:1px solid var(--line);cursor:pointer;text-decoration:none;transition:background 0.18s ease,border-color 0.18s ease,transform 0.12s ease,box-shadow 0.18s ease;white-space:nowrap}.btn:hover{background:rgba(235,183,50,0.18);border-color:var(--line-strong);box-shadow:0 0 16px rgba(235,183,50,0.18);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn.primary{color:#201703;background:linear-gradient(145deg,var(--gold2),var(--gold));border-color:transparent;font-weight:600}.btn.primary:hover{box-shadow:0 0 22px rgba(235,183,50,0.45)}.btn.ghost{background:transparent;color:var(--muted);border-color:rgba(255,255,255,0.12)}.btn.ghost:hover{color:var(--text);border-color:rgba(255,255,255,0.24);box-shadow:none}.btn.danger{background:transparent;color:#FF8A8A;border-color:rgba(255,90,90,0.38)}.btn.danger:hover{background:rgba(255,90,90,0.12);border-color:rgba(255,90,90,0.62);box-shadow:0 0 16px rgba(255,90,90,0.20)}.btn[disabled]{opacity:0.45;cursor:not-allowed;transform:none;box-shadow:none}.panel{padding:16px 18px;border-radius:14px;background:linear-gradient(145deg,rgba(28,31,36,0.82),rgba(20,22,26,0.64));border:1px solid var(--line)}.panel h2{font-size:13px;font-weight:600;color:var(--gold);letter-spacing:0.06em;margin:0 0 12px}.entry-grid{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:22px}.entry-card{flex:1 1 300px;min-height:168px;padding:22px 22px 20px;border-radius:18px;background:linear-gradient(150deg,rgba(28,31,36,0.9),rgba(18,20,24,0.7));border:1px solid var(--line);display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform 0.2s ease,border-color 0.2s ease,box-shadow 0.2s ease}.entry-card:hover{transform:translateY(-3px);border-color:var(--line-strong);box-shadow:0 12px 32px rgba(0,0,0,0.42),0 0 24px rgba(235,183,50,0.12)}.entry-card .icon{width:40px;height:40px;margin-bottom:14px;color:var(--gold);opacity:0.9}.entry-card .icon svg{width:100%;height:100%;display:block}.entry-card .title{font-size:16px;font-weight:600;color:var(--gold2);margin-bottom:6px}.entry-card .desc{font-size:12px;color:var(--muted);flex:1 1 auto}.entry-card .go{margin-top:14px;font-size:12px;color:var(--gold);opacity:0.85}.notice{padding:11px 16px;border-radius:12px;font-size:12px;line-height:1.7;margin-bottom:20px;border:1px solid}.notice.info{color:var(--back);background:rgba(90,150,220,0.08);border-color:rgba(90,150,220,0.35)}.notice.warn{color:var(--gold2);background:rgba(235,183,50,0.08);border-color:rgba(235,183,50,0.35)}.notice.error{color:var(--warn);background:rgba(255,90,90,0.08);border-color:rgba(255,90,90,0.35)}.notice .title{font-weight:600}.level-grid{display:flex;flex-wrap:wrap;gap:16px}.level-grid[hidden]{display:none}.level-card{flex:1 1 280px;max-width:360px;border-radius:16px;overflow:hidden;background:linear-gradient(150deg,rgba(28,31,36,0.9),rgba(18,20,24,0.72));border:1px solid var(--line);transition:transform 0.2s ease,border-color 0.2s ease,box-shadow 0.2s ease;display:flex;flex-direction:column}.level-card:hover{transform:translateY(-2px);border-color:var(--line-strong);box-shadow:0 10px 28px rgba(0,0,0,0.4)}.level-card .cover{height:150px;background:var(--bg3);display:flex;align-items:center;justify-content:center;padding:10px;border-bottom:1px solid rgba(255,255,255,0.05)}.level-card .body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:8px;flex:1 1 auto}.level-card .name{font-size:14px;font-weight:600;color:var(--gold2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.level-card .meta{display:flex;gap:12px;font-size:11px;color:var(--muted);font-family:monospace}.level-card .share-code{font-family:monospace;font-size:12px;color:var(--gold);background:rgba(235,183,50,0.08);border:1px dashed rgba(235,183,50,0.35);border-radius:8px;padding:5px 10px;letter-spacing:0.08em;cursor:pointer;text-align:center}.level-card .share-code:hover{background:rgba(235,183,50,0.16)}.level-card .actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.level-card .actions .btn{flex:1 1 calc(50% - 4px);padding:6px 8px}.level-card .actions .btn.danger{flex:1 1 100%}.thumb{display:flex;flex-wrap:wrap;padding:4px;border-radius:8px;background:#0F1115;box-shadow:inset 0 0 0 1px rgba(235,183,50,0.22)}.thumb i{display:block;width:4px;height:4px}.thumb i.b{background:linear-gradient(145deg,#F4CE63,#E0A92A);border-radius:1px}.thumb i.s{background:linear-gradient(145deg,#2BE8C8,#0FA0B0);border-radius:1px}.thumb i.g{background:rgba(255,255,255,0.045)}.qr-row{display:flex;gap:20px;flex-wrap:wrap}.qr-box{flex:1 1 220px;max-width:280px;padding:14px;border-radius:14px;background:rgba(15,17,21,0.72);border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;gap:10px}.qr-box.primary{border-color:var(--line-strong);box-shadow:0 0 28px rgba(235,183,50,0.12)}.qr-box .tag{font-size:12px;font-weight:600;color:var(--gold2);letter-spacing:0.04em}.qr-box .tag .hint{display:block;font-size:11px;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:3px}.qr-box img{width:180px;height:180px;display:block;border-radius:10px;background:#fff;padding:6px}.qr-box .qr-actions{display:flex;gap:8px}.empty{padding:56px 24px;text-align:center;border-radius:16px;border:1px dashed rgba(235,183,50,0.28);background:rgba(20,22,26,0.5)}.empty .title{font-size:15px;color:var(--gold2);margin-bottom:8px}.empty .desc{font-size:12px;color:var(--muted);margin-bottom:18px;line-height:1.8}.modal-mask{position:fixed;inset:0;z-index:60;background:rgba(10,11,13,0.78);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:24px}.modal-mask[hidden]{display:none}.modal{width:100%;max-width:360px;padding:24px 22px 20px;border-radius:18px;background:linear-gradient(150deg,#1C1F24,#14161A);border:1px solid var(--line-strong);box-shadow:0 24px 64px rgba(0,0,0,0.6);text-align:center}.modal h2{font-size:15px;color:var(--gold2);margin:0 0 6px}.modal .desc{font-size:12px;color:var(--muted);margin-bottom:16px;line-height:1.7}.modal .qr-holder{width:200px;height:200px;margin:0 auto 14px;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;padding:8px}.modal .qr-holder img{width:100%;height:100%;display:block}.modal .qr-holder .placeholder{color:#8a8a8a;font-size:12px}.modal .status{font-size:12px;color:var(--gold);min-height:20px;margin-bottom:12px}.modal .status.error{color:var(--warn)}.modal .login-mode-switch{display:flex;gap:0;margin:0 auto 14px;padding:3px;background:rgba(255,255,255,.05);border:1px solid rgba(224,169,42,.35);border-radius:999px;width:max-content;max-width:100%}.modal .login-mode-btn{appearance:none;border:none;cursor:pointer;font-family:inherit;padding:6px 16px;border-radius:999px;font-size:13px;font-weight:600;color:var(--muted);background:transparent;transition:all .18s ease}.modal .login-mode-btn:hover{color:var(--gold2)}.modal .login-mode-btn.active{color:#1A1508;background:linear-gradient(145deg,#F4CE63,#E0A92A);box-shadow:0 0 14px rgba(235,183,50,.42)}.modal .login-mode-desc{margin:0 auto 14px;max-width:260px;font-size:12px;line-height:1.6;color:var(--muted);text-align:center}.modal .qr-holder canvas,.modal .qr-holder img{max-width:100%;height:auto}.modal .qr-holder{position:relative}.modal .qr-holder .qr-canvas{width:100%;height:100%;padding:20px;box-sizing:border-box;background:#fff;display:flex;align-items:center;justify-content:center}.modal .qr-mask{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:8px;border-radius:inherit;background:rgba(255,255,255,.92);color:#3a3a3a}.modal .qr-mask.show{display:flex}.modal .qr-mask-text{font-size:14px;font-weight:600;line-height:1.5}.site-foot{margin-top:32px;padding-top:16px;border-top:1px solid rgba(255,255,255,0.06);font-size:11px;color:rgba(154,149,138,0.72);display:flex;gap:14px;flex-wrap:wrap}@media (max-width:720px){body{font-size:14px}.wrap{padding:18px 14px 40px}header.site-head{gap:10px}header.site-head h1{font-size:16px}.entry-grid{flex-direction:column}.entry-card{flex:1 1 auto;min-height:auto;padding:18px}.level-card{flex:1 1 100%;max-width:none}.qr-box{flex:1 1 100%;max-width:none}.btn{padding:9px 18px}.level-card .actions .btn{flex:1 1 100%}.level-card .actions .btn.danger{flex:1 1 100%}.site-foot{gap:10px}}@media (max-width:480px){.wrap{padding:14px 12px 32px}.entry-card .title{font-size:15px}.entry-card .desc{font-size:12px}.level-card .meta{gap:8px}.modal{padding:20px 16px 18px}}@keyframes site-flash{0%{opacity:0;transform:scale(0.92)}40%{opacity:1}100%{opacity:0;transform:scale(1.06)}}.flash-once{animation:site-flash 0.4s ease-out}