
:root{color-scheme:dark;--bg:#101b23;--panel:#172932;--line:#36505b;--ink:#edf8ee;--muted:#b4c9ce;--green:#bbf776;--blue:#89d9ef;--yellow:#ffe494}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer;min-height:44px;border:1px solid var(--line);background:#213944;color:var(--ink);border-radius:12px;padding:10px 16px;font-weight:650}button:hover{border-color:var(--green);background:#304851}button:disabled{opacity:.5;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}button.primary{background:var(--green);color:#1d3019;border-color:var(--green)}button.selected{border:2px solid var(--green);background:#30472e}button.small{padding:8px 12px;font-size:14px}.muted,small{color:var(--muted)}small{font-size:14px}h1,h2,h3,p{margin-top:0}h1{font-size:22px;letter-spacing:1px;margin:0}h2{font-size:22px;margin-bottom:16px}h3{font-size:17px}label{display:block;font-weight:600;margin:12px 0 6px}input:not([type=checkbox]):not([type=range]),select{width:100%;border:1px solid var(--line);border-radius:9px;padding:10px;background:#10222b;color:var(--ink)}input[type=range]{width:100%;accent-color:var(--green)}input[type=checkbox]{width:20px;height:20px;vertical-align:middle;accent-color:var(--green)}header{max-width:1080px;margin:auto;padding:28px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{color:var(--green);font-family:monospace}.eyebrow{text-transform:uppercase;letter-spacing:2px;font:700 13px monospace;color:var(--green);margin-bottom:12px}main{max-width:1080px;margin:0 auto;padding:0 24px 28px}.layout{display:grid;grid-template-columns:1fr 340px;gap:24px}.card{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:26px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.spread{justify-content:space-between}.stack>*+*{margin-top:20px}.buddy-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.buddy-option{padding:12px 4px}.pet{width:84px;height:90px;object-fit:contain;image-rendering:pixelated;display:block;margin:auto}.buddy-option .pet{width:56px;height:60px;margin-bottom:8px}.stage{text-align:center;position:relative;background:#10242c;border:1px solid #34545a;border-radius:18px;padding:24px 18px;margin-bottom:22px}.stage .pet{width:112px;height:120px;margin:16px auto}.speech{color:var(--yellow);min-height:24px;margin-bottom:0}.timer{font:700 clamp(48px,8vw,78px)/1.15 monospace;letter-spacing:2px;margin:14px 0;color:var(--green);font-variant-numeric:tabular-nums}.break .timer{color:var(--blue)}.celebrate .pet{animation:hop .7s ease-in-out 3}.break .pet{animation:stretch 4s ease-in-out infinite}progress{width:100%;height:12px;accent-color:var(--green);display:block;margin:14px 0}progress::-webkit-progress-bar{background:#2e424b;border-radius:20px}progress::-webkit-progress-value{background:var(--green);border-radius:20px}.rounds{display:flex;gap:8px;justify-content:center;margin-top:16px}.round{height:10px;width:30px;background:#36505b;border-radius:6px}.round.done{background:var(--green)}.hint{background:#223d42;padding:16px;border-radius:12px}.stickers{font-size:29px;letter-spacing:6px;overflow-wrap:anywhere}.footer{margin-top:24px;font-size:14px;color:var(--muted)}a{color:var(--blue)}dialog{color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:22px;width:min(540px,calc(100% - 24px));padding:26px;max-height:90vh;overflow:auto}dialog::backdrop{background:#061117d9;backdrop-filter:blur(5px)}dialog .actions{margin-top:24px;justify-content:space-between}#notice{min-height:24px;color:var(--yellow);margin-top:14px}#floatbox{position:fixed;right:18px;bottom:18px;width:310px;max-width:calc(100vw - 24px);z-index:10;box-shadow:0 12px 60px #0008;padding:16px;border:2px solid var(--green)}#floatbox .handle{cursor:grab;touch-action:none;user-select:none;padding:4px 0 12px}.compact .pet{width:56px;height:60px}.compact .timer{font-size:44px;margin:8px 0}.compact{text-align:center}.compact p{margin:4px 0}.compact .row{justify-content:center}.mini-window{padding:14px}.mini-window header,.mini-window main{display:none}#settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tour-count{color:var(--green);font:700 14px monospace;margin-bottom:16px}.practice-timer{font:700 48px monospace;color:var(--green);text-align:center;margin:18px}.hidden,[hidden]{display:none!important}@keyframes hop{50%{transform:translateY(-12px)}}@keyframes stretch{50%{transform:scaleY(1.06)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}.no-motion *{animation:none!important;transition:none!important}@media(max-width:760px){header{padding:18px 16px;align-items:flex-start}main{padding:0 14px 24px}.layout{grid-template-columns:1fr}.card{padding:20px}header .row{justify-content:flex-end}h1{font-size:18px}}@media(max-width:380px){#settings-grid{grid-template-columns:1fr}button{padding:9px 11px}.timer{font-size:48px}}

/* Quiet working surface: options appear only when requested. */
header{max-width:660px;padding:22px 24px}.brand{font:700 19px system-ui;color:var(--ink);letter-spacing:0}main{max-width:560px;padding:16px 24px 28px}.focus-surface{text-align:center}#mission-title{font-size:23px;font-weight:650;margin:8px 0 0}.stage{border:0;background:none;margin:0;padding:12px 0 0}.eyebrow{font:500 15px system-ui;letter-spacing:0;text-transform:none;color:var(--muted);margin:0}.dial{width:min(300px,100%);aspect-ratio:1;position:relative;margin:22px auto}.ring{width:100%;height:100%;display:block;overflow:visible}.ring circle{fill:none;stroke-width:7}.ring-track{stroke:#2a3e47}.ring-fill{stroke:var(--green);stroke-linecap:butt;transition:stroke-dashoffset .2s linear}.break .ring-fill{stroke:var(--blue)}.dial-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px}.pet,.stage .pet{width:90px;height:90px;border-radius:24px;image-rendering:auto;margin:0;animation:none!important}.timer{font:650 46px/1.1 system-ui;font-variant-numeric:tabular-nums;color:var(--ink);letter-spacing:0;margin:0}.break .timer{color:var(--ink)}.speech{font-size:16px;color:var(--muted);min-height:24px;margin:0 0 22px}.ready-row{justify-content:center;flex-wrap:nowrap}.ready-row select{width:160px!important}#ready-controls{max-width:340px;margin:0 auto 18px}#main-actions{justify-content:center;gap:12px}#main-actions .primary{min-width:190px;border-radius:16px;padding:14px 24px;font-size:18px}#main-actions button:not(.primary){background:none;border:0;font-weight:500}.quiet{display:block;background:none;border:0;color:var(--muted);font-size:14px;font-weight:500;margin:12px auto 0}.quiet:hover{background:none;color:var(--ink)}.round-caption{display:block;font-size:14px;color:var(--muted);margin:14px 0 0}#notice{font-size:15px;min-height:0;margin:16px 0 0}#notice:empty{display:none}#between{margin-top:22px;font-size:16px;background:none;padding:0}#between .row{justify-content:center}#between p{margin:0}.menu-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.buddy-option .pet{margin:0 auto 12px;width:68px;height:68px;border-radius:18px}.buddy-option{padding:16px 4px}.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}.practice-dial{width:230px}.compact .dial{width:200px;margin:10px auto 18px}.compact .dial-center{gap:12px}.compact .pet{width:65px;height:65px;border-radius:18px}.compact .timer{font-size:34px;margin:0}.compact .ring circle{stroke-width:6}.compact .row{gap:6px}.compact button{font-size:14px}.mini-window{padding:16px}#floatbox{background:var(--bg);border:1px solid var(--line);width:290px}.footer{font-size:13px}.break .pet,.celebrate .pet{animation:none!important}@media(max-width:380px){header{padding:16px 12px;gap:8px}header button{font-size:13px!important;padding:8px!important}.brand{font-size:17px}main{padding:8px 16px 20px}.dial{width:250px}.menu-options{grid-template-columns:1fr}}

.quick-views{justify-content:center;gap:6px;margin:22px 0 8px}.quick-views button{background:transparent;font-size:13px;padding:8px 10px;border-color:var(--line);font-weight:500}.ring-fill,.break .ring-fill{stroke:var(--accent)}.ring-track{stroke:var(--line);opacity:.45}button.primary{background:var(--green);border-color:var(--green);color:#211027}button.selected{border-color:var(--accent);background:var(--panel)}button:hover{border-color:var(--green);background:var(--panel)}input:not([type=checkbox]):not([type=range]),select{background:var(--bg)}button{background:var(--panel)}.mission-chip{padding:12px 16px;border-left:3px solid var(--accent);background:var(--bg);border-radius:8px;overflow-wrap:anywhere}#sounds-dialog .row{margin-top:18px}#sound-status{min-height:24px;margin-top:18px}

/* Get ADHD Care branding; buddy colors remain the active timer theme. */
header{max-width:760px}.care-brand{display:flex;align-items:center;gap:10px;color:#f6f4fa;text-decoration:none}.care-brand img{width:52px;height:52px;object-fit:contain;background:#FCFAF7;border-radius:12px;padding:5px}.care-brand span{font:700 18px Georgia,serif;line-height:1.2}.care-brand small{display:block;color:var(--muted);font:500 13px system-ui;margin-top:4px}.care-footer{text-align:center;font-size:12px;color:var(--muted);padding:8px 20px 20px}.care-footer a{color:var(--green)}.robot-shell{position:relative;width:150px;height:150px;margin:auto}.robot-shell.large{width:min(280px,100%);height:auto;aspect-ratio:1}.robot-piece{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.robot-body{clip-path:inset(29% 33% 35% 33%)}.robot-arm-left{clip-path:inset(30% 67% 25% 12%)}.robot-arm-right{clip-path:inset(30% 12% 25% 67%)}.robot-legs{clip-path:inset(65% 30% 0 30%)}.robot-face{position:absolute;top:3%;left:36%;width:28%;height:28%;border-radius:22%;object-fit:contain}.robot-shell[data-level="0"] .robot-face{top:20%;left:20%;width:60%;height:60%}.dial-center{gap:5px}.compact .robot-shell{width:110px;height:110px}.compact .dial-center{gap:4px}.robot-milestones{padding:0;margin:20px 0;list-style:none}.robot-milestones li{display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line);color:var(--muted)}.robot-milestones li.unlocked{color:var(--green)}#robot-next{text-align:center}.robot-progress-link{color:var(--green);margin-top:12px}.care-footer{max-width:640px;margin:auto}@media(max-width:430px){header{flex-wrap:wrap;justify-content:center;gap:12px}.care-brand span{font-size:17px}.care-brand img{width:44px;height:44px}.care-footer{font-size:12px}}

.xp-card{width:100%;margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:14px;text-align:left;background:var(--panel)}.xp-caption{display:flex;justify-content:space-between;gap:8px;font-size:12px}.xp-bar{display:block;width:100%;height:10px;margin:9px 0;accent-color:var(--green);border:0;border-radius:10px;overflow:hidden}.xp-bar::-webkit-progress-bar{background:var(--bg)}.xp-bar::-webkit-progress-value{background:var(--green)}.xp-bar::-moz-progress-bar{background:var(--green)}.xp-locks{display:flex;justify-content:space-between;font-size:12px;gap:8px}.xp-locks>span{opacity:.65}.xp-locks>span.earned{opacity:1;color:var(--green)}.xp-locks small{display:block;padding-top:3px}.compact .xp-card{box-sizing:border-box}#floatbox{max-height:calc(100dvh - 24px);overflow:auto}

.monster-shell{position:relative;width:150px;height:150px;flex-shrink:0}.monster-shell.large{width:250px;height:250px;margin:auto}.monster-shell.choice,.monster-shell.small-monster{width:90px;height:90px;margin:auto}.monster-shell.mini-robot{width:110px;height:110px}.monster-piece{position:absolute;object-fit:contain}.monster-piece.body{left:25%;top:25%;width:50%;height:50%}.monster-piece.arm-left{left:9%;top:40%;width:23%;height:40%;transform:scaleX(-1)}.monster-piece.arm-right{right:9%;top:40%;width:23%;height:40%}.monster-piece.leg-left{left:27%;top:68%;width:20%;height:28%;transform:scaleX(-1)}.monster-piece.leg-right{right:27%;top:68%;width:20%;height:28%}.monster-piece.eye-left{left:33%;top:36%;width:15%;height:18%}.monster-piece.eye-right{right:33%;top:36%;width:15%;height:18%}.monster-piece.mouth{left:39%;top:58%;width:22%;height:10%}.monster-piece.detail-left{left:18%;top:7%;width:25%;height:33%;transform:scaleX(-1)}.monster-piece.detail-right{right:18%;top:7%;width:25%;height:33%}#monster-options button[aria-pressed=true]{outline:2px solid var(--green)}

/* Small, slow movements keep the timer and surrounding layout steady. */
@keyframes monster-bob {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}
@keyframes monster-sway {
  0%, 100% { rotate: -2deg; }
  50% { rotate: 2deg; }
}
.monster-shell { animation: monster-bob 4.8s ease-in-out infinite; }
.buddy-option:nth-child(2) .monster-shell { animation-delay: -1.6s; }
.buddy-option:nth-child(3) .monster-shell { animation-delay: -3.2s; }
.monster-piece.arm-left, .monster-piece.arm-right {
  transform-origin: 50% 10%;
  animation: monster-sway 5.6s ease-in-out infinite;
}
.monster-piece.arm-right { animation-direction: reverse; }
.monster-piece.detail-left, .monster-piece.detail-right {
  transform-origin: 50% 90%;
  animation: monster-sway 6.4s ease-in-out infinite;
}
.monster-piece.detail-right { animation-direction: reverse; }
.no-motion .monster-shell, .no-motion .monster-piece { animation: none !important; }
@media (prefers-reduced-motion: reduce) {
  .monster-shell, .monster-piece { animation: none !important; }
}

@font-face{font-family:Arcade;src:url('assets/fonts/VT323-Regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:LCD;src:url('assets/fonts/DSEG7Classic-Regular.woff2') format('woff2');font-display:swap}
h2,#mission-title,.xp-caption strong{font-family:Arcade,monospace;font-weight:400;letter-spacing:.4px}
h2,#mission-title{font-size:30px;line-height:1.15}
#main-actions .primary{font-family:Arcade,monospace;font-size:25px;font-weight:400}
.timer,.compact .timer{font-family:LCD,monospace;font-size:36px;font-weight:400;line-height:1.35;letter-spacing:1px;color:#263a24;background:#c3d1a9;border:3px solid #536347;border-radius:7px;padding:8px 10px;box-shadow:inset 0 2px 4px #263a2430;font-variant-numeric:tabular-nums}
.compact .timer{font-size:27px;padding:6px 8px}.break .timer{color:#263a24}
.mission-help{font-size:14px;color:var(--muted);line-height:1.5;margin:12px 0;text-align:left}
#ready-controls>label{text-align:left}.compact-mission{font-size:14px;overflow-wrap:anywhere}

/* Bare seven-segment digits, tinted to the selected buddy. */
.timer,.compact .timer,.break .timer{
  color:var(--accent);background:none;border:0;border-radius:0;box-shadow:none;
  text-shadow:0 0 5px color-mix(in srgb,var(--accent) 25%,transparent);
  animation:clock-glow 4s ease-in-out infinite;
}
@keyframes clock-glow{
  0%,100%{text-shadow:0 0 4px color-mix(in srgb,var(--accent) 20%,transparent)}
  50%{text-shadow:0 0 8px color-mix(in srgb,var(--accent) 45%,transparent)}
}
.no-motion .timer{animation:none!important}
@media(prefers-reduced-motion:reduce){.timer{animation:none!important}}

.team-sprite{display:block;width:64px;height:64px;flex-shrink:0;background-image:url('assets/team/characters.png');background-size:3672px 812px;image-rendering:pixelated;margin:auto}.team-buddy{width:150px;height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;animation:monster-bob 4.8s ease-in-out infinite}.team-buddy>span:last-child{font-family:Arcade,monospace;font-size:22px;max-width:100%;overflow-wrap:anywhere;line-height:1}.team-buddy.mini-robot,.team-buddy.small-monster{height:110px;width:110px}#team-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}.team-member{border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px;text-align:center;overflow-wrap:anywhere}.team-member button{padding:8px;font-size:14px}.team-member button[aria-pressed=true]{border-color:var(--green)}.no-motion .team-buddy{animation:none!important}@media(prefers-reduced-motion:reduce){.team-buddy{animation:none!important}}

#main-robot,#workshop-robot{position:relative}
.buddy-reveal{position:absolute;pointer-events:none;z-index:2;left:50%;top:50%;width:160px;height:160px;transform:translate(-50%,-50%);background-image:url('assets/effects/reveal.png');background-size:2080px 1440px;background-repeat:no-repeat;image-rendering:pixelated;animation:buddy-reveal-frames .9s steps(13) 1 forwards;opacity:.8}
@keyframes buddy-reveal-frames{from{background-position-x:0}to{background-position-x:-2080px}}
.no-motion .buddy-reveal{display:none!important}
@media(prefers-reduced-motion:reduce){.buddy-reveal{display:none!important}}

textarea{box-sizing:border-box;width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:10px;resize:vertical}.mission-checklist{text-align:left;margin:20px auto;padding:16px;border:1px solid var(--line);border-radius:14px;max-width:420px}.mission-checklist p{font-size:14px}.mission-checklist label{font-weight:400;overflow-wrap:anywhere}.mission-checklist h3{font-family:Arcade,monospace;font-size:25px;margin-bottom:8px}

.supply-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.supply-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px;cursor:grab;font-size:14px}.supply-item img{width:54px;height:54px;object-fit:contain}.supply-item small{font-size:11px}.supply-ready{border:2px dashed var(--green);border-radius:14px;padding:12px;min-height:108px}.supply-ready>p{grid-column:1/-1;align-self:center;text-align:center;margin:0;color:var(--muted)}

#stickers{display:grid;grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:12px;letter-spacing:normal}.earned-sticker{position:relative;padding:8px;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;align-items:center}.earned-sticker img{width:72px;height:72px;object-fit:contain}.earned-sticker span{font:600 12px system-ui;color:var(--muted)}#stickers>p{grid-column:1/-1;font-size:14px}

.task-card{position:relative;padding:18px;border:1px solid var(--green);border-radius:14px;margin:12px 0;overflow:visible}.task-vanish{animation:task-away .9s ease forwards}@keyframes task-away{0%,60%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.9) rotate(var(--task-turn,0deg))}}.graph-bars{display:flex;align-items:flex-end;gap:6px;margin:12px 0 24px;min-height:120px}.graph-bars>div{flex:1;text-align:center;min-width:0}.graph-bars span{display:block;background:var(--green);min-height:2px;border-radius:4px;margin:4px auto;width:75%}.graph-bars small{font-size:10px}.quiet img{vertical-align:middle}.no-motion .task-vanish{animation:none}@media(prefers-reduced-motion:reduce){.task-vanish{animation:none}}

.consult-sticky{position:fixed;right:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:20;display:flex;align-items:center;gap:8px;box-shadow:0 4px 20px #0005;font-size:13px;max-width:calc(100vw - 32px)}body{padding-bottom:80px}#floatbox{bottom:90px}
#celebration{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;background:var(--bg);padding:24px;overflow:auto}#celebration::backdrop{background:var(--bg)}.celebration-content{position:relative;z-index:1;min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px}#celebration-title{font-size:42px}#celebration-team{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px;max-width:720px;animation:team-arrive .6s 1.6s both}.celebrating-recruit{display:flex;flex-direction:column;align-items:center;gap:8px;max-width:100px;overflow-wrap:anywhere;font-family:Arcade,monospace;font-size:20px}.dancing-buddy{animation:buddy-dance .75s 2.2s 6 ease-in-out}.dancing-buddy .monster-shell{animation:none}#celebration-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}#celebration-confetti i{position:absolute;top:-20px;left:var(--x);width:10px;height:10px;background:var(--color);animation:pixel-fall 2.8s var(--delay) linear both}@keyframes pixel-fall{0%{transform:translateY(-20px) rotate(0)}100%{transform:translateY(105vh) rotate(360deg);opacity:0}}@keyframes team-arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes buddy-dance{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-22px) rotate(5deg)}}#celebration.still *{animation:none!important}#celebration.still #celebration-confetti{display:none}@media(prefers-reduced-motion:reduce){#celebration *{animation:none!important}#celebration-confetti{display:none}}

/* Keep the buddy anchored; only its arms move. */
.monster-shell,.dancing-buddy,.team-buddy{animation:none!important}
.monster-piece.detail-left,.monster-piece.detail-right{animation:none!important}
.dancing-buddy .monster-piece.arm-left,.dancing-buddy .monster-piece.arm-right{animation:monster-sway .8s ease-in-out 6}

.graphs-sticky{position:fixed;left:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:20;display:flex;align-items:center;gap:8px;box-shadow:0 4px 20px #0005;font-size:13px}.graphs-sticky img{flex-shrink:0}@media(max-width:520px){.graphs-sticky{padding:8px}.graphs-sticky span{display:none}.consult-sticky{max-width:calc(100vw - 100px);padding:8px;font-size:12px}}

#victory-lyrics{max-height:190px;overflow-y:auto;white-space:pre-wrap;line-height:1.8;padding:18px;width:min(480px,100%);border:1px solid var(--line);border-radius:12px;background:var(--panel);text-align:center}#victory-song{width:min(400px,100%)}

.mohawk{display:block;object-fit:contain;width:150px;height:150px;animation:none!important}.mohawk.mini-robot{width:110px;height:110px}.mohawk.small-monster{width:90px;height:90px;margin:auto}.mohawk.celebration-buddy{width:180px;height:180px}

.pixel-sidekick{display:block;width:96px;height:96px;flex-shrink:0;margin:auto;background-image:url('assets/pixel-robots/idle.png');background-size:2304px 96px;background-repeat:no-repeat;background-position:var(--robot-x) 0;image-rendering:pixelated;animation:pixel-idle 1s steps(4) infinite}@keyframes pixel-idle{from{background-position-x:var(--robot-x)}to{background-position-x:calc(var(--robot-x) - 2304px)}}#celebration .pixel-sidekick{background-image:url('assets/pixel-robots/win.png');background-size:2880px 96px;animation:pixel-win 1s steps(5) 5}@keyframes pixel-win{from{background-position-x:var(--robot-x)}to{background-position-x:calc(var(--robot-x) - 2880px)}}.no-motion .pixel-sidekick,#celebration.still .pixel-sidekick{animation:none!important}@media(prefers-reduced-motion:reduce){.pixel-sidekick{animation:none!important}}.team-buddy:has(.pixel-sidekick){height:auto;min-height:110px}

.color-character-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;max-width:360px;margin:12px auto 20px}.color-character-options button{padding:6px 2px;font-size:12px;min-width:0}.color-character-options img{display:block;width:100%;height:80px;object-fit:contain}.color-character-options button[aria-pressed=true]{outline:2px solid var(--accent);background:var(--panel)}#start-characters h2{margin-bottom:8px}@media(max-width:380px){.color-character-options{gap:4px}.color-character-options img{height:60px}}

/* Compensate for the colorful pack's left-weighted sprite canvas. */
.colorful-robot{transform:translateX(calc(9% + 5px)) scale(1.2);transform-origin:center}
.color-character-options .colorful-preview{transform:translateX(calc(7% + 5px)) scale(1.15);transform-origin:center}
.color-character-options button{overflow:hidden}

.cute-robot{transform-origin:50% 87%;transition:transform .45s ease-out}.cute-robot[data-pose="died"]{transform:rotate(75deg)}

.lab-droid{display:block;width:96px;height:96px;flex-shrink:0;margin:auto;background-size:384px 96px;background-repeat:no-repeat;image-rendering:pixelated;animation:lab-idle 1s steps(4) infinite}@keyframes lab-idle{from{background-position-x:0}to{background-position-x:-384px}}.no-motion .lab-droid,#celebration.still .lab-droid{animation:none!important}@media(prefers-reduced-motion:reduce){.lab-droid{animation:none!important}}

.mission-graph article{padding:12px 0;border-bottom:1px solid var(--line)}.mission-graph article strong,.mission-graph article small{display:block;overflow-wrap:anywhere}.mission-graph p{font-size:13px;margin:6px 0 12px}.mission-check-bar{display:flex;width:100%;height:20px;border-radius:6px;overflow:hidden;margin-top:8px}.check-yes{background:var(--accent)}.check-no{background:#dca675}

.attention-pulse::after{content:"";position:fixed;inset:0;z-index:999;pointer-events:none;box-shadow:inset 0 0 32px 12px var(--accent);animation:attention-glow 2s ease-in-out infinite}.attention-pulse #attention,.attention-pulse #floatbox{animation:attention-glow 2s ease-in-out infinite}@keyframes attention-glow{0%,100%{box-shadow:inset 0 0 8px 2px color-mix(in srgb,var(--accent) 15%,transparent)}50%{box-shadow:inset 0 0 32px 12px color-mix(in srgb,var(--accent) 35%,transparent)}}.no-motion.attention-pulse::after{display:none}@media(prefers-reduced-motion:reduce){.attention-pulse::after{display:none}}

#main-robot{position:relative}.robot-impact{position:absolute;left:50%;bottom:-8px;transform:translateX(-50%);width:160px;height:80px;pointer-events:none;background-size:960px 80px;background-repeat:no-repeat;image-rendering:pixelated;animation:robot-impact .8s steps(6) forwards;z-index:0}.dial-center>.robot-impact{bottom:42px}#main-robot>:not(.robot-impact){position:relative;z-index:1}@keyframes robot-impact{from{background-position-x:0}to{background-position-x:-960px}}.no-motion .robot-impact{display:none}@media(prefers-reduced-motion:reduce){.robot-impact{display:none}}

.dancing-buddy{position:relative;isolation:isolate}.celebration-orb{position:absolute;left:50%;top:50%;width:300px;height:292px;transform:translate(-50%,-62%);z-index:-1;pointer-events:none;background-image:url('assets/effects/celebration-orb.webp');background-size:4500px 292px;background-repeat:no-repeat;animation:celebration-orb 1.5s steps(15) infinite}@keyframes celebration-orb{from{background-position-x:0}to{background-position-x:-4500px}}#celebration.still .celebration-orb,.no-motion .celebration-orb{animation:none!important}@media(prefers-reduced-motion:reduce){.celebration-orb{animation:none!important}}

.mohawk.coach-character{transform:scale(1.65);transform-origin:center}.color-character-options button[data-colorbot="coach"] img{transform:scale(1.65)}.dancing-buddy>.coach-character{position:relative;z-index:1}

.packed-materials{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0}.packed-materials img{width:48px;height:48px;object-fit:contain}button.care-brand{background:none;border:0;padding:0;text-align:left}.workshop-yes{display:inline-block;padding:10px 24px;border-radius:12px;background:var(--green);color:var(--bg);font-weight:700;text-decoration:none}#floatbox{max-height:calc(100dvh - 24px);overflow:auto}.compact .row{position:relative;z-index:2}.compact>img{pointer-events:none}#celebration-team{gap:40px}
