.mini-nav{display:flex;align-items:center;gap:22px}.mini-nav a{color:var(--muted);font:600 11px DM Mono,monospace;text-decoration:none;text-transform:uppercase}.mini-nav a:hover{color:var(--lime)}
.sql-hero{min-height:calc(100vh - 76px);padding:clamp(56px,7vw,92px) clamp(24px,6vw,76px) 42px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);gap:56px;align-items:center;overflow:hidden}.sql-hero>*{position:relative;z-index:1;min-width:0}.sql-hero h1{margin:0;color:var(--paper);font:800 clamp(58px,8vw,124px)/.86 Manrope,sans-serif;text-transform:uppercase}.sql-hero h1 span{color:#4da3ff}.hero-lead{max-width:720px;margin:28px 0 0;color:#c7cbc4;font-size:clamp(18px,1.8vw,24px);line-height:1.55}.hero-lead span{display:block}.hero-actions{margin-top:34px;display:flex;gap:12px;flex-wrap:wrap}.button{min-height:48px;padding:0 18px;display:inline-flex;align-items:center;border:1px solid var(--line);font:700 11px DM Mono,monospace;text-decoration:none;text-transform:uppercase}.button.primary{background:var(--lime);border-color:var(--lime);color:var(--ink)}.button.ghost{color:var(--paper)}.button:hover{transform:translateY(-2px)}
.score-preview{width:100%;border:1px solid rgba(77,163,255,.42);background:rgba(8,11,16,.78);box-shadow:0 28px 80px rgba(0,0,0,.35)}.score-top{height:48px;padding:0 18px;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,.12);color:var(--muted);font:500 11px DM Mono,monospace}.score-top span{width:10px;height:10px;border-radius:50%;background:#4da3ff}.score-top span:nth-child(2){background:#ffb14a}.score-top span:nth-child(3){background:var(--lime)}.score-top b{margin-left:10px;font-weight:500}.score-flow{padding:24px;display:grid;gap:14px}.score-flow article{padding:18px;display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:center;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.035)}.score-flow b{width:46px;height:42px;display:grid;place-items:center;background:var(--lime);color:var(--ink);font:800 12px DM Mono,monospace}.score-flow span{color:var(--paper);font-weight:800}.hero-index{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.hero-index span{padding-top:18px;color:var(--muted);font:500 11px DM Mono,monospace;text-transform:uppercase}.hero-index b{display:block;color:var(--lime);font:800 28px Manrope,sans-serif}
.section{padding:clamp(58px,7vw,96px) clamp(24px,6vw,76px);overflow:hidden}.section>*{min-width:0}.section-heading{max-width:980px}.section-heading h2{margin:0;color:var(--ink);font:800 clamp(36px,4.8vw,66px)/.98 Manrope,sans-serif;text-transform:uppercase;overflow-wrap:break-word}.section-heading p:not(.eyebrow){max-width:860px;color:#4f544d;font-size:17px;line-height:1.72}.section-heading.inverted h2{color:var(--paper)}.section-heading.inverted p:not(.eyebrow){color:#c3c9c1}.intro-section,.schema-section{background:var(--paper)}.game-section,.scoring-section{background:var(--ink);color:var(--paper)}
.intro-grid{margin-top:36px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.intro-grid article{padding:26px;border:1px solid var(--dark-line);background:#fff}.intro-grid span{color:#4da3ff;font:800 11px DM Mono,monospace;text-transform:uppercase}.intro-grid h3{margin:16px 0 10px;font-size:22px}.intro-grid p{margin:0;color:#50564f;line-height:1.62}
.challenge-strip{margin-top:34px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.challenge-button{min-height:118px;padding:18px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--paper);cursor:pointer;text-align:left}.challenge-button.active,.challenge-button:hover{border-color:var(--lime);background:rgba(200,255,61,.08)}.challenge-button b{display:block;color:var(--lime);font:800 10px DM Mono,monospace;text-transform:uppercase}.challenge-button span{display:block;margin-top:10px;font-size:18px;font-weight:800}.challenge-button small{display:block;margin-top:8px;color:#b8bdb4;line-height:1.45}
.builder-shell{margin-top:24px;display:grid;grid-template-columns:minmax(260px,.78fr) minmax(420px,1.35fr) minmax(250px,.65fr);gap:16px}.palette-panel,.workspace-panel,.score-panel{min-width:0;border:1px solid var(--line);background:rgba(255,255,255,.035)}.palette-panel{padding:18px}.palette-tools{display:grid;gap:12px}.palette-tools label{display:grid;gap:8px}.palette-tools span{color:var(--lime);font:800 10px DM Mono,monospace;text-transform:uppercase}.palette-tools input,.palette-tools select{min-height:44px;padding:0 12px;border:1px solid var(--line);background:#070a0f;color:var(--paper);outline:0}.token-palette{margin-top:18px;display:grid;gap:9px;max-height:620px;overflow:auto;padding-right:4px}.token,.query-token{min-width:0;padding:10px 11px;border:1px solid rgba(255,255,255,.16);background:#10151d;color:var(--paper);cursor:pointer;font:800 11px DM Mono,monospace;text-align:left}.token:hover,.query-token:hover{border-color:var(--lime);color:var(--lime)}.token small{display:block;margin-top:6px;color:var(--muted);font:500 10px Manrope,sans-serif}.token[data-type="keyword"]{border-color:rgba(77,163,255,.42)}.token[data-type="function"]{border-color:rgba(200,255,61,.42)}.token[data-type="column"]{border-color:rgba(255,177,74,.42)}.token[data-type="table"]{border-color:rgba(255,92,77,.42)}
.workspace-panel{padding:20px}.workspace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.workspace-header h3{margin:4px 0 0;font-size:24px}.workspace-actions{display:flex;gap:8px}.workspace-actions button,.code-heading button{min-height:36px;padding:0 11px;border:1px solid var(--line);background:transparent;color:var(--paper);cursor:pointer;font:800 10px DM Mono,monospace;text-transform:uppercase}.workspace-actions button:hover,.code-heading button:hover{background:var(--lime);border-color:var(--lime);color:var(--ink)}.drop-zone{margin-top:18px;min-height:220px;padding:16px;display:flex;align-content:flex-start;gap:10px;flex-wrap:wrap;border:1px dashed rgba(200,255,61,.45);background:#070a0f}.drop-zone.drag-over{background:rgba(200,255,61,.08)}.drop-placeholder{margin:0;color:#8f958c}.query-token{display:inline-flex;align-items:center;gap:9px}.query-token button{width:18px;height:18px;border:0;background:var(--lime);color:var(--ink);cursor:pointer;font:800 11px Arial}.query-output{margin-top:18px;border:1px solid var(--line);background:#070a0f}.code-heading{min-height:46px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);color:var(--muted);font:800 10px DM Mono,monospace;text-transform:uppercase}.query-output pre{margin:0;padding:20px;min-height:140px;overflow:auto;color:#f7f6ef;font:500 13px/1.65 DM Mono,Consolas,monospace}
.score-panel{padding:18px}.score-card{padding:22px;border:1px solid rgba(200,255,61,.38);background:#070a0f}.score-card span,.score-card small{display:block;color:var(--muted);font:800 10px DM Mono,monospace;text-transform:uppercase}.score-card strong{display:block;margin:8px 0;color:var(--paper);font-size:26px}.score-card b{display:block;color:var(--lime);font:800 62px/.95 Manrope,sans-serif}.score-meter{height:10px;margin:14px 0 18px;background:#20262d}.score-meter i{display:block;width:0;height:100%;background:var(--lime);transition:.2s ease}.feedback-list{display:grid;gap:10px}.feedback{padding:12px;border:1px solid var(--line);color:#c7cbc4;font-size:13px;line-height:1.45}.feedback.good{border-color:rgba(200,255,61,.42)}.feedback.warn{border-color:rgba(255,177,74,.45)}
.schema-grid{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.schema-grid article{padding:22px;border:1px solid var(--dark-line);background:#fff}.schema-grid b{display:block;margin-bottom:14px;color:#4da3ff;font-size:22px}.schema-grid span{display:inline-flex;margin:0 6px 8px 0;padding:6px 8px;border:1px solid var(--dark-line);font:800 10px DM Mono,monospace}
.rules-grid{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.rules-grid article{padding:22px;border:1px solid var(--line);background:rgba(255,255,255,.04)}.rules-grid b{color:var(--lime);font:800 22px DM Mono,monospace}.rules-grid h3{margin:14px 0 8px;font-size:22px}.rules-grid p{margin:0;color:#c7cbc4;line-height:1.6}.rules-grid code,.section-heading code{font-family:DM Mono,Consolas,monospace}
footer{padding:28px clamp(24px,6vw,76px);display:flex;justify-content:space-between;align-items:center;gap:22px;background:var(--ink);color:var(--paper);border-top:1px solid var(--line)}footer p{margin:0;color:var(--muted);font-size:13px}footer>a:last-child{color:var(--lime);font:700 10px DM Mono,monospace;text-decoration:none;text-transform:uppercase}.toast{position:fixed;left:50%;bottom:24px;z-index:2000;min-width:150px;padding:14px 18px;opacity:0;pointer-events:none;transform:translate(-50%,12px);background:var(--lime);color:var(--ink);box-shadow:0 22px 50px rgba(0,0,0,.25);font:800 11px DM Mono,monospace;text-align:center;text-transform:uppercase;transition:.22s ease}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:1160px){.sql-hero,.builder-shell{grid-template-columns:1fr}.score-preview{max-width:760px}.challenge-strip,.rules-grid{grid-template-columns:repeat(2,1fr)}.schema-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){html,body,main{width:100%;max-width:100%;overflow-x:hidden}.mini-nav{display:none}.sql-hero{width:100%;max-width:100vw;min-height:auto;padding:48px 20px 42px;grid-template-columns:minmax(0,1fr);gap:30px}.sql-hero>*{width:calc(100vw - 40px);max-width:calc(100vw - 40px)}.sql-hero h1{font-size:48px}.hero-lead{font-size:17px}.hero-actions,.challenge-strip,.intro-grid,.hero-index,.schema-grid,.rules-grid{display:grid;grid-template-columns:1fr}.button{justify-content:center}.score-flow article{grid-template-columns:52px minmax(0,1fr)}.hero-index span{padding:14px 0;border-top:1px solid var(--line)}.section{width:100%;max-width:100vw;padding:48px 20px}.section-heading h2{font-size:30px}.builder-shell{grid-template-columns:1fr}.workspace-header{display:grid}.workspace-actions{display:grid}.workspace-actions button{width:100%}.token-palette{max-height:360px}.drop-zone{min-height:180px}.score-card b{font-size:52px}footer{width:100%;max-width:100vw;flex-direction:column;align-items:flex-start}}
.score-flow article{grid-template-columns:58px minmax(0,1fr)}.score-flow span{min-width:0;overflow-wrap:break-word}
