.yh-q{flex:none;position:relative;width:44px;height:44px;display:inline-grid;place-items:center;margin:-6px 0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--accent);cursor:pointer;-webkit-tap-highlight-color:transparent}.yh-q>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;border:1.5px solid currentColor;background:var(--surface);font-family:var(--font-body);font-size:.95rem;font-weight:700;line-height:1}.yh-q.is-new>span{position:relative;background:color-mix(in srgb,var(--accent) 14%,var(--surface));box-shadow:0 0 0 2px var(--surface),0 0 0 3.5px color-mix(in srgb,var(--accent) 58%,transparent)}.yh-q.is-new>span:not(.yh-sr):after{content:"";position:absolute;top:-1.5px;right:-1.5px;bottom:-1.5px;left:-1.5px;border-radius:50%;border:2px solid var(--accent);opacity:0;pointer-events:none;animation:yh-ping 1.3s cubic-bezier(.2,.7,.3,1) .4s 2 both}@keyframes yh-ping{0%{transform:scale(1);opacity:.55}to{transform:scale(1.6);opacity:0}}.yh-q:hover>span{background:color-mix(in srgb,var(--accent) 20%,var(--surface))}.yh-q:focus-visible{outline:none}.yh-q:focus-visible>span{outline:3px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion: reduce){.yh-q.is-new>span:after{content:none;animation:none}}html[data-calm="1"] .yh-q.is-new>span:after,html[data-ink=on] .yh-q.is-new>span:after{content:none;animation:none}.yh-q>span.yh-sr,.yh-q.is-new>span.yh-sr,.yh-q:hover>span.yh-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;background:none;box-shadow:none;animation:none}.yh-back-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4100;display:grid;place-items:center;padding:16px;background:var(--hp-scrim, rgba(32, 24, 16, .45))}.yh-dialog{width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:20px 20px 16px;background:var(--surface);color:var(--text);border-radius:var(--radius);box-shadow:0 24px 60px -24px #00000080;font-family:var(--font-body)}.yh-head{display:flow-root}.yh-head .yh-yuni{--yfig-w: 116px;width:var(--yfig-w)}.yh-kicker{margin:4px 0 2px;font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.yh-title{margin:0 0 6px;font-family:var(--display);font-size:1.35rem;line-height:1.2;outline:none;overflow-wrap:anywhere}.yh-what{margin:0 0 6px;line-height:1.5;overflow-wrap:anywhere}.yh-steps{margin:10px 0;padding:0;list-style:none;counter-reset:yh;display:grid;gap:8px;clear:both}.yh-steps li{counter-increment:yh;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:4px 10px;line-height:1.45}.yh-steps li:before{content:counter(yh);width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--accent) 16%,var(--surface));color:var(--text);font-weight:700;font-size:.85rem}.yh-step-text{overflow-wrap:anywhere;min-width:0}.yh-show{min-height:44px;padding:0 12px;font:inherit;font-size:.85rem;font-weight:700;color:var(--accent);background:transparent;border:1.5px solid var(--border);border-radius:999px;cursor:pointer;white-space:nowrap}.yh-show:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.yh-example{margin:12px 0;padding:12px 14px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent2) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--accent2) 30%,var(--line))}.yh-example-label{margin:0 0 6px;font-size:.78rem;font-weight:750;letter-spacing:.04em;color:var(--accent2);overflow-wrap:anywhere}.yh-example-line{margin:0 0 4px;line-height:1.45;overflow-wrap:anywhere}.yh-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.yh-actions .btn{min-height:44px}@media (max-width: 600px){.yh-back-layer{place-items:end stretch;padding:0}.yh-dialog{width:100%;max-height:88dvh;border-radius:var(--radius) var(--radius) 0 0;padding:16px 16px 14px}.yh-head .yh-yuni{--yfig-w: 92px;width:var(--yfig-w)}.yh-steps li{grid-template-columns:28px minmax(0,1fr)}.yh-steps li .yh-show{grid-column:2;justify-self:start}}.yh-spot-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4100;pointer-events:none}.yh-spot-hole{position:fixed;border-radius:14px;box-shadow:0 0 0 9999px #14100a85;outline:3px solid var(--accent2);outline-offset:0;transition:left .2s var(--ease, ease),top .2s var(--ease, ease),width .2s var(--ease, ease),height .2s var(--ease, ease)}.yh-spot-dim{position:fixed;top:0;right:0;bottom:0;left:0;background:#14100a66}.yh-spot-card{position:fixed;left:50%;transform:translate(-50%);width:min(440px,calc(100vw - 24px));display:grid;grid-template-columns:56px minmax(0,1fr);gap:8px 12px;align-items:center;padding:12px 14px;background:var(--surface);color:var(--text);border-radius:var(--radius-sm);box-shadow:0 16px 40px -18px #0000008c;pointer-events:auto;font-family:var(--font-body)}.yh-spot-card .yh-spot-yuni{width:56px}.yh-spot-text{margin:0;line-height:1.45;overflow-wrap:anywhere}.yh-spot-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.yh-spot-actions .btn{min-height:44px}@media (prefers-reduced-motion: reduce){.yh-spot-hole{transition:none}}html[data-calm="1"] .yh-spot-hole{transition:none}.yh-practice{position:fixed;left:50%;bottom:12px;transform:translate(-50%);z-index:3900;width:min(560px,calc(100vw - 24px));display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 14px;background:var(--surface);color:var(--text);border:2px solid var(--accent2);border-radius:var(--radius-sm);box-shadow:0 12px 30px -16px #00000073}.yh-practice p{margin:0;flex:1 1 220px;min-width:0;line-height:1.4;overflow-wrap:anywhere}.yh-practice .btn{min-height:44px}html[data-look=plus] .yh-dialog{border-top:3px solid transparent;background-image:linear-gradient(var(--surface),var(--surface)),var(--hp-thread, none);background-origin:border-box;background-clip:padding-box,border-box}html[data-look=plus] .yh-show{border-color:var(--hp-field-border, var(--border))}.yh-headrow{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.yh-headrow>:first-child{min-width:0;overflow-wrap:anywhere;margin:0}.mascot-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:0 4px}.mascot-head-name{font-family:var(--display);font-weight:600;font-size:1rem;color:var(--text)}.pip-bar .pip-help{flex:none;color:inherit}html.is-practising .shell{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.pdfe-wait{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4000;margin:0;padding:14px 18px;border-radius:var(--radius-sm);background:var(--surface);color:var(--text);box-shadow:0 16px 40px -18px #0000008c;font-family:var(--font-body)}@property --eye-sepia{syntax: "<number>"; inherits: false; initial-value: 0;}@property --eye-bright{syntax: "<number>"; inherits: false; initial-value: 1;}@property --eye-amber{syntax: "<number>"; inherits: false; initial-value: 0;}.eye-comfort-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:48;pointer-events:none;--eye-sepia: 0;--eye-bright: 1;--eye-amber: 0;background-color:rgba(255,170,60,var(--eye-amber));box-shadow:inset 0 0 0 100vmax rgba(20,12,0,calc((1 - var(--eye-bright)) * .55));transition:--eye-sepia 6s linear,--eye-bright 6s linear,--eye-amber 6s linear,background-color 6s linear,box-shadow 6s linear}@supports (backdrop-filter: brightness(1)) or (-webkit-backdrop-filter: brightness(1)){.eye-comfort-veil{box-shadow:none;-webkit-backdrop-filter:sepia(var(--eye-sepia)) brightness(var(--eye-bright));backdrop-filter:sepia(var(--eye-sepia)) brightness(var(--eye-bright))}}.eye-comfort-card{position:fixed;z-index:52;left:50%;bottom:18px;transform:translate(-50%);width:min(420px,calc(100vw - 24px));display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:16px;background:var(--surface-strong, #fffdf8);color:var(--text, #2b2a26);border:1px solid var(--border, #6b8470);box-shadow:0 10px 28px #14100829;pointer-events:auto}.eye-comfort-card img{width:48px;height:48px;border-radius:12px;object-fit:cover;flex:none;background:color-mix(in srgb,var(--accent, #46624c) 18%,transparent)}.eye-comfort-card p{margin:0}.eye-comfort-copy{min-width:0;flex:1}.eye-comfort-kicker{font-size:.72rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.eye-comfort-card .eye-comfort-line{font-size:.92rem;font-weight:650;line-height:1.35}.eye-comfort-count{font-variant-numeric:tabular-nums;font-weight:750;margin-top:2px}.eye-comfort-settings{display:flex;flex-direction:column;gap:10px;padding-top:4px;border-top:1px solid var(--border)}.eye-comfort-settings .eyebrow{margin:0;font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.eye-comfort-settings .theme-field input[type=range]{width:108px}.eye-comfort-hours{display:flex;flex-direction:column;gap:8px}.eye-comfort-hours input[type=time]{width:7.2rem;max-width:46%;font:inherit;color:var(--text);background:transparent;border:1px solid var(--border);border-radius:8px;padding:4px 6px}.eye-comfort-status,.eye-comfort-note{margin:0;font-size:.75rem;font-weight:550;letter-spacing:0;text-transform:none;line-height:1.35;color:var(--text-muted)}@media (prefers-reduced-motion: reduce){.eye-comfort-veil{transition-duration:1ms}}.vh-bar{position:fixed;z-index:70;left:50%;transform:translate(-50%);bottom:calc(var(--safe-bottom, 0px) + 56px);width:min(600px,calc(100vw - 32px - var(--safe-left, 0px) - var(--safe-right, 0px)));display:grid;gap:8px;padding:12px 14px;background:var(--surface-strong);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);font-family:var(--font-body)}.vh-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.vh-dot{width:12px;height:12px;border-radius:var(--radius-pill);background:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 22%,transparent);animation:vh-pulse 1.6s ease-in-out infinite;flex:none}@keyframes vh-pulse{50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--danger) 10%,transparent)}}html[data-calm="1"] .vh-dot{animation:none}@media (prefers-reduced-motion: reduce){.vh-dot{animation:none}}.vh-owner{font-size:var(--type-body)}.vh-where{font-size:var(--type-small);color:var(--text-muted);border:1px solid var(--line);border-radius:var(--radius-pill);padding:2px 8px}.vh-link{border:0;background:none;color:var(--accent);font:inherit;font-size:var(--type-small);text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:6px 2px;min-height:32px}.vh-stop{margin-left:auto}.vh-heard,.vh-line{margin:0;line-height:1.4}.vh-heard{color:var(--text-muted);font-size:var(--type-small)}.vh-line{font-size:var(--type-body)}.vh-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.vh-hint{color:var(--text-muted);font-size:var(--type-small)}:root .icon-btn.vh-top-mic.is-on{color:var(--on-danger);background:var(--danger);border-color:var(--danger)}.vh-sheet-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#10222647;display:grid;place-items:center;padding:max(var(--safe-top, 0px),16px) calc(var(--safe-right, 0px) + 16px) max(var(--safe-bottom, 0px),16px) calc(var(--safe-left, 0px) + 16px)}html[data-look=plus]:not([data-contrast=high]) .vh-sheet-back{background:var(--hp-scrim, rgba(14, 17, 34, .55))}.vh-sheet{width:min(720px,100%);max-height:100%;overflow:auto;overscroll-behavior:contain;background:var(--surface-strong);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:18px 20px 20px;display:grid;gap:14px;font-family:var(--font-body)}.vh-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.vh-sheet-head h2{margin:0;font-family:var(--font-display);font-size:var(--type-title)}.vh-sheet-lead{margin:0;color:var(--text-muted);line-height:1.45}.vh-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:12px}.vh-group{border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;background:var(--surface)}.vh-group h3{margin:0 0 6px;font-size:var(--type-body);color:var(--accent)}.vh-group ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.vh-group li{display:grid;gap:1px}.vh-say{font-weight:600}.vh-does,.vh-cards p{color:var(--text-muted);font-size:var(--type-small);margin:0;line-height:1.45}.vh-cards{grid-column:1 / -1}.vh-sheet,.vh-bar{-webkit-user-select:none;user-select:none}.vh-say,.vh-heard q{-webkit-user-select:text;user-select:text}html[data-vh-open=stage] .stage{margin-bottom:var(--vh-bar-space, 0px)}html[data-vh-open=page] body{padding-bottom:var(--vh-bar-space, 0px)}html[data-vh-open]{scroll-padding-bottom:var(--vh-bar-space, 0px)}@media (max-width: 820px),(max-height: 500px){.vh-bar{bottom:calc(var(--safe-bottom, 0px) + 12px);width:calc(100vw - 32px - var(--safe-left, 0px) - var(--safe-right, 0px))}}.yarn-stash{display:flex;flex-direction:column;align-items:stretch;gap:14px;min-width:0;max-width:100%;overflow-x:clip;color:var(--ink)}.yarn-stash *,.yarn-stash *:before,.yarn-stash *:after{box-sizing:border-box}.yarn-stash h2,.yarn-stash h3{margin:0;text-align:center;text-wrap:balance}.yarn-stash h2{font-family:Fraunces,Georgia,serif;font-weight:600}.yarn-stash p{margin:0}.yarn-note,.yarn-math,.yarn-tag,.yarn-empty p,.yarn-fallback p{text-align:center;color:var(--muted)}.yarn-note{padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:var(--olive-soft);color:var(--ink)}.yarn-actions,.yarn-pills,.yarn-unit,.yarn-sort,.yarn-card-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center}.yarn-stash .btn,.yarn-stash .yarn-pill,.yarn-stash .yarn-tap,.yarn-stash .yarn-select,.yarn-stash .yarn-input{display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1.15;border-radius:999px;min-height:48px;padding:8px 16px;font-weight:700;font-family:inherit}.yarn-stash .btn{flex:0 0 auto;width:auto;max-width:100%;box-sizing:border-box;height:46px;min-height:44px;max-height:48px;padding:0 14px;white-space:nowrap}.yarn-actions .btn{flex:1 1 9.5rem;max-width:16rem}.yarn-pill{border:2px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;max-width:100%;white-space:normal;text-wrap:balance}.yarn-pill[aria-pressed=true],.yarn-pill.is-on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.yarn-tools,.yarn-filters{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:end}.yarn-filter{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;flex:1 1 8rem;font-size:.78rem;font-weight:700;color:var(--muted)}.yarn-select,.yarn-input,.yarn-search{width:100%;border:2px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;min-height:48px;padding:8px 16px;text-align:center;text-align-last:center;font:inherit;font-weight:700}.yarn-search{display:block}.yarn-totals{display:grid;gap:8px}.yarn-total-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0;padding:0;list-style:none}.yarn-total-list li{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:40px;padding:6px 12px;border-radius:999px;background:var(--paper);border:1px solid var(--line)}.yarn-group{display:flex;flex-direction:column;gap:8px}.yarn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;min-width:0}.yarn-card{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}.yarn-card-open{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;width:100%;min-height:48px;padding:10px;border-radius:18px;border:1px solid var(--line);background:var(--paper);color:var(--ink);text-align:center;font:inherit;cursor:pointer}.yarn-photo,.yarn-swatch{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid var(--line);flex:0 0 auto}.yarn-card-open strong,.yarn-card-open span,.yarn-left{max-width:100%;overflow-wrap:anywhere}.yarn-left{font-weight:700}.yarn-nowrap{white-space:nowrap}@media (max-width: 767px){.app.is-mascot-collapsed .yarn-stash{padding-left:112px}}.yarn-fit{font-size:.78rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.yarn-fit.is-enough{color:var(--ok)}.yarn-fit.is-maybe{color:var(--warn)}.yarn-fit.is-short{color:var(--danger)}.yarn-form,.yarn-camera,.yarn-empty,.yarn-fallback{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;min-width:0}.yarn-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;width:100%}.yarn-field{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.yarn-field-label,.yarn-block-label{font-size:.78rem;font-weight:700;color:var(--muted);text-align:center}.yarn-tap,.yarn-field input{width:100%;border:2px solid var(--olive);background:var(--paper);color:var(--ink);cursor:pointer}.yarn-field input{cursor:text;font:inherit;font-weight:700}.yarn-wide{grid-column:1 / -1}.yarn-suggest{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.yarn-swatch-row{display:flex;align-items:center;justify-content:center;gap:10px}.yarn-swatch-row input[type=color]{width:48px;height:48px;padding:0;border:2px solid var(--line);border-radius:50%;background:transparent;overflow:hidden}.yarn-camera-stage{position:relative;width:min(100%,420px);aspect-ratio:3 / 4;border-radius:18px;overflow:hidden;background:#2e2a26}.yarn-camera-stage video{width:100%;height:100%;object-fit:cover;display:block}.yarn-guide{position:absolute;left:50%;top:42%;width:46%;aspect-ratio:1;transform:translate(-50%,-50%);border:3px dashed rgba(255,253,248,.95);border-radius:50%;box-shadow:0 0 0 999px #2e2a2659;pointer-events:none}.yarn-guide-label{position:absolute;left:12px;right:12px;bottom:16px;margin:0;color:#fffdf8;font-weight:700;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.55);pointer-events:none}.yarn-use,.yarn-block{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding:12px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--paper) 88%,transparent)}.yarn-use ul,.yarn-match{width:100%;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.yarn-match li{display:flex;justify-content:center;text-align:center;gap:8px;flex-wrap:wrap}.yarn-alert{width:100%;text-align:center;color:var(--danger);font-weight:700}.yarn-preview{width:min(100%,220px);aspect-ratio:1;object-fit:cover;border-radius:18px;border:1px solid var(--line)}@media (max-width: 700px){.yarn-grid,.yarn-fields{grid-template-columns:1fr}.yarn-actions{flex-direction:column;align-items:stretch}.yarn-actions .btn{flex:0 0 auto;width:100%;max-width:none}}@media (min-width: 1100px){.yarn-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@font-face{font-family:Atkinson Hyperlegible;src:url(/app/fonts/atkinson-hyperlegible-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-002F,U+0031-10FFFF}@font-face{font-family:Atkinson Hyperlegible;src:url(/app/fonts/atkinson-hyperlegible-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0000-002F,U+0031-10FFFF}@font-face{font-family:Fraunces;src:url(/app/fonts/fraunces-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Fraunces;src:url(/app/fonts/fraunces-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}html{font-size:calc(18px * var(--yuni-scale, 1));font-variant-numeric:tabular-nums;font-feature-settings:"zero" 0,"tnum" 1}:root,[data-theme=light]{--bg-sky: #F3EADB;--bg-meadow: #F3EADB;--bg: #FBF6EE;--paper: #FFFDF8;--cream: #F3EADB;--olive: #55613A;--olive-soft: #E7E8D6;--caramel: #9A6338;--surface: #FFFDF8;--surface-strong: #FFFDF8;--text: #2E2A26;--ink: var(--text);--text-muted: #5C544B;--muted: var(--text-muted);--accent: #55613A;--accent2: #9A6338;--sage: #81BFBC;--sage-2: #C9D5C3;--mesh-1: #d7efec;--mesh-2: #e7f0e4;--mesh-3: #d7efc4;--mesh-4: #e7f6ff;--sky: #81BFBC;--petal: #b76b93;--lilac: #7d6aa8;--chip: #E7E8D6;--border: #C4B39A;--line: #E6DCCB;--focus: #9A6338;--ok: #1c6b3a;--warn: #8a5a10;--danger: #8d2e2e;--on-accent: #ffffff;--on-danger: #ffffff;--face: #fffaf6;--face-ink: #1c3330;--breeze: #f7fbff;--studio-sky: #d7eef8;--studio-ground: #b7d7a8;--studio-near: #d7efc4;--shadow: 0 10px 30px -18px rgba(70, 50, 30, .35);--glow: 0 10px 30px -18px rgba(70, 50, 30, .35);--radius-sm: 12px;--radius: 22px;--radius-lg: 28px;--radius-pill: 999px;--blur: 18px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--font-display: "Fraunces", Georgia, serif;--font-body: "Atkinson Hyperlegible", "Segoe UI", sans-serif;--font-mono: ui-monospace, "Cascadia Mono", "Segoe UI Mono", monospace;--display: var(--font-display);--font: var(--font-body);--type-display: clamp(1.8rem, 3vw, 2.6rem);--type-title: 1.35rem;--type-body: 1.05rem;--type-small: .84rem;--dur-fast: .16s;--dur: .28s;--ease: cubic-bezier(.2, .7, .2, 1);color-scheme:light}[data-theme=dark]{--bg-sky: #2C261F;--bg-meadow: #342E26;--bg: #2C261F;--paper: #3A332B;--cream: #342E26;--olive: #D4E2B4;--olive-soft: #4A4238;--caramel: #E4C49A;--surface: #3A332B;--surface-strong: #463E34;--text: #F6F0E4;--ink: #F6F0E4;--text-muted: #D9CBB6;--muted: #D9CBB6;--accent: #D4E2B4;--accent2: #E4C49A;--sage: #C5E0DC;--sage-2: #D5E0CC;--mesh-1: #4A4338;--mesh-2: #3E382F;--mesh-3: #463E34;--mesh-4: #3A332B;--sky: #C5E0DC;--petal: #E7C4D4;--lilac: #D4C8E6;--chip: #4A4238;--border: #B5A48E;--line: #A89880;--focus: #E4C49A;--ok: #C5DFA0;--warn: #E7C48A;--danger: #F0B4AE;--on-accent: #2A241C;--on-danger: #2A241C;--face: #F6F0E4;--face-ink: #2A241C;--breeze: #E7F0EA;--studio-sky: #3A332B;--studio-ground: #4A4036;--studio-near: #463E34;--shadow: 0 18px 50px rgba(0, 0, 0, .35);--glow: 0 0 0 1px rgba(246, 240, 228, .08), 0 12px 40px rgba(0, 0, 0, .28);color-scheme:dark}[data-yarn=wool]{--accent: #3c5e34;--petal: #a07840;--sky: #2f6e86}[data-yarn=mohair]{--accent: #3d6450;--petal: #b76b93;--sky: #3d7ea0}[data-yarn=linen]{--accent: #2f6848;--petal: #a08858;--sky: #3d7a84}[data-yarn=acrylic]{--accent: #1d7a4a;--petal: #b76b93;--sky: #2a7ea8}[data-yarn=variegated]{--accent: #2f6a48;--petal: #a85a98;--sky: #2f6e90;--lilac: #6a58a0}[data-theme=dark][data-yarn=wool]{--accent: #E4D0A0;--petal: #E6D0A4}[data-theme=dark][data-yarn=mohair]{--accent: #D5E6C8;--petal: #F0D0E2}[data-theme=dark][data-yarn=linen]{--accent: #D8E0C0;--petal: #EAD9B4}[data-theme=dark][data-yarn=acrylic]{--accent: #C8E4C0;--petal: #F0B8D0}[data-theme=dark][data-yarn=variegated]{--accent: #D6E2B0;--petal: #E8C8DC;--sky: #C5E0DC}html{transition:none}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html,body{overflow:hidden;touch-action:manipulation}body{font-family:var(--font);background:radial-gradient(1100px 520px at 90% -18%,var(--bg-sky) 0%,transparent 58%),radial-gradient(820px 420px at -10% 110%,var(--bg-meadow) 0%,transparent 52%),var(--bg);color:var(--text);letter-spacing:.005em;line-height:1.45}button,select,input,textarea{font-family:inherit}button,a,input,select,textarea,label,summary{touch-action:manipulation}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]):not([type=image]),select,textarea{font-size:max(16px,1rem)}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.app{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.topbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 22px;background:color-mix(in srgb,var(--surface) 92%,transparent);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:10px;margin-right:8px}.brand-mark{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--on-accent);font-family:var(--display);font-weight:520;font-size:1.15rem;line-height:1}.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy strong{font-family:var(--display);font-weight:520;font-size:1.2rem;letter-spacing:-.03em;color:var(--ink)}.brand-copy small{margin-top:2px;color:var(--muted);font-weight:500;font-size:.72rem;letter-spacing:.04em}.brand-slogan{color:var(--accent2);font-size:.78rem;font-weight:650;letter-spacing:.01em}.brand-slogan.it{color:var(--muted);font-weight:500;font-style:italic}.landing h2{margin:0 0 6px;font-family:var(--display);font-weight:520;font-size:1.8rem;letter-spacing:-.03em}.landing-slogan{margin:8px 0 0;color:var(--accent2);font-weight:700;font-size:1.05rem}.landing-slogan.it{margin-top:2px;color:var(--muted);font-weight:500;font-style:italic;font-size:.98rem}.tools-aside{display:flex;flex-direction:column;gap:16px}.app.is-dock .projects-aside,.app.is-dock .preview-card{display:none}.app.is-dock .main{grid-template-columns:minmax(0,1fr) 320px}.watch-form{display:flex;gap:8px;margin:8px 0}.watch-form input{flex:1;min-width:0}.watch-video{width:100%;aspect-ratio:16 / 9;border:0;border-radius:12px;background:#e7f6ff;margin-top:8px}.watch-progress{font-weight:700;margin:10px 0 0}.watch-step{margin:4px 0 0;color:var(--muted)}.watch-limits{margin-top:10px;color:var(--muted);font-size:.82rem}.watch-limits summary{cursor:pointer;font-weight:650;color:var(--ink)}.main{display:grid;grid-template-columns:280px 1fr 340px;gap:18px;padding:18px 22px 40px;flex:1;align-items:start}@media (max-width: 1100px){.main{grid-template-columns:1fr}}.card{background:var(--surface);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);border:1px solid var(--line)}.card-title{font-weight:600;font-size:.75rem;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;background:var(--chip);color:var(--ink);padding:9px 14px;border-radius:12px;font-weight:600;font-size:.92rem;cursor:pointer;transition:background .12s ease,transform .12s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn.primary{background:var(--accent);color:var(--on-accent)}.btn.soft{background:color-mix(in srgb,var(--accent2) 16%,var(--surface));border-color:color-mix(in srgb,var(--accent2) 28%,var(--line))}.btn.danger{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--ink);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.btn-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.btn-row.wrap{align-items:center}.chip-toggle,.field-inline{display:inline-flex;align-items:center;gap:8px;background:transparent;padding:6px 10px;border-radius:12px;border:1px solid var(--line);font-size:.88rem;font-weight:600;color:var(--muted)}.field-inline select,select,input[type=text]{border:none;background:transparent;border-radius:8px;padding:4px 6px;color:var(--ink);font-weight:600}.project-list{display:flex;flex-direction:column;gap:8px;max-height:50vh;overflow:auto}.project-item{text-align:left;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--chip) 45%,var(--surface));border:1px solid transparent;border-left:3px solid transparent;cursor:pointer;font-weight:600;color:var(--ink)}.project-item.active{border-color:var(--line);border-left-color:var(--accent);background:var(--surface)}.project-item small{display:block;font-weight:500;color:var(--muted);margin-top:3px}.pattern-body{white-space:pre-wrap;font-size:.98rem;line-height:1.6;background:color-mix(in srgb,var(--chip) 35%,var(--surface));border:1px solid var(--line);border-radius:14px;padding:16px 18px;max-height:42vh;overflow:auto}.preview3d{width:100%;height:320px;border-radius:14px;overflow:hidden;background:radial-gradient(90% 70% at 50% 100%,color-mix(in srgb,var(--accent2) 28%,#fff) 0%,transparent 62%),linear-gradient(#e7f6ff,#f7fbf6);border:1px solid var(--line);touch-action:pan-y}[data-theme=dark] .preview3d{background:radial-gradient(90% 70% at 50% 100%,#5c4a38 0%,transparent 62%),linear-gradient(#3a332b,#2c261f)}.timer-display{font-family:var(--display);font-size:2.7rem;font-weight:520;letter-spacing:-.04em;color:var(--ink);line-height:1}.timer-break{color:var(--accent2);font-weight:600;margin:8px 0 2px}.size-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.size-grid button{padding:8px 4px;border-radius:10px;border:1px solid transparent;background:color-mix(in srgb,var(--chip) 70%,var(--surface));font-weight:600;cursor:pointer;color:var(--ink);font-size:.75rem}.size-grid button.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;font-size:.88rem;margin-top:10px;color:var(--muted)}.metrics strong{color:var(--ink);font-weight:600}.validation{margin-top:12px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);font-size:.85rem;font-weight:600}.validation.ok{background:color-mix(in srgb,var(--accent2) 14%,var(--surface))}.validation.bad{background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.progress-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}@keyframes stitch-pop{0%{opacity:.35}to{opacity:1}}.stitch-anim{animation:stitch-pop .25s ease}.tabs{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}.tabs button{border:1px solid transparent;background:transparent;color:var(--muted);border-radius:999px;padding:7px 12px;font-weight:600;cursor:pointer}.panel-intro{margin:2px 0 8px}.panel-intro .eyebrow{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.panel-intro h2{margin:2px 0 0;font-family:var(--display);font-weight:520;font-size:2rem;letter-spacing:-.03em;line-height:1.05}.lede{margin:6px 0 0;color:var(--muted)}.form-grid,.field{display:flex;flex-direction:column;gap:6px}.form-row{display:grid;grid-template-columns:1.3fr .7fr .8fr;gap:8px}.field{font-size:.82rem;font-weight:600;color:var(--muted)}.field textarea,.field input,.field select,.name-input{width:100%;border:1px solid var(--line);background:color-mix(in srgb,var(--chip) 40%,var(--surface));color:var(--ink);border-radius:12px;padding:10px 12px;font-weight:600}.name-input{font-family:var(--display);font-size:1.55rem;font-weight:520;letter-spacing:-.03em;margin-bottom:8px;background:transparent;border:none;border-bottom:1px solid var(--line);border-radius:0;padding:4px 0 8px}.hint{color:var(--muted);font-size:.9rem;line-height:1.5;margin:6px 0}.row-editor{margin-top:16px}.row-list{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow:auto}.row-edit{display:grid;grid-template-columns:72px 72px 1fr;gap:8px;align-items:center;background:color-mix(in srgb,var(--chip) 35%,var(--surface));border:1px solid var(--line);border-radius:12px;padding:8px 10px;font-size:.82rem}.row-edit small{color:var(--muted);font-weight:500}.row-edit input[type=number]{width:100%;border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:var(--surface);color:var(--ink)}.step-card{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent2);border-radius:14px;padding:16px;margin-top:10px}.step-card h3{margin:4px 0 8px;font-family:var(--display);font-weight:520;font-size:1.45rem;letter-spacing:-.03em}.step-card p{margin:0 0 8px;line-height:1.5}.step-kicker{color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.step-tip{color:var(--accent);font-weight:600}.tip-list,.check-list{margin:8px 0 12px;padding-left:18px}.tip-list li{margin:4px 0}.check-list{list-style:none;padding-left:0}.check-list label{display:flex;gap:8px;align-items:flex-start;margin:6px 0;font-weight:600}.file-input{display:none}.guide{margin-bottom:8px}.vision{margin-top:18px;padding-top:8px;border-top:1px solid var(--line)}.vision-canvas,.vision-video{width:100%;max-height:280px;border-radius:14px;background:color-mix(in srgb,var(--chip) 55%,var(--surface));border:1px solid var(--line);margin-top:8px}.hidden{display:none}.legend{display:flex;gap:12px;flex-wrap:wrap;font-size:.8rem;font-weight:600;margin-top:8px;color:var(--muted)}.legend i{display:inline-block;width:8px;height:8px;border-radius:999px;margin-right:4px}.vision-report ul{margin:6px 0;padding-left:18px}.photo-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.photo-row figure{margin:0;width:112px}.photo-row img{width:112px;height:84px;object-fit:cover;border-radius:12px;border:1px solid var(--line);display:block}.photo-row .btn{margin-top:6px;padding:4px 8px;font-size:.75rem}@media (max-width: 720px){.form-row,.row-edit{grid-template-columns:1fr}.brand-copy strong{font-size:1.25rem}.panel-intro h2{font-size:1.7rem}}@media (prefers-reduced-motion: reduce){.btn,.stitch-anim,.yuni-figure,.wing{transition:none;animation:none}}.preview-wrap{display:flex;flex-direction:column;gap:8px}.stitch-legend{display:flex;gap:10px;flex-wrap:wrap;list-style:none;margin:0;padding:0;font-size:.78rem;font-weight:600;color:var(--muted)}.stitch-legend i{display:inline-block;width:8px;height:8px;border-radius:99px;margin-right:4px}.yuni-mascot{display:flex;align-items:center;gap:10px;margin:4px 0 10px;min-width:0;max-width:100%}.yuni-figure{width:72px;height:72px;flex:none}.yuni-figure .head{fill:#fff;stroke:var(--accent);stroke-width:1.5}.yuni-figure .dress{fill:var(--accent);opacity:.9}.yuni-figure .wing{fill:var(--accent2);opacity:.55}.yuni-figure .eye{fill:var(--ink)}.yuni-figure .breeze{fill:none;stroke:var(--accent);stroke-width:1.4;opacity:.7}.yuni-tick{display:block;width:8px;height:8px;margin-top:4px;border-radius:99px;background:var(--accent2);opacity:.35}.is-timing.tick .yuni-tick{opacity:1;transform:scale(1.35)}.is-timing .breeze{animation:yuni-wing 1.6s ease-in-out infinite}.yuni-caption{display:flex;flex-direction:column;gap:1px;min-width:0;max-width:100%}.yuni-caption strong{font-family:var(--display);font-weight:520;font-size:1.15rem}.yuni-caption span{color:var(--muted);font-size:.75rem;letter-spacing:.04em}.yuni-note{margin:4px 0 0;color:var(--ink);font-weight:600;font-size:.88rem}.count-banner{margin:8px 0 0;padding:8px 12px;border-radius:12px;background:color-mix(in srgb,var(--accent2) 18%,var(--surface));border:1px solid color-mix(in srgb,var(--accent2) 35%,var(--line));font-weight:650;font-size:.9rem}.is-idle .yuni-figure{animation:yuni-float 4.8s ease-in-out infinite}.is-timing .yuni-figure{animation:yuni-float 1.8s ease-in-out infinite}.is-timing .wing{transform-origin:center;animation:yuni-wing .8s ease-in-out infinite}.is-break .eye{transform:scaleY(.2)}.is-count .yuni-figure{animation:yuni-pop .45s ease}.is-watch .yuni-figure{animation:yuni-float 3.2s ease-in-out infinite}@keyframes yuni-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes yuni-wing{0%,to{opacity:.45}50%{opacity:.85}}@keyframes yuni-pop{0%{transform:scale(.92)}60%{transform:scale(1.06)}to{transform:scale(1)}}.catalog{margin-top:14px}.catalog-body{margin-top:10px}.catalog-body input[type=text]{width:100%;border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:8px 10px;margin:6px 0 10px}.catalog-body h3{font-family:var(--display);font-weight:520;font-size:1.25rem;margin:12px 0 6px}.catalog-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:280px;overflow:auto}.catalog-list li{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--chip) 45%,var(--surface))}.catalog-list small{display:block;color:var(--muted);font-weight:600}.catalog-list p{margin:4px 0 0;color:var(--muted);font-size:.85rem}.keep-card{background:var(--surface);color:var(--text);border:1px solid var(--line);border-left:4px solid var(--accent2);border-radius:var(--radius);padding:14px 16px;margin:10px 0;max-width:100%;box-sizing:border-box}.keep-card h3{margin:0 0 6px;font-size:1rem;font-weight:600}.keep-card p{margin:0 0 6px;line-height:1.45}.keep-card .keep-how{font-weight:600}.keep-card .btn-row{margin-top:8px}html,body{overflow:hidden}body{line-height:1.5;font-family:var(--font-body)}h1,h2,.card-title,.brand-copy strong{font-family:var(--font-display)}.btn,.icon-btn,.extra-chip,.check-line{min-height:48px}.icon-btn{min-width:48px}.count-target{min-height:72px;min-width:72px;font-size:1.4rem}.topbar{flex-wrap:wrap;gap:var(--space-3);padding:12px 22px;background:color-mix(in srgb,var(--surface-strong) 78%,transparent);-webkit-backdrop-filter:blur(var(--blur));backdrop-filter:blur(var(--blur));border-bottom:1px solid var(--border);z-index:20}.brand{min-width:0;margin-right:auto;flex:1 1 12rem;max-width:100%}.brand-copy{min-width:0}.brand-copy strong{display:block;overflow:visible;text-overflow:unset;white-space:normal;overflow-wrap:normal;word-break:normal}.brand-slogan{overflow:visible;text-overflow:unset}.brand-slogan{white-space:normal;color:var(--text-muted);font-weight:600;font-size:var(--type-small);line-height:1.35;margin-top:2px}.top-actions{display:flex;gap:8px;flex:none}.icon-btn{width:42px;height:42px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface-strong);color:var(--text);display:grid;place-items:center;cursor:pointer;padding:0}.icon-btn svg{width:18px;height:18px}.icon-btn.tiny{width:32px;height:32px;font-weight:700;letter-spacing:.08em;align-self:start}.icon-btn:focus-visible,.menu-trigger:focus-visible,.row-line:focus-visible,.project-open:focus-visible,.yuni-fab:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.shell{display:grid;grid-template-columns:minmax(240px,320px) minmax(280px,1fr) minmax(260px,360px);gap:18px;padding:18px 22px 108px;align-items:start;position:relative;z-index:1}.project-rail,.pattern-col,.hero-col{min-width:0}.hero-col{position:sticky;top:84px;display:flex;flex-direction:column;gap:14px}.app.is-dock .project-rail,.app.is-dock .hero-card{display:none}.app.is-dock .shell{grid-template-columns:minmax(0,1fr) minmax(260px,360px)}.card{background:var(--surface);-webkit-backdrop-filter:blur(var(--blur));backdrop-filter:blur(var(--blur));box-shadow:var(--glow);border:1px solid var(--border);min-width:0;max-width:100%}.rail-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.rail-head h2{margin:0;font-family:var(--font-display);font-weight:520;font-size:var(--type-title);letter-spacing:-.03em}.project-cards{display:flex;flex-direction:column;gap:10px}.project-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:start;padding:12px;border-radius:var(--radius);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-strong) 70%,transparent)}.project-card.active{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:var(--glow)}.project-open{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;width:100%;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;padding:0;font:inherit}.swatch{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background-color:var(--accent);background-image:linear-gradient(160deg,color-mix(in srgb,var(--accent) 72%,var(--petal)),var(--accent));color:var(--on-accent)}.swatch svg,.swatch svg *{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7}.project-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.project-copy strong{font-size:.95rem;display:block;overflow:visible;white-space:normal;overflow-wrap:break-word;text-overflow:clip;line-height:1.25}.project-copy small{color:var(--text-muted);font-weight:600}.pattern-col{padding:18px 20px 22px}.name-input{font-size:var(--type-title);max-width:100%}.pattern-body{max-width:68ch;line-height:1.6;font-size:var(--type-body);overflow-wrap:anywhere}.pattern-more{margin-top:14px}.pattern-more summary{cursor:pointer;font-weight:700;color:var(--text)}.size-picker{display:flex;gap:16px;align-items:flex-start;margin-top:14px}.size-pills{display:flex;gap:6px;overflow-x:auto;max-width:100%;flex:1;min-width:0;scrollbar-width:none;padding-bottom:2px}.size-pills::-webkit-scrollbar{display:none}.size-pills button{flex:none;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface-strong);color:var(--text);font-weight:700;font-size:.78rem;padding:7px 10px;cursor:pointer}.size-pills button.active{background:var(--accent);color:var(--on-accent);border-color:transparent}.size-spec{display:grid;grid-template-columns:auto auto;gap:2px 12px;margin:0;font-size:var(--type-small)}.size-spec dt{color:var(--text-muted)}.size-spec dd{margin:0;font-weight:700}.row-stepper{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}.row-count{flex:1 1 9rem;min-width:0}.row-count strong{font-variant-numeric:tabular-nums;font-size:.95rem;overflow-wrap:anywhere}.hint{overflow-wrap:anywhere}.btn-row>.hint{flex:1 1 12rem;min-width:0}.metrics{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.metrics div{min-width:0;overflow-wrap:anywhere}.progress-track{height:6px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--text) 14%,transparent);margin-top:6px;overflow:hidden}.progress-track span{display:block;height:100%;background:var(--accent);border-radius:inherit}.row-scroll{max-height:320px;overflow:auto;display:flex;flex-direction:column;gap:8px;margin-top:12px}.row-line{border:1px solid var(--border);border-radius:14px;padding:10px 12px;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.row-line.is-current{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong))}.row-kicker{display:block;font-weight:700;margin-bottom:6px}.stitch-chips{display:flex;flex-wrap:wrap;gap:6px}.stitch-chip{display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius-pill);padding:3px 8px;background:var(--chip);color:var(--text);font-family:var(--font-mono);font-size:.78rem;font-weight:600}.stitch-chip i{width:8px;height:8px;border-radius:99px}.hero-card .card-title{font-family:var(--font-display);font-size:1.2rem;letter-spacing:-.03em;text-transform:none;color:var(--text)}.hero-card .preview3d{height:min(32vh,280px);min-height:180px;touch-action:pan-y;background:radial-gradient(80% 55% at 50% 100%,#c4a574,transparent 68%),linear-gradient(#f4e7d6,#ead9c4)}[data-theme=dark] .hero-card .preview3d{background:radial-gradient(80% 55% at 50% 100%,#6a5340,transparent 68%),linear-gradient(#3a332b,#2c261f)}.generate-yuni,.desk-yuni{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:center}.generate-yuni img,.desk-yuni img,.desk-fallback-yuni{width:96px;height:128px;object-fit:cover;object-position:72% 18%;border-radius:18px;background:#e7d7c3}.generate-yuni p,.desk-yuni p{margin:0}.desk-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;align-items:end}.desk-tools label{display:grid;gap:4px;font-size:.85rem}.desk-fallback-yuni{margin-bottom:8px}.work-strip{display:flex;flex-direction:column;gap:12px;min-width:0;max-width:100%}.work-strip .timer-card{margin:0;min-width:0;max-width:100%}.work-strip .yuni-mascot{max-width:100%;min-width:0}.work-strip .yuni-mascot img{width:72px;height:72px;object-fit:cover;flex:none}.work-strip .yuni-caption{min-width:0}.menu-select{display:flex;flex-direction:column;gap:4px;min-width:0}.menu-label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.menu-trigger{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:42px;padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-strong);color:var(--text);font-weight:650;cursor:pointer}.menu-trigger:disabled{opacity:.55;cursor:not-allowed}.menu-trigger i{border:solid var(--text-muted);border-width:0 2px 2px 0;padding:3px;transform:rotate(45deg)}.menu-pop,.card-menu,.settings-pop{background:var(--surface-strong);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow)}.menu-pop,.card-menu{position:fixed;z-index:90;margin:0;padding:6px;list-style:none;overflow:auto;width:min(280px,calc(100vw - 16px));border-radius:14px}.menu-pop button,.card-menu button{width:100%;text-align:left;border:0;background:transparent;color:var(--text);border-radius:10px;padding:8px 10px;font-weight:650;cursor:pointer}.menu-pop button.is-active,.menu-pop button[aria-selected=true],.card-menu button:hover,.menu-pop button:hover{background:color-mix(in srgb,var(--accent) 16%,transparent)}.card-menu button.danger{color:var(--danger)}.settings-pop{position:fixed;z-index:70;width:min(240px,calc(100vw - 16px));max-height:min(70vh,560px);overflow:auto;padding:16px;border-radius:var(--radius);display:flex;flex-direction:column;gap:12px}.check-line{display:flex;align-items:center;gap:8px;font-weight:650;color:var(--text)}.btn.danger{background:var(--danger);color:var(--on-danger);border-color:transparent}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:color-mix(in srgb,var(--bg) 35%,transparent);display:grid;place-items:center;padding:16px}.modal{width:min(400px,100%);background:var(--surface-strong);color:var(--text);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow);border:1px solid var(--border)}.modal h2{margin:0 0 8px;font-family:var(--font-display);font-weight:520}.modal p{margin:0 0 14px;color:var(--text-muted)}.yuni-fab{position:fixed;right:20px;bottom:20px;z-index:30;width:72px;height:72px;border-radius:50%;border:1px solid var(--border);background:var(--surface-strong);box-shadow:var(--glow);display:grid;place-items:center;cursor:pointer;padding:0}.yuni-fab .yuni-mascot{margin:0}.yuni-fab .yuni-figure{width:56px;height:56px}.yuni-figure .head{fill:var(--face)}.yuni-figure .eye{fill:var(--face-ink)}.is-idle .yuni-figure,.is-watch .yuni-figure{transform-origin:center;animation:yuni-breathe 4.8s var(--ease) infinite}.is-idle .eye,.is-watch .eye{transform-box:fill-box;transform-origin:center;animation:yuni-blink 5.4s var(--ease) infinite}.is-break .eye{animation:none;transform:scaleY(.2);transform-box:fill-box;transform-origin:center}@keyframes yuni-breathe{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.025,.985)}}@keyframes yuni-blink{0%,42%,48%,to{transform:scaleY(1)}45%{transform:scaleY(.12)}}.petals{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.petals i{position:absolute;top:-16px;border-radius:50% 0 50% 50%;background:color-mix(in srgb,var(--petal) 75%,var(--surface-strong));opacity:.4;animation-name:petal-fall;animation-timing-function:linear;animation-iteration-count:infinite}.petals.is-paused i{animation-play-state:paused}@keyframes petal-fall{0%{transform:translateY(-12vh) rotate(0)}to{transform:translateY(112vh) rotate(200deg)}}.illustrated{min-height:380px;border-radius:16px;display:grid;place-items:center;align-content:center;gap:8px;background:radial-gradient(80% 55% at 50% 100%,var(--studio-ground),transparent 70%),linear-gradient(var(--studio-sky),var(--studio-near));border:1px solid var(--border)}.illustrated svg{width:min(100%,240px);height:auto}.illustrated p{margin:0;font-weight:700;color:var(--text)}.ill-ground{fill:var(--studio-ground)}.ill-fill{fill:var(--accent);opacity:.9}.ill-line{fill:none;stroke:var(--sky);stroke-width:2}.ill-stroke{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round}.landing-slogan{color:var(--text)}@media (max-width: 1099px){.shell{grid-template-columns:minmax(0,1fr);padding:12px 12px 108px}.pattern-col{min-width:0}.hero-col{position:static}.app.is-dock .shell{grid-template-columns:1fr}.project-cards{flex-direction:column;overflow-x:visible;padding-bottom:4px}.project-card{min-width:0;max-width:100%}.hero-card .preview3d,.illustrated{min-height:260px;height:42vh}.size-picker{flex-direction:column}}@media (min-width: 1100px) and (max-height: 900px){.yarn-hold{display:none}.hero-card>.hint:first-of-type{display:none}.desk-yuni{grid-template-columns:56px minmax(0,1fr)}.desk-yuni img,.desk-fallback-yuni{width:56px;height:72px}.hero-card .preview3d,.illustrated{min-height:160px;height:200px}}@media (min-width: 1100px){.brand-copy strong{white-space:nowrap}.shell{overflow-x:hidden}.hero-col,.hero-card,.preview3d{max-width:100%;min-width:0}}@media (max-width: 767px){.app.is-mascot-open,.app.is-mascot-collapsed{--mascot-w: 0px}.stage{grid-template-columns:minmax(0,1fr)}.stage .shell{padding:8px 12px 24px}.shell,.card,.pattern-col,.project-rail,.size-picker,.size-scrub{max-width:100%}.metrics{grid-template-columns:minmax(0,1fr)}.size-spec dt,.size-spec dd{white-space:normal}.mascot-alcove,.mascot-alcove.is-collapsed{position:fixed;width:0;height:0;min-height:0;margin:0;padding:0;border:0;background:transparent;box-shadow:none;overflow:visible;display:block}.mascot-peek{position:fixed;left:0;top:42%;z-index:30;margin:0;background:var(--surface-strong);border:1px solid var(--border);border-left:0;border-radius:0 14px 14px 0;padding:14px 5px}.stage{grid-template-rows:auto minmax(0,1fr)}.mascot-alcove:not(.is-collapsed){position:relative;left:auto;right:auto;bottom:auto;top:auto;grid-column:1;grid-row:1;width:calc(100% - 16px);height:auto;min-height:280px;margin:8px auto 0;z-index:1;display:grid;border:1px solid var(--border);border-radius:28px;background:radial-gradient(140px 90px at 50% 18%,color-mix(in srgb,var(--sage) 40%,white),transparent 72%),linear-gradient(180deg,var(--bg-sky),var(--surface-strong));box-shadow:var(--glow);overflow:hidden;padding:4px 4px 2px}.stage .shell{grid-row:2}}@media (max-width: 720px){.topbar{padding:10px 12px}.brand-copy strong{font-size:1rem}.row-stepper{flex-wrap:wrap}.pattern-col .btn-row{flex-direction:column;align-items:stretch}.pattern-col .btn-row>.hint{flex:none;width:100%}.pattern-col .btn-row>.btn,.pattern-col .btn-row>a.btn,.pattern-col .btn-row>label.btn{flex:0 0 auto;width:100%;height:46px;min-height:44px;max-height:48px;box-sizing:border-box}.pattern-col .btn-row>input,.pattern-col .btn-row>select{flex:0 0 auto;width:100%;height:46px;min-height:44px;max-height:48px;box-sizing:border-box}.yuni-fab{right:14px;bottom:14px}}.btn,.menu-trigger,.size-scrub,.row-line,.cmdk button{transition:none}@media (prefers-reduced-motion: reduce){html{transition:none}.petals,.meadow-mesh{display:none}.yuni-figure,.eye,.wing,.petals i,.btn,.stitch-anim,.pattern-col.is-spring,.cmdk,.mascot-pop,.mascot-body,.rig-lid{animation:none!important;transition:none}.rig-lid{opacity:0}}.pattern-col{view-transition-name:pattern}.pattern-col.is-spring{animation:editor-in .28s cubic-bezier(.22,1.15,.36,1)}@keyframes editor-in{0%{transform:translateY(8px) scale(.985)}to{transform:none}}::view-transition-old(pattern),::view-transition-new(pattern){animation-duration:.28s;animation-timing-function:cubic-bezier(.22,1.15,.36,1)}.meadow-mesh{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.meadow-mesh i{position:absolute;width:46vw;height:46vw;border-radius:50%;filter:blur(36px);opacity:.55;animation:mesh-drift 18s var(--ease) infinite alternate}.meadow-mesh i:nth-child(1){left:-8%;top:-10%;background:var(--mesh-1)}.meadow-mesh i:nth-child(2){right:-6%;top:8%;background:var(--mesh-2);animation-duration:22s}.meadow-mesh i:nth-child(3){left:20%;bottom:-18%;background:var(--mesh-3);animation-duration:16s}.meadow-mesh i:nth-child(4){right:12%;bottom:6%;background:var(--mesh-4);animation-duration:20s}.meadow-mesh.is-paused i{animation-play-state:paused}@keyframes mesh-drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(24px,-18px,0) scale(1.06)}}.landing-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px;margin-bottom:14px}.landing-strip button{display:grid;gap:6px;justify-items:center;border:1px solid var(--border);background:var(--surface-strong);color:var(--text);border-radius:14px;padding:8px;cursor:pointer;min-width:0}.landing-strip em{font-style:normal;font-size:var(--type-small);font-weight:700;min-width:0;max-width:100%;text-align:center;line-height:1.2;overflow-wrap:anywhere}.landing-strip img,.landing-swatch,.landing-rows,.landing-piece,.landing-pdf{width:100%;height:52px;border-radius:10px;object-fit:cover}.landing-swatch{background:linear-gradient(135deg,var(--mesh-1),var(--mesh-2))}.landing-rows{display:grid;align-content:center;gap:5px;padding:8px;background:var(--chip)}.landing-rows i{display:block;height:6px;border-radius:99px;background:var(--accent)}.landing-piece{background:linear-gradient(var(--studio-sky),var(--studio-ground))}.landing-pdf{display:grid;place-items:center;background:var(--surface);color:var(--accent);font-weight:700;letter-spacing:.04em}.size-scrub{display:flex;flex:1;min-width:0;gap:4px;overflow-x:auto;padding:4px;border-radius:var(--radius-pill);background:var(--chip);touch-action:none;cursor:ew-resize}.size-spec{flex:none}.size-spec dt,.size-spec dd{white-space:nowrap}.size-scrub span{flex:1 0 auto;min-width:2.4rem;text-align:center;border-radius:var(--radius-pill);padding:6px 8px;font-size:.78rem;font-weight:700;color:var(--text-muted)}.size-scrub span.is-on{background:var(--accent);color:var(--on-accent)}.theme-field{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.theme-field input[type=color]{width:42px;height:28px;padding:0;border:1px solid var(--border);background:transparent}.theme-field input[type=range]{width:120px}.cmdk-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#10222647;display:grid;align-items:start;justify-content:center;padding-top:12vh}.cmdk{width:min(440px,calc(100vw - 24px));background:var(--surface-strong);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;animation:editor-in .2s cubic-bezier(.22,1.15,.36,1)}.cmdk input{width:100%;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--text);padding:14px 16px;font:inherit;font-size:1rem}.cmdk ul{list-style:none;margin:0;padding:6px}.cmdk button{width:100%;display:flex;justify-content:space-between;gap:12px;text-align:left;border:0;background:transparent;color:var(--text);border-radius:10px;padding:10px 12px;cursor:pointer}.cmdk button.is-on{background:color-mix(in srgb,var(--accent) 16%,transparent)}.cmdk button span,.cmdk-empty{color:var(--text-muted);font-size:var(--type-small)}.cmdk-empty{padding:10px 12px}.is-listening .yuni-figure,.is-counting .yuni-figure{transform-origin:center}.is-celebrate .yuni-figure{animation:yuni-hop .42s cubic-bezier(.22,1.15,.36,1) 1}.is-error .eye{transform:translateY(1px) scaleY(.35);transform-box:fill-box;transform-origin:center}@keyframes yuni-hop{0%{transform:translateY(0)}40%{transform:translateY(-8px)}to{transform:translateY(0)}}.app.has-pip .stage{position:fixed;margin:0;z-index:1;overflow:auto}.app.has-pip .shell{grid-template-columns:minmax(280px,1fr);min-width:280px}.app.has-pip .hero-col{position:static}.app.has-pip .pattern-col,.app.has-pip .project-rail{min-width:min(280px,100%)}.app.has-pip .project-cards{flex-direction:column;overflow-x:visible}.app.has-pip .project-card{min-width:min(280px,100%);max-width:100%}.app.has-pip .project-copy,.app.has-pip .project-copy strong,.app.has-pip .project-meta{overflow-wrap:normal;word-break:normal;white-space:normal}.stage{display:grid;grid-template-columns:var(--mascot-w, 220px) minmax(0,1fr);align-items:stretch;flex:1;min-height:0;min-width:0;overflow:hidden}.app.is-mascot-open{--mascot-w: 268px}@media (min-width: 1200px){.app.is-mascot-open{--mascot-w: 312px}}.app.is-mascot-collapsed{--mascot-w: 52px}.app.is-mascot-collapsed:has(.v5-peek-card){--mascot-w: 140px}.stage .shell{height:100%;min-height:0;min-width:0;overflow-x:clip;overflow-y:auto;padding-left:12px;padding-bottom:28px}.app.has-pip .stage .shell{grid-template-columns:minmax(280px,1fr);min-width:280px}.app.has-pip .hero-col{grid-column:1 / -1}.app.has-pip .rail-head{flex-wrap:wrap}.app.has-pip .rail-head .btn{flex:0 0 auto}@media (min-width: 1100px){.app.has-pip .stage .shell{grid-template-columns:minmax(280px,340px) minmax(280px,1fr);min-width:560px}}.mascot-alcove{align-self:center;width:calc(100% - 14px);height:min(540px,calc(100% - 12px));margin:0 0 0 8px;border-radius:28px;border:1px solid var(--border);background:radial-gradient(140px 90px at 50% 18%,color-mix(in srgb,var(--sage) 40%,white),transparent 72%),linear-gradient(180deg,var(--bg-sky),var(--surface-strong));box-shadow:var(--glow);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;justify-items:center;overflow:hidden;z-index:2;padding:18px 12px 8px;min-height:0}.mascot-alcove.is-collapsed{align-self:start;display:flex;flex-direction:column;justify-content:flex-start;background:var(--surface-strong);min-height:160px;height:auto;margin-top:12px;padding:0;grid-template-rows:none}.mascot-alcove.is-collapsed:has(.v5-peek-card){width:auto;overflow:visible;padding:8px;background:transparent;box-shadow:none;border:0}.mascot-peek{writing-mode:vertical-rl;border:0;background:transparent;color:var(--text);font-family:var(--font-display);font-size:1rem;letter-spacing:.08em;padding:18px 0;cursor:pointer;display:flex;align-items:center;gap:8px}.mascot-peek:has(.v5-peek-card){writing-mode:horizontal-tb;flex-direction:column;width:auto;padding:8px 8px 10px}.v5-peek-card{display:block;width:108px;height:148px;overflow:visible;background:transparent;animation:v5-life 6.4s ease-in-out infinite}.v5-peek{writing-mode:horizontal-tb;width:100%;height:100%;object-fit:cover;object-position:22% 40%;background:transparent;display:block}.mascot-stack.is-v5{--v5-tilt: 0deg;--v5-pan: 0px;overflow:visible;background:transparent;transform:perspective(800px) rotateX(var(--v5-tilt)) translate(var(--v5-pan))}.v5-card{width:100%;height:100%;object-fit:contain;object-position:center;background:transparent;display:block;animation:v5-life 6.4s ease-in-out infinite}.v5-card.is-alcove{width:100%;height:auto;max-height:100%;aspect-ratio:1280 / 720;object-fit:contain;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 2.5%);mask-image:linear-gradient(to bottom,transparent 0,#000 2.5%)}@media (min-width: 900px){.mascot-alcove:not(.is-collapsed):has(.v5-card){height:auto;align-self:start;grid-template-rows:auto auto auto}.mascot-alcove:not(.is-collapsed):has(.v5-card) .mascot-pop{height:auto;min-height:0;width:100%}.mascot-stack.is-v5{width:100%;height:auto;display:flex;justify-content:center;align-items:center}.v5-card.is-alcove{width:min(100%,calc((100dvh - 220px) * 635 / 720));max-height:calc(100dvh - 220px);margin-inline:auto;aspect-ratio:635 / 720;object-fit:cover;object-position:0% 0}.mascot-stack.is-v5>.v5-card:not(.is-alcove){width:100%;height:auto;aspect-ratio:1280 / 720;object-fit:contain;max-height:calc(100dvh - 220px)}}.v5-portrait{animation:v5-life 6.4s ease-in-out infinite;transform-origin:center}.v5-sweep{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.22) 50%,transparent 62%);background-size:220% 100%;mix-blend-mode:soft-light;animation:v5-sweep 8s ease-in-out infinite}@keyframes v5-life{0%,to{transform:translateY(0) rotate(0) scale(1)}50%{transform:translateY(-4px) rotate(-.5deg) scale(1.015)}}@keyframes v5-sweep{0%,to{background-position:130% 0}50%{background-position:-30% 0}}@media (prefers-reduced-motion: reduce){.v5-card,.v5-peek-card,.v5-portrait,.v5-sweep{animation:none}.mascot-stack.is-v5{transform:none}}.v5-peek.is-live-peek{object-fit:cover;object-position:center 32%;background:transparent}.mascot-alcove:not(.is-collapsed):has(.yuni-live){height:auto;align-self:start;grid-template-rows:auto auto auto}.mascot-alcove:not(.is-collapsed):has(.yuni-live) .mascot-pop{height:auto;min-height:0;width:100%}.mascot-stack.is-live{width:100%;height:auto;display:flex;justify-content:center;align-items:center;background:transparent;overflow:visible}.yuni-live{width:min(100%,calc(100dvh - 230px));aspect-ratio:1;background:transparent}.yuni-live canvas,.yuni-live img{width:100%;height:100%;display:block;background:transparent;object-fit:contain}.mascot-pop picture,.yuni-mascot picture{display:contents}.mascot-pop{width:100%;height:100%;min-height:180px;min-width:0;display:flex;align-items:center;justify-content:center;animation:mascot-in .42s cubic-bezier(.22,1.15,.36,1)}@keyframes mascot-in{0%{transform:translate(-110%);opacity:0}to{transform:none;opacity:1}}.mascot-stack{position:relative;width:100%;height:100%}.mascot-stack .wing,.mascot-stack .mascot-body,.mascot-stack .rig-part{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;object-position:center center;display:block}.mascot-stack .wing-left{animation:wing-l 2.8s ease-in-out infinite}.mascot-stack .wing-right{animation:wing-r 3.1s ease-in-out infinite}.mascot-stack .rig-lid{opacity:0;animation:yuni-blink 5.6s ease-in-out infinite}.mascot-stack .rig-brow{opacity:0}@keyframes yuni-blink{0%,88%,to{opacity:0}92%,96%{opacity:1}}.mascot-alcove.is-paused .wing,.mascot-alcove.is-paused .mascot-body,.mascot-alcove.is-paused .rig-lid{animation-play-state:paused}@keyframes wing-l{0%,to{transform:rotate(0)}50%{transform:rotate(-6deg)}}@keyframes wing-r{0%,to{transform:rotate(0)}50%{transform:rotate(6deg)}}.mascot-body{animation:mascot-breathe 4.8s ease-in-out infinite}@keyframes mascot-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.mascot-bust{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center 22%}.mascot-bubble{margin:0 0 8px;align-self:stretch;justify-self:stretch;min-width:0;width:auto;max-width:100%;box-sizing:border-box;overflow:visible;white-space:normal;overflow-wrap:break-word;line-height:1.35;padding:8px 12px;border-radius:16px;background:var(--surface-strong);border:1px solid var(--border);color:var(--text);font-size:.86rem;font-weight:650;text-align:center;position:relative;z-index:3}.mascot-actions{display:flex;gap:8px;align-self:start;justify-content:center;padding:2px 6px 6px}.yuni-portrait{width:72px;height:72px;object-fit:cover;object-position:center 18%;border-radius:18px;flex:none;background:var(--surface-strong)}html[data-contrast=high] body{background:var(--bg)}html[data-contrast=high] .meadow-mesh,html[data-contrast=high] .petals{display:none}html[data-contrast=high] .topbar,html[data-contrast=high] .card,html[data-contrast=high] .mascot-alcove,html[data-contrast=high] .mascot-bubble,html[data-contrast=high] .cmdk{background:var(--surface)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;border:2px solid var(--border)!important}html[data-contrast=high] .topbar{border-width:0 0 2px!important;border-radius:0}.pip-filters{position:absolute;width:0;height:0}.pip-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}html.is-zone-noselect,html.is-zone-noselect *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.pip-draw-hint{position:fixed;left:50%;top:88px;transform:translate(-50%);z-index:40;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;box-sizing:border-box;width:min(520px,calc(100vw - 16px));max-width:calc(100vw - 16px);padding:8px 10px 8px 14px;border-radius:999px;background:var(--surface-strong);border:1px solid var(--border);color:var(--text);font-weight:700;text-align:left;pointer-events:none}.pip-draw-hint span{flex:1 1 auto;min-width:0;line-height:1.3}.pip-draw-hint .btn{flex:0 0 auto;width:44px;min-width:44px;min-height:44px;padding:0;pointer-events:auto}.pip-zone.is-draft{pointer-events:none;outline:3px dashed var(--accent)}.pip-zone{position:fixed;left:0;top:0;z-index:35;display:flex;flex-direction:column;border-radius:28px;overflow:visible;background:color-mix(in srgb,var(--bg-sky) 70%,white);border:1px solid var(--border);box-shadow:var(--glow);will-change:transform}.pip-zone.is-goo{filter:url(#yuni-goo)}.pip-zone iframe,.pip-hold{flex:1 1 auto;width:100%;min-width:0;min-height:0;border:0;background:transparent}.pip-hold{overflow:hidden;border-radius:22px 22px 0 0;padding:8px 10px;text-align:center;color:var(--text)}.pip-hold strong,.pip-hold span{display:block;width:100%;min-width:0;max-width:100%;overflow:hidden}.pip-hold strong{font-size:1.2rem;line-height:1.15;white-space:nowrap;text-overflow:ellipsis}.pip-hold span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.3}.pip-zone.is-compact .pip-hold span,.pip-zone.is-phone .pip-hold span{display:none}.pip-zone.is-phone .pip-hold{overflow:visible;display:flex;align-items:center;justify-content:center;padding:12px 12px 8px;min-height:2.6rem}.pip-zone.is-phone .pip-hold strong{overflow:visible;text-overflow:clip;white-space:normal;width:auto;max-width:100%;line-height:1.35}.pip-bar{display:flex;flex:0 0 auto;flex-wrap:nowrap;align-items:stretch;gap:6px;padding:8px;min-width:0}.pip-handle{border:0;background:color-mix(in srgb,var(--surface-strong) 80%,transparent);color:var(--text);font-weight:700}.pip-move{border-radius:999px}.pip-se{border-radius:6px;cursor:nwse-resize}.pip-measure{position:absolute;left:0;top:0;display:flex;gap:6px;width:max-content;visibility:hidden;pointer-events:none}.pip-bar>button,.pip-more>.btn,.pip-more-menu button,.pip-measure button{flex:0 0 auto;width:auto;max-width:none;min-width:44px;min-height:44px;height:auto;max-height:none;overflow:visible;text-overflow:clip;white-space:nowrap;line-height:1.1;padding:4px 10px}.pip-more{position:relative;display:flex;flex:0 0 auto;overflow:visible}.pip-more-menu{position:absolute;left:0;bottom:calc(100% + 4px);display:flex;flex-direction:column;align-items:stretch;gap:4px;z-index:5;width:max-content;max-width:calc(100vw - 16px);padding:6px;border-radius:12px;background:var(--surface-strong);border:1px solid var(--border)}.pip-more-menu button{width:100%}.app.is-hands .pip-bar>button,.app.is-hands .pip-more>.btn,.app.is-hands .pip-more-menu button,.app.is-hands .pip-measure button,.app.is-hands .pip-draw-hint .btn{min-width:72px;min-height:72px}.pip-zone.is-flow{position:relative;left:auto;top:auto;z-index:1;width:100%;height:auto;min-height:160px;margin:12px 0 28px;transform:none}.pip-zone.is-sheet{border-radius:24px 24px 0 0}.pip-sheet-actions,.pip-strip{display:flex;flex-wrap:wrap;gap:8px;padding:8px}.pip-sheet-actions .btn,.pip-strip .btn{min-height:48px;min-width:96px}.pip-strip{position:fixed;top:72px;right:8px;z-index:34;width:min(280px,calc(100vw - 16px));border-radius:24px;background:var(--surface-strong);border:1px solid var(--border);color:var(--text);padding:12px}.extra-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3}.extra-hat,.extra-beanie{position:absolute;left:34%;top:2%;width:32%}.extra-scarf{position:absolute;left:26%;top:28%;width:48%}.extra-cardigan{position:absolute;left:18%;top:32%;width:64%;opacity:.9}.extra-swatch{position:absolute;left:40%;bottom:30%;width:18%;height:20%;transform-origin:50% 100%}.is-bust .extra-swatch{left:4%;bottom:6%;width:22%}.extra-yawn{position:absolute;right:12%;top:6%;color:var(--text);letter-spacing:.18em;font-family:var(--font-display);animation:extra-yawn 2.4s ease-in-out infinite}.extra-friends{position:absolute;left:0;bottom:6%;display:flex;flex-direction:column}.extra-friend{width:26px;height:26px;animation:extra-bob 3s ease-in-out infinite}.friend-bee{animation-delay:.4s}.friend-snail{animation-delay:.8s}.extra-wear{position:absolute;left:0;right:0;bottom:2px;display:flex;justify-content:center;gap:4px;pointer-events:auto}.extra-chip{border:1px solid var(--border);background:var(--surface-strong);color:var(--text);border-radius:999px;padding:2px 8px;font-size:.72rem;text-transform:capitalize}.extra-chip[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.extra-chip:disabled{opacity:.45}.extra-confetti{position:absolute;top:0;right:0;bottom:0;left:0}.extra-confetti i{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--petal);animation:extra-pop 1.4s cubic-bezier(.2,.8,.2,1) infinite}.extra-confetti i:nth-child(1){left:18%;top:24%}.extra-confetti i:nth-child(2){left:70%;top:18%;background:var(--accent2);animation-delay:.2s}.extra-confetti i:nth-child(3){left:46%;top:12%;animation-delay:.4s}.extra-confetti i:nth-child(4){left:28%;top:40%;background:var(--sky);animation-delay:.1s}.extra-confetti i:nth-child(5){left:78%;top:36%;animation-delay:.3s}.extra-confetti i:nth-child(6){left:58%;top:28%;background:var(--accent2);animation-delay:.5s}.extra-panel{position:fixed;z-index:80;top:76px;left:50%;transform:translate(-50%);width:min(440px,calc(100vw - 16px));max-height:calc(100vh - 96px);overflow:auto;background:var(--surface-strong);color:var(--text);border:1px solid var(--border);border-radius:24px;padding:16px;box-shadow:var(--shadow)}.extra-share-canvas{width:100%;height:auto;border-radius:16px;background:var(--bg)}.extra-stickers{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.extra-stickers li{display:flex;justify-content:space-between;align-items:center;gap:8px}.extra-actions{display:flex;gap:8px;margin-top:8px}.extra-layer,.extra-wear,.extra-panel,[data-extra-ready=sound],.theme-field:has(.extra-bday){display:none}.extra-bday{display:flex;gap:6px;align-items:center}.extra-bday input{width:56px}html[data-scale=large] .brand-slogan{display:none}html[data-scale=large] .brand{flex-basis:100%}.hands-banner{margin:0;padding:8px 16px;background:var(--accent);color:var(--on-accent);font-weight:700}.app.is-hands .stage{box-shadow:inset 0 0 0 3px var(--accent)}.pattern-head{display:grid;gap:8px;margin:0 0 12px}.trust-badge{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0;color:var(--text)}.trust-badge strong{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border-radius:999px;background:var(--accent);color:var(--on-accent)}.trust-about{display:grid;gap:12px;margin:0 0 12px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);color:var(--text)}.trust-about h3{margin:0}.trust-fold summary{min-height:48px;display:flex;align-items:center;cursor:pointer;font-weight:700}.trust-rows{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}.trust-rows li{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 8px;border-radius:8px}.trust-rows .is-ok{background:color-mix(in srgb,var(--ok) 18%,var(--surface-strong))}.trust-rows .is-bad{background:color-mix(in srgb,var(--danger) 18%,var(--surface-strong))}.trust-pill{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:2px 10px;border-radius:999px;font-weight:700}.trust-pill svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}.trust-pill.is-ok{background:var(--ok);color:var(--bg)}.trust-pill.is-bad{background:var(--danger);color:var(--bg)}.trust-swatch-card{display:grid;gap:8px;padding:12px;border-radius:16px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 70%,var(--bg))}.trust-swatch-card p{margin:0}.trust-field{display:grid;gap:6px;font-weight:700}.trust-field input{min-height:48px;width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong);color:var(--text);padding:0 12px;font:inherit}.trust-field input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.trust-suffix{display:flex;align-items:center;gap:8px}.trust-suffix input{max-width:8rem}.trust-suffix span{color:var(--text-muted);font-weight:700}.trust-ok{color:var(--ok);font-weight:700}.trust-bad{color:var(--danger);font-weight:700}.trust-symbols{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.trust-symbols span{display:inline-flex;align-items:center;gap:6px}.cyc-mark{width:28px;height:28px}.trust-segment{display:inline-flex;border:1px solid var(--border);border-radius:999px;overflow:hidden;background:var(--surface)}.trust-segment button{min-height:48px;min-width:64px;border:0;background:transparent;color:var(--text);font:inherit;font-weight:700}.trust-segment button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.trust-segment button:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.trust-report{display:grid;gap:8px}.trust-tested{display:flex;flex-wrap:wrap;gap:8px}.trust-tested .btn[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.app.is-hands .live-row .count-target,.app.is-hands .counter-line .btn,.app.is-hands .counter-list>.btn{min-height:72px;min-width:72px}.app.is-hands .live-row .count-target{min-height:96px}.live-row{display:grid;gap:8px;margin:0 0 12px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--live, var(--chip));color:var(--text)}.live-kicker,.live-rep{margin:0;font-variant-numeric:tabular-nums}.live-chunks{display:flex;flex-wrap:wrap;gap:8px;margin:0}.live-chunks span{padding:4px 8px;border-radius:999px;border:1px dashed var(--border)}.live-chunks .is-now{border-style:solid;font-weight:700}.counter-list{display:flex;flex-direction:column;gap:8px;margin:0 0 12px}.counter-line{display:flex;align-items:center;gap:8px}.counter-line strong{font-variant-numeric:tabular-nums;min-width:2ch}[data-glare=low]{color-scheme:dark}@media (prefers-reduced-transparency: reduce){:root{--blur: 0px}}.is-paused .extra-friend,.is-paused .extra-yawn,.is-paused .extra-confetti i{animation-play-state:paused}@keyframes extra-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes extra-yawn{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.35;transform:translateY(-3px)}}@keyframes extra-pop{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-8px)}}@media (prefers-reduced-motion: reduce){.extra-friend,.extra-yawn,.extra-confetti i{animation:none}.pip-zone.is-goo{filter:none}}@media (max-width: 767px){.app.is-mascot-open,.app.is-mascot-collapsed{--mascot-w: 0px}.stage{grid-template-columns:minmax(0,1fr)}.stage .shell{grid-column:1;grid-row:2;width:100%;max-width:100%;min-width:0;padding:8px 12px 24px}.shell{grid-template-columns:minmax(0,1fr)}.project-cards{flex-direction:column}.project-card{min-width:0}.pattern-col{min-width:0;max-width:100%;overflow-x:clip}.stage .shell{overflow-x:clip;overflow-y:auto}.landing-strip{display:flex;width:100%;min-width:0;max-width:100%;gap:6px}.landing-strip>button{flex:1 1 0;width:0;min-width:0;max-width:100%;padding:6px 2px;overflow:visible}.landing-strip em{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center;line-height:1.15}.mascot-alcove,.mascot-alcove.is-collapsed{position:fixed;width:0;height:0;min-height:0;margin:0;padding:0;border:0;background:transparent;box-shadow:none;overflow:visible;display:block;align-self:auto}.mascot-peek{position:static;width:auto;height:auto;margin:0;background:var(--surface-strong);border:1px solid var(--border);border-radius:14px;padding:4px 10px}.mascot-alcove:not(.is-collapsed){position:relative;left:auto;right:auto;bottom:auto;top:auto;grid-column:1;grid-row:1;width:calc(100% - 16px);height:auto;min-height:280px;margin:8px auto 0;z-index:1;display:grid;border:1px solid var(--border);border-radius:28px;background:radial-gradient(140px 90px at 50% 18%,color-mix(in srgb,var(--sage) 40%,white),transparent 72%),linear-gradient(180deg,var(--bg-sky),var(--surface-strong));box-shadow:var(--glow);overflow:hidden;padding:18px 12px 8px}.mascot-alcove:not(.is-collapsed) .mascot-pop{height:auto;min-height:0}.mascot-alcove:not(.is-collapsed) .mascot-stack.is-v5{width:100%;height:auto;display:flex;justify-content:center}.mascot-alcove:not(.is-collapsed) .v5-card.is-alcove{width:100%;height:auto;max-height:none;margin-inline:auto;aspect-ratio:635 / 720;object-fit:cover;object-position:0% 0}}.fpv-card,.spm-card,.form-card{display:grid;gap:8px;min-width:0;max-width:100%}.fpv-stage{position:relative;height:min(68vh,620px);min-height:340px;border-radius:18px;overflow:hidden;background:#f3e6d4}[data-theme=dark] .fpv-stage{background:#2c261f}.fpv-canvas{position:absolute;top:0;right:0;bottom:0;left:0}.fpv-canvas canvas,.fpv-stage canvas{display:block;width:100%;height:100%}.fpv-step{position:absolute;z-index:2;top:10px;left:50%;transform:translate(-50%);margin:0;padding:6px 14px;border-radius:999px;background:color-mix(in srgb,var(--surface, #fffaf3) 90%,transparent);color:var(--text, #3c2e24);font-size:.95rem;line-height:1.2;pointer-events:none;white-space:nowrap}.fpv-stage:after{content:"";position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at 50% 46%,transparent 72%,color-mix(in srgb,var(--bg) 22%,transparent) 100%)}.fpv-poster{display:grid;gap:8px;border-radius:18px;overflow:hidden;background:var(--surface)}.fpv-poster svg{width:100%;height:auto;display:block}.fpv-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:8px;min-width:0}.fpv-controls label{display:grid;gap:4px;min-width:0;max-width:100%;font-size:.85rem}.fpv-controls .btn,.fpv-card .btn{min-height:48px;max-width:100%;white-space:normal}.fpv-line,.fpv-row,.trust-label{margin:0;overflow-wrap:anywhere}@media (max-width: 420px){.fpv-stage{height:min(62vh,460px);min-height:320px}.fpv-controls{grid-template-columns:1fr 1fr}.fpv-step{font-size:.85rem;padding:5px 10px}}.spm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.spm-grid div{margin:0}.spm-grid dt{font-size:.75rem;color:var(--text-muted)}.spm-grid dd{margin:0;font-variant-numeric:tabular-nums;font-size:1.4rem}.spm-spark{width:100%;height:42px;color:var(--accent)}.form-tips{margin:0;padding-left:1.1rem;display:grid;gap:6px}.hand-camera{width:min(100%,220px);height:auto;border-radius:12px;background:#10211f;display:block}.app.is-hands .fpv-controls .btn{min-height:72px;min-width:72px}.yuni-live{position:relative}.yuni-live canvas.yuni-live-avatar{position:absolute;top:0;right:0;bottom:0;left:0;transition:opacity .24s ease;pointer-events:none}.avatar-switch{display:grid;gap:4px;justify-items:center;padding:2px 6px 4px}.avatar-switch-row{display:inline-flex;gap:2px;padding:2px;border-radius:999px;background:var(--chip, var(--surface-strong));border:1px solid var(--line, currentColor)}.avatar-switch-btn{font:inherit;font-size:.8125rem;line-height:1.2;min-height:32px;padding:4px 12px;border:0;border-radius:999px;background:transparent;color:var(--ink, inherit);cursor:pointer}.avatar-switch-btn[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.avatar-switch-btn:disabled{opacity:.6;cursor:default}.avatar-switch-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.avatar-switch-note{margin:0;max-width:28ch;font-size:.75rem;line-height:1.35;text-align:center;color:var(--ink-soft, var(--ink, inherit))}@media (prefers-reduced-motion: reduce){.yuni-live canvas.yuni-live-avatar{transition:none}}.topbar,.stage{position:relative;z-index:1}.mascot-stack .wing{transform-origin:50% 42%}[data-theme=light] body,[data-theme=light] .app{background:radial-gradient(circle at 12% 0%,rgba(255,255,255,.8),transparent 36%),repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(90,70,40,.018) 4px),var(--bg)}[data-theme=light][data-contrast=soft] .mascot-alcove{background:radial-gradient(120px 80px at 50% 18%,rgba(196,214,190,.9),transparent 70%),linear-gradient(180deg,#fffaf2,#e5efe2);box-shadow:0 24px 50px #3c463214,inset 0 1px #fffc}[data-theme=light][data-contrast=soft] .card{background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(90,70,40,.015) 4px),var(--surface-strong);box-shadow:0 18px 40px #3c463214,inset 0 1px #ffffffd9}[data-theme=dark] .pond{display:none}.pond{display:none;position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.glow{position:absolute;border-radius:50%;filter:blur(8px)}.glow-a{width:520px;height:320px;left:8%;top:8%;background:radial-gradient(circle,rgba(140,90,255,.35),transparent 68%);animation:drift 9s cubic-bezier(.16,.84,.28,1) infinite}.glow-b{width:460px;height:380px;right:-40px;bottom:-20px;background:radial-gradient(circle,rgba(80,255,200,.22),transparent 70%);animation:drift 11s cubic-bezier(.16,.84,.28,1) infinite reverse}.threads{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.threads path{fill:none;stroke:#7dffe173;stroke-width:1.4;animation:pulse 4.5s cubic-bezier(.16,.84,.28,1) infinite}.threads path:nth-child(2){animation-delay:1.2s;stroke:#c7b6ff66}.threads path:nth-child(3){animation-delay:2s}.trail{position:absolute;width:10px;height:10px;border-radius:50%;background:#9ef6d8;opacity:.2;animation:trail 3.2s cubic-bezier(.16,.84,.28,1) infinite}.t1{left:18%;top:30%}.t2{right:16%;top:22%;animation-delay:.8s;background:#c7b6ff}.t3{left:28%;bottom:18%;animation-delay:1.4s}[data-theme=dark][data-contrast=soft] .card,[data-theme=dark][data-contrast=soft] .mascot-alcove{background-color:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=dark] .mascot-alcove{background-color:var(--surface);background-image:none}[data-theme=dark] .mascot-body,[data-theme=dark] .yuni-portrait,[data-theme=dark] .yuni-live,[data-theme=dark] .yuni-live img,[data-theme=dark] .yuni-live canvas,[data-theme=dark] .v5-card,[data-theme=dark] .poses img,[data-theme=dark] .desk-yuni img,[data-theme=dark] .generate-yuni img{filter:none}h1,h2,.card-title,.brand-copy strong,.pattern-title{font-family:Fraunces,Georgia,serif;font-weight:600;font-optical-sizing:auto;letter-spacing:-.03em}.brand-copy{line-height:1.25}.brand-copy strong{font-size:clamp(1.35rem,2.2vw,1.85rem);line-height:1.25}.pattern-title{margin:0;font-size:clamp(1.7rem,3vw,2.45rem);line-height:1.05;overflow-wrap:anywhere}[data-theme=light] .mascot-stack .wing-left{animation:study-a-wing-l 3.4s cubic-bezier(.22,.8,.24,1) infinite}[data-theme=light] .mascot-stack .wing-right{animation:study-a-wing-r 3.8s cubic-bezier(.22,.8,.24,1) infinite}[data-theme=light] .mascot-body{animation:breathe 5.2s cubic-bezier(.22,.8,.24,1) infinite}[data-theme=dark] .mascot-stack .wing-left{animation:study-b-wing-l 2.6s cubic-bezier(.16,.84,.28,1) infinite}[data-theme=dark] .mascot-stack .wing-right{animation:study-b-wing-r 2.9s cubic-bezier(.16,.84,.28,1) infinite}[data-theme=dark] .mascot-body{animation:hover-y 4.6s cubic-bezier(.16,.84,.28,1) infinite}@keyframes drift{0%,to{transform:translateZ(0);opacity:.8}50%{transform:translate3d(18px,-12px,0);opacity:1}}@keyframes pulse{0%,to{opacity:.25}50%{opacity:.85}}@keyframes trail{0%{transform:translate3d(0,12px,0);opacity:0}40%{opacity:.85}to{transform:translate3d(24px,-36px,0);opacity:0}}@keyframes breathe{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes hover-y{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes study-a-wing-l{0%,to{transform:rotate(0)}50%{transform:rotate(-4deg)}}@keyframes study-a-wing-r{0%,to{transform:rotate(0)}50%{transform:rotate(4deg)}}@keyframes study-b-wing-l{0%,to{transform:rotate(0)}50%{transform:rotate(-8deg)}}@keyframes study-b-wing-r{0%,to{transform:rotate(0)}50%{transform:rotate(8deg)}}[data-glare=low] .pond,[data-contrast=high] .pond{display:none}@media (prefers-reduced-motion: reduce){.pond,.glow,.trail,.threads path{animation:none!important}.pond{display:none}}:root{--yuni-tile: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='150' viewBox='0 0 260 150'%3E%3Ctext x='12' y='88' fill='%232E2A26' fill-opacity='0.032' font-family='Georgia,serif' font-size='16' transform='rotate(-28 130 75)'%3E%C2%A9 2026 Yuni%3C/text%3E%3C/svg%3E");--yuni-tile-night: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='150' viewBox='0 0 260 150'%3E%3Ctext x='12' y='88' fill='%23F6F0E4' fill-opacity='0.045' font-family='Georgia,serif' font-size='16' transform='rotate(-28 130 75)'%3E%C2%A9 2026 Yuni%3C/text%3E%3C/svg%3E")}.yuni-portrait{position:relative;max-width:100%}.yuni-mascot,.yuni-caption{min-width:0;max-width:100%}@media (max-width: 900px){.yuni-mascot{flex-direction:column;align-items:stretch}.yuni-mascot .yuni-portrait{width:100%;height:148px;flex:none;object-fit:cover}.yuni-mascot .yuni-caption{width:100%}}.yuni-live{width:100%;height:auto;display:block;background:transparent}.mascot-stack{position:relative}.meadow-mesh,.petals,.pond{display:none!important}[data-theme=light] body{background:var(--bg) var(--yuni-tile) repeat!important;color:var(--ink);font-family:var(--font-body);line-height:1.6;-webkit-user-select:none;user-select:none}[data-theme=dark] body{background:var(--bg) var(--yuni-tile-night) repeat!important;color:var(--text);font-family:var(--font-body);line-height:1.6;-webkit-user-select:none;user-select:none}input,textarea,select,[contenteditable=true]{-webkit-user-select:text;user-select:text;background-image:none;background-color:var(--paper);color:var(--text)}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}.icon-btn svg,button svg,a svg{color:inherit}.app{max-width:none;margin:0 auto;width:100%;background:linear-gradient(180deg,var(--paper) 0 72px,var(--bg) 72px);box-shadow:var(--shadow)}.topbar{min-height:64px;border-bottom:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=light] .topbar{background:var(--bg)}[data-theme=dark] .topbar{background:var(--surface-strong)}.brand-copy strong,.card-title,.pattern-title,.rail-head h2{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}.brand-copy strong{color:var(--text);opacity:1;filter:none;text-shadow:none}[data-theme=dark] .brand-copy strong{color:var(--text);opacity:1}.brand-mark{background:var(--olive);color:var(--paper)}.card,.project-card,.mascot-alcove,.trust-about,.live-row{background-color:var(--surface);background-image:none;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}[data-theme=dark] .card,[data-theme=dark] .project-card,[data-theme=dark] .mascot-alcove,[data-theme=dark] .trust-about,[data-theme=dark] .live-row{background-image:none;border-color:var(--border)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;border:2px solid var(--olive);background:transparent;color:var(--olive);font-weight:700}.btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn.soft{background:var(--surface);color:var(--accent);border-color:var(--accent)}.btn.danger{background:var(--paper);color:var(--danger);border-color:var(--danger)}.icon-btn{width:44px;height:44px;min-width:44px;min-height:44px;background:var(--paper);border-color:var(--line);color:var(--ink)}.tabs button{min-height:44px;border-radius:999px;font-weight:700}.tabs button.active{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:3px solid var(--caramel);outline-offset:3px}.preview-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;box-sizing:border-box;margin:0;padding:8px 16px;background-color:var(--accent);background-image:none;color:var(--on-accent);font-weight:700;line-height:1.2}.preview-banner span{min-width:0;padding:0;line-height:1.2}.preview-banner button{display:inline-flex;align-items:center;justify-content:center;flex:none;box-sizing:border-box;height:36px;min-height:36px;min-width:0;margin:0;padding:0 16px;border-radius:999px;border:2px solid var(--on-accent);background:transparent;color:var(--on-accent);font:inherit;font-weight:700;line-height:1}.yuni-footer{flex:none;display:flex;flex-wrap:wrap;align-items:center;gap:2px 18px;padding:8px 128px 10px 24px;background:var(--bg);border-top:1px solid var(--border);color:var(--text-muted);font-size:.86rem}.yuni-footer p{margin:0}.yuni-footer a{color:var(--olive);font-weight:700}.yuni-corner{position:fixed;right:10px;bottom:10px;z-index:30;pointer-events:none;background:var(--surface);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;line-height:1.2}.yarn-hold{width:min(180px,100%);margin:0 auto 8px}.yarn-ball{width:100%}.mini-band{grid-column:1 / -1;background:var(--cream);border-radius:var(--radius);padding:8px 8px 18px}.poses{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0 0;padding:0;list-style:none}.poses li{min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden;text-align:center;display:flex;flex-direction:column}.pose-frame{position:relative;aspect-ratio:320 / 360;background:#fff;overflow:hidden}.pose-frame picture{position:absolute;top:8px;right:8px;bottom:8px;left:8px;display:block}.poses img{width:100%;height:100%;object-fit:contain;object-position:center;transform-origin:center 82%}.poses li>span{display:block;padding:8px 6px 12px;font-size:.92rem;color:var(--muted);font-weight:600}.sparkles,.zzzs{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2}.sparkles i{position:absolute;width:9px;height:9px;background:#e2b657;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:sparkle-twinkle 1.8s ease-in-out infinite}.sparkles i:nth-child(1){top:18px;right:26px}.sparkles i:nth-child(2){top:34px;left:22px;width:7px;height:7px;animation-delay:.55s}.sparkles i:nth-child(3){bottom:36px;left:30px;width:6px;height:6px;animation-delay:1.05s}.zzzs i{position:absolute;right:22%;top:52px;font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:700;color:#9a6338;line-height:1;animation:zzz-float 3.4s ease-in-out infinite}.zzzs i:nth-child(1){font-size:12px}.zzzs i:nth-child(2){font-size:15px;right:32%;top:44px;animation-delay:.7s}.zzzs i:nth-child(3){font-size:18px;right:40%;top:36px;animation-delay:1.4s}.poses li[data-mood=hello] img{animation:mood-breathe 3.6s ease-in-out infinite}.poses li[data-mood=happy] img{animation:mood-happy 3s ease-in-out infinite}.poses li[data-mood=wave] img{animation:mood-wave 2.6s ease-in-out infinite;transform-origin:50% 90%}.poses li[data-mood=cheer] img{animation:mood-cheer 2.2s ease-in-out infinite}.poses li[data-mood=thinking] img{animation:mood-think 4.4s ease-in-out infinite}.poses li[data-mood=talking] img{animation:mood-talk 1.6s ease-in-out infinite}.poses li[data-mood=sad] img{animation:mood-sad 5s ease-in-out infinite}.poses li[data-mood=sleepy] img{animation:mood-sleepy 4.6s ease-in-out infinite}@keyframes mood-breathe{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.012)}}@keyframes mood-happy{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.018)}}@keyframes mood-wave{0%,to{transform:rotate(0)}20%{transform:rotate(-2deg)}30%{transform:rotate(-4deg)}40%{transform:rotate(-2deg)}60%{transform:rotate(2deg)}70%{transform:rotate(4deg)}80%{transform:rotate(2deg)}}@keyframes mood-cheer{0%,to{transform:translateY(0) scale(1)}32%{transform:translateY(-2px) scale(1.01)}40%{transform:translateY(-4px) scale(1.02)}52%{transform:translateY(-2px) scale(1.01)}70%{transform:translateY(-1px) scale(1.008)}}@keyframes mood-think{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-2px) rotate(-1.5deg)}}@keyframes mood-talk{0%,72%,to{transform:translateY(0)}12%{transform:translateY(-2px)}18%{transform:translateY(-4px)}26%{transform:translateY(-2px)}38%{transform:translateY(0)}48%{transform:translateY(-1px)}54%{transform:translateY(-2px)}64%{transform:translateY(-1px)}}@keyframes mood-sad{0%,to{transform:translateY(0)}50%{transform:translateY(3px) rotate(1deg)}}@keyframes mood-sleepy{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(3px) scale(.985)}}@keyframes sparkle-twinkle{0%,to{transform:scale(.45) rotate(0);opacity:.2}50%{transform:scale(1) rotate(18deg);opacity:1}}@keyframes zzz-float{0%{transform:translateY(4px);opacity:0}22%{opacity:.9}to{transform:translateY(-14px);opacity:0}}.mascot-stack .toggle{position:absolute;right:8px;bottom:8px;z-index:3;min-height:44px;min-width:44px;padding:0 12px;border:0;border-radius:999px;background:#2e2a26c7;color:#fff;font:600 .85rem/1 inherit;cursor:pointer}html.motion .reveal{transition:opacity .72s cubic-bezier(.45,.05,.55,.95),transform .72s cubic-bezier(.45,.05,.55,.95);transition-delay:var(--reveal-delay, 0ms)}html.motion .reveal:not(.is-in){opacity:0;transform:translateY(10px)}html.motion .lift{transition:transform .55s cubic-bezier(.45,.05,.55,.95)}html.motion a.btn,html.motion button.btn:not([disabled]){transition:transform .45s cubic-bezier(.34,1.15,.64,1)}@media (hover: hover) and (pointer: fine){html.motion .lift:hover{transform:translateY(-3px)}html.motion .poses li:hover{transform:translateY(-6px)}html.motion a.btn:hover,html.motion button.btn:not([disabled]):hover{transform:translateY(-2px)}html.motion .yarn-hold:hover .yarn-ball{transform:translateY(-4px);transition:transform .55s cubic-bezier(.34,1.2,.64,1)}}@media (max-width: 760px){.poses{grid-template-columns:repeat(2,minmax(0,1fr))}.app{box-shadow:none}}@media (prefers-reduced-motion: reduce){body,[data-theme=light] body,[data-theme=dark] body,.card,.project-card,.mascot-alcove,.trust-about,.live-row{background-image:none!important}.poses li,.poses img,.sparkles i,.zzzs i,.yarn-ball,.reveal,.lift,.btn{animation:none!important;transition:none!important;transform:none!important}html.motion .reveal,html.motion .reveal:not(.is-in){opacity:1;transform:none}.yuni-corner{transition:none}}html[data-calm="1"] body,html[data-calm="1"][data-theme=light] body,html[data-calm="1"][data-theme=dark] body,html[data-calm="1"] .card,html[data-calm="1"] .project-card,html[data-calm="1"] .mascot-alcove,html[data-calm="1"] .trust-about,html[data-calm="1"] .live-row{background-image:none!important}html[data-calm="1"] .poses img,html[data-calm="1"] .sparkles i,html[data-calm="1"] .zzzs i,html[data-calm="1"] .yarn-ball,html[data-calm="1"] .btn,html[data-calm="1"] .card,html[data-calm="1"] .reveal{animation:none!important;transition:none!important}html[data-calm="1"] .reveal,html[data-calm="1"] .reveal:not(.is-in){opacity:1;transform:none}html.yuni-away img,html.yuni-away video,html.yuni-away canvas,html.yuni-away[data-theme=dark] .yuni-live canvas{filter:blur(14px)}@media print{body{display:none!important}html:before{content:"Printing is not available";display:block;padding:24px;font:18px/1.5 Atkinson Hyperlegible,system-ui,sans-serif;color:#2e2a26}}html[data-preview="1"]{height:auto;min-height:100%;overflow-x:clip;overflow-y:auto}html[data-preview="1"] body{height:auto;min-height:100%;overflow:visible}html[data-preview="1"] #root{height:auto;min-height:100%}html[data-preview="1"] .app{max-width:none;width:100%;height:auto;min-height:100vh;min-height:100dvh;margin:0;overflow:visible;box-shadow:none;background-color:var(--bg);background-image:var(--yuni-tile);background-repeat:repeat}html[data-preview="1"][data-theme=dark] .app{background-image:var(--yuni-tile-night)}html[data-preview="1"] .card,html[data-preview="1"] .project-card,html[data-preview="1"] .mascot-alcove,html[data-preview="1"] .trust-about,html[data-preview="1"] .live-row,html[data-preview="1"] .topbar,html[data-preview="1"] .preview-banner{background-image:none}html[data-preview="1"] .topbar{background-color:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-preview="1"][data-theme=dark] .topbar{background-color:var(--surface-strong)}html[data-preview="1"] .brand-copy strong{opacity:1;filter:none;text-shadow:none;white-space:normal;overflow:visible;text-overflow:clip;color:var(--text)}html[data-preview="1"][data-theme=dark] .brand-copy strong{color:var(--text);opacity:1}html[data-preview="1"] .project-copy,html[data-preview="1"] .project-copy strong,html[data-preview="1"] .project-copy small{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word;word-break:normal}html[data-preview="1"] .stage,html[data-preview="1"] .stage .shell{height:auto;min-height:0;min-width:0;overflow:visible}html[data-preview="1"] .stage{align-items:start}html[data-preview="1"] .hero-col{position:static;min-width:0;max-width:100%}html[data-preview="1"] .yuni-corner{left:12px;right:auto;bottom:12px}html[data-preview="1"] .yuni-footer{padding:8px 24px 10px 140px}html[data-preview="1"] .app.has-pip .stage .shell,html[data-preview="1"] .shell{min-width:0}html[data-preview="1"] [data-zone-slot]:empty{display:none}html[data-preview="1"] .pattern-body,html[data-preview="1"] .row-scroll,html[data-preview="1"] .row-list,html[data-preview="1"] .size-pills,html[data-preview="1"] .size-scrub{max-height:none;overflow:visible}html[data-preview="1"] .size-scrub,html[data-preview="1"] .size-pills{flex-wrap:wrap}html[data-preview="1"] .size-scrub span{flex:1 1 auto;min-width:2.2rem}@media (max-width: 767px){html[data-preview="1"] .stage{grid-template-columns:minmax(0,1fr)}html[data-preview="1"] .mascot-alcove,html[data-preview="1"] .mascot-alcove.is-collapsed,html[data-preview="1"] .mascot-alcove:not(.is-collapsed){position:relative;left:auto;top:auto;width:calc(100% - 16px);height:auto;max-height:none;margin:8px auto 0;overflow:hidden}html[data-preview="1"] .mascot-alcove:not(.is-collapsed){min-height:320px}html[data-preview="1"] .mascot-peek{position:relative;left:auto;top:auto}html[data-preview="1"] .yuni-corner{position:static;display:table;margin:0 0 8px 16px;left:auto;right:auto;bottom:auto}html[data-preview="1"] .yuni-footer{padding:14px 16px 18px}}@media (min-width: 768px){html[data-preview="1"] .app.is-mascot-open{--mascot-w: clamp(200px, 18vw, 280px)}html[data-preview="1"] .mascot-alcove:not(.is-collapsed){height:520px;min-height:0;max-height:none;align-self:start}}@media (min-width: 1100px) and (max-width: 1279px){html[data-preview="1"] .shell{grid-template-columns:minmax(200px,250px) minmax(0,1fr)}html[data-preview="1"] .project-rail{grid-column:1;grid-row:1}html[data-preview="1"] .pattern-col{grid-column:2;grid-row:1}html[data-preview="1"] .hero-col{grid-column:2;grid-row:2}html[data-preview="1"] .mini-band{grid-column:1 / -1;grid-row:3}}@media (min-width: 1280px){html[data-preview="1"] .shell{grid-template-columns:minmax(210px,280px) minmax(0,1fr) minmax(240px,320px)}html[data-preview="1"] .project-rail{grid-column:1;grid-row:1}html[data-preview="1"] .pattern-col{grid-column:2;grid-row:1}html[data-preview="1"] .hero-col{grid-column:3;grid-row:1;align-self:start}html[data-preview="1"] .mini-band{grid-column:1 / -1;grid-row:2}}.mascot-alcove,.mascot-pop,.mascot-stack,.yuni-live,.yuni-live canvas,.yuni-live img,.yuni-portrait,.desk-yuni,.desk-yuni img,.fn-card,.preview3d,.hero-card .preview3d,.preview3d canvas{touch-action:pan-y}.preview3d canvas{touch-action:pan-y!important}@media (max-width: 820px),(max-height: 500px){html,body,#root{height:auto;min-height:100%}html,body{overflow-x:hidden;overflow-y:auto}#root,.app{height:auto;min-height:0;overflow:visible}.stage,html[data-preview="1"] .stage{flex:none;height:auto;min-height:0;max-height:none;overflow:visible;align-items:start}.stage .shell,html[data-preview="1"] .stage .shell,html[data-preview="1"] .shell{height:auto;min-height:0;max-height:none;overflow:visible}html.fn-dragging,html.fn-dragging body{overflow:hidden}.yuni-footer,html[data-preview="1"] .yuni-footer{position:static;padding:14px 16px calc(48px + env(safe-area-inset-bottom))}.yuni-corner,html[data-preview="1"] .yuni-corner{position:fixed;left:auto;right:max(8px,env(safe-area-inset-right));bottom:calc(8px + env(safe-area-inset-bottom));z-index:45;display:inline-block;width:auto;max-width:max-content;margin:0;padding:4px 8px;font-size:12px;line-height:1.2;pointer-events:auto}}.qol{display:grid;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border);min-width:0}.qol h3,.qol h4,.qol p{margin:0}.qol h3{font-size:1.05rem}.qol h4{font-size:.95rem}.qol .btn,.hand-overlay .btn,.hand-check .btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;border-radius:999px;box-sizing:border-box;height:46px;min-height:44px;max-height:48px;min-width:44px;padding:0 16px;line-height:1.15}.qol label.btn{cursor:pointer}.qol input,.qol select,.qol textarea{width:100%;min-height:44px;box-sizing:border-box;font:inherit;font-size:1rem;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:8px 10px}.qol textarea{min-height:88px;resize:vertical}.qol label{display:grid;gap:4px;font-size:.9rem;min-width:0}.qol .btn-row{align-items:center}.qol .btn-row>.btn,.qol .btn-row>label.btn{flex:1 1 auto;align-self:stretch;width:auto;min-width:0;height:46px;max-height:48px}.qol .btn-row>input,.qol .btn-row>select{flex:1 1 auto;width:auto;min-width:0;height:46px;min-height:44px;max-height:48px;box-sizing:border-box}.workbench{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start;min-width:0}.workbench-pattern,.counter-dock{min-width:0}.counter-dock{margin-top:0;border-top:0;padding-top:0}.row-block{min-width:0}.row-block .row-line{width:100%;display:block}.row-scrub{display:grid;gap:4px;font-size:.85rem;margin-top:6px}.row-scrub input[type=range]{width:100%;min-height:44px;accent-color:var(--accent)}.row-line.is-current{box-shadow:inset 6px 0 0 var(--accent)}.row-block.is-done .row-line,.row-line.is-done{text-decoration:line-through;opacity:.72}.inline-notes{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:4px}.inline-notes .is-permanent,.note-list .is-permanent{color:var(--accent2);font-weight:700}.inline-notes .is-progress,.note-list .is-progress{color:var(--text-muted, var(--muted));font-style:italic}.note-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.note-list li{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.note-list .is-flag{color:var(--danger, #8a3b2c);font-weight:700}.count-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px;border:1px solid var(--border);border-radius:16px}.count-card.is-armed{border-color:var(--accent)}.count-card strong{font-size:1.6rem;font-variant-numeric:tabular-nums}.count-name{justify-self:start;background:transparent;border:0;color:inherit;font:inherit;font-weight:700;text-align:left;min-height:44px;padding:0}.count-taps{display:flex;gap:8px;grid-column:1 / -1}.count-tap{flex:1 1 0;font-size:1.05rem}.count-log{margin:0;padding-left:1.2rem;display:grid;gap:4px}.repeat-note{font-weight:700}.hand-every,.ache-row{display:flex;flex-wrap:wrap;gap:8px}.hand-every .btn,.ache-row .btn{flex:1 1 0}.hand-tip{font-weight:700}.hand-holds{margin:0;padding-left:1.1rem;display:grid;gap:6px}.hand-disclaimer,.hand-reply{font-size:.9rem}.hand-disclaimer{color:var(--text-muted, var(--muted))}.hand-care.is-compact .hand-holds{display:none}.hand-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;place-items:center;padding:16px;background:color-mix(in srgb,var(--bg, #1c1914) 46%,transparent)}.hand-overlay-card{width:min(440px,100%);max-height:min(92vh,760px);overflow:auto;background:var(--surface-strong, var(--surface));color:var(--text);border-radius:20px;padding:18px;box-shadow:var(--shadow)}.hand-kicker{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.hand-count{font-size:1.8rem;font-variant-numeric:tabular-nums}.hands-stage{display:flex;justify-content:center;gap:28px;min-height:96px}.hand-fig{width:84px;height:84px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.hands-stage.is-shake .hand-fig{animation:hand-shake .32s ease-in-out infinite}.hands-stage.is-fists .hand-fig{animation:hand-fist .7s ease-in-out infinite}.hands-stage.is-spreads .hand-fig{animation:hand-spread .8s ease-in-out infinite}.hands-stage.is-wrists .hand-fig{animation:hand-wrist 1.1s linear infinite;transform-origin:50% 70%}.hands-stage.is-shoulders .hand-fig{animation:hand-shoulder 1s ease-in-out infinite}@keyframes hand-shake{50%{transform:translateY(-6px) rotate(8deg)}}@keyframes hand-fist{50%{transform:scale(.82)}}@keyframes hand-spread{50%{transform:scale(1.12)}}@keyframes hand-wrist{to{transform:rotate(360deg)}}@keyframes hand-shoulder{50%{transform:translateY(-8px)}}.eye-break{position:relative;height:88px}.eye-far,.eye-near{position:absolute;left:50%;border-radius:999px;transform:translate(-50%)}.eye-near{bottom:8px;width:18px;height:18px;background:var(--accent)}.eye-far{top:8px;width:10px;height:10px;background:var(--accent2);animation:eye-far 2s ease-in-out infinite}@keyframes eye-far{50%{transform:translate(-50%) scale(.6);opacity:.55}}@media (prefers-reduced-motion: reduce){.hand-fig,.eye-far{animation:none}}.hand-check{position:fixed;left:50%;bottom:16px;transform:translate(-50%);z-index:120;width:min(420px,calc(100% - 24px));display:grid;gap:8px;padding:14px;border-radius:18px;background:var(--surface-strong, var(--surface));color:var(--text);box-shadow:var(--shadow)}.stitch-dict{list-style:none;margin:0;padding:0;display:grid;gap:8px}.stitch-dict li{display:flex;align-items:center;gap:10px;min-height:44px}.stitch-dict-visual{width:36px;height:36px;display:grid;place-items:center}.cyc-mark{width:32px;height:32px}.import-photo{width:min(100%,280px);height:auto;border-radius:12px}.shelf-title{margin:14px 0 6px;font-size:.95rem}@media (max-width: 860px){.workbench{grid-template-columns:minmax(0,1fr)}}.switch-pack{display:grid;gap:8px;min-width:0}.switch-block{min-width:0}.switch-block h2{margin:0;font-size:1.25rem}.respect-note{margin:0;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--accent) 12%,var(--paper))}.designer-credit{font-weight:700}.sealed-print-footer{font-size:.85rem;color:var(--text)}.pdf-frame{width:100%;min-height:280px;border:1px solid var(--border);border-radius:12px;background:#fff}.doctor-list,.overlay-list,.seal-list,.switch-steps,.report-log{margin:0;padding-left:1.1rem;display:grid;gap:8px}.switch-steps li span{display:block;font-weight:700}.app-picks,.plan-grid,.map-grid{display:flex;flex-wrap:wrap;gap:8px}.plan-grid{align-items:stretch}.plan-grid article{flex:1 1 14rem;display:grid;gap:8px;align-content:start;padding:12px;border:1px solid var(--border);border-radius:16px}.plan-price{font-size:1.4rem;font-weight:700}.map-grid label{flex:1 1 8rem}.progress-card-preview{width:min(100%,420px);height:auto;border-radius:16px;background:var(--paper)}.sealed-reader .row-line{display:block;width:100%;text-align:left;padding:8px 10px;border-radius:12px}.sealed-reader .row-line.is-current{background:color-mix(in srgb,var(--accent) 18%,transparent)}.designer-report{display:grid;gap:8px}.designer-report h3{margin:0;font-size:1rem}.designer-report input,.designer-report textarea{width:100%;box-sizing:border-box}.designer-report textarea{min-height:64px}@media print{.sealed-print-footer{display:block;position:fixed;bottom:8px;left:12px;right:12px}}.plan-grid article.plan-tier{position:relative}.plan-tier .plan-badge,.plan-tier .plan-accent{justify-self:start;margin:0;padding:2px 10px;border-radius:var(--radius-pill);font-size:var(--type-small);font-weight:700}.plan-tier .plan-badge{background:var(--accent);color:var(--on-accent)}.plan-tier .plan-accent{border:1px solid var(--accent);color:var(--text)}.plan-tier .plan-tagline{margin:0;color:var(--text-muted)}.plan-tier .plan-note{margin:0;padding:8px 10px;border-radius:12px;border:1px dashed var(--border);color:var(--text-muted);font-size:var(--type-small)}.plan-free .plan-note{border-style:solid;border-color:var(--accent);color:var(--text);font-weight:700}.plan-guide{box-shadow:none}.plan-guide h3,.plan-guide .plan-price{color:var(--text-muted)}.plan-grid article.plan-studio{border:2px solid var(--accent);background:var(--surface-strong);box-shadow:var(--shadow);flex-grow:1.4}.plan-studio .plan-tagline{color:var(--text);font-weight:700}.plan-grid article.plan-founder{border:2px solid var(--accent)}.designer-mode{display:grid;gap:8px;min-width:0}.designer-mode h2{margin:0;font-size:1.25rem}.designer-mode h3{margin:0;font-size:1rem}.designer-mode input{width:100%;box-sizing:border-box}.designer-links{display:grid;gap:8px}.designer-links label,.designer-mode label{display:grid;gap:4px}.yuni-code{font-family:ui-monospace,Consolas,monospace;font-weight:700;letter-spacing:.04em}.verified-badge{display:inline-block;width:fit-content;padding:2px 10px;border-radius:999px;font-size:.85rem;font-weight:700;background:color-mix(in srgb,var(--accent) 18%,var(--paper))}.designer-card{display:grid;gap:8px;padding:12px;border:1px solid var(--border);border-radius:16px}.verified-badge{display:inline-flex;align-items:center;gap:6px;color:var(--text)}.verified-badge__mark{width:1em;height:1em;flex:none}.verified-badge__mark circle{fill:var(--accent)}.verified-badge__mark path{fill:none;stroke:var(--paper);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.designer-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px;margin:0;padding:0;list-style:none}.designer-steps li{display:flex;align-items:center;gap:8px;min-width:0;padding:6px 10px;border:1px solid var(--border);border-radius:12px;font-size:.9rem;color:var(--muted)}.designer-steps li[data-step=now]{color:var(--text);font-weight:700;border-color:var(--accent)}.designer-steps li[data-step=done]{color:var(--text)}.designer-steps__n{display:inline-grid;place-items:center;flex:none;width:1.5em;height:1.5em;border-radius:999px;font-size:.8rem;border:1px solid currentColor}.designer-steps li[data-step=done] .designer-steps__n{background:var(--accent);border-color:var(--accent);color:var(--paper)}.designer-mode textarea{width:100%;box-sizing:border-box;font:inherit;resize:vertical}.designer-bio{display:grid;gap:6px}.designer-profile__head{display:flex;align-items:center;gap:10px;min-width:0}.designer-profile__mono{display:inline-grid;place-items:center;flex:none;width:40px;height:40px;border-radius:999px;font-weight:700;font-size:1.1rem;color:var(--paper);background:var(--accent)}.designer-profile__name{margin:0 0 4px;font-weight:700;overflow-wrap:anywhere}.designer-profile__about{margin:0;overflow-wrap:anywhere}.designer-profile__links{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;list-style:none}.designer-profile__links a{color:var(--text);text-underline-offset:3px}.designer-profile__label{margin:0;font-weight:700;font-size:.9rem}.designer-profile__patterns{display:grid;gap:6px}.designer-profile__pattern{display:grid;gap:2px;padding-top:6px;border-top:1px solid var(--border)}.designer-profile__pattern p{margin:0}.published-card__title{font-weight:700}.published-card[data-paused="1"]{border-style:dashed}.designer-card p{margin:0}.doctor-stamp{margin:0;padding-left:10px;border-left:3px solid var(--border);font-size:.9rem}.doctor-stamp[data-doctor-stamp=ok]{border-left-color:var(--accent)}.doctor-stamp[data-doctor-stamp=fix]{border-left-color:var(--petal, var(--border));font-weight:700}.queue-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.queue-row__who{font-weight:700;overflow-wrap:anywhere}.status-chip{display:inline-block;padding:1px 8px;border-radius:999px;border:1px solid var(--border);font-size:.85rem;font-weight:700;color:var(--text)}.status-chip.is-verified{border-color:var(--accent)}.status-chip.is-revoked,.status-chip.is-declined{border-style:dashed}.owner-log ul{margin:6px 0 0;padding-left:18px}.designer-first{margin:0}.qol .publish-confirm,.publish-confirm{display:flex;gap:10px;align-items:center;min-height:44px;font-size:.95rem;cursor:pointer}.qol .publish-confirm input[type=checkbox],.publish-confirm input[type=checkbox]{flex:none;width:22px;height:22px;min-height:22px;margin:0;padding:0;accent-color:var(--accent)}.fn-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px;min-width:0;max-width:100%}.fn-nav button{flex:0 0 8.75rem;width:8.75rem;height:44px;min-height:44px;max-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:0;border-radius:999px;border:2px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;font-size:.92rem;font-weight:700;line-height:1;text-align:center;white-space:nowrap;cursor:pointer}.fn-nav button[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}[data-theme=dark] .fn-nav button{background:var(--surface-strong);color:var(--text);border-color:var(--border)}[data-theme=dark] .fn-nav button[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.fn-lead{margin:0 0 14px}.fn-arrange{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px}.fn-arrange button{flex:0 0 auto;box-sizing:border-box;height:44px;min-height:44px;max-height:44px;margin:0;padding:0 14px;border-radius:999px;border:2px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;font-size:.92rem;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer;touch-action:manipulation}.fn-arrange .hint{flex:1 1 100%;margin:0}.fn-move{display:flex;flex:none;gap:4px}.fn-handle,.fn-nudge{box-sizing:border-box;width:44px;height:44px;min-width:44px;min-height:44px;max-height:44px;margin:0;padding:0;border-radius:12px;border:2px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;font-size:1.1rem;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;touch-action:manipulation}.fn-handle{touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.fn-nudge:disabled{opacity:.4;cursor:default}.fn-card.is-drop{outline:2px solid var(--accent);outline-offset:2px}.fn-card.is-dragging{opacity:.72}html.fn-dragging .shell{overflow:hidden!important;touch-action:none}[data-theme=dark] .fn-arrange button,[data-theme=dark] .fn-handle,[data-theme=dark] .fn-nudge{background:var(--surface-strong);color:var(--text);border-color:var(--border)}.fn-card[hidden],.fn-card-body[hidden]{display:none!important}.fn-card{box-sizing:border-box;min-width:0;max-width:100%;margin:0 0 12px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background-color:var(--paper);background-image:none;color:var(--ink)}[data-theme=dark] .fn-card{background-color:var(--surface-strong);color:var(--text)}.fn-card-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;min-width:0}.fn-card-title{margin:0;min-width:0;font-family:var(--font-display);font-size:1.05rem;font-weight:600;line-height:1.2}.fn-card-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-left:auto;min-width:0;max-width:100%;box-sizing:border-box}[data-theme=dark] button.btn.fn-pill{color:var(--text);border-color:var(--sage);background:transparent}button.btn.fn-pill{flex:1 1 7.5rem;width:auto;min-width:0;max-width:100%;height:44px;min-height:44px;max-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:0 10px;border-width:2px;border-style:solid;border-radius:999px;line-height:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-col,.hero-col>*,.hero-col .fn-card,.hero-col .fn-card-bar,.hero-col .fn-card-body,.hero-col .fn-card-body>*{box-sizing:border-box;min-width:0;max-width:100%}.fn-card-title{overflow-wrap:anywhere}.fn-card-body{min-width:0;max-width:100%;margin-top:12px}.fn-card-body>.qol,.fn-card-body>.switch-pack>.qol,.fn-card-body>.switch-block{margin-top:0;padding-top:0;border-top:0}.fn-hidden-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.fn-hidden-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:var(--paper);color:var(--ink)}[data-theme=dark] .fn-hidden-list li{background:var(--surface-strong);color:var(--text)}.fn-hidden-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.fn-hidden-name{font-weight:700}.hero-col .fn-card{width:100%}@media (max-width: 360px){.fn-card-actions{flex:1 1 100%;margin-left:0;max-width:100%;min-width:0}button.btn.fn-pill{flex:1 1 0;width:auto;min-width:0;max-width:none}}.sketch-pad{display:grid;gap:10px;min-width:0;max-width:100%}.sketch-pad p{margin:0}.sketch-tools,.sketch-colours,.sketch-ask,.sketch-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-width:0}.sketch-ask{align-items:flex-end}.sketch-ask label{flex:1 1 12rem;min-width:0;display:grid;gap:4px}.sketch-ask input{width:100%;min-width:0;box-sizing:border-box}.sketch-stage{position:relative;width:100%;min-width:0;touch-action:none;-webkit-user-select:none;user-select:none}.sketch-stage canvas{width:100%;height:auto;aspect-ratio:4 / 3;display:block;border:1px solid var(--line);border-radius:12px;background:#f7f1e8;touch-action:none}.sketch-stage canvas.sketch-mark{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;background:transparent;pointer-events:none}.sketch-swatch{width:36px;height:36px;min-width:36px;padding:0;border-radius:50%;border:2px solid var(--line);cursor:pointer}.sketch-swatch[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px}.sketch-confirm{display:grid;gap:8px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.sketch-confirm canvas{width:100%;height:auto;aspect-ratio:4 / 3;border-radius:12px;border:1px solid var(--line)}.sketch-changes{list-style:none;margin:0;padding:0;display:grid;gap:8px}.sketch-change{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;min-width:0}.sketch-change span{min-width:0}[data-theme=dark] .sketch-pad{color:var(--text)}[data-theme=dark] .sketch-stage canvas:not(.sketch-mark){background:#f7f1e8;border-color:var(--line)}[data-theme=dark] .sketch-confirm{background:var(--surface-strong);border-color:var(--border)}.where-recap{display:grid;gap:4px;min-width:0}.where-place,.where-stitch{margin:0;font-weight:700}.where-note{margin:0 0 8px}.voice-count{display:grid;gap:8px;min-width:0}.voice-mic{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:fit-content;max-width:100%;height:44px;min-height:44px;padding:0 16px;border-radius:999px;border:2px solid var(--line);background:transparent;color:inherit;font:inherit;font-weight:700;line-height:1;cursor:pointer}.voice-mic[aria-pressed=true]{border-color:var(--danger)}.voice-mic-dot{width:12px;height:12px;border-radius:50%;background:var(--line);flex:none}.voice-mic[aria-pressed=true] .voice-mic-dot{background:var(--danger)}@media (prefers-reduced-motion: no-preference){.voice-mic[aria-pressed=true] .voice-mic-dot{animation:voice-mic-pulse 1.2s ease-in-out infinite}}@keyframes voice-mic-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.35)}}.yuni-voice-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px;min-width:0}.yuni-voice-label{color:var(--muted);font-family:var(--font-body, inherit);font-size:.82rem;line-height:1.3}.yuni-voice-label:empty{display:none}.yuni-voice-btn{max-width:100%;min-height:44px;white-space:normal;text-align:center;font-family:inherit}.voice-where{max-width:46ch}.pattern-doctor .doctor-list{list-style:none;padding-left:0}.doctor-item{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--line);border-left-width:4px;border-radius:12px;background:var(--surface);min-width:0}.doctor-item p{margin:0;overflow-wrap:anywhere}.doctor-item.is-error{border-left-color:var(--danger)}.doctor-item.is-warning{border-left-color:var(--warn)}.doctor-item.is-info,.doctor-item.is-ok{border-left-color:var(--ok)}.doctor-title{display:flex;gap:8px;align-items:baseline;font-weight:700;color:var(--text)}.doctor-chip{flex:none;padding:1px 8px;border-radius:var(--radius-pill);border:1px solid currentColor;font-size:var(--type-small);font-weight:700;background:var(--surface)}.is-error .doctor-chip{color:var(--danger)}.is-warning .doctor-chip{color:var(--warn)}.is-info .doctor-chip{color:var(--ok)}.doctor-fix{color:var(--text)}.doctor-diff{display:grid;gap:2px;font-family:var(--font-mono);font-size:.82rem;min-width:0}.doctor-diff del,.doctor-diff ins{display:block;padding:4px 8px;border-radius:8px;text-decoration:none;overflow-wrap:anywhere;color:var(--text)}.doctor-diff del{background:color-mix(in srgb,var(--danger) 12%,var(--surface))}.doctor-diff del:before{content:"− ";color:var(--danger);font-weight:700}.doctor-diff ins{background:color-mix(in srgb,var(--ok) 14%,var(--surface))}.doctor-diff ins:before{content:"+ ";color:var(--ok);font-weight:700}.doctor-verdict{margin:0;padding:8px 12px;border-radius:12px;font-weight:700;border:1px solid var(--line);color:var(--text)}.doctor-verdict.is-ok{background:color-mix(in srgb,var(--ok) 12%,var(--surface))}.doctor-verdict.is-bad{background:color-mix(in srgb,var(--warn) 12%,var(--surface))}.doctor-corrected{margin:6px 0;padding-left:1.6rem;display:grid;gap:2px;font-family:var(--font-mono);font-size:.82rem;overflow-wrap:anywhere;min-width:0}.doctor-corrected li.is-changed{background:color-mix(in srgb,var(--ok) 14%,var(--surface));border-radius:6px;font-weight:700}.doctor-subhead{margin:8px 0 0;font-weight:700}.doctor-paste,.doctor-written,.doctor-corrected-wrap{border-top:1px solid var(--line);padding-top:8px;min-width:0}.doctor-paste summary,.doctor-written summary,.doctor-corrected-wrap summary{cursor:pointer;font-weight:700;min-height:32px;display:flex;align-items:center}.doctor-paste textarea{width:100%;font-family:var(--font-mono);font-size:.85rem}.doctor-status{font-weight:600}.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}html[data-frost=on]:not([data-contrast=high]) body .app{background-color:var(--bg);background-image:radial-gradient(48vmax 40vmax at 6% 2%,color-mix(in srgb,var(--sage) 38%,transparent),transparent 70%),radial-gradient(42vmax 36vmax at 97% 34%,color-mix(in srgb,var(--accent2) 20%,transparent),transparent 70%),radial-gradient(46vmax 38vmax at 32% 106%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 70%),var(--yuni-tile, none);background-repeat:no-repeat,no-repeat,no-repeat,repeat;background-attachment:fixed,fixed,fixed,scroll}html[data-frost=on][data-theme=dark]:not([data-contrast=high]) body .app{background-image:radial-gradient(48vmax 40vmax at 6% 2%,color-mix(in srgb,var(--sage) 20%,transparent),transparent 70%),radial-gradient(42vmax 36vmax at 97% 34%,color-mix(in srgb,var(--accent2) 9%,transparent),transparent 70%),radial-gradient(46vmax 38vmax at 32% 106%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 70%),var(--yuni-tile-night, none)}html[data-frost=on][data-look=plus]:not([data-contrast=high]) body .app{background-color:transparent;background-image:radial-gradient(48vmax 40vmax at 6% 2%,color-mix(in srgb,var(--sage) 30%,transparent),transparent 70%),radial-gradient(42vmax 36vmax at 97% 34%,color-mix(in srgb,var(--accent2) 16%,transparent),transparent 70%),radial-gradient(46vmax 38vmax at 32% 106%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 70%);background-repeat:no-repeat;background-attachment:fixed}html[data-frost=on]:not([data-contrast=high]){--frost-tint: color-mix(in srgb, var(--surface) 94%, transparent);--frost-tint-inner: color-mix(in srgb, var(--surface) 96%, transparent)}html[data-frost=on][data-theme=dark]:not([data-contrast=high]){--frost-tint: color-mix(in srgb, var(--surface) 94%, transparent);--frost-tint-inner: color-mix(in srgb, var(--surface) 96%, transparent)}html[data-frost=on]:not([data-contrast=high]) body .card,html[data-frost=on]:not([data-contrast=high]) body .mascot-alcove{background-color:var(--frost-tint);background-image:none;-webkit-backdrop-filter:blur(12px) saturate(1.1);backdrop-filter:blur(12px) saturate(1.1);border-color:color-mix(in srgb,var(--border) 55%,transparent);box-shadow:0 12px 32px -20px #283c4659}html[data-frost=on][data-theme=dark]:not([data-contrast=high]) body .card,html[data-frost=on][data-theme=dark]:not([data-contrast=high]) body .mascot-alcove{border-color:color-mix(in srgb,var(--border) 70%,transparent);box-shadow:0 12px 32px -20px #0009}html[data-frost=on]:not([data-contrast=high]) body .card .card,html[data-frost=on]:not([data-contrast=high]) body .card .mascot-alcove{background-color:var(--frost-tint-inner);background-image:none;-webkit-backdrop-filter:none;backdrop-filter:none}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){html[data-frost=on]:not([data-contrast=high]) body .card,html[data-frost=on]:not([data-contrast=high]) body .mascot-alcove,html[data-frost=on]:not([data-contrast=high]) body .card .card{background-color:var(--surface-strong);background-image:none}}html.motion .reveal:not(.is-in){opacity:1}.yuni-frost{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;opacity:0;background:#2e2a2612;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);transition:opacity .2s ease;contain:strict}.yuni-frost.is-on{opacity:1}.yuni-frost.is-parked{visibility:hidden}[data-theme=dark] .yuni-frost{background:#00000029}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.yuni-frost{background:#2e2a262e}[data-theme=dark] .yuni-frost{background:#00000052}}@keyframes yuni-frost-scrim{0%{opacity:0}to{opacity:1}}.modal-back,.hand-overlay,.cmdk-back{animation:yuni-frost-scrim .2s ease both}@media (max-width: 600px){html[data-frost=on]:not([data-contrast=high]) body .card,html[data-frost=on]:not([data-contrast=high]) body .mascot-alcove{-webkit-backdrop-filter:blur(8px) saturate(1.08);backdrop-filter:blur(8px) saturate(1.08)}}@media (prefers-reduced-motion: reduce){.yuni-frost{transition-duration:0ms}.modal-back,.hand-overlay,.cmdk-back{animation:none}}.cmdk button.is-on span{color:var(--text)}html[data-frost=on]:not([data-contrast=high]) body .mascot-alcove,html[data-frost=on]:not([data-contrast=high]) body .card .mascot-alcove{background-color:color-mix(in srgb,var(--surface) 72%,transparent);background-image:none;-webkit-backdrop-filter:blur(14px) saturate(1.05);backdrop-filter:blur(14px) saturate(1.05);border-color:color-mix(in srgb,var(--border) 55%,transparent);box-shadow:0 12px 32px -20px #283c4659}html[data-frost=on][data-theme=dark]:not([data-contrast=high]) body .mascot-alcove,html[data-frost=on][data-theme=dark]:not([data-contrast=high]) body .card .mascot-alcove{background-color:color-mix(in srgb,var(--surface) 74%,transparent);border-color:color-mix(in srgb,var(--border) 70%,transparent);box-shadow:0 12px 32px -20px #0009}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){html[data-frost=on]:not([data-contrast=high]) body .mascot-alcove{background-color:var(--surface-strong);background-image:none}}html[data-frost=on]:not([data-theme=dark]):not([data-contrast=high]){--frost-tint: color-mix(in srgb, var(--surface) 94%, transparent);--frost-tint-inner: color-mix(in srgb, var(--surface) 98%, transparent);--frost-line: color-mix(in srgb, var(--accent) 62%, var(--border))}html[data-frost=on]:not([data-theme=dark]):not([data-contrast=high]) body .card,html[data-frost=on]:not([data-theme=dark]):not([data-contrast=high]) body .mascot-alcove,html[data-frost=on]:not([data-theme=dark]):not([data-contrast=high]) body .card .mascot-alcove{background-color:var(--frost-tint);border-color:color-mix(in srgb,var(--border) 85%,transparent)}html[data-frost=on]:not([data-theme=dark]):not([data-contrast=high]) body .card .card{background-color:var(--frost-tint-inner)}html:not([data-theme=dark]):not([data-contrast=high]) body .icon-btn,html:not([data-theme=dark]):not([data-contrast=high]) body .project-card,html:not([data-theme=dark]):not([data-contrast=high]) body .avatar-switch,html:not([data-theme=dark]):not([data-contrast=high]) body .card input:not([type=checkbox]):not([type=radio]):not([type=range]),html:not([data-theme=dark]):not([data-contrast=high]) body .card select,html:not([data-theme=dark]):not([data-contrast=high]) body .card textarea{border-color:var(--frost-line, color-mix(in srgb, var(--accent) 62%, var(--border)))}html:not([data-theme=dark]):not([data-contrast=high]) body ::placeholder{color:var(--text-muted);opacity:1}html:not([data-theme=dark]):not([data-contrast=high]) body .fn-nav button:not([aria-selected=true]),html:not([data-theme=dark]):not([data-contrast=high]) body .card button:not([aria-selected=true]):not([aria-pressed=true]):not(.project-open):not(.avatar-switch-btn),html:not([data-theme=dark]):not([data-contrast=high]) body .field-inline{border-color:var(--frost-line, color-mix(in srgb, var(--accent) 62%, var(--border)))}html:not([data-theme=dark]):not([data-contrast=high]) body .settings-pop select,html:not([data-theme=dark]):not([data-contrast=high]) body .settings-pop input:not([type=checkbox]):not([type=radio]):not([type=range]),html:not([data-theme=dark]):not([data-contrast=high]) body .settings-pop button:not([aria-pressed=true]):not([aria-selected=true]){border-color:var(--frost-line, color-mix(in srgb, var(--accent) 62%, var(--border)))}.hand-setting{display:grid;gap:6px}.hand-setting__label{margin:0;font-weight:700;font-size:.9rem}.hand-setting .hint{margin:0}.hand-segment{display:grid;grid-template-columns:1fr 1fr;gap:6px}.hand-segment button{min-height:44px;padding:6px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-strong, var(--surface));color:var(--text);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}.hand-segment button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.hand-segment button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media (min-width: 1100px){html[data-hand=left] .app:not(.has-pip):not(.is-dock) .shell{grid-template-columns:minmax(260px,360px) minmax(280px,1fr) minmax(240px,320px)}html[data-hand=left] .app:not(.has-pip):not(.is-dock) .shell>.hero-col{grid-column:1;grid-row:1}html[data-hand=left] .app:not(.has-pip):not(.is-dock) .shell>.pattern-col{grid-column:2;grid-row:1}html[data-hand=left] .app:not(.has-pip):not(.is-dock) .shell>.project-rail{grid-column:3;grid-row:1}html[data-hand=left] .app.is-dock:not(.has-pip) .shell{grid-template-columns:minmax(260px,360px) minmax(0,1fr)}html[data-hand=left] .app.is-dock:not(.has-pip) .shell>.hero-col{grid-column:1;grid-row:1}html[data-hand=left] .app.is-dock:not(.has-pip) .shell>.pattern-col{grid-column:2;grid-row:1}html[data-hand=left] .app.has-pip .stage .shell{grid-template-columns:minmax(280px,1fr) minmax(280px,340px)}html[data-hand=left] .app.has-pip .shell>.pattern-col{grid-column:1;grid-row:1}html[data-hand=left] .app.has-pip .shell>.project-rail{grid-column:2;grid-row:1}}@media (min-width: 1100px) and (max-width: 1279px){html[data-preview="1"][data-hand=left] .app:not(.has-pip):not(.is-dock) .shell{grid-template-columns:minmax(0,1fr) minmax(200px,250px)}html[data-preview="1"][data-hand=left] .app:not(.has-pip):not(.is-dock) .shell>.pattern-col{grid-column:1;grid-row:1}html[data-preview="1"][data-hand=left] .app:not(.has-pip):not(.is-dock) .shell>.hero-col{grid-column:1;grid-row:2}html[data-preview="1"][data-hand=left] .app:not(.has-pip):not(.is-dock) .shell>.project-rail{grid-column:2;grid-row:1}}@media (min-width: 1280px){html[data-preview="1"][data-hand=left] .app:not(.has-pip):not(.is-dock) .shell{grid-template-columns:minmax(240px,320px) minmax(0,1fr) minmax(210px,280px)}}html[data-hand=left] .fn-card-actions{flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end;min-width:0;max-width:100%}html[data-hand=left] .row-stepper{flex-direction:row-reverse}html[data-hand=left] .row-line.is-current{box-shadow:inset -6px 0 0 var(--accent)}html[data-hand=left] .count-card,html[data-hand=left] .count-taps,html[data-hand=left] .watch-dock .btn-row{direction:rtl}html[data-hand=left] .count-card>*,html[data-hand=left] .count-taps>*,html[data-hand=left] .watch-dock .btn-row>*{direction:ltr}html[data-hand=left] .count-card>.count-taps{direction:rtl}html[data-hand=left] .pip-strip{left:8px;right:auto}html[data-hand=left] .cyc-mark,html[data-hand=left] .fpv-canvas,html[data-hand=left] .fpv-poster svg{transform:scaleX(-1)}html[data-hand=left][data-mirror-video="1"] iframe[title="YouTube video"],html[data-hand=left][data-mirror-video="1"] iframe[title="Vimeo video"]{transform:scaleX(-1)}.look-mark-wrap{position:relative;display:inline-grid;flex:none}button.look-mark{position:relative;margin:0;padding:0;border:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}button.look-mark:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.look-mark-y{pointer-events:none}.look-ring{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;width:calc(100% + 12px);height:calc(100% + 12px);transform:rotate(-90deg);pointer-events:none;overflow:visible;opacity:0;transition:opacity .16s ease}.look-ring circle{fill:none;stroke-width:2.5;stroke-linecap:round}.look-ring-track{stroke:var(--line)}.look-ring-fill{stroke:var(--accent2);stroke-dasharray:100 100;stroke-dashoffset:100;transition:stroke-dashoffset .18s ease-out}.look-mark.is-holding .look-ring{opacity:1}.look-mark.is-holding .look-ring-fill{stroke-dashoffset:0;transition:stroke-dashoffset .8s linear}.look-label{position:absolute;top:100%;left:50%;transform:translate(-50%,2px);font-family:var(--font-body);font-size:.56rem;font-weight:700;line-height:1;letter-spacing:.04em;white-space:nowrap;color:var(--text-muted);pointer-events:none}html.look-swap::view-transition-old(root),html.look-swap::view-transition-new(root){animation-duration:.48s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}html.look-swap body,html.look-swap .card,html.look-swap .fn-card,html.look-swap .topbar,html.look-swap .btn,html.look-swap button{transition:background-color .42s ease,color .42s ease,border-color .42s ease,box-shadow .42s ease}html[data-look=plus]:not([data-contrast=high]),html[data-look=plus][data-theme=light]:not([data-contrast=high]),html[data-look=plus]:not([data-contrast=high]) [data-theme=light]{--hp-ai: #4338CA;--hp-ai-soft: #E8E7FB;--hp-hand: #B3401A;--hp-hand-soft: #FBEAE2;--hp-meet: #7A3E9D;--hp-grid: rgba(67, 56, 202, .1);--hp-thread: linear-gradient(90deg, var(--hp-hand), var(--hp-meet) 50%, var(--hp-ai));--hp-veil: rgba(255, 255, 255, .78);--hp-field-border: #767B92;--hp-scrim: rgba(14, 17, 34, .55);--hp-shade: 14, 17, 34;--bg: #F3F4F8 !important;--bg-sky: #EEF0F7 !important;--bg-meadow: #EEF0F7 !important;--surface: #FFFFFF !important;--surface-strong: #FFFFFF !important;--paper: #FFFFFF !important;--cream: #EEF0F6 !important;--live: #EEF0F7 !important;--text: #161A2B !important;--ink: #161A2B !important;--text-muted: #4A5068 !important;--muted: #4A5068 !important;--accent: #4338CA !important;--accent2: #B3401A !important;--olive: #4338CA !important;--olive-soft: #E8E7FB !important;--caramel: #B3401A !important;--on-accent: #FFFFFF !important;--focus: #B3401A !important;--border: #C5C9DA !important;--line: #E1E4EE !important;--chip: #E8E7FB !important;--ok: #1F6E43 !important;--warn: #8A5300 !important;--danger: #A4262C !important;--on-danger: #FFFFFF !important;--sage: #3E7C8C !important;--sage-2: #D6E4EC !important;--sky: #3E7C8C !important;--petal: #B3401A !important;--lilac: #6D4BB0 !important;--mesh-1: #E6E8F7 !important;--mesh-2: #F1ECF6 !important;--mesh-3: #E9F0F4 !important;--mesh-4: #EEF0F7 !important;--shadow: 0 1px 2px rgba(22, 26, 43, .06), 0 14px 34px -20px rgba(40, 44, 110, .3) !important;--glow: 0 0 0 1px rgba(67, 56, 202, .05), 0 18px 40px -26px rgba(67, 56, 202, .4) !important;--radius-sm: 10px !important;--radius: 16px !important;--radius-lg: 20px !important;--font-display: "Atkinson Hyperlegible", "Segoe UI", system-ui, sans-serif;--display: var(--font-display);--dur-fast: .14s;--dur: .22s;--ease: cubic-bezier(.2, .8, .2, 1)}html[data-look=plus]:not([data-contrast=high]) [data-theme=dark],html[data-look=plus][data-theme=dark]:not([data-contrast=high]){--hp-ai: #A5B4FC;--hp-ai-soft: #262B52;--hp-hand: #FFB38A;--hp-hand-soft: #3B2B2C;--hp-meet: #E0A6F5;--hp-grid: rgba(165, 180, 252, .09);--hp-veil: rgba(23, 27, 49, .82);--hp-field-border: #7D83A3;--hp-scrim: rgba(4, 6, 16, .68);--bg: #0E1122 !important;--bg-sky: #0E1122 !important;--bg-meadow: #12162A !important;--surface: #171B31 !important;--surface-strong: #1F2440 !important;--paper: #171B31 !important;--cream: #12162A !important;--live: #1B2038 !important;--text: #EEF0FA !important;--ink: #EEF0FA !important;--text-muted: #B7BDD6 !important;--muted: #B7BDD6 !important;--accent: #A5B4FC !important;--accent2: #FFB38A !important;--olive: #A5B4FC !important;--olive-soft: #262B52 !important;--caramel: #FFB38A !important;--on-accent: #0E1122 !important;--focus: #FFB38A !important;--border: #4A5175 !important;--line: #2E3456 !important;--chip: #262B52 !important;--ok: #86EFAC !important;--warn: #FCD34D !important;--danger: #FCA5A5 !important;--on-danger: #0E1122 !important;--sage: #7DD3E0 !important;--sage-2: #2A3A4A !important;--sky: #7DD3E0 !important;--petal: #FFB38A !important;--lilac: #C4B5FD !important;--mesh-1: #161A30 !important;--mesh-2: #1A1733 !important;--mesh-3: #14202C !important;--mesh-4: #12162A !important;--shadow: 0 18px 50px rgba(0, 0, 0, .45) !important;--glow: 0 0 0 1px rgba(165, 180, 252, .1), 0 16px 44px -20px rgba(0, 0, 0, .6) !important}html[data-look=plus][data-theme=light][data-yarn=wool]:not([data-contrast=high]){--hp-hand: #8A4B12;--accent2: #8A4B12 !important;--caramel: #8A4B12 !important}html[data-look=plus][data-theme=light][data-yarn=mohair]:not([data-contrast=high]){--hp-hand: #A3305F;--accent2: #A3305F !important;--caramel: #A3305F !important}html[data-look=plus][data-theme=light][data-yarn=linen]:not([data-contrast=high]){--hp-hand: #6F5A1E;--accent2: #6F5A1E !important;--caramel: #6F5A1E !important}html[data-look=plus][data-theme=light][data-yarn=acrylic]:not([data-contrast=high]){--hp-hand: #B1361E;--accent2: #B1361E !important;--caramel: #B1361E !important}html[data-look=plus][data-theme=light][data-yarn=variegated]:not([data-contrast=high]){--hp-hand: #96307E;--accent2: #96307E !important;--caramel: #96307E !important}html[data-look=plus][data-theme=dark][data-yarn=wool]:not([data-contrast=high]){--hp-hand: #F3C98B;--accent2: #F3C98B !important;--caramel: #F3C98B !important}html[data-look=plus][data-theme=dark][data-yarn=mohair]:not([data-contrast=high]){--hp-hand: #F9B4D0;--accent2: #F9B4D0 !important;--caramel: #F9B4D0 !important}html[data-look=plus][data-theme=dark][data-yarn=linen]:not([data-contrast=high]){--hp-hand: #E8D9A0;--accent2: #E8D9A0 !important;--caramel: #E8D9A0 !important}html[data-look=plus][data-theme=dark][data-yarn=acrylic]:not([data-contrast=high]){--hp-hand: #FF9F8A;--accent2: #FF9F8A !important;--caramel: #FF9F8A !important}html[data-look=plus][data-theme=dark][data-yarn=variegated]:not([data-contrast=high]){--hp-hand: #F0A8E4;--accent2: #F0A8E4 !important;--caramel: #F0A8E4 !important}html[data-look=plus][data-theme=light] body{background:var(--yuni-tile) repeat,radial-gradient(circle at 1px 1px,var(--hp-grid) 1.1px,transparent 1.6px) 0 0 / 22px 22px repeat,var(--bg)!important}html[data-look=plus][data-theme=dark] body{background:var(--yuni-tile-night) repeat,radial-gradient(circle at 1px 1px,var(--hp-grid) 1.1px,transparent 1.6px) 0 0 / 22px 22px repeat,var(--bg)!important}html[data-look=plus] .app{background:transparent;box-shadow:none}html[data-look=plus]:not([data-contrast=high]):not([data-glare=low]) .pond{display:block!important;position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}html[data-look=plus] .pond .glow,html[data-look=plus] .pond .trail{display:none}html[data-look=plus] .threads path{fill:none;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:2 9;opacity:.55;animation:hp-strand 26s linear infinite}html[data-look=plus] .threads path:nth-child(1){stroke:var(--hp-hand)}html[data-look=plus] .threads path:nth-child(2){stroke:var(--hp-ai);animation-direction:reverse}html[data-look=plus] .threads path:nth-child(3){stroke:var(--hp-meet);opacity:.4;animation-duration:34s}@keyframes hp-strand{to{stroke-dashoffset:-220}}html[data-look=plus] body{letter-spacing:.005em}html[data-look=plus] h1,html[data-look=plus] h2,html[data-look=plus] h3,html[data-look=plus] .brand-copy strong,html[data-look=plus] .card-title,html[data-look=plus] .pattern-title,html[data-look=plus] .rail-head h2{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em}html[data-look=plus] .metrics,html[data-look=plus] .spm-grid,html[data-look=plus] .size-spec,html[data-look=plus] .stitch-chip,html[data-look=plus] .project-meta,html[data-look=plus] [data-fn=timer] time,html[data-look=plus] .work-timer time,html[data-look=plus] .timer-clock,html[data-look=plus] .live-count-num,html[data-look=plus] .timer-display,html[data-look=plus] .timer-break,html[data-look=plus] .count-card strong,html[data-look=plus] .validation{font-family:var(--font-mono);font-variant-numeric:tabular-nums slashed-zero}html[data-look=plus] .topbar{background:var(--hp-veil)!important;-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);border-bottom:0;box-shadow:none;position:relative}html[data-look=plus] .topbar:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--hp-thread);opacity:.85;pointer-events:none}html[data-look=plus] .brand-mark{background:conic-gradient(from 200deg,var(--hp-hand) 0 50%,var(--hp-ai) 50% 100%);color:#fff;font-family:var(--font-display);font-weight:700;box-shadow:0 0 0 3px var(--surface),0 0 0 4px var(--border)}html[data-look=plus][data-theme=dark] .brand-mark{color:#0e1122}html[data-look=plus] .look-mark-y{display:grid;place-items:center;width:62%;height:62%;border-radius:50%;background:var(--surface);color:var(--text);font-size:.95rem}html[data-look=plus] .look-label{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:2px 6px;transform:translate(-50%,4px)}html[data-look=plus] .look-label:before{content:"";display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%;vertical-align:1px;background:linear-gradient(90deg,var(--hp-hand) 50%,var(--hp-ai) 50%)}html[data-look=plus] .brand-slogan{color:var(--text-muted)}html[data-look=plus] .card,html[data-look=plus] .project-card,html[data-look=plus] .trust-about,html[data-look=plus] .live-row{background-color:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-look=plus][data-theme=dark] .card,html[data-look=plus][data-theme=dark] .project-card,html[data-look=plus][data-theme=dark] .trust-about,html[data-look=plus][data-theme=dark] .live-row{border-color:var(--line)}html[data-look=plus] .fn-card{position:relative;background-color:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px 16px;box-shadow:0 1px #00000005;overflow:clip}html[data-look=plus][data-theme=dark] .fn-card{background-color:var(--surface-strong)}html[data-look=plus] .fn-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--hp-strand, var(--hp-thread));pointer-events:none}html[data-look=plus] .fn-card{--hp-strand: linear-gradient(180deg, var(--hp-hand), var(--hp-ai))}html[data-look=plus] :is([data-fn=project],[data-fn=live-count],[data-fn=named-counters],[data-fn=notes],[data-fn=sketch],[data-fn=timer],[data-fn=hand-care],[data-fn=stash]){--hp-strand: var(--hp-hand);--hp-lead: var(--hp-hand)}html[data-look=plus] :is([data-fn=generate],[data-fn=doctor],[data-fn=stitch-check],[data-fn=piece],[data-fn=vision],[data-fn=voice-count],[data-fn=guide],[data-fn=enough],[data-fn=resize],[data-fn=pace]){--hp-strand: var(--hp-ai);--hp-lead: var(--hp-ai)}html[data-look=plus] .fn-card-bar{gap:8px;align-items:center;margin-bottom:6px}html[data-look=plus] .fn-card-title{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--text);display:inline-flex;align-items:center;gap:8px}html[data-look=plus] .fn-card-title:before{content:"";flex:none;width:14px;height:8px;border-radius:999px;background:var(--hp-lead, linear-gradient(90deg, var(--hp-hand) 50%, var(--hp-ai) 50%))}html[data-look=plus] .fn-card-actions{gap:6px;flex-wrap:wrap}html[data-look=plus] .fn-card-actions .btn.fn-pill,html[data-look=plus][data-theme=dark] .fn-card-actions .btn.fn-pill{min-height:32px;height:auto;padding:4px 12px;font-size:.8rem;border-width:1px;border-style:solid;border-color:var(--border);border-radius:8px;background:var(--surface);color:var(--accent)}html[data-look=plus] .fn-card-actions .btn.fn-pill:hover{border-color:var(--accent)}.hp-legend{display:none}html[data-look=plus] .hp-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 12px;padding:0;list-style:none;font-size:.8rem;color:var(--text-muted)}html[data-look=plus] .hp-legend li{display:inline-flex;align-items:center;gap:6px}html[data-look=plus] .hp-legend i{width:14px;height:8px;border-radius:999px;background:var(--hp-hand)}html[data-look=plus] .hp-legend .is-yuni i{background:var(--hp-ai)}html[data-look=plus] .hp-legend .is-both i{background:linear-gradient(90deg,var(--hp-hand) 50%,var(--hp-ai) 50%)}html[data-look=plus] .btn{border-radius:10px;letter-spacing:.01em;transition:background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}html[data-look=plus] .btn:active{transform:translateY(1px)}html[data-look=plus] .icon-btn{border-radius:10px;background:var(--surface);border-color:var(--line)}html[data-look=plus] :focus-visible{outline-color:var(--focus)}html[data-look=plus] .fn-nav{gap:4px;padding:4px;border-radius:12px;background:var(--bg);border:1px solid var(--line)}html[data-look=plus] .fn-nav button,html[data-look=plus][data-theme=dark] .fn-nav button{flex:1 1 auto;width:auto;min-width:5.4rem;height:38px;min-height:38px;max-height:38px;padding:0 12px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--text);font-size:.88rem;transition:background-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}html[data-look=plus] .fn-nav button:hover{background:var(--surface)}html[data-look=plus] .fn-nav button[aria-selected=true],html[data-look=plus][data-theme=dark] .fn-nav button[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:0 6px 16px -10px var(--hp-ai)}html[data-look=plus] .fn-lead{color:var(--text-muted)}html[data-look=plus] .project-card{border-radius:14px}html[data-look=plus] .progress-track{background:var(--line);border-radius:999px}html[data-look=plus] .progress-track>*{background:var(--hp-thread)!important;border-radius:999px}html[data-look=plus] .mascot-alcove{background:linear-gradient(180deg,var(--hp-ai-soft),var(--surface));border:1px solid var(--line);border-radius:20px;box-shadow:var(--glow)}html[data-look=plus] .yuni-footer{display:flex;flex-wrap:wrap;align-items:center;gap:2px 18px;padding:8px 128px 8px 20px;font-size:.82rem;background:var(--hp-veil);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);color:var(--text-muted)}html[data-look=plus] .yuni-footer p{margin:0}html[data-look=plus] .yuni-footer a{color:var(--accent)}html[data-look=plus] .yuni-corner{background:var(--surface);color:var(--text);border-color:var(--border)}@media (min-width: 1280px){html[data-look=plus]:not([data-preview="1"]) .app.is-mascot-open{--mascot-w: 268px}html[data-look=plus]:not([data-preview="1"]):not([data-hand=left]) .app:not(.has-pip):not(.is-dock) .shell{grid-template-columns:minmax(210px,250px) minmax(360px,1fr) minmax(250px,300px);gap:16px}html[data-look=plus]:not([data-preview="1"])[data-hand=left] .app:not(.has-pip):not(.is-dock) .shell{grid-template-columns:minmax(250px,300px) minmax(360px,1fr) minmax(210px,250px);gap:16px}}@media (prefers-reduced-motion: reduce){html[data-look=plus] .threads path{animation:none!important}}html[data-calm="1"][data-look=plus] .threads path{animation:none!important}html[data-look=plus]:not([data-contrast=high]) .yf-studio,html[data-look=plus]:not([data-contrast=high]) .yf-studio[data-theme=dark]{--ys-bg: var(--bg);--ys-surface: var(--surface);--ys-surface-2: var(--cream);--ys-text: var(--text);--ys-muted: var(--text-muted);--ys-primary: var(--accent);--ys-primary-text: var(--on-accent);--ys-soft: var(--chip);--ys-border: var(--line);--ys-strong-border: var(--hp-field-border);--ys-danger: var(--danger);--ys-ok: var(--ok);--ys-warn: var(--warn);--ys-info: var(--hp-ai);--ys-focus: var(--focus);--ys-chart: var(--hp-ai);--ys-chart-hi: var(--hp-hand);--ys-chart-track: var(--line);--ys-font: var(--font-body);--ys-heading-font: var(--font-display)}html[data-look=plus] .yf-studio :is(.ys-logo,.ys-empty-title,.ys-title-input,.ys-big){font-family:var(--font-display)}html[data-look=plus]:not([data-contrast=high]) .yf-run:is([style*="--yf-bg: #FBF6EE" i],[style*="--yf-bg: #1E1C18" i]){--yf-bg: var(--bg) !important;--yf-surface: var(--surface) !important;--yf-text: var(--text) !important;--yf-muted: var(--text-muted) !important;--yf-primary: var(--accent) !important;--yf-primary-text: var(--on-accent) !important;--yf-border: var(--border) !important;--yf-field: var(--surface) !important;--yf-selected: var(--chip) !important;--yf-error: var(--danger) !important;--yf-blob1: var(--hp-hand-soft) !important;--yf-blob2: var(--hp-ai-soft) !important;--yf-blob3: var(--mesh-3) !important}html[data-look=plus] .yf-run[style*="--yf-heading-font: Fraunces" i]{--yf-heading-font: var(--font-display) !important}html[data-look=plus]:not([data-contrast=high]) .yf-overlay{background:var(--bg)}html[data-look=plus]:not([data-contrast=high]) .yf-overlay-close{border-color:var(--hp-field-border);background:var(--surface);color:var(--text)}html[data-look=plus]:not([data-contrast=high]) .yf-overlay-close:focus-visible{outline-color:var(--focus)}html[data-look=plus]:not([data-contrast=high]) :is(.ys-backdrop,.stc-backdrop,.stc-confirm-back){background:var(--hp-scrim)}html[data-look=plus]:not([data-contrast=high]) .cmdk-back{background:rgba(var(--hp-shade),.28)}html[data-look=plus]:not([data-contrast=high]) .support-back{background:rgba(var(--hp-shade),.45)}html[data-look=plus]:not([data-contrast=high]) .yuni-frost{background:rgba(var(--hp-shade),.07)}html[data-look=plus][data-theme=dark]:not([data-contrast=high]) .yuni-frost{background:#00000029}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){html[data-look=plus]:not([data-contrast=high]) .yuni-frost{background:rgba(var(--hp-shade),.18)}html[data-look=plus][data-theme=dark]:not([data-contrast=high]) .yuni-frost{background:#00000052}}html[data-look=plus]:not([data-contrast=high]) .support-back .support-card{background:var(--surface);color:var(--text);border-color:var(--line)}html[data-look=plus]:not([data-contrast=high]) .support-field :is(select,textarea,input){border-color:var(--hp-field-border);background:var(--surface);color:var(--text)}html[data-look=plus]:not([data-contrast=high]) .support-error{color:var(--danger)}html[data-look=plus]:not([data-contrast=high]) .ygate{background:radial-gradient(1200px 700px at 20% 10%,var(--hp-hand-soft) 0,transparent 60%),radial-gradient(900px 600px at 90% 90%,var(--hp-ai-soft) 0,transparent 60%),var(--bg);color:var(--text)}html[data-look=plus]:not([data-contrast=high]) .ygate-card{background:var(--surface);border-color:var(--line);box-shadow:var(--shadow)}html[data-look=plus]:not([data-contrast=high]) :is(.ygate-sub,.ygate-foot){color:var(--text-muted)}html[data-look=plus]:not([data-contrast=high]) .ygate-input{border-color:var(--hp-field-border);background:var(--surface);color:var(--text)}html[data-look=plus]:not([data-contrast=high]) .ygate-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}html[data-look=plus]:not([data-contrast=high]) .ygate-btn{background:var(--accent);color:var(--on-accent)}html[data-look=plus]:not([data-contrast=high]) .ygate-msg{color:var(--danger)}html[data-look=plus] .scs-band{background:repeating-linear-gradient(135deg,rgba(var(--hp-shade),.38) 0,rgba(var(--hp-shade),.38) 7px,rgba(var(--hp-shade),.2) 7px,rgba(var(--hp-shade),.2) 14px)}html[data-look=plus][data-frost=on]:not([data-contrast=high]) body .card{box-shadow:var(--shadow)}html[data-look=plus][data-frost=on]:not([data-contrast=high]) body .mascot-alcove{box-shadow:var(--glow)}html[data-look=plus]:not([data-contrast=high]) .yf-run:is([style*="--yf-bg: #FBF6EE" i],[style*="--yf-bg: #1E1C18" i]):not([data-card=flat]) .yf-card,html[data-look=plus]:not([data-contrast=high]) .eye-comfort-card{box-shadow:var(--shadow)}html[data-look=plus] :is(.designer-report,.sketch-ask,.watch-form) :is(input:not([type=checkbox]):not([type=radio]),textarea){padding:8px 10px;border:1.5px solid var(--hp-field-border);border-radius:10px;background:var(--surface);color:var(--text)}.support-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:#14181273;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:1;animation:none;isolation:isolate}.support-back .support-card{position:relative;width:min(440px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fffdf8;background-image:none;color:#2b2b26;opacity:1;animation:none;filter:none;mix-blend-mode:normal;-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid rgba(43,43,38,.22);border-radius:18px;padding:20px;box-shadow:0 18px 50px #0000004d}[data-theme=dark] .support-back .support-card,[data-theme=dark].support-back .support-card{background:#2c2a24;color:#eeeadf;border-color:#eeeadf38}.support-card h2{margin:0 0 12px;font-size:1.2rem}.support-field{display:flex;flex-direction:column;gap:6px;margin:0 0 12px;font-weight:600}.support-field select,.support-field textarea,.support-field input{font:inherit;font-weight:400;padding:8px 10px;border-radius:10px;border:1px solid rgba(128,128,120,.55);background:#fff;color:#2b2b26;opacity:1}[data-theme=dark] .support-field select,[data-theme=dark] .support-field textarea,[data-theme=dark] .support-field input{background:#1f1e1a;color:#eeeadf}.support-field textarea{resize:vertical;min-height:110px}.support-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}.support-error{color:#b3261e;margin:6px 0}[data-theme=dark] .support-error{color:#ffb4ab}.support-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.support-thanks p{margin:0 0 14px}.support-entry{width:100%}.ygate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:grid;place-items:center;padding:24px;background:radial-gradient(1200px 700px at 20% 10%,#ffe9f1 0,transparent 60%),radial-gradient(900px 600px at 90% 90%,#e8e6ff 0,transparent 60%),#fbf7f4;color:#2a2230;font-family:inherit}.ygate-card{width:min(420px,100%);background:#fff;border:1px solid #eadfe6;border-radius:24px;padding:32px 28px;box-shadow:0 20px 60px #50285a1f;display:flex;flex-direction:column;gap:12px;text-align:center}.ygate-logo{width:72px;height:72px;border-radius:20px;margin:0 auto 4px;object-fit:cover}.ygate h1{margin:0;font-size:1.6rem;letter-spacing:.01em}.ygate-sub{margin:0 0 6px;color:#5b5063;line-height:1.45}.ygate-input{font-size:16px;padding:14px 16px;border-radius:14px;border:1.5px solid #d9cbd6;background:#fffdfc;color:inherit;text-align:center;letter-spacing:.06em}.ygate-input:focus{outline:none;border-color:#c0567f;box-shadow:0 0 0 3px #c0567f2e}.ygate-btn{font-size:1rem;font-weight:600;padding:14px;border:0;border-radius:14px;background:#b8466f;color:#fff;cursor:pointer}.ygate-btn:disabled{opacity:.55;cursor:default}.ygate-msg{min-height:1.2em;margin:0;color:#a3264f;font-size:.92rem}.ygate-foot{margin:0;color:#7a6f80;font-size:.82rem}@media (prefers-color-scheme:dark){.ygate{background:radial-gradient(1200px 700px at 20% 10%,#3a2033 0,transparent 60%),radial-gradient(900px 600px at 90% 90%,#23214a 0,transparent 60%),#16121a;color:#f3ecf2}.ygate-card{background:#221b27;border-color:#3a2f40;box-shadow:0 20px 60px #00000073}.ygate-sub{color:#cfc3d3}.ygate-foot{color:#a99cae}.ygate-input{background:#1a151e;border-color:#4a3d50}.ygate-btn{background:#d0608a;color:#1a0f16}.ygate-msg{color:#ff9cbc}}.yuni-live{cursor:default}.yuni-live.is-mouse{cursor:pointer}.yuni-mini,.yuni-mascot .yuni-mini.yuni-portrait{position:relative;width:72px;height:72px;flex:none;overflow:hidden;border-radius:18px;background:var(--surface-strong);cursor:default}.yuni-mini.is-mouse{cursor:pointer}.yuni-mini>img,.yuni-mini>canvas,.yuni-mascot .yuni-mini>img,.yuni-mascot .yuni-mini>canvas,.work-strip .yuni-mascot .yuni-mini>img{position:absolute;left:-74%;top:-31%;width:250%;height:250%;max-width:none;display:block;object-fit:contain;object-position:center;background:transparent;border-radius:0}.yuni-mini>canvas{pointer-events:none;transition:opacity .24s ease}@media (prefers-reduced-motion: reduce){.yuni-mini>canvas{transition:none}}@media (max-width: 900px){.yuni-mascot .yuni-mini.yuni-portrait{width:72px;height:72px}}.yuni-live[data-yuni-live=ready]>.yuni-live-still,.yuni-mini[data-yuni-live=ready]>.yuni-mini-still{opacity:0;transition:opacity 0s linear .26s}.yuni-live[data-yuni-live=ready]>canvas.yuni-live-avatar,.yuni-mini[data-yuni-live=ready]>canvas.yuni-mini-avatar{background:linear-gradient(90deg,#28140004,#28140001,#28140000,#28140001,#28140004),linear-gradient(180deg,#d5d0cd,#d9d4d2,#dedad7)}.yuni-motion-settings{display:flex;flex-direction:column;gap:8px;padding-top:4px;border-top:1px solid var(--border)}.yuni-motion-settings .eyebrow{margin:0;font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.yuni-motion-settings .hint{margin:0;font-size:.75rem;line-height:1.35;color:var(--text-muted)}html[data-yuni-motion=off] .v5-peek-card,html[data-yuni-motion=off] .v5-card{animation:none}.yarn-ball{--yarn-fill: color-mix(in srgb, var(--accent) 46%, var(--paper));--yarn-strand: color-mix(in srgb, var(--accent) 88%, #000);--yarn-strand-light: color-mix(in srgb, var(--accent) 64%, var(--paper));--yarn-rim: color-mix(in srgb, var(--accent) 78%, var(--paper));color:var(--accent)}[data-theme=dark] .yarn-ball{--yarn-fill: color-mix(in srgb, var(--accent) 40%, var(--surface-strong));--yarn-strand: color-mix(in srgb, var(--accent) 92%, #fff);--yarn-strand-light: color-mix(in srgb, var(--accent) 66%, var(--surface-strong));--yarn-rim: color-mix(in srgb, var(--accent) 78%, var(--surface-strong))}.yarn-ball .yarn-svg{display:block;width:100%;height:auto;overflow:visible}.yfig{position:relative;display:block;width:100%;aspect-ratio:1;pointer-events:none;user-select:none;-webkit-user-select:none}.yfig-layer{position:absolute;top:0;right:0;bottom:0;left:0;display:block;transition:opacity .32s var(--ease, ease)}.yfig-layer.is-in,.yfig-layer.is-out{opacity:0}.yfig-layer.is-on{opacity:1}.yfig-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;display:block;object-fit:contain;object-position:50% 100%;background:transparent}.yfig.is-real.frame-bust .yfig-img{-webkit-mask-image:linear-gradient(to bottom,#000 80%,transparent 99%);mask-image:linear-gradient(to bottom,#000 80%,transparent 99%)}.yfig.is-real.frame-head .yfig-img{width:172%;height:172%;left:-36%;top:-2%;object-position:50% 0;-webkit-mask-image:linear-gradient(to bottom,#000 45%,transparent 58%);mask-image:linear-gradient(to bottom,#000 45%,transparent 58%)}.yfig.is-mini .yfig-img{transform-origin:50% 100%}.yfig-shadow{position:absolute;left:24%;right:24%;bottom:0;height:6%;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--text, #2e2a26) 20%,transparent),transparent);pointer-events:none}.yfig.is-mini.is-moving .yfig-layer.is-on .yfig-img{animation:yuni-free-breathe 4.4s ease-in-out infinite}@keyframes yuni-free-breathe{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-1.4%) rotate(-.7deg)}}.yfig.is-real.is-moving .yfig-layer.is-on .yfig-img{transform-origin:50% 100%;animation:yuni-free-breathe-real 5.2s ease-in-out infinite}@keyframes yuni-free-breathe-real{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-.6%) scale(1.006)}}.yfig.wrap-left{margin:0 14px 6px 0}.yfig.wrap-right{margin:0 0 6px 14px}.yfig.is-real.frame-head.wrap-left{margin-right:calc(var(--yfig-w, 112px) * .26 + 6px)}.yfig.is-real.frame-head.wrap-right{margin-left:calc(var(--yfig-w, 112px) * .26 + 6px)}@media (prefers-reduced-motion: reduce){.yfig-layer{transition:none}.yfig .yfig-img{animation:none!important}}html[data-calm="1"] .yfig .yfig-img{animation:none!important}html .mascot-alcove:not(.is-collapsed),html[data-look=plus] .mascot-alcove:not(.is-collapsed),html[data-theme=dark] .mascot-alcove:not(.is-collapsed){background:transparent!important;background-image:none!important;border-color:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}html .mascot-alcove:not(.is-collapsed):before,html .mascot-alcove:not(.is-collapsed):after{display:none!important}.yuni-live,.mascot-stack.is-live{background:transparent!important}.yuni-live[data-yuni-live=ready]>canvas.yuni-live-avatar,.yuni-mini[data-yuni-live=ready]>canvas.yuni-mini-avatar{background:transparent!important}.yuni-live>img,.yuni-live>canvas{-webkit-mask-image:linear-gradient(to bottom,#000 80%,transparent 99%);mask-image:linear-gradient(to bottom,#000 80%,transparent 99%)}.yuni-stage{position:relative;width:min(100%,calc(100dvh - 230px));aspect-ratio:1;margin:0 auto}.yuni-stage>.yuni-stage-layer{position:absolute;top:0;right:0;bottom:0;left:0;transition:opacity .32s var(--ease, ease)}.yuni-stage>.yuni-stage-layer.is-out{opacity:0;pointer-events:none}.yuni-stage .yuni-live{width:100%}@media (prefers-reduced-motion: reduce){.yuni-stage>.yuni-stage-layer{transition:none}}.yuni-swap{display:inline-flex;gap:2px;padding:2px;border-radius:999px;background:var(--chip, var(--surface-strong));border:1px solid var(--line, currentColor)}.yuni-swap button{font:inherit;font-size:.8125rem;line-height:1.2;min-height:32px;padding:4px 12px;border:0;border-radius:999px;background:transparent;color:var(--ink, inherit);cursor:pointer}.yuni-swap button[aria-checked=true]{background:var(--accent);color:var(--on-accent)}.yuni-swap button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.yuni-mini,.yuni-mascot .yuni-mini.yuni-portrait{overflow:visible!important;border-radius:0!important;background:transparent!important;margin-inline:12px}.yuni-mini>img,.yuni-mini>canvas,.yuni-mascot .yuni-mini>img,.yuni-mascot .yuni-mini>canvas,.work-strip .yuni-mascot .yuni-mini>img{left:-40%!important;top:-4%!important;width:180%!important;height:180%!important;-webkit-mask-image:linear-gradient(to bottom,#000 38%,transparent 52%);mask-image:linear-gradient(to bottom,#000 38%,transparent 52%)}.yuni-mascot .yfig.is-mini{width:72px;height:72px;flex:none;margin-inline:12px}.yuni-mini>img,.yuni-mini>canvas{pointer-events:none}.mascot-peek .v5-peek-card,.mascot-peek .yuni-peek{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important}.mascot-peek .yuni-peek{display:block;width:64px;height:64px}.yfig .yfig-img{border-radius:0!important;background:transparent!important;object-fit:contain!important;box-shadow:none!important;filter:none!important}.yfig:not(.frame-head) .yfig-img,.yfig.is-mini .yfig-img{width:100%!important;height:100%!important;left:0!important;top:0!important;object-position:50% 100%!important}.yfig.is-real.frame-head .yfig-img{width:172%!important;height:172%!important;left:-36%!important;top:-2%!important;object-position:50% 0!important}.generate-yuni.is-free{display:block}.generate-yuni.is-free:after{content:"";display:block;clear:both}.generate-yuni.is-free .yfig{--yfig-w: 112px;width:var(--yfig-w)}.desk-yuni.is-free{grid-template-columns:80px minmax(0,1fr)}.desk-yuni.is-free .yfig,.yfig.desk-fallback-yuni{width:80px}.eye-comfort-card .eye-comfort-yuni{width:52px;flex:none}.yarn-loader--overlay .yarn-yuni{--yfig-w: 96px;width:var(--yfig-w);margin:0 auto -6px}.landing .landing-yuni{--yfig-w: 132px;width:var(--yfig-w)}.landing:after{content:"";display:block;clear:both}.switch-block .onboarding-yuni{--yfig-w: 76px;width:var(--yfig-w)}@media (max-width: 420px){.landing .landing-yuni{--yfig-w: 104px}.switch-block .onboarding-yuni{--yfig-w: 64px}}.mascot-alcove:not(.is-collapsed):has(.yuni-stage){height:auto;align-self:start;grid-template-rows:auto auto auto}.mascot-alcove:not(.is-collapsed):has(.yuni-stage) .mascot-pop{height:auto;min-height:0;width:100%}button.btn.fn-pill{min-width:min-content}@media (max-width: 360px){button.btn.fn-pill{min-width:min-content}}.settings-pop>*{flex-shrink:0}.settings-pop .check-line{min-width:0;overflow-wrap:anywhere}.yarn-actions .btn{min-width:fit-content}.size-picker{min-width:0;max-width:100%}.size-picker>.size-scrub{max-width:100%}.yf-studio .ys-skip:not(:focus){width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media (max-width: 767px){.mascot-alcove.is-collapsed{position:relative;width:auto;height:auto;margin:4px 12px 0}.mascot-alcove.is-collapsed .mascot-peek{position:static;writing-mode:horizontal-tb;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:48px;padding:2px 14px 2px 4px;border:1px solid var(--border);border-radius:14px;background:var(--surface-strong);color:var(--text)}.mascot-alcove.is-collapsed .mascot-peek .yuni-peek{width:44px;height:44px;flex:none}}@media (max-width: 359px){.stage .shell{padding-left:4px;padding-right:4px}.pattern-col.card,.hero-col>.card,.project-rail{padding-left:8px;padding-right:8px}.fn-card{padding-left:8px;padding-right:8px}.brand-slogan{display:none}.brand-copy strong{font-size:1rem;line-height:1.15;overflow-wrap:anywhere}.topbar{padding:6px 8px;gap:6px}.top-actions{flex:1 1 100%;flex-wrap:wrap;gap:6px;min-width:0}.top-actions .btn{flex:1 1 auto}.btn:not(.fn-pill),a.btn,label.btn,button.btn:not(.fn-pill){white-space:normal;height:auto!important;max-height:none!important;min-height:44px;padding-block:8px;line-height:1.2;overflow-wrap:anywhere}.btn-row{flex-wrap:wrap}.btn-row>.btn{flex:1 1 100%;max-width:100%}.landing-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.landing-strip>button{width:auto}.lnb-more summary{overflow-wrap:anywhere}.spm-grid,.project-card{grid-template-columns:minmax(0,1fr)}.project-card>.icon-btn{justify-self:end}.project-open{grid-template-columns:minmax(0,1fr)}.project-open .swatch{display:none}}.hero-col,.work-strip,.fn-card,.fn-card-bar,.timer-card{box-sizing:border-box;min-width:0;max-width:100%}.fn-card-bar{flex-wrap:wrap}.fn-card-title{min-width:0;overflow-wrap:anywhere}.fn-card-actions{min-width:0;max-width:100%;flex-wrap:wrap}.fn-card-actions .btn{max-width:100%}html[data-kids="1"]{--kids-tap: 48px;--kids-gap: 12px}html[data-kids="1"] .btn,html[data-kids="1"] .btn.fn-pill,html[data-kids="1"] .fn-nudge,html[data-kids="1"] .chip-toggle,html[data-kids="1"] .field-inline select,html[data-kids="1"] .field-inline input,html[data-kids="1"] .voice-mic,html[data-kids="1"] [data-fn-nav],html[data-kids="1"] .fn-card-actions .btn,html[data-kids="1"] .card button:not(.yh-q):not([class*=help]),html[data-kids="1"] .fn-card button:not(.fn-nudge):not(.yh-q):not([class*=help]){min-height:var(--kids-tap)!important}html[data-kids="1"] .btn,html[data-kids="1"] .fn-pill{padding-inline:18px}html[data-kids="1"] .chip-toggle input[type=checkbox]{width:22px;height:22px}html[data-kids="1"] .btn-row,html[data-kids="1"] .fn-card-actions{gap:var(--kids-gap)}html[data-kids="1"] .hint{font-size:1rem;line-height:1.55}html[data-kids="1"] .project-card,html[data-kids="1"] .fn-card-body{--kids-pad: 4px;padding-block:calc(var(--kids-pad) + 8px)}html[data-kids="1"] [data-fn=pace],html[data-kids="1"] [data-spm],html[data-kids="1"] .spm-strip,html[data-kids="1"] .pace-best,html[data-kids="1"] [data-kids-hide]{display:none!important}html[data-kids="1"] .kids-cheer{margin:8px 0 0;padding:10px 14px;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent2, var(--accent)) 30%,var(--line));background:color-mix(in srgb,var(--accent2, var(--accent)) 12%,var(--surface));color:var(--ink, var(--text));font-size:1rem;line-height:1.45}.kids-cheer{display:none}html[data-kids="1"] .kids-cheer{display:block}@media (prefers-reduced-motion: no-preference){html[data-kids="1"] .kids-cheer{animation:kids-cheer-in .5s ease both}}@keyframes kids-cheer-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}html[data-calm="1"][data-kids="1"] .kids-cheer{animation:none}:root{--safe-top: max(env(safe-area-inset-top, 0px), var(--sim-safe-top, 0px));--safe-bottom: max(env(safe-area-inset-bottom, 0px), var(--sim-safe-bottom, 0px));--safe-left: max(env(safe-area-inset-left, 0px), var(--sim-safe-left, 0px));--safe-right: max(env(safe-area-inset-right, 0px), var(--sim-safe-right, 0px))}html{background:var(--bg)}body{background-color:var(--bg)}.app{padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);padding-top:max(var(--safe-top),4px)}.yuni-corner{right:calc(var(--safe-right) + 10px);bottom:calc(var(--safe-bottom) + 8px);margin:0}html[data-preview="1"] .yuni-corner{left:calc(var(--safe-left) + 12px);bottom:calc(var(--safe-bottom) + 12px)}@media (max-width: 820px){.yuni-corner,html[data-preview="1"] .yuni-corner{left:auto;right:max(8px,var(--safe-right));bottom:calc(8px + var(--safe-bottom))}}@media (max-width: 820px),(max-height: 500px){.yuni-corner,html[data-preview="1"] .yuni-corner{display:none!important}}@media (min-width: 821px) and (min-height: 501px){.yuni-footer>p:first-child{display:none}}.ink-p{stroke-linecap:round;stroke-linejoin:round;vector-effect:none}.ink-o{fill:none;stroke:var(--ink-line)}.ink-card{fill:var(--ink-card);stroke:var(--ink-line)}.ink-y1{fill:var(--ink-yarn-1);stroke:var(--ink-line)}.ink-y2{fill:var(--ink-yarn-2);stroke:var(--ink-line)}.ink-y3{fill:var(--ink-yarn-3);stroke:var(--ink-line)}.ink-h1{fill:var(--ink-hook-1);stroke:var(--ink-line)}.ink-rest{fill:var(--ink-rest);stroke:var(--ink-line)}.ink-strand{fill:none;stroke:var(--ink-yarn-3)}.ink-strand-o{fill:none;stroke:var(--ink-line)}.ink-strand-b{fill:none;stroke:var(--ink-yarn-2)}.ink-tick{fill:none;stroke:var(--ink-yarn-3)}.ink-check{fill:none;stroke:var(--ink-hook-2)}.ink-shade{fill:var(--ink-line);stroke:none;opacity:.14}.ink-icon{display:block;width:22px;height:22px;flex:none;overflow:visible}.ink-setting{display:grid;gap:6px;padding:8px 0 6px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ink-setting__label{margin:0;font-size:.75rem;letter-spacing:.11em;text-transform:uppercase;color:var(--text-muted)}.ink-setting .hint{margin:0}.ink-locked{--ink-line: var(--text);--ink-card: var(--surface);--ink-yarn-1: color-mix(in srgb, var(--petal) 28%, var(--surface));--ink-yarn-2: color-mix(in srgb, var(--petal) 70%, var(--surface));--ink-yarn-3: color-mix(in srgb, var(--petal) 72%, var(--text));--ink-hook-1: color-mix(in srgb, var(--sky) 75%, var(--surface));--ink-hook-2: var(--text);--ink-rest: var(--cream);position:relative;display:grid;gap:2px;padding:8px 10px 10px;border:1.5px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text)}.ink-locked__art{display:block;width:100%;max-width:200px;height:auto;max-height:76px;margin:0 auto}.ink-locked__lock{display:inline-block;vertical-align:-3px;margin-right:4px;width:17px;height:17px;fill:none;stroke:var(--text);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ink-locked__line{margin:0;font-size:.86rem;font-weight:700;line-height:1.3}.check-line.is-locked{color:var(--text-muted);cursor:not-allowed}.ink-plans-link{justify-self:start;min-height:44px;padding:0 2px;border:0;background:none;color:var(--accent);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.ink-plans-link:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}.ink-empty{display:block;width:100%;max-width:260px;min-height:44px;margin:4px auto 8px;padding:4px;border:0;border-radius:12px;background:none;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.ink-empty:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.ink-empty .ink-figure{display:block;width:100%;height:auto;overflow:visible}.ink-empty-counter{max-width:200px;margin-top:0}.ink-empty-note{margin:0 0 6px;text-align:center}.ink-empty-projects [data-part=ball]{transform-box:view-box;transform-origin:34px 65px;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.ink-empty-projects [data-part=shadow]{transform-box:view-box;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.ink-empty-projects [data-part=trail]{stroke-dasharray:1 1;stroke-dashoffset:.88;transition:stroke-dashoffset 1.1s cubic-bezier(.2,.7,.2,1)}.ink-empty-projects[data-state=end] [data-part=ball]{transform:translate(72px) rotate(1turn)}.ink-empty-projects[data-state=end] [data-part=shadow]{transform:translate(72px)}.ink-empty-projects[data-state=end] [data-part=trail]{stroke-dashoffset:0}.ink-empty-stash [data-part=bowl]{transform-box:view-box;transform-origin:80px 86px}.ink-empty-stash[data-state=beat-0] [data-part=bowl]{animation:ink-rock-a .9s ease-out}.ink-empty-stash[data-state=beat-1] [data-part=bowl]{animation:ink-rock-b .9s ease-out}@keyframes ink-rock-a{0%{transform:rotate(0)}22%{transform:rotate(-7deg)}48%{transform:rotate(5deg)}72%{transform:rotate(-2.5deg)}to{transform:rotate(0)}}@keyframes ink-rock-b{0%{transform:rotate(0)}22%{transform:rotate(-7deg)}48%{transform:rotate(5deg)}72%{transform:rotate(-2.5deg)}to{transform:rotate(0)}}.ink-empty-counter [data-part=yo]{stroke-dasharray:1 1;stroke-dashoffset:1}.ink-empty-counter[data-state=end] [data-part=yo]{stroke-dashoffset:0}.ink-empty-counter [data-part=hook]{transform-box:view-box}.ink-empty-counter[data-state=beat-0] [data-part=yo]{animation:ink-yo-a .9s ease-out forwards}.ink-empty-counter[data-state=beat-1] [data-part=yo]{animation:ink-yo-b .9s ease-out forwards}.ink-empty-counter[data-state=beat-0] [data-part=hook]{animation:ink-dip-a .9s ease-out}.ink-empty-counter[data-state=beat-1] [data-part=hook]{animation:ink-dip-b .9s ease-out}@keyframes ink-yo-a{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes ink-yo-b{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes ink-dip-a{0%,to{transform:translateY(0)}40%{transform:translateY(3px)}}@keyframes ink-dip-b{0%,to{transform:translateY(0)}40%{transform:translateY(3px)}}html[data-hand=left] .ink-empty-counter .ink-figure{transform:scaleX(-1)}html[data-calm="1"] .ink-empty *,html[data-calm="1"] .ink-empty{transition:none!important;animation:none!important}@media (prefers-reduced-motion: reduce){.ink-empty,.ink-empty *{transition:none!important;animation:none!important}}html[data-ink=on][data-look][data-theme][data-ink] .pond,html[data-ink=on][data-look][data-theme][data-ink] .meadow-mesh,html[data-ink=on][data-look][data-theme][data-ink] .petals{display:none!important}html[data-ink=on][data-look][data-theme] body .app{background-image:none}html[data-ink=on][data-look=plus][data-theme=light] body{background:var(--yuni-tile) repeat,var(--bg)!important}html[data-ink=on][data-look=plus][data-theme=dark] body{background:var(--yuni-tile-night) repeat,var(--bg)!important}html[data-ink=on][data-look][data-theme] .topbar,html[data-ink=on][data-look][data-theme] .yuni-footer{background:var(--ink-paper)!important;-webkit-backdrop-filter:none;backdrop-filter:none}html[data-ink=on][data-look][data-theme] .card{border-color:transparent;border-image:var(--ink-frame-sm) 24 fill / 24px / 0 round;background-color:transparent;background-image:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}html[data-ink=on][data-look][data-theme] .fn-card,html[data-ink=on][data-look][data-theme] .fn-hidden{border:1px solid transparent;border-image:var(--ink-frame) 24 fill / 24px / 0 round;background-color:transparent;background-image:none;box-shadow:none}html[data-ink=on][data-look][data-theme] .fn-card:before{display:none}html[data-ink=on][data-look][data-theme] .fn-card-title{display:inline-flex;align-items:center;gap:8px;color:var(--text)}html[data-ink=on][data-look][data-theme] .fn-card-title:before{display:none}html[data-ink=on][data-look][data-theme] .project-card{position:relative;padding-bottom:28px;border:1px solid transparent;border-image:var(--ink-frame-sm) 24 fill / 24px / 0 round;background:transparent;box-shadow:none}.ink-fig{position:absolute;right:12px;bottom:8px;padding:2px 6px;border:var(--ink-w-hair) solid var(--ink-line);border-radius:6px;background:var(--ink-card);color:var(--ink-line);font:700 .62rem/1.2 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;pointer-events:none}html[data-ink=on] .project-card.active .ink-fig{background:var(--ink-yarn-2);color:var(--ink-on-yarn)}html[data-ink=on][data-look][data-theme] .btn:not(.danger),html[data-ink=on][data-look][data-theme] .fn-card-actions .btn.fn-pill{border:var(--ink-w) solid var(--ink-line);border-radius:999px;color:var(--text);box-shadow:1px 1.5px 0 var(--ink-line);transition:transform 90ms ease-out,box-shadow 90ms ease-out,background-color .12s ease}html[data-ink=on][data-look][data-theme] .btn:not(.danger):not(.primary):not([aria-pressed=true]):not(.is-on):not(.active),html[data-ink=on][data-look][data-theme] .fn-card-actions .btn.fn-pill{background:var(--ink-card)}html[data-ink=on][data-look][data-theme] .btn.primary{background:var(--ink-yarn-2);color:var(--ink-on-yarn)}html[data-ink=on][data-look][data-theme] .btn:not(.danger):hover{transform:none}html[data-ink=on][data-look][data-theme] .btn:not(.danger):active,html[data-ink=on][data-look][data-theme] .btn:not(.danger).is-pressed{transform:translate(1px,1.5px);box-shadow:0 0 0 var(--ink-line)}html[data-ink=on][data-look][data-theme] .btn:disabled{box-shadow:none;opacity:.6}html[data-ink=on][data-look][data-theme] .icon-btn{border:var(--ink-w) solid var(--ink-line);background:var(--ink-card);color:var(--ink-line);box-shadow:1px 1.5px 0 var(--ink-line)}html[data-ink=on][data-look][data-theme] .icon-btn:active{transform:translate(1px,1.5px);box-shadow:0 0 0 var(--ink-line)}html[data-ink=on] .icon-btn .ink-icon{width:24px;height:24px}html[data-ink=on][data-look][data-theme] .fn-nav button{border-color:var(--ink-line)}html[data-ink=on][data-look][data-theme] .fn-nav button[aria-selected=true]{background:var(--ink-yarn-2);border:var(--ink-w) solid var(--ink-line);color:var(--ink-on-yarn);box-shadow:1px 1.5px 0 var(--ink-line)}html[data-ink=on][data-look][data-theme] .yh-q>span{border-color:var(--ink-line);color:var(--ink-line);background:var(--ink-card)}html[data-ink=on][data-look][data-theme] .yh-q.is-new>span{animation:none;background:var(--ink-yarn-1);box-shadow:0 0 0 2px var(--ink-card),0 0 0 3.5px var(--ink-yarn-3)}html[data-ink=on][data-contrast=high][data-look][data-theme] .fn-card,html[data-ink=on][data-contrast=high][data-look][data-theme] .card,html[data-ink=on][data-contrast=high][data-look][data-theme] .fn-hidden,html[data-ink=on][data-contrast=high][data-look][data-theme] .project-card{border:2px solid var(--text);border-image:none;border-radius:14px;background-color:var(--surface)}html[data-ink=on][data-contrast=high][data-look][data-theme] .btn:not(.danger),html[data-ink=on][data-contrast=high][data-look][data-theme] .icon-btn{box-shadow:none}
