.content{width:min(100% - 4rem,80rem);margin:auto;padding:3.5rem 0 1rem}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2.5rem}.section-heading h1{font-size:clamp(2rem,4.5vw,4rem);line-height:1.05;letter-spacing:-.045em;font-weight:800;margin:.75rem 0 1rem}.section-heading p:not(.eyebrow){color:var(--muted);font-size:1rem}.section-count{font:400 2.5rem/1 ui-monospace,monospace;color:var(--blue);white-space:nowrap}.section-count span{font-size:.8rem;color:var(--muted)}.vibe-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-bottom:1px solid var(--line);gap:.6rem}.vibe-tabs button{min-width:0;min-height:6rem;text-align:left;padding:1rem;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .8rem;background:transparent;color:var(--muted);border:1px solid transparent;border-bottom:0;font-size:.75rem;font-weight:700;transition:background .25s,transform .25s,color .25s}.vibe-tabs button[aria-selected=true]{color:var(--ink);background:linear-gradient(135deg,#00cbf619,#46ed640e);border-color:#4cddff66;transform:translateY(-5px)}.tab-number{font:.65rem/1 ui-monospace,monospace;color:var(--blue)}.tab-status{width:100%;font:400 .6rem/1.5 ui-monospace,monospace;letter-spacing:.04em}.vibe-panel{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(2rem,6vw,6rem);padding-top:2rem;align-items:center}.vibe-panel>*{min-width:0}.vibe-stage{display:flex;flex-direction:column;align-self:stretch;min-height:23rem;padding:1.5rem;background:radial-gradient(ellipse at 65% 40%,#0865f53a,transparent 65%),linear-gradient(145deg,#0c2946,#08172c);border:1px solid #4cddff50;border-bottom:2px solid #46ed6480;clip-path:polygon(0 0,94% 0,100% 6%,100% 100%,6% 100%,0 94%);animation:content-in .35s ease both}.stage-bottom,.stage-top{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;font:500 .65rem/1.5 ui-monospace,monospace;color:var(--muted)}.stage-symbol{display:grid;place-content:center;flex:1 1;padding:2rem 0;font:300 clamp(4rem,9vw,8rem)/1.3 ui-monospace,monospace;letter-spacing:-.12em;color:var(--blue);text-shadow:0 0 45px #78ddf722;transform:rotate(-7deg)}.stage-bottom{font-size:1rem;font-weight:700;color:var(--ink);margin-top:auto}[data-accent=green] .vibe-stage{background:radial-gradient(ellipse at 60% 40%,#7fe6a225,transparent 65%),#0b151c;border-color:#7fe6a26b}[data-accent=green] .stage-symbol{color:var(--green)}[data-accent=warm] .vibe-stage{background:radial-gradient(ellipse at 60% 40%,#ff9b451c,transparent 65%),#0b151c;border-color:#ff9b4550}[data-accent=warm] .stage-symbol{color:var(--orange)}.vibe-detail{animation:content-in .35s ease both}.vibe-detail h2{font-size:clamp(1.7rem,3vw,2.6rem);text-transform:uppercase;line-height:1.13;letter-spacing:-.035em;margin:1rem 0;max-width:22ch}.detail-description{color:var(--muted);max-width:45ch}.tiny-energy{color:var(--orange)}.journey-mini{display:flex;flex-wrap:wrap;gap:.4rem 1rem;padding:0;margin:1.5rem 0;list-style:none;font:500 .6rem/1.8 ui-monospace,monospace;color:var(--blue)}.journey-mini li:not(:last-child):after{content:" →";color:#718b96;margin-left:.6rem}.action-button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;padding:.85rem 1.3rem;min-height:44px;max-width:100%;background:linear-gradient(115deg,var(--brand-cyan),var(--brand-green));color:#052534;border:1px solid var(--blue);font-weight:700;font-size:.8rem}.action-button:hover{background:var(--green);border-color:var(--green)}.metadata{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:1.4rem;font:500 .6rem/1.8 ui-monospace,monospace;color:var(--muted)}.metadata span+span:before{content:" / ";margin-right:1rem;color:var(--green)}.coming-soon{color:var(--green);padding:1.5rem 0}.selection-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:2rem;border-top:1px solid var(--line);padding-top:1rem}.keyboard-hint{font:.6rem/1.5 ui-monospace,monospace;color:var(--muted)}.selection-controls>div{display:flex;gap:.5rem}.selection-controls button{width:48px;min-height:44px;background:transparent;border:1px solid var(--line);font-size:1.2rem}.selection-controls button:hover{border-color:var(--blue)}.back-link{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-size:.8rem;margin-bottom:1.5rem}.episode-heading{max-width:60rem;margin:2rem 0}.episode-heading h1{font-size:clamp(1.8rem,4vw,3.3rem);line-height:1.15;letter-spacing:-.04em;margin:.6rem 0 1rem}.episode-heading>p:last-child{color:var(--muted);max-width:60ch}.player-frame{width:100%;border:1px solid #78ddf738;background:#0b1d35}.player-placeholder{min-height:clamp(18rem,40vw,35rem);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1.5rem;gap:1rem;background:radial-gradient(ellipse at 50% 40%,#78ddf714,transparent 60%)}.player-placeholder img{width:9rem;margin-bottom:1.2rem}.player-placeholder h2{font-size:clamp(1.3rem,2vw,1.7rem)}.player-placeholder p{max-width:45ch;color:var(--muted);font-size:.9rem}.player-embed{aspect-ratio:16/9;position:relative;background:#050a0e}.player-embed iframe,.player-embed video,.player-embed>div{width:100%;height:100%;border:0}.player-note{font-size:.75rem;color:var(--muted);padding:1rem}.chapters{display:flex;flex-wrap:wrap;padding:0;margin:1.5rem 0;list-style:none;gap:.6rem}.chapters li{min-width:0}.chapters button{padding:.6rem .85rem;min-height:44px;border:1px solid var(--line);background:transparent;font-size:.75rem}.chapters button[aria-current=true]{border-color:var(--blue);color:var(--blue)}.episode-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2.5rem;border-top:1px solid var(--line);padding-top:2rem}.episode-grid>*{min-width:0}.episode-grid h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;margin-bottom:1rem;color:var(--muted)}.tool-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.tool-list li{padding:.4rem .7rem;border:1px solid var(--line);color:var(--green);font-size:.8rem;overflow-wrap:anywhere}.resource-link{display:block;padding:.7rem 0;border-bottom:1px solid var(--line);color:var(--blue)}.notice{margin:2rem 0;color:var(--muted);font-size:.75rem}.empty-page{min-height:60dvh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:1.5rem}.empty-page h1{font-size:clamp(2rem,6vw,5rem);line-height:1.1}.admin-form{max-width:48rem;display:grid;gap:1rem;margin:2rem 0}.admin-form label{display:grid;gap:.5rem;font-size:.9rem}.admin-form input,.admin-form select,.admin-form textarea{min-width:0;width:100%;padding:.8rem;color:var(--ink);border:1px solid var(--line);background:#0b1d35;border-radius:0}.admin-form textarea{min-height:8rem}.admin-form pre{white-space:pre-wrap;overflow-wrap:anywhere}.admin-links{display:flex;flex-wrap:wrap;gap:1rem}.form-error{color:#ffc39b}@media(max-width:850px){.vibe-panel{gap:2rem}.vibe-tabs button{padding:.8rem .4rem}}@media(max-width:640px){.content{width:calc(100% - 2rem);padding-top:2rem}.section-heading{margin-bottom:1.5rem}.section-heading h1{font-size:2.1rem}.section-count{display:none}.vibe-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;border:0}.vibe-tabs button{border:1px solid var(--line);min-height:5rem;font-size:.68rem}.vibe-tabs button[aria-selected=true]{transform:none}.vibe-panel{grid-template-columns:minmax(0,1fr);gap:1.8rem;padding-top:1.5rem}.vibe-stage{min-height:14rem;padding:1.1rem}.stage-symbol{font-size:4.5rem;padding:1.5rem 0}.vibe-detail h2{max-width:none;font-size:1.9rem}.episode-grid{grid-template-columns:minmax(0,1fr)}.player-placeholder{min-height:20rem;padding:1.5rem 1rem}}:root{color-scheme:dark;--bg:#071329;--ink:#f0f8ff;--muted:#a7bbd2;--blue:#4cddff;--green:#82f653;--orange:#ffa52c;--line:#254464;--brand-blue:#0865f5;--brand-cyan:#00cbf6;--brand-green:#46ed64}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}button,input,select,textarea{font:inherit}a,button,select{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button,select{color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--blue);outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}a,button,h1,h2,h3,label,p{overflow-wrap:anywhere}::selection{color:var(--bg);background:var(--green)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.viboo{min-height:100svh;min-height:100dvh;background:radial-gradient(ellipse at 75% 5%,#0865f526,transparent 50%),radial-gradient(ellipse at 8% 80%,#46ed640d,transparent 50%),var(--bg)}.eyebrow{font:500 .65rem/1.6 ui-monospace,monospace;letter-spacing:.18em;color:var(--muted)}.preferences{display:flex;align-items:center;gap:.4rem;min-width:0}.motion-control,.preferences select{min-width:44px;min-height:44px;border:0;background:transparent;font-size:.75rem}.preferences select{padding:.4rem}.preferences option{background:var(--bg)}.motion-control{border:1px solid var(--line);border-radius:50%;font-size:1rem}.welcome{position:relative;isolation:isolate;container:welcome-screen/size;height:100svh;height:100dvh;display:grid;grid-template-rows:44px minmax(0,1fr) auto;gap:clamp(4px,1.4dvh,14px);padding:max(8px,env(safe-area-inset-top),2dvh) max(12px,env(safe-area-inset-right),2vw) max(8px,env(safe-area-inset-bottom),1.5dvh) max(12px,env(safe-area-inset-left),2vw)}.welcome:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 72% 50%,#0870ff38,transparent 48%),radial-gradient(ellipse at 26% 65%,#46ed641c,transparent 42%),radial-gradient(ellipse at 77% 15%,#ffa52c0c,transparent 22%);animation:atmosphere 12s ease-in-out infinite alternate}.welcome{background-color:var(--bg)}.welcome-utilities{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.welcome-utilities .eyebrow{max-width:22rem;min-width:0;flex:1 1;overflow-wrap:anywhere;font-size:.6rem}.welcome-utilities .preferences{flex-shrink:0}.welcome-content{width:min(100%,1120px);height:100%;min-height:0;min-width:0;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(8px,3vw,48px);align-items:center}.welcome-copy{grid-column:1;grid-row:1;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(4px,1.2cqh,12px)}.welcome-art{grid-column:2;grid-row:1;container:robot-stage/size;width:100%;height:100%;min-width:0;min-height:0;display:grid;place-items:center;mix-blend-mode:screen}.robot-canvas{position:relative;width:min(100cqw,80.0285cqh);height:min(100cqh,124.9554cqw)}.robot-body{width:100%;height:100%;transition:opacity .26s}.robot-canvas:not([data-pose=base]) .robot-body{opacity:0}.robot-pose-sheet{position:absolute;inset:0;overflow:hidden;opacity:0;transition:opacity .26s;-webkit-mask-image:linear-gradient(transparent,#000 3% 96%,transparent);mask-image:linear-gradient(transparent,#000 3% 96%,transparent)}.robot-pose-sheet[data-ready=true]{opacity:1}.robot-pose-sheet img{position:absolute;top:0;width:600%;max-width:none;height:auto}.robot-pose-sheet[data-sheet-pose=wave] img{left:-100%}.robot-pose-sheet[data-sheet-pose=happy] img{left:-200%}.robot-pose-sheet[data-sheet-pose=happy]{clip-path:inset(0 6% 0 0)}.robot-pose-sheet[data-sheet-pose=coding] img{left:-500%}.welcome-wordmark{width:min(100%,28rem,60cqh);line-height:0}.welcome-wordmark img{width:100%}.robot-face{position:absolute;left:var(--face-left);top:var(--face-top);width:var(--face-width);height:var(--face-height);transform:rotate(var(--face-angle))}.robot-gaze{display:flex;gap:17%;align-items:center;justify-content:center;width:100%;height:100%;animation:look-around 9s ease-in-out infinite}.robot-eye{display:block;width:20%;height:44%;background:#a8f4ff;border-radius:45%;box-shadow:0 0 9px #4cddff50;transform-origin:center;animation:blink 5.6s infinite}.welcome-mantra{font:600 .65rem/1.5 ui-monospace,monospace;letter-spacing:.2em;color:#b9d5ee}.welcome-question{color:var(--muted);font-size:.95rem}.enter-button{display:flex;justify-content:space-between;align-items:center;gap:2rem;min-width:min(15rem,100%);min-height:44px;max-width:100%;padding:clamp(6px,1.6cqh,16px) 1.2rem;border:1px solid #67efaf;border-radius:10px;background:linear-gradient(115deg,var(--brand-cyan),var(--brand-green));color:#052534;font-size:.82rem;line-height:1.4;font-weight:800;letter-spacing:.2em;box-shadow:0 5px 30px #00cbf61c;transition:box-shadow .22s,transform .22s}.enter-button:focus-visible,.enter-button:hover{box-shadow:0 5px 30px #46ed6430,0 0 0 2px #4cddff30;transform:translateY(-2px)}.welcome-hint{color:var(--muted);font-size:.7rem}.welcome-footer{min-width:0;display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:8px;color:#93afcb;font:500 .6rem/1.5 ui-monospace,monospace;letter-spacing:.1em}.status-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--green)}.welcome-entering .welcome-content{animation:enter-viboo .6s ease both}@container welcome-screen (max-height:46rem){.welcome-hint,.welcome-mantra{display:none}}@container welcome-screen (max-height:30rem){.welcome-footer,.welcome-question{display:none}.welcome-content{grid-row:2/-1}.welcome-utilities .eyebrow{visibility:hidden}}@media(max-aspect-ratio:1/1){.welcome-content{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:6px}.welcome-art{grid-column:1;grid-row:1}.welcome-copy{grid-column:1;grid-row:2}.welcome-wordmark{width:min(100%,19rem,50cqh)}.welcome-footer>span:nth-child(2){display:none}}.topbar{width:min(100% - 4rem,86rem);margin:auto;gap:clamp(1.5rem,5vw,6rem);padding:1.5rem 0;border-bottom:1px solid var(--line)}.brand,.topbar{display:flex;align-items:center}.brand{width:8rem;min-width:6rem;min-height:44px;flex-shrink:0;position:relative}.brand-art{display:block;width:100%;position:relative}.brand img{width:100%}.brand-reaction{position:absolute;inset:0;animation:brand-react .65s ease-out;pointer-events:none}.lens{position:absolute;top:49%;width:8.1%;aspect-ratio:1;border:1px solid #c0f6ff50;border-right-color:#c0f6ffb0;border-radius:50%;animation:lens-breathe 10s ease-in-out infinite}.lens-one{left:64.9%}.lens-two{left:85.3%;animation-delay:-2s}.lens i{position:absolute;inset:24%;border:1px solid #c0f6ff60;border-left-color:transparent;border-radius:50%}.brand:focus-visible .lens,.brand:hover .lens{animation:lens-hover 1.6s ease-in-out infinite alternate;border-color:var(--blue);border-bottom-color:transparent}.navigation{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex:1 1;max-width:36rem;gap:.3rem;align-self:stretch}.navigation a{min-height:44px;display:flex;align-items:center;justify-content:center;padding:.65rem .3rem;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.12em}.navigation a[aria-current]{color:var(--blue)}.nav-indicator{position:absolute;bottom:-1.5rem;height:1px;background:linear-gradient(90deg,var(--brand-cyan),var(--brand-green));transition:left .28s cubic-bezier(.2,.7,.3,1),width .28s;pointer-events:none}.nav-indicator i{position:absolute;left:calc(50% - 3px);top:-3px;width:6px;height:6px;background:var(--blue);border-radius:50%;box-shadow:0 0 10px #78ddf760}.topbar>.preferences{margin-left:auto}.site-footer{width:min(100% - 3rem,82rem);margin:3rem auto 0;border-top:1px solid var(--line);padding:1rem 0 max(1.5rem,env(safe-area-inset-bottom));color:var(--muted);font:500 .65rem/1.6 ui-monospace,monospace;letter-spacing:.15em}.skip-link{position:absolute;top:1rem;left:1rem;padding:1rem;background:var(--bg);transform:translateY(-200%);z-index:5}.skip-link:focus{transform:none}@keyframes blink{0%,42%,46%,76%,80%,to{transform:scaleY(1)}44%,78%{transform:scaleY(.1)}}@keyframes look-around{0%,20%,90%,to{transform:translateX(0)}30%,42%{transform:translateX(-9%)}57%,72%{transform:translateX(9%)}}@keyframes lens-breathe{0%,65%,to{transform:rotate(0);opacity:.4}35%{transform:rotate(55deg);opacity:.85}}@keyframes lens-hover{0%{transform:rotate(-20deg)}to{transform:rotate(110deg)}}@keyframes brand-react{0%{opacity:.35}45%{opacity:1;filter:drop-shadow(0 0 4px #78ddf7)}to{opacity:1}}@keyframes atmosphere{0%{opacity:.5}to{opacity:1}}@keyframes enter-viboo{to{opacity:0;transform:scale(.97)}}@keyframes content-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.welcome-footer>span:nth-child(2){display:none}.topbar{width:calc(100% - 2rem);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;padding:1rem 0 0}.brand{width:7rem}.navigation{grid-column:1/-1;grid-row:2;width:100%;max-width:none}.topbar>.preferences{grid-column:2;grid-row:1}.navigation a{letter-spacing:.06em;font-size:.68rem;padding:.8rem .1rem}.nav-indicator{bottom:0}}[data-motion=paused] *,[data-motion=paused] :after,[data-motion=paused] :before{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.app-shell{height:100svh;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:max(8px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right),2vw) max(4px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left),2vw);gap:8px;container:application/size}.app-shell .topbar{width:100%;padding:4px 0 8px;gap:clamp(12px,3vw,48px)}.app-shell .nav-indicator{left:0;bottom:-8px;transition:transform .38s cubic-bezier(.2,.8,.2,1),width .38s}.app-shell .brand{width:7rem;min-width:70px;max-width:130px}.app-shell .navigation{max-width:560px}.app-stage{min-width:0;min-height:0;width:min(100%,1200px);margin:auto;display:grid;grid-template-columns:minmax(180px,.85fr) minmax(0,1.15fr);height:100%;gap:clamp(12px,4vw,60px);align-items:stretch}.app-status{display:flex;justify-content:space-between;align-items:center;min-width:0;gap:12px;border-top:1px solid var(--line)}.quiet-button{display:inline-flex;justify-content:center;align-items:center;min-height:44px;max-width:100%;padding:5px 10px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);font-size:.72rem;line-height:1.3;text-align:center}.quiet-button:focus-visible,.quiet-button:hover:not(:disabled){border-color:var(--blue);color:var(--ink)}.app-status .quiet-button{border-color:transparent;font-size:.65rem}.companion{grid-template-rows:minmax(0,1fr) auto;align-items:center;gap:8px;position:relative}.companion,.companion-art{min-width:0;min-height:0;display:grid}.companion-art{height:100%;container:companion-art/size;place-items:center;mix-blend-mode:screen}.companion-caption{text-align:center;min-width:0;padding:0 0 12px}.companion-caption p{color:var(--green);font-size:clamp(.7rem,1.6vw,1.1rem);font-weight:700;line-height:1.35;overflow-wrap:anywhere}.companion-caption .eyebrow{font-size:.6rem}.robot-canvas[data-state=error] .robot-eye{transform:rotate(-25deg);border-radius:0}.robot-canvas[data-state=thinking] .robot-eye:first-child{height:58%}.welcome-art .robot-motion{animation:robot-breathe 6s ease-in-out infinite;transform-origin:50% 70%}.welcome-entering .robot-motion{animation:robot-wave .55s ease}@keyframes robot-breathe{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(.5deg)}}@keyframes robot-wave{50%{transform:rotate(-3deg) scale(1.02)}}.experience{min-width:0;min-height:0;display:flex;flex-direction:column;gap:clamp(6px,1.8cqh,20px);padding:clamp(4px,4cqh,50px) 0;container:experience/size}.experience-heading{min-width:0}.experience h1{font-size:clamp(1rem,2.6vw,2rem);line-height:1.1;letter-spacing:-.03em}.experience-heading .eyebrow{margin-bottom:6px}.choice-menu{flex:1 1;min-height:0;min-width:0;display:flex;flex-direction:column;gap:8px;font-size:.75rem}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:center;flex:1 1;min-height:0}.choice-button{min-height:48px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink);font-size:inherit;line-height:1.35;font-weight:700;text-align:left;transition:transform .18s,border-color .18s,box-shadow .18s}.choice-button:focus-visible,.choice-button:hover{box-shadow:0 0 25px #00cbf619;background:linear-gradient(135deg,#00cbf619,#46ed640e)}.choice-pages{display:flex;align-items:center;gap:5px;justify-content:space-between;min-height:44px}.choice-pages .quiet-button{font-size:.65rem;flex:1 1}.choice-pages>span{font:.6rem/1.2 ui-monospace,monospace;color:var(--muted);white-space:nowrap}.selection-result{flex:1 1;display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:12px;min-height:0}.selected-mark{color:var(--green);font-size:.8rem}.experience .action-button{border-radius:8px;justify-content:center;line-height:1.3}.change-device{align-self:flex-start}.watch-feature{min-height:0;flex:1 1;display:flex;flex-direction:column;justify-content:center;gap:clamp(8px,2cqh,24px)}.watch-feature h2{font-size:clamp(1.05rem,2.7vw,2.2rem);line-height:1.15;letter-spacing:-.025em}.episode-status{font-size:.7rem;color:var(--green)}.feature-actions{display:flex;gap:8px;flex-wrap:wrap}.feature-actions>*{flex:1 1}.viboo-panel{position:fixed;inset:0;margin:auto;width:min(94vw,800px);max-width:94vw;max-height:94dvh;padding:0;border:1px solid var(--line);border-radius:16px;background:var(--bg);color:var(--ink);overflow:hidden}.viboo-panel[open]{display:flex;flex-direction:column}.viboo-panel::backdrop{background:#071329cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);flex-shrink:0}.panel-header h2{font-size:1rem;line-height:1.2;min-width:0}.panel-header .quiet-button{flex-shrink:0}.panel-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:16px}.companion-small{grid-template-columns:128px minmax(0,1fr);grid-template-rows:160px;gap:16px;margin-bottom:16px}.companion-small .companion-caption{text-align:left}.companion-small .companion-caption p,.panel-note{font-size:.85rem}.panel-note{color:var(--muted);margin:16px 0}.flow-form{display:grid;gap:16px}.flow-form label{display:grid;gap:8px;font-size:.85rem}.flow-form input,.flow-form textarea{min-width:0;width:100%;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:12px;font:inherit}.flow-form textarea{min-height:110px;resize:vertical}.brief-output{white-space:pre-wrap;overflow-wrap:anywhere;font:.85rem/1.6 ui-monospace,monospace}.guide-step{font-size:1rem;margin:20px 0}.panel-actions{display:flex;justify-content:space-between;gap:12px;margin-top:20px}.plan-list{display:grid;gap:12px;margin-top:20px}.plan-list section{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:10px;min-width:0}.plan-list h3{font-size:1rem}.plan-list strong{font-size:1.3rem;color:var(--green)}.plan-list span{color:var(--muted);font-size:.75rem}.viboo-panel .player-placeholder{min-height:180px;padding:16px}.viboo-panel .player-placeholder img{width:90px;margin:0}.app-stage>.empty-page{width:100%;min-height:0;padding:8px}@media(max-width:640px){.app-shell .topbar{grid-template-columns:minmax(0,1fr) auto;gap:4px}.app-shell .navigation a{padding:8px 2px}.app-shell .nav-indicator{bottom:0}.app-stage{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(80px,34%) minmax(0,1fr);gap:6px}.app-stage>.companion{grid-template-columns:minmax(80px,34%) minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:12px}.app-stage>.companion .companion-caption{text-align:left;padding:0}.experience{padding:0;gap:8px}.experience-heading .eyebrow{display:none}.watch-feature h2{font-size:1.12rem}.watch-feature>.eyebrow{display:none}}@media(max-height:500px) and (min-aspect-ratio:1/1){.app-shell .topbar{display:flex;gap:10px}.app-shell .brand{width:70px}.app-shell .navigation{flex:1 1}.app-shell .navigation a{font-size:.6rem;letter-spacing:0}.app-stage{grid-template-columns:minmax(80px,26%) minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:16px}.app-stage>.companion{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:0}.app-stage>.companion .companion-caption{text-align:center}.app-status>.eyebrow,.companion-caption .eyebrow,.experience-heading .eyebrow{display:none}.companion-caption p{font-size:.65rem}.experience{padding:0;gap:5px}.app-status{justify-content:flex-end}.watch-feature{gap:5px}.watch-feature h2{font-size:.9rem}.episode-status,.watch-feature>.eyebrow{display:none}}@container experience (max-height:15rem){.episode-status,.experience-heading .eyebrow,.watch-feature>.eyebrow{display:none}.watch-feature h2{font-size:.9rem}.choice-button{padding:6px}}@container experience (max-width:230px){.choice-grid{grid-template-columns:minmax(0,1fr)}}.choice-button{min-height:max(48px,calc(2.7em + 14px))}.panel-title{font-size:1.2rem;line-height:1.2;margin-bottom:16px}.episode-library{display:grid;gap:10px}.episode-library .choice-button{display:grid;gap:8px;min-height:44px}.robot-motion{display:block;position:relative;width:100%;height:100%;transform-origin:50% 68%}.robot-body,.robot-pose-sheet{transition:none}.robot-canvas[data-pose=original]{width:min(100cqw,133.333cqh);height:min(100cqh,75cqw)}.robot-canvas[data-pose=original] .robot-body{opacity:1}.robot-pose-sheet[data-sheet-pose=idle] img{left:0}.robot-pose-sheet[data-sheet-pose=point] img{left:-300%}.robot-pose-sheet[data-sheet-pose=thumbs] img{left:-400%}.robot-pose-sheet[data-sheet-pose=thinking] img{left:0;transform:translateY(-34.18%)}.robot-pose-sheet[data-sheet-pose=idea] img{left:-100%;transform:translateY(-34.18%)}.robot-pose-sheet[data-sheet-pose=idea]{clip-path:inset(0 0 0 10%)}.robot-canvas[data-state=happy] .robot-eye,.robot-canvas[data-state=success] .robot-eye{background:transparent;border-top:2px solid var(--screen-ink);border-radius:80% 80% 0 0;box-shadow:none;height:45%}.robot-canvas[data-state=error] .robot-eye,.robot-canvas[data-state=warning] .robot-eye{height:20%;border-radius:2px}.robot-canvas[data-pose=idle] .robot-motion{animation:viboo-float 4.8s ease-in-out infinite}.robot-canvas[data-pose=wave] .robot-motion{animation:viboo-wave 3.4s ease-in-out infinite}.robot-canvas[data-pose=coding] .robot-motion{animation:viboo-code 3s ease-in-out infinite}.robot-canvas[data-pose=thinking] .robot-motion{animation:viboo-think 5s ease-in-out infinite}.robot-canvas[data-pose=idea] .robot-motion{animation:viboo-idea 4s ease-in-out infinite}.robot-canvas[data-pose=point] .robot-motion{animation:viboo-point 3.6s ease-in-out infinite}.robot-canvas[data-pose=happy] .robot-motion,.robot-canvas[data-pose=thumbs] .robot-motion{animation:viboo-cheer 3.2s ease-in-out infinite}@keyframes viboo-float{50%{transform:translateY(-4px)}}@keyframes viboo-wave{15%,35%{transform:rotate(-2deg)}25%{transform:rotate(2deg)}50%,to{transform:rotate(0)}}@keyframes viboo-code{25%{transform:translateY(-2px) rotate(-.6deg)}50%{transform:translateY(0)}75%{transform:rotate(.6deg)}}@keyframes viboo-think{35%,60%{transform:rotate(-2deg)}80%{transform:rotate(.8deg)}}@keyframes viboo-idea{40%{transform:translateY(-3px) rotate(1deg)}}@keyframes viboo-point{40%{transform:translateX(3px) rotate(1deg)}}@keyframes viboo-cheer{20%{transform:translateY(-4px) rotate(-1deg)}40%{transform:translateY(0)}60%{transform:rotate(1deg)}}.companion-wordmark{width:clamp(70px,9vw,130px);max-width:100%;margin:0 auto 8px}.companion-small .companion-wordmark{width:80px;margin-left:0}.welcome-content{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.welcome-wordmark{width:min(100%,20rem,32cqh)}.sound-control{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--muted);line-height:1}.sound-control[aria-pressed=true]{color:var(--green);border-color:var(--green)}.sound-control>span:first-child{font-size:16px}.sound-state{font:700 8px/1.3 ui-monospace,monospace;margin-top:2px}.choice-button,.enter-button,.experience .action-button{position:relative;border-radius:13px;border:1px solid #4cddff80;border-bottom:1px solid var(--brand-blue);background:linear-gradient(160deg,#00cbf622,#0865f519 55%,#46ed6414);box-shadow:inset 0 1px 0 #a8f4ff38,0 4px 0 #0865f560,0 7px 18px #07132960;text-shadow:0 1px 2px #071329;letter-spacing:.035em;font-weight:800;transition:transform .14s,box-shadow .14s,background .14s,border-color .14s}.choice-button{padding-inline:16px}.choice-button:after{content:"";position:absolute;right:8px;top:8px;width:4px;height:4px;border-radius:50%;background:var(--green);box-shadow:0 0 8px #46ed6460;opacity:.45}.choice-button:focus-visible,.choice-button:hover{transform:translateY(-2px);background:linear-gradient(135deg,#00cbf637,#0865f52b,#46ed6424);border-color:var(--blue);box-shadow:inset 0 1px 0 #a8f4ff60,0 6px 0 #0865f580,0 0 24px #00cbf626}.choice-button:focus-visible:after,.choice-button:hover:after{opacity:1}.enter-button,.experience .action-button{background:linear-gradient(135deg,var(--brand-cyan),var(--brand-green));color:#052534;text-shadow:none;box-shadow:inset 0 1px 0 #f0f8ff80,0 4px 0 #0865f5,0 7px 20px #00cbf61c}.choice-button:active,.enter-button:active,.experience .action-button:active{transform:translateY(3px);box-shadow:inset 0 1px 4px #07132950,0 1px 0 #0865f580}.app-shell .navigation a{border:1px solid transparent;border-radius:10px;transition:background .18s,box-shadow .18s;color:var(--muted)}.app-shell .navigation a[aria-current]{color:var(--blue);background:linear-gradient(145deg,#00cbf61c,#0865f510);border-color:#4cddff40;box-shadow:inset 0 1px 0 #a8f4ff20}.app-shell .navigation a:focus-visible,.app-shell .navigation a:hover{background:#00cbf617;color:var(--green)}@media(max-width:640px){.companion-wordmark{width:100px;margin-left:0;margin-bottom:6px}.welcome-utilities .eyebrow{font-size:.5rem;letter-spacing:.08em}.app-stage>.companion{grid-template-columns:minmax(100px,52%) minmax(0,1fr)}}@media(max-aspect-ratio:1/1){.welcome-content{grid-template-columns:minmax(0,1fr)}.welcome-wordmark{width:min(100%,15rem,25cqh)}}@media(max-height:500px) and (min-aspect-ratio:1/1){.app-stage>.companion{grid-template-columns:minmax(0,1fr)}.companion-wordmark{width:70px;margin:0 auto 3px}.app-shell .brand{min-width:50px;width:60px}.app-shell .topbar{gap:5px}.app-shell .preferences{gap:0}.app-shell .navigation a{font-size:.55rem}}.robot-pose-sheet[data-sheet-pose=point] img{width:548.571%;left:-262.857%}.robot-pose-sheet[data-sheet-pose=point]{clip-path:inset(0 0 9% 0)}.robot-pose-sheet[data-sheet-pose=thinking]{clip-path:inset(0 0 12% 0)}.robot-pose-sheet[data-sheet-pose=idea]{clip-path:inset(0 0 12% 10%)}.robot-face{container:robot-face/inline-size;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);place-items:center;padding:0;overflow:visible;isolation:isolate}.robot-face .robot-gaze{position:relative;width:78%;height:78%;display:flex;align-items:center;justify-content:center;gap:18%;opacity:1;translate:var(--gaze-x,var(--pointer-gaze-x,0)) var(--gaze-y,var(--pointer-gaze-y,0));animation:viboo-screen-gaze 6s ease-in-out infinite}.robot-face .robot-eye{flex:0 0 23%;height:48%;margin-bottom:18%;border:0;border-radius:45%;transform-origin:center;background:var(--screen-ink);box-shadow:0 0 6px color-mix(in srgb,var(--screen-glow) 45%,transparent);animation:viboo-screen-blink 4.8s ease-in-out infinite}.robot-face[data-expression=happy] .robot-eye{height:25%;background:transparent;border:0;border-top:max(1px,2cqw) solid var(--screen-ink);border-radius:80% 80% 0 0;box-shadow:none}.robot-face[data-expression=curious] .robot-eye:nth-child(2){height:54%}.robot-face[data-expression=alert] .robot-eye{height:28%;border-radius:2px}.robot-face[data-expression=left] .robot-gaze{translate:var(--gaze-x,-5%) var(--gaze-y,0)}.robot-face[data-expression=right] .robot-gaze{translate:var(--gaze-x,5%) var(--gaze-y,0)}.robot-face .robot-face-text{position:static;inset:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;width:90%;max-width:90%;height:86%;opacity:1;word-spacing:normal;white-space:nowrap;font:800 min(var(--screen-type,18cqw),var(--screen-max-type,20cqw))/1.15 ui-monospace,monospace;letter-spacing:-.025em;text-align:center;color:var(--screen-ink);text-shadow:0 0 5px color-mix(in srgb,var(--screen-glow) 30%,transparent);text-transform:none;animation:viboo-screen-arrive .16s ease-out both}.robot-face-text>span{display:block;max-width:100%}@keyframes viboo-screen-gaze{0%,20%,90%,to{transform:translateX(0)}35%,48%{transform:translateX(-5%)}65%,78%{transform:translateX(5%)}}@keyframes viboo-screen-blink{0%,12%,18%,to{transform:scaleY(1)}15%{transform:scaleY(.12)}}@keyframes viboo-screen-arrive{0%{transform:scale(.95)}to{transform:scale(1)}}.companion-caption{padding-bottom:8px}.robot-canvas{display:block;min-width:44px;min-height:44px;padding:0;border:0;background:transparent;color:inherit;appearance:none;-webkit-user-select:none;user-select:none;touch-action:manipulation;border-radius:24px}.robot-canvas:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.robot-display[data-tone=mint]{--screen-ink:#deffd6;--screen-glow:#65f59a;--screen-surface:#176345}.robot-display[data-tone=violet]{--screen-ink:#f1e8ff;--screen-glow:#a786ff;--screen-surface:#543584}.robot-display[data-tone=rose]{--screen-ink:#ffe7f4;--screen-glow:#ff88c8;--screen-surface:#783455}.robot-display[data-tone=amber]{--screen-ink:#fff0cc;--screen-glow:#ffb84d;--screen-surface:#715024}.robot-display:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:linear-gradient(155deg,color-mix(in srgb,var(--screen-surface) 78%,white),var(--screen-surface) 40%,color-mix(in srgb,var(--screen-surface) 65%,black));box-shadow:inset 0 0 8px #00152680}.robot-canvas[data-reaction] .robot-gaze{animation:none}.robot-canvas[data-reaction-phase="0"] .robot-motion{animation:viboo-boop .45s ease-out}@keyframes viboo-boop{35%{transform:translateY(-2px) rotate(-1.5deg)}70%{transform:rotate(1deg)}to{transform:none}}.robot-face .robot-mouth{position:absolute;left:39%;bottom:9%;width:22%;height:17%;border:0;border-bottom:max(1px,1.8cqw) solid var(--screen-ink);border-radius:0 0 50% 50%;filter:drop-shadow(0 0 2px var(--screen-glow))}.robot-face[data-expression=happy] .robot-mouth,.robot-face[data-expression=wink] .robot-mouth{left:35%;width:30%;height:20%;background:var(--screen-ink);border:0;border-radius:10% 10% 55% 55%}.robot-face[data-expression=curious] .robot-mouth{left:44%;width:12%;height:18%;border:max(1px,1.5cqw) solid var(--screen-ink);border-radius:50%;background:transparent}.robot-face[data-expression=alert] .robot-mouth{left:41%;width:18%;height:10%;border:0;border-top:max(1px,1.5cqw) solid var(--screen-ink);border-radius:50% 50% 0 0}.robot-face[data-expression=wink] .robot-eye:nth-child(2){height:10%;border-radius:50%;animation:none;transform:rotate(-8deg)}.robot-display{position:absolute;inset:0;pointer-events:none;clip-path:var(--screen-outline);isolation:isolate;--screen-ink:#d9faff;--screen-glow:#00cbf6;--screen-surface:#075276}.robot-display[data-tone=blue]{--screen-ink:#dcefff;--screen-glow:#74baff;--screen-surface:#16467c}.robot-display[data-tone=orange]{--screen-ink:#fff0ce;--screen-glow:#ffb258;--screen-surface:#87431d}.robot-display[data-tone=red]{--screen-ink:#ffe6e3;--screen-glow:#ff8278;--screen-surface:#942b37}.robot-face[data-expression=up] .robot-gaze{translate:0 -4%}.robot-face[data-expression=sleepy] .robot-eye{height:16%;border-radius:30%}.robot-face[data-expression=thinking] .robot-eye{height:30%}.robot-face[data-expression=thinking] .robot-eye:nth-child(2){height:45%}.robot-face[data-expression=thinking] .robot-mouth{height:5%;border-radius:0}.robot-face[data-expression=annoyed] .robot-eye{height:19%;border-radius:15%}.robot-face[data-expression=angry] .robot-mouth,.robot-face[data-expression=annoyed] .robot-mouth{height:10%;border:0;border-top:max(1px,1.8cqw) solid var(--screen-ink);border-radius:50% 50% 0 0;background:transparent}.robot-face[data-expression=angry] .robot-eye{height:28%;border-radius:12% 12% 50% 50%;transform:rotate(18deg);animation:none}.robot-face[data-expression=angry] .robot-eye:nth-child(2){transform:rotate(-18deg)}.robot-canvas[data-mood=angry] .robot-motion{animation:viboo-grumble .36s ease-out 1}@keyframes viboo-grumble{20%{transform:rotate(-1deg)}45%{transform:rotate(1deg)}70%{transform:rotate(-.5deg)}to{transform:none}}.robot-display[data-animation=still] .robot-gaze{translate:0 0}.companion-art .robot-canvas{max-width:400px;max-height:499.82px}.companion[data-role=guide] .robot-canvas{max-width:350px;max-height:437.35px}.companion[data-role=companion] .robot-canvas{max-width:330px;max-height:412.35px}.companion-small .robot-canvas{max-width:100%;max-height:100%}@media(max-width:640px){.app-stage{grid-template-rows:minmax(80px,30%) minmax(0,1fr)}.app-stage>.companion{grid-template-columns:minmax(100px,52%) minmax(0,1fr)}}@media(max-height:500px) and (min-aspect-ratio:1/1){.app-stage{grid-template-rows:minmax(0,1fr)}}.companion-art,.welcome-art{mix-blend-mode:normal}.robot-body,.robot-pose-sheet{mix-blend-mode:screen}.robot-canvas[data-art-ready=false] .robot-display{visibility:hidden}.experience-summary{margin-top:6px;max-width:62ch;color:var(--muted);font-size:clamp(.75rem,1.3vw,.95rem);line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.experience-back{align-self:flex-start}.choice-button[data-done=true]:after{content:"✓"/"";width:auto;height:auto;top:5px;right:9px;border-radius:0;background:none;box-shadow:none;color:var(--green);font-size:.8rem;line-height:1;opacity:1}.lesson-summary{margin:0 0 18px;font-size:1rem;line-height:1.55}.lesson-heading{margin:22px 0 10px;font:500 .7rem/1.6 ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}.lesson-steps{margin:0;padding-left:1.5rem;display:grid;gap:10px}.lesson-steps li{padding-left:4px}.lesson-steps li::marker{color:var(--green);font-weight:800}.lesson-code{margin:0;padding:12px 14px;max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#040c1b;color:#c9f3ff;font:.82rem/1.6 ui-monospace,monospace;white-space:pre}.lesson-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:10px;margin-top:22px}.lesson-split section{min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px}.lesson-split h3{margin-bottom:6px;font-size:.85rem}.lesson-split p{color:var(--muted);font-size:.9rem}.lesson-split section:first-child{border-color:#4cddff55;background:linear-gradient(160deg,#00cbf612,transparent)}.lesson-split section:first-child h3{color:var(--blue)}.lesson-split section:last-child{border-color:#82f65355;background:linear-gradient(160deg,#46ed640f,transparent)}.lesson-split section:last-child h3{color:var(--green)}.prompt-block{display:grid;gap:10px;padding:14px;border:1px dashed #4cddff66;border-radius:12px;background:#0b1d35}.prompt-text{font:.88rem/1.55 ui-monospace,monospace;white-space:pre-wrap}.prompt-block .quiet-button{justify-self:start}.term-links{display:flex;flex-wrap:wrap;gap:8px}.term-chip{display:inline-flex;align-items:center;min-height:44px;padding:4px 14px;border:1px solid var(--line);border-radius:999px;color:var(--green);font:700 .72rem/1.2 ui-monospace,monospace;letter-spacing:.08em}.term-chip:focus-visible,.term-chip:hover{border-color:var(--green);background:#46ed6412}.panel-links,.viboo-panel .panel-actions{flex-wrap:wrap;margin-top:24px}.panel-links{display:flex;gap:10px}.panel-links>*{flex:1 1 14rem;min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;text-align:center}.verdict{display:inline-block;margin-bottom:14px;padding:6px 12px;border:1px solid;border-radius:999px;font:800 .75rem/1.3 ui-monospace,monospace;letter-spacing:.1em}.verdict[data-verdict=yes]{color:var(--green);border-color:#82f65380;background:#46ed6414}.verdict[data-verdict=together]{color:var(--blue);border-color:#4cddff80;background:#00cbf614}.verdict[data-verdict=guide]{color:var(--orange);border-color:#ffa52c80;background:#ffa52c14}.verdict[data-verdict=no]{color:#ff9d9d;border-color:#ff9d9d80;background:#ff5a5a14}@container experience (max-height:22rem){.experience-summary{display:none}}.app-shell{overflow:clip}.welcome-wordmark img{aspect-ratio:2172/724;height:auto;object-fit:contain}