@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";:root{--bg:#020907;--bg2:#06110e;--panel:rgba(7,22,18,.78);--panel2:rgba(10,30,24,.72);--line:rgba(115,255,190,.13);--line2:rgba(126,255,195,.28);--green:#45e69a;--green2:#1cb975;--mint:#a8ffd5;--text:#e6f5ee;--muted:#829b90;--danger:#ff6c72;--warning:#e0be65;--radius:16px;--glow:0 0 32px rgba(38,225,142,.12);--space:24px}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%;font-family:Inter,Noto Sans SC,sans-serif;background:var(--bg);color:var(--text)}body{min-width:320px}button,input,textarea,select{font:inherit}.app-bg{min-height:100vh;background:radial-gradient(ellipse at 70% -15%,rgba(22,158,103,.14),transparent 44%),linear-gradient(145deg,#020806,#04100d 60%,#020807);position:relative}.app-bg:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(64,184,128,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(64,184,128,.026) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 85%);mask-image:linear-gradient(to bottom,black,transparent 85%)}.stars{position:fixed;inset:0;opacity:.42;pointer-events:none;background-image:radial-gradient(circle at 15% 20%,#8affc4 0 1px,transparent 1.5px),radial-gradient(circle at 75% 36%,#adffdb 0 1px,transparent 1.5px),radial-gradient(circle at 52% 79%,#8affc4 0 1px,transparent 1.5px);background-size:330px 310px,440px 390px,570px 480px}.sidebar{position:fixed;z-index:10;inset:0 auto 0 0;width:240px;border-right:1px solid var(--line);background:#020b08d1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:28px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 34px}.brand-mark,.panel-symbol{display:grid;place-items:center;width:43px;height:43px;border:1px solid rgba(69,230,154,.45);border-radius:12px;color:var(--green);background:#30dc8b14;box-shadow:0 0 28px #2ce58e21}.brand b{display:block;font-size:19px;letter-spacing:.2em}.brand span{display:block;color:var(--green);font-size:9px;letter-spacing:.25em;margin-top:4px}.nav-label,.eyebrow{color:var(--green);font-size:10px;letter-spacing:.18em;font-weight:600}.nav-label{padding:0 12px 10px;color:#58796a}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a{display:flex;gap:13px;align-items:center;padding:12px 13px;border-radius:10px;color:#799287;text-decoration:none;font-size:14px;transition:.18s}.sidebar nav a:hover{color:var(--text);background:#5fffb50b}.sidebar nav a.router-link-active{color:var(--mint);background:linear-gradient(90deg,#3ae09124,#3ae09109);box-shadow:inset 2px 0 var(--green)}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding:20px 4px 0;display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#39d68b21;border:1px solid var(--line2);color:var(--mint)}.identity{min-width:0;flex:1}.identity b,.identity span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.identity b{font-size:13px}.identity span{font-size:10px;color:var(--muted);margin-top:3px}.workspace{margin-left:240px;min-height:100vh}.page{position:relative;z-index:1;padding:38px 42px 70px;max-width:1660px;margin:auto}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px}.page-header h1{font-size:30px;margin:8px 0 5px;letter-spacing:.02em}.page-header p,.muted{color:var(--muted);margin:0;font-size:14px}.header-actions{display:flex;gap:10px;align-items:center}.btn{border:1px solid var(--line2);border-radius:10px;padding:11px 17px;color:var(--text);background:#0c1e1999;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:.18s;text-decoration:none;font-weight:600;font-size:13px}.btn:hover:not(:disabled){transform:translateY(-1px);border-color:#60ffb080}.btn.primary{background:linear-gradient(135deg,#26c67f,#15985f);border-color:#45e69a;color:#001d11;box-shadow:0 0 24px #20ce7e2b}.btn.secondary{background:#091b169e}.btn.full{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.icon-btn{border:1px solid transparent;background:transparent;color:var(--muted);width:34px;height:34px;border-radius:8px;display:grid;place-items:center;cursor:pointer;text-decoration:none}.icon-btn:hover{color:var(--green);border-color:var(--line2);background:#35db8912}.icon-btn.danger:hover{color:var(--danger);border-color:#ff6c724d}.panel,.stat-card,.challenge-card{background:linear-gradient(145deg,#091c16c7,#04100dbf);border:1px solid var(--line);border-radius:var(--radius);box-shadow:inset 0 1px #ffffff05,0 16px 55px #00000026;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px}.stat-card{position:relative;padding:20px 22px;overflow:hidden}.stat-card span{display:block;color:var(--muted);font-size:12px}.stat-card strong{font-size:32px;display:block;margin:12px 0 6px}.stat-card small{color:#4c6c5e;font-size:9px;letter-spacing:.13em}.stat-card i{position:absolute;right:-20px;bottom:-30px;width:90px;height:90px;border:1px solid var(--line);border-radius:50%}.stat-card.accent{border-color:#48e89952;box-shadow:var(--glow)}.stat-card.accent strong{color:var(--mint)}.section-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.section-grid>.panel{padding:23px}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.panel-title h2{font-size:18px;margin:6px 0 0}.panel-title>svg{color:var(--green)}.pulse{animation:pulse 2.2s infinite}.active-content h3,.control-state h3,.empty-state h3,.success-state h3{font-size:22px;margin:18px 0 8px}.active-content p,.control-state p,.empty-state p,.success-state p,.flag-panel form>p{color:var(--muted);line-height:1.7;font-size:13px}.lab-address{border:1px solid var(--line);background:#020a08a6;border-radius:10px;padding:12px 15px;margin:20px 0}.lab-address span,.address-box>span,.runtime span{display:block;color:#58796a;font-size:9px;letter-spacing:.13em;margin-bottom:7px}.lab-address code,.address-box code{color:var(--mint)}.empty-state{text-align:center;padding:45px 25px}.empty-orbit,.node-visual{margin:auto;width:74px;height:74px;display:grid;place-items:center;color:var(--green);border:1px solid var(--line2);border-radius:50%;background:#2ddc8b0f;box-shadow:var(--glow)}.empty-mini{color:var(--muted);font-size:13px;padding:35px 5px;text-align:center}.activity-list{display:flex;flex-direction:column}.activity-row{display:flex;align-items:center;gap:11px;padding:13px 0;border-top:1px solid rgba(115,255,190,.07)}.activity-icon{width:7px;height:7px;background:var(--green);border-radius:50%;box-shadow:0 0 10px var(--green)}.activity-row>div:nth-child(2){flex:1}.activity-row b,.activity-row span{display:block}.activity-row b{font-size:13px}.activity-row span{color:var(--muted);font-size:10px;margin-top:4px}.status{display:inline-flex;align-items:center;gap:7px;font-size:10px;border:1px solid var(--line);border-radius:20px;padding:5px 8px;color:var(--muted);white-space:nowrap}.status i{width:6px;height:6px;border-radius:50%;background:#61756c}.status.running,.status.passed{color:var(--green);border-color:#45e69a33;background:#30d2840d}.status.running i,.status.passed i{background:var(--green);box-shadow:0 0 8px var(--green)}.toolbar{display:flex;gap:12px;margin-bottom:20px}.search,.select-wrap{display:flex;align-items:center;gap:10px;background:#04110db8;border:1px solid var(--line);border-radius:10px;padding:0 13px;color:var(--muted)}.search{max-width:440px;flex:1}.search input,.select-wrap select,.toolbar>select{border:0;background:transparent;color:var(--text);outline:none;width:100%;padding:12px 0}.toolbar>select{width:auto;border:1px solid var(--line);border-radius:10px;padding:0 15px;background:var(--panel);color:var(--text)}select option{background:#071510}.challenge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.challenge-card{padding:19px;cursor:pointer;transition:.2s;min-height:270px;display:flex;flex-direction:column}.challenge-card:hover{transform:translateY(-2px);border-color:#4deb9d61;box-shadow:var(--glow)}.card-top,.hero-meta{display:flex;justify-content:space-between;align-items:center}.code{font-family:monospace;color:#77a791;font-size:11px;letter-spacing:.08em}.difficulty{display:flex;align-items:center;gap:4px;margin:24px 0 10px}.difficulty i{width:17px;height:3px;background:#244337}.difficulty i.on{background:var(--green);box-shadow:0 0 8px #45e69a66}.difficulty span{margin-left:7px;font-size:10px;color:var(--muted)}.challenge-card h2{font-size:18px;margin:0 0 8px}.challenge-card p{font-size:12px;color:var(--muted);line-height:1.65;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:15px}.tags span{font-size:9px;color:#75b697;border:1px solid var(--line);background:#38b5770b;border-radius:5px;padding:4px 7px}.challenge-card footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(115,255,190,.08);padding-top:14px;margin-top:auto;color:var(--green);font-size:11px}.loading-line{text-align:center;padding:70px;color:var(--green);letter-spacing:.15em;font-size:11px}.detail-hero{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid var(--line);padding:10px 0 30px;margin-bottom:20px}.detail-hero>div:first-child{max-width:780px}.detail-hero h1{font-size:32px;margin:18px 0 10px}.detail-hero p{color:var(--muted);line-height:1.75}.level-block{text-align:right}.level-block span,.level-block strong{display:block}.level-block span{font-size:9px;color:var(--muted);letter-spacing:.17em}.level-block strong{color:var(--green);margin-top:7px}.detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.detail-grid>.panel{padding:23px}.timeline{grid-column:1/-1}.control-state{text-align:center;padding:28px 10px 22px}.node-visual{position:relative}.node-visual i{position:absolute;inset:-12px;border:1px solid var(--line);border-radius:50%}.runtime{display:flex;justify-content:space-between;padding:15px 0 20px}.runtime>div:last-child{text-align:right}.runtime strong{display:flex;gap:8px;align-items:center;font-family:monospace;font-size:18px;color:var(--mint)}.address-box{padding:16px;border:1px solid var(--line2);border-radius:11px;background:#020b08}.address-box>div{display:flex;align-items:center}.address-box code{flex:1;overflow:hidden;text-overflow:ellipsis}.safe-tip{font-size:11px;color:#58796a;margin-top:14px}.flag-panel label,.modal-form label,.login-panel label{display:block;color:#91a89d;font-size:11px;letter-spacing:.04em;margin-top:18px}.flag-panel input,.modal-form input,.modal-form textarea,.modal-form select{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:9px;padding:12px;color:var(--text);background:#010907b8;outline:none}.flag-panel input:focus,.modal-form input:focus,.modal-form textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #30d28412}.flag-panel .btn{margin-top:12px}.success-state{text-align:center;padding:30px}.success-state svg{color:var(--green)}.timeline-list{display:flex;gap:30px}.timeline-list>div{display:flex;gap:10px}.timeline-list i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);margin-top:4px}.timeline-list b,.timeline-list span{display:block}.timeline-list b{font-size:12px}.timeline-list span{font-size:10px;color:var(--muted);margin-top:5px}.table-panel{overflow:hidden}.table-panel>.panel-title{padding:21px 22px 0}.table-panel table{width:100%;border-collapse:collapse}th{text-align:left;color:#58796a;font-size:9px;letter-spacing:.11em;font-weight:600;background:#020c0980}th,td{padding:14px 18px;border-bottom:1px solid rgba(115,255,190,.07)}td{font-size:12px;color:#9eb2a8}td b,td small{display:block}td b{color:var(--text);font-size:12px}td small{color:#58796a;font-size:9px;margin-top:5px}.align-right{text-align:right}.actions{text-align:right;white-space:nowrap}.actions .icon-btn{display:inline-grid}.live-indicator,.token-state{display:inline-flex;align-items:center;gap:7px;color:var(--green);font-size:10px;border:1px solid var(--line);border-radius:20px;padding:7px 11px}.live-indicator i,.token-state i{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green)}.token-state{color:var(--muted);padding:5px 8px}.token-state i{background:#6e7772;box-shadow:none}.token-state.ok{color:var(--green)}.token-state.ok i{background:var(--green);box-shadow:0 0 7px var(--green)}.text-btn{border:0;background:none;color:var(--green);cursor:pointer;font-size:11px}.modal-backdrop{position:fixed;z-index:100;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px}.modal{width:min(550px,100%);background:#051410f5;border:1px solid rgba(69,230,154,.3);border-radius:20px;padding:23px;box-shadow:0 30px 100px #000}.modal>header{display:flex;justify-content:space-between;align-items:center}.modal h2{font-size:19px;margin:0}.modal-form footer{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);margin-top:25px;padding-top:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.toast{position:fixed;z-index:200;right:25px;top:25px;border:1px solid rgba(69,230,154,.35);background:#051d14ed;box-shadow:var(--glow);border-radius:10px;padding:13px 18px;color:var(--mint);font-size:12px}.toast.error{border-color:#ff6c7266;color:#ffabb0}.toast-enter-active,.toast-leave-active{transition:.2s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translateY(-8px)}.login-page{min-height:100vh;display:grid;grid-template-columns:1.12fr .88fr;position:relative;z-index:1}.login-intro{padding:7vh 7vw;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.system-tag{font-size:9px;color:#6fa98d;letter-spacing:.17em;display:flex;gap:9px;align-items:center}.system-tag i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green)}.login-intro h1{font-size:clamp(42px,5.2vw,78px);line-height:1.12;letter-spacing:-.04em;margin:28px 0 20px}.login-intro h1 em{color:transparent;-webkit-text-stroke:1px rgba(130,255,192,.55);font-style:normal}.login-intro>p{max-width:610px;color:#789287;font-size:15px;line-height:1.9}.orbit{position:absolute;right:4vw;top:18%;width:360px;height:360px;display:grid;place-items:center;opacity:.38}.orb-core{width:90px;height:90px;border:1px solid var(--green);border-radius:50%;display:grid;place-items:center;color:var(--green);box-shadow:0 0 70px #45e69a38}.ring{position:absolute;border:1px solid var(--line);border-radius:50%}.r1{inset:75px}.r2{inset:32px}.r3{inset:-18px}.metrics{display:flex;gap:50px;margin-top:12vh;border-top:1px solid var(--line);padding-top:23px}.metrics b,.metrics span{display:block}.metrics b{color:#91caae;font-size:10px;letter-spacing:.12em}.metrics span{color:#526c60;font-size:10px;margin-top:6px}.login-panel{display:grid;place-items:center;padding:35px;background:linear-gradient(90deg,transparent,rgba(3,13,10,.7));border-left:1px solid rgba(115,255,190,.06)}.login-panel form{width:min(390px,100%);padding:38px;border:1px solid var(--line);background:#051410c2;border-radius:20px;box-shadow:0 40px 120px #00000052,var(--glow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel-symbol{margin-bottom:27px}.login-panel h2{font-size:27px;margin:9px 0 7px}.input-wrap{display:flex;gap:10px;align-items:center;margin-top:8px;border:1px solid var(--line);border-radius:10px;padding:0 12px;color:#567566;background:#010907a6}.input-wrap:focus-within{border-color:var(--green);color:var(--green);box-shadow:0 0 0 3px #30d28412}.input-wrap input{width:100%;border:0;outline:0;background:transparent;color:var(--text);padding:13px 0}.login-panel .btn{margin-top:22px}.secure-note{text-align:center;color:#4f6a5e;font-size:9px;margin-top:20px}.secure-note i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--green);margin-right:6px}.form-error{margin-top:14px;border:1px solid rgba(255,108,114,.25);background:#ff3c460f;color:#ff9ca2;border-radius:8px;padding:10px;font-size:11px}.error-page{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.error-page svg{color:var(--green)}.error-page>span{font-size:100px;line-height:1;color:#5cf4a321;font-weight:700}.error-page h1{letter-spacing:.18em}.error-page p{color:var(--muted)}@keyframes pulse{50%{opacity:.45;filter:drop-shadow(0 0 8px var(--green))}}@media(max-width:1180px){.stats-grid,.challenge-grid{grid-template-columns:repeat(2,1fr)}.orbit{opacity:.18}.login-intro{padding:6vw}.detail-grid{grid-template-columns:1fr}.timeline{grid-column:auto}}@media(max-width:900px){.sidebar{width:80px;padding:25px 12px}.brand>div:last-child,.nav-label,.sidebar nav span,.identity{display:none}.brand{padding:0 6px 32px}.sidebar nav a{justify-content:center}.workspace{margin-left:80px}.page{padding:30px 24px}.section-grid,.login-page{grid-template-columns:1fr}.login-intro{display:none}.login-panel{min-height:100vh}.table-panel{overflow-x:auto}.table-panel table{min-width:760px}}@media(max-width:620px){.sidebar{position:fixed;inset:auto 0 0;width:auto;height:67px;flex-direction:row;padding:7px 10px;border-right:0;border-top:1px solid var(--line)}.brand,.sidebar-foot,.nav-label{display:none}.sidebar nav{width:100%;flex-direction:row;justify-content:space-around}.sidebar nav a{padding:10px 16px}.workspace{margin:0 0 67px}.page{padding:23px 15px 45px}.page-header,.detail-hero{align-items:flex-start;flex-direction:column}.stats-grid,.challenge-grid{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}.form-grid{grid-template-columns:1fr}.metrics{gap:20px}.login-panel{padding:15px}.login-panel form{padding:28px 22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.article-body{padding:30px;overflow-wrap:anywhere}.markdown-content{font-size:16px;line-height:1.8;color:#d8e9e0}.markdown-content h1,.markdown-content h2,.markdown-content h3{color:#fff;margin:1.2em 0 .45em}.markdown-content p{margin:.75em 0}.markdown-content blockquote{margin:1em 0;padding:.6em 1em;border-left:3px solid var(--green);background:#06271f}.markdown-content code{padding:.12em .35em;background:#0a2821;border-radius:4px;font-family:ui-monospace,Consolas,monospace}.markdown-content li{margin:.35em 0}.brand-mark,.logo-symbol{overflow:hidden}.brand-mark img,.logo-symbol img{width:100%;height:100%;object-fit:contain;transform:scale(1.35);filter:brightness(1.25) saturate(.9)}.brand>div:last-child{min-width:0}.brand b{font-size:16px;letter-spacing:.11em;white-space:nowrap}.brand span{letter-spacing:.12em;white-space:nowrap}.logo-symbol{width:56px;height:56px;border-radius:50%}.account-identity{display:flex;align-items:center;gap:16px;padding:21px 24px;margin-bottom:18px}.avatar.large{width:48px;height:48px;flex:0 0 48px}.account-identity>div:nth-child(2){flex:1}.account-identity h2{margin:5px 0 3px;font-size:18px}.account-identity p,.account-card>p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.account-card{padding:26px}.account-card h2{margin:9px 0 8px;font-size:21px}.account-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:22px;border:1px solid var(--line2);border-radius:11px;color:var(--green);background:#30dc8b12}.account-card label{display:block;margin-top:17px;color:#91a89d;font-size:11px}.account-card input,.account-card textarea{width:100%;margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:9px;outline:none;resize:vertical;color:var(--text);background:#010907b8}.account-card input:focus,.account-card textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #30d28412}.account-card form .btn{margin-top:18px}.credential-warning{margin:-8px 0 18px;padding:12px 15px;border:1px solid rgba(224,190,101,.28);border-radius:10px;color:#d8c78f;background:#e0be650f;font-size:12px}.credential-warning a{color:var(--green)}@media(max-width:900px){.account-grid{grid-template-columns:1fr}}@media(max-width:1050px){.login-page{grid-template-columns:1fr}.login-intro{display:none}.login-panel{min-height:100vh;border-left:0}}@media(max-width:620px){.account-identity{align-items:flex-start;flex-wrap:wrap}.account-identity .token-state{margin-left:64px}}
