:root{--color-bg:#fbf3e8;--color-surface:#fffaf4;--color-surface-muted:#f5ead9;--color-ink:#2b211a;--color-ink-muted:#695849;--color-line:#e8d8c3;--color-accent:#2f43b8;--color-accent-strong:#23339a;--color-accent-soft:#e7eafb;--color-on-accent:#fff;--color-danger:#b3261e;--color-danger-soft:#fbe9e7;--color-focus:var(--color-accent);--color-on-scrim:#fff;--color-on-danger:#fff;--color-pop:#f4a582;--color-pop-soft:#fde4d6;--color-cheek:#f7a8a0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-fibre-1:#2f43b8;--color-fibre-2:#6c7bd0;--color-fibre-3:#a5afe3;--color-fibre-4:#d3d8f3;--font-system:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-sans:ui-rounded, "SF Pro Rounded", var(--font-system);--font-display:ui-rounded, "SF Pro Rounded", var(--font-system);--display-weight:800;--display-tracking:-.01em;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.75rem;--text-2xl:2.25rem;--leading-tight:1.2;--leading-normal:1.5;--weight-regular:400;--weight-medium:560;--weight-bold:700;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--border-width:1px;--focus-width:3px;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-pill:999px;--card-border:0 solid transparent;--btn-shadow:none;--stitch:2px dashed var(--color-pop);--shadow-card:0 1px 2px #1c1a170f, 0 4px 16px #1c1a170f;--content-max:560px;--content-wide:1120px;--reading-max:720px;--pane-gap:var(--space-6);--mascot-hero:120px;--mascot-md:88px;--mascot-sm:56px;--tap-min:48px;--thumb-size:72px;--bar-height:12px;--cartoon-max:420px;--mascot-wood:#e9bf8f;--mascot-wood-shade:#c9955f;--mascot-face:#fff8ee;--mascot-ink:#2b211a;--mascot-stroke:2.5;--video-min:200px;--scrim:#1c1a17b3;--caption-bg:#ffffffe0;--beat-bg:#1c1a17b8;--dur-fast:.15s;--dur-base:.25s;--ease-out:cubic-bezier(.22, 1, .36, 1);--swatch-denim:#2f43b8;--swatch-forest:#2b6a3c;--swatch-terracotta:#a84a22;--swatch-graphite:#3d4451}:root[data-accent=forest]{--color-accent:#2b6a3c;--color-accent-strong:#1f5230;--color-accent-soft:#e1efe4;--color-fibre-1:#2b6a3c;--color-fibre-2:#5f9a6e;--color-fibre-3:#9cc5a6;--color-fibre-4:#d0e6d5}:root[data-accent=terracotta]{--color-accent:#a84a22;--color-accent-strong:#873a19;--color-accent-soft:#f8e6dd;--color-fibre-1:#a84a22;--color-fibre-2:#cf7c57;--color-fibre-3:#e5ad93;--color-fibre-4:#f3d6c8}:root[data-accent=graphite]{--color-accent:#3d4451;--color-accent-strong:#2a2f38;--color-accent-soft:#e6e8ec;--color-fibre-1:#3d4451;--color-fibre-2:#6b7381;--color-fibre-3:#a0a7b3;--color-fibre-4:#d2d6dc}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#1c1713;--color-surface:#27201a;--color-surface-muted:#322920;--color-ink:#f7ede1;--color-ink-muted:#c7b6a4;--color-line:#46392d;--color-danger:#ff9a8f;--color-danger-soft:#3d1f1b;--color-on-danger:#2a0d0a;--color-pop:#e8906b;--color-pop-soft:#3b2519;--mascot-wood:#d9a874;--mascot-wood-shade:#a8784a;--shadow-card:0 1px 2px #0006, 0 4px 16px #0000004d;--scrim:#000000bf;--caption-bg:#211f1ce6;--beat-bg:#000000b8;--color-accent:#9aa6ff;--color-accent-strong:#bcc4ff;--color-accent-soft:#262c55;--color-on-accent:#10142e;--color-fibre-1:#9aa6ff;--color-fibre-2:#6c7ad8;--color-fibre-3:#4a559e;--color-fibre-4:#333b6c}:root[data-theme=dark][data-accent=forest]{--color-accent:#7cc58f;--color-accent-strong:#a6dcb3;--color-accent-soft:#1e3426;--color-on-accent:#0c1f12;--color-fibre-1:#7cc58f;--color-fibre-2:#58a06b;--color-fibre-3:#3d744b;--color-fibre-4:#29502f}:root[data-theme=dark][data-accent=terracotta]{--color-accent:#f0966e;--color-accent-strong:#f7b99c;--color-accent-soft:#3e2519;--color-on-accent:#2a1208;--color-fibre-1:#f0966e;--color-fibre-2:#c9714c;--color-fibre-3:#964f33;--color-fibre-4:#663524}:root[data-theme=dark][data-accent=graphite]{--color-accent:#bcc3cf;--color-accent-strong:#d9dee6;--color-accent-soft:#2d3139;--color-on-accent:#16191e;--color-fibre-1:#bcc3cf;--color-fibre-2:#8e96a3;--color-fibre-3:#666d79;--color-fibre-4:#444a53}:root[data-mood=bold]{--color-bg:#fffdf5;--color-surface:#fff;--color-surface-muted:#f2efff;--color-ink:#121212;--color-ink-muted:#45454f;--color-line:#121212;--color-pop:#ff5fa2;--color-pop-soft:#ffe1ef;--color-cheek:#ff8fb8;--font-sans:var(--font-system);--font-display:var(--font-system);--display-weight:900;--display-tracking:-.03em;--radius-md:12px;--radius-lg:18px;--card-border:2px solid var(--color-ink);--btn-shadow:3px 3px 0 var(--color-ink);--stitch:none;--shadow-card:4px 4px 0 var(--color-ink);--mascot-wood:#ffd23f;--mascot-wood-shade:#d9a300;--mascot-face:#fff;--mascot-stroke:3.5}:root[data-mood=calm]{--color-bg:#f3f1ec;--color-surface:#fbfaf7;--color-surface-muted:#ebe8e1;--color-ink:#22251f;--color-ink-muted:#565b51;--color-line:#dad6cc;--color-pop:#9aab78;--color-pop-soft:#e7ecdb;--color-cheek:#e9b8a8;--font-sans:var(--font-system);--font-display:ui-serif, "New York", "Iowan Old Style", Georgia, serif;--display-weight:600;--display-tracking:0;--radius-md:10px;--radius-lg:16px;--card-border:var(--border-width) solid var(--color-line);--stitch:none;--shadow-card:none;--mascot-wood:#d8c3a0;--mascot-wood-shade:#b29d78;--mascot-stroke:1.75;--mascot-hero:96px;--mascot-md:72px}:root[data-theme=dark][data-mood=bold]{--color-bg:#101014;--color-surface:#1b1b23;--color-surface-muted:#262433;--color-ink:#fafafa;--color-ink-muted:#bdbdcc;--color-line:#fafafa;--color-pop:#ff7ab4;--color-pop-soft:#3d1a2c;--shadow-card:4px 4px 0 var(--color-accent);--btn-shadow:3px 3px 0 var(--color-ink)}:root[data-theme=dark][data-mood=calm]{--color-bg:#161814;--color-surface:#1f221d;--color-surface-muted:#292d26;--color-ink:#eef0e8;--color-ink-muted:#b2b7a9;--color-line:#3a3f35;--color-pop:#7f9160;--color-pop-soft:#262d1d;--mascot-wood:#b9a47f;--mascot-wood-shade:#8e7b5a}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-ink);font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-normal);margin:0;overflow-x:hidden}img{max-width:100%;display:block}p,h1,h2,h3,h4,h5,ul,ol,dl,dd{margin:0}:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--space-1);border-radius:var(--radius-sm)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shell{max-width:var(--content-max);padding:max(var(--space-3), env(safe-area-inset-top)) max(var(--space-4), env(safe-area-inset-right)) max(var(--space-7), env(safe-area-inset-bottom)) max(var(--space-4), env(safe-area-inset-left));min-height:100dvh;margin:0 auto}.stack-tight{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.split{gap:var(--space-4);flex-direction:column;display:flex}.split>*{min-width:0}.slots{gap:var(--space-4);flex-direction:column;display:flex}@media (width>=600px){.shell{max-width:var(--content-wide);padding-left:max(var(--space-5), env(safe-area-inset-left));padding-right:max(var(--space-5), env(safe-area-inset-right))}.split{gap:var(--pane-gap);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;display:grid}.split-home{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.slots{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pane-sticky{top:var(--space-4);position:sticky}.capture-go{max-width:var(--content-max);align-self:center}}@media (width>=840px){.split-home .hero{justify-content:center;min-height:60dvh}}@media (horizontal-viewport-segments:2){.shell{max-width:none}.split,.split-home{grid-template-columns:calc(env(viewport-segment-width 0 0) - var(--space-5)) minmax(0, 1fr);column-gap:calc(env(viewport-segment-left 1 0) - env(viewport-segment-right 0 0) + var(--space-5))}.pane-sticky{position:static}}@media (vertical-viewport-segments:2){.split,.split-home{row-gap:calc(env(viewport-segment-top 0 1) - env(viewport-segment-bottom 0 0) + var(--space-4));flex-direction:column;display:flex}}.stack{gap:var(--space-4);flex-direction:column;display:flex}.stack-row{gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.row-between{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.brand{font-weight:var(--weight-bold);color:var(--color-accent);letter-spacing:.02em}.title-xl{font-size:clamp(var(--text-xl), 6vw, var(--text-2xl));line-height:var(--leading-tight);font-weight:var(--weight-bold)}.title-lg{font-size:var(--text-xl);line-height:var(--leading-tight);font-weight:var(--weight-bold)}.display,.title-md{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-tracking)}.title-md{font-size:var(--text-lg);line-height:var(--leading-tight);font-weight:var(--weight-bold)}.title-sm{font-size:var(--text-md);font-weight:var(--weight-bold)}.title-xs{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.04em}.muted{color:var(--color-ink-muted)}.fine{font-size:var(--text-xs);color:var(--color-ink-muted)}.capitalise:first-letter{text-transform:uppercase}.big-number{font-size:var(--text-2xl);font-weight:var(--weight-bold);color:var(--color-accent)}.hero{gap:var(--space-4)}.card{background:var(--color-surface);border-radius:var(--radius-lg);border:var(--card-border);box-shadow:var(--shadow-card);padding:var(--space-5);gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.stitched{outline:var(--stitch);outline-offset:calc(var(--space-2) * -1)}.sub-card{background:var(--color-surface-muted);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.center-state{justify-content:center;align-items:center;gap:var(--space-3);text-align:center;flex-direction:column;min-height:70dvh;display:flex}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding:0 var(--space-5);border-radius:var(--radius-pill);border:var(--border-width) solid transparent;font:inherit;font-weight:var(--weight-medium);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);text-decoration:none;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-on-accent);box-shadow:var(--btn-shadow)}.btn-primary:not(:disabled):active{transform:translateY(1px)}.btn-big{min-height:calc(var(--tap-min) + var(--space-2));font-size:var(--text-lg);font-weight:var(--weight-bold)}.btn-primary:not(:disabled):hover{background:var(--color-accent-strong)}.btn-secondary{background:var(--color-accent-soft);color:var(--color-accent-strong)}.btn-ghost{color:var(--color-accent-strong);border-color:var(--color-line);background:0 0}.btn-ghost:hover{border-color:var(--color-accent)}.btn-small{min-height:var(--tap-min);padding:0 var(--space-4);font-size:var(--text-sm)}.btn-block{width:100%}nav .btn-ghost{border-color:#0000;padding-left:0}.slot{gap:var(--space-4)}.slot-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.thumb{width:var(--thumb-size);height:var(--thumb-size);object-fit:cover;border-radius:var(--radius-md)}.stats{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.stats dt{font-size:var(--text-xs);color:var(--color-ink-muted);order:2}.stats div{flex-direction:column;display:flex}.stats dd{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-accent);order:1}.how{padding-left:var(--space-5);gap:var(--space-2);flex-direction:column;display:flex}.bullets{padding-left:var(--space-5);gap:var(--space-1);flex-direction:column;display:flex}.badge{font-size:var(--text-xs);font-weight:var(--weight-medium);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-surface-muted);color:var(--color-ink);flex-shrink:0}.badge-damaged,.badge-unwearable{background:var(--color-danger-soft);color:var(--color-danger)}.badge-like_new,.badge-good{background:var(--color-accent-soft);color:var(--color-accent-strong)}.fibres{gap:var(--space-2);flex-direction:column;display:flex}.fibre-bar{height:var(--bar-height);border-radius:var(--radius-pill);gap:var(--border-width);background:var(--color-surface);display:flex;overflow:hidden}.fibre-bar span{min-width:var(--space-1)}.fibre-legend{gap:var(--space-2) var(--space-4);font-size:var(--text-sm);flex-wrap:wrap;padding:0;list-style:none;display:flex}.fibre-legend li{align-items:center;gap:var(--space-2);display:inline-flex}.swatch{width:var(--space-3);height:var(--space-3);border-radius:var(--radius-pill)}.route-tabs{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding:0 var(--space-4);border-radius:var(--radius-pill);border:var(--border-width) solid var(--color-line);background:var(--color-surface);color:var(--color-ink);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;display:inline-flex}.chip-on{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.chip-tag{font-size:var(--text-xs);opacity:.85}.impact-line{font-weight:var(--weight-medium);color:var(--color-accent-strong)}.listing-title{font-weight:var(--weight-bold)}.listing-price{font-size:var(--text-lg);font-weight:var(--weight-bold)}.places{gap:var(--space-3);flex-direction:column;padding:0;list-style:none;display:flex}.places li{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.place-text{flex-direction:column;min-width:0;display:flex}.place-name{font-weight:var(--weight-medium);overflow-wrap:anywhere}.place-address{font-size:var(--text-sm);overflow-wrap:anywhere}.places .btn{flex-shrink:0}.error-text{color:var(--color-danger)}.mend-list{gap:var(--space-3);flex-direction:column;display:flex}.mend{gap:var(--space-3);min-width:0}.mend .badge{background:var(--color-surface)}.video{aspect-ratio:16/9;width:100%;min-width:var(--video-min);min-height:var(--video-min);border-radius:var(--radius-sm);background:var(--color-surface);border:0;display:block}.video-gate{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface);font-size:var(--text-sm);flex-direction:column;align-items:flex-start;display:flex}.celebrate{background:var(--color-accent-soft);box-shadow:none}.milestone{font-weight:var(--weight-bold);color:var(--color-on-accent);background:var(--color-accent);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);align-self:flex-start}.card-glow{outline:var(--focus-width) solid var(--color-accent-soft)}.cartoon-backdrop{z-index:10;background:var(--scrim);justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-4);flex-direction:column;display:flex;position:fixed;inset:0}.cartoon-stage{width:min(100%, var(--cartoon-max));aspect-ratio:900/1117;border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:var(--color-surface);position:relative;overflow:hidden}.cartoon-stage img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.cartoon-total{top:var(--space-5);left:var(--space-4);right:var(--space-4);text-align:center;font-weight:var(--weight-bold);background:var(--caption-bg);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);position:absolute}.cartoon-beat{bottom:var(--space-5);left:var(--space-4);right:var(--space-4);text-align:center;font-weight:var(--weight-medium);color:var(--color-on-scrim);background:var(--beat-bg);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);position:absolute}.cartoon-close{background:var(--color-surface)}.topbar{margin-bottom:var(--space-2);z-index:5;justify-content:flex-end;display:flex;position:relative}.menu{position:relative}.btn-icon{width:var(--tap-min);font-size:var(--text-lg);padding:0;line-height:1}.menu-list{right:0;top:calc(100% + var(--space-1));min-width:12rem;padding:var(--space-2);background:var(--color-surface);border:var(--border-width) solid var(--color-line);border-radius:var(--radius-md);box-shadow:var(--shadow-card);flex-direction:column;margin:0;list-style:none;display:flex;position:absolute}.menu-item{width:100%;min-height:var(--tap-min);padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}.menu-item:hover{background:var(--color-surface-muted)}.consent{margin-bottom:var(--space-4)}.choice-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.btn-link{min-height:var(--tap-min);padding:0 var(--space-2);color:var(--color-accent-strong);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;text-decoration:underline}.btn-danger{background:var(--color-danger);color:var(--color-on-danger)}.faq details{border-top:var(--border-width) solid var(--color-line);padding:var(--space-2) 0}.faq details:first-child{border-top:0}.faq summary{min-height:var(--tap-min);font-weight:var(--weight-medium);cursor:pointer;align-items:center;display:flex}.faq details p{padding-bottom:var(--space-2);color:var(--color-ink-muted)}.legal{gap:var(--space-4)}.legal-draft{align-self:flex-start}.legal-section{gap:var(--space-2);flex-direction:column;display:flex}.setting{gap:var(--space-2);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.setting+.setting{margin-top:var(--space-3)}.swatch-ring{box-shadow:0 0 0 var(--border-width) var(--color-surface)}.select{width:100%;min-height:var(--tap-min);padding:0 var(--space-3);border:var(--border-width) solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);font:inherit}.legal a,.video-gate a{color:var(--color-accent-strong);font-weight:var(--weight-medium)}.mascot{flex-shrink:0;display:block;overflow:visible}.bobbin{position:relative}.bobbin img{-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.bobbin-extras{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.mascot-hero{width:var(--mascot-hero);height:auto}.mascot-md{width:var(--mascot-md);height:auto}.mascot-sm{width:var(--mascot-sm);height:auto}.mascot-logo{width:var(--space-6);height:auto}.mascot-row{align-items:center;gap:var(--space-3);min-width:0;display:flex}.mascot-row>:last-child{min-width:0}.mascot-duo{justify-content:center;gap:var(--space-5)}.center-state .mascot{margin-bottom:var(--space-2)}.bubble{background:var(--color-surface-muted);min-width:0;color:var(--color-ink);border:var(--card-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-weight:var(--weight-medium);overflow-wrap:anywhere;position:relative}.bubble-left:before{content:"";left:calc(var(--space-2) * -1);width:var(--space-4);height:var(--space-4);background:inherit;border-left:var(--card-border);border-bottom:var(--card-border);position:absolute;top:50%;transform:translateY(-50%)rotate(45deg)}.celebrate .bubble,.hero .bubble{background:var(--color-pop-soft)}.topbar{justify-content:space-between;align-items:center}.brand-home{align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding:0 var(--space-2) 0 0;font:inherit;cursor:pointer;background:0 0;border:0;display:inline-flex}.brand-home .brand{font-family:var(--font-display);font-weight:var(--display-weight);font-size:var(--text-lg);letter-spacing:var(--display-tracking)}.idea{gap:var(--space-3)}.idea-summary{justify-content:space-between;align-items:flex-start;gap:var(--space-3);min-height:var(--tap-min);cursor:pointer;list-style:none;display:flex}.idea-summary::-webkit-details-marker{display:none}.idea-head{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.idea .badge{background:var(--color-surface)}.similar{gap:var(--space-3);flex-direction:column;padding:0;list-style:none;display:flex}.video-item{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.btn-inline{min-height:auto;font-size:inherit;vertical-align:baseline;padding:0}.leave{width:min(calc(100% - var(--space-6)), var(--content-max));border:var(--card-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-ink);padding:var(--space-5);box-shadow:var(--shadow-card)}.leave[open]{gap:var(--space-3);flex-direction:column;display:flex}.leave::backdrop{background:var(--scrim)}
