:root{--cream: #f7f1e7;--paper: #fffdf8;--ink: #24302b;--muted: #6f7a74;--sage: #8ea393;--sage-dark: #61776a;--navy: #34465d;--navy-deep: #28374a;--terracotta: #c47c5c;--gold: #c8a96a;--rose: #a86d89;--danger: #a85d57;--good: #5d7d62;--shadow: 0 16px 40px rgba(35, 48, 43, .14);--soft-shadow: 0 8px 22px rgba(35, 48, 43, .1);--radius: 22px;--radius-sm: 15px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--speed: 1}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:linear-gradient(160deg,#ece6dc,#d9e0da) fixed;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;color:var(--ink);min-height:100%;font-size:16px;line-height:1.45;overscroll-behavior:none}body{display:flex;justify-content:center}#root{display:flex;justify-content:center;width:100%;min-width:0}button{font:inherit;color:inherit}h1,h2,h3{line-height:1.15;margin:0}.app{width:min(100%,480px);min-height:100vh;min-height:100dvh;background:var(--cream);position:relative;box-shadow:0 0 60px #0000002e;display:flex;flex-direction:column}@media (min-width: 760px){.app{width:min(100%,560px);border-radius:24px;margin:18px 0;min-height:calc(100dvh - 36px)}}.screen{flex:1;padding:calc(14px + var(--safe-top)) 18px calc(96px + var(--safe-bottom));animation:screen-in calc(.28s * var(--speed)) ease both}.screen--flow{padding-bottom:calc(24px + var(--safe-bottom))}@keyframes screen-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}[data-reduced=true]{--speed: 0}[data-reduced=true] *,[data-reduced=true] *:before,[data-reduced=true] *:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0ms!important}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.topbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;min-height:44px}.topbar-title{text-align:center;flex:1}.topbar-title .brand{font-weight:900;letter-spacing:.02em;font-size:17px}.topbar-title .tiny{margin-top:1px}.pill{border:none;background:#fffc;backdrop-filter:blur(10px);box-shadow:var(--soft-shadow);padding:10px 14px;border-radius:999px;font-weight:800;cursor:pointer;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.pill:active{transform:scale(.96)}.card{background:var(--paper);border-radius:var(--radius);box-shadow:var(--soft-shadow);padding:16px;margin-bottom:12px}.section-title{display:flex;justify-content:space-between;align-items:baseline;margin:20px 2px 10px}.section-title h2{font-size:21px}.section-title span{color:var(--muted);font-size:13px;font-weight:700}.tiny{font-size:13px;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:900;color:var(--sage-dark)}.btn{width:100%;border:none;border-radius:18px;padding:16px 18px;font-weight:900;font-size:16px;cursor:pointer;transition:transform calc(.12s * var(--speed)) ease,opacity .2s;min-height:52px}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn--primary{background:var(--navy);color:#fff;box-shadow:0 10px 20px #34465d47}.btn--secondary{background:#e7e1d7;color:var(--ink)}.btn--gold{background:linear-gradient(145deg,#d3b276,#b8945a);color:#2f2712;box-shadow:0 10px 20px #c8a96a59}.btn--danger{background:var(--danger);color:#fff}.btn--ghost{background:transparent;color:var(--muted);font-weight:800;min-height:44px}.btn-row{display:flex;gap:10px}.btn-row>*{flex:1}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stats--2{grid-template-columns:repeat(2,1fr)}.stat{background:#f0ece4;border-radius:16px;padding:12px 10px;text-align:center}.stat strong{display:block;font-size:17px;font-variant-numeric:tabular-nums}.stat small{color:var(--muted);font-size:12px;font-weight:700}.progress{height:10px;background:#e4ddd1;border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--sage),var(--sage-dark));border-radius:inherit;transition:width calc(.6s * var(--speed)) cubic-bezier(.22,1,.36,1)}.progress--gold>span{background:linear-gradient(90deg,#d8bc85,#b8945a)}.chip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:999px;font-size:12px;font-weight:800;background:#ece6da;color:var(--ink)}.chip--risk-low{background:#dfe8dc;color:#43604a}.chip--risk-medium{background:#f0e5cf;color:#8a6c33}.chip--risk-high{background:#f0dcd7;color:#91473f}.chip--locked{background:#e5e1d8;color:var(--muted)}.chip--status{background:var(--navy);color:#fff}.chip--good{background:#dfe8dc;color:#43604a}.speech{display:grid;grid-template-columns:46px 1fr;gap:12px;align-items:start}.speech+.speech{margin-top:12px}.speech-avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:900;font-size:19px;box-shadow:inset 0 -3px #00000026,var(--soft-shadow)}.speech-body b{font-size:13px}.speech-body .role{color:var(--muted);font-weight:700;font-size:12px;margin-left:5px}.speech-body p{margin:3px 0 0;font-size:15px}.wealth-strip{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:10px;margin-bottom:14px}.wealth-cell{background:var(--paper);border-radius:18px;padding:12px 13px;box-shadow:var(--soft-shadow)}.wealth-cell small{display:block;color:var(--muted);font-size:11.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.wealth-cell strong{font-size:19px;font-variant-numeric:tabular-nums}.wealth-cell--cash strong{color:var(--sage-dark);font-size:21px}.avatar-badge{width:44px;height:44px;border-radius:50%;background:linear-gradient(145deg,var(--sage),var(--sage-dark));color:#fff;font-weight:900;font-size:18px;display:grid;place-items:center;box-shadow:var(--soft-shadow);border:none;cursor:pointer}.level-chip{position:absolute;right:-6px;bottom:-6px;background:var(--gold);color:#2f2712;border-radius:999px;font-size:10.5px;font-weight:900;padding:2px 6px;box-shadow:0 2px 6px #0003}.hero{border-radius:26px;overflow:hidden;position:relative;box-shadow:var(--shadow);background:var(--paper);margin-bottom:12px}.hero-art{display:block;width:100%;height:auto}.hero-body{padding:14px 16px 16px}.hero-body h2{font-size:24px}.hero-next{margin-top:10px;padding:12px 14px;border-radius:16px;background:linear-gradient(145deg,#31435a,#415973);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:10px}.hero-next b{font-size:14px}.hero-next span{font-size:12px;color:#ffffffc7}.carousel{display:flex;gap:12px;overflow-x:auto;padding:4px 2px 14px;scroll-snap-type:x mandatory}.carousel::-webkit-scrollbar{display:none}.carousel>*{flex:0 0 240px;scroll-snap-align:start}.prop-card{background:var(--paper);border-radius:20px;box-shadow:var(--soft-shadow);overflow:hidden;cursor:pointer;border:none;padding:0;text-align:left;display:flex;flex-direction:column;width:100%;transition:transform calc(.15s * var(--speed)) ease}.prop-card:active{transform:scale(.98)}.prop-card-art{width:100%;display:block}.prop-card-body{padding:12px 14px 14px;display:grid;gap:6px}.prop-card-body h3{font-size:17px}.prop-card-row{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px}.prop-card-price{font-weight:900;font-size:16px}.prop-card-profit{color:var(--good);font-weight:800;font-size:13px}.daily-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.daily-tile{border:none;text-align:left;cursor:pointer;background:var(--paper);border-radius:18px;padding:13px 14px;box-shadow:var(--soft-shadow);display:grid;gap:3px}.daily-tile b{font-size:14.5px}.daily-tile.done{opacity:.62}.milestone-card{display:grid;gap:8px}.milestone-head{display:flex;justify-content:space-between;align-items:baseline}.filter-row{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 12px}.filter-row::-webkit-scrollbar{display:none}.filter-chip{border:none;cursor:pointer;white-space:nowrap;padding:9px 15px;border-radius:999px;font-weight:800;font-size:13.5px;background:#ffffffbf;color:var(--ink);box-shadow:var(--soft-shadow)}.filter-chip.active{background:var(--navy);color:#fff}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.detail-cell{background:#f0ece4;border-radius:14px;padding:10px 12px}.detail-cell small{display:block;color:var(--muted);font-size:11.5px;font-weight:800}.detail-cell strong{font-size:15px;font-variant-numeric:tabular-nums}.room-list{display:grid;gap:8px}.room-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;background:var(--paper);border-radius:16px;padding:12px 14px;box-shadow:var(--soft-shadow)}.room-row.current{outline:3px solid var(--sage-dark);outline-offset:-3px}.room-row.locked{opacity:.55}.room-row b{font-size:15px}.puzzle-shell{display:flex;flex-direction:column;gap:12px}.objective-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 15px;border-radius:18px;background:linear-gradient(145deg,#31435a,#415973);color:#fff;box-shadow:0 12px 26px #34465d3d}.objective-items{display:flex;gap:10px}.objective-item{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:46px}.objective-item .obj-icon{width:34px;height:34px;border-radius:10px;background:#ffffff24;display:grid;place-items:center;position:relative}.objective-item small{font-size:12px;font-weight:800}.objective-item.done .obj-icon:after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;background:#5d7d62eb;border-radius:10px;font-weight:900;color:#fff}.game-head{display:grid;grid-template-columns:1fr 1fr;gap:8px}.goal{background:#fffdf8e0;border-radius:16px;padding:9px 10px;box-shadow:0 8px 20px #2a39311f;border:1px solid rgba(255,255,255,.72);text-align:center}.goal strong{display:block;font-size:21px;line-height:1.1;font-variant-numeric:tabular-nums}.goal small{color:var(--muted);font-weight:800;font-size:11.5px;letter-spacing:.02em}.goal.low strong{color:var(--danger)}.puzzle-scene{position:relative;border-radius:28px;padding:12px;background:radial-gradient(circle at 14% 10%,rgba(255,255,255,.72),transparent 22%),linear-gradient(160deg,#d8e1d8,#bdc9be 42%,#889d8f);box-shadow:0 22px 48px #2b3d3433}.board-wrap{position:relative;background:linear-gradient(145deg,#bfcabf,#a6b4aa);padding:7px;border-radius:20px;box-shadow:inset 0 3px 8px #2b383138,inset 0 -2px #ffffff59}.board{position:relative;width:100%;touch-action:none;user-select:none;-webkit-user-select:none}.cell-layer,.piece-layer{position:absolute;inset:0}.piece-layer{pointer-events:none}.piece-layer .tilepiece{pointer-events:auto}.cellbg{position:absolute;border-radius:12px;background:#fffdf86b;box-shadow:inset 0 1px #ffffff73}.cellbg.hole{background:transparent;box-shadow:none}.cellbg.dust{background:repeating-linear-gradient(45deg,#cfc4ad,#cfc4ad 4px,#c2b69e 4px 8px);box-shadow:inset 0 0 0 2px #786a5259}.cellbg.cracked1{background:#fffdf86b center / 78% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M6 20 L16 16 L20 24 L28 18 L34 22' fill='none' stroke='%23977f5f' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")}.cellbg.cracked2{background:#e9dec7b3 center / 88% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M4 14 L14 18 L11 27 L22 22 L25 32 M14 18 L20 8 M22 22 L33 17' fill='none' stroke='%23806343' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E")}.cratebox{position:absolute;border-radius:11px;background:linear-gradient(145deg,#c9ab7d,#a8895f);box-shadow:inset 0 2px #fff6,inset 0 -4px #5a462859,0 3px 6px #26342d40;display:grid;place-items:center}.cratebox:before{content:"";position:absolute;inset:18% 8%;border-top:3px solid rgba(90,70,40,.4);border-bottom:3px solid rgba(90,70,40,.4)}.cratebox.hp2:after{content:"";position:absolute;inset:8% 42%;background:#5a462866;border-radius:2px}.tilepiece{position:absolute;display:grid;place-items:center;cursor:pointer;border-radius:13px;border:1px solid rgba(255,255,255,.55);box-shadow:inset 0 2px #fff9,inset 0 -5px #222d2824,0 4px 8px #26342d2e;transition:transform calc(.22s * var(--speed)) cubic-bezier(.34,1.3,.64,1),top calc(.24s * var(--speed)) cubic-bezier(.3,.9,.4,1.15),left calc(.24s * var(--speed)) cubic-bezier(.3,.9,.4,1.15),opacity calc(.18s * var(--speed)) ease}.tilepiece svg{width:74%;height:74%;filter:drop-shadow(0 2px 1px rgba(0,0,0,.16))}.tilepiece.selected{transform:scale(1.12) translateY(-2px);z-index:4;outline:3px solid rgba(255,255,255,.95);outline-offset:2px}.tilepiece.hinted{animation:hint-pulse calc(.7s * var(--speed)) ease infinite alternate}@keyframes hint-pulse{0%{transform:scale(1)}to{transform:scale(1.1)}}.tilepiece.dying{transform:scale(.15) rotate(14deg);opacity:0;pointer-events:none;z-index:3}.tilepiece.invalid{animation:recoil calc(.3s * var(--speed)) ease}@keyframes recoil{0%{transform:none}35%{transform:translate(-5px)}70%{transform:translate(4px)}to{transform:none}}.tilepiece.locked{filter:saturate(.55) brightness(.92);cursor:default}.tilepiece.locked:after{content:"";position:absolute;inset:-1px;border-radius:13px;border:3px solid rgba(70,62,48,.55);background:linear-gradient(#463e3059,#463e3059) center / 100% 3px no-repeat,linear-gradient(#463e3059,#463e3059) center / 3px 100% no-repeat}.tilepiece.special{box-shadow:inset 0 2px #fffc,0 0 0 2px #fff5d6e6,0 0 16px #e0b052e6,0 4px 10px #26342d40;animation:special-pulse calc(1.5s * var(--speed)) ease-in-out infinite;z-index:2;overflow:hidden}.tilepiece.special:before{content:"";position:absolute;inset:-60% auto auto -60%;width:55%;height:220%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);transform:rotate(18deg);animation:special-shine calc(2.6s * var(--speed)) ease-in-out infinite;pointer-events:none}@keyframes special-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes special-shine{0%,55%{left:-60%}85%,to{left:130%}}.tilepiece.special.selected{animation:none}.fx-burst{position:absolute;pointer-events:none;z-index:6;border-radius:50%;animation:burst calc(.45s * var(--speed)) ease-out forwards;background:radial-gradient(circle,rgba(255,249,230,.95),rgba(200,169,106,.4) 60%,transparent 70%)}@keyframes burst{0%{transform:scale(.3);opacity:1}to{transform:scale(2.1);opacity:0}}.fx-line{position:absolute;pointer-events:none;z-index:6;background:linear-gradient(90deg,transparent,rgba(255,250,235,.95),transparent);animation:sweep calc(.4s * var(--speed)) ease-out forwards;border-radius:6px}@keyframes sweep{0%{opacity:1;transform:scaleX(.2)}to{opacity:0;transform:scaleX(1)}}.combo-pop{position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);z-index:7;pointer-events:none;font-weight:900;font-size:26px;color:#fff;text-shadow:0 2px 10px rgba(40,55,74,.6);animation:combo calc(.9s * var(--speed)) ease forwards}@keyframes combo{0%{opacity:0;transform:translate(-50%,-30%) scale(.6)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-80%) scale(1)}}.boosters{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.booster{border:none;cursor:pointer;background:linear-gradient(160deg,#fffef9,#ece3d4);border-radius:18px;padding:12px 8px 10px;font-weight:900;font-size:13.5px;box-shadow:inset 0 1px #ffffffe6,inset 0 -4px #5a503e1f,0 8px 18px #2b393224;display:grid;gap:4px;justify-items:center;position:relative;transition:transform calc(.12s * var(--speed)) ease}.booster:active{transform:scale(.95)}.booster small{font-weight:700;color:var(--muted);font-size:10.5px;line-height:1.25}.booster:disabled{opacity:.45}.booster.armed{outline:3px solid var(--gold);background:linear-gradient(160deg,#fff8e8,#f2e0ba);animation:armed-pulse calc(1s * var(--speed)) ease-in-out infinite}@keyframes armed-pulse{0%,to{box-shadow:0 0 #c8a96a8c,0 8px 18px #2b393224}50%{box-shadow:0 0 0 8px #c8a96a00,0 8px 18px #2b393224}}.booster-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fffdf6;box-shadow:inset 0 2px #ffffff59,inset 0 -4px #0000002e,0 3px 7px #26342d47}.booster-icon svg{width:23px;height:23px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.3))}.booster-icon--hammer{background:linear-gradient(160deg,#d98a5c,#ac5230)}.booster-icon--brush{background:linear-gradient(160deg,#b585a0,#8a5674)}.booster-icon--moves{background:linear-gradient(160deg,#7fa08a,#55735f)}.booster .count{position:absolute;top:-7px;right:-5px;background:var(--navy);color:#fff;font-size:12px;font-weight:900;border-radius:999px;padding:3px 8px;box-shadow:0 2px 6px #00000040;border:2px solid var(--cream)}.roomscene{display:block;width:100%;height:auto;border-radius:18px;box-shadow:var(--soft-shadow)}.choice-grid{display:grid;gap:10px}.choice{border:3px solid transparent;background:var(--paper);border-radius:18px;padding:12px;box-shadow:var(--soft-shadow);cursor:pointer;text-align:left;display:grid;gap:6px}.choice.active{border-color:var(--sage-dark)}.choice-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.choice-head strong{font-size:15.5px}.choice-cost{font-weight:900;font-variant-numeric:tabular-nums}.swatch-row{display:flex;gap:5px}.swatch-row i{width:26px;height:26px;border-radius:8px;box-shadow:inset 0 -3px #0000001f}.issue-banner{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;background:linear-gradient(145deg,#f3e3d3,#ecd4c2);border-radius:16px;padding:12px 14px;margin-bottom:12px;box-shadow:var(--soft-shadow);border:1px solid rgba(164,108,74,.25)}.score-ring-wrap{display:grid;place-items:center;gap:6px}.score-ring{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:24px;position:relative}.score-ring:before{content:"";position:absolute;inset:9px;background:var(--paper);border-radius:50%}.score-ring>span{position:relative}.buyer-card{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:12px;background:var(--paper);border-radius:18px;padding:13px 14px;box-shadow:var(--soft-shadow);animation:offer-in calc(.5s * var(--speed)) cubic-bezier(.22,1,.36,1) both;border:3px solid transparent;cursor:pointer;text-align:left;width:100%}.buyer-card.selected{border-color:var(--sage-dark)}@keyframes offer-in{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}.buyer-avatar{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:19px;color:#fff}.buyer-line{font-size:13px;color:var(--muted);margin-top:2px;font-style:italic}.offer-amount{font-weight:900;color:var(--sage-dark);font-size:17px;font-variant-numeric:tabular-nums}.sale-lines{display:grid;gap:7px;margin:12px 0}.sale-line{display:flex;justify-content:space-between;font-size:15px}.sale-line b{font-variant-numeric:tabular-nums}.sale-line.total{border-top:2px solid #e4ddd1;padding-top:8px;font-weight:900}.sale-profit{font-size:38px;font-weight:900;color:var(--sage-dark);text-align:center;font-variant-numeric:tabular-nums}.sold-card{display:grid;gap:8px}.sold-head{display:flex;justify-content:space-between;align-items:baseline}.theme-chips{display:flex;flex-wrap:wrap;gap:5px}.footer-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(100%,480px);display:grid;grid-template-columns:repeat(4,1fr);background:#fffdf8f0;backdrop-filter:blur(14px);border-top:1px solid rgba(0,0,0,.06);z-index:10;padding-bottom:var(--safe-bottom)}@media (min-width: 760px){.footer-nav{width:min(100%,560px);border-radius:0 0 24px 24px;bottom:18px}}.footer-nav button{border:none;background:transparent;cursor:pointer;padding:10px 6px 12px;color:var(--muted);font-weight:800;font-size:11.5px;display:grid;gap:3px;justify-items:center;min-height:56px}.footer-nav button svg{width:24px;height:24px}.footer-nav button.active{color:var(--navy)}.modal{position:fixed;inset:0;z-index:30;background:#151c198c;display:flex;align-items:flex-end;justify-content:center;animation:fade-in calc(.2s * var(--speed)) ease both}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.sheet{width:min(100%,480px);max-height:88dvh;overflow-y:auto;background:var(--paper);border-radius:28px 28px 0 0;padding:22px 22px calc(22px + var(--safe-bottom));animation:sheet-up calc(.32s * var(--speed)) cubic-bezier(.22,1,.36,1) both}@keyframes sheet-up{0%{transform:translateY(48px);opacity:.4}to{transform:none;opacity:1}}.sheet h3{font-size:24px;margin:4px 0 8px}.toast{position:fixed;left:50%;bottom:calc(102px + var(--safe-bottom));transform:translate(-50%);background:#26332e;color:#fff;padding:12px 18px;border-radius:999px;font-weight:800;font-size:14.5px;z-index:40;box-shadow:0 10px 26px #0000004d;animation:toast-in calc(.25s * var(--speed)) ease both;max-width:88%;text-align:center}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(14px)}to{opacity:1;transform:translate(-50%)}}.onboard{display:flex;flex-direction:column;justify-content:center;min-height:calc(100dvh - 140px);gap:16px}.starter-grid{display:grid;gap:12px}.onboard-dots{display:flex;justify-content:center;gap:8px;padding:14px 0 4px}.onboard-dots i{width:8px;height:8px;border-radius:999px;background:#d4cbbb;transition:all calc(.25s * var(--speed)) ease}.onboard-dots i.on{background:var(--navy);width:22px}.concept-strip{display:grid;gap:10px}.concept-step{display:grid;grid-template-columns:54px 1fr;gap:13px;align-items:center;background:var(--paper);border-radius:18px;padding:13px 15px;box-shadow:var(--soft-shadow);animation:rise-in calc(.5s * var(--speed)) cubic-bezier(.22,1,.36,1) both}.concept-step:nth-child(2){animation-delay:calc(.12s * var(--speed))}.concept-step:nth-child(3){animation-delay:calc(.24s * var(--speed))}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.concept-num{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;color:#fffdf6;box-shadow:inset 0 2px #ffffff4d,inset 0 -4px #00000029,0 4px 9px #26342d38}.concept-num svg{width:28px;height:28px}.concept-step b{font-size:15.5px;display:block}.concept-step span{font-size:13px;color:var(--muted)}.demo-match{display:flex;justify-content:center;gap:6px;padding:6px 0 2px}.demo-match .demo-tile{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.55);box-shadow:inset 0 2px #fff9,inset 0 -4px #222d2824,0 4px 8px #26342d2e}.demo-match .demo-tile svg{width:34px;height:34px}.demo-match .demo-arrow{display:grid;place-items:center;color:var(--sage-dark);font-weight:900;padding:0 2px}button:focus-visible,[role=button]:focus-visible{outline:3px solid var(--navy);outline-offset:2px}
