/* Cat Adventures / Amber Paw: kawaii forest-camp theme. System fonts only. */
:root{--ink:#4a3b5c;--muted:#6e6280;--pink:#ff9ec4;--pink-d:#d9468a;--mint:#bfe6cc;--moss:#3f8a5e;--lav:#e4d7ff;--sky:#d3ecff;--cream:#fffaf3;--sun:#ffe27a;--card:#ffffffee;--r:22px;
  --font:ui-rounded,"SF Pro Rounded","Nunito","Varela Round","Arial Rounded MT Bold",system-ui,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;font:18px/1.45 var(--font);color:var(--ink);background:linear-gradient(#fff6fb,#eefaf2 60%);overflow-x:hidden}
a{color:inherit}
:focus-visible{outline:4px solid #7a5cff;outline-offset:3px;border-radius:14px}
.bg{position:fixed;left:0;right:0;bottom:0;height:42vh;z-index:-1;pointer-events:none}.bg svg{width:100%;height:100%;display:block}
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:8px;padding:8px 10px;background:#fffaf3e8;backdrop-filter:blur(6px);border-bottom:3px dashed #ffd1e3;flex-wrap:wrap}
.brand{font-weight:800;text-decoration:none;font-size:20px;min-height:48px;display:inline-flex;align-items:center;padding:0 6px;color:var(--moss)}
.tabs{display:flex;gap:6px;flex:1 1 100%;order:3;overflow-x:auto;scrollbar-width:none;padding:2px}
.tabs::-webkit-scrollbar{display:none}
.tab{flex:0 0 auto;min-height:48px;padding:0 16px;display:inline-flex;align-items:center;border-radius:999px;background:#fff;border:2px solid #f3d6e6;text-decoration:none;font-weight:700;font-size:16px;color:var(--ink)}
.tab.on{background:var(--pink);border-color:var(--pink);color:#3b1830}
.icon-btn{margin-left:auto;min-width:48px;min-height:48px;border-radius:50%;border:2px solid #f3d6e6;background:#fff;font-size:22px;cursor:pointer}
@media(min-width:900px){.tabs{flex:1;order:0;justify-content:center}.icon-btn{margin-left:0}}
.note{margin:8px auto;max-width:900px;background:var(--sun);padding:8px 14px;border-radius:14px;text-align:center}
.page{max-width:1040px;margin:0 auto;padding:16px 14px 40px}
.foot{text-align:center;padding:10px 0 24px}.foot a{display:inline-flex;min-height:48px;align-items:center;padding:0 18px;color:var(--muted);font-size:15px}
.title{font-size:clamp(26px,6vw,40px);margin:.2em 0;letter-spacing:.3px;color:var(--ink)}
.sub{font-size:22px;margin:18px 0 10px}.lead{font-size:20px}.muted{color:var(--muted)}.center{text-align:center;justify-content:center}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.row.between{justify-content:space-between}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:52px;padding:0 22px;border-radius:999px;border:0;background:var(--pink);color:#3b1830;font:800 18px var(--font);text-decoration:none;cursor:pointer;box-shadow:0 5px 0 #e07aa6;transition:transform .12s}
.btn:active{transform:translateY(3px);box-shadow:0 2px 0 #e07aa6}
.btn.soft{background:#fff;border:2px solid #f3d6e6;box-shadow:0 4px 0 #f3d6e6}.btn.small{min-height:48px;padding:0 14px;font-size:16px}
.btn.danger{background:#ffd6d6;box-shadow:0 4px 0 #f0a8a8}
.card{background:var(--card);border-radius:var(--r);padding:16px 18px;margin:14px 0;box-shadow:0 6px 0 #f3e3ee,0 10px 30px #c8a8d022;border:2px solid #fbe9f2;position:relative}
.card h2{margin:0 0 8px;font-size:22px}
.draft{display:inline-block;font:800 11px var(--font);letter-spacing:1px;background:#fff0c8;color:#7a5a00;padding:3px 8px;border-radius:999px;vertical-align:middle}
.card>.draft{position:absolute;top:12px;right:14px}
.welcome{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.hero{width:150px;flex:0 0 auto}.hero.big{width:200px;margin:8px auto}
.cat-svg,.rocket-svg{display:block;width:100%;height:auto;overflow:visible}
.pill{display:inline-flex;align-items:center;gap:6px;background:#fff;border-radius:999px;padding:4px 14px 4px 8px;font-weight:800;border:2px solid #f3d6e6;min-height:40px}.pill>span{display:flex}
.hud{display:flex;gap:8px;flex-wrap:wrap}.stats{margin-top:10px}
.todo,.checks{padding-left:0;list-style:none;margin:6px 0}.todo li{padding:6px 0 6px 30px;background:no-repeat left center/22px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M5 27Q4 8 27 5Q26 26 5 27Z' fill='%23a8e0bf'/%3E%3C/svg%3E")}
.checks li{display:flex;align-items:center;gap:12px;min-height:52px}.checks input{width:30px;height:30px;accent-color:var(--pink-d)}.checks label{flex:1;padding:10px 0}
/* game */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.cat-card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;border-radius:var(--r);border:3px solid #f3d6e6;background:#fff;font:inherit;color:inherit;cursor:pointer;box-shadow:0 5px 0 #f3e3ee}
.cat-card.on,.cat-card:hover{border-color:var(--pink)}.cat-art{width:110px}.cat-name{font-weight:800;font-size:19px}.cat-bio{font-size:14px;color:var(--muted);text-align:center}
.game-top{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.worlds{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.world{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 10px;border-radius:var(--r);text-decoration:none;background:#fff;border:3px solid #fff;box-shadow:0 6px 0 #0001;min-height:150px;text-align:center}
.w-mul{background:#dff5e7}.w-add{background:#fff3d1}.w-sub{background:#dcefff}.w-div{background:#ffe3ec}.w-frac{background:#ece3ff}
.world.locked{filter:grayscale(.7);opacity:.6}.world:not(.locked):active{transform:scale(.97)}
.planet{position:relative;width:64px;height:64px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:30px;font-weight:900;box-shadow:inset 0 -5px 0 #0001}
.leafmark{position:absolute;top:-8px;right:-10px}.wname{font-weight:800;font-size:18px}.wlvl{font-size:14px;color:var(--muted)}
.closet{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}
.acc{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:56px;padding:8px;border-radius:18px;border:3px solid #f3d6e6;background:#fff;font:700 15px var(--font);color:var(--ink);cursor:pointer}
.acc.on{border-color:var(--pink);background:#fff0f6}.acc:disabled{opacity:.5;cursor:default}.acc-art{width:70px;font-size:28px}
.play-top{display:flex;gap:10px;align-items:center}
.fuel{flex:1;height:22px;border-radius:999px;background:#fff;border:3px solid #f3d6e6;overflow:hidden}
.fuel-fill{height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#a8e0bf,#ffe27a,#ff9ec4);transition:width .5s cubic-bezier(.3,1.6,.5,1)}
.play{display:grid;gap:12px;margin-top:10px}
.stage{display:flex;justify-content:center;align-items:flex-end;gap:6px;height:130px}
.kitty{width:110px}.rocket{width:60px}
.board{background:var(--card);border-radius:var(--r);padding:14px;box-shadow:0 6px 0 #f3e3ee}
.intro{background:#eefaf2;border-radius:16px;padding:10px 12px;margin:0 0 10px;font-size:16px}
.problem{text-align:center}
.eq{font-size:clamp(40px,11vw,60px);font-weight:900;text-align:center;font-variant-numeric:tabular-nums;letter-spacing:1px}
.vert{display:inline-block;font:900 clamp(40px,11vw,56px)/1.15 ui-monospace,Menlo,Consolas,monospace;white-space:pre;text-align:right}
.vert .line{border-top:5px solid var(--ink);border-radius:3px;margin-top:4px}
.answer{font-size:42px;font-weight:900;text-align:center;min-height:64px;margin:6px auto 10px;max-width:260px;border-radius:18px;background:#fff;border:3px dashed var(--pink);padding:2px 10px}
.answer.empty{color:#b9a7c6;font-size:26px;line-height:56px}
.numpad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:360px;margin:0 auto}
.key{min-height:60px;border-radius:20px;border:0;background:#fff;font:900 28px var(--font);color:var(--ink);box-shadow:0 5px 0 #efd9e6;cursor:pointer;touch-action:manipulation}
.key:active{transform:translateY(3px);box-shadow:0 2px 0 #efd9e6}.key-go{background:#a8e0bf;box-shadow:0 5px 0 #7cc39a}.key-back{background:#fff0c8;box-shadow:0 5px 0 #ecd28a}.wide{grid-column:1/-1;font-size:20px}
.choices{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.choice{min-width:88px;min-height:72px;padding:0 18px;border-radius:22px;border:0;background:#fff;font:900 30px var(--font);color:var(--ink);box-shadow:0 5px 0 #efd9e6;cursor:pointer}
.feedback{min-height:32px;text-align:center;font-weight:800;font-size:22px;margin:4px 0 8px}
.feedback.good{color:var(--moss)}
.feedback.hint{background:#fff7e3;border-radius:18px;padding:10px 14px;font-weight:600;font-size:17px;text-align:left}
.hint-lead{font-weight:800;color:#9a5a00;margin:0 0 4px}.seq{font:800 20px var(--font);color:var(--pink-d);word-spacing:4px}
.reveal{font-weight:900;font-size:22px;color:var(--moss)}.steps{margin:4px 0;padding-left:22px}
.dots,.pie{max-width:100%;height:auto}
.toast{position:fixed;top:76px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:12px 20px;border-radius:999px;font-weight:800;z-index:9;max-width:90vw;text-align:center}
.reward{text-align:center}.sky{position:relative;height:170px;overflow:hidden}.sky .rocket{width:70px;margin:0 auto}
.sparkles{font-size:28px;color:#ffc94d;letter-spacing:20px}
.stars{display:flex;justify-content:center;gap:6px}.big-text{font-size:22px;font-weight:800;display:flex;align-items:center;gap:6px;justify-content:center;flex-wrap:wrap}
.prize{display:flex;flex-direction:column;align-items:center}.prize .hero{width:130px}.prize p{font-weight:800;font-size:20px;margin:0 0 10px}
.grid2{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0 14px}
.meter{display:flex;gap:5px;margin:4px 0}.meter span{flex:1;height:16px;border-radius:99px;background:#f2e8f2}.meter .on{background:linear-gradient(90deg,#a8e0bf,#ff9ec4)}
.overrides{display:grid;gap:10px}.ov{display:flex;justify-content:space-between;align-items:center;gap:10px;font-weight:700;flex-wrap:wrap}
select{min-height:48px;border-radius:14px;border:2px solid #f3d6e6;font:inherit;padding:0 10px;background:#fff;color:var(--ink)}
.hold{position:relative;overflow:hidden}.hold.holding::after{content:"";position:absolute;inset:0;background:#ff9ec455;transform-origin:left;animation:fill 3s linear forwards}
.diag .eq{margin:10px 0}.diag>.btn{margin-top:12px}
/* layout: side-by-side on wide screens */
@media(min-width:900px){
  .play{grid-template-columns:minmax(260px,1fr) 1.4fr;align-items:start}
  .stage{height:auto;min-height:340px;position:sticky;top:90px}.kitty{width:200px}.rocket{width:100px}
  .hero{width:190px}
}
/* motion */
@keyframes bob{50%{transform:translateY(-6px)}}
@keyframes pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
@keyframes boost{0%{transform:translateY(0)}40%{transform:translateY(-16px) rotate(-3deg)}100%{transform:translateY(0)}}
@keyframes launch{0%{transform:translateY(60px)}100%{transform:translateY(-220px)}}
@keyframes wag{50%{transform:rotate(8deg)}}
@keyframes fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.bob{animation:bob 2.6s ease-in-out infinite}.pop,.star-pop{animation:pop .45s cubic-bezier(.3,1.6,.5,1) both}
.rocket.boost{animation:boost .6s ease}.rocket.launch{animation:launch 2.2s ease-in 1s both}
.cat-tail{transform-origin:88px 100px;animation:wag 1.8s ease-in-out infinite}
.flame{animation:bob .3s infinite}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation:none!important;transition:none!important}.hold.holding::after{transform:scaleX(1)}}
/* whiteboard */
.wb{display:flex;flex-direction:column;gap:8px}
.wb-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.wb-group{display:flex;gap:4px;background:#fff;border-radius:18px;padding:4px;border:2px solid #f3d6e6}
.wb-btn,.wb-color,.wb-size{min-width:48px;min-height:48px;border-radius:14px;border:0;background:transparent;font:800 20px var(--font);color:var(--ink);cursor:pointer;display:grid;place-items:center}
.wb-btn[aria-pressed=true],.wb-size[aria-pressed=true]{background:#ffe3ef}
.wb-color{position:relative}.wb-color::before{content:"";width:28px;height:28px;border-radius:50%;background:var(--c);box-shadow:0 0 0 2px #fff,0 0 0 4px #0000}
.wb-color[aria-pressed=true]::before{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--c)}
.wb-size span{display:block;border-radius:50%;background:var(--ink)}
.wb-wrap{position:relative;height:min(65vh,620px);background:#fff;border-radius:var(--r);border:3px solid #f3d6e6;overflow:hidden;background-image:radial-gradient(#efe3ef 1.2px,transparent 1.2px);background-size:22px 22px}
.wb-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;display:block}
.wb-text{position:absolute;min-width:120px;border:2px dashed var(--pink);border-radius:8px;background:#fffd;font-family:var(--font);font-weight:700;padding:2px 4px;resize:none;z-index:2}
.wb.compact .wb-wrap{height:260px}.wb.compact .wb-bar{gap:4px}.wb.compact .wb-group{padding:2px}
.scratch{margin-top:12px}
@media(min-width:900px){.with-scratch .play{grid-template-columns:1fr 1.2fr 1.2fr}.with-scratch .scratch{margin-top:0;grid-column:3;grid-row:1}.with-scratch .stage{min-height:200px}.with-scratch .kitty{width:140px}}
/* writing */
.prompts{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.prompt-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:72px;padding:12px;border-radius:18px;border:3px solid #f3d6e6;background:#fff;font:inherit;color:inherit;text-align:left;cursor:pointer}
.prompt-card.on{border-color:var(--pink);background:#fff0f6}.ptheme{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--moss);font-weight:800}
.spark{font-size:19px;font-weight:700}.basket{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.word{min-height:44px;min-width:48px;padding:0 14px;border-radius:999px;border:2px solid #bfe6cc;background:#eefaf2;font:700 16px var(--font);color:var(--ink);cursor:pointer}
.w-title,.w-text{width:100%;font:18px/1.6 var(--font);color:var(--ink);border:3px solid #f3d6e6;border-radius:16px;padding:10px 12px;background:#fffefc;margin:6px 0}
.w-title{font-weight:800;min-height:52px}.w-text{min-height:240px;resize:vertical;background-image:repeating-linear-gradient(transparent 0 28.3px,#f6e7f0 28.3px 29.8px);background-attachment:local}
.w-fb ul{list-style:none;padding:0}.w-fb li{background:#eefaf2;border-radius:14px;padding:10px 14px;margin:8px 0}.w-fb li.tip{background:#fff7e3}
.shelf{list-style:none;padding:0;margin:0}.shelf li{display:flex;gap:6px;align-items:center;border-bottom:2px dotted #f3d6e6}
.shelf-item{flex:1;min-height:52px;text-align:left;background:none;border:0;font:inherit;color:inherit;cursor:pointer}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.small{font-size:14px}
/* Graphics Bot kit */
body.kit{background:#f4fbf3 url("assets/tile-fern-pattern.svg") 0 0/240px repeat}
body.kit .bg{height:46vh;background:url("assets/tile-grass-strip.svg") bottom/auto 60px repeat-x,url("assets/scene-forest-camp.svg") center bottom/cover no-repeat;opacity:.9}
body.kit .page{position:relative}
body.kit .welcome,body.kit .game-top,body.kit .title{position:relative}
.kit-cat{position:relative;display:block;width:100%;aspect-ratio:1}.kit-cat img{display:block;width:100%;height:auto;user-select:none}
.kit-cat .kit-acc{position:absolute;height:auto}
.kit-toy{display:block;width:100%;height:auto;filter:drop-shadow(0 0 calc(var(--glow,0)*14px) #ffe27a)}
.rocket:has(.kit-toy){width:110px}@media(min-width:900px){.rocket:has(.kit-toy){width:170px}}
.pill img,.planet img,.big-text img,.stars img{display:block}
/* content bank + story den v2 */
.story-q { font-size: 1.15rem; line-height: 1.5; text-align: left; max-width: 40ch; margin-inline: auto; }
.eq.story-q { font-size: clamp(1.05rem, 2.6vw, 1.35rem); font-weight: 600; }
.fact { background: #fff7d6; border-radius: 14px; padding: .6rem .9rem; overflow-wrap: anywhere; }
.chips { gap: .5rem; align-items: center; flex-wrap: wrap; }
.chip { min-width: 48px; min-height: 48px; border-radius: 999px; border: 2px solid #f3c6d8; background: #fff; font: inherit; font-weight: 700; }
.chip[aria-pressed="true"] { background: #ffd6e7; border-color: #e889ae; }
.wcards { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: .6rem; margin-top: .6rem; }
.wcard { background: #f6fff7; border-radius: 14px; padding: .6rem .8rem; }
.wcard p { margin: .3rem 0 0; }
.world summary { min-height: 48px; display: flex; align-items: center; cursor: pointer; font-weight: 700; }
.toggle { display: inline-flex; align-items: center; gap: .4rem; min-height: 48px; }
.toggle input { width: 24px; height: 24px; }
.fb-always { font-weight: 700; } .fb-suggestion { color: #6b4f8a; }
.meaning { min-height: 1.2em; }
.drafts { max-height: 320px; overflow: auto; overflow-wrap: anywhere; }
.wb-hover{position:absolute;pointer-events:none;border:2px solid;border-radius:50%;opacity:.6}
.pen-help summary{min-height:48px;display:flex;align-items:center;font-weight:700;cursor:pointer}
.pen-test{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:.8rem;align-items:start}
@media (max-width:600px){.pen-test{grid-template-columns:1fr}}
.pen-pad{width:100%;height:auto;aspect-ratio:600/220;background:#fff;border:2px dashed #f3c6d8;border-radius:14px;touch-action:none}
.pen-read{display:grid;grid-template-columns:auto 1fr;gap:.2rem .6rem;margin:0}.pen-read dt{font-weight:700}.pen-read dd{margin:0;font-variant-numeric:tabular-nums}
.art{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1rem;align-items:start}
@media (max-width:900px){.art{grid-template-columns:1fr}}
.art-tools{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.5rem}
.art-wrap{background:#fff;border-radius:18px;box-shadow:0 4px 14px #0001;overflow:hidden}
.art-canvas{display:block;width:100%;height:auto;aspect-ratio:4/3;touch-action:none;cursor:crosshair}
.custom{position:relative;overflow:hidden}.custom input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.layer-list{list-style:none;padding:0;margin:0;display:grid;gap:.4rem}
.layer-list li{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center;padding:.3rem;border-radius:12px}.layer-list li.on{background:#ffe6f0}
.layer-name{flex:1 1 100%;min-height:48px;text-align:left;border:0;background:none;font:inherit;font-weight:700;cursor:pointer}
.op{display:flex;gap:.3rem;align-items:center;flex:1 1 100%;min-height:48px}.op input{flex:1}
.stamp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:.4rem}
.stamp{min-height:56px;border:2px solid #f3c6d8;border-radius:12px;background:#fff;padding:4px}.stamp img{width:100%;height:44px;object-fit:contain}
.stamp[aria-pressed="true"]{border-color:#d9468a;background:#ffe6f0}
.art-stamps summary{min-height:48px;display:flex;align-items:center;font-weight:700;cursor:pointer}
.pen-meter{height:14px;background:#f3eef7;border-radius:7px;margin-top:.4rem;overflow:hidden}.pen-meter span{display:block;height:100%;width:0;background:#d9468a}
.pen-warn{background:#fff3cd;border-radius:12px;padding:.5rem .8rem;font-weight:700}
/* pen/S Pen hygiene on every drawing surface */
.wb-canvas,.art-canvas,.pen-pad,.d3-canvas{touch-action:none;overscroll-behavior:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
.wb-wrap,.art-wrap,.d3-wrap{overscroll-behavior:contain;user-select:none;-webkit-user-select:none}
html:has(body[data-route="board"]),html:has(body[data-route="art"]),html:has(body[data-route="build"]),body[data-route="board"],body[data-route="art"],body[data-route="build"]{overscroll-behavior-y:none}
.d3{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1rem;align-items:start}
@media (max-width:900px){.d3{grid-template-columns:1fr}}
.d3-wrap{border-radius:18px;overflow:hidden;box-shadow:0 4px 14px #0001}
.d3-canvas{display:block;width:100%;aspect-ratio:4/3;cursor:grab}
.d3-grid{display:grid;grid-template-columns:repeat(4,minmax(48px,1fr));gap:.3rem;margin:.4rem 0}
.pen-pad-wrap{position:relative}.pen-dot{position:absolute;width:10px;height:10px;border-radius:50%;background:#d9468a;pointer-events:none}
.pen-pad{max-width:100%;height:auto}.pen-test,.pen-pad-wrap,.art-main,.art-side{min-width:0}.pen-help{max-width:100%;overflow-wrap:anywhere}
.art-tools .wb-group{flex-wrap:wrap;max-width:100%}
.art-tools input[type=range],.art-stamps input[type=range]{width:140px;min-height:48px}
/* Wonder Paths */
.querybar .qb-form, .step .qb-form { display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
.qb-input { flex: 1 1 12rem; min-width: 0; min-height: 48px; font: inherit; font-size: 1.15rem; padding: .4rem .8rem; border-radius: 14px; border: 2px solid #f3c6d8; }
.qb-recent { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; margin-top: .5rem; }
.chip { padding: .3rem .9rem; cursor: pointer; }
.chip.ghost { border-style: dashed; color: #7a5a68; }
.path-dots { display: flex; gap: .4rem; margin: .5rem 0 0; }
.path-dots .dot { width: 18px; height: 18px; border-radius: 50%; border: 2px solid #e889ae; background: #fff; }
.path-dots .dot.on { background: #e889ae; }
.branches { gap: .5rem; flex-wrap: wrap; }
.branches .btn { white-space: normal; text-align: left; }
.story-q.big { font-size: 1.8rem; font-weight: 800; }
.yay { font-weight: 800; color: #2e7d4f; }
.strand h3 { margin: .6rem 0 .3rem; }
.word { min-height: 48px; }
