:root{--c-night: #0a0f1a;--c-ocean: #0f1a2c;--c-ocean-2: #16273f;--c-ocean-3: #1e3350;--c-wood: #2a180c;--c-wood-2: #3c2413;--c-wood-edge: #5a3a20;--c-parchment: #e9d7ab;--c-parchment-2: #dcc48d;--c-parchment-3: #cdb083;--c-ink: #3b2a16;--c-ink-soft: #63481f;--c-gold: #d9a93f;--c-gold-bright: #f0c86a;--c-gold-deep: #a3742a;--c-rust: #a63d2a;--c-rust-bright: #c9573f;--c-text-light: #ecdfb9;--c-text-dim: #c0ac95;--font-title: "Cinzel", "Trajan Pro", "Georgia", serif;--font-hero-body: "EB Garamond", "Georgia", serif;--font-display: "Pirata One", "Georgia", serif;--font-journal: "IM Fell English", "Georgia", serif;--font-body: "Alegreya", "Georgia", serif;--font-mono: ui-monospace, "Cascadia Code", "Consolas", "Courier New", monospace;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 48px;--space-6: 72px;--space-7: 112px;--radius-1: 6px;--radius-2: 12px;--shadow-panel: 0 18px 44px rgba(0, 0, 0, .55);--shadow-lift: 0 8px 22px rgba(0, 0, 0, .45);--content-width: 1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);font-size:17px;line-height:1.65;color:var(--c-text-light);background:var(--c-night);overflow-x:hidden}#root{display:flex;flex-direction:column;min-height:100dvh;overflow:hidden}main{flex:1 0 auto}img,svg{max-width:100%}::selection{background:var(--c-gold);color:var(--c-night)}:focus-visible{outline:3px solid var(--c-gold-bright);outline-offset:3px;border-radius:4px}.icon{width:20px;height:20px;flex-shrink:0}.section-inner{max-width:var(--content-width);margin:0 auto;padding:var(--space-7) clamp(16px,5vw,48px)}.section-title{font-family:var(--font-display);font-weight:400;font-size:clamp(2.4rem,5vw,3.6rem);letter-spacing:.02em;line-height:1.05;text-align:center;margin:0 0 var(--space-2)}.section-title-light{color:var(--c-gold);text-shadow:0 2px 18px rgba(217,169,63,.25)}.section-lead{max-width:640px;margin:0 auto var(--space-5);text-align:center;color:var(--c-text-dim);font-size:1.1rem}.parchment{position:relative;color:var(--c-ink);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E") 0 0 / 150px 150px repeat,radial-gradient(ellipse at 18% 12%,rgba(120,85,40,.14),transparent 50%),radial-gradient(ellipse at 85% 84%,rgba(120,85,40,.16),transparent 46%),radial-gradient(ellipse at 55% 40%,rgba(255,246,214,.55),transparent 75%),linear-gradient(160deg,var(--c-parchment) 0%,var(--c-parchment-2) 55%,var(--c-parchment-3) 100%);background-blend-mode:soft-light,normal,normal,normal,normal;border-radius:2% 5% 3% 6%/5% 3% 6%;box-shadow:inset 0 0 70px #5c3d1652,0 26px 52px -18px #0000009e}.wood-panel{background:repeating-linear-gradient(90deg,rgba(0,0,0,.18) 0 2px,transparent 2px 9px),repeating-linear-gradient(0deg,rgba(255,255,255,.02) 0 1px,transparent 1px 28px),linear-gradient(180deg,var(--c-wood-2),var(--c-wood));border:1px solid var(--c-wood-edge);border-radius:var(--radius-2);box-shadow:var(--shadow-lift),inset 0 1px #f0c86a1f}.nav{position:absolute;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:8px clamp(16px,4vw,40px);background:transparent}.nav-brand{display:flex;align-items:center;gap:10px;min-height:44px;font-family:var(--font-display);font-size:1.45rem;letter-spacing:.04em;text-transform:uppercase;color:var(--c-gold-bright);background:none;border:none;cursor:pointer;padding:4px 8px}.nav-logo{width:auto;height:40px;flex-shrink:0;filter:drop-shadow(0 2px 5px rgba(0,0,0,.55))}.nav-burger{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;color:var(--c-gold-bright);background:none;border:none;cursor:pointer}.nav-burger-icon{width:26px;height:26px}.nav-links{display:flex;gap:4px;list-style:none;margin:0;padding:0}.nav-link{font-family:var(--font-body);font-size:1rem;color:var(--c-text-light);background:none;border:none;padding:10px 14px;min-height:44px;border-radius:var(--radius-1);cursor:pointer;transition:color .2s ease}.nav-link:hover{color:var(--c-gold-bright);text-decoration:underline;text-underline-offset:4px}@media(max-width:760px){.nav-burger{display:inline-flex}.nav-links{position:absolute;top:100%;right:clamp(16px,4vw,40px);flex-direction:column;gap:2px;min-width:180px;padding:8px;background:linear-gradient(180deg,var(--c-wood-2),var(--c-wood));border:1px solid var(--c-gold-deep);border-radius:var(--radius-2);box-shadow:var(--shadow-panel)}.nav-links:not(.is-open){display:none}.nav-link{display:block;width:100%;text-align:left}}.nav-auth{display:flex;align-items:center;gap:4px}.nav-profile{position:relative;display:inline-flex}.nav-user{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.85rem;color:var(--c-gold-bright)}.nav-user-caret{font-size:.7em}.nav-profile-menu{position:absolute;top:100%;right:0;min-width:140px;margin-top:4px;padding:6px;background:linear-gradient(180deg,var(--c-wood-2),var(--c-wood));border:1px solid var(--c-gold-deep);border-radius:var(--radius-2);box-shadow:var(--shadow-panel);z-index:30}.nav-profile-menu .nav-link{display:block;width:100%;text-align:left}@media(max-width:760px){.nav-auth{margin-top:4px}.nav-profile{display:block;width:100%}.nav-profile-menu{position:static;margin-top:2px;padding:0;background:none;border:none;box-shadow:none}}.auth-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;display:flex;align-items:center;justify-content:center;padding:clamp(16px,6vw,48px);background:#0d0804a3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.auth-card{position:relative;width:100%;max-width:380px;padding:clamp(24px,5vw,36px);background:linear-gradient(180deg,var(--c-wood-2),var(--c-wood));border:1px solid var(--c-gold-deep);border-radius:var(--radius-2);box-shadow:var(--shadow-panel)}.auth-close{position:absolute;top:12px;right:12px;display:inline-flex;padding:8px;color:var(--c-text-dim);background:none;border:none;cursor:pointer;transition:color .2s ease}.auth-close:hover{color:var(--c-gold-bright)}.auth-kicker{margin:0;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold-deep)}.auth-title{margin:4px 0 var(--space-3);font-family:var(--font-display);font-size:1.9rem;color:var(--c-text-light)}.auth-form{display:flex;flex-direction:column;gap:var(--space-2)}.auth-field{display:flex;flex-direction:column;gap:6px;font-family:var(--font-body);font-size:.85rem;color:var(--c-text-dim)}.auth-input{padding:12px 14px;font-family:var(--font-mono);font-size:1rem;color:var(--c-text-light);background:#1a1108;border:1px solid var(--c-wood-edge);border-radius:var(--radius-1)}.auth-input:focus-visible{outline:2px solid var(--c-gold-bright);outline-offset:2px}.auth-error{margin:0;padding:10px 12px;font-family:var(--font-mono);font-size:.82rem;color:#ffe0d6;background:#a63d2a3d;border:1px solid var(--c-rust);border-radius:var(--radius-1)}.auth-submit{min-height:46px;margin-top:var(--space-1);font-family:var(--font-display);font-size:1.2rem;color:var(--c-night);background:var(--c-gold);border:none;border-radius:var(--radius-1);cursor:pointer;transition:background-color .2s ease}.auth-submit:hover:not(:disabled){background:var(--c-gold-bright)}.auth-submit:disabled{opacity:.6;cursor:default}.auth-switch{margin:var(--space-3) 0 0;font-family:var(--font-body);font-size:.88rem;color:var(--c-text-dim);text-align:center}.auth-switch-btn{font:inherit;color:var(--c-gold-bright);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.hero{position:relative;z-index:4;min-height:100dvh;display:flex;align-items:center;justify-content:center;overflow:visible;padding:92px 16px 0}.hero-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:linear-gradient(180deg,#04070cb3,#04070c29 26%,#04070c4d 60%,#06090eeb),url(/assets/pirate_background.webp);background-size:cover,cover;background-position:center,center;background-repeat:no-repeat,no-repeat}.hero-scroll{position:relative;z-index:2;width:100%;aspect-ratio:1501 / 704;margin-top:-80px;background:url(/assets/pirate_scrollribbon.webp) center / 100% 100% no-repeat;filter:drop-shadow(0 26px 44px rgba(0,0,0,.6))}.hero-scroll-inner{position:absolute;left:19%;right:19%;top:35%;bottom:11%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(2px,.9vh,10px);text-align:center}.hero-title{margin:0;line-height:1}.hero-title-img{display:block;width:clamp(220px,42vw,560px);max-width:100%;height:auto;filter:drop-shadow(0 3px 8px rgba(0,0,0,.35))}.hero-sub{max-width:65%;margin:clamp(4px,1vh,10px) 0 0;font-family:var(--font-hero-body);font-weight:400;font-size:clamp(.78rem,1.2vw,1.02rem);line-height:1.34;letter-spacing:0;color:#000}.hero-sub-em{font-weight:600;letter-spacing:.06em;color:#000}.btn-plaque{position:relative;margin-top:-20px;width:35%;aspect-ratio:1501 / 704;border:none;background:url(/assets/pirate_button.webp) center / contain no-repeat;cursor:pointer;display:grid;place-items:center;filter:drop-shadow(0 8px 14px rgba(0,0,0,.55));transition:transform .16s ease,filter .16s ease}.btn-plaque-face{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-title);font-weight:700;font-size:clamp(.92rem,1.9vw,1.5rem);letter-spacing:.16em;text-transform:uppercase;text-indent:.16em;color:var(--c-gold-bright);text-shadow:0 1px 2px rgba(0,0,0,.9),0 2px 6px rgba(0,0,0,.7),0 0 16px rgba(217,169,63,.3);pointer-events:none}.btn-plaque-icon{width:clamp(18px,2vw,26px);height:auto;color:var(--c-gold-bright)}.btn-plaque:hover{transform:translateY(-2px) scale(1.02);filter:drop-shadow(0 12px 18px rgba(0,0,0,.6)) brightness(1.08)}.btn-plaque:active{transform:translateY(1px) scale(.99)}.hero-foreground{position:absolute;left:0;right:0;bottom:-130px;width:85%;height:auto;z-index:1;pointer-events:none;-webkit-user-select:none;user-select:none}.hero-scroll-cue{position:absolute;left:0;right:0;bottom:clamp(14px,3vh,34px);z-index:4;margin:0;text-align:center;font-family:var(--font-hero-body);font-style:italic;font-size:clamp(.85rem,1.4vw,1.05rem);letter-spacing:.04em;color:var(--c-text-dim);text-shadow:0 2px 8px rgba(0,0,0,.9);pointer-events:none;animation:cueFloat 3s ease-in-out infinite}.hero-scroll-cue-mark{display:block;margin-bottom:4px;color:var(--c-gold);opacity:.85}@keyframes cueFloat{0%,to{transform:translateY(0);opacity:.65}50%{transform:translateY(6px);opacity:1}}@media(max-width:860px){.hero-scroll{width:100%;max-width:560px;aspect-ratio:auto;margin-top:-32px;background:url(/assets/scroll_forphone.webp) center / 100% 100% no-repeat}.hero-scroll-inner{position:static;padding:19% 19% 13%;gap:10px}.hero-title-img{margin-left:7px;width:min(98%,420px)}.hero-sub{max-width:90%;font-size:clamp(.9rem,3.4vw,1.05rem)}.btn-plaque{width:min(72%,300px);margin-top:4px}.hero-foreground{width:100%;bottom:-50px}}@media(prefers-reduced-motion:reduce){.hero-scroll-cue{animation:none}}.btn-voyage{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:14px 34px;font-family:var(--font-display);font-size:1.5rem;letter-spacing:.05em;color:var(--c-parchment);background:linear-gradient(180deg,var(--c-wood-edge),var(--c-wood));border:2px solid var(--c-gold-deep);border-radius:10px;box-shadow:0 6px #1a0e05,0 12px 24px #00000080,inset 0 1px #f0c86a59;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.btn-voyage:hover:not(:disabled){transform:translateY(-2px);border-color:var(--c-gold);box-shadow:0 8px #1a0e05,0 16px 30px #0000008c,inset 0 1px #f0c86a80}.btn-voyage:active:not(:disabled){transform:translateY(2px);box-shadow:0 3px #1a0e05,0 8px 16px #00000080}.btn-voyage:disabled{opacity:.45;cursor:not-allowed}.btn-voyage-icon{width:24px;height:24px;color:var(--c-gold-bright)}.btn-voyage-small{min-height:48px;padding:10px 26px;font-size:1.2rem}.story{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:clamp(24px,4vw,56px);min-height:100vh}.story:after{content:"";position:absolute;top:0;left:0;right:0;bottom:-10vw;background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.5) 82%,#000 100%),url(/assets/BACKGROUNDREAL.webp) center bottom / cover no-repeat;-webkit-mask:url(/assets/BACKGROUNDREAL.webp) center bottom / cover no-repeat;mask:url(/assets/BACKGROUNDREAL.webp) center bottom / cover no-repeat;z-index:0;pointer-events:none}.story:before{content:"";position:absolute;top:0;left:0;right:0;height:100px;background:linear-gradient(180deg,#191410 0%,transparent 100%);pointer-events:none;z-index:1}.story-copy{position:relative;z-index:2;max-width:560px;margin-left:clamp(24px,6vw,96px);padding:clamp(40px,8vh,96px) clamp(20px,4vw,36px);transform:translateY(30px) rotate(-2deg)}.story-copy-title{margin:0 0 var(--space-3);font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,4vw,3rem);letter-spacing:.02em;line-height:1.1;color:#000}.story-copy-text{margin:0 0 var(--space-3);font-family:var(--font-hero-body);font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.7;color:#000}.story-copy .btn-plaque{width:min(45%,380px);margin-top:var(--space-3)}.story-aside{position:relative;z-index:2;max-width:480px;margin-right:clamp(24px,6vw,96px);padding:clamp(40px,8vh,96px) clamp(20px,4vw,36px);transform:translateY(calc(30px - 15%)) rotate(2deg);color:#000}.story-aside-title{margin:0 0 var(--space-3);font-family:var(--font-display);font-weight:400;font-size:clamp(1.7rem,3.2vw,2.6rem);letter-spacing:.02em;line-height:1.1}.story-aside-list{margin:0;padding-left:1.1em;font-family:var(--font-hero-body);font-size:clamp(1.02rem,1.4vw,1.2rem);line-height:1.6}.story-aside-list li{margin-bottom:var(--space-2)}@media(max-width:900px){.story{flex-direction:column;justify-content:center}.story-copy,.story-aside{margin-left:0;margin-right:0;max-width:min(560px,90vw)}}.voyages{position:relative;background:url(/assets/bluebgnew.webp) center center / cover no-repeat var(--c-night)}.voyages:after{content:"";position:absolute;left:0;right:0;bottom:0;aspect-ratio:1407 / 263;background:url(/assets/Piratedesk.webp) bottom center / cover no-repeat;pointer-events:none;z-index:1}.voyages .section-inner{position:relative;z-index:3;padding-top:var(--space-3);padding-bottom:3vw}.voyages .section-title,.voyages .section-lead{transform:translateY(55px)}.voyage-map{--scroll-scale: 1.5;width:min(calc(100% * var(--scroll-scale)),94vw);margin-inline:calc((100% - min(calc(100% * var(--scroll-scale)),94vw))/2);aspect-ratio:1408 / 768;display:flex;padding:clamp(48px,7vw,92px);background:url(/assets/SCROLL_LEVEL.webp) center / 100% 100% no-repeat;border-radius:0;box-shadow:none;will-change:transform}.voyage-grid{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);flex:1;gap:var(--space-3);margin:0;padding:0}.voyage-card{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:12% 12% 12% calc(12% + 20px);font-family:var(--font-body);color:var(--c-ink);background:url(/assets/LEVELS.webp) center / 100% 100% no-repeat;border:none;transform:scale(1.1);filter:drop-shadow(0 6px 12px rgba(0,0,0,.6));cursor:pointer;transition:transform .18s ease,filter .18s ease}.voyage-card.is-open:hover{transform:translateY(-4px) rotate(-.4deg) scale(1.1);filter:drop-shadow(0 12px 16px rgba(0,0,0,.7))}.voyage-card.is-selected{filter:drop-shadow(0 0 7px var(--c-rust)) drop-shadow(0 8px 12px rgba(0,0,0,.6))}.voyage-card.is-shaking{animation:chestShake .5s ease}@keyframes chestShake{0%,to{transform:translate(0)}20%{transform:translate(-7px) rotate(-1deg)}40%{transform:translate(6px) rotate(1deg)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.voyage-chest{position:relative;width:150px}.chest-svg{display:block;width:100%;height:auto;filter:drop-shadow(0 5px 5px rgba(0,0,0,.45))}.voyage-level{font-family:var(--font-journal);text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;color:var(--c-rust)}.voyage-name{font-family:var(--font-display);font-weight:400;font-size:1.35rem;line-height:1.1;letter-spacing:.02em;text-align:center}.voyage-concept{font-family:var(--font-mono);font-weight:700;font-size:.78rem;letter-spacing:.06em;color:var(--c-ink-soft)}.voyage-difficulty{display:inline-flex;gap:4px}.voyage-skull{width:16px;height:16px;filter:drop-shadow(0 .5px .5px rgba(30,15,5,.4))}.voyage-skull.is-on{color:var(--c-rust)}.voyage-skull.is-off{color:#5a3c1940;filter:none}.voyage-skull.is-off .skull-body{stroke:#5a3c1947}.voyage-skull.is-off .skull-socket{fill:#5a3c194d}.voyage-skull.is-off .skull-teeth{display:none}.voyage-status{font-size:.8rem;font-style:italic;color:var(--c-ink-soft)}.voyage-briefing-slot{margin-top:var(--space-4)}.voyage-locked-note{text-align:center;font-style:italic;color:var(--c-rust-bright);margin:0 0 var(--space-2)}.voyage-briefing{max-width:640px;margin:0 auto;padding:var(--space-4);text-align:center}.voyage-briefing-label{font-family:var(--font-journal);text-transform:uppercase;letter-spacing:.28em;font-size:.75rem;color:var(--c-gold);margin:0 0 6px}.voyage-briefing-title{font-family:var(--font-display);font-weight:400;font-size:1.9rem;color:var(--c-parchment);margin:0 0 6px}.voyage-briefing-meta{color:var(--c-text-dim);margin:0 0 var(--space-2)}.voyage-briefing-meta strong{color:var(--c-gold-bright)}.voyage-briefing-text{color:var(--c-text-light);margin:0 0 var(--space-3)}.voyage-briefing-soon{font-size:.85rem;font-style:italic;color:var(--c-text-dim);margin:10px 0 0}.walkthrough,.walkthrough-page{position:relative;background:linear-gradient(180deg,var(--c-night) 0%,var(--c-ocean) 55%,var(--c-night) 100%);padding-bottom:10vw}.walkthrough{background:linear-gradient(180deg,#120c06ad,#0a07046b 0%),url(/assets/BACKGROUND3.webp) center calc(100% + 80px) / cover no-repeat;margin-top:-12vw;padding-top:6vw;padding-bottom:8vw}.walkthrough .section-inner{padding-top:0}.walkthrough-intro{max-width:720px;margin:0 auto;padding:60px 80px;background:radial-gradient(ellipse at center,rgba(8,6,4,.5) 0%,rgba(8,6,4,.28) 38%,transparent 68%);transform:translateY(90px)}.walkthrough .walkthrough-cta{margin-top:0vw}.walkthrough .btn-plaque{width:min(38%,360px);margin-top:0}.walkthrough-cta{display:flex;justify-content:center}.walkthrough-lessons{list-style:none;display:flex;flex-direction:column;gap:var(--space-4);max-width:720px;margin:0 auto var(--space-5);padding:0}.lesson{padding:clamp(20px,4vw,36px) clamp(20px,5vw,44px)}.lesson-step{margin:0 0 4px;font-family:var(--font-journal);text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;color:var(--c-rust)}.lesson-clause{font-family:var(--font-mono);font-weight:700;letter-spacing:.04em}.lesson-title{margin:0 0 var(--space-1);font-family:var(--font-display);font-weight:400;font-size:clamp(1.6rem,3vw,2.1rem);letter-spacing:.02em;line-height:1.1;color:var(--c-ink)}.lesson-what{margin:0 0 var(--space-2)}.lesson-editor{display:block;width:100%;margin:0 0 var(--space-1);padding:14px 18px;resize:vertical;font-family:var(--font-mono);font-size:.92rem;line-height:1.55;color:var(--c-parchment);background:#1e1408eb;border:1px solid var(--c-wood-edge);border-radius:var(--radius-1)}.lesson-actions{display:flex;gap:10px;margin-bottom:var(--space-2)}.lesson-btn{min-height:44px;padding:8px 26px;font-family:var(--font-body);font-weight:700;font-size:.95rem;letter-spacing:.04em;color:var(--c-parchment);background:linear-gradient(180deg,var(--c-wood-edge),var(--c-wood));border:1px solid var(--c-gold-deep);border-radius:var(--radius-1);cursor:pointer;transition:transform .16s ease,border-color .16s ease}.lesson-btn:hover{transform:translateY(-1px);border-color:var(--c-gold)}.lesson-btn-ghost{color:var(--c-ink);background:none;border-color:var(--c-ink-soft)}.lesson-returns{margin:0 0 var(--space-2);font-size:.92rem;font-style:italic;color:var(--c-ink-soft)}.lesson-error{margin:0 0 var(--space-2);font-weight:700;color:var(--c-rust)}.lesson-empty{margin:0 0 var(--space-2);font-style:italic;color:var(--c-ink-soft)}.lesson-result-scroll{margin:0 0 var(--space-2);overflow-x:auto}.lesson-result{width:100%;border-collapse:collapse;background:#fff8e080;font-size:.95rem}.lesson-result th{font-family:var(--font-journal);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;text-align:left;color:var(--c-ink-soft)}.lesson-result th,.lesson-result td{padding:8px 12px;border:1px solid rgba(90,60,25,.35)}.lesson-analogy{margin:0;padding-top:var(--space-2);border-top:1px dashed rgba(90,60,25,.45);font-family:var(--font-hero-body);font-size:1.05rem}.lesson-analogy strong{color:var(--c-rust)}.footer{position:relative;overflow:visible;background:linear-gradient(180deg,#120c06bd,#0a0704d1),url(/assets/pirate_room.webp) center / cover no-repeat;padding:clamp(90px,16vw,80px) clamp(24px,6vw,64px) var(--space-6)}.footer-foreground{position:absolute;top:-8vw;left:0;right:0;width:100%;height:32vw;object-fit:cover;object-position:center top;z-index:10;pointer-events:none;-webkit-user-select:none;user-select:none}.footer-scroll{position:relative;z-index:2;width:100%;max-width:780px;margin:0 auto;aspect-ratio:1456 / 720;background:url(/assets/FOOTER_SCROLL.webp) center / 100% 100% no-repeat}.footer-scroll:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:#000;opacity:.1;-webkit-mask:url(/assets/FOOTER_SCROLL.webp) center / 100% 100% no-repeat;mask:url(/assets/FOOTER_SCROLL.webp) center / 100% 100% no-repeat;pointer-events:none}.footer-scroll-inner{position:absolute;left:13%;right:13%;top:40%;bottom:13%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(6px,1.4vh,16px);text-align:center}.footer-motto{font-family:var(--font-journal);font-style:italic;font-size:1.3rem;color:var(--c-ink);margin:0}.footer-sub{color:var(--c-ink-soft);margin:0}.footer-link{color:var(--c-rust);font-weight:600;text-decoration:underline;text-underline-offset:2px}.footer-link:hover{color:var(--c-rust-bright)}.footer-top{min-height:44px;padding:8px 4px;font-family:var(--font-body);font-size:.95rem;color:var(--c-ink);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease,text-decoration-thickness .2s ease}.footer-top:hover{color:var(--c-rust);text-decoration-thickness:2px}.footer-fine{margin:0;font-size:.8rem;font-style:italic;color:var(--c-ink-soft)}@media(max-width:600px){.footer-scroll{aspect-ratio:auto}.footer-scroll-inner{position:static;padding:38% 14% 13%}}@media(max-width:860px){.section-inner{padding:var(--space-6) clamp(16px,5vw,40px)}.voyage-map{aspect-ratio:auto;display:block;padding:clamp(40px,8vw,64px)}.voyage-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:none}}@media(max-width:560px){.section-inner{padding:var(--space-5) clamp(14px,5vw,28px)}}@media(max-width:460px){.nav-brand{font-size:1.15rem}.nav-logo{height:32px}}.voyage-dim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:#08050380}.voyage-slot.is-diving{position:relative;z-index:2;filter:drop-shadow(0 0 14px rgba(240,200,106,.6)) drop-shadow(0 0 42px rgba(217,169,63,.35))}.dive-fade{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:radial-gradient(ellipse at 50% 45%,#1c1109,#0d0704 72%)}.dive-dust{position:absolute;border-radius:50%;background:var(--c-gold-bright);box-shadow:0 0 6px #f0c86acc}.level-page{position:relative;height:100dvh;display:flex;align-items:stretch;background:url(/assets/bluebgnew.webp) center center / cover no-repeat var(--c-night);overflow:hidden}.level-sidebar{flex:0 0 clamp(210px,20vw,270px);display:flex;flex-direction:column;gap:4px;padding:clamp(18px,1.8vw,26px);border-radius:0;border-width:0 1px 0 0;box-shadow:8px 0 26px #00000073}.level-main{flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center;gap:clamp(16px,2vw,28px);padding:clamp(20px,4vw,56px);overflow-y:auto}.level-main.is-split{align-items:stretch}.level-main.is-split .level-panel{width:auto;flex:1 1 0;min-height:0;max-width:720px;max-height:100%}.level-sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:var(--space-2)}.level-sidebar-titles{min-width:0}.level-sidebar-kicker{margin:0;font-family:var(--font-journal);text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;color:var(--c-rust-bright)}.level-sidebar-name{margin:0;font-family:var(--font-display);font-weight:400;font-size:1.3rem;line-height:1.1;color:var(--c-gold-bright)}.level-view-toggle{display:inline-flex;gap:2px;flex-shrink:0;padding:2px;background:#0000004d;border:1px solid var(--c-wood-edge);border-radius:var(--radius-1)}.level-view-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;color:var(--c-text-dim);background:none;border:none;border-radius:4px;cursor:pointer;transition:color .2s ease,background-color .2s ease}.level-view-btn:hover{color:var(--c-gold-bright)}.level-view-btn.is-active{color:var(--c-night);background:var(--c-gold)}.level-view-icon{width:16px;height:16px}.level-nav{display:flex;flex-direction:column;gap:4px}.level-nav-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:44px;padding:10px 12px;text-align:left;font-family:var(--font-body);font-size:1rem;color:var(--c-text-light);background:none;border:none;border-left:3px solid transparent;border-radius:var(--radius-1);cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.level-nav-item:hover{color:var(--c-gold-bright);background:#f0c86a14}.level-nav-item.is-active{color:var(--c-gold-bright);background:#f0c86a24;border-left-color:var(--c-gold)}.level-nav-arrow{width:16px;height:16px;flex-shrink:0;color:var(--c-gold);opacity:0;transform:translate(-5px);transition:opacity .2s ease,transform .2s ease}.level-nav-item:hover .level-nav-arrow,.level-nav-item:focus-visible .level-nav-arrow{opacity:1;transform:translate(0)}.level-nav-sub{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:6px 12px 6px 30px;text-align:left;font-family:var(--font-body);font-size:.86rem;color:var(--c-text-light);background:none;border:none;border-left:3px solid transparent;cursor:pointer;opacity:.78;transition:color .2s ease,background-color .2s ease,opacity .2s ease}.level-nav-sub:before{content:"–";color:var(--c-gold);opacity:.65}.level-nav-sub:hover{color:var(--c-gold-bright);background:#f0c86a14;opacity:1}.level-nav-sub.is-active{color:var(--c-gold-bright);background:#f0c86a1a;border-left-color:var(--c-gold);opacity:1}.level-back{margin-top:auto;min-height:46px;padding:12px;font-family:var(--font-display);font-size:1.1rem;letter-spacing:.02em;color:var(--c-text-light);background:#00000040;border:1px solid var(--c-wood-edge);border-radius:var(--radius-1);cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.level-back:hover{color:var(--c-gold-bright);border-color:var(--c-gold-deep);background:#00000059}.level-panel{position:relative;width:min(760px,100%);max-height:calc(100dvh - clamp(40px,8vw,112px));padding:clamp(24px,3.4vw,48px);overflow-y:auto}.level-panel.is-bare{width:min(1000px,100%);padding:0;background:none;box-shadow:none}.level-panel.is-scroll{display:flex;flex-direction:column;overflow:hidden}.pscroll{display:flex;flex:1;min-height:0;gap:10px}.pscroll-viewport{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.pscroll-viewport::-webkit-scrollbar{width:0;height:0;display:none}.pscroll-rail{flex-shrink:0;width:24px;display:flex;flex-direction:column;align-items:center;gap:6px;transition:opacity .25s ease}.pscroll-rail.is-hidden{opacity:0;pointer-events:none}.pscroll-arrow{flex-shrink:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0;color:var(--c-gold-deep);background:none;border:none;cursor:pointer;transition:color .2s ease,transform .1s ease}.pscroll-arrow:hover:not(:disabled){color:var(--c-gold-bright)}.pscroll-arrow:active:not(:disabled){transform:translateY(1px)}.pscroll-arrow:disabled{opacity:.28;cursor:default}.pscroll-anchor{width:15px;height:15px}.pscroll-anchor.is-down{transform:rotate(180deg)}.pscroll-track{position:relative;flex:1;min-height:0;width:9px;border-radius:5px;background:repeating-linear-gradient(-45deg,#422810f2 0,#422810f2 3px,#261609f2 3px,#261609f2 6px);box-shadow:inset 0 0 3px #000000b3,inset 1px 0 #ffdc960f}.pscroll-thumb{position:absolute;left:-2px;right:-2px;border-radius:6px;background:linear-gradient(180deg,var(--c-gold-bright),var(--c-gold-deep));box-shadow:inset 0 1px #fff4d2a6,inset 0 -2px 3px #46280880,0 1px 3px #00000073;cursor:grab;touch-action:none}.pscroll-thumb:active{cursor:grabbing}.level-panel-close{position:absolute;top:10px;right:12px;width:32px;height:32px;padding:0;font-size:1.5rem;line-height:1;color:var(--c-ink-soft);background:none;border:none;border-radius:var(--radius-1);cursor:pointer;transition:color .2s ease,background-color .2s ease}.level-panel-close:hover{color:var(--c-rust);background:#5c3d161f}.level-soon{display:flex;flex-direction:column;gap:var(--space-2);min-height:40vh;align-items:center;justify-content:center;text-align:center}.clue-list{display:flex;flex-direction:column;gap:var(--space-3)}.clue-zoom{display:block;width:100%;padding:0;background:none;border:none;border-radius:var(--radius-1);cursor:zoom-in;transition:transform .2s ease,filter .2s ease}.clue-zoom:hover{transform:translateY(-3px);filter:drop-shadow(0 12px 26px rgba(0,0,0,.55))}.clue-zoom:focus-visible{outline:2px solid var(--c-gold);outline-offset:4px}.clue-image{display:block;width:100%;max-width:900px;height:auto;margin:0 auto}.clue-dialog{max-width:none;max-height:none;padding:0;background:none;border:none;overflow:visible}.clue-dialog::backdrop{background:#060a10db}.clue-dialog-image{display:block;width:auto;height:auto;max-width:94vw;max-height:92dvh;margin:0 auto;cursor:zoom-out}.sqlwork-input{display:block;width:100%;min-height:150px;margin-top:var(--space-1);padding:14px 16px;font-family:var(--font-mono);font-size:.95rem;line-height:1.55;color:var(--c-text-light);background:#1a1108;border:1px solid var(--c-wood-edge);border-radius:var(--radius-1);resize:vertical}.sqlwork-input::placeholder{color:var(--c-text-dim);opacity:.5}.sqlwork-input:focus-visible{outline:2px solid var(--c-gold-bright);outline-offset:2px}.sqlwork-actions{display:flex;align-items:center;gap:14px;margin-top:12px}.sqlwork-run{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 24px;font-family:var(--font-display);font-size:1.15rem;letter-spacing:.02em;color:var(--c-night);background:var(--c-gold);border:none;border-radius:var(--radius-1);cursor:pointer;transition:background-color .2s ease}.sqlwork-run:hover:not(:disabled){background:var(--c-gold-bright)}.sqlwork-run:disabled{opacity:.6;cursor:default}.sqlwork-hint{font-family:var(--font-mono);font-size:.75rem;color:var(--c-ink-soft)}.sqlwork-result{margin-top:var(--space-3)}.sqlwork-error{margin:0;padding:12px 14px;font-family:var(--font-mono);font-size:.9rem;color:#ffe0d6;background:#a63d2a3d;border:1px solid var(--c-rust);border-radius:var(--radius-1)}.sqlwork-note{margin:0;font-style:italic;color:var(--c-ink-soft)}.sqlwork-count{margin:0 0 8px;font-family:var(--font-mono);font-size:.78rem;color:var(--c-ink-soft)}.sqlwork-tablewrap{overflow-x:auto;border:1px solid rgba(92,61,22,.3);border-radius:var(--radius-1)}.sqlwork-table{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:.85rem}.sqlwork-table th,.sqlwork-table td{padding:8px 12px;text-align:left;border-bottom:1px solid rgba(92,61,22,.2)}.sqlwork-table th{position:sticky;top:0;white-space:nowrap;color:var(--c-parchment);background:var(--c-wood-2);font-weight:700}.sqlwork-table td{color:var(--c-ink);overflow-wrap:break-word}.sqlwork-table tbody tr:nth-child(2n) td{background:#5c3d160f}.submit{display:flex;flex-direction:column;gap:var(--space-2)}.submit-question{margin:4px 0 var(--space-2);font-family:var(--font-journal);font-size:clamp(1.3rem,3vw,1.9rem);line-height:1.35;color:var(--c-ink)}.submit-prompt{margin:0;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-ink-soft)}.submit-fields{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:4px}.submit-field{display:flex;align-items:center;gap:10px}.submit-axis{font-family:var(--font-mono);font-size:1.1rem;font-weight:700;color:var(--c-ink)}.submit-input{width:9ch;padding:12px 14px;font-family:var(--font-mono);font-size:1rem;color:var(--c-text-light);background:#1a1108;border:1px solid var(--c-wood-edge);border-radius:var(--radius-1)}.submit-input::placeholder{color:var(--c-text-dim);opacity:.4}.submit-input:focus-visible{outline:2px solid var(--c-gold-bright);outline-offset:2px}.level-main:not(.is-split):has(.submit.is-chest){padding:0}.level-main:not(.is-split):has(.submit.is-chest) .level-panel.is-bare{width:100%;max-width:none;height:100%;max-height:none}.level-main:not(.is-split) .submit.is-chest{height:100%;border-radius:0}.submit.is-chest{position:relative;overflow:hidden;--scene-pad-y: clamp(20px, 3vw, 34px);--scene-pad-x: clamp(18px, 3vw, 30px);padding:var(--scene-pad-y) var(--scene-pad-x) 10%;border-radius:var(--radius-2);background:linear-gradient(180deg,#100b06cc,#0a070499 55%,#0a070473),url(/assets/pirate_room.webp) center / cover no-repeat var(--c-night)}.submit.is-chest:after{content:"";position:absolute;left:0;right:0;bottom:0;aspect-ratio:1407 / 263;background:url(/assets/Piratedesk.webp) bottom center / cover no-repeat;pointer-events:none;z-index:1}.submit.is-chest>*{position:relative;z-index:2}.submit.is-chest .submit-form{flex:1;display:flex;flex-direction:column;min-height:0}.submit.is-chest .submit-fields{flex:1;min-height:0;container-type:size}.submit.is-chest{gap:var(--space-1)}.submit.is-chest .submit-question{margin-bottom:0}.submit.is-chest .level-kicker{color:var(--c-gold-bright)}.submit.is-chest .submit-question{color:var(--c-parchment)}.submit.is-chest .submit-prompt{color:var(--c-gold)}.submit.is-chest .submit-conditions-wrap{position:absolute;top:var(--scene-pad-y);right:var(--scene-pad-x);margin-bottom:0;z-index:3}.submit.is-chest .submit-condition,.submit.is-chest .submit-locked-note{color:var(--c-text-light)}.submit.is-chest .submit-condition:not(.is-met){opacity:.75}.submit.is-chest .submit-solved-badge{color:var(--c-gold-bright)}.submit.is-chest .submit-solved-msg,.submit.is-chest .submit-back,.submit.is-chest .submit-next{color:var(--c-text-light)}.submit.is-chest .submit-next{color:var(--c-gold-bright)}.level-panel.is-bare .level-panel-close{color:var(--c-parchment)}.level-panel.is-bare .level-panel-close:hover{color:var(--c-gold-bright);background:#00000059}.chest{container-type:inline-size;position:relative;flex:none;width:min(100%,1200px,calc(100cqh * 1.8333));margin:auto auto 0;aspect-ratio:1408 / 768;--sink: 2.5cqw;transform:translateY(calc(7.03% + var(--sink)))}.chest-art{display:block;width:100%;height:100%}.chest-slot,.chest-arrow,.chest-skull{position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);transform:translate(-50%,-50%)}.chest-slot{--dial-h: 3.125cqw;width:3.05cqw;height:calc(var(--dial-h) * 3);overflow:hidden}.chest-slot:focus-visible{outline:2px solid var(--c-gold-bright);outline-offset:3px;border-radius:2px}.chest-slot:before,.chest-slot:after{content:"";position:absolute;left:0;right:0;height:calc(var(--dial-h) * 1.15);pointer-events:none;z-index:1}.chest-slot:before{top:0;background:linear-gradient(to bottom,#0b0a09eb 30%,#0b0a0900)}.chest-slot:after{bottom:0;background:linear-gradient(to top,#0b0a09eb 30%,#0b0a0900)}.chest-reel{display:flex;flex-direction:column;transform:translateY(calc((var(--pos) - 1) * var(--dial-h) * -1));transition:transform .24s cubic-bezier(.22,1,.36,1)}.chest-reel.is-instant{transition:none}.chest-digit{flex:none;height:var(--dial-h);font-family:var(--font-mono);font-size:2.1cqw;font-weight:700;line-height:var(--dial-h);text-align:center;color:#f4d68a;text-shadow:0 0 .5cqw rgba(0,0,0,.9)}.chest-arrow{width:4.97cqw;height:3.98cqw;padding:0;background:none;border:none;border-radius:50%;cursor:pointer;transition:background-color .2s ease}.chest-arrow:hover{background:#f4d68a38}.chest-skull{width:6.04cqw;height:6.04cqw;padding:0;background:none;border:none;border-radius:50%;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease}.chest-skull:hover{background:#f4d68a33;box-shadow:0 0 1.6cqw #f4d68a80}.chest-arrow:focus-visible,.chest-skull:focus-visible{outline:2px solid var(--c-gold-bright);outline-offset:2px}@keyframes chestShake{0%,to{transform:translate(0)}15%,45%,75%{transform:translate(-1.1%)}30%,60%,90%{transform:translate(1.1%)}}.chest.is-wrong{animation:chestShake .42s ease-in-out}.submit-go{align-self:flex-start;min-height:44px;margin-top:var(--space-2);padding:10px 28px;font-family:var(--font-display);font-size:1.15rem;letter-spacing:.02em;color:var(--c-night);background:var(--c-gold);border:none;border-radius:var(--radius-1);cursor:pointer;transition:background-color .2s ease}.submit-go:hover{background:var(--c-gold-bright)}.submit-back,.submit-next{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:var(--space-2);padding:0;font-family:var(--font-display);font-size:1.15rem;letter-spacing:.02em;background:none;border:none;cursor:pointer;transition:color .2s ease}.submit-back-label,.submit-next-label{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.submit-back-arrow,.submit-next-arrow{font-size:1rem}.submit-next{color:var(--c-gold-deep)}.submit-next:hover,.submit-back{color:var(--c-ink)}.submit-back:hover{color:var(--c-gold-deep)}.submit-solved{display:flex;flex-direction:column;gap:var(--space-2)}.submit-solved-badge{margin:0;font-family:var(--font-display);font-size:1.6rem;color:var(--c-gold-deep)}.submit-solved-msg{margin:0;font-family:var(--font-journal);font-size:1.05rem;line-height:1.6;color:var(--c-ink)}.submit-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:var(--space-2)}.submit-conditions-wrap{margin-bottom:var(--space-3)}.submit-conditions{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.submit-condition{display:flex;align-items:center;gap:10px;font-family:var(--font-body);color:var(--c-ink);opacity:.55;transition:opacity .2s ease}.submit-condition.is-met{opacity:1}.submit-condition-check{flex:none;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--c-gold-deep);border-radius:5px;color:var(--c-night);font-size:.85rem;font-weight:700}.submit-condition.is-met .submit-condition-check{background:var(--c-gold);border-color:var(--c-gold)}.submit-locked-note{margin:12px 0 0;font-family:var(--font-body);font-size:.9rem;color:var(--c-ink);opacity:.7}.submit-input:disabled{opacity:.45;cursor:not-allowed}.submit-go:disabled{opacity:.45;cursor:not-allowed}.cutscene-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:var(--space-4);opacity:0;pointer-events:none;transition:opacity .4s ease}.cutscene-actions.is-shown{opacity:1;pointer-events:auto}.cutscene-btn{min-height:44px;padding:10px 24px;font-family:var(--font-display);font-size:1.1rem;letter-spacing:.02em;color:var(--c-gold-bright);background:none;border:1px solid var(--c-gold-deep);border-radius:var(--radius-1);cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.cutscene-btn:hover{color:var(--c-gold-bright);border-color:var(--c-gold-bright);background:#ecdfb914}.cutscene-btn.is-primary{color:var(--c-night);background:var(--c-gold);border-color:var(--c-gold)}.cutscene-btn.is-primary:hover{background:var(--c-gold-bright);border-color:var(--c-gold-bright)}.schema-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2)}.schema-table{border:1px solid rgba(92,61,22,.3);border-radius:var(--radius-1);overflow:hidden}.schema-name{margin:0;padding:10px 14px;font-family:var(--font-mono);font-size:.95rem;letter-spacing:.04em;color:var(--c-parchment);background:var(--c-wood-2)}.schema-cols{margin:0;padding:0;list-style:none}.schema-col{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:8px 14px;border-top:1px solid rgba(92,61,22,.15)}.schema-col-name{font-family:var(--font-mono);color:var(--c-ink)}.schema-col-type{font-family:var(--font-mono);font-size:.75rem;text-transform:lowercase;letter-spacing:.06em;color:var(--c-rust)}.notebook{display:flex;align-items:stretch;justify-content:center;gap:var(--space-3)}.notebook-rail{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding-right:var(--space-3);border-right:2px solid rgba(92,61,22,.3);background:radial-gradient(circle,rgba(59,42,22,.4) 0 3px,transparent 3.5px) right -1px top 12px / 10px 34px repeat-y}.notebook-rail-title{margin:0 0 var(--space-1);font-family:var(--font-journal);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--c-rust)}.notebook-tabs{display:flex;flex-direction:column;gap:6px}.notebook-tab{position:relative;min-width:40px;height:34px;padding:0 8px;font-family:var(--font-journal);font-size:1rem;color:var(--c-ink-soft);background:#5c3d1614;border:1px solid rgba(92,61,22,.25);border-radius:var(--radius-1);cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.notebook-tab:hover{color:var(--c-ink);background:#5c3d1626}.notebook-tab.is-active{color:var(--c-parchment);background:var(--c-rust);border-color:var(--c-rust);box-shadow:var(--shadow-lift)}.notebook-tab.has-notes:after{content:"";position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50%;background:var(--c-gold)}.notebook-tab.is-active.has-notes:after{background:var(--c-gold-bright)}.notebook-sheet{flex:1 1 auto;max-width:360px;min-width:0;min-height:0;display:flex;flex-direction:column;gap:var(--space-1)}.notebook-sheet-head{margin:0;font-family:var(--font-journal);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-ink-soft)}.notebook-page{--rule-height: 32px;--rows: 16;flex:none;width:100%;height:min(calc(var(--rows) * var(--rule-height)),calc(100dvh - 260px));padding:0 8px 0 46px;font-family:var(--font-journal);font-size:1.1rem;line-height:var(--rule-height);color:var(--c-ink);background-color:transparent;background-image:linear-gradient(to right,transparent 34px,rgba(166,61,42,.35) 34px,rgba(166,61,42,.35) 36px,transparent 36px),repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--rule-height) - 1px),rgba(99,72,31,.28) calc(var(--rule-height) - 1px),rgba(99,72,31,.28) var(--rule-height));background-attachment:local;border:none;resize:none;overflow:hidden}.notebook-page:focus-visible{outline:2px solid var(--c-gold-bright);outline-offset:4px;border-radius:var(--radius-1)}.notebook-page::placeholder{color:var(--c-ink-soft);opacity:.55;font-style:italic}@media(max-width:760px){.level-page{flex-direction:column}.level-sidebar{flex-basis:auto;border-width:0 0 1px 0;box-shadow:0 8px 20px #0006}.level-nav{flex-direction:row;flex-wrap:wrap;gap:6px}.level-nav-item{width:auto;border-left:none;border-bottom:3px solid transparent}.level-nav-item.is-active{border-left:none;border-bottom-color:var(--c-gold)}.level-nav-sub{width:auto;padding-left:12px;border-left:none;border-bottom:3px solid transparent}.level-nav-sub.is-active{border-left:none;border-bottom-color:var(--c-gold)}.level-back{margin-top:var(--space-2)}.level-main{padding:clamp(16px,5vw,32px)}.level-main.is-split{flex-direction:column;align-items:stretch}.level-main.is-split .level-panel{max-width:none;max-height:none}.notebook{flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--space-2)}.notebook-sheet{width:100%}.notebook-rail{position:static;align-items:stretch;padding-right:0;padding-bottom:var(--space-2);border-right:none;border-bottom:2px solid rgba(92,61,22,.3);background:none}.notebook-tabs{flex-direction:row;flex-wrap:wrap}}.level-kicker{margin:0 0 var(--space-1);font-family:var(--font-journal);text-transform:uppercase;letter-spacing:.24em;font-size:.85rem;color:var(--c-rust)}.level-title{margin:0 0 var(--space-2);font-family:var(--font-display);font-weight:400;font-size:clamp(2.2rem,5vw,3.2rem);line-height:1.05;color:var(--c-ink)}.level-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:0 0 var(--space-3)}.level-title-row .level-title{margin:0}.level-brief{max-width:60ch;margin:0 0 var(--space-4);color:var(--c-ink)}.level-console-note{margin:0;font-style:italic;color:var(--c-ink-soft)}.level-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:radial-gradient(ellipse at 50% 45%,#1c1109,#0d0704 72%)}.cutscene{position:fixed;top:0;right:0;bottom:0;left:0;z-index:350;display:flex;align-items:center;justify-content:center;padding:clamp(24px,8vw,96px);background:#0d0804a3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.cutscene{background:#0d0804eb}}.cutscene-inner{max-width:42ch;text-align:center}.cutscene-line{margin:0;font-family:var(--font-journal);font-size:clamp(1.3rem,3.4vw,2.2rem);line-height:1.5;color:var(--c-text-light);text-shadow:0 2px 20px rgba(0,0,0,.6);animation:cutsceneRise .5s cubic-bezier(.16,1,.3,1) both}.cutscene-caret{display:inline-block;width:.5em;height:1.05em;margin-left:.08em;vertical-align:-.12em;background:var(--c-gold);animation:cutsceneBlink 1.1s steps(1) infinite}.cutscene-hint{margin:var(--space-4) 0 0;font-family:var(--font-journal);font-size:.9rem;letter-spacing:.18em;text-transform:uppercase;color:var(--c-gold);opacity:0;transition:opacity .4s ease}.cutscene-hint.is-shown{opacity:.7;animation:cutscenePulse 2.4s ease-in-out infinite}.cutscene-skip{position:absolute;bottom:clamp(16px,4vw,32px);right:clamp(16px,4vw,32px);padding:8px 16px;min-height:44px;font-family:var(--font-journal);font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-text-dim);background:none;border:1px solid rgba(236,223,185,.2);border-radius:var(--radius-1);cursor:pointer;transition:color .2s ease,border-color .2s ease}.cutscene-skip:hover{color:var(--c-gold-bright);border-color:var(--c-gold-deep)}@keyframes cutsceneRise{0%{opacity:0;transform:translateY(.6em)}to{opacity:1;transform:none}}@keyframes cutsceneBlink{0%,54%{opacity:1}55%,to{opacity:0}}@keyframes cutscenePulse{0%,to{opacity:.7}50%{opacity:.3}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
