/* BYTEQUEST / REDLINE — original black-red tactical interface. No external fonts, assets or trackers. */
:root{
 color-scheme:dark;
 --bg:#09090c;--bg2:#101015;--panel:#16161d;--panel2:#1d1d26;
 --line:#33313c;--text:#f4f2f4;--dim:#aba8b4;--faint:#737a7f;
 --cyan:#6cb2e0;--blue:#459dd7;--green:#67d8ad;--pink:#87c0e6;
 --gold:#7dbbe4;--shadow:0 25px 65px #0008;
 --radius:10px;
 font-family:Inter,"Segoe UI",Arial,Helvetica,sans-serif;
}
html{background:#09090c}
body{background:var(--bg);color:var(--text)}
body:before{background:radial-gradient(ellipse at 90% -15%,#1b588030 0%,transparent 36%),radial-gradient(ellipse at 5% 100%,#1b3d5421,transparent 45%)}
::selection{background:#2b78ab;color:white}
:focus-visible{outline-color:#81bce4!important}
a{color:#8dc3e7}
.app-shell{grid-template-columns:254px minmax(0,1fr)}
.sidebar{background:linear-gradient(180deg,#121217 0%,#0c0c10 75%);border-color:#252a2d;padding:25px 14px 19px;gap:23px}
.sidebar:after{position:absolute;right:-1px;top:0;width:1px;height:180px;background:linear-gradient(#2a76a9,transparent);content:"";pointer-events:none}
.brand{padding:4px 8px 8px;gap:12px}
.brand-icon{width:49px;height:49px;border-radius:9px;background:linear-gradient(135deg,#3b98d6,#174c6f);border:1px solid #7ab9e37a;color:#fff;box-shadow:0 0 0 3px #2b89c81b,0 8px 22px #1e5f8b3e;letter-spacing:-.1em;font-size:22px}
.brand-icon span{color:#dcecf7}
.brand-text b{font-size:17px;letter-spacing:.13em;font-weight:850}
.brand-text small{font-size:9px;letter-spacing:.14em;color:#918d9a}
.side-section-label{color:#7e878d;padding-bottom:8px;border-bottom:1px solid #24292d;margin-bottom:-8px;letter-spacing:.16em}
.nav-stack{gap:5px}.nav-item{color:#a4acb2;border-radius:8px;padding:12px 13px;font-size:12px;gap:13px;letter-spacing:.01em;font-weight:650}
.nav-item:hover{background:#202529;color:#fff}
.nav-item.selected{background:linear-gradient(93deg,#1a3e56ad,#1922284a 80%);border-color:#2a5d7f8a;color:#9eccea}
.nav-item.selected:before{left:-1px;height:22px;width:3px;background:#63adde;border-radius:0 4px 4px 0;box-shadow:0 0 16px #499fd87d}
.nav-symbol{color:#a5adb2;font-size:18px;display:grid;place-items:center}
.nav-symbol svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;fill:none}
.nav-item.selected .nav-symbol{color:#76b7e2}
.nav-count{background:#233039;color:#a4cde9;border:1px solid #314755;border-radius:4px}
.side-bottom{border-radius:10px;background:#171b1d;border:1px solid #2d353b;padding:16px}
.avatar{background:#212e36;border:1px solid #33556b;border-radius:8px}
.player-mini small{color:#8e9498}.mini-level{color:#8bc2e6}.mini-progress-label{color:#aebac2}
.meter{background:#23292d;border-radius:2px;height:5px}
.meter>span{border-radius:2px;background:linear-gradient(90deg,#2372a6,#72b5e1);box-shadow:0 0 9px #3e99d645}
.side-bottom p{color:#767e84}
.topbar{background:#101014f2;border-color:#262b2f;padding:13px 37px;min-height:76px;position:relative}
.topbar:after{content:"";height:1px;position:absolute;bottom:-1px;left:0;width:24%;background:linear-gradient(90deg,#3997d5,transparent);pointer-events:none}
.online-dot{background:#6edcac;box-shadow:0 0 11px #4bd79a7a}
.sys-label{color:#b5bcc0;letter-spacing:.18em}
.top-sep{color:#395060}.breadcrumb{color:#8b9296}
.hud>span{background:#1b1920;border-color:#2b3338;border-radius:6px;color:#b8daf0;padding:8px 12px}
.coin{color:#83bee5!important}.energy{color:#b4d7ef!important}
.language-switch{background:#171a1c;border-color:#2a343a;border-radius:6px;padding:3px}
.language-switch button{border-radius:4px;color:#868c90}.language-switch button.active{background:#2b80b8;box-shadow:0 3px 9px #0006;color:#fff}
#content{width:min(1400px,100%);padding:32px 38px 60px}
.hero{border-radius:12px;border:1px solid #315065;min-height:358px;background:radial-gradient(circle at 83% 53%,#225a8048,transparent 37%),linear-gradient(115deg,#151d23 0%,#111518 52%,#100f13 100%);box-shadow:inset 0 1px #5b8eb030,0 21px 70px #0007}
.hero:after{content:"// BQ-OPS :: TRAINING SIMULATION";position:absolute;bottom:0;left:0;background:#2a7fb8;color:#fff;font:700 9px/1 monospace;letter-spacing:.16em;padding:11px 16px 10px;clip-path:polygon(0 0,100% 0,calc(100% - 9px) 100%,0 100%)}
.hero:before{background:linear-gradient(90deg,#74b6e20d 1px,transparent 1px),linear-gradient(0deg,#74b6e20d 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(90deg,transparent 40%,#000 100%);opacity:1}
.hero-copy{padding:39px 0 52px 41px}
.eyebrow{color:#99c9e9;font-size:10px;letter-spacing:.2em}.eyebrow-line{background:#70b4e1;width:24px}
.hero h1{font-size:clamp(35px,4.2vw,61px);font-weight:850;letter-spacing:-.057em;max-width:620px}
.hero p{color:#b2bac0;font-size:13px;line-height:1.9;max-width:500px}
.btn{border-radius:7px;min-height:45px;font-size:12px;letter-spacing:.012em;box-shadow:none;transition:transform .12s,border-color .12s,background .12s}
.btn.primary{background:#4ba0d9;border-color:#8bc2e6;color:#fff;box-shadow:0 6px 22px #2883bf3e}
.btn.primary:hover{background:#6bb1e0;box-shadow:0 8px 27px #409ad658}
.btn.ghost{color:#d7dde1;border-color:#405664;background:#1e2326}
.btn.ghost:hover{background:#25323b;border-color:#487ea2}
.btn.secondary{color:#d8ebf7;background:#1f2a32;border-color:#325268}
.btn.secondary:hover{background:#263946}
.btn.danger-btn{background:#1d3749;border-color:#36698b;color:#eaf4fa}
.hero-tags{color:#879ead;gap:14px;letter-spacing:.12em;margin-top:28px}
.hero-tags span{padding-right:13px;border-right:1px solid #304654}.hero-tags span:last-child{border-right:0}
.network-visual svg{filter:drop-shadow(0 0 23px #55a5db2c)}
.network-visual svg [stroke="#55d9ff"]{stroke:#5ca9dc}
.network-visual svg [stroke="#6adffd"]{stroke:#8ec3e7}
.network-visual svg [fill="#55d9ff"]{fill:#5daadd}
.network-visual svg [fill="#122b41"]{fill:#1a2a34}
.network-visual svg [fill="#d6fbff"]{fill:#d7eaf6}
.visual-grid{background:radial-gradient(circle,#5ba8dc22 1px,transparent 2px);background-size:21px 21px}
.visual-caption{color:#a3b0b9}.visual-caption span{color:#69dda9}
.stat-grid{gap:12px;margin:18px 0 39px}
.stat{min-height:108px;background:#17161c;border-color:#2b3034;border-radius:10px;position:relative;overflow:hidden}
.stat:before{content:"";position:absolute;height:2px;width:29px;background:#449cd7;top:0;left:0}
.stat-icon{border-radius:7px}.stat-icon.sky{background:#1c2d39;color:#8ec3e7}.stat-icon.purple{background:#212b32;color:#a3cbe6}.stat-icon.gold{background:#1c2a33;color:#8bc2e7}.stat-icon.rose{background:#1d3240;color:#8dc3e7}
.stat small{color:#a0a7ab}.stat strong{color:#f2f6f8;font-variant-numeric:tabular-nums}.stat em{color:#6c7276}
.section-head{margin-bottom:19px}.section-kicker{color:#71b4e1;letter-spacing:.2em;font-size:10px}
.section-head h2,.page-intro h1{font-weight:850;letter-spacing:-.05em}
.section-head p,.page-intro p{color:#9aa0a4}
.overall>span{color:#acbbc5}
.mission-grid,.academy-grid{gap:14px}
.mission-card{border-radius:10px;background:linear-gradient(155deg,#191d1f,#14141a);border:1px solid #30383d;min-height:231px;padding:20px 21px;--accent:#53a5db!important}
.mission-card:hover{border-color:#3b8abe;background:linear-gradient(155deg,#192025,#15191c)}
.mission-card:before{opacity:.035}
.theme-violet,.theme-green,.theme-rose,.theme-amber,.theme-blue,.theme-orange,.theme-gold{--accent:#58a7dc}
.mission-icon{background:#1f2d36;border:1px solid #314f63;border-radius:8px}
.status{background:#20262a;border-color:#325369;color:#a7d0ec;border-radius:4px}
.status.done{color:#83d8b1;background:#1e322a;border-color:#427b66}.status.locked{color:#858b8f;background:#222027;border-color:#384045}
.card-meta{color:#8ac1e6}.mission-card h3{font-weight:800;color:#eef2f4}.mission-card p{color:#9ba2a7}
.card-info{color:#969fa5}.card-info b{color:#d9ebf7}.card-go{background:#2c77a9;color:#fff;border:1px solid #60abdd;border-radius:6px}.card-go:not(:disabled):hover{background:#54a5db}
.learn-card-link{color:#c7e1f3;background:#1f2a31;border:1px solid #314857;border-radius:6px}.learn-card-link:hover{background:#293d4b}
.page-intro{border-bottom-color:#2b363d}
.unlock-note{background:#1c2124;border-color:#365264;color:#a7cee8;border-radius:8px}
.quest-sidebar{background:linear-gradient(160deg,#1a2329,#15141b 72%);border-color:#355265;border-radius:10px}
.text-back{color:#b6d8ef}.quest-illustration{background:radial-gradient(circle,#264255,#171f25)}.quest-rings{border-color:#4ea1d950}
.quest-sidebar h2{color:#fff}.quest-sidebar p,.mission-summary{color:#adb6bc}.micro-title,.mission-eyebrow{color:#96c8e9}
.game-area{background:#15141a;border-color:#313b42;border-radius:10px}
.quest-progress-top>span:first-child{color:#b6c8d4}.question-dots span{background:#2a3740}.question-dots span.passed{background:#7ebbe4}.question-dots span.active{background:#fff}
.question-type{color:#99c9e9}.question-box h1{color:#f2f4f6}
.answer{background:#1d1b24;border-color:#31383c;border-radius:8px;color:#e2e6e9}
.answer:hover:not(:disabled){border-color:#4882a8;background:#20272c}.answer.selected-answer{border-color:#61abdd;background:#20303a}
.letter{background:#272e33;color:#b8d6ea;border-color:#3b5769;border-radius:5px}
.answer.good{border-color:#56aa88;background:#192b25}.answer.bad{border-color:#4395cc;background:#1b2b36}
.hint-button{color:#abd3ed}.hint-box{background:#21262a;border-color:#354b5a;color:#d6e4ee}
.feedback{background:#1b2d27;border-color:#4b8a6b}.feedback.bad{background:#1d2a32;border-color:#406b87}
.feedback p{color:#dde4e9}.feedback-title{color:#9ee6bf}.feedback.bad .feedback-title{color:#afd5ee}
.terminal-wrap{border-color:#354b59;border-radius:8px}.terminal-header{background:#202b33;color:#adcce0}.terminal-body{background:#0d0d11;color:#8ce7b9}
.terminal-body input{color:#baf2d1}
.result-screen{background:radial-gradient(circle at 50% 4%,#1e3e54,#13181b 63%);border-color:#334a59;border-radius:13px}
.search-wrap,.glossary-card,.badge-card,.settings-card{background:#19171e;border:1px solid #313b42;border-radius:9px}
.search-wrap input,.field-row input{color:#eff2f4;background:#171b1d}.search-wrap>span,.glossary-index{color:#88c0e6}.glossary-pair strong+strong{color:#9ccae9}
.badge-card h3,.settings-card h3{color:#fff}.tag-status{color:#90ddb9}
.field-row input{border-color:#384b58;border-radius:6px}.app-footer{border-color:#262b2f;color:#707a81}
.toast{background:#53a4da;border:1px solid #9fcdeb;color:#fff;border-radius:7px}
/* v2 learning surfaces */
.academy-statline{color:#b7d8ee}.academy-statline span{background:#1b2023;border-color:#344551;border-radius:5px}
.academy-cta{background:linear-gradient(108deg,#1a2228,#171b1d);border-color:#344b5a;border-radius:10px;box-shadow:none}
.academy-cta.alt{background:linear-gradient(108deg,#1e2327,#17151c);border-color:#323d45}
.academy-cta b{color:#edf2f5}.academy-cta p{color:#a9b1b7}
.academy-card{background:linear-gradient(145deg,#1b1f22,#14141a);border-color:#313d45;border-radius:10px;position:relative;overflow:hidden}
.academy-card:hover{border-color:#489dd5;background:#1b2125}
.academy-card:before{content:"";position:absolute;height:2px;width:38px;left:21px;top:0;background:#53a4da}
.academy-card .big{filter:grayscale(.2)}.academy-card h3{color:#fff}.academy-card p{color:#9fa6aa}
.lesson-sidebar,.lesson-content{background:#19171e;border-color:#324049;border-radius:10px}
.lesson-sidebar>b{color:#c9e0f0}.lesson-side-link{border-radius:6px;color:#a0aeb7;background:#1e2327;border-color:#303f49}
.lesson-side-link.selected{background:#203747;border-color:#407da6;color:#d2e7f5}
.lesson-tag,.ai-step-label{color:#9ac9e9}
.lesson-content h2{color:#f2f4f6}.lesson-content .lesson-paragraph{color:#c6cdd1}
.example-card{background:#20262a;border-color:#375a71;border-radius:8px}.example-card p{color:#c7d3db}
.ai-form,.library-panel{background:#19171e;border-color:#324049;border-radius:10px}
.provider-row input,.ai-consent input{accent-color:#5ba8dc}
.ac-label{color:#cbd6dd}.ai-form input[type="password"],.ai-form input[type="text"],.ai-form textarea{background:#111015;border-color:#354957;border-radius:7px;color:#f0f4f6}
.ai-small,.upload-pad small{color:#9ba3a9}
.upload-pad{background:#191e21;border-color:#435f72;border-radius:8px}.upload-pad:hover{background:#212e36;border-color:#58a7dc}
.ai-photo{border-color:#3b596d;border-radius:7px}.ai-error{background:#223745;border-color:#4985ad;color:#e4f1f9}
.library-panel h2 small,.library-panel .academy-card small{color:#99a6af}
.vocab-chips>div{background:#20272c;border-color:#385263;border-radius:7px}.vocab-chips small{color:#abbcc7}
.ai-warn{background:#1c2931;color:#b0d5ee}
.ai-consent{background:#1b2125;border-color:#415562;border-radius:7px;color:#c8d5de}
.lab-shell{background:radial-gradient(circle at 45% 10%,#203442,#15141b 65%);border-color:#3b5261;border-radius:11px}
.lab-network,.lab-device{border-color:#374b59}.lab-device{background:#1a2024;border-radius:7px}.lab-device:hover{background:#202e37;border-color:#55a5db}
.lab-log,.lab-console{background:#0f0e13;border-color:#344856;border-radius:7px}
/* Professional details, no heavy gradients, accents only where they communicate structure. */
.btn:disabled,.card-go:disabled{filter:grayscale(.5);opacity:.55}
@media (max-width:1250px){.app-shell{grid-template-columns:216px minmax(0,1fr)}#content{padding:26px 27px 52px}.topbar{padding:13px 26px}}
@media (max-width:960px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid #273239;padding:14px 19px 12px}.sidebar:after{display:none}.nav-stack{padding-bottom:3px}.brand{padding:0 4px}.topbar{padding:12px 22px}}
@media (max-width:690px){#content{padding:17px 14px 35px}.hero{border-radius:9px}.hero-copy{padding:28px 22px 51px}.hero h1{font-size:36px}.hero-tags{gap:7px}.hero-tags span{padding-right:7px;font-size:8px}.stat-grid{gap:9px}.stat{border-radius:8px}.academy-card,.mission-card,.academy-cta,.ai-form,.library-panel{border-radius:8px}.topbar{padding:9px 13px}.nav-item{min-width:76px}.nav-item .nav-symbol{font-size:16px}.nav-symbol svg{width:21px;height:21px}}
@media (max-width:960px){
  .app-shell{grid-template-columns:minmax(0,1fr)}
  .sidebar{min-width:0;max-width:100%;overflow:hidden}
  .nav-stack{width:100%;max-width:100%;min-width:0;flex:0 0 100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#355b74 #121619}
  .main-column{min-width:0;max-width:100%}
}
