:root{
  --bg:#070914;
  --bg-2:#0b0e1c;
  --panel:#0e1222;
  --panel-2:#11162a;
  --line:rgba(160,171,224,.12);
  --line-strong:rgba(160,171,224,.22);
  --text:#f2f4ff;
  --muted:#8a93b2;
  --faint:#58617f;
  --violet:#8a6cff;
  --blue:#4b9dff;
  --cyan:#56d4e8;
  --pink:#e76dff;
  --gold:#ffd45c;
  --good:#76e5b8;
  --bad:#ff718d;
  --shell:1180px;
  color-scheme:dark;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button,select{cursor:pointer}
.shell{width:min(calc(100% - 40px),var(--shell));margin:0 auto}

.backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(circle at 50% -20%,#15122c 0,#090b17 34%,#070914 66%)}
.noise{position:absolute;inset:0;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
.scan-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(125,139,199,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(125,139,199,.035) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 78%)}
.glow{position:absolute;border-radius:50%;filter:blur(15px)}
.glow-a{width:620px;height:620px;left:-300px;top:100px;background:radial-gradient(circle,rgba(100,76,255,.16),transparent 69%)}
.glow-b{width:700px;height:700px;right:-350px;top:420px;background:radial-gradient(circle,rgba(48,143,255,.11),transparent 68%)}

.topbar{position:sticky;top:0;z-index:30;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.055);background:rgba(7,9,20,.76);backdrop-filter:blur(18px)}
.topbar-inner{height:54px;display:flex;align-items:center;gap:30px}
.brand{display:flex;align-items:center;gap:11px;font-size:12px;font-weight:950;letter-spacing:.17em}
.brand-symbol{position:relative;width:31px;height:31px;display:block;border:1px solid rgba(138,108,255,.42);background:linear-gradient(145deg,rgba(138,108,255,.14),rgba(75,157,255,.04));clip-path:polygon(15% 0,85% 0,100% 15%,100% 85%,85% 100%,15% 100%,0 85%,0 15%)}
.brand-symbol:before,.brand-symbol:after,.brand-symbol i,.brand-symbol b{content:"";position:absolute;display:block;background:#a795ff;box-shadow:0 0 12px rgba(138,108,255,.55)}
.brand-symbol:before{width:11px;height:2px;left:6px;top:9px}
.brand-symbol:after{width:2px;height:11px;right:7px;bottom:7px}
.brand-symbol i{width:5px;height:5px;border-radius:50%;right:6px;top:6px}
.brand-symbol b{width:6px;height:2px;left:7px;bottom:8px}
.brand-symbol.small{width:25px;height:25px;transform:scale(.82)}
.topnav{display:flex;align-items:center;gap:7px}
.topnav a{padding:8px 11px;border-radius:8px;color:#7f88a5;font-size:11px;font-weight:800}
.topnav a:hover,.topnav a.active{background:rgba(255,255,255,.04);color:#e8eaff}
.range-status{margin-left:auto;display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:#77809c;font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.status-dot{width:7px;height:7px;border-radius:50%;background:#6c7390}
.status-dot.online{background:var(--good);box-shadow:0 0 12px rgba(118,229,184,.5)}
.status-dot.offline{background:var(--bad);box-shadow:0 0 12px rgba(255,113,141,.4)}

.range-hero{padding:68px 0 46px;display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:end}
.range-kicker{display:flex;align-items:center;gap:9px;color:#6e7796;font-size:10px;font-weight:900;letter-spacing:.13em}
.range-kicker span{color:#9d8cff}.range-kicker i{color:#343b56;font-style:normal}.range-kicker strong{color:#707b9d;font-size:9px}
.range-copy h1{margin:16px 0 10px;font-size:clamp(62px,8vw,104px);line-height:.83;letter-spacing:-.068em;font-weight:950}
.range-copy h1 span{color:transparent;background:linear-gradient(90deg,#9c82ff 5%,#6f8dff 48%,#4cb2ff 90%);-webkit-background-clip:text;background-clip:text;text-shadow:0 0 40px rgba(124,108,255,.10)}
.range-copy p{margin:22px 0 0;color:#9098b2;font-size:17px;font-weight:600;letter-spacing:-.01em}
.range-panel{border:1px solid var(--line-strong);border-radius:18px;background:linear-gradient(165deg,rgba(18,22,42,.92),rgba(9,12,25,.78));box-shadow:0 24px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035);overflow:hidden}
.panel-head{height:48px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.015);color:#68728f;font-size:9px;font-weight:900;letter-spacing:.13em}
.panel-head b{color:#8a93b2;font-size:9px}.range-status.online,.panel-head b.online{color:var(--good)}
.panel-stats{display:grid;grid-template-columns:repeat(4,1fr)}
.panel-stats div{min-height:94px;padding:17px;border-right:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;justify-content:center}
.panel-stats div:last-child{border-right:0}.panel-stats strong{font-size:25px;letter-spacing:-.045em}.panel-stats span{margin-top:4px;color:#68728f;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.latest-line{padding:14px 17px;display:grid;grid-template-columns:110px 1fr;gap:12px;border-top:1px solid rgba(255,255,255,.055);background:rgba(0,0,0,.12)}
.latest-line span{color:#5c6685;font-size:8px;font-weight:900;letter-spacing:.11em}.latest-line strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#afb5cc;font-size:10px;font-weight:750}

.challenge-section{padding:34px 0 82px}
.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}
.section-code{margin:0 0 7px;color:#7567bf;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;font-weight:900;letter-spacing:.12em}
.section-top h2,.range-info-card h2{margin:0;font-size:32px;line-height:1.05;letter-spacing:-.045em}
.showing{padding:7px 10px;border:1px solid var(--line);border-radius:8px;color:#66708e;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px}.showing span{color:#c6cae2}
.toolbar{margin-bottom:17px;padding:11px;display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:15px;background:rgba(12,15,30,.68)}
.search-field{height:43px;flex:1;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:#090c19;color:#5c6584}
.search-field:focus-within{border-color:rgba(138,108,255,.40);box-shadow:0 0 0 3px rgba(138,108,255,.06)}
.search-field input{width:100%;border:0;outline:0;background:transparent;color:#dfe2f2;font-size:12px}.search-field input::placeholder{color:#59627f}
.search-field kbd{padding:2px 6px;border:1px solid rgba(255,255,255,.08);border-bottom-color:rgba(255,255,255,.13);border-radius:5px;background:#11162a;color:#59627e;font-family:inherit;font-size:9px}
.filters{display:flex;align-items:center;gap:8px}.filters label{display:flex;align-items:center;gap:8px;height:43px;padding:0 7px 0 10px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:#090c19}.filters label>span{color:#535d7c;font-size:8px;font-weight:900;letter-spacing:.1em}.filters select{border:0;outline:0;background:#090c19;color:#aab0c7;font-size:10px;font-weight:800}

.challenge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.challenge-card{position:relative;min-height:292px;padding:18px 18px 16px;display:flex;flex-direction:column;border:1px solid rgba(159,169,219,.13);border-radius:14px;background:linear-gradient(155deg,rgba(16,20,39,.96),rgba(9,12,25,.94));overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.18);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.challenge-card:hover{transform:translateY(-2px);border-color:rgba(138,108,255,.35);background:linear-gradient(155deg,rgba(20,24,47,.98),rgba(10,13,28,.96))}
.card-rail{position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--card-accent,#836dff);box-shadow:0 0 14px var(--card-glow,rgba(131,109,255,.25))}
.challenge-card.web{--card-accent:#8b6cff;--card-glow:rgba(139,108,255,.40)}
.challenge-card.api{--card-accent:#4f9cff;--card-glow:rgba(79,156,255,.38)}
.challenge-card.linux{--card-accent:#51c9de;--card-glow:rgba(81,201,222,.36)}
.challenge-card.forensics{--card-accent:#d76dff;--card-glow:rgba(215,109,255,.36)}
.challenge-card.crypto{--card-accent:#ff9f6b;--card-glow:rgba(255,159,107,.36)}
.challenge-card.network,.challenge-card.networking{--card-accent:#5fd0ff;--card-glow:rgba(95,208,255,.36)}
.challenge-card.osint{--card-accent:#ff7dac;--card-glow:rgba(255,125,172,.34)}
.challenge-card.reverse,.challenge-card.pwn{--card-accent:#ff707f;--card-glow:rgba(255,112,127,.34)}
.challenge-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.challenge-tags{display:flex;align-items:center;gap:6px;min-width:0}.tag{display:inline-flex;align-items:center;height:23px;padding:0 8px;border:1px solid rgba(255,255,255,.075);border-radius:6px;background:rgba(255,255,255,.025);color:#858eaa;font-size:8px;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.tag.category{color:#c0b8ff;border-color:rgba(138,108,255,.20);background:rgba(138,108,255,.07)}.tag.new{color:#9aeac9;border-color:rgba(118,229,184,.17);background:rgba(118,229,184,.055)}
.target-number{color:#444d6b;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;font-weight:800}
.challenge-card h3{margin:23px 0 8px;font-size:21px;line-height:1.12;letter-spacing:-.035em}
.challenge-desc{margin:0;color:#818aa6;font-size:12.5px;line-height:1.65}
.challenge-bottom{margin-top:auto;padding-top:23px;display:flex;align-items:flex-end;justify-content:space-between;gap:14px}
.difficulty{display:grid;gap:6px}.star-row{display:flex;align-items:center;gap:1px;font-size:18px;line-height:1;letter-spacing:1px}.star-on{color:var(--gold);text-shadow:0 0 8px rgba(255,212,92,.52),0 0 18px rgba(255,212,92,.16)}.star-off{color:#3d445e}.star-plus{margin-left:3px;color:#ff86ba;font-size:12px;font-weight:950}.difficulty-label{color:#edf0ff;font-size:9px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.xp-block{text-align:right}.xp-block strong{display:block;color:#a99aff;font-size:14px;font-weight:950}.xp-block span{display:block;margin-top:2px;color:#555f7d;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.verified{margin-top:15px;padding-top:11px;display:flex;align-items:center;gap:7px;border-top:1px solid rgba(255,255,255,.055);color:#626c89;font-size:8px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.verified i{width:14px;height:14px;display:grid;place-items:center;border:1px solid rgba(118,229,184,.22);border-radius:50%;color:#83e1ba;font-style:normal;font-size:8px}.verified b{margin-left:auto;color:#4f5875;font-size:7px;letter-spacing:.11em}

.state-card{grid-column:1/-1;min-height:230px;padding:34px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed rgba(159,169,219,.16);border-radius:14px;background:rgba(10,13,27,.68);color:#717b98}.state-card strong{margin-top:12px;color:#dce0f1;font-size:14px}.state-card small{margin-top:5px;color:#606a88}.state-code{color:#6d62ad;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:26px;font-weight:950;letter-spacing:-.05em}.spinner{width:29px;height:29px;border:2px solid rgba(138,108,255,.13);border-top-color:#8a6cff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.retry-button{margin-top:16px;padding:8px 12px;border:1px solid rgba(138,108,255,.27);border-radius:8px;background:rgba(138,108,255,.08);color:#beb5ff;font-size:10px;font-weight:850}.retry-button:hover{background:rgba(138,108,255,.14)}

.range-info{padding:0 0 92px}.range-info-card{padding:25px 27px;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;border:1px solid var(--line);border-radius:15px;background:rgba(11,14,28,.72)}.info-mark{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(138,108,255,.28);border-radius:10px;background:rgba(138,108,255,.07);color:#9d8cff;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:950}.range-info-card h2{font-size:22px}.range-info-card p:not(.section-code){max-width:700px;margin:7px 0 0;color:#78829f;font-size:11.5px;line-height:1.6}.info-tags{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.info-tags span{padding:5px 7px;border:1px solid rgba(255,255,255,.06);border-radius:6px;color:#5d6785;font-size:7px;font-weight:950;letter-spacing:.1em}

.footer{border-top:1px solid rgba(255,255,255,.055);background:rgba(5,7,15,.66)}.footer-inner{min-height:82px;display:flex;align-items:center;gap:20px;color:#525c78;font-size:8px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.footer-brand{display:flex;align-items:center;gap:7px;color:#7a839e}.footer-brand strong{font-size:9px;letter-spacing:.14em}.footer-inner>span:nth-child(2){margin-left:auto;display:flex;align-items:center;gap:7px}.footer-inner>span:nth-child(2) i{width:6px;height:6px;border-radius:50%;background:#5c6480}.footer-inner>span.online i{background:var(--good);box-shadow:0 0 9px rgba(118,229,184,.4)}.footer-inner>span.offline i{background:var(--bad)}

@media(max-width:980px){.range-hero{grid-template-columns:1fr;gap:34px}.range-copy h1{font-size:clamp(72px,13vw,100px)}.challenge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.range-info-card{grid-template-columns:auto 1fr}.info-tags{grid-column:2;align-items:flex-start;flex-direction:row;flex-wrap:wrap}}
@media(max-width:700px){.shell{width:min(calc(100% - 24px),var(--shell))}.topbar-inner{height:49px;gap:16px}.topnav{display:none}.range-status{padding:6px 8px}.range-hero{padding:50px 0 30px}.range-copy h1{font-size:clamp(58px,20vw,82px)}.range-copy p{font-size:14px}.panel-stats{grid-template-columns:repeat(2,1fr)}.panel-stats div:nth-child(2){border-right:0}.panel-stats div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.05)}.latest-line{grid-template-columns:1fr}.challenge-section{padding-top:24px}.section-top{align-items:flex-start}.section-top h2{font-size:27px}.toolbar{align-items:stretch;flex-direction:column}.filters{display:grid;grid-template-columns:1fr 1fr}.filters label{justify-content:space-between}.challenge-grid{grid-template-columns:1fr}.challenge-card{min-height:270px}.range-info-card{grid-template-columns:1fr}.info-mark{display:none}.info-tags{grid-column:1}.range-info-card h2{font-size:20px}}
@media(max-width:430px){.brand span:last-child{font-size:11px}.range-status span:last-child{display:none}.range-copy h1{font-size:17vw}.filters{grid-template-columns:1fr}.panel-stats strong{font-size:22px}.challenge-card{padding:17px}.verified b{display:none}.search-field kbd{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Phase 1 approved desktop scale */
:root{--shell:1260px}
.topbar-inner{height:60px}.brand{font-size:13px}.brand-symbol{width:34px;height:34px}.topnav a{padding:9px 13px;font-size:12px}.range-status{padding:8px 12px;font-size:10px}
.range-hero{padding:62px 0 44px;gap:58px}.range-kicker{font-size:11px}.range-copy p{font-size:18px;line-height:1.55}.panel-head{height:52px;font-size:10px}.panel-stats div{min-height:105px;padding:20px}.panel-stats strong{font-size:29px}.panel-stats span{font-size:10px}
.section-code{font-size:10px}.section-top h2{font-size:36px}.showing{padding:8px 11px;font-size:10px}.toolbar{padding:13px;gap:13px}.search-field,.filters label{height:48px}.search-field input{font-size:14px}.filters label>span{font-size:9px}.filters select{font-size:11px}
.challenge-grid{gap:16px}.challenge-card{min-height:320px;padding:22px 21px 19px;border-radius:16px}.tag{height:26px;padding:0 9px;font-size:9px}.target-number{font-size:10px}.challenge-card h3{margin:25px 0 10px;font-size:24px}.challenge-desc{font-size:14px;line-height:1.68}.challenge-bottom{padding-top:26px}.star-row{font-size:20px}.difficulty-label{font-size:10px}.xp-block strong{font-size:16px}.xp-block span{font-size:9px}.verified{margin-top:17px;padding-top:13px;font-size:9px}.verified i{width:16px;height:16px}.range-info-card{padding:29px 31px}.range-info-card h2{font-size:24px}.range-info-card p:not(.section-code){font-size:13px}.footer-inner{min-height:90px;font-size:9px}

/* Phase 2 accounts + leaderboard */
body.modal-open{overflow:hidden}
button{border:0}
.header-account{margin-left:auto;display:flex;align-items:center;gap:8px}.header-account[hidden],.user-chip[hidden]{display:none!important}.range-status{margin-left:4px}
.text-button,.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;font-size:11px;font-weight:900;letter-spacing:.02em;transition:background .16s ease,border-color .16s ease,transform .16s ease;color:var(--text)}
.text-button{padding:10px 12px;background:transparent;color:#8992ad}.text-button:hover{color:#eef0ff;background:rgba(255,255,255,.04)}
.primary-button{min-height:42px;padding:0 16px;border:1px solid rgba(139,108,255,.48);background:linear-gradient(135deg,#8065ef,#4f83ee);box-shadow:0 8px 24px rgba(76,80,222,.18)}.primary-button:hover{transform:translateY(-1px);filter:brightness(1.07)}.primary-button.compact{min-height:38px;padding:0 13px;font-size:10px}.primary-button.full{width:100%;min-height:48px}
.secondary-button{min-height:42px;padding:0 15px;border:1px solid var(--line-strong);background:#101426;color:#aeb5cf}.secondary-button:hover{border-color:rgba(139,108,255,.35);color:#fff}
.user-chip{margin-left:auto;height:40px;padding:0 11px;display:flex;align-items:center;gap:8px;border:1px solid rgba(138,108,255,.25);border-radius:9px;background:rgba(138,108,255,.07);color:#dfe2ff;font-size:10px;font-weight:950;letter-spacing:.06em}.user-chip:hover{border-color:rgba(138,108,255,.48);background:rgba(138,108,255,.12)}.user-chip-star{max-width:71px;overflow:hidden;white-space:nowrap;color:var(--gold);font-size:10px;letter-spacing:-1px;text-shadow:0 0 8px rgba(255,212,92,.35)}
.solved-tag{color:#8de9c2!important;border-color:rgba(118,229,184,.28)!important;background:rgba(118,229,184,.08)!important}.challenge-card.solved{border-color:rgba(118,229,184,.21)}.challenge-card.solved .card-rail{background:var(--good);box-shadow:0 0 15px rgba(118,229,184,.35)}

.leaderboard-section{padding:0 0 82px}.leaderboard-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:linear-gradient(160deg,rgba(15,19,37,.92),rgba(8,11,23,.92));box-shadow:0 16px 45px rgba(0,0,0,.17)}
.leaderboard-head,.leaderboard-row{display:grid;grid-template-columns:80px minmax(220px,1fr) 190px 100px 140px;align-items:center;gap:14px}.leaderboard-head{min-height:43px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.055);color:#525d7c;font-size:8px;font-weight:950;letter-spacing:.11em}.leaderboard-head span:nth-child(n+3){text-align:right}
.leaderboard-row{min-height:70px;padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.045);transition:background .15s ease}.leaderboard-row:last-child{border-bottom:0}.leaderboard-row:hover{background:rgba(138,108,255,.035)}.rank{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#697390;font-size:13px;font-weight:900}.rank.top-1{color:#ffd45c}.rank.top-2{color:#c7d1e6}.rank.top-3{color:#d59869}.player{display:flex;flex-direction:column;min-width:0}.player strong{overflow:hidden;text-overflow:ellipsis;color:#e6e8f6;font-size:13px}.player small{margin-top:3px;color:#626c89;font-size:9px}.leader-stars{text-align:right;white-space:nowrap;font-size:14px;letter-spacing:1px}.player-star-on{color:var(--gold);text-shadow:0 0 8px rgba(255,212,92,.35)}.player-star-off{color:#3c435b}.leader-solves,.leader-xp{text-align:right;color:#9ca5bf;font-size:11px;font-weight:850}.leader-xp{color:#afa2ff}.leaderboard-empty{min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#68728f}.leaderboard-empty strong{color:#d9dcef;font-size:14px}.leaderboard-empty span{margin-top:5px;font-size:10px}

.modal-layer{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px}.modal-layer[hidden]{display:none}.modal-scrim{position:absolute;inset:0;width:100%;height:100%;background:rgba(2,4,12,.78);backdrop-filter:blur(10px);cursor:default}.modal-card{position:relative;z-index:1;width:min(100%,520px);max-height:calc(100vh - 48px);overflow:auto;border:1px solid rgba(153,143,224,.22);border-radius:20px;background:linear-gradient(160deg,#10152a 0,#090c19 72%);box-shadow:0 32px 100px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.04)}.modal-close{position:absolute;right:14px;top:13px;z-index:2;width:35px;height:35px;border-radius:9px;background:rgba(255,255,255,.04);color:#777f9a;font-size:21px}.modal-close:hover{background:rgba(255,255,255,.075);color:#fff}
.auth-modal{padding:28px}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:26px}.auth-brand div{display:flex;flex-direction:column}.auth-brand strong{font-size:12px;letter-spacing:.16em}.auth-brand small{margin-top:3px;color:#626c89;font-size:8px;font-weight:900;letter-spacing:.12em}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:28px;padding:4px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:#080b17}.auth-tabs button{min-height:38px;border-radius:8px;background:transparent;color:#616b89;font-size:10px;font-weight:900}.auth-tabs button.active{background:#151a31;color:#e8eaff;box-shadow:inset 0 0 0 1px rgba(138,108,255,.13)}
.auth-form{display:grid;gap:15px}.auth-form[hidden]{display:none}.auth-form h2{margin:4px 0 0;font-size:28px;letter-spacing:-.045em}.form-intro{margin:8px 0 4px;color:#737d99;font-size:12px;line-height:1.55}.auth-form label,.profile-form label{display:grid;gap:7px}.auth-form label>span,.profile-form label>span{color:#6f7895;font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.auth-form input,.profile-form input,.profile-form textarea{width:100%;border:1px solid rgba(255,255,255,.075);border-radius:10px;outline:0;background:#080b17;color:#e8eaff;padding:0 13px}.auth-form input,.profile-form input{height:46px}.profile-form textarea{padding-top:12px;resize:vertical;line-height:1.55}.auth-form input:focus,.profile-form input:focus,.profile-form textarea:focus{border-color:rgba(138,108,255,.46);box-shadow:0 0 0 3px rgba(138,108,255,.065)}.auth-form label small{color:#515b78;font-size:9px}.form-error{padding:10px 11px;border:1px solid rgba(255,113,141,.25);border-radius:8px;background:rgba(255,113,141,.07);color:#f198a9;font-size:10px}.form-error[hidden]{display:none}

.account-modal{width:min(100%,820px);padding:30px}.profile-hero{display:flex;align-items:center;gap:22px;padding-right:45px}.profile-rank{width:118px;min-width:118px;height:82px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(255,212,92,.18);border-radius:13px;background:rgba(255,212,92,.035)}.profile-rank>span{font-size:16px;white-space:nowrap;letter-spacing:1px}.profile-rank small{margin-top:8px;color:#706d61;font-size:7px;font-weight:950;letter-spacing:.12em}.profile-hero h2{margin:4px 0 0;font-size:30px;letter-spacing:-.045em}.profile-hero>div:last-child>p:last-child{margin:5px 0 0;color:#697390;font-size:11px}
.profile-stats{margin-top:24px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:13px;overflow:hidden}.profile-stats div{min-height:77px;padding:15px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid rgba(255,255,255,.055)}.profile-stats div:last-child{border-right:0}.profile-stats strong{font-size:22px;letter-spacing:-.04em}.profile-stats span{margin-top:4px;color:#59637f;font-size:8px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.xp-progress{margin-top:13px;padding:14px 15px;border:1px solid var(--line);border-radius:11px;background:rgba(5,7,16,.35)}.xp-progress>div:first-child{display:flex;justify-content:space-between;color:#5d6785;font-size:8px;font-weight:900;letter-spacing:.09em}.xp-progress b{color:#8b94ae;font-size:8px}.xp-track{height:5px;margin-top:10px;overflow:hidden;border-radius:999px;background:#171b2e}.xp-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8a6cff,#4b9dff);box-shadow:0 0 10px rgba(92,116,255,.35);transition:width .3s ease}
.account-grid{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.account-panel,.profile-form{border:1px solid var(--line);border-radius:12px;background:rgba(7,10,21,.45);overflow:hidden}.account-panel-head{min-height:38px;padding:0 13px;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.05);color:#59637f;font-size:8px;font-weight:950;letter-spacing:.1em}.skill-list{padding:5px 13px}.skill-row{min-height:45px;display:grid;grid-template-columns:1fr auto 48px;align-items:center;gap:10px;border-bottom:1px solid rgba(255,255,255,.045)}.skill-row:last-child{border:0}.skill-row>span:first-child{color:#adb3ca;font-size:10px;font-weight:800;text-transform:capitalize}.skill-stars{white-space:nowrap;font-size:10px}.skill-row b{text-align:right;color:#68728e;font-size:9px}.small-empty{padding:24px 13px;color:#5c6683;font-size:10px;text-align:center}.achievement-list{max-height:230px;overflow:auto;padding:5px 13px}.achievement{min-height:52px;display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:center;border-bottom:1px solid rgba(255,255,255,.045)}.achievement:last-child{border:0}.achievement i{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;font-style:normal;font-size:9px}.achievement.earned i{border:1px solid rgba(118,229,184,.25);color:var(--good);background:rgba(118,229,184,.05)}.achievement.locked{opacity:.48}.achievement.locked i{border:1px solid #333a51;color:#555e79}.achievement div{display:flex;flex-direction:column}.achievement strong{color:#b5bbd0;font-size:9px}.achievement span{margin-top:3px;color:#59637f;font-size:8px;line-height:1.35}
.profile-form{margin-top:14px;padding:0 14px 14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-form .account-panel-head{grid-column:1/-1;margin:0 -14px 0}.profile-form label:nth-of-type(2){grid-column:1/-1}.check-row{grid-column:1/-1!important;display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px!important}.check-row input{width:15px!important;height:15px!important;accent-color:#8269f3}.check-row span{text-transform:none!important;letter-spacing:0!important;color:#78819c!important;font-size:10px!important}.profile-actions{grid-column:1/-1;display:flex;justify-content:space-between;gap:10px}.profile-form .form-error{grid-column:1/-1}
.toast{position:fixed;z-index:150;left:50%;bottom:28px;transform:translate(-50%,12px);padding:11px 15px;border:1px solid rgba(138,108,255,.25);border-radius:9px;background:#11162a;color:#dfe2f2;box-shadow:0 14px 45px rgba(0,0,0,.4);font-size:10px;font-weight:800;opacity:0;transition:opacity .18s ease,transform .18s ease}.toast.show{opacity:1;transform:translate(-50%,0)}.toast[hidden]{display:none}

@media(max-width:1100px){.topbar-inner{gap:16px}.topnav a{padding:8px 8px}.header-account .text-button{display:none}.leaderboard-head,.leaderboard-row{grid-template-columns:65px minmax(180px,1fr) 155px 80px 120px}}
@media(max-width:980px){:root{--shell:1180px}.leaderboard-head,.leaderboard-row{grid-template-columns:55px 1fr 135px 70px 110px}.account-grid{grid-template-columns:1fr}}
@media(max-width:760px){.header-account .primary-button{min-height:36px;padding:0 10px}.range-status{display:none}.leaderboard-head{display:none}.leaderboard-row{grid-template-columns:44px 1fr auto;gap:8px;min-height:76px}.leader-stars{grid-column:3;grid-row:1}.leader-solves{display:none}.leader-xp{grid-column:3;grid-row:2}.profile-stats{grid-template-columns:repeat(2,1fr)}.profile-stats div:nth-child(2){border-right:0}.profile-stats div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.055)}.account-modal{padding:22px}.profile-hero{align-items:flex-start;flex-direction:column}.profile-rank{width:100%;height:60px}.profile-form{grid-template-columns:1fr}.profile-form label{grid-column:1!important}.modal-layer{padding:12px}.modal-card{max-height:calc(100vh - 24px)}}
@media(max-width:700px){.challenge-card{min-height:290px;padding:20px}.challenge-card h3{font-size:22px}.challenge-desc{font-size:13.5px}.star-row{font-size:20px}.topnav{display:none}}
@media(max-width:470px){.header-account .primary-button{font-size:9px}.user-chip{max-width:132px}.user-chip-star{display:none}.auth-modal{padding:21px}.account-modal{padding:18px}.profile-stats strong{font-size:19px}}

/* LOCINODE LABPANEL THEME v0.4.7 */
:root{
  --bg:#070b14;
  --bg-2:#0a1020;
  --panel:#111827;
  --panel-2:#151f32;
  --line:#273349;
  --line-strong:#33415c;
  --text:#eef4ff;
  --muted:#9baac2;
  --faint:#71819d;
  --violet:#61d7ff;
  --blue:#5ba8ff;
  --cyan:#61d7ff;
  --pink:#83e8c5;
  --gold:#ffd45c;
  --good:#3ee37f;
  --bad:#ff6572;
  --warn:#ffc451;
}

body{background:var(--bg);color:var(--text)}
.backdrop{background:radial-gradient(circle at 50% -18%,rgba(44,102,176,.23) 0,rgba(15,29,51,.18) 30%,transparent 52%),linear-gradient(180deg,#0d1629 0,#080c16 48%,#060911 100%)}
.scan-grid{background-image:linear-gradient(rgba(97,215,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(97,215,255,.045) 1px,transparent 1px)}
.noise{opacity:.018}
.glow-a{background:radial-gradient(circle,rgba(97,215,255,.16),transparent 69%)}
.glow-b{background:radial-gradient(circle,rgba(109,255,191,.10),transparent 68%)}

.topbar{border-color:rgba(97,215,255,.10);background:rgba(7,11,20,.88)}
.brand-symbol{border-color:rgba(97,215,255,.48);background:linear-gradient(145deg,rgba(97,215,255,.15),rgba(109,255,191,.04))}
.brand-symbol:before,.brand-symbol:after,.brand-symbol i,.brand-symbol b{background:#61d7ff;box-shadow:0 0 12px rgba(97,215,255,.55)}
.topnav a{color:#9baac2}
.topnav a:hover,.topnav a.active{background:rgba(97,215,255,.07);color:#eef4ff}
.range-status{color:#9baac2;border-color:#273349;background:rgba(17,24,39,.72)}

.range-kicker{color:#9baac2}
.range-kicker span{color:#61d7ff}
.range-kicker i{color:#42516c}
.range-kicker strong{color:#8fa0ba}
.range-copy h1 span{background:linear-gradient(90deg,#80e5ff 3%,#61d7ff 45%,#6dffbf 100%);-webkit-background-clip:text;background-clip:text;text-shadow:0 0 42px rgba(97,215,255,.12)}
.range-copy p{color:#b7c4d8}

.range-panel{border-color:#33415c;background:linear-gradient(160deg,rgba(21,31,50,.98),rgba(13,20,36,.97));box-shadow:0 16px 50px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.045)}
.panel-head{border-color:#273349;background:rgba(255,255,255,.018);color:#8fa0ba}
.panel-head b{color:#b8c6da}
.panel-stats div{border-color:#273349}
.panel-stats span{color:#899bb5}
.latest-line{border-color:#273349;background:rgba(7,11,20,.36)}
.latest-line span{color:#7f90aa}
.latest-line strong{color:#d8e2f1}

.section-code{color:#61d7ff}
.showing{color:#9baac2;border-color:#273349;background:#0d1424}
.showing span{color:#eef4ff}
.toolbar{border-color:#273349;background:rgba(13,20,36,.92)}
.search-field,.filters label{border-color:#273349;background:#0a1020;color:#9baac2}
.search-field:focus-within{border-color:rgba(97,215,255,.65);box-shadow:0 0 0 3px rgba(97,215,255,.10)}
.search-field input{color:#eef4ff}
.search-field input::placeholder{color:#71819d}
.search-field kbd{border-color:#33415c;background:#111827;color:#9baac2}
.filters label>span{color:#8191aa}
.filters select{background:#0a1020;color:#d9e4f2}

.challenge-card{border-color:#273349;background:linear-gradient(150deg,rgba(17,24,39,.99),rgba(13,20,36,.98));box-shadow:0 12px 34px rgba(0,0,0,.22)}
.challenge-card:hover{border-color:rgba(97,215,255,.50);background:linear-gradient(150deg,rgba(21,31,50,.99),rgba(15,24,42,.99));box-shadow:0 18px 44px rgba(0,0,0,.30),0 0 0 1px rgba(97,215,255,.05)}
.card-rail{background:var(--card-accent,#61d7ff);box-shadow:0 0 14px var(--card-glow,rgba(97,215,255,.28))}
.challenge-card.web{--card-accent:#61d7ff;--card-glow:rgba(97,215,255,.38)}
.challenge-card.api{--card-accent:#5ba8ff;--card-glow:rgba(91,168,255,.38)}
.challenge-card.linux{--card-accent:#6dffbf;--card-glow:rgba(109,255,191,.32)}
.challenge-card.forensics{--card-accent:#8fd7ff;--card-glow:rgba(143,215,255,.34)}
.challenge-card.crypto{--card-accent:#ffc451;--card-glow:rgba(255,196,81,.32)}
.challenge-card.network,.challenge-card.networking{--card-accent:#56cfea;--card-glow:rgba(86,207,234,.34)}
.challenge-card.osint{--card-accent:#83e8c5;--card-glow:rgba(131,232,197,.30)}
.challenge-card.reverse,.challenge-card.pwn{--card-accent:#ff6572;--card-glow:rgba(255,101,114,.30)}
.tag{border-color:#273349;background:rgba(255,255,255,.03);color:#aebbd0}
.tag.category{color:#9eeaff;border-color:rgba(97,215,255,.32);background:rgba(97,215,255,.08)}
.tag.new{color:#8fffcf;border-color:rgba(109,255,191,.28);background:rgba(109,255,191,.07)}
.target-number{color:#71819d}
.challenge-card h3{color:#f5f8ff}
.challenge-desc{color:#aebbd0}
.difficulty-label{color:#eef4ff}
.star-off,.player-star-off{color:#485773}
.verified{color:#899bb5;border-color:#273349}
.xp-block span{color:#8293ad}

.state-card{border-color:#273349;background:#111827;color:#9baac2}
.state-card strong{color:#eef4ff}
.state-card small{color:#899bb5}

.range-info-card,.leaderboard-card{border-color:#273349;background:linear-gradient(155deg,rgba(17,24,39,.96),rgba(13,20,36,.96));box-shadow:0 16px 50px rgba(0,0,0,.18)}
.range-info-card p:not(.section-code){color:#aebbd0}
.leaderboard-head{border-color:#273349;color:#8293ad;background:#0d1424}
.leaderboard-row{border-color:#202b3e}
.leaderboard-row:hover{background:rgba(97,215,255,.045)}
.rank{color:#8191aa}
.player strong{color:#eef4ff}
.player small{color:#8191aa}
.leader-solves,.leader-xp{color:#9baac2}
.leader-xp{color:#79ddff}
.leaderboard-empty{color:#8191aa}
.leaderboard-empty strong{color:#eef4ff}

.modal-scrim{background:rgba(3,7,14,.72)}
.modal-card{border-color:#33415c;background:linear-gradient(155deg,#151f32 0,#0d1424 78%);box-shadow:0 28px 80px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.05)}
.modal-close{background:#111827;color:#9baac2}
.modal-close:hover{background:#1a2538;color:#eef4ff}
.auth-brand small,.form-intro,.profile-hero>div:last-child>p:last-child{color:#899bb5}
.auth-tabs{border-color:#273349;background:#0a1020}
.auth-tabs button{color:#899bb5}
.auth-tabs button.active{background:#151f32;color:#eef4ff;box-shadow:inset 0 0 0 1px rgba(97,215,255,.24)}
.auth-form label>span,.profile-form label>span{color:#899bb5}
.auth-form input,.profile-form input,.profile-form textarea{border-color:#273349;background:#0a1020;color:#eef4ff}
.auth-form input:focus,.profile-form input:focus,.profile-form textarea:focus{border-color:rgba(97,215,255,.62);box-shadow:0 0 0 3px rgba(97,215,255,.09)}
.auth-form label small{color:#71819d}

.profile-rank{border-color:rgba(255,212,92,.30);background:rgba(255,212,92,.055)}
.profile-rank small{color:#b2a77e}
.profile-stats{border-color:#273349}
.profile-stats div{border-color:#273349}
.profile-stats span{color:#8191aa}
.xp-progress{border-color:#273349;background:#0d1424}
.xp-progress>div:first-child{color:#899bb5}
.xp-progress b{color:#aebbd0}
.xp-track{background:#1a2538}
.xp-track i{background:linear-gradient(90deg,#61d7ff,#6dffbf);box-shadow:0 0 12px rgba(97,215,255,.30)}
.account-panel,.profile-form{border-color:#273349;background:rgba(13,20,36,.88)}
.account-panel-head{border-color:#273349;color:#899bb5}
.skill-row{border-color:#202b3e}
.skill-row>span:first-child{color:#d9e4f2}
.skill-row b{color:#899bb5}
.small-empty{color:#8191aa}
.achievement{border-color:#202b3e}
.achievement strong{color:#d9e4f2}
.achievement span{color:#8191aa}
.check-row span{color:#aebbd0!important}
.toast{border-color:rgba(97,215,255,.36);background:#151f32;color:#eef4ff}

.text-button{color:#b8c6da}
.primary-button{background:linear-gradient(135deg,#61d7ff,#5ba8ff);color:#06111d;box-shadow:0 8px 24px rgba(97,215,255,.18);font-weight:900}
.primary-button:hover{filter:brightness(1.08)}
.user-chip{border-color:#273349;background:#111827;color:#eef4ff}

footer,.footer-inner{color:#71819d;border-color:#202b3e}

@media (prefers-contrast: more){
  :root{--text:#fff;--muted:#c9d5e6;--faint:#9babc2;--line:#33415c;--line-strong:#455674}
  .challenge-card,.range-panel,.leaderboard-card,.range-info-card{border-width:2px}
}
/* END LOCINODE LABPANEL THEME v0.4.7 */

/* LOCINODE GAMEPLAY v0.7.0 */
.challenge-card{display:flex;flex-direction:column}
.challenge-desc{flex:1}
.mission-open{margin-top:18px;width:100%;height:42px;border:1px solid rgba(97,215,255,.28);border-radius:10px;background:rgba(97,215,255,.065);color:#bfefff;display:flex;align-items:center;justify-content:space-between;padding:0 13px;font:800 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;cursor:pointer;transition:.18s ease}
.mission-open:hover{background:rgba(97,215,255,.12);border-color:rgba(97,215,255,.58);color:#fff;transform:translateY(-1px)}
.mission-open b{font-size:17px;color:#61d7ff}
.challenge-modal{width:min(920px,calc(100vw - 28px));max-height:min(90vh,940px);overflow:auto;padding:30px}
.mission-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-right:42px}
.mission-head h2{font-size:32px;line-height:1.08;margin:7px 0 0;color:#f5f8ff}
.mission-head .difficulty{align-items:flex-end}
.mission-meta{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0 22px}
.mission-meta span{border:1px solid #273349;background:#0a1020;border-radius:999px;padding:7px 10px;color:#9baac2;font:800 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.09em}
.mission-meta span:first-child{color:#8ee8ff;border-color:rgba(97,215,255,.3)}
.mission-meta .captured{color:#84ffc5;border-color:rgba(109,255,191,.32);background:rgba(109,255,191,.06)}
.mission-section{border:1px solid #273349;background:rgba(10,16,32,.66);border-radius:13px;padding:19px 20px;margin-top:12px}
.mission-section.objective{border-color:rgba(97,215,255,.25);background:linear-gradient(110deg,rgba(97,215,255,.065),rgba(10,16,32,.7))}
.mission-label{display:block;color:#61d7ff;font:900 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em;margin-bottom:10px}
.mission-section p{margin:0;color:#c4d0e2;font-size:14px;line-height:1.72}
.mission-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:12px}
.mission-grid .mission-section{height:100%}
#missionSteps{margin:0;padding-left:22px;color:#c4d0e2;display:grid;gap:10px}
#missionSteps li{padding-left:5px;font-size:13px;line-height:1.6}
#missionSteps li::marker{color:#61d7ff;font-weight:900}
.mission-skills{display:flex;gap:7px;flex-wrap:wrap}
.mission-skills span{border:1px solid #33415c;background:#111827;border-radius:8px;padding:7px 9px;color:#cbd7e8;font:800 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;letter-spacing:.06em}
.scope-label{margin-top:21px}.scope-copy{color:#91a2ba!important;font-size:12px!important}
.mission-actions{margin-top:16px;border:1px solid #33415c;border-radius:13px;background:#111827;padding:16px 17px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.mission-actions>div{display:flex;flex-direction:column;gap:4px}.mission-actions strong{font-size:14px;color:#eef4ff}.mission-actions span{font-size:11px;color:#899bb5}
.active-lab{margin-top:16px;border:1px solid rgba(109,255,191,.30);border-radius:13px;background:linear-gradient(145deg,rgba(109,255,191,.055),rgba(10,16,32,.82));padding:17px}
.active-lab-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px}.active-lab-head>div{display:flex;align-items:center;gap:9px}.active-lab-head strong{font:900 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em;color:#b9ffdc}.active-lab-head>span{font:800 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;color:#7f90aa}
.active-lab-url{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #273349;border-radius:10px;background:#070b14;padding:10px 10px 10px 13px}.active-lab-url>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aebbd0;font:700 11px/1 ui-monospace,SFMono-Regular,Consolas,monospace}
.flag-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin-top:12px}.flag-form label{display:flex;flex-direction:column;gap:7px}.flag-form label>span{color:#8191aa;font:900 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}.flag-form input{height:44px;border:1px solid #273349;border-radius:9px;background:#070b14;color:#eef4ff;padding:0 12px;font:700 12px/1 ui-monospace,SFMono-Regular,Consolas,monospace;outline:none}.flag-form input:focus{border-color:rgba(97,215,255,.6);box-shadow:0 0 0 3px rgba(97,215,255,.08)}
.flag-result{margin-top:10px;border-radius:9px;padding:10px 12px;font:900 10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.05em}.flag-result.wrong{border:1px solid rgba(255,101,114,.35);background:rgba(255,101,114,.07);color:#ff9da6}.flag-result.correct{border:1px solid rgba(109,255,191,.35);background:rgba(109,255,191,.07);color:#9cffcd}
.stop-lab{margin-top:12px}
.primary-button:disabled,.secondary-button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:760px){.challenge-modal{padding:22px 17px}.mission-head{display:block;padding-right:38px}.mission-head .difficulty{align-items:flex-start;margin-top:14px}.mission-head h2{font-size:27px}.mission-grid{grid-template-columns:1fr}.mission-actions{align-items:stretch;flex-direction:column}.mission-actions .primary-button{width:100%}.flag-form{grid-template-columns:1fr}.active-lab-url{align-items:stretch;flex-direction:column}.active-lab-url .primary-button{text-align:center;justify-content:center}}
/* END LOCINODE GAMEPLAY v0.7.0 */

/* LOCINODE PRODUCT PASS v0.7.0 */
:root{
  --bg:#070b14;--bg-2:#0a1020;--panel:#111827;--panel-2:#151f32;--line:#273349;--line-strong:#33415c;
  --text:#eef4ff;--muted:#9baac2;--faint:#71819d;--cyan:#61d7ff;--mint:#6dffbf;--blue:#5ba8ff;--gold:#ffd45c;
  --good:#6dffbf;--bad:#ff6572;--accent:#61d7ff;--accent2:#6dffbf;--shell:1260px;
}
html[data-theme="arctic"]{--bg:#0a1320;--bg-2:#0d1b2b;--panel:#142538;--panel-2:#193049;--line:#31506b;--line-strong:#416b8e;--text:#f4fbff;--muted:#b7ccdc;--faint:#829eb4;--accent:#7be7ff;--accent2:#9fefff;--cyan:#7be7ff;--mint:#b9ffe7;}
html[data-theme="ember"]{--bg:#120b0b;--bg-2:#1c1010;--panel:#261717;--panel-2:#33201d;--line:#59342d;--line-strong:#75453a;--text:#fff5ec;--muted:#d7b9a9;--faint:#a67e6c;--accent:#ff9b68;--accent2:#ffd06d;--cyan:#ff9b68;--mint:#ffd06d;}
html[data-theme="midnight"]{--bg:#060810;--bg-2:#0a0d18;--panel:#0d1220;--panel-2:#111827;--line:#202b3e;--line-strong:#2c3b55;--text:#eef4ff;--muted:#91a2ba;--faint:#667891;--accent:#8da2ff;--accent2:#61d7ff;--cyan:#8da2ff;--mint:#61d7ff;}
body{background:var(--bg);color:var(--text)}
.backdrop{background:radial-gradient(circle at 50% -20%,color-mix(in srgb,var(--accent) 13%,var(--bg)) 0,var(--bg-2) 34%,var(--bg) 68%)}
.glow-a{background:radial-gradient(circle,color-mix(in srgb,var(--accent) 14%,transparent),transparent 69%)}.glow-b{background:radial-gradient(circle,color-mix(in srgb,var(--accent2) 9%,transparent),transparent 68%)}
.brand-button,.nav-link{border:0;background:transparent;color:inherit}.brand-button{padding:0;cursor:pointer}.brand-symbol{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 15%,transparent),transparent)}.brand-symbol:before,.brand-symbol:after,.brand-symbol i,.brand-symbol b{background:var(--accent);box-shadow:0 0 12px color-mix(in srgb,var(--accent) 55%,transparent)}
.topnav{display:flex;gap:6px}.nav-link{padding:9px 12px;border-radius:9px;color:var(--muted);font-size:11px;font-weight:800;cursor:pointer}.nav-link:hover,.nav-link.active{background:color-mix(in srgb,var(--panel-2) 82%,transparent);color:var(--text)}
.header-account{margin-left:auto;display:flex;align-items:center;gap:8px}.range-status{margin-left:0}.user-chip{margin-left:auto;display:flex;align-items:center;gap:9px;padding:5px 10px 5px 5px;border-radius:12px}.user-chip img{width:30px;height:30px;border-radius:9px;object-fit:cover}.user-chip>span{display:grid;text-align:left}.user-chip small{color:var(--gold);font-size:9px}.user-chip b{font-size:10px;color:var(--text)}
.range-copy h1 span{background:linear-gradient(90deg,var(--accent),var(--blue),var(--accent2));-webkit-background-clip:text;background-clip:text}.range-kicker span,.section-code{color:var(--accent)}
.range-panel,.challenge-card,.leaderboard-card,.range-info-card{background:linear-gradient(155deg,color-mix(in srgb,var(--panel) 96%,transparent),color-mix(in srgb,var(--bg-2) 94%,transparent));border-color:var(--line)}
.search-field,.filters label{background:var(--bg-2);border-color:var(--line)}.search-field input,.filters select{color:var(--text);background:transparent}.search-field:focus-within{border-color:color-mix(in srgb,var(--accent) 60%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 9%,transparent)}
.primary-button{border:0;border-radius:9px;min-height:42px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),var(--blue));color:#06111d;font-weight:900}.secondary-button,.text-button{border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text);min-height:40px;padding:0 14px}.text-button{border:0;background:transparent;color:var(--muted)}.full{width:100%}
.mission-open{border-color:color-mix(in srgb,var(--accent) 32%,transparent);background:color-mix(in srgb,var(--accent) 7%,transparent);color:color-mix(in srgb,var(--accent) 75%,white)}.mission-open b{color:var(--accent)}

.view-layer{position:fixed;inset:78px 0 0;z-index:20;overflow:auto;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-2) 88%,var(--bg)),var(--bg));padding-bottom:70px}.view-layer[hidden]{display:none}.view-top{min-height:64px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.back-button{border:0;background:transparent;color:var(--muted);font-weight:850;font-size:12px;padding:12px 0;cursor:pointer}.back-button:hover{color:var(--accent)}.view-context{display:flex;gap:12px;align-items:center;color:var(--faint);font:850 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.11em}.view-context b{color:var(--accent)}

.mission-page{padding-top:42px}.mission-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding-bottom:24px}.mission-page-head h1,.profile-banner h1,.community-page h1{margin:8px 0 8px;font-size:clamp(38px,5vw,62px);letter-spacing:-.055em;line-height:.95}.mission-page-head>div:first-child>p:last-child{max-width:780px;margin:0;color:var(--muted);font-size:15px;line-height:1.6}.mission-rank{min-width:170px;display:grid;justify-items:end;gap:12px}.mission-rank>strong{color:var(--mint);font-size:16px}.mission-status-strip{display:flex;gap:9px;flex-wrap:wrap;padding:13px 0 22px;border-top:1px solid var(--line)}.mission-status-strip span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--muted);font:850 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}.mission-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:18px}.mission-main,.mission-side{display:grid;gap:14px;align-content:start}.mission-block,.side-card{padding:24px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 92%,transparent)}.mission-block.objective{border-color:color-mix(in srgb,var(--accent) 30%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 7%,var(--panel)),var(--panel))}.mission-block p,.side-card p{margin:0;color:#cbd7e8;font-size:14px;line-height:1.72}.mission-label{display:block;margin-bottom:11px;color:var(--accent);font:900 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em}.block-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.block-title small{color:var(--faint);font-size:10px}.investigation-steps{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:10px}.investigation-steps li{display:grid;grid-template-columns:38px 1fr;gap:13px;align-items:start;padding:14px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:11px;background:var(--bg-2);color:#d3ddeb;font-size:13px;line-height:1.58}.investigation-steps li b{color:var(--accent);font:900 10px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.mission-skills{display:flex;flex-wrap:wrap;gap:7px}.mission-skills span{padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--bg-2);color:#d7e3f3;font:850 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase}.launch-card strong{display:block;margin-bottom:7px;font-size:16px}.launch-card p{margin-bottom:17px}.target-live{display:flex;align-items:center;gap:9px;margin-bottom:8px}.target-live strong{color:var(--mint);font:900 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.active-target code{display:block;margin:10px 0 12px;padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--muted);overflow:hidden;text-overflow:ellipsis}.flag-form{display:grid;gap:9px;margin-top:14px}.flag-form label{display:grid;gap:7px}.flag-form label span{color:var(--faint);font:900 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.flag-form input{height:44px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--text);padding:0 12px;outline:0}.flag-form input:focus{border-color:var(--accent)}.flag-result{margin-top:10px;padding:11px;border-radius:9px}.flag-result.correct{background:color-mix(in srgb,var(--mint) 8%,transparent);color:var(--mint);border:1px solid color-mix(in srgb,var(--mint) 34%,transparent)}.flag-result.wrong{background:color-mix(in srgb,var(--bad) 8%,transparent);color:#ff9ba5;border:1px solid color-mix(in srgb,var(--bad) 34%,transparent)}.auto-stop-note{margin:12px 0 0!important;color:var(--faint)!important;font-size:10px!important}

.profile-page{padding-top:34px}.profile-banner{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;padding:28px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,var(--panel),var(--bg-2))}.profile-avatar-wrap{position:relative;width:138px;height:138px}.profile-avatar,.avatar-fallback{position:absolute;inset:0;width:100%;height:100%;border-radius:22px}.profile-avatar{object-fit:cover;border:1px solid var(--line)}.avatar-fallback{display:grid;place-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 20%,var(--panel)),var(--panel));border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));color:var(--accent);font-size:48px;font-weight:950}.profile-identity>p:first-child{margin:0;color:var(--accent);font:800 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.profile-identity>p:nth-of-type(2){max-width:640px;margin:0;color:var(--muted);line-height:1.55}.profile-rank-line{display:flex;align-items:center;gap:9px;margin-top:12px}.profile-rank-line>span{font-size:17px}.profile-rank-line small{color:var(--faint);font-size:8px;font-weight:900;letter-spacing:.12em}.profile-summary{display:grid;grid-template-columns:repeat(2,110px);border:1px solid var(--line);border-radius:14px;overflow:hidden}.profile-summary div{padding:17px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel-2) 70%,transparent)}.profile-summary div:nth-child(even){border-right:0}.profile-summary div:nth-child(n+3){border-bottom:0}.profile-summary strong{display:block;font-size:22px}.profile-summary span{color:var(--faint);font-size:8px;font-weight:900}.trophy-showcase{margin-top:24px}.section-top.compact{margin-bottom:12px}.section-top.compact h2{font-size:26px}.trophy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.showcase-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.trophy{min-height:118px;width:100%;display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--panel);text-align:left;color:var(--text)}.trophy:not(:disabled){cursor:pointer}.trophy:not(:disabled):hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--line));transform:translateY(-1px)}.trophy.locked{opacity:.43;filter:saturate(.55)}.trophy.showcased{box-shadow:inset 0 0 0 1px var(--gold);border-color:color-mix(in srgb,var(--gold) 50%,var(--line))}.trophy-cup{width:42px;height:42px;min-width:42px;display:grid;place-items:center;border-radius:12px;background:var(--bg-2);border:1px solid var(--line);font-size:21px}.color-gold,.color-yellow{color:#ffd45c}.color-red{color:#ff7c88}.color-cyan,.color-blue{color:#61d7ff}.color-mint,.color-green{color:#6dffbf}.color-violet{color:#b39cff}.color-orange,.color-bronze{color:#ffad76}.color-platinum{color:#e8f4ff}.trophy-copy{display:grid;min-width:0}.trophy-copy strong{font-size:11px}.trophy-copy small{margin-top:5px;color:var(--muted);font-size:9px;line-height:1.42}.trophy-copy em{margin-top:8px;color:var(--faint);font-style:normal;font:900 8px/1 ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;letter-spacing:.08em}.rarity-legendary .trophy-cup,.rarity-mythic .trophy-cup{box-shadow:0 0 18px color-mix(in srgb,var(--gold) 12%,transparent)}.empty-showcase{grid-column:1/-1;padding:24px;border:1px dashed var(--line);border-radius:12px;text-align:center;color:var(--faint)}.profile-columns{display:grid;grid-template-columns:.7fr 1.3fr;gap:14px;margin-top:16px}.profile-card{border:1px solid var(--line);border-radius:16px;background:var(--panel);overflow:hidden}.card-head{min-height:47px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);color:var(--muted);font:900 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}.card-head small{color:var(--faint)}.skill-list{padding:8px 15px}.skill-row{min-height:48px;display:grid;grid-template-columns:1fr auto 60px;align-items:center;border-bottom:1px solid var(--line);gap:10px}.skill-row:last-child{border:0}.skill-row>span:first-child{text-transform:capitalize}.skill-row b{text-align:right;color:var(--muted)}.settings-card{margin-top:16px}.profile-settings-grid{padding:18px;display:grid;grid-template-columns:240px 1fr;gap:20px}.avatar-settings{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.avatar-preview{width:150px;height:150px;border-radius:18px;object-fit:cover;border:1px solid var(--line)}.upload-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--accent) 7%,var(--panel));color:var(--text);font-size:11px;font-weight:850;cursor:pointer}.avatar-settings small{color:var(--faint);font-size:9px;line-height:1.45}.profile-form{margin:0;padding:0;border:0;background:transparent;display:grid;grid-template-columns:1fr;gap:12px}.profile-form label{display:grid;gap:7px}.profile-form input,.profile-form textarea{border:1px solid var(--line);background:var(--bg-2);color:var(--text);border-radius:9px;padding:12px}.check-row{display:flex!important;align-items:center;gap:9px}.check-row input{width:auto}.theme-picker>span{display:block;margin-bottom:8px;color:var(--muted);font-size:9px;font-weight:900}.theme-options{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.theme-options button{height:39px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);color:var(--muted);font-size:10px;font-weight:800}.theme-options button.active{border-color:var(--accent);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}.profile-actions{display:flex;justify-content:space-between;gap:10px}

.community-page{padding-top:42px}.community-page>header{max-width:760px;margin-bottom:22px}.community-page>header p:last-child{color:var(--muted);font-size:15px;line-height:1.6}.chat-shell{border:1px solid var(--line);border-radius:18px;background:var(--panel);overflow:hidden}.chat-rules{display:flex;gap:12px;padding:13px 16px;border-bottom:1px solid var(--line);background:var(--bg-2);font-size:10px}.chat-rules strong{color:var(--accent)}.chat-rules span{color:var(--muted)}.chat-messages{height:min(58vh,620px);overflow:auto;padding:8px 18px}.chat-message{display:grid;grid-template-columns:42px 1fr;gap:11px;padding:13px 0;border-bottom:1px solid var(--line)}.chat-avatar{position:relative;width:38px;height:38px;border:0;background:transparent;padding:0}.chat-avatar img,.chat-avatar b{position:absolute;inset:0;width:38px;height:38px;border-radius:10px}.chat-avatar img{object-fit:cover}.chat-avatar b{display:grid;place-items:center;background:var(--panel-2);color:var(--accent)}.chat-message header{display:flex;align-items:center;justify-content:space-between;gap:12px}.chat-message header button{border:0;background:transparent;padding:0;color:inherit;text-align:left}.chat-message header strong{font-size:11px}.chat-message header span{margin-left:6px;color:var(--faint);font-size:9px}.chat-message time{color:var(--faint);font-size:8px}.chat-message p{margin:6px 0;color:#d7e3f3;font-size:12px;line-height:1.55}.chat-message footer button{border:0;background:transparent;color:var(--faint);font-size:8px;padding:0;margin-right:10px}.chat-message footer button:hover{color:var(--accent)}.chat-compose{display:grid;grid-template-columns:1fr auto;gap:10px;padding:13px;border-top:1px solid var(--line);background:var(--bg-2)}.chat-compose textarea{resize:none;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);padding:11px;outline:0}.chat-compose textarea:focus{border-color:var(--accent)}#chatError{margin:0 13px 13px}

.mini-avatar{position:relative;width:35px;height:35px;display:block}.mini-avatar img,.mini-avatar b{position:absolute;inset:0;width:35px;height:35px;border-radius:9px}.mini-avatar img{object-fit:cover}.mini-avatar b{display:grid;place-items:center;background:var(--panel-2);color:var(--accent)}.leaderboard-row{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);cursor:pointer}.leaderboard-row:hover{background:color-mix(in srgb,var(--accent) 4%,transparent)}.leaderboard-head,.leaderboard-row{grid-template-columns:70px minmax(220px,1.6fr) 150px 90px 100px 120px}.player{display:flex!important;align-items:center;gap:10px}.leader-trophies{color:var(--muted);font-size:10px}.player-star-on{color:var(--gold);text-shadow:0 0 8px rgba(255,212,92,.28)}.player-star-off{color:#445067}

.form-error{padding:10px 12px;border:1px solid color-mix(in srgb,var(--bad) 34%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bad) 7%,transparent);color:#ffadb5;font-size:10px}.form-error[hidden]{display:none}.toast{position:fixed;right:22px;bottom:22px;z-index:120;padding:12px 14px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:11px;background:var(--panel-2);box-shadow:0 18px 50px rgba(0,0,0,.35);color:var(--text);font-size:11px}.toast[hidden]{display:none}

@media(max-width:1000px){.mission-layout{grid-template-columns:1fr}.mission-side{grid-template-columns:repeat(2,1fr)}.mission-side .active-target,.mission-side .launch-card{grid-column:1/-1}.profile-banner{grid-template-columns:auto 1fr}.profile-summary{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.profile-summary div{border-bottom:0}.profile-summary div:nth-child(2){border-right:1px solid var(--line)}.profile-columns{grid-template-columns:1fr}.showcase-grid{grid-template-columns:repeat(3,1fr)}.trophy-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.view-layer{inset:78px 0 0}.view-top{min-height:54px}.range-status{display:none}.topnav{gap:2px}.nav-link{padding:8px 7px;font-size:9px}.mission-page,.profile-page,.community-page{padding-top:24px}.mission-page-head{display:block}.mission-rank{justify-items:start;margin-top:16px}.mission-layout,.mission-side{grid-template-columns:1fr}.profile-banner{grid-template-columns:1fr;text-align:center}.profile-avatar-wrap{margin:auto}.profile-rank-line{justify-content:center}.profile-summary{grid-template-columns:repeat(2,1fr)}.profile-summary div:nth-child(2){border-right:0}.profile-summary div:nth-child(-n+2){border-bottom:1px solid var(--line)}.showcase-grid,.trophy-grid{grid-template-columns:1fr}.profile-settings-grid{grid-template-columns:1fr}.avatar-settings{align-items:center}.theme-options{grid-template-columns:repeat(2,1fr)}.leaderboard-head{display:none}.leaderboard-row{grid-template-columns:48px 1fr auto;min-height:80px;padding:10px}.leader-stars{grid-column:3;grid-row:1}.leader-solves,.leader-trophies{display:none}.leader-xp{grid-column:3;grid-row:2}.chat-rules{display:grid}.chat-compose{grid-template-columns:1fr}.topbar-inner{gap:12px}.brand>span:last-child{display:none}}
/* END LOCINODE PRODUCT PASS v0.7.0 */

/* LOCINODE PRODUCT PASS v0.7.1 — themes, DMs, ad-ready placements */
html[data-theme="labpanel-light"]{
  color-scheme:light;
  --bg:#dce8f5;--bg-2:#edf4fb;--panel:#f8fbff;--panel-2:#e7f0f9;
  --line:#b9cada;--line-strong:#91abc2;--text:#13243a;--muted:#4d647d;--faint:#70869c;
  --accent:#087da8;--accent2:#12855e;--cyan:#087da8;--mint:#12855e;--blue:#2878c8;--gold:#a66a00;
  --good:#087a50;--bad:#c53d4c;
}
html[data-theme="labpanel-light"] .backdrop{background:radial-gradient(circle at 50% -18%,rgba(52,153,196,.19),transparent 42%),linear-gradient(180deg,#edf5fc 0,#dbe8f4 55%,#d4e2ef 100%)}
html[data-theme="labpanel-light"] .noise{opacity:.012}
html[data-theme="labpanel-light"] .scan-grid{background-image:linear-gradient(rgba(25,91,125,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(25,91,125,.045) 1px,transparent 1px)}
html[data-theme="labpanel-light"] .topbar{background:rgba(239,247,253,.90);border-color:#bfd0df}
html[data-theme="labpanel-light"] .range-panel,
html[data-theme="labpanel-light"] .challenge-card,
html[data-theme="labpanel-light"] .leaderboard-card,
html[data-theme="labpanel-light"] .range-info-card,
html[data-theme="labpanel-light"] .profile-card,
html[data-theme="labpanel-light"] .profile-banner,
html[data-theme="labpanel-light"] .chat-shell,
html[data-theme="labpanel-light"] .dm-shell,
html[data-theme="labpanel-light"] .side-card,
html[data-theme="labpanel-light"] .mission-block{background:rgba(248,251,255,.95);box-shadow:0 12px 30px rgba(35,70,98,.08)}
html[data-theme="labpanel-light"] .challenge-desc,
html[data-theme="labpanel-light"] .range-copy p,
html[data-theme="labpanel-light"] .community-page>header p:last-child,
html[data-theme="labpanel-light"] .chat-message p,
html[data-theme="labpanel-light"] .mission-block p{color:#3f5870}
html[data-theme="labpanel-light"] .search-field,
html[data-theme="labpanel-light"] .filters label,
html[data-theme="labpanel-light"] .profile-form input,
html[data-theme="labpanel-light"] .profile-form textarea,
html[data-theme="labpanel-light"] .chat-compose,
html[data-theme="labpanel-light"] .chat-compose textarea,
html[data-theme="labpanel-light"] .dm-compose,
html[data-theme="labpanel-light"] .dm-compose textarea{background:#f5f9fd;color:#13243a}
html[data-theme="labpanel-light"] .primary-button{color:#f7fcff}
html[data-theme="labpanel-light"] .player-star-off,
html[data-theme="labpanel-light"] .star-off{color:#a6b8c8}
html[data-theme="labpanel-light"] .verified,
html[data-theme="labpanel-light"] .target-number{color:#607990}
html[data-theme="labpanel-light"] .mission-open{color:#0a5f82;background:rgba(8,125,168,.08)}

.quick-theme{display:flex;align-items:center;gap:7px;min-height:36px;padding:0 8px 0 10px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel) 90%,transparent)}
.quick-theme>span{color:var(--faint);font:900 7px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.09em}
.quick-theme select{border:0;outline:0;background:transparent;color:var(--text);font-size:9px;font-weight:850;max-width:112px}
.quick-theme option{background:var(--panel);color:var(--text)}
.nav-badge{display:inline-grid;place-items:center;min-width:17px;height:17px;margin-left:4px;padding:0 4px;border-radius:999px;background:var(--bad);color:white;font-size:8px;font-weight:950}
.nav-badge[hidden]{display:none}
.profile-message-button{margin-top:14px;width:max-content}

.ad-slot{margin-top:20px;margin-bottom:20px;position:relative;min-height:84px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:14px;background:color-mix(in srgb,var(--panel) 72%,transparent);overflow:hidden}
.ad-slot[hidden]{display:none!important}.ad-label{position:absolute;top:7px;right:10px;color:var(--faint);font:800 7px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;text-transform:uppercase}.ad-mount{min-height:84px;display:grid;place-items:center;padding:15px}.ad-slot-footer{margin-top:24px;margin-bottom:18px;min-height:68px}.ad-slot-footer .ad-mount{min-height:68px}

.messages-page{padding-top:42px;padding-bottom:52px}.messages-page>header{max-width:780px;margin-bottom:22px}.messages-page>header>p:last-child{color:var(--muted);font-size:14px;line-height:1.6}
.dm-shell{min-height:620px;display:grid;grid-template-columns:330px 1fr;border:1px solid var(--line);border-radius:18px;background:var(--panel);overflow:hidden}
.dm-sidebar{border-right:1px solid var(--line);background:color-mix(in srgb,var(--bg-2) 70%,var(--panel))}.dm-sidebar-head{height:48px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.dm-sidebar-head strong{font:900 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}.dm-sidebar-head span{color:var(--faint);font-size:9px}.dm-conversation-list{max-height:570px;overflow:auto}
.dm-conversation{width:100%;display:grid;grid-template-columns:42px 1fr auto;gap:10px;padding:13px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;cursor:pointer}.dm-conversation:hover,.dm-conversation.active{background:color-mix(in srgb,var(--accent) 6%,transparent)}.dm-conversation .mini-avatar{width:40px;height:40px}.dm-conversation .mini-avatar img,.dm-conversation .mini-avatar b{width:40px;height:40px;border-radius:11px}.dm-conversation-copy{min-width:0}.dm-conversation-copy strong{display:block;font-size:11px}.dm-conversation-copy p{margin:5px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:9px}.dm-conversation-meta{display:grid;justify-items:end;gap:7px;color:var(--faint);font-size:8px}.dm-unread{display:grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:var(--bg);font-weight:950}
.dm-thread-panel{min-width:0;display:flex;flex-direction:column}.dm-empty{height:100%;display:grid;place-content:center;text-align:center;gap:7px;color:var(--muted)}.dm-empty strong{color:var(--text);font-size:18px}.dm-thread-panel>#dmThread{height:100%;display:grid;grid-template-rows:58px 1fr auto auto;min-height:0}.dm-thread-head{padding:0 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel-2) 70%,transparent)}.dm-thread-head>button:first-child{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--text);padding:0;text-align:left}.dm-thread-head>button:first-child>span:last-child{display:grid}.dm-thread-head strong{font-size:11px}.dm-thread-head small{color:var(--faint);font-size:9px}.dm-messages{min-height:0;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:9px}.dm-message{max-width:min(72%,680px);display:grid;gap:5px}.dm-message.mine{align-self:flex-end}.dm-message.other{align-self:flex-start}.dm-bubble{padding:10px 12px;border:1px solid var(--line);border-radius:13px;background:var(--bg-2);color:var(--text);font-size:12px;line-height:1.5;word-break:break-word}.dm-message.mine .dm-bubble{border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.dm-message footer{display:flex;gap:9px;justify-content:flex-end;color:var(--faint);font-size:8px}.dm-message.other footer{justify-content:flex-start}.dm-message footer button{border:0;background:transparent;color:var(--faint);padding:0;font-size:8px}.dm-message footer button:hover{color:var(--accent)}
.dm-compose{display:grid;grid-template-columns:1fr auto;gap:10px;padding:13px;border-top:1px solid var(--line);background:var(--bg-2)}.dm-compose textarea{resize:none;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);padding:11px;outline:0}.dm-compose textarea:focus{border-color:var(--accent)}#dmError{margin:0 13px 13px}

@media(max-width:980px){.quick-theme>span{display:none}.quick-theme{padding:0 6px}.dm-shell{grid-template-columns:270px 1fr}}
@media(max-width:760px){.quick-theme{margin-left:auto}.quick-theme select{max-width:88px}.messages-page{padding-top:24px}.dm-shell{display:block;min-height:0}.dm-sidebar{border-right:0;border-bottom:1px solid var(--line)}.dm-conversation-list{max-height:220px}.dm-thread-panel>#dmThread{min-height:520px}.dm-message{max-width:88%}.profile-message-button{margin-left:auto;margin-right:auto}.ad-slot{border-radius:10px}}
/* END LOCINODE PRODUCT PASS v0.7.1 */

/* v0.7.1 moderation/admin/reporting */
.header-report,.admin-bell{height:36px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel) 88%,transparent);color:var(--text);font-size:9px;font-weight:850;letter-spacing:.04em;cursor:pointer}.header-report{padding:0 11px}.header-report:hover,.admin-bell:hover{border-color:var(--accent);color:var(--accent)}.admin-bell{position:relative;width:38px;padding:0;display:grid;place-items:center;font-size:14px}.admin-bell b{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:#ff5f68;color:white;font:900 8px/1 ui-monospace,SFMono-Regular,Consolas,monospace;box-shadow:0 0 0 2px var(--bg)}.nav-badge,.tab-badge{display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 4px;margin-left:4px;border-radius:999px;background:var(--accent);color:var(--bg);font-size:8px;font-weight:950}
.report-modal{width:min(560px,calc(100vw - 28px));padding:27px}.report-head{margin-bottom:18px}.report-head h2{margin:6px 0 7px;font-size:25px}.report-head>p:last-child{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.report-modal textarea{resize:vertical;min-height:125px}.report-context{padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--bg-2);color:var(--faint);font:800 8px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;word-break:break-all}
.admin-page{padding-top:40px;padding-bottom:58px}.admin-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.admin-header h1{margin:6px 0 5px;font-size:34px}.admin-header p:last-child{max-width:720px;margin:0;color:var(--muted);font-size:13px;line-height:1.55}.admin-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:18px}.admin-metric{padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.admin-metric span{display:block;color:var(--faint);font:900 8px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}.admin-metric strong{display:block;margin-top:8px;font-size:23px}.admin-tabs{display:flex;gap:5px;overflow:auto;padding:6px;border:1px solid var(--line);border-radius:13px;background:var(--panel);margin-bottom:14px}.admin-tabs button{white-space:nowrap;border:0;border-radius:9px;background:transparent;color:var(--muted);padding:9px 11px;font-size:9px;font-weight:850;cursor:pointer}.admin-tabs button:hover,.admin-tabs button.active{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--text)}.admin-panel{min-height:360px}.admin-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-overview-grid article{min-height:125px;padding:17px;border:1px solid var(--line);border-radius:14px;background:var(--panel);display:flex;flex-direction:column;justify-content:center}.admin-overview-grid span{color:var(--faint);font:900 8px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}.admin-overview-grid strong{margin-top:9px;font-size:21px}.admin-overview-grid small{margin-top:7px;color:var(--muted);font-size:9px}.admin-section{margin-bottom:15px;border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden}.admin-section>header{min-height:44px;padding:0 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.admin-section>header>div{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-section>header small{color:var(--faint);font-size:9px}.admin-list{display:grid}.admin-row,.admin-report,.admin-notification{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border-bottom:1px solid var(--line)}.admin-row:last-child,.admin-report:last-child,.admin-notification:last-child{border-bottom:0}.admin-row>div:first-child,.admin-report>div:first-child,.admin-notification>div:first-child{min-width:0}.admin-row strong,.admin-report strong,.admin-notification strong{font-size:11px}.admin-row p,.admin-report p,.admin-notification p{margin:5px 0;color:var(--muted);font-size:10px;line-height:1.5;word-break:break-word}.admin-row small,.admin-report small,.admin-notification small{color:var(--faint);font-size:8px}.admin-report{display:block}.admin-report header{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-report .admin-actions{margin-top:11px;justify-content:flex-start}.admin-notification.unread{background:color-mix(in srgb,var(--accent) 5%,var(--panel))}.admin-notification.read{opacity:.72}.admin-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.admin-actions button,.danger-button{min-height:32px}.danger-button{border:1px solid color-mix(in srgb,#ff5f68 48%,var(--line));border-radius:9px;background:color-mix(in srgb,#ff5f68 8%,transparent);color:#ff7a82;padding:0 10px;font-size:9px;font-weight:850;cursor:pointer}.danger-button:hover{background:color-mix(in srgb,#ff5f68 15%,transparent)}.admin-pill{display:inline-flex;align-items:center;height:22px;padding:0 7px;border:1px solid var(--line);border-radius:999px;color:var(--accent);font:900 7px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}.admin-panel-tools{display:flex;justify-content:flex-end;padding:10px 13px;border-bottom:1px solid var(--line)}
html[data-theme="labpanel-light"] .admin-metric,html[data-theme="labpanel-light"] .admin-tabs,html[data-theme="labpanel-light"] .admin-overview-grid article,html[data-theme="labpanel-light"] .admin-section,html[data-theme="labpanel-light"] .report-modal{background:rgba(248,251,255,.97);box-shadow:0 12px 30px rgba(35,70,98,.07)}html[data-theme="labpanel-light"] .report-context{background:#edf4fa}
@media(max-width:1080px){.admin-metrics{grid-template-columns:repeat(3,1fr)}.admin-overview-grid{grid-template-columns:repeat(2,1fr)}.header-report{padding:0 8px;font-size:8px}}
@media(max-width:700px){.admin-page{padding-top:24px}.admin-header{align-items:flex-start;flex-direction:column}.admin-header h1{font-size:28px}.admin-metrics{grid-template-columns:repeat(2,1fr)}.admin-overview-grid{grid-template-columns:1fr}.admin-row,.admin-notification{align-items:flex-start;flex-direction:column}.admin-actions{justify-content:flex-start}.admin-bell{width:34px}.report-modal{padding:22px}}

/* ============================================================
   LOCINODE VISUAL PASS v0.7.2
   Large-scale readability + complete Blue / White / Teal theme
   ============================================================ */

/* Global readability scale — applies to every theme */
:root{--shell:1360px}
body{font-size:16px}
.shell{width:min(calc(100% - 48px),var(--shell))}
.topbar{padding:14px 0}
.topbar-inner{height:66px;gap:24px}
.brand{font-size:14px;gap:12px}.brand-symbol{width:38px;height:38px}.brand-symbol.small{width:30px;height:30px}
.topnav{gap:8px}.nav-link{min-height:44px;padding:0 15px;font-size:13px;border-radius:11px}
.header-account{gap:10px}.user-chip{min-height:48px;padding:6px 12px 6px 6px}.user-chip img{width:36px;height:36px}.user-chip b{font-size:12px}.user-chip small{font-size:11px}
.range-status{min-height:40px;padding:0 13px;font-size:10px}.header-report{height:42px;padding:0 13px;font-size:10px}.admin-bell{width:42px;height:42px;font-size:17px}
.quick-theme{min-height:42px;padding:0 10px 0 12px}.quick-theme>span{font-size:8px}.quick-theme select{font-size:11px;max-width:130px}

.range-hero{padding:72px 0 52px;gap:58px}.range-kicker{font-size:11px}.range-copy p{font-size:19px;line-height:1.6}
.range-panel{border-radius:20px}.panel-head{height:54px;padding:0 19px;font-size:10px}.panel-head b{font-size:10px}
.panel-stats div{min-height:112px;padding:20px}.panel-stats strong{font-size:31px}.panel-stats span{font-size:10px}.latest-line{padding:16px 19px}.latest-line span{font-size:9px}.latest-line strong{font-size:12px}

.challenge-section,.leaderboard-section{padding-top:38px}.section-code{font-size:11px}.section-top h2{font-size:40px}.showing{font-size:11px;padding:9px 12px}
.toolbar{padding:14px;gap:14px;border-radius:17px}.search-field,.filters label{height:52px;border-radius:12px}.search-field input{font-size:15px}.search-field kbd{font-size:10px}.filters label>span{font-size:10px}.filters select{font-size:12px}
.challenge-grid{gap:18px}.challenge-card{min-height:350px;padding:24px 23px 21px;border-radius:17px}.challenge-tags{gap:8px}.tag{height:29px;padding:0 10px;font-size:9px;border-radius:7px}.target-number{font-size:11px}.challenge-card h3{margin:27px 0 11px;font-size:26px}.challenge-desc{font-size:15px;line-height:1.68}.mission-open{height:49px;font-size:11px;padding:0 15px}.mission-open b{font-size:20px}.challenge-bottom{padding-top:28px}.star-row{font-size:21px}.difficulty-label{font-size:11px}.xp-block strong{font-size:18px}.xp-block span,.verified{font-size:10px}

.leaderboard-head,.leaderboard-row{grid-template-columns:78px minmax(240px,1.6fr) 170px 100px 115px 130px}.leaderboard-head{min-height:48px;font-size:10px}.leaderboard-row{min-height:74px}.mini-avatar{width:42px;height:42px}.mini-avatar img,.mini-avatar b{width:42px;height:42px;border-radius:11px}.player strong{font-size:13px}.player small,.leader-solves,.leader-xp,.leader-trophies{font-size:11px}

.view-layer{inset:94px 0 0}.view-top{min-height:72px}.back-button{font-size:14px}.view-context{font-size:10px}
.mission-page,.profile-page,.community-page,.messages-page,.admin-page{padding-top:48px}
.mission-page-head h1,.profile-banner h1,.community-page h1{font-size:clamp(44px,5.4vw,70px)}.mission-page-head>div:first-child>p:last-child,.community-page>header p:last-child,.messages-page>header>p:last-child{font-size:16px}.mission-status-strip span{font-size:10px;padding:9px 12px}.mission-layout{gap:22px}.mission-main,.mission-side{gap:17px}.mission-block,.side-card{padding:28px;border-radius:18px}.mission-block p,.side-card p{font-size:15px}.mission-label{font-size:10px}.investigation-steps{gap:12px}.investigation-steps li{grid-template-columns:44px 1fr;padding:17px;font-size:15px}.investigation-steps li b{font-size:11px}.mission-skills span{font-size:10px;padding:9px 11px}.launch-card strong{font-size:18px}

.primary-button,.secondary-button,.text-button{font-size:12px}.primary-button,.secondary-button{min-height:48px;padding:0 18px}.primary-button.compact{min-height:43px;font-size:11px}.primary-button.full{min-height:52px}.text-button{min-height:42px;padding:0 13px}
.flag-form input{height:50px;font-size:14px}.flag-form label>span{font-size:10px}.auto-stop-note{font-size:10px}

.profile-banner{padding:30px}.profile-avatar-wrap,.profile-avatar,.avatar-fallback{width:116px;height:116px}.profile-identity>p{font-size:11px}.profile-identity>p:last-of-type{font-size:15px}.profile-rank-line{font-size:18px}.profile-summary strong{font-size:25px}.profile-summary span{font-size:9px}.profile-card{border-radius:17px}.card-head{min-height:48px;padding:0 16px}.card-head span{font-size:10px}.card-head small{font-size:10px}.skill-row{min-height:52px}.skill-row>span:first-child{font-size:12px}.skill-row b{font-size:10px}.showcase-grid,.trophy-grid{gap:12px}.trophy-card{padding:15px}.trophy-card strong{font-size:12px}.trophy-card p{font-size:10px}.profile-form input,.profile-form textarea{font-size:14px;padding:13px}.theme-options button{height:46px;font-size:11px}.upload-button{min-height:44px;font-size:11px}

.chat-rules{font-size:11px;padding:15px 18px}.chat-messages{padding:10px 20px}.chat-message{grid-template-columns:48px 1fr;padding:16px 0}.chat-avatar,.chat-avatar img,.chat-avatar b{width:44px;height:44px}.chat-message header strong{font-size:13px}.chat-message header span{font-size:10px}.chat-message time{font-size:9px}.chat-message p{font-size:14px}.chat-message footer button{font-size:9px}.chat-compose textarea{font-size:14px;padding:13px}

.dm-shell{grid-template-columns:370px 1fr;min-height:680px}.dm-sidebar-head{height:56px}.dm-sidebar-head strong{font-size:10px}.dm-conversation{grid-template-columns:48px 1fr auto;padding:15px}.dm-conversation .mini-avatar,.dm-conversation .mini-avatar img,.dm-conversation .mini-avatar b{width:46px;height:46px}.dm-conversation-copy strong{font-size:13px}.dm-conversation-copy p{font-size:10px}.dm-thread-panel>#dmThread{grid-template-rows:66px 1fr auto auto}.dm-thread-head strong{font-size:13px}.dm-thread-head small{font-size:10px}.dm-messages{padding:21px;gap:11px}.dm-bubble{padding:13px 15px;font-size:14px}.dm-message footer,.dm-message footer button{font-size:9px}.dm-compose textarea{font-size:14px;padding:13px}

.modal-card{border-radius:22px}.auth-modal{padding:32px}.auth-form h2{font-size:32px}.form-intro{font-size:13px}.auth-form label>span,.profile-form label>span{font-size:10px}.auth-form input,.profile-form input{height:50px;font-size:14px}.auth-tabs button{min-height:44px;font-size:11px}.modal-close{width:40px;height:40px;font-size:24px}.report-modal{padding:31px}.report-head h2{font-size:29px}.report-head>p:last-child{font-size:13px}.report-context{font-size:9px}

.admin-header h1{font-size:40px}.admin-header p:last-child{font-size:15px}.admin-metrics{gap:13px}.admin-metric{padding:18px}.admin-metric span{font-size:9px}.admin-metric strong{font-size:27px}.admin-tabs{padding:8px;gap:7px}.admin-tabs button{padding:11px 14px;font-size:10px}.admin-overview-grid article{min-height:145px;padding:20px}.admin-overview-grid span{font-size:9px}.admin-overview-grid strong{font-size:24px}.admin-overview-grid small{font-size:10px}.admin-section>header{min-height:50px;padding:0 16px}.admin-row,.admin-report,.admin-notification{padding:17px}.admin-row strong,.admin-report strong,.admin-notification strong{font-size:13px}.admin-row p,.admin-report p,.admin-notification p{font-size:11px}.admin-row small,.admin-report small,.admin-notification small{font-size:9px}.admin-actions button,.danger-button{min-height:38px;font-size:10px}.admin-pill{height:26px;font-size:8px}

/* BLUE + WHITE theme. Existing key retained for account compatibility. */
html[data-theme="labpanel-light"]{
  color-scheme:light;
  --bg:#eef6fb;
  --bg-2:#f7fbfe;
  --panel:#ffffff;
  --panel-2:#e9f3f9;
  --line:#bfd6e3;
  --line-strong:#8fb7ca;
  --text:#12334a;
  --muted:#496b7e;
  --faint:#6c8998;
  --accent:#087dcc;
  --accent2:#16aaa3;
  --cyan:#087dcc;
  --mint:#16aaa3;
  --blue:#2496df;
  --gold:#b77900;
  --good:#0d9476;
  --bad:#c84255;
}
html[data-theme="labpanel-light"] body{background:#eef6fb;color:#12334a}
html[data-theme="labpanel-light"] .backdrop{background:radial-gradient(circle at 18% -10%,rgba(8,125,204,.13),transparent 34%),radial-gradient(circle at 82% 10%,rgba(22,170,163,.10),transparent 30%),linear-gradient(180deg,#f8fcff 0,#eef6fb 52%,#e7f1f7 100%)}
html[data-theme="labpanel-light"] .glow-a{background:radial-gradient(circle,rgba(8,125,204,.12),transparent 68%)}
html[data-theme="labpanel-light"] .glow-b{background:radial-gradient(circle,rgba(22,170,163,.10),transparent 68%)}
html[data-theme="labpanel-light"] .scan-grid{background-image:linear-gradient(rgba(13,99,145,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(13,99,145,.045) 1px,transparent 1px)}
html[data-theme="labpanel-light"] .topbar{background:rgba(255,255,255,.90);border-color:#c8dce7;box-shadow:0 8px 30px rgba(26,77,105,.07)}
html[data-theme="labpanel-light"] .brand-symbol{border-color:rgba(8,125,204,.45);background:linear-gradient(145deg,rgba(8,125,204,.12),rgba(22,170,163,.07))}
html[data-theme="labpanel-light"] .brand-symbol:before,html[data-theme="labpanel-light"] .brand-symbol:after,html[data-theme="labpanel-light"] .brand-symbol i,html[data-theme="labpanel-light"] .brand-symbol b{background:#087dcc;box-shadow:0 0 12px rgba(8,125,204,.28)}
html[data-theme="labpanel-light"] .nav-link{color:#496b7e}html[data-theme="labpanel-light"] .nav-link:hover,html[data-theme="labpanel-light"] .nav-link.active{background:#e3f1f8;color:#075f9c}
html[data-theme="labpanel-light"] .quick-theme,html[data-theme="labpanel-light"] .header-report,html[data-theme="labpanel-light"] .admin-bell,html[data-theme="labpanel-light"] .user-chip{background:#fff;border-color:#bfd6e3;color:#12334a}
html[data-theme="labpanel-light"] .quick-theme select,html[data-theme="labpanel-light"] .quick-theme option{background:#fff;color:#12334a}
html[data-theme="labpanel-light"] .range-status{background:#fff;border-color:#bfd6e3;color:#496b7e}

html[data-theme="labpanel-light"] .range-panel,
html[data-theme="labpanel-light"] .challenge-card,
html[data-theme="labpanel-light"] .leaderboard-card,
html[data-theme="labpanel-light"] .range-info-card,
html[data-theme="labpanel-light"] .mission-block,
html[data-theme="labpanel-light"] .side-card,
html[data-theme="labpanel-light"] .profile-banner,
html[data-theme="labpanel-light"] .profile-card,
html[data-theme="labpanel-light"] .chat-shell,
html[data-theme="labpanel-light"] .dm-shell,
html[data-theme="labpanel-light"] .admin-metric,
html[data-theme="labpanel-light"] .admin-tabs,
html[data-theme="labpanel-light"] .admin-overview-grid article,
html[data-theme="labpanel-light"] .admin-section,
html[data-theme="labpanel-light"] .modal-card,
html[data-theme="labpanel-light"] .report-modal{background:#fff;border-color:#bfd6e3;color:#12334a;box-shadow:0 14px 38px rgba(31,83,111,.08)}
html[data-theme="labpanel-light"] .challenge-card:hover{background:#f8fcff;border-color:#58a9d6;box-shadow:0 18px 44px rgba(31,83,111,.13)}
html[data-theme="labpanel-light"] .panel-head,html[data-theme="labpanel-light"] .latest-line,html[data-theme="labpanel-light"] .leaderboard-head,html[data-theme="labpanel-light"] .card-head,html[data-theme="labpanel-light"] .chat-rules,html[data-theme="labpanel-light"] .dm-sidebar,html[data-theme="labpanel-light"] .dm-thread-head,html[data-theme="labpanel-light"] .admin-panel-tools{background:#eaf4f9;border-color:#bfd6e3;color:#496b7e}
html[data-theme="labpanel-light"] .panel-stats div,html[data-theme="labpanel-light"] .leaderboard-row,html[data-theme="labpanel-light"] .skill-row,html[data-theme="labpanel-light"] .achievement,html[data-theme="labpanel-light"] .chat-message,html[data-theme="labpanel-light"] .dm-conversation,html[data-theme="labpanel-light"] .admin-row,html[data-theme="labpanel-light"] .admin-report,html[data-theme="labpanel-light"] .admin-notification{border-color:#d3e3eb}
html[data-theme="labpanel-light"] .leaderboard-row:hover,html[data-theme="labpanel-light"] .dm-conversation:hover,html[data-theme="labpanel-light"] .dm-conversation.active,html[data-theme="labpanel-light"] .admin-tabs button:hover,html[data-theme="labpanel-light"] .admin-tabs button.active{background:#e6f4fa;color:#075f9c}

html[data-theme="labpanel-light"] .toolbar{background:#fff;border-color:#bfd6e3}
html[data-theme="labpanel-light"] .search-field,
html[data-theme="labpanel-light"] .filters label,
html[data-theme="labpanel-light"] .search-field kbd,
html[data-theme="labpanel-light"] .filters select,
html[data-theme="labpanel-light"] .auth-tabs,
html[data-theme="labpanel-light"] .auth-form input,
html[data-theme="labpanel-light"] .auth-form textarea,
html[data-theme="labpanel-light"] .profile-form input,
html[data-theme="labpanel-light"] .profile-form textarea,
html[data-theme="labpanel-light"] .profile-form select,
html[data-theme="labpanel-light"] .chat-compose,
html[data-theme="labpanel-light"] .chat-compose textarea,
html[data-theme="labpanel-light"] .dm-compose,
html[data-theme="labpanel-light"] .dm-compose textarea,
html[data-theme="labpanel-light"] .flag-form input,
html[data-theme="labpanel-light"] .active-lab-url,
html[data-theme="labpanel-light"] .mission-status-strip span,
html[data-theme="labpanel-light"] .investigation-steps li,
html[data-theme="labpanel-light"] .mission-skills span,
html[data-theme="labpanel-light"] .report-context{background:#f7fbfe!important;border-color:#bfd6e3!important;color:#12334a!important}
html[data-theme="labpanel-light"] .search-field input,html[data-theme="labpanel-light"] .filters select,html[data-theme="labpanel-light"] input,html[data-theme="labpanel-light"] textarea,html[data-theme="labpanel-light"] select{color:#12334a}
html[data-theme="labpanel-light"] input::placeholder,html[data-theme="labpanel-light"] textarea::placeholder,html[data-theme="labpanel-light"] .search-field input::placeholder{color:#7891a0}
html[data-theme="labpanel-light"] input:focus,html[data-theme="labpanel-light"] textarea:focus,html[data-theme="labpanel-light"] select:focus,html[data-theme="labpanel-light"] .search-field:focus-within{border-color:#2696c9!important;box-shadow:0 0 0 3px rgba(8,125,204,.10)!important}

html[data-theme="labpanel-light"] .primary-button{background:linear-gradient(135deg,#087dcc,#2496df);border-color:#087dcc;color:#fff;box-shadow:0 8px 24px rgba(8,125,204,.17)}
html[data-theme="labpanel-light"] .primary-button:hover{background:linear-gradient(135deg,#066eb5,#1888d1);color:#fff}
html[data-theme="labpanel-light"] .secondary-button{background:#fff;border-color:#a8c6d6;color:#17445e;box-shadow:none}
html[data-theme="labpanel-light"] .secondary-button:hover{background:#eaf5fa;border-color:#6eaccb;color:#075f9c}
html[data-theme="labpanel-light"] .text-button{background:transparent;color:#496b7e}
html[data-theme="labpanel-light"] .text-button:hover{background:#e7f3f8;color:#075f9c}
html[data-theme="labpanel-light"] .modal-close{background:#e6f2f8;color:#496b7e}html[data-theme="labpanel-light"] .modal-close:hover{background:#d8ebf4;color:#075f9c}
html[data-theme="labpanel-light"] .auth-tabs button{background:transparent;color:#5a7687}html[data-theme="labpanel-light"] .auth-tabs button.active{background:#fff;color:#075f9c;box-shadow:inset 0 0 0 1px #9fc7da}
html[data-theme="labpanel-light"] .theme-options button{background:#f1f8fc;border-color:#bfd6e3;color:#496b7e}html[data-theme="labpanel-light"] .theme-options button.active{background:#dff1f8;border-color:#087dcc;color:#075f9c}
html[data-theme="labpanel-light"] .upload-button{background:#fff;border-color:#a8c6d6;color:#17445e}
html[data-theme="labpanel-light"] .danger-button{background:#fff1f3;color:#b62f43;border-color:#e6a2ac}
html[data-theme="labpanel-light"] .danger-button:hover{background:#ffe4e8}

html[data-theme="labpanel-light"] .challenge-card h3,html[data-theme="labpanel-light"] .mission-page-head h1,html[data-theme="labpanel-light"] .profile-banner h1,html[data-theme="labpanel-light"] .community-page h1,html[data-theme="labpanel-light"] .admin-header h1,html[data-theme="labpanel-light"] .dm-empty strong,html[data-theme="labpanel-light"] .player strong{color:#12334a}
html[data-theme="labpanel-light"] .challenge-desc,html[data-theme="labpanel-light"] .range-copy p,html[data-theme="labpanel-light"] .mission-page-head>div:first-child>p:last-child,html[data-theme="labpanel-light"] .mission-block p,html[data-theme="labpanel-light"] .side-card p,html[data-theme="labpanel-light"] .profile-identity>p:last-of-type,html[data-theme="labpanel-light"] .chat-message p,html[data-theme="labpanel-light"] .dm-conversation-copy p,html[data-theme="labpanel-light"] .admin-row p,html[data-theme="labpanel-light"] .admin-report p,html[data-theme="labpanel-light"] .admin-notification p{color:#496b7e}
html[data-theme="labpanel-light"] .section-code,html[data-theme="labpanel-light"] .mission-label,html[data-theme="labpanel-light"] .range-kicker span,html[data-theme="labpanel-light"] .view-context b,html[data-theme="labpanel-light"] .admin-pill{color:#087dcc}
html[data-theme="labpanel-light"] .tag.category{color:#076aab;border-color:#8bc4de;background:#e8f5fa}html[data-theme="labpanel-light"] .tag.new{color:#087a70}
html[data-theme="labpanel-light"] .mission-open{background:#e6f5fb;border-color:#91c6dc;color:#075f9c}html[data-theme="labpanel-light"] .mission-open:hover{background:#d8eff8}html[data-theme="labpanel-light"] .mission-open b{color:#087dcc}
html[data-theme="labpanel-light"] .verified,html[data-theme="labpanel-light"] .target-number,html[data-theme="labpanel-light"] .showing,html[data-theme="labpanel-light"] .view-context,html[data-theme="labpanel-light"] .mission-status-strip span{color:#5d7a8c}
html[data-theme="labpanel-light"] .star-off,html[data-theme="labpanel-light"] .player-star-off{color:#adbec8}
html[data-theme="labpanel-light"] .xp-track{background:#dceaf1}html[data-theme="labpanel-light"] .xp-track i{background:linear-gradient(90deg,#087dcc,#16aaa3)}
html[data-theme="labpanel-light"] .active-lab{background:linear-gradient(145deg,rgba(22,170,163,.10),#fff);border-color:#8ecfc9}html[data-theme="labpanel-light"] .active-lab-head strong{color:#087a70}
html[data-theme="labpanel-light"] .dm-bubble{background:#fff;border-color:#c8dce6;color:#12334a}html[data-theme="labpanel-light"] .dm-message.mine .dm-bubble{background:#e2f3fb;border-color:#8fc7df}
html[data-theme="labpanel-light"] .toast{background:#fff;border-color:#8fc7df;color:#12334a;box-shadow:0 18px 50px rgba(31,83,111,.18)}
html[data-theme="labpanel-light"] .admin-notification.unread{background:#eaf7fb}html[data-theme="labpanel-light"] .admin-notification.read{opacity:.78}
html[data-theme="labpanel-light"] .ad-slot{background:#f9fcfe;border-color:#cedfe7}

/* Better touch targets / readable mobile sizing */
@media(max-width:900px){
  .shell{width:min(calc(100% - 30px),var(--shell))}.topbar-inner{height:auto;min-height:64px;flex-wrap:wrap;padding:4px 0}.topnav{order:3;width:100%;overflow:auto}.quick-theme{margin-left:auto}.range-hero{padding-top:48px}.challenge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-metrics{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:700px){
  body{font-size:16px}.shell{width:min(calc(100% - 22px),var(--shell))}.topbar{padding:9px 0}.brand-symbol{width:34px;height:34px}.nav-link{font-size:11px;min-height:42px;padding:0 11px}.header-report{font-size:9px}.quick-theme select{max-width:110px}.view-layer{inset:126px 0 0}.range-copy p{font-size:17px}.section-top h2{font-size:33px}.toolbar{align-items:stretch;flex-direction:column}.filters{display:grid;grid-template-columns:1fr 1fr}.filters label{width:100%}.challenge-grid{grid-template-columns:1fr}.challenge-card{min-height:315px;padding:21px}.challenge-card h3{font-size:24px}.challenge-desc{font-size:14px}.mission-page,.profile-page,.community-page,.messages-page,.admin-page{padding-top:30px}.mission-block,.side-card{padding:21px}.investigation-steps li{grid-template-columns:34px 1fr;padding:14px;font-size:14px}.profile-banner{padding:22px}.chat-message p,.dm-bubble{font-size:13px}.dm-shell{display:block;min-height:0}.admin-metrics{grid-template-columns:repeat(2,1fr)}.admin-header h1{font-size:32px}
}
/* END LOCINODE VISUAL PASS v0.7.2 */

/* =====================================================================
   LOCINODE v0.7.3 — NAVIGATION CLEANUP
   Theme selection lives in Profile. Header utilities are intentionally
   lightweight; player identity is no longer rendered as a boxed control.
   ===================================================================== */

.topbar-inner{
  gap:22px;
}

.nav-spacer{
  flex:1 1 auto;
  min-width:12px;
}

/* No theme control in the navbar. Theme now lives under profile settings. */
.quick-theme{
  display:none!important;
}

/* Right-side utility cluster — visually quiet instead of a row of boxes. */
.range-status{
  margin-left:0!important;
  min-height:36px;
  padding:0 6px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  gap:8px;
  color:var(--muted);
  white-space:nowrap;
}
.range-status.online{
  color:var(--success);
}
.status-dot{
  width:8px;
  height:8px;
  box-shadow:0 0 12px color-mix(in srgb,var(--success) 55%,transparent);
}

.header-report{
  width:auto;
  height:38px!important;
  padding:0 9px!important;
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:var(--muted)!important;
  box-shadow:none!important;
  font-size:11px!important;
  letter-spacing:0!important;
}
.header-report:hover{
  background:color-mix(in srgb,var(--panel-2) 72%,transparent)!important;
  color:var(--text)!important;
}
.report-mark{
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  color:var(--accent);
  font:900 11px/1 ui-monospace,SFMono-Regular,Consolas,monospace;
}
.report-label{
  font-weight:800;
}

.admin-bell{
  width:38px!important;
  height:38px!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--muted)!important;
}
.admin-bell:hover{
  background:color-mix(in srgb,var(--panel-2) 72%,transparent)!important;
  color:var(--accent)!important;
}

.header-account{
  margin-left:0!important;
}

/* Player identity: avatar + rating + name, no box. */
.user-chip{
  margin-left:0!important;
  min-height:44px!important;
  height:auto!important;
  padding:4px 5px!important;
  display:flex!important;
  align-items:center;
  gap:9px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--text)!important;
  letter-spacing:0!important;
  transition:background .18s ease,transform .18s ease;
}
.user-chip[hidden]{display:none!important}
.user-chip:hover{
  background:color-mix(in srgb,var(--panel-2) 72%,transparent)!important;
  transform:translateY(-1px);
}
.user-chip img{
  width:36px!important;
  height:36px!important;
  flex:0 0 36px;
  border-radius:50%!important;
  object-fit:cover;
  border:2px solid color-mix(in srgb,var(--accent) 46%,var(--line));
  background:var(--panel-2);
}
.user-chip>span{
  display:flex!important;
  align-items:center;
  gap:6px;
  text-align:left;
  min-width:0;
}
.user-chip small{
  width:12px;
  max-width:12px;
  overflow:hidden;
  white-space:nowrap;
  color:var(--gold)!important;
  font-size:11px!important;
  line-height:1;
  letter-spacing:-2px;
  text-shadow:0 0 8px rgba(255,212,92,.28);
}
.user-chip b{
  max-width:150px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px!important;
  font-weight:850;
  color:var(--text)!important;
}

/* Theme selection now lives where account customization belongs. */
.profile-theme-picker{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:15px 16px;
  border:1px solid var(--line);
  border-radius:13px;
  background:color-mix(in srgb,var(--panel-2) 72%,transparent);
}
.theme-copy{
  display:grid;
  gap:4px;
}
.theme-copy>span{
  color:var(--text);
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
}
.theme-copy>small{
  color:var(--muted);
  font-size:11px;
}
.profile-theme-select select{
  min-width:160px;
  height:42px;
  padding:0 34px 0 12px;
  border:1px solid var(--line);
  border-radius:10px;
  outline:0;
  background:var(--panel);
  color:var(--text);
  font-size:12px;
  font-weight:800;
}
.profile-theme-select select:focus{
  border-color:var(--accent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent);
}

/* Blue + White theme specifics */
html[data-theme="labpanel-light"] .range-status{
  color:#4f7284!important;
}
html[data-theme="labpanel-light"] .range-status.online{
  color:#087f79!important;
}
html[data-theme="labpanel-light"] .header-report,
html[data-theme="labpanel-light"] .admin-bell,
html[data-theme="labpanel-light"] .user-chip{
  background:transparent!important;
  border:0!important;
  color:#24495e!important;
}
html[data-theme="labpanel-light"] .header-report:hover,
html[data-theme="labpanel-light"] .admin-bell:hover,
html[data-theme="labpanel-light"] .user-chip:hover{
  background:#e5f2f8!important;
}
html[data-theme="labpanel-light"] .report-mark{
  border-color:#b8d2df;
  color:#087dcc;
}
html[data-theme="labpanel-light"] .user-chip img{
  border-color:#72b9da;
  background:#e6f3f9;
}
html[data-theme="labpanel-light"] .profile-theme-picker{
  background:#f5fbfe;
  border-color:#c7dce7;
}
html[data-theme="labpanel-light"] .profile-theme-select select{
  background:#fff;
  border-color:#bcd5e2;
  color:#12334a;
}

@media(max-width:1180px){
  .topbar-inner{gap:14px}
  .topnav{gap:4px}
  .nav-link{padding:0 10px!important;font-size:11px!important}
  .report-label{display:none}
  .header-report{padding:0 4px!important}
}

@media(max-width:930px){
  .range-status{display:none!important}
  .user-chip b{max-width:105px}
}

@media(max-width:760px){
  .user-chip>span{display:none!important}
  .user-chip{padding:3px!important}
  .user-chip img{width:38px!important;height:38px!important;flex-basis:38px}
  .admin-bell{width:38px!important;height:38px!important}
  .profile-theme-picker{align-items:stretch;flex-direction:column}
  .profile-theme-select select{width:100%}
}

/* =====================================================================
   LOCINODE v0.7.4 — PROFILE / TERMINAL / ANALYTICS
   ===================================================================== */

/* Terminal Green — intentionally old-school without sacrificing readability. */
html[data-theme="terminal"]{
  --bg:#020704;--bg-2:#041008;--panel:#07140c;--panel-2:#0a1b10;
  --line:#173c24;--line-strong:#236037;--text:#d9ffe5;--muted:#93c9a4;
  --faint:#5c926d;--accent:#63ff9a;--accent2:#2eea74;--cyan:#63ff9a;
  --mint:#9affbc;--good:#63ff9a;--bad:#ff6b7d;--gold:#ffd45c;
}
html[data-theme="terminal"] body{background:#020704;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
html[data-theme="terminal"] .backdrop{background:radial-gradient(circle at 50% -20%,rgba(66,255,132,.09),transparent 38%),linear-gradient(180deg,#020704 0,#031008 62%,#020704 100%)}
html[data-theme="terminal"] .scan-grid{opacity:.5;background-image:linear-gradient(rgba(72,255,132,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(72,255,132,.025) 1px,transparent 1px)}
html[data-theme="terminal"] .topbar{background:rgba(2,10,5,.94);border-color:#173c24}
html[data-theme="terminal"] .brand-symbol{border-color:#36c86d;background:#06190d;box-shadow:0 0 22px rgba(99,255,154,.09)}
html[data-theme="terminal"] .nav-link.active,html[data-theme="terminal"] .nav-link:hover{background:#0a2012;color:#7dffa9}
html[data-theme="terminal"] .challenge-card,html[data-theme="terminal"] .range-panel,html[data-theme="terminal"] .profile-card,html[data-theme="terminal"] .profile-banner,html[data-theme="terminal"] .mission-block,html[data-theme="terminal"] .side-card,html[data-theme="terminal"] .leaderboard-card,html[data-theme="terminal"] .chat-shell,html[data-theme="terminal"] .dm-shell,html[data-theme="terminal"] .admin-section,html[data-theme="terminal"] .admin-metric,html[data-theme="terminal"] .analytics-card,html[data-theme="terminal"] .analytics-chart{background:linear-gradient(155deg,#07140c,#041008);border-color:#173c24;box-shadow:0 14px 34px rgba(0,0,0,.32)}
html[data-theme="terminal"] .challenge-card:hover{border-color:#2e9d52;background:linear-gradient(155deg,#0a1b10,#06120a)}
html[data-theme="terminal"] .primary-button{background:linear-gradient(135deg,#28db69,#16a34a);color:#011407;box-shadow:0 8px 24px rgba(46,234,116,.15)}
html[data-theme="terminal"] .secondary-button,html[data-theme="terminal"] .upload-button{background:#07140c;border-color:#245b35;color:#bfffd2}
html[data-theme="terminal"] input,html[data-theme="terminal"] textarea,html[data-theme="terminal"] select{background:#031008!important;border-color:#214d30!important;color:#d9ffe5!important}
html[data-theme="terminal"] .section-code,html[data-theme="terminal"] .mission-label,html[data-theme="terminal"] .view-context b{color:#63ff9a}
html[data-theme="terminal"] .mission-open{background:#092313;border-color:#1f6736;color:#7dffa9}
html[data-theme="terminal"] .trophy,html[data-theme="terminal"] .preset-avatar{background:#06130b;border-color:#173c24}

/* Achievements are a major profile feature, not tiny metadata. */
.showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.trophy-grid:not(.showcase-grid){grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.trophy{min-height:154px;padding:19px;gap:16px;border-radius:16px}
.trophy-cup{width:58px;height:58px;min-width:58px;border-radius:15px;font-size:29px}
.trophy-copy strong{font-size:14px;line-height:1.25}
.trophy-copy small{margin-top:8px;font-size:11px;line-height:1.5}
.trophy-copy em{margin-top:10px;font-size:9px;letter-spacing:.1em}
.trophy-showcase .section-top.compact h2{font-size:31px}
#showcaseHelp,#trophyCount{font-size:11px}

/* Built-in avatar gallery. */
.avatar-settings{align-content:start}
.preset-avatar-wrap{width:100%;margin:8px 0 4px}
.preset-avatar-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:10px}
.preset-avatar-head strong{font-size:12px}.preset-avatar-head small{color:var(--muted);font-size:10px}
.preset-avatar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.preset-avatar{min-height:82px;padding:8px 5px;display:grid;place-items:center;gap:5px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);color:var(--text);cursor:pointer;transition:.16s ease}
.preset-avatar:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--preset-accent) 65%,var(--line))}
.preset-avatar.active{border-color:var(--preset-accent);box-shadow:inset 0 0 0 1px var(--preset-accent),0 0 18px color-mix(in srgb,var(--preset-accent) 16%,transparent)}
.preset-avatar>span{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--preset-accent) 12%,var(--bg-2));border:1px solid color-mix(in srgb,var(--preset-accent) 35%,var(--line));color:var(--preset-accent);font:900 13px/1 ui-monospace,SFMono-Regular,Consolas,monospace}
.preset-avatar small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:8px;font-weight:800}

/* Advanced admin analytics. */
.analytics-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.analytics-toolbar>div:first-child{display:grid;gap:4px}.analytics-toolbar span{font-size:11px;font-weight:950;letter-spacing:.09em}.analytics-toolbar small{color:var(--muted);font-size:10px}
.analytics-ranges{display:flex;gap:5px}.analytics-ranges button{min-width:48px;height:34px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);color:var(--muted);font-size:10px;font-weight:900}.analytics-ranges button.active,.analytics-ranges button:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--panel-2))}
.analytics-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}.analytics-summary article{min-height:88px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.analytics-summary span{display:block;color:var(--faint);font-size:8px;font-weight:950;letter-spacing:.09em}.analytics-summary strong{display:block;margin-top:9px;font-size:22px}
.analytics-spark-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.analytics-chart{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.analytics-chart header{display:flex;justify-content:space-between;align-items:center}.analytics-chart header span{font-size:10px;font-weight:900;color:var(--muted)}.analytics-chart header strong{font-size:18px}.analytics-spark{width:100%;height:86px;margin:12px 0 3px;overflow:visible}.analytics-spark polyline{stroke:var(--accent);stroke-width:2.25}.analytics-chart footer small{color:var(--faint);font-size:8px}
.analytics-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.analytics-card{padding:17px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.analytics-card>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.analytics-card>header span{font-size:10px;font-weight:950;letter-spacing:.08em}.analytics-card>header small{color:var(--faint);font-size:9px}.analytics-mini-rows>div{min-height:43px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.analytics-mini-rows>div:first-child{border-top:0}.analytics-mini-rows span{color:var(--muted);font-size:11px;text-transform:capitalize}.analytics-mini-rows strong{font-size:11px}.analytics-wide{margin-bottom:12px}.analytics-table{overflow:auto}.analytics-table-head,.analytics-table-row{min-width:780px;display:grid;grid-template-columns:2.2fr .9fr .7fr .7fr .8fr .8fr;gap:10px;align-items:center}.analytics-table-head{padding:8px 10px;color:var(--faint);font-size:8px;font-weight:950;letter-spacing:.08em}.analytics-table-row{padding:11px 10px;border-top:1px solid var(--line);font-size:10px}.analytics-table-row>span:first-child{display:grid}.analytics-table-row>span:first-child strong{font-size:11px}.analytics-table-row>span:first-child small{margin-top:3px;color:var(--faint);text-transform:capitalize}

@media(max-width:1100px){.analytics-summary{grid-template-columns:repeat(4,1fr)}.analytics-spark-grid{grid-template-columns:repeat(2,1fr)}.showcase-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.trophy-grid:not(.showcase-grid),.showcase-grid{grid-template-columns:1fr}.trophy{min-height:140px}.preset-avatar-grid{grid-template-columns:repeat(3,1fr)}.analytics-toolbar{align-items:flex-start;flex-direction:column}.analytics-summary{grid-template-columns:repeat(2,1fr)}.analytics-spark-grid,.analytics-columns{grid-template-columns:1fr}}
/* END LOCINODE v0.7.4 */

/* ============================================================
   LOCINODE v0.7.5 — BALANCED READABILITY SCALE
   v0.7.2 intentionally enlarged the interface. This pass lands
   between the original compact UI and that oversized scale.
   ============================================================ */
:root{--shell:1320px}
body{font-size:15px}
.shell{width:min(calc(100% - 42px),var(--shell))}
.topbar{padding:11px 0}.topbar-inner{height:62px;gap:20px}
.brand{font-size:13px}.brand-symbol{width:36px;height:36px}
.topnav{gap:6px}.nav-link{min-height:41px;padding:0 13px;font-size:12px}
.range-status{min-height:37px;padding:0 11px;font-size:9px}.header-report{height:39px;padding:0 11px;font-size:9px}.admin-bell{width:39px;height:39px;font-size:16px}
.user-chip{min-height:43px!important}.user-chip img{width:34px!important;height:34px!important;flex-basis:34px}.user-chip b{font-size:12px!important}
.range-hero{padding:64px 0 47px;gap:52px}.range-copy p{font-size:18px}.panel-stats div{min-height:104px;padding:18px}.panel-stats strong{font-size:28px}
.section-top h2{font-size:37px}.toolbar{padding:13px}.search-field,.filters label{height:48px}.search-field input{font-size:14px}
.challenge-grid{gap:16px}.challenge-card{min-height:330px;padding:22px 21px 19px}.challenge-card h3{margin:24px 0 10px;font-size:24px}.challenge-desc{font-size:14px}.mission-open{height:45px}.star-row{font-size:20px}.xp-block strong{font-size:17px}
.leaderboard-row{min-height:69px}.leaderboard-head{min-height:45px}.mini-avatar,.mini-avatar img,.mini-avatar b{width:40px;height:40px}.player strong{font-size:12px}
.view-layer{inset:88px 0 0}.view-top{min-height:67px}.mission-page,.profile-page,.community-page,.messages-page,.admin-page{padding-top:42px}
.mission-page-head h1,.profile-banner h1,.community-page h1{font-size:clamp(40px,5vw,64px)}
.mission-block,.side-card{padding:25px}.mission-block p,.side-card p{font-size:14px}.investigation-steps li{grid-template-columns:40px 1fr;padding:15px;font-size:14px}
.primary-button,.secondary-button{min-height:45px}.primary-button.full{min-height:49px}.flag-form input{height:47px}
.profile-banner{padding:27px}.profile-avatar-wrap,.profile-avatar,.avatar-fallback{width:108px;height:108px}.profile-summary strong{font-size:23px}.skill-row{min-height:49px}.profile-form input,.profile-form textarea{font-size:13px;padding:12px}
.chat-message{grid-template-columns:46px 1fr;padding:14px 0}.chat-avatar,.chat-avatar img,.chat-avatar b{width:42px;height:42px}.chat-message p{font-size:13px}.chat-compose textarea{font-size:13px}
.dm-shell{grid-template-columns:345px 1fr;min-height:640px}.dm-conversation{grid-template-columns:46px 1fr auto;padding:14px}.dm-conversation .mini-avatar,.dm-conversation .mini-avatar img,.dm-conversation .mini-avatar b{width:43px;height:43px}.dm-bubble{padding:12px 14px;font-size:13px}.dm-compose textarea{font-size:13px}
.auth-modal{padding:29px}.auth-form h2{font-size:29px}.auth-form input,.profile-form input{height:47px;font-size:13px}.modal-close{width:38px;height:38px}
.admin-header h1{font-size:37px}.admin-header p:last-child{font-size:14px}.admin-metric{padding:16px}.admin-metric strong{font-size:25px}.admin-tabs{padding:7px}.admin-tabs button{padding:10px 12px;font-size:9px}.admin-overview-grid article{min-height:135px;padding:18px}.admin-overview-grid strong{font-size:22px}.admin-row,.admin-report,.admin-notification{padding:15px}
/* Keep achievements intentionally prominent, just a little less oversized. */
.trophy{min-height:145px;padding:17px;gap:14px}.trophy-cup{width:54px;height:54px;min-width:54px;font-size:27px}.trophy-copy strong{font-size:13px}.trophy-copy small{font-size:10.5px}.trophy-showcase .section-top.compact h2{font-size:29px}
.analytics-summary article{min-height:82px;padding:14px}.analytics-summary strong{font-size:20px}.analytics-chart{padding:14px}.analytics-spark{height:78px}.analytics-card{padding:15px}
@media(max-width:700px){body{font-size:15px}.shell{width:min(calc(100% - 20px),var(--shell))}.challenge-card{min-height:300px}.mission-page-head h1,.profile-banner h1,.community-page h1{font-size:34px}.profile-avatar-wrap,.profile-avatar,.avatar-fallback{width:96px;height:96px}}

/* Locinode v0.8.1 - KVM launch progress / embedded workstation */
.lab-boot-card strong{display:block;color:var(--text);font-size:15px;line-height:1.4;margin-bottom:14px}.lab-progress-track{height:10px;border:1px solid var(--line);border-radius:999px;background:var(--bg);overflow:hidden}.lab-progress-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--accent),var(--mint));transition:width .35s ease}.lab-progress-meta{display:flex;justify-content:space-between;gap:12px;margin-top:9px;color:var(--faint);font:850 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}.desktop-panel{margin-top:22px;padding:0!important;overflow:hidden}.desktop-panel-head{min-height:67px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-bottom:1px solid var(--line)}.desktop-panel-head .mission-label{margin:0 0 6px}.desktop-panel-head strong{font-size:16px}.desktop-panel-head>span{color:var(--mint);font:900 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}.desktop-panel iframe{display:block;width:100%;height:min(76vh,820px);min-height:620px;border:0;background:#05070b}.lab-boot-card[hidden],.desktop-panel[hidden]{display:none!important}@media(max-width:760px){.desktop-panel iframe{height:68vh;min-height:480px}.desktop-panel-head{padding:15px}}
/* Locinode v0.8.2 - keep failed startup visible */
.lab-boot-card.is-failed #labBootMessage{color:var(--bad)}
.lab-boot-card.is-failed .lab-progress-track i{background:var(--bad)}
/* Locinode v0.8.4 adaptive guidance + activity + docs */
.guidance-title{align-items:flex-end;gap:18px}.guidance-title>div{display:grid;gap:4px}.guidance-select{display:grid;gap:5px;min-width:150px}.guidance-select span{font-size:9px;letter-spacing:.16em;color:var(--muted);font-weight:800}.guidance-select select{height:38px;background:var(--panel-2);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:0 10px;font:inherit;font-size:12px}.guidance-status{margin:13px 0 5px;color:var(--muted);font-size:12px}.guided-objectives li span{display:grid;gap:6px}.guided-objectives li span>strong{font-size:14px;color:var(--text)}.guided-objectives li small{color:var(--muted);line-height:1.55}.guided-objectives li em{font-style:normal;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.guided-objectives li code{display:block;padding:8px 10px;border:1px solid var(--line);background:rgba(0,0,0,.2);border-radius:7px;color:var(--text);white-space:pre-wrap}.guided-step.is-complete{opacity:.68}.guided-step.is-complete>b{color:var(--good);border-color:rgba(86,229,158,.35)}.guided-step.is-current{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:inset 3px 0 0 var(--accent)}.guidance-off,.guide-placeholder{opacity:.76}.activity-card{display:grid;gap:12px}.activity-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.activity-head small,.activity-privacy{color:var(--muted);font-size:10px;line-height:1.45}.activity-log{display:grid;gap:8px;max-height:310px;overflow:auto;padding-right:3px}.activity-item{position:relative;display:grid;grid-template-columns:1fr auto;gap:3px 10px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:rgba(0,0,0,.12)}.activity-item>span{font-size:9px;letter-spacing:.12em;color:var(--accent);font-weight:900}.activity-item p{grid-column:1/-1;margin:0;font-size:11px;line-height:1.4;color:var(--text)}.activity-item time{grid-column:2;grid-row:1;font-size:9px;color:var(--muted)}.activity-item.is-note{border-style:dashed}.activity-empty{font-size:11px;color:var(--muted)}.lab-note-form{display:grid;grid-template-columns:1fr auto;gap:8px}.lab-note-form input{min-width:0;height:40px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);color:var(--text)}.lab-note-form button{min-height:40px;padding-inline:12px}.docs-page{padding-top:42px;padding-bottom:70px}.docs-hero{max-width:850px;margin-bottom:28px}.docs-hero h1{font-size:clamp(38px,5vw,64px);margin:.25em 0}.docs-hero>p:last-child{color:var(--muted);font-size:15px;line-height:1.7}.docs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.docs-card{padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.docs-card>span{font-size:10px;letter-spacing:.16em;font-weight:900;color:var(--accent)}.docs-card h2{margin:10px 0 8px;font-size:19px}.docs-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}.docs-card b{color:var(--text)}
@media(max-width:760px){.guidance-title{align-items:stretch;flex-direction:column}.guidance-select{min-width:0}.docs-grid{grid-template-columns:1fr}.lab-note-form{grid-template-columns:1fr}}


/* v0.8.6 account security */
.auth-inline-actions{display:flex;justify-content:flex-end;margin-top:-6px}.security-copy{color:var(--muted);line-height:1.55}.security-card{margin-top:18px}.security-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.security-summary>div{border:1px solid var(--line);background:var(--panel-soft);padding:14px;display:grid;gap:4px}.security-summary span,.security-subhead{font-size:.72rem;letter-spacing:.11em;color:var(--muted)}.security-summary strong{font-size:1.05rem}.security-summary small{color:var(--muted)}.security-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 18px}.security-subhead{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:12px 0 8px;margin-top:10px}.security-session,.security-event{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:12px 0}.security-session>div{display:grid;gap:4px}.security-session small,.security-event time{color:var(--muted);font-size:.78rem}.security-event span{font-size:.8rem;font-weight:700;letter-spacing:.05em}.security-modal{max-width:520px}.security-dialog>p{color:var(--muted);line-height:1.55}.totp-qr{display:flex;justify-content:center;background:#fff;border-radius:10px;padding:12px;width:max-content;max-width:100%;margin:12px auto}.totp-qr img{width:240px;max-width:100%;height:auto;display:block}.totp-secret{display:block;text-align:center;overflow-wrap:anywhere;border:1px solid var(--line);background:var(--panel-soft);padding:10px;margin:10px 0 16px;letter-spacing:.08em}.recovery-code-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.recovery-code-grid code{display:block;text-align:center;border:1px solid var(--line);background:var(--panel-soft);padding:10px;font-size:.9rem}.danger-button.full{width:100%}@media(max-width:720px){.security-summary,.recovery-code-grid{grid-template-columns:1fr}.security-session{align-items:flex-start}.security-session button{flex:none}}

/* Locinode v0.9.0 starter track */
.starter-track-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:18px 0 24px;padding:18px 20px;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--line));border-radius:var(--radius);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,var(--panel)),var(--panel));box-shadow:var(--shadow)}.starter-track-banner>div{display:grid;gap:5px}.starter-track-banner span{font-size:9px;letter-spacing:.16em;font-weight:900;color:var(--accent)}.starter-track-banner strong{font-size:18px}.starter-track-banner p{margin:0;color:var(--muted);font-size:12px}.tag.starter{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));color:var(--accent);font-weight:900}.starter-card{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),var(--shadow)}
@media(max-width:700px){.starter-track-banner{align-items:stretch;flex-direction:column}.starter-track-banner button{width:100%}}


/* Locinode v0.9.0 deep guidance */
.guide-step-body{display:grid!important;gap:10px!important;width:100%}.guide-detail,.guide-tools,.guide-example,.guide-mistakes{display:grid;gap:5px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:8px;background:rgba(0,0,0,.10)}.guide-detail>span,.guide-tools>span,.guide-example>span,.guide-mistakes>span{font-size:9px;letter-spacing:.14em;font-weight:900;color:var(--accent);text-transform:uppercase}.guide-detail p,.guide-tools p{margin:0!important;color:var(--text)!important;font-size:12px!important;line-height:1.65!important}.guide-action{background:color-mix(in srgb,var(--accent) 5%,transparent)}.guide-success{border-color:color-mix(in srgb,var(--good) 35%,var(--line))}.guide-tools p{display:flex;flex-wrap:wrap;gap:6px}.guide-tools code{display:inline-block!important;padding:5px 7px!important;font-size:10px!important}.guide-example code{display:block;padding:10px!important;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.guide-mistakes ul{margin:0;padding-left:18px;color:var(--muted);font-size:11px;line-height:1.6}.guided-step.is-current{background:color-mix(in srgb,var(--accent) 3%,var(--panel))}.guided-step.is-complete .guide-detail,.guided-step.is-complete .guide-tools,.guided-step.is-complete .guide-example,.guided-step.is-complete .guide-mistakes{display:none}.guided-step.is-complete .guide-step-body{gap:3px!important}


/* Locinode v0.9.1-r5 workstation-window UX */
#desktopPanel{margin:16px 0 20px}
#desktopPanel #desktopFrame{display:none!important}
.desktop-window-launcher{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin-top:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-2)}
.desktop-window-launcher>div{display:grid;gap:4px}
.desktop-window-launcher strong{font-size:15px}
.desktop-window-launcher span{font-size:11px;color:var(--muted)}
#openDesktopWindow{white-space:nowrap}
@media(max-width:700px){.desktop-window-launcher{align-items:stretch;flex-direction:column}#openDesktopWindow{width:100%}}


/* Locinode v0.9.2 launch-stability UX */
.lab-action-stack{display:grid;gap:9px;margin-top:12px}
.lab-action-stack .workstation-open{font-weight:900}
.workstation-open:not([hidden]){display:flex;align-items:center;justify-content:center}
.workstation-open[hidden]{display:none!important}
#desktopPanel{display:none!important}
.lab-boot-card.is-failed{border-color:rgba(255,95,95,.45)}


/* Locinode v0.9.2-r2 workstation-top UX */
.mission-workstation-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0 18px;padding:15px 17px;border:1px solid var(--line-strong,var(--line));border-radius:var(--radius);background:var(--panel-2);position:sticky;top:8px;z-index:20;box-shadow:0 10px 26px rgba(0,0,0,.18)}
.mission-workstation-top[hidden]{display:none!important}
.mission-workstation-copy{display:grid;gap:3px;min-width:0}
.mission-workstation-copy strong{font-size:15px}
.mission-workstation-copy small{color:var(--muted);font-size:11px}
.mission-workstation-button{white-space:nowrap;text-decoration:none}
#desktopPanel{display:none!important}
#desktopFrame{display:none!important}
.workstation-open#openDesktop{display:none!important}
@media(max-width:700px){.mission-workstation-top{position:static;align-items:stretch;flex-direction:column}.mission-workstation-button{width:100%;display:flex;justify-content:center}}
/* End Locinode v0.9.2-r2 workstation-top UX */

/* Locinode v0.9.1 workstation window */
.lab-action-stack{display:grid;gap:9px;margin-top:12px}.lab-action-stack .workstation-open{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:color-mix(in srgb,var(--accent) 10%,var(--panel-2));font-weight:900}.lab-action-stack .workstation-open:not([hidden]){display:flex;align-items:center;justify-content:center}.workstation-open[hidden]{display:none!important}.desktop-panel{display:none!important}


/* Locinode v0.9.0-r3 external workstation launcher */
.workstation-launch{display:grid;gap:11px;margin:10px 0;padding:13px;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--line));border-radius:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 9%,var(--panel)),var(--panel))}.workstation-launch[hidden]{display:none!important}.workstation-launch-head{display:grid;gap:3px}.workstation-launch-head strong{font-size:13px;color:var(--text)}.workstation-launch-head small{font-size:10px;line-height:1.5;color:var(--muted)}.workstation-open{display:flex!important;align-items:center;justify-content:center;text-decoration:none!important;min-height:44px}.desktop-panel{display:none!important}

/* LOCINODE_ADSENSE_CONTENT_LAYER */
.public-learning-strip{width:min(1180px,calc(100% - 32px));margin:34px auto 50px;padding:28px;border:1px solid rgba(120,230,255,.28);border-radius:14px;background:rgba(120,230,255,.045)}
.public-learning-strip h2{margin:.45rem 0 .7rem;font-size:clamp(1.4rem,4vw,2.1rem)}
.public-learning-strip p{max-width:850px;line-height:1.65}
.public-learning-strip nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:17px}
.public-learning-strip nav a{padding:8px 11px;border:1px solid currentColor;border-radius:8px;text-decoration:none}

/* LOCINODE_HUMAN_FIRST_LEARNING_BEGIN */

.locinode-learn-nav {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
}

.learning-entry {
  width: min(1180px, calc(100% - 32px));
  margin: 28px auto 36px;
  padding: clamp(22px, 4vw, 40px);
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 22px;
  background:
    radial-gradient(circle at top right, rgba(56, 189, 248, .10), transparent 36%),
    rgba(8, 15, 28, .84);
  box-shadow: 0 18px 60px rgba(0, 0, 0, .20);
}

.learning-entry__intro {
  max-width: 820px;
}

.learning-entry__eyebrow {
  margin: 0 0 8px;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
  opacity: .78;
}

.learning-entry h2 {
  margin: 0 0 12px;
  font-size: clamp(1.55rem, 3vw, 2.45rem);
  line-height: 1.08;
}

.learning-entry__intro > p:not(.learning-entry__eyebrow) {
  margin: 0;
  max-width: 75ch;
  font-size: 1rem;
  line-height: 1.72;
  opacity: .88;
}

.learning-entry__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.learning-entry__primary,
.learning-entry__secondary {
  min-height: 44px;
  padding: 11px 16px;
  border-radius: 11px;
  text-decoration: none;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.learning-entry__primary {
  background: #e2e8f0;
  color: #07101d;
}

.learning-entry__secondary {
  border: 1px solid rgba(148, 163, 184, .35);
  color: inherit;
  background: rgba(255, 255, 255, .035);
}

.learning-entry__primary:hover,
.learning-entry__secondary:hover,
.learning-entry__card:hover {
  transform: translateY(-1px);
}

.learning-entry__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 26px;
}

.learning-entry__card {
  min-height: 168px;
  padding: 18px;
  border: 1px solid rgba(148, 163, 184, .18);
  border-radius: 15px;
  background: rgba(255, 255, 255, .028);
  color: inherit;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.learning-entry__card:hover {
  border-color: rgba(148, 163, 184, .38);
  background: rgba(255, 255, 255, .045);
}

.learning-entry__card > span {
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .13em;
  opacity: .58;
}

.learning-entry__card > strong {
  font-size: 1rem;
  line-height: 1.25;
}

.learning-entry__card > small {
  font-size: .86rem;
  line-height: 1.55;
  opacity: .76;
}

@media (max-width: 900px) {
  .learning-entry__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .learning-entry {
    width: min(100% - 20px, 1180px);
    margin-top: 16px;
    padding: 20px;
    border-radius: 17px;
  }

  .learning-entry__grid {
    grid-template-columns: 1fr;
  }

  .learning-entry__actions a {
    width: 100%;
  }
}

/* LOCINODE_HUMAN_FIRST_LEARNING_END */
