pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}:root{color-scheme:dark;font-family:Inter,system-ui,sans-serif;--purple: #5b2d8e;--pink: #e91e8c;--bg-primary: #0f0f0f;--bg-page-start: #111827;--bg-page-mid: #0f0f0f;--bg-page-end: #111018;--bg-card: #1a1a2e;--text-primary: #f0f0f0;--text-secondary: #9ca3af;--surface: #1a1a2e;--surface-2: #151522;--text: #f0f0f0;--muted: #9ca3af;--border: rgba(255, 255, 255, .08);--soft-border: rgba(255, 255, 255, .12);--panel-bg: linear-gradient(180deg, rgba(26, 26, 46, .9), rgba(18, 18, 30, .9));--subtle-bg: rgba(255, 255, 255, .035);--interactive-bg: rgba(255, 255, 255, .045);--code-bg: #0c0f14;--scroll-track: rgba(255, 255, 255, .06);--glow: rgba(233, 30, 140, .28);--page-background: radial-gradient(circle at 18% 8%, rgba(91, 45, 142, .32), transparent 30%), radial-gradient(circle at 85% 4%, rgba(233, 30, 140, .16), transparent 24%), linear-gradient(180deg, var(--bg-page-start) 0%, var(--bg-page-mid) 34%, var(--bg-page-end) 100%);--page-background-size: auto;background:var(--bg-primary);color:var(--text-primary)}body.theme-light{color-scheme:light;--bg-primary: #f8f8f8;--bg-page-start: #ffffff;--bg-page-mid: #f8f8f8;--bg-page-end: #f3f0f7;--bg-card: #ffffff;--text-primary: #1a1a1a;--text-secondary: #555555;--surface: #ffffff;--surface-2: #f1eef7;--text: #1a1a1a;--muted: #555555;--border: rgba(0, 0, 0, .08);--soft-border: rgba(0, 0, 0, .12);--panel-bg: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(248, 248, 248, .96));--subtle-bg: rgba(91, 45, 142, .045);--interactive-bg: rgba(255, 255, 255, .78);--code-bg: #151923;--scroll-track: rgba(0, 0, 0, .08);--page-background: linear-gradient(118deg, rgba(91, 45, 142, .08) 0%, rgba(91, 45, 142, 0) 34%), linear-gradient(252deg, rgba(233, 30, 140, .075) 0%, rgba(233, 30, 140, 0) 30%), conic-gradient(from 215deg at 76% 10%, rgba(233, 30, 140, .1), rgba(255, 255, 255, 0) 18%, rgba(91, 45, 142, .08) 33%, rgba(255, 255, 255, 0) 52%), linear-gradient(180deg, #ffffff 0%, #fbf8f3 44%, #f7f4fb 100%);--page-background-size: 145% 145%, 150% 150%, 135% 135%, 100% 100%;animation:pageBackgroundDrift 24s ease-in-out infinite alternate}*{box-sizing:border-box}html{scrollbar-width:none}body{margin:0;min-width:1120px;background:var(--page-background);background-attachment:fixed;background-size:var(--page-background-size);color:var(--text);transition:background-color .3s ease,color .3s ease}body::-webkit-scrollbar{display:none}button,textarea{font:inherit}code,pre{font-family:JetBrains Mono,ui-monospace,monospace}.scroll-frame{position:fixed;z-index:20;overflow:hidden;background:var(--scroll-track)}.scroll-frame span{display:block;border-radius:inherit;background:linear-gradient(90deg,var(--purple),var(--pink))}.view-controls{position:fixed;top:18px;right:18px;z-index:60;display:flex;gap:8px;padding:6px;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 84%,transparent);box-shadow:0 18px 60px #00000038;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.view-toggle{display:inline-flex;align-items:center;gap:8px;min-height:34px;border:1px solid transparent;border-radius:999px;padding:7px 11px;color:var(--text);background:transparent;cursor:pointer;transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease}.view-toggle:hover,.view-toggle:focus-visible{transform:translateY(-1px);border-color:#e91e8c47;background:var(--subtle-bg);outline:none}.view-toggle__icon{display:grid;place-items:center;width:18px;height:18px;color:#f0b5d7}.view-toggle__icon svg{width:18px;height:18px}.view-toggle__label{font-size:12px;font-weight:800}body.theme-light .view-controls{box-shadow:0 18px 54px #5b2d8e24}body.theme-light .ezus-logo{filter:none}body.theme-light .candidate-badge{border-color:transparent;box-shadow:none}body.theme-light .eyebrow,body.theme-light .section-kicker{color:#5b2d8e}body.theme-light .hero__meta span{color:#34303d;background:#ffffffb8}body.theme-light .step-label{color:#5b2d8e;background:#5b2d8e1a;border-color:#e91e8c3d}body.theme-light .decision-matrix{background:linear-gradient(rgba(0,0,0,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.045) 1px,transparent 1px),#ffffff94;background-size:50% 50%,50% 50%,auto}body.theme-light .scenario-detail,body.theme-light .generation-status{background:#e91e8c0e}body.theme-light .scenario-detail__label,body.theme-light .timeline span,body.theme-light .sql-explanation__title,body.theme-light .view-toggle__icon{color:#9d1b67}body.theme-light .node rect{fill:#5b2d8e1a;stroke:#e91e8c75}body.theme-light .timeline:before{background:#00000014}body.theme-light .limit-grid p:before{color:#9d1b67;background:#e91e8c1f}body.theme-light mark{color:#6c174d;background:#e91e8c24}body.theme-light .copy-btn{color:#1a1a1a;background:#ffffffeb;border-color:#0000001f}body.theme-light .mic-btn,body.theme-light .lock-btn:hover,body.theme-light .lock-btn:focus-visible,body.theme-light .lock-btn.unlocked{color:#9d1b67}body.theme-light .bonus-transition span:nth-child(3){border-color:#00000014}.scroll-frame--top,.scroll-frame--bottom{left:0;right:0;height:4px}.scroll-frame--top{top:0}.scroll-frame--bottom{bottom:0}.scroll-frame--top span,.scroll-frame--bottom span{height:100%;transform:scaleX(var(--scroll-progress, 0))}.scroll-frame--top span{transform-origin:left;background:linear-gradient(90deg,var(--purple),var(--pink))}.scroll-frame--bottom span{transform-origin:right;background:linear-gradient(90deg,var(--pink),var(--purple))}.scroll-frame--right,.scroll-frame--left{top:0;bottom:0;width:4px;height:100vh}.scroll-frame--right{right:0}.scroll-frame--left{left:0}.scroll-frame--right span,.scroll-frame--left span{height:100%;transform:scaleY(var(--scroll-progress, 0))}.scroll-frame--right span{transform-origin:top;background:linear-gradient(180deg,var(--pink),var(--purple))}.scroll-frame--left span{transform-origin:bottom;background:linear-gradient(180deg,var(--purple),var(--pink))}.hero,.section{width:min(1160px,calc(100% - 96px));margin:0 auto}.hero{min-height:92vh;padding:34px 0 72px;display:flex;flex-direction:column}.hero__top{display:flex;align-items:center}.ezus-logo{position:fixed;top:24px;left:46px;z-index:60;width:136px;height:auto;filter:brightness(1.4)}.candidate-badge{position:relative;display:inline-flex;align-items:center;gap:0;min-height:34px;border:1px solid transparent;border-radius:999px;color:var(--text);text-decoration:none;background:transparent;cursor:pointer;transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.candidate-badge:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;z-index:-1;border-radius:inherit;opacity:0;background:linear-gradient(135deg,#5b2d8eb3,#e91e8cb3);filter:blur(10px);transition:opacity .18s ease}.candidate-badge:hover,.candidate-badge:focus-visible{transform:translateY(-1px);border-color:#e91e8c47;background:var(--subtle-bg);box-shadow:0 12px 34px #5b2d8e29;outline:none}.candidate-badge:hover:before,.candidate-badge:focus-visible:before{opacity:.42}.candidate-badge__name{display:block;line-height:1;padding:0 11px}.candidate-badge__name{font-size:14px;font-weight:700}.candidate-badge__drop{display:grid;place-items:center;width:0;height:24px;margin-left:0;margin-right:0;border-radius:50%;color:#fff;background:#0a66c2;transform:translate(8px) scale(.48);transform-origin:right center;opacity:0;transition:width .22s ease,margin-left .22s ease,margin-right .22s ease,transform .22s cubic-bezier(.2,.8,.2,1),opacity .16s ease}.candidate-badge__drop:before{content:"";position:absolute;right:-5px;width:11px;height:11px;border-radius:50%;background:#0a66c2;transform:scaleX(.82)}.candidate-badge__drop svg{position:relative;z-index:1;width:14px;height:14px}.candidate-badge:hover .candidate-badge__drop,.candidate-badge:focus-visible .candidate-badge__drop{width:24px;margin-left:9px;margin-right:2px;opacity:1;transform:translate(0) scale(1)}.hero__content{margin-top:auto;max-width:880px}.eyebrow,.section-kicker{margin:0 0 14px;color:#d8c4f0;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}h1,h2,h3,h4{font-family:Sora,Inter,sans-serif;letter-spacing:0}h1{margin:0;font-size:68px;line-height:1.02;max-width:980px}.hero__lead{margin:26px 0 0;max-width:720px;color:var(--muted);font-size:19px;line-height:1.7}.hero__meta{display:flex;gap:10px;margin-top:52px}.hero__meta span{border:1px solid var(--border);border-radius:999px;padding:9px 14px;color:#d7d9e2;background:var(--subtle-bg)}.section{padding:86px 0}.section__header{max-width:830px;margin-bottom:28px}.section__header h2,.voice-module h2{margin:0;font-size:42px}.section__header p:not(.section-kicker),.panel__heading p,.voice-intro{color:var(--muted);font-size:17px;line-height:1.7}.panel{margin-top:22px;padding:28px;border:1px solid var(--border);border-radius:8px;background:var(--panel-bg);box-shadow:0 24px 90px #0003}.scroll-story{min-height:clamp(620px,78vh,780px);display:flex;flex-direction:column;justify-content:center;transition:opacity .28s ease,transform .28s ease,border-color .28s ease,box-shadow .28s ease;will-change:transform,opacity}body.presentation-mode .scroll-story,body.presentation-mode #section-2-1,body.presentation-mode #section-2-2{min-height:175vh;margin:clamp(18px,3vh,34px) auto}body.presentation-mode .scroll-story,body.presentation-mode #section-2-1,body.presentation-mode #section-2-2{display:block;padding:0;border:0;background:transparent;box-shadow:none;overflow:visible}body.presentation-mode .scroll-story.limits{background:transparent}body.presentation-mode .story-card{position:sticky;top:calc((100vh - clamp(620px,78vh,780px))/2);display:flex;flex-direction:column;justify-content:center;min-height:clamp(620px,78vh,780px);padding:28px;border:1px solid var(--border);border-radius:8px;background:var(--panel-bg);box-shadow:0 24px 90px #0003;will-change:transform,opacity}body.presentation-mode #section-2-1 .story-card,body.presentation-mode #section-2-2 .story-card{min-height:clamp(560px,72vh,720px);top:calc((100vh - clamp(560px,72vh,720px))/2)}.scroll-story .panel__heading{margin-bottom:clamp(24px,4vh,42px)}.scroll-story--qualification .qualification-grid,.scroll-story--decision .decision-layout,.scroll-story--model .data-model,.scroll-story--workflow .timeline,.scroll-story--limits .limit-grid{transform-origin:center center}.panel__heading{display:flex;gap:18px;align-items:flex-start;margin-bottom:24px}.panel__heading h3{margin:0;font-size:25px}.panel__heading p{margin:8px 0 0}.step-label{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:8px;background:#5b2d8e38;border:1px solid rgba(233,30,140,.22);color:#f2d9eb;font-weight:800}.qualification-grid,.limit-grid,.schema-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.qual-card,.table-card{min-height:210px;padding:22px;border:1px solid var(--border);border-radius:8px;background:var(--subtle-bg);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;will-change:transform,opacity}.qual-card:hover,.table-card:hover,.scenario:hover,.generate-btn:hover{transform:translateY(-3px);border-color:#e91e8c61;box-shadow:0 14px 50px #5b2d8e38}.icon{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:linear-gradient(135deg,var(--purple),var(--pink));color:#fff;font-weight:800}.qual-card h4,.table-card h4,.query-card h4{margin:18px 0 10px;font-size:18px}ul{margin:0;padding-left:18px;color:var(--muted);line-height:1.65}.decision-layout{display:grid;grid-template-columns:1.45fr .8fr;gap:22px}.decision-matrix{position:relative;min-height:360px;border:1px solid var(--border);border-radius:8px;background:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:50% 50%;overflow:hidden}.decision-line{position:absolute;z-index:0;display:block;background:linear-gradient(90deg,var(--purple),var(--pink));opacity:.7;transform-origin:left top;will-change:transform,opacity}.decision-line--x{left:32px;right:32px;bottom:42px;height:2px;transform:scaleX(0)}.decision-line--y{left:32px;top:32px;bottom:42px;width:2px;transform:scaleY(0);background:linear-gradient(180deg,var(--purple),var(--pink))}.axis{position:absolute;color:var(--muted);font-size:13px;font-weight:700}.axis-y{top:18px;left:18px}.axis-x{right:18px;bottom:18px}.scenario{position:absolute;z-index:1;width:230px;min-height:86px;padding:16px;border:1px solid var(--border);border-radius:8px;color:var(--text);text-align:left;background:color-mix(in srgb,var(--bg-card) 78%,transparent);cursor:pointer;transition:.18s ease;will-change:transform,opacity}.scenario strong,.scenario span{display:block}.scenario span{margin-top:6px;color:var(--muted);font-size:14px}.scenario.active{border-color:#e91e8cb8;box-shadow:0 0 0 1px #e91e8c29,0 18px 70px #e91e8c29}.scenario-1{left:42px;bottom:56px}.scenario-2{left:42px;top:62px}.scenario-3{right:50px;top:62px}.scenario-detail{align-self:stretch;padding:24px;border-radius:8px;border:1px solid rgba(233,30,140,.24);background:#e91e8c0e}.scenario-detail__label{margin:0 0 28px;color:#f0b5d7;text-transform:uppercase;font-size:12px;font-weight:800}.scenario-detail h4{margin:0 0 12px;font-size:24px}.scenario-detail p:last-child{color:var(--muted);line-height:1.7}.data-model{display:grid;grid-template-columns:1fr 330px;gap:22px;align-items:center}.data-model svg{width:100%;border:1px solid var(--border);border-radius:8px;background:var(--subtle-bg)}.node{will-change:transform,opacity}.edge{fill:none;stroke:url(#edgeGradient);stroke-width:3;stroke-dasharray:400;stroke-dashoffset:400;will-change:stroke-dashoffset}.node rect{fill:#5b2d8e38;stroke:#e91e8c66;stroke-width:1.5}.node text{fill:var(--text);text-anchor:middle;font:700 20px Sora,sans-serif}.node-small{fill:var(--muted)!important;font:500 13px JetBrains Mono,monospace!important}.constraint{border-left:3px solid var(--pink);padding:20px;background:var(--subtle-bg);border-radius:0 8px 8px 0}.constraint p,.limit-grid p,.table-card p{color:var(--muted);line-height:1.65}.timeline{list-style:none;margin:0;padding:0;display:grid;gap:12px;position:relative}.timeline:before,.timeline:after{content:"";position:absolute;left:44px;top:18px;bottom:18px;width:2px;border-radius:999px}.timeline:before{background:#ffffff14}.timeline:after{z-index:0;display:block;background:linear-gradient(180deg,var(--purple),var(--pink));transform:scaleY(var(--timeline-progress, 0));transform-origin:top;will-change:transform}.timeline li{position:relative;z-index:1;display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:center;padding:16px;border-radius:8px;background:var(--subtle-bg);border:1px solid var(--border);will-change:transform,opacity}.timeline span{color:#f0b5d7;font-weight:800;font-family:JetBrains Mono,monospace}.timeline p{margin:0;color:var(--muted);line-height:1.6}.limits{position:relative;z-index:2;margin-top:22px;background:var(--panel-bg)}body.theme-light .limits{background:linear-gradient(180deg,#fffffffb,#faf7fcfb)}body.reading-mode .decision-line--x{transform:scaleX(1)}body.reading-mode .decision-line--y,body.reading-mode .timeline:after{transform:scaleY(1)}body.reading-mode .edge{stroke-dashoffset:0}body.reading-mode .scroll-story,body.reading-mode #section-2-1{opacity:1;transform:none}#sql{padding-top:clamp(120px,18vh,220px)}#section-2-1,#section-2-2{min-height:clamp(620px,76vh,780px);display:flex;flex-direction:column;justify-content:center;will-change:transform,opacity}.limit-grid{grid-template-columns:repeat(2,1fr)}.limit-grid p{margin:0;padding:18px;border-radius:8px;border:1px solid var(--border);background:var(--subtle-bg);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;will-change:transform,opacity}body.theme-light .limit-grid p{background:#ffffffd1}.limit-grid p:before{content:"!";display:inline-grid;place-items:center;width:18px;height:18px;margin-right:8px;border-radius:50%;color:#ffd8ee;background:#e91e8c2e;font-size:12px;font-weight:800}.limit-grid p:hover{transform:translateY(-3px);border-color:#e91e8c47;box-shadow:0 14px 44px #5b2d8e29}.limit-grid p:hover:before{animation:warningPulse .52s ease}.schema-grid{grid-template-columns:repeat(2,1fr)}.table-card{min-height:138px}.table-card h4{margin-top:0}mark{color:#ffd8ee;background:#e91e8c3d;border-radius:4px;padding:0 4px;background-size:0 100%;background-image:linear-gradient(90deg,#e91e8c57,#5b2d8e57);background-repeat:no-repeat}.query-stack{display:grid;gap:22px;padding:8px 0}.query-card{padding:22px;border:1px solid var(--border);border-radius:8px;background:var(--subtle-bg);will-change:transform,opacity,border-color,box-shadow}#section-2-2 .query-card{transform-origin:center center}#section-2-2 .query-card:hover{border-color:#e91e8c52;box-shadow:0 14px 44px #5b2d8e29}.query-card h4{margin-top:0}pre{position:relative;margin:16px 0 0;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:var(--code-bg)}pre code.hljs,pre code{display:block;padding:20px;overflow-x:auto;font-size:14px;line-height:1.65}.copy-btn{position:absolute;top:10px;right:10px;z-index:2;opacity:0;transform:translateY(-4px);border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:7px 10px;color:var(--text);background:var(--interactive-bg);cursor:pointer;transition:.16s ease}pre:hover .copy-btn,.copy-btn:focus-visible{opacity:1;transform:translateY(0)}.bonus{padding-top:clamp(120px,16vh,200px);padding-bottom:110px}.bonus-transition{width:min(760px,calc(100% - 96px));height:160px;margin:40px auto -70px;display:grid;place-items:center;position:relative}.bonus-transition span{position:absolute;display:block;width:44px;height:44px;border:1px solid rgba(233,30,140,.2);border-radius:50%;background:#e91e8c0b;animation:quietPulse 2.8s ease-in-out infinite}.bonus-transition span:nth-child(2){width:86px;height:86px;border-color:#5b2d8e33;background:#5b2d8e09;animation-delay:.22s}.bonus-transition span:nth-child(3){width:132px;height:132px;border-color:#ffffff14;background:transparent;animation-delay:.44s}.bonus-divider{display:flex;align-items:center;gap:16px;margin-bottom:26px;color:var(--muted);font-size:13px}.bonus-divider:before,.bonus-divider:after{content:"";flex:1;height:1px;background:var(--border)}.voice-module{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:30px;padding:30px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--bg-card) 90%,transparent);box-shadow:0 24px 90px #00000038}.voice-controls{display:grid;grid-template-columns:58px 42px minmax(170px,max-content) minmax(0,1fr);gap:14px;align-items:center}.mic-btn{position:relative;display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(233,30,140,.3);border-radius:50%;color:#f5d4e7;background:#e91e8c14;cursor:pointer;transition:.18s ease}.mic-btn:after{content:"";position:absolute;top:-9px;right:-9px;bottom:-9px;left:-9px;border:1px solid rgba(233,30,140,.35);border-radius:50%;opacity:0;transform:scale(.72)}.mic-btn svg{width:22px;height:22px}.mic-btn.listening{animation:pulse 1.4s ease-in-out infinite;background:#e91e8c38}.mic-btn.listening:after{animation:soundWave 1.35s ease-out infinite}textarea{grid-column:2 / -1;grid-row:1;width:100%;resize:vertical;border:1px solid var(--border);border-radius:8px;padding:14px 16px;color:var(--text);background:color-mix(in srgb,var(--bg-card) 82%,transparent);line-height:1.55}textarea:focus,.lock-panel input:focus{outline:2px solid rgba(233,30,140,.35)}.access-lock{position:relative;grid-column:2;grid-row:2;align-self:center;justify-self:start;width:42px}.lock-btn{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.12);border-radius:50%;color:var(--muted);background:var(--interactive-bg);cursor:pointer;transition:transform .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.lock-btn:hover,.lock-btn:focus-visible{transform:translateY(-2px);border-color:#e91e8c57;color:#f5d4e7;box-shadow:0 12px 36px #5b2d8e33}.lock-btn.unlocked{color:#f5d4e7;border-color:#e91e8c6b;background:#e91e8c1c;animation:unlockPop .26s ease}.lock-icon{width:19px;height:19px;grid-area:1 / 1;transition:opacity .16s ease,transform .16s ease}.lock-icon--open,.lock-btn.unlocked .lock-icon--closed{opacity:0;transform:scale(.78) rotate(-10deg)}.lock-btn.unlocked .lock-icon--open{opacity:1;transform:scale(1) rotate(0)}.lock-panel{position:absolute;z-index:8;left:0;bottom:calc(100% + 10px);display:flex;align-items:center;gap:8px;width:290px;padding:10px;border:1px solid rgba(233,30,140,.2);border-radius:8px;background:color-mix(in srgb,var(--bg-card) 96%,transparent);box-shadow:0 18px 60px #00000061}.lock-panel[hidden]{display:none}.lock-panel input{min-width:0;flex:1;border:1px solid var(--border);border-radius:8px;padding:11px 13px;color:var(--text);background:color-mix(in srgb,var(--bg-card) 88%,transparent)}.lock-panel input::placeholder{color:#9ca3afb8}.lock-panel button{border:1px solid rgba(233,30,140,.34);border-radius:8px;padding:11px 12px;color:var(--text);background:#e91e8c29;cursor:pointer}.generate-btn{position:relative;z-index:1;grid-column:3;grid-row:2;margin-left:0;justify-self:start;min-height:42px;border:1px solid rgba(233,30,140,.34);border-radius:8px;padding:11px 16px;color:var(--text);background:linear-gradient(135deg,#5b2d8edb,#e91e8ca8);cursor:pointer;transition:.18s ease}.generate-btn:disabled{opacity:.68;cursor:wait}.compatibility{grid-column:2;color:var(--muted);min-height:22px;margin:8px 0 0}.generation-status{grid-column:1 / -1;display:flex;align-items:center;gap:12px;min-height:52px;padding:14px 16px;border:1px solid rgba(233,30,140,.18);border-radius:8px;color:#d7d9e2;background:#e91e8c0e}.generation-status[hidden]{display:none}.generation-status span{width:18px;height:18px;border:2px solid rgba(255,255,255,.2);border-top-color:var(--pink);border-radius:50%;animation:spin .82s linear infinite}.generation-status p{margin:0;color:var(--muted)}.result-block{grid-column:1 / -1;min-width:0;margin-top:4px}.result-block pre{margin-top:0;border-color:#e91e8c2e;box-shadow:inset 0 1px #ffffff0a}.result-block pre code{min-height:96px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;overflow:visible}.sql-explanation{margin-top:14px;padding:18px;border:1px solid var(--border);border-radius:8px;background:var(--subtle-bg)}.sql-explanation__title{margin:0 0 10px;color:#f0b5d7;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.sql-explanation ul{display:grid;gap:8px;margin:0}.reveal{opacity:0;transform:translateY(20px);transition:opacity .52s ease var(--reveal-delay),transform .52s ease var(--reveal-delay)}.reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes pulse{0%,to{box-shadow:0 0 #e91e8c5c}50%{box-shadow:0 0 0 12px #e91e8c00}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes unlockPop{50%{transform:scale(1.08)}}@keyframes warningPulse{50%{transform:scale(1.18);box-shadow:0 0 0 7px #e91e8c14}}@keyframes soundWave{0%{opacity:.7;transform:scale(.72)}to{opacity:0;transform:scale(1.36)}}@keyframes quietPulse{0%,to{opacity:.32;transform:scale(.92)}50%{opacity:.78;transform:scale(1)}}@keyframes pageBackgroundDrift{0%{background-position:0% 0%,100% 0%,50% 0%,0% 0%}to{background-position:12% 5%,84% 10%,46% 7%,0% 0%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
