:root{--zumi-bg:#f6f3ec;--zumi-bg-accent:#efe8da;--zumi-surface:#fffcf7;--zumi-surface-strong:#ffffff;--zumi-navy:#1b3358;--zumi-green:#3db54a;--zumi-blue:#2f7de1;--zumi-purple:#7b4fd4;--zumi-orange:#f08a2c;--zumi-yellow:#f5d031;--zumi-text:#1b3358;--zumi-text-muted:#5e574d;--zumi-border:#e6ddd0;--zumi-primary:#c45c4a;--zumi-primary-hover:#b04e3e;--zumi-secondary:#2f6f64;--zumi-success:#2f6f64;--zumi-warning:#c9a227;--zumi-focus:#3d6fd8;--zumi-shadow:0 12px 36px rgba(31,27,22,0.08);--zumi-shadow-sm:0 4px 14px rgba(31,27,22,0.06);--zumi-radius:18px;--zumi-radius-sm:12px;--zumi-radius-pill:999px;--zumi-space-1:4px;--zumi-space-2:8px;--zumi-space-3:12px;--zumi-space-4:16px;--zumi-space-5:24px;--zumi-space-6:40px;--zumi-max:1120px;--zumi-ease:160ms ease;--paper:var(--zumi-bg);--ink:var(--zumi-text);--muted:var(--zumi-text-muted);--line:var(--zumi-border);--brand:var(--zumi-primary);--shadow:var(--zumi-shadow);--radius:var(--zumi-radius)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:Nunito,Avenir Next,Segoe UI,sans-serif;background:var(--zumi-bg);color:var(--zumi-text);min-height:100vh;line-height:1.45}a{color:inherit;text-decoration:none}button,input,select{font:inherit}img{max-width:100%;height:auto}:focus-visible{outline:3px solid var(--zumi-focus);outline-offset:3px}.wrap{width:min(var(--zumi-max),calc(100% - 32px));margin:0 auto}.site-header{display:flex;align-items:center;justify-content:space-between;padding:var(--zumi-space-4) 0;gap:var(--zumi-space-3)}.brand,.wordmark{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.04em;color:var(--zumi-text)}.wordmark-logo{display:block;width:auto;height:52px;max-width:min(220px,42vw);object-fit:contain}.wordmark-sm .wordmark-logo{height:40px;max-width:148px}.wordmark-lg .wordmark-logo{height:110px;max-width:min(320px,80vw)}.footer-brand{display:flex;justify-content:center;padding:8px 0 16px}.asset-badge{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:var(--zumi-bg-accent)}.asset-badge-approved-working{background:#d8f3dc}.asset-badge-reference-only{background:#f3e7c7}.asset-badge-development{background:#f3d6d0}.brand-swatch-row{display:flex;gap:16px;flex-wrap:wrap;margin:12px 0 24px}.brand-swatch{padding:20px;border-radius:16px;min-width:200px;display:grid;place-items:center}.brand-swatch-light{background:#ffffff}.brand-swatch-cream{background:var(--zumi-bg)}.brand-swatch-navy{background:var(--zumi-navy)}.nav{display:flex;gap:8px;align-items:center}.ghost,.nav a{padding:8px 12px;border-radius:var(--zumi-radius-pill);color:var(--zumi-text-muted)}.nav a:hover{background:var(--zumi-surface);color:var(--zumi-text)}.menu-toggle{display:none}.btn{border:0;border-radius:var(--zumi-radius-pill);padding:14px 22px;font-weight:800;background:var(--zumi-text);color:white;cursor:pointer;min-height:48px;transition:transform var(--zumi-ease),background var(--zumi-ease)}.btn:hover{transform:translateY(-1px)}.btn.secondary{background:var(--zumi-surface-strong);color:var(--zumi-text);box-shadow:var(--zumi-shadow-sm)}.btn.accent{background:var(--zumi-primary)}.btn.accent:hover{background:var(--zumi-primary-hover)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(220px,.7fr);grid-gap:var(--zumi-space-5);gap:var(--zumi-space-5);align-items:center;padding:var(--zumi-space-4) 0 var(--zumi-space-5);min-height:unset}.hero h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.02;letter-spacing:-.045em;margin:0 0 10px}.hero p{font-size:1.1rem;color:var(--zumi-text-muted);max-width:34rem;margin:0 0 18px}.hero-aside{display:grid;place-items:center;text-align:center}.hero-trust{font-size:.92rem;color:var(--zumi-text-muted);margin-top:10px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 16px}.search{width:100%;max-width:640px;border:1px solid var(--zumi-border);border-radius:var(--zumi-radius-pill);padding:16px 20px;box-shadow:var(--zumi-shadow-sm);background:var(--zumi-surface-strong)}.search-wrap{position:relative;max-width:640px}.search-suggest{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:8;background:var(--zumi-surface-strong);border-radius:var(--zumi-radius-sm);box-shadow:var(--zumi-shadow);padding:8px;list-style:none;margin:0}.search-suggest a{display:block;padding:10px 12px;border-radius:10px}.search-suggest a:focus,.search-suggest a:hover{background:var(--zumi-bg-accent)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:18px;gap:18px}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:12px;gap:12px}.cat-card{background:var(--zumi-surface);border:1px solid var(--zumi-border);border-radius:var(--zumi-radius);padding:18px 14px;min-height:92px;display:flex;flex-direction:column;justify-content:flex-end}.cat-card strong{letter-spacing:-.02em}.card{background:var(--zumi-surface-strong);border-radius:var(--zumi-radius);overflow:hidden;box-shadow:var(--zumi-shadow-sm);display:flex;flex-direction:column;border:1px solid transparent}@media (hover:hover){.card:hover{transform:translateY(-2px);box-shadow:var(--zumi-shadow)}}.card img{aspect-ratio:1;object-fit:contain;background:var(--zumi-surface);padding:10px}.card .meta{padding:10px 12px 14px;display:flex;flex-direction:column;gap:6px}.card h3{margin:0;font-size:1.02rem;letter-spacing:-.02em}.card-cta{font-size:.88rem;font-weight:800;color:var(--zumi-primary)}.muted{color:var(--zumi-text-muted)}.section{padding:8px 0 36px}.section h2{margin:0 0 14px;letter-spacing:-.03em;font-size:1.45rem}.section.rail-pick{background:transparent}.section.rail-kids .card{border-color:#ead9b8}.section.rail-daily{background:var(--zumi-bg-accent);margin:0 calc(50% - 50vw);padding:28px calc(50vw - 50%);border-radius:0}.diff{align-items:center;gap:6px;font-size:.82rem;color:var(--zumi-text-muted)}.diff,.diff-dots{display:inline-flex}.diff-dots{gap:3px}.diff-dots i{width:6px;height:6px;border-radius:50%;background:var(--zumi-border);display:block}.diff-dots i.on{background:var(--zumi-secondary)}.site-footer{padding:40px 0 48px;color:var(--zumi-text-muted);font-size:.92rem;border-top:1px solid var(--zumi-border);margin-top:24px}.site-footer .row{display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between}.sr-only,.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.studio-page{max-width:none;width:100%;margin:0}body:has(.editor-shell.immersive) .crumb,body:has(.editor-shell.immersive) .site-header,body:has(.studio-page .editor-shell) .crumb,body:has(.studio-page .editor-shell) .site-header{display:none}body:has(.studio-page .editor-shell) .editor-shell{min-height:100dvh}.activity-page-wrap:has(.editor-shell){max-width:none;width:100%;padding:0}@media (display-mode:standalone){body:has(.editor-shell) .crumb,body:has(.editor-shell) .site-header{display:none}.editor-shell{min-height:100dvh}}.editor-shell{--studio-pad-top:env(safe-area-inset-top,0px);--studio-pad-right:env(safe-area-inset-right,0px);--studio-pad-bottom:env(safe-area-inset-bottom,0px);--studio-pad-left:env(safe-area-inset-left,0px);position:relative;min-height:calc(100dvh - 72px);background:var(--zumi-bg);color:var(--zumi-text);display:grid;grid-gap:8px;gap:8px;padding:calc(8px + var(--studio-pad-top)) calc(8px + var(--studio-pad-right)) calc(8px + var(--studio-pad-bottom)) calc(8px + var(--studio-pad-left));touch-action:none;grid-template-columns:minmax(72px,120px) minmax(0,1fr) minmax(160px,240px);grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-areas:"header header header" "tools canvas colours" "dock dock dock" "status status status"}.editor-shell.immersive{position:fixed;inset:0;z-index:80;min-height:100dvh}.studio-header{grid-area:header;display:flex;align-items:center;gap:8px;min-height:48px}.studio-title{flex:1 1;margin:0;font-size:1.05rem;letter-spacing:-.02em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-header-end{display:flex;align-items:center;gap:6px}.studio-tools-slot{grid-area:tools;min-width:0;overflow:auto}.studio-canvas-slot{grid-area:canvas;min-width:0;min-height:0;display:flex}.studio-colour-slot{grid-area:colours;min-width:0;overflow:auto;display:flex;flex-direction:column;gap:8px}.studio-dock{grid-area:dock;display:flex;align-items:center;justify-content:flex-end;gap:8px}.studio-status{grid-area:status}.editor-shell[data-layout=phone-landscape],.editor-shell[data-layout=phone-portrait],.editor-shell[data-layout=tablet-landscape],.editor-shell[data-layout=tablet-portrait]{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto auto auto;grid-template-areas:"header" "canvas" "colours" "tools" "dock"}.editor-shell[data-layout=phone-landscape]{grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"header header header" "tools canvas colours" "dock dock dock"}.editor-shell[data-mode=advanced][data-layout=desktop]{grid-template-columns:minmax(88px,140px) minmax(0,1fr) minmax(220px,300px)}.colour-dock,.editor-bottom,.editor-props,.editor-tools,.editor-top,.tool-dock{display:flex;gap:8px;align-items:center;padding:8px;background:var(--zumi-surface);z-index:2;border-radius:var(--zumi-radius-sm);border:1px solid var(--zumi-border)}.colour-dock,.studio-dock,.studio-header,.tool-dock{touch-action:manipulation}.tool-dock{flex-wrap:wrap}.editor-shell[data-layout=desktop] .studio-tools-slot .tool-dock{flex-direction:column;align-items:stretch}.editor-shell[data-layout^=phone] .tool-dock,.editor-shell[data-layout^=tablet] .tool-dock{flex-direction:row;flex-wrap:nowrap;overflow-x:auto}.colour-dock,.editor-bottom{justify-content:space-between;flex-wrap:wrap}.editor-props:not(.sheet),.editor-tools{flex-direction:column;align-items:stretch;overflow:auto}.finish-cta{margin-left:auto;min-height:48px}.tool{min-width:48px;min-height:48px;border:0;border-radius:14px;background:#efe8da;color:var(--zumi-navy);font-weight:800;cursor:pointer;flex:0 0 auto;padding:8px 10px}.tool.active{background:var(--zumi-navy);color:#fff}.tool:focus-visible{outline:3px solid var(--zumi-focus);outline-offset:2px}.swatch{width:48px;height:48px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px var(--zumi-border);cursor:pointer;flex:0 0 auto}.swatch[aria-pressed=true]{box-shadow:0 0 0 3px var(--zumi-navy)}.swatch-row{display:flex;gap:8px;overflow-x:auto;padding:4px 0}.palette-groups{display:flex;gap:6px;flex-wrap:wrap}.autosave-banner{position:absolute;left:12px;right:12px;bottom:92px;background:var(--zumi-navy);color:#fff6d8;padding:10px 14px;border-radius:12px;text-align:center;z-index:3}.restore-mask{position:absolute;inset:0;background:rgba(27,51,88,.56);z-index:4;color:#fff}.studio-frame{position:relative;flex:1 1;min-height:0;display:flex;flex-direction:column;border:2px solid var(--zumi-navy);border-radius:22px;background:#f7f3ea;overflow:hidden}.studio-frame.tier-reduced{border-width:1px;border-radius:16px}.studio-frame.tier-minimal{border-width:0;border-bottom:2px solid var(--zumi-navy);border-radius:0}.studio-splash{position:absolute;width:10px;height:10px;border-radius:50%;pointer-events:none;opacity:.35;z-index:1}.studio-splash-a{left:10px;bottom:12px;background:var(--zumi-orange)}.studio-splash-b{right:18px;top:14px;background:var(--zumi-blue)}.studio-frame.tier-minimal .studio-splash{display:none}.frame-body{flex:1 1;min-height:0;display:flex}.frame-zumi{flex:0 0 auto;align-self:flex-end;pointer-events:none;padding:4px;filter:drop-shadow(0 4px 8px rgba(27,51,88,.12))}.zumi-tip{position:relative;z-index:3;margin:8px 8px 0;background:#fffdf8;color:var(--zumi-text);border-radius:14px;padding:8px 10px 8px 8px;display:flex;align-items:center;gap:8px;max-width:min(420px,calc(100% - 16px));box-shadow:var(--zumi-shadow)}.editor-shell[data-layout^=phone] .zumi-tip{font-size:.88rem}.zumi-tip button{border:0;background:transparent;cursor:pointer;font-weight:800;min-width:44px;min-height:44px}.canvas-wrap{position:relative;flex:1 1;overflow:hidden;touch-action:none;overscroll-behavior:none;background:#f3efe4}.canvas-stage{position:absolute;transform-origin:0 0;will-change:transform}.canvas-wrap canvas{display:block;width:100%;height:100%}.studio-empty{padding:24px;text-align:center}.finish{min-height:80vh;display:grid;place-items:center;text-align:center;padding:32px}.finish img{width:min(520px,90vw);border-radius:28px;box-shadow:var(--zumi-shadow);background:white}.finish-cta{min-width:200px}.zumi-loves{font-weight:800;color:var(--zumi-secondary);margin:0 0 8px}.make-real-panel{margin-top:12px;padding:20px 24px;border:2px solid var(--zumi-border);border-radius:var(--zumi-radius);background:var(--zumi-surface)}.make-real-panel h2{margin:0 0 10px;font-size:1.2rem}.mockup-frame{max-width:520px}.mockup-frame img{width:100%;border-radius:var(--zumi-radius);background:var(--zumi-surface);box-shadow:var(--zumi-shadow-sm)}.mockup-note{font-size:.88rem}.style-choices{display:grid;grid-gap:10px;gap:10px;margin:16px 0}.choice-card{display:flex;flex-direction:column;gap:4px;min-height:64px}.admin-bulk{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:16px 0}.admin-table img{display:block}.admin img{max-width:100%;height:auto;background:#fff;border:1px solid var(--zumi-border);border-radius:8px}.admin{padding:24px 0 60px}.admin-bar{padding:16px 0 0}.admin-bar .search{max-width:280px;margin-right:8px}table{width:100%;border-collapse:collapse;background:var(--zumi-surface-strong);border-radius:16px;overflow:hidden}td,th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--zumi-border)}.empty{display:grid;place-items:center;text-align:center;padding:48px 16px;grid-gap:8px;gap:8px}.skel{background:linear-gradient(90deg,#eee8dc,#f7f3ea,#eee8dc);background-size:200% 100%;animation:shimmer 1.2s linear infinite;border-radius:12px;min-height:180px}.crumb{font-size:.9rem;color:var(--zumi-text-muted);margin:0 0 8px}.product-groups{display:grid;grid-gap:18px;gap:18px;margin:20px 0}.product-group h2{margin:0 0 8px;font-size:1.1rem}.choice-card{border:2px solid var(--zumi-border);border-radius:var(--zumi-radius);padding:14px 16px;background:var(--zumi-surface-strong);cursor:pointer;text-align:left}.choice-card.active{border-color:var(--zumi-primary)}.sheet{position:fixed;inset:auto 0 0 0;background:var(--zumi-surface);color:var(--zumi-text);padding:16px 16px calc(16px + env(safe-area-inset-bottom, 0px));border-radius:20px 20px 0 0;z-index:20;max-height:70vh;overflow:auto;border-top:2px solid var(--zumi-navy)}@keyframes shimmer{to{background-position:-200% 0}}@keyframes pop{0%{transform:scale(.96);opacity:0}to{transform:none;opacity:1}}.celebrate-pop{animation:pop .38s ease}@media (max-width:800px){.wordmark-md .wordmark-logo{height:40px;max-width:150px}.hero{grid-template-columns:1fr;padding-bottom:20px}.hero-aside{display:flex;justify-content:center}.hero-aside .zumi{max-width:160px;max-height:160px}.nav{display:none}.nav.open{display:flex;flex-direction:column;position:absolute;right:16px;top:64px;background:var(--zumi-surface-strong);padding:12px;border-radius:16px;box-shadow:var(--zumi-shadow);z-index:20}.menu-toggle{display:inline-flex}}.journey-letters{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));grid-gap:10px;gap:10px;list-style:none;padding:0;margin:24px 0}.journey-letter{display:grid;place-items:center;min-height:72px;border-radius:var(--zumi-radius-sm);background:var(--zumi-surface-strong);box-shadow:var(--zumi-shadow-sm);font-weight:800}.journey-letter.empty{color:var(--zumi-text-muted);opacity:.7}.journey-letters .done .journey-letter{outline:2px solid var(--zumi-secondary)}.parent-labels{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px}.parent-label{background:var(--zumi-bg-accent);border-radius:var(--zumi-radius-pill);padding:4px 10px;font-size:.85rem}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.activity-shell{max-width:920px;margin:0 auto 40px}.activity-hero{display:flex;gap:16px;align-items:flex-start;margin:8px 0 16px}.activity-hero h1{margin:0 0 6px;font-size:1.7rem}.activity-page{display:block;width:100%;background:#fffdf8;border-radius:16px;box-shadow:var(--zumi-shadow-sm);border:1px solid var(--zumi-border)}.find-board{transform-origin:top center}.draw-board,.find-board{position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.draw-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.flash-card{display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer;border-radius:16px}.flash-letter{place-items:center;min-height:280px;width:100%;background:#fffdf8;border:1px solid var(--zumi-border);border-radius:16px;font-size:clamp(6rem,22vw,11rem);color:#2f6f64;box-shadow:var(--zumi-shadow-sm)}.find-mark,.flash-letter{display:grid;font-weight:800}.find-mark{position:absolute;border-radius:999px;place-items:center;background:rgba(47,111,100,.35);color:#1c1914;border:3px solid #2f6f64;pointer-events:none}.zumi-line{font-weight:800;min-height:1.4em}.zumi-slot{display:grid;justify-items:center;flex:0 0 auto}.zumi-dismiss{font-size:.8rem}.zumi-wrap{display:inline-grid;justify-items:center}.zumi-dev-label{font-size:.65rem;letter-spacing:.04em;color:var(--zumi-text-muted)}.author-board{position:relative;display:inline-block;max-width:min(900px,100%);vertical-align:top}.author-board img{display:block;width:100%;height:auto}.author-mark{position:absolute;border:2px solid #c45c4a;color:#c45c4a;font-size:11px;font-weight:800;pointer-events:none;background:rgba(196,92,74,.18);box-sizing:border-box;display:grid;place-items:center;min-width:18px;min-height:18px}.author-mark.pending{border-style:dashed;opacity:.7}.catalogue-status{font-weight:700}.immersive-child{padding-bottom:24px}@keyframes zumi-enter{0%{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}@keyframes zumi-hop{0%{transform:translateY(0)}40%{transform:translateY(-8px)}to{transform:none}}.zumi-motion-enter{animation:zumi-enter .42s ease}.zumi-motion-hop{animation:zumi-hop .48s ease}.zumi-motion-twitch .zumi{transform-origin:20% 80%}@media (max-width:700px){.activity-hero{flex-direction:column;align-items:center;text-align:center}.zumi-slot{position:relative}}@media print{.actions,.admin-bar,.nav,.no-print,.site-header,.zumi-line,.zumi-slot{display:none!important}.activity-page{box-shadow:none;border:0}}