:root{color-scheme:light;--bg: #0d1320;--bg-soft: #111b2f;--panel: rgba(12, 20, 35, .78);--panel-strong: rgba(16, 27, 47, .92);--panel-muted: rgba(255, 255, 255, .06);--line: rgba(182, 198, 226, .16);--line-strong: rgba(182, 198, 226, .28);--ink: #eff4ff;--muted: #9fb0cf;--brand: #61c6ff;--brand-strong: #2d8cff;--brand-soft: rgba(97, 198, 255, .16);--accent: #6ef0c2;--accent-soft: rgba(110, 240, 194, .14);--warn: #f7c66d;--warn-soft: rgba(247, 198, 109, .14);--danger: #ff7d7d;--danger-soft: rgba(255, 125, 125, .14);--shadow: 0 30px 80px rgba(0, 0, 0, .28);--radius-xl: 32px;--radius-lg: 24px;--radius-md: 18px;--radius-sm: 14px;--font-body: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-display: "STZhongsong", "Noto Serif SC", "Songti SC", serif}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(97,198,255,.72) rgba(255,255,255,.06)}*::-webkit-scrollbar{width:12px;height:12px}*::-webkit-scrollbar-track{background:linear-gradient(180deg,#ffffff08,#ffffff03),#080e19c7;border-radius:999px}*::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:linear-gradient(180deg,#6ef0c2f2,#2d8cfff2) padding-box,linear-gradient(180deg,#ffffff2e,#ffffff0a) border-box;box-shadow:inset 0 0 12px #ffffff38}*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#97f9d9,#4da6ff) padding-box,linear-gradient(180deg,#ffffff47,#ffffff14) border-box}*::-webkit-scrollbar-corner{background:transparent}html{min-height:100%;background:radial-gradient(circle at top left,rgba(45,140,255,.28),transparent 24%),radial-gradient(circle at 85% 15%,rgba(110,240,194,.18),transparent 20%),linear-gradient(160deg,#08101c,#10192a 48%,#070d16)}body{min-height:100vh;margin:0;font-family:var(--font-body);color:var(--ink);background:transparent}body:before,body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-2}body:before{background:radial-gradient(circle at 15% 20%,rgba(97,198,255,.12),transparent 18%),radial-gradient(circle at 82% 12%,rgba(110,240,194,.1),transparent 16%),radial-gradient(circle at 50% 100%,rgba(247,198,109,.08),transparent 22%);filter:blur(12px)}body:after{z-index:-1;opacity:.32;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:36px 36px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.85),transparent 85%);mask-image:linear-gradient(180deg,rgba(0,0,0,.85),transparent 85%)}#app{min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,.card,.stat,.nav-link,.input,.select,.textarea,.check-row{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease,opacity .18s ease}h1,h2,h3,h4{margin:0;color:var(--ink)}h1,h2{font-family:var(--font-display);letter-spacing:.04em}h2{font-size:clamp(28px,4vw,38px)}h3{font-size:22px}p{line-height:1.7}label{display:grid;gap:8px}.page-shell{min-height:100vh;padding:24px}.card{position:relative;background:linear-gradient(180deg,#ffffff14,#ffffff08),var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 34%);opacity:.85}.card>*{position:relative}.card>h2+.form-grid,.card>h2+.stats-grid,.card>h2+.table,.card>h3+.form-grid,.card>h3+.stats-grid,.card>h3+.table,.card>h4+.form-grid,.card>h4+.checkbox-grid,.card>h4+.table{margin-top:18px}.card>h2+p,.card>h3+p,.card>h4+p{margin-top:12px}.app-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px;min-height:calc(100vh - 48px)}.sidebar{display:flex;flex-direction:column;gap:22px;position:sticky;top:24px;height:calc(100vh - 48px);padding:26px 22px;border-radius:var(--radius-xl);border:1px solid var(--line);background:linear-gradient(180deg,#131f36f5,#080e19e0),var(--panel-strong);box-shadow:var(--shadow);overflow:hidden}.sidebar:before{content:"";position:absolute;width:220px;height:220px;top:-80px;right:-80px;border-radius:999px;background:radial-gradient(circle,rgba(97,198,255,.22),transparent 72%)}.sidebar:after{content:"";position:absolute;width:180px;height:180px;left:-70px;bottom:-70px;border-radius:999px;background:radial-gradient(circle,rgba(110,240,194,.14),transparent 70%)}.sidebar__brand,.sidebar__nav,.sidebar__footer{position:relative;z-index:1}.sidebar__brand{display:grid;gap:10px}.sidebar__eyebrow,.page-kicker{display:inline-flex;width:fit-content;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid rgba(97,198,255,.26);background:#61c6ff17;color:#caecff;font-size:12px;text-transform:uppercase;letter-spacing:.16em}.sidebar__title{font-size:clamp(32px,4vw,40px);line-height:1.1}.sidebar__meta{margin:0;font-size:14px}.sidebar__nav{display:grid;gap:10px;overflow:auto;padding-right:4px;scrollbar-gutter:stable}.nav-link{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;padding:14px 16px;border-radius:18px;border:1px solid transparent;background:#ffffff08;color:var(--muted)}.nav-link:hover{transform:translate(4px);border-color:var(--line-strong);color:var(--ink)}.nav-link.router-link-active{background:linear-gradient(135deg,#61c6ff2e,#6ef0c214);border-color:#61c6ff3d;color:var(--ink);box-shadow:inset 0 0 0 1px #61c6ff0f}.nav-link__index{display:inline-flex;justify-content:center;align-items:center;width:42px;height:42px;border-radius:14px;background:#ffffff0f;color:#caecff;font-size:12px;font-weight:700;letter-spacing:.12em}.nav-link__label{font-size:15px;font-weight:600;letter-spacing:.02em}.sidebar__footer{margin-top:auto;display:grid;gap:12px}.sidebar__hint{padding:16px 18px;border-radius:18px;background:#ffffff0a;border:1px solid var(--line)}.sidebar__hint strong{display:block;margin-top:6px;font-size:18px}.sidebar__hint p{margin:8px 0 0;font-size:13px}.sidebar__logout{width:100%;justify-content:center}.content{position:relative;min-width:0;padding:6px 6px 32px}.content:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:34px;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%);opacity:.6}.toolbar,.form-grid,.stats-grid,.list-grid,.result-grid{display:grid;gap:18px}.toolbar{align-content:start}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.list-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.stat{position:relative;padding:20px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(180deg,#ffffff14,#ffffff08),#ffffff0a;overflow:hidden}.stat:after{content:"";position:absolute;inset:auto -30px -30px auto;width:120px;height:120px;border-radius:999px;background:radial-gradient(circle,rgba(97,198,255,.18),transparent 72%)}.stat:hover{transform:translateY(-4px);border-color:var(--line-strong)}.stat strong{display:block;margin-top:10px;font-size:clamp(28px,5vw,38px);line-height:1.1}.stat small{display:block;margin-top:10px;color:var(--muted);line-height:1.5}.stat--success:after{background:radial-gradient(circle,rgba(110,240,194,.2),transparent 72%)}.stat--warn:after{background:radial-gradient(circle,rgba(247,198,109,.18),transparent 72%)}.stat--danger:after{background:radial-gradient(circle,rgba(255,125,125,.2),transparent 72%)}.label{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.input,.select,.textarea{width:100%;padding:13px 14px;border-radius:16px;border:1px solid var(--line);background:#040a147a;color:var(--ink);outline:none;box-shadow:inset 0 1px #ffffff0a}.input::placeholder,.textarea::placeholder{color:#6d7d99}.input:focus,.select:focus,.textarea:focus{border-color:#61c6ff73;box-shadow:0 0 0 4px #61c6ff14,inset 0 1px #ffffff0a}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#c4e5ff 50%),linear-gradient(135deg,#c4e5ff 50%,transparent 50%);background-position:calc(100% - 20px) calc(50% - 4px),calc(100% - 14px) calc(50% - 4px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.select option{background:#0e1627;color:var(--ink)}.textarea{min-height:140px;resize:vertical}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.check-row{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#ffffff08}.check-row:hover{border-color:var(--line-strong);transform:translateY(-2px)}.helper-card{background:linear-gradient(180deg,#61c6ff0f,#ffffff08),#ffffff08}.code-block{margin:0;padding:18px;border:1px solid var(--line);border-radius:18px;background:#0308109e;color:#d9ecff;overflow-x:auto;white-space:pre-wrap;word-break:break-word;line-height:1.7}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border:0;border-radius:999px;cursor:pointer;background:linear-gradient(135deg,var(--brand),var(--brand-strong));color:#06101c;font-weight:700;letter-spacing:.02em;box-shadow:0 14px 30px #2d8cff42}.btn:hover{transform:translateY(-2px)}.btn:disabled{cursor:not-allowed;opacity:.45;transform:none;box-shadow:none}.btn.secondary{background:linear-gradient(180deg,#ffffff14,#ffffff08),#ffffff0a;color:#edf5ff;border:1px solid var(--line-strong);box-shadow:0 12px 28px #00000029}.btn.secondary:hover{border-color:var(--line-strong)}.btn.ghost{background:#ffffff06;color:#d7ebff;border:1px solid rgba(182,198,226,.18);box-shadow:none}.btn.ghost:hover{border-color:#61c6ff4d;background:#61c6ff14}.btn.info{background:linear-gradient(135deg,#7fdfff,#5b9dff);color:#04111e;box-shadow:0 14px 30px #5b9dff3d}.btn.success{background:linear-gradient(135deg,#85ffd6,#3ad3a1);color:#062116;box-shadow:0 14px 30px #3ad3a13d}.btn.warning{background:linear-gradient(135deg,#ffd88c,#ffb347);color:#2e1704;box-shadow:0 14px 30px #ffb3473d}.btn.danger{background:linear-gradient(135deg,#ff9288,#ff6262);color:#220809;box-shadow:0 14px 30px #ff626238}.btn.compact{min-height:38px;padding:9px 14px;border-radius:14px;font-size:13px;letter-spacing:.04em}.muted{color:var(--muted)}.table{width:100%;border-collapse:separate;border-spacing:0;margin-top:6px}.table thead th{position:sticky;top:0;z-index:1;background:#080e19eb}.table th,.table td{padding:14px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.table th{color:#cfe4ff;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.table tbody tr:hover td{background:#ffffff06}.table-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:var(--brand-soft);color:#d8f1ff;border:1px solid rgba(97,198,255,.16);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pill--success{background:var(--accent-soft);color:#dffcf3;border-color:#6ef0c238}.pill--danger{background:var(--danger-soft);color:#ffe0e0;border-color:#ff7d7d3d}.status-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid transparent;letter-spacing:.04em}.status-unused{color:#ffe1a0;background:var(--warn-soft);border-color:#f7c66d47}.status-active{color:#b8ffe4;background:var(--accent-soft);border-color:#6ef0c247}.status-banned{color:#ffd5d5;background:var(--danger-soft);border-color:#ff7d7d47}.status-expired{color:#d3ddf1;background:#9fb0cf29;border-color:#9fb0cf33}.hero{min-height:100vh;padding:40px 24px}.hero-shell{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);gap:22px;align-items:stretch}.hero-copy,.hero-form{min-width:0}.hero-copy{padding:34px;border-radius:var(--radius-xl);border:1px solid var(--line);background:radial-gradient(circle at top left,rgba(97,198,255,.18),transparent 28%),linear-gradient(180deg,#0a121edb,#060c14b3);box-shadow:var(--shadow)}.hero-copy h1{margin-top:18px;font-size:clamp(42px,7vw,76px);line-height:.96}.hero-copy p{margin:18px 0 0;max-width:50ch}.hero-lead{font-size:17px;color:#d9ebff}.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.hero-note{display:grid;gap:8px;margin-top:28px;padding:18px 20px;border-radius:22px;border:1px solid var(--line);background:#ffffff0a}.hero-note strong{font-size:18px}.hero-form{align-self:center}.hero-form h1{margin-top:18px;font-size:clamp(30px,4.2vw,44px)}.hero-form>p{margin:14px 0 0}.hero-form__foot{margin-top:16px;font-size:13px}.page-title-row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.page-summary{margin:14px 0 0;max-width:60ch;color:var(--muted)}.dashboard-hero,.dashboard-system{padding:28px}.dashboard-overview{display:grid;gap:16px}.dashboard-system__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:22px}.dashboard-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.dashboard-band__item{padding:16px 18px;border-radius:20px;border:1px solid var(--line);background:#ffffff0a}.dashboard-band__item strong{display:block;margin-top:8px;font-size:24px}.result-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:22px}.result-item{padding:16px 18px;border-radius:18px;border:1px solid var(--line);background:#ffffff08}.result-item strong,.result-item span:last-child{display:block;margin-top:8px;color:var(--ink);font-size:16px;line-height:1.55;word-break:break-word}input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand)}body.dialog-open{overflow:hidden}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,rgba(97,198,255,.18),transparent 28%),#02070eb8;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.dialog-shell{width:min(100%,560px)}.dialog-panel{position:relative;overflow:hidden;padding:28px;border-radius:30px;border:1px solid var(--line-strong);background:linear-gradient(180deg,#ffffff17,#ffffff08),#080e19f2;box-shadow:0 30px 90px #00000073,inset 0 1px #ffffff14}.dialog-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 38%)}.dialog-orb{position:absolute;width:180px;height:180px;top:-62px;right:-32px;border-radius:999px;background:radial-gradient(circle,rgba(97,198,255,.26),transparent 70%);filter:blur(2px)}.dialog-panel--warning .dialog-orb{background:radial-gradient(circle,rgba(247,198,109,.26),transparent 70%)}.dialog-panel--danger .dialog-orb{background:radial-gradient(circle,rgba(255,125,125,.28),transparent 70%)}.dialog-panel--success .dialog-orb{background:radial-gradient(circle,rgba(110,240,194,.26),transparent 70%)}.dialog-header,.dialog-copy,.dialog-actions{position:relative;z-index:1}.dialog-header{display:grid;gap:12px}.dialog-copy{margin:18px 0 0;color:#dcecff;font-size:15px;line-height:1.8;white-space:pre-wrap}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:26px}.dialog-btn{min-width:124px;justify-content:center}.dialog-fade-enter-active,.dialog-fade-leave-active{transition:opacity .22s ease,transform .22s ease}.dialog-fade-enter-from,.dialog-fade-leave-to{opacity:0}.dialog-fade-enter-from .dialog-panel,.dialog-fade-leave-to .dialog-panel{transform:translateY(16px) scale(.96)}@media(max-width:1180px){.dashboard-band{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-shell{grid-template-columns:1fr}}@media(max-width:960px){.page-shell{padding:16px}.app-grid{grid-template-columns:1fr;min-height:auto}.sidebar{position:static;height:auto}.content{padding:0 0 24px}.card,.hero-copy{padding:22px}.table th,.table td{padding:12px 10px}}@media(max-width:680px){.hero{padding:18px}.hero-copy,.hero-form{padding:22px}.hero-copy h1{font-size:clamp(34px,11vw,52px)}.dashboard-band,.stats-grid,.result-grid{grid-template-columns:1fr}.dialog-panel{padding:22px;border-radius:24px}.page-title-row{align-items:flex-start}.btn,.actions>.btn,.actions>a.btn{width:100%;justify-content:center}}
