.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:40;background:var(--paper);border-bottom:1px solid var(--line)}.site-header-bar{max-width:1208px;height:68px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:20px}.site-nav{flex:1;min-width:0;display:flex;justify-content:center}.site-nav-search,.site-menu-toggle{display:none}.site-nav-list{display:flex;align-items:center;gap:2px;margin:0;padding:0;list-style:none}.site-nav-trigger{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 13px;border:0;border-radius:999px;background:none;color:var(--plum);font-size:.95rem;font-weight:600;text-decoration:none;white-space:nowrap}.site-nav-trigger:hover,.site-nav-item.open>.site-nav-trigger{background:var(--accent-soft)}.site-nav-trigger[aria-current=page]{text-decoration:underline;text-decoration-color:var(--peach);text-decoration-thickness:3px;text-underline-offset:7px}.site-nav-chevron{transition:transform .15s}.site-nav-item.open .site-nav-chevron{transform:rotate(180deg)}.site-nav-panel{position:absolute;top:100%;left:0;right:0;background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 22px 32px -18px rgb(var(--shadow) / .28)}.site-nav-panel-inner{max-width:1208px;margin:0 auto;padding:24px 24px 30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,290px));justify-content:center;gap:16px 56px}.site-nav-heading{margin:0 0 8px;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.site-nav-column ul{margin:0;padding:0;list-style:none}@media(min-width:1080px){.site-nav-column.wide{grid-column:span 2}.site-nav-column.wide ul{columns:2;column-gap:48px}.site-nav-column.wide li{break-inside:avoid}}.site-nav-column a{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:0 -10px;padding:9px 10px;border-radius:8px;color:var(--ink);text-decoration:none}.site-nav-column a:hover{background:var(--accent-soft);color:var(--plum)}.site-nav-column a[aria-current=page]{color:var(--plum);font-weight:600}.site-nav-count{color:var(--muted);font-size:.85rem;font-variant-numeric:tabular-nums}.site-header-actions{flex:none;display:flex;align-items:center;gap:8px;margin-left:auto}.site-header-actions .account-menu{margin-left:0}@media(min-width:1080px)and (max-width:1239px){.site-header .brand img{width:172px}.site-nav-trigger{padding:8px 10px;font-size:.92rem}}@media(max-width:1079px){.site-header-bar{height:60px;padding:0 16px;gap:12px}.site-header-actions{order:2}.site-menu-toggle{order:3;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--plum);font-weight:600}.site-menu-toggle[aria-expanded=true]{background:var(--accent-soft);border-color:var(--rose)}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100dvh - 60px);overflow-y:auto;overscroll-behavior:contain;padding:14px 16px 24px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 22px 32px -18px rgb(var(--shadow) / .35)}.site-nav.open{display:block}.site-nav-search{display:flex;gap:8px;margin-bottom:6px}.site-nav-search input{flex:1;min-width:0;padding:10px 12px;font:inherit;font-size:16px;color:var(--text);background:var(--panel);border:1px solid var(--line-strong);border-radius:10px}.site-nav-search input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.site-nav-search button{padding:10px 16px;border:0;border-radius:10px;background:var(--plum);color:var(--paper);font-weight:600}.site-nav-list{display:block}.site-nav-item{border-bottom:1px solid var(--line)}.site-nav-trigger{width:100%;justify-content:space-between;min-height:54px;padding:12px 4px;border-radius:0;font-size:1.05rem}.site-nav-trigger:hover,.site-nav-item.open>.site-nav-trigger{background:none}.site-nav-panel{position:static;background:none;border:0;box-shadow:none}.site-nav-panel-inner{display:block;padding:0 0 14px}.site-nav-column+.site-nav-column{margin-top:14px}.site-nav-column a{margin:0;padding:11px 8px}}@media(max-width:440px){.site-header .brand img{width:160px}.site-header .account-trigger .label,.site-menu-toggle span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.site-header .account-trigger,.site-menu-toggle{min-width:44px;justify-content:center;padding-left:10px;padding-right:10px}}.site-footer{background:var(--plum);color:var(--paper)}.site-footer-inner{max-width:1160px;margin:0 auto;padding:56px 24px 36px;display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:56px}.site-footer-brand p{margin:14px 0 0;font-size:.92rem;line-height:1.6;color:#fbf6edd1}.site-footer-brand .site-footer-line{margin-top:18px;font-family:var(--font-display);font-size:1.3rem;line-height:1.3;color:var(--peach)}.site-footer-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:32px 24px}.site-footer .site-footer-links h2{margin:0 0 12px;font-family:var(--font-ui);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--peach)}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li a{display:inline-block;padding:5px 0;color:var(--paper);font-size:.95rem;text-decoration:none}.site-footer li a:hover{text-decoration:underline;text-decoration-color:var(--peach);text-underline-offset:3px}.site-footer :focus-visible{outline-color:var(--peach)}.site-footer-base{max-width:1160px;margin:0 auto;padding:20px 24px 32px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;border-top:1px solid rgb(251 246 237 / .18);font-size:.85rem;color:#fbf6edc7}.site-footer-base p{margin:0}.site-footer-legal{display:flex;flex-wrap:wrap;gap:4px 18px}.site-footer-legal a{color:var(--paper);text-decoration:none}.site-footer-legal a:hover{text-decoration:underline;text-decoration-color:var(--peach);text-underline-offset:3px}@media(max-width:760px){.site-footer-inner{grid-template-columns:1fr;gap:32px;padding:40px 16px 24px}.site-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer-base{padding:16px 16px 28px}}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]){--pcf-plum: #462c3d;--pcf-plum-hover: #35202e;--pcf-paper: #fbf6ed;--pcf-peach: #f3b99f;--pcf-rose: #d8a5ae;--pcf-ink: #302b2e;--pcf-muted: #74656e;--pcf-line: #ddd1d5;--pcf-field: #9a8591;--pcf-soft: #f5e8eb;--pcf-hover: #f4ede6;width:min(480px,calc(100vw - 32px))!important;max-width:calc(100vw - 32px)!important;max-height:calc(100vh - 32px)!important;max-height:calc(100dvh - 32px)!important;overflow:auto!important;overscroll-behavior:contain;padding:28px 28px 24px!important;border:1px solid var(--pcf-line)!important;border-radius:20px!important;background:var(--pcf-paper)!important;color:var(--pcf-ink)!important;font:400 15px/1.5 var(--font-ui, "Papercrumb DM Sans", system-ui, sans-serif)!important;box-shadow:0 2px 6px #462c3d1f,0 24px 64px #462c3d52;color-scheme:light}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"])[open]{animation:pcf-in .24s cubic-bezier(.2,.8,.2,1)}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"])::backdrop{background:#281a238c;animation:pcf-fade .24s ease-out}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]):before,:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]):after{content:"";position:absolute;border-radius:2px;pointer-events:none}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]):before{top:30px;right:40px;width:12px;height:12px;background:var(--pcf-plum);transform:rotate(18deg)}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]):after{top:22px;right:26px;width:8px;height:8px;background:var(--pcf-peach);box-shadow:4px 26px 0 -1px var(--pcf-rose);transform:rotate(-16deg)}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form{margin:0}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [data-title]{margin:0 0 6px!important;padding-right:48px;font-family:var(--font-display, "Papercrumb Fraunces", Georgia, serif);font-size:1.65rem;font-weight:500;line-height:1.15;letter-spacing:-.01em;color:var(--pcf-plum)}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [data-intro]{margin:0 0 20px;font-size:.94rem;color:var(--pcf-muted)}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>label{font-size:.92rem;font-weight:600;color:var(--pcf-plum)}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [data-type]:not([hidden]){display:grid;gap:8px;margin:0 0 16px}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>label:not([data-type],[data-reply]){margin:0 0 16px!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [data-reply]{margin:0 0 16px!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) :is(textarea,input[type=email],select){width:100%!important;max-width:100%!important;margin:8px 0 0!important;padding:11px 14px!important;border:1px solid var(--pcf-field)!important;border-radius:12px!important;background-color:#fff!important;color:var(--pcf-ink)!important;font:400 16px/1.45 var(--font-ui, "Papercrumb DM Sans", system-ui, sans-serif)!important;box-shadow:inset 0 1px 2px #462c3d0f;transition:border-color .15s}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) textarea{min-height:136px;resize:vertical}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) input[type=email]{min-height:46px}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) select[name=category]{min-height:46px!important;margin:0!important;padding-right:42px!important;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none' stroke='%23462c3d' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5.25 7 9.25l4-4'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 15px center!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) :is(textarea,input[type=email],select):hover:not(:disabled){border-color:var(--pcf-plum)!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) :is(textarea,input[type=email],select):focus-visible{border-color:var(--pcf-plum)!important;outline:2px solid var(--pcf-plum);outline-offset:1px}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) :is(textarea,input[type=email],select):disabled{background-color:var(--pcf-hover)!important;color:var(--pcf-muted)!important;cursor:not-allowed!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>img:not([hidden]){display:block;max-width:100%!important;max-height:210px!important;margin:0 auto 12px;padding:6px;border:1px solid var(--pcf-line);border-radius:10px;background:#fff;box-shadow:0 6px 18px #462c3d24;object-fit:contain!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>img+p{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 14px}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>img+p>label{position:relative;display:flex;flex:1 1 200px;align-items:center;gap:10px;min-height:50px;padding:12px 16px;border:1.5px dashed var(--pcf-field);border-radius:12px;background:#fff;color:var(--pcf-plum);font-size:.94rem;font-weight:600;cursor:pointer;transition:background-color .15s,border-color .15s}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>img+p>label:before{content:"";flex:none;width:20px;height:20px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'%3E%3Crect x='2.5' y='3.5' width='15' height='13' rx='2'/%3E%3Ccircle cx='7.2' cy='8' r='1.5'/%3E%3Cpath d='m3 15 4.5-4.5 3 3 2.5-2.5 4.5 4.5' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'%3E%3Crect x='2.5' y='3.5' width='15' height='13' rx='2'/%3E%3Ccircle cx='7.2' cy='8' r='1.5'/%3E%3Cpath d='m3 15 4.5-4.5 3 3 2.5-2.5 4.5 4.5' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>img+p>label:hover{border-color:var(--pcf-plum);background:var(--pcf-soft)}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>img+p>label:has(>input:focus-visible){outline:2px solid var(--pcf-plum);outline-offset:2px}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>img+p>label:has(>input:disabled){opacity:.55;cursor:not-allowed}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%!important;height:100%;min-height:0!important;max-width:none!important;margin:0;padding:0!important;border:0!important;border-radius:12px!important;opacity:0;cursor:pointer!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) input[type=file]::file-selector-button{cursor:pointer}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) input[type=file]:disabled,:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) input[type=file]:disabled::file-selector-button{cursor:not-allowed!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [data-privacy]{margin:0 0 14px;font-size:.82rem!important;line-height:1.5;color:var(--pcf-muted)}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [role=status]{margin:0 0 14px;padding:10px 14px;border-radius:10px;background:var(--pcf-soft);color:var(--pcf-plum);font-size:.9rem;font-weight:500}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [role=status]:empty{margin:0;padding:0;background:none}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form:has([data-cancel]:disabled)>[role=status]{background:#fff;box-shadow:inset 0 0 0 1px var(--pcf-line)}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form:has([data-cancel]:disabled)>[role=status]:not(:empty):before{content:"";display:inline-block;width:9px;height:9px;margin-right:10px;border-radius:2px;background:var(--pcf-plum);vertical-align:1px;animation:pcf-crumb 1.1s ease-in-out infinite}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form:has(button[type=submit][hidden])>[role=status]{background:#edf2ea;color:#34502f}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [role=status]+p{margin:0}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) button{min-height:46px!important;max-width:100%!important;padding:10px 20px!important;border:1px solid var(--pcf-line)!important;border-radius:10px!important;background:#fff!important;color:var(--pcf-plum)!important;font:600 15px/1.25 var(--font-ui, "Papercrumb DM Sans", system-ui, sans-serif)!important;white-space:normal;cursor:pointer!important;transition:background-color .15s,border-color .15s}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) button:hover:not(:disabled){border-color:var(--pcf-field)!important;background:var(--pcf-hover)!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) button:focus-visible{outline:2px solid var(--pcf-plum);outline-offset:2px}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) button:disabled{opacity:.5;cursor:not-allowed!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) button[type=submit]{min-width:112px;border-color:var(--pcf-plum)!important;background:var(--pcf-plum)!important;color:var(--pcf-paper)!important;box-shadow:0 6px 16px #462c3d38}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) button[type=submit]:hover:not(:disabled){border-color:var(--pcf-plum-hover)!important;background:var(--pcf-plum-hover)!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [data-remove]{min-height:44px!important;padding:8px 14px!important;font-size:.88rem!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [data-smaller]{margin:0 0 14px}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>div{flex-wrap:wrap;gap:10px!important;margin-top:4px;padding-top:18px;border-top:1px solid var(--pcf-line)}@keyframes pcf-in{0%{opacity:0;transform:translateY(12px) scale(.98)}}@keyframes pcf-fade{0%{opacity:0}}@keyframes pcf-crumb{50%{transform:rotate(90deg) scale(.7);opacity:.55}}@media(max-width:480px){:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]){padding:24px 20px 20px!important;border-radius:18px!important}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]):before{top:26px;right:32px}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]):after{top:18px;right:18px}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [data-title]{font-size:1.45rem}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) form>div>button{flex:1 1 0}}@media(prefers-reduced-motion:reduce){:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"])[open],:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"])::backdrop,:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) [role=status]:before{animation:none}:is(dialog[aria-label="Send feedback"],dialog[aria-label="Get help"]) *{transition:none!important}}.account-menu{position:relative;margin-left:auto}.topbar-actions .account-menu{margin-left:0}.account-popover{position:absolute;right:0;top:calc(100% + 6px);z-index:50;min-width:220px;max-width:min(300px,calc(100vw - 24px));padding:6px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 28px rgb(var(--shadow) / .18)}.account-popover button{display:block;width:100%;text-align:left;padding:9px 10px;border:0;border-radius:6px;background:none;font-size:.9rem;cursor:pointer}.account-popover button:hover,.account-popover button:focus-visible{background:var(--accent-soft)}.account-email{margin:6px 10px 2px;font-weight:600;font-size:.9rem;overflow-wrap:anywhere}.account-note{margin:0 10px 6px;color:var(--muted);font-size:.8rem}.account-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:16px;background:#281a2380}.account-dialog{width:min(420px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:24px;background:var(--panel);color:var(--text);border-radius:14px;box-shadow:0 16px 48px rgb(var(--shadow) / .28)}.account-dialog h2{margin:0 0 6px;font-size:1.3rem}.account-intro,.account-privacy,.account-switch{color:var(--muted);font-size:.88rem;line-height:1.45}.account-dialog form label{display:block;margin:14px 0 0;font-size:.9rem;font-weight:500}.account-dialog input{display:block;width:100%;margin-top:6px;padding:10px 12px;font:inherit;font-size:16px;color:var(--text);border:1px solid var(--line-strong);border-radius:8px}.account-dialog input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.account-message{margin:14px 0 0;padding:10px 12px;border-radius:8px;background:#edf2ea;color:#34502f;font-size:.88rem}.account-message.error{background:#fff5f5;color:var(--danger)}.account-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.account-switch{margin:16px 0 0}.account-privacy{margin:10px 0 0;font-size:.8rem}button.link{padding:0;border:0;background:none;color:var(--accent);font-weight:600;cursor:pointer;text-decoration:underline}.account-popover a.account-menu-link{display:block;padding:9px 10px;border-radius:6px;color:inherit;font-size:.9rem;font-weight:600;text-decoration:none}.account-popover a.account-menu-link:hover,.account-popover a.account-menu-link:focus-visible{background:var(--accent-soft)}.account-dialog button.account-forgot,.account-dialog button.account-resend{display:inline-block;margin-top:10px;font-size:.88rem}.account-hint{margin:6px 0 0;color:var(--muted);font-size:.82rem}.account-dialog .account-actions{flex-wrap:wrap}.fav-button{--heart: #b4234f;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;padding:0;background:none;color:var(--plum);cursor:pointer;font:inherit}.fav-button:focus-visible{outline:2px solid var(--plum);outline-offset:2px}.fav-button.on{color:var(--heart)}.fav-button.on .heart-icon{animation:fav-pop .28s ease-out}@keyframes fav-pop{50%{transform:scale(1.22)}}@media(prefers-reduced-motion:reduce){.fav-button.on .heart-icon{animation:none}}.fav-host{position:relative}.fav-button.card{position:absolute;z-index:2;top:8px;right:8px;width:40px;height:40px;border-radius:50%;background:#fffffff2;box-shadow:0 1px 3px rgb(var(--shadow) / .22),0 4px 12px rgb(var(--shadow) / .12)}.fav-button.card:hover{background:#fff;color:var(--heart)}.fav-button.inline{min-height:48px;padding:10px 18px;border:1px solid var(--line-strong);border-radius:10px;background:var(--panel);font-weight:600}.fav-button.inline:hover{background:var(--accent-soft)}.fav-button.inline.on{border-color:var(--heart);background:#fdf0f3}.fav-button.inline.on span{color:var(--plum)}.site-favourites{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:6px 10px;border-radius:999px;color:var(--plum);text-decoration:none;font-weight:600;font-size:.9rem}.site-favourites:hover{background:var(--hover)}.site-favourites:focus-visible{outline:2px solid var(--plum);outline-offset:2px}.site-favourites-count{min-width:20px;padding:1px 6px;border-radius:999px;background:var(--plum);color:var(--paper);font-size:.75rem;text-align:center}.favs-main{max-width:1120px;margin:0 auto;padding:24px 24px 64px}.favs-main h1{font-family:var(--font-display);font-weight:500;color:var(--plum);font-size:clamp(1.7rem,3.2vw,2.3rem);margin:0 0 10px}.favs-intro{color:var(--muted);line-height:1.55;margin:0 0 20px;max-width:62ch}.favs-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:28px}.favs-hint{color:var(--muted);font-size:.9rem}.favs-empty{padding:32px 24px;border:1px dashed var(--line-strong);border-radius:12px;background:var(--panel);text-align:center}.favs-empty h2{font-family:var(--font-display);font-weight:500;color:var(--plum);margin:0 0 8px}.favs-empty p{color:var(--muted);margin:0 0 18px}@media(max-width:760px){.favs-main{padding:16px 16px 48px}.site-favourites .label{display:none}}.tp{min-height:100vh;background:var(--bg)}a.brand{text-decoration:none}.tp-main{max-width:1120px;margin:0 auto;padding:20px 24px 64px}.tp-crumbs{font-size:.85rem;color:var(--muted);margin-bottom:18px}.tp-crumbs a{color:var(--accent);text-decoration:none}.tp-crumbs a:hover{text-decoration:underline}.tp-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}.tp-preview img,.tp-preview-missing{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain;border-radius:6px;box-shadow:0 10px 34px rgb(var(--shadow) / .18);background:var(--panel)}.tp-preview-missing{display:grid;place-items:center;color:var(--muted);font-size:.9rem;padding:16px;text-align:center}.tp-kicker{margin:4px 0 6px;color:var(--muted);font-size:.85rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.tp h1{margin:0 0 14px;font-size:clamp(1.6rem,3.2vw,2.3rem);line-height:1.15;letter-spacing:-.01em}.tp-summary{font-size:1.05rem;line-height:1.6;margin:0 0 22px}a.tp-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border-radius:10px;background:var(--accent);color:var(--accent-text);font-weight:600;text-decoration:none}a.tp-cta:hover{background:var(--accent-hover)}.tp-note{color:var(--muted);font-size:.88rem;margin:10px 0 18px}.tp-tags{display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0;list-style:none}.tp-tags li{padding:4px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.8rem}.tp-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:48px}.tp h2{font-size:1.4rem;margin:0 0 12px}.tp-list{margin:0;padding-left:20px;line-height:1.6}.tp-list li+li{margin-top:6px}.tp-wording,.tp-steps,.tp-related{margin-top:44px}.tp-wording>p{color:var(--muted);margin:0 0 12px}.tp-wording blockquote{margin:0;padding:18px 22px;background:var(--panel);border-left:4px solid var(--peach);border-radius:8px}.tp-wording blockquote p{margin:0;line-height:1.7}.tp-steps ol{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:0;margin:0 0 24px;list-style:none;counter-reset:step}.tp-steps li{counter-increment:step;padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:10px;line-height:1.5;color:var(--muted)}.tp-steps li:before{content:counter(step);display:grid;place-items:center;width:28px;height:28px;margin-bottom:10px;border-radius:50%;background:var(--peach);color:var(--plum);font-weight:700}.tp-steps strong{display:block;color:var(--text);margin-bottom:4px}.tp-related ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px;padding:0;margin:0;list-style:none}.tp-related a{display:block;color:var(--text);text-decoration:none;font-size:.88rem;line-height:1.35}.tp-related img,.tp-related .tp-preview-missing{display:block;width:100%;height:auto;margin-bottom:8px;border-radius:4px;box-shadow:0 4px 14px rgb(var(--shadow) / .14);background:var(--panel)}.tp-related a:hover span{text-decoration:underline}.tp-not-found{text-align:center;padding-top:80px}@media(max-width:820px){.tp-main{padding:16px 16px 48px}.tp-hero,.tp-columns{grid-template-columns:1fr;gap:24px}.tp-preview img,.tp-preview-missing{max-height:60vh;margin:0 auto;width:auto;max-width:100%}.tp-steps ol{grid-template-columns:1fr}a.tp-cta{width:100%}}.tp-collection{margin:0 0 18px;padding:10px 14px;border-left:3px solid var(--peach);background:var(--panel);border-radius:6px;font-size:.95rem;line-height:1.5}.tp-collection a{color:var(--accent);font-weight:600}.tp-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}@media(max-width:820px){.tp-actions a.tp-cta,.tp-actions .fav-button.inline{flex:1 1 100%}}.acct-main{max-width:1120px;margin:0 auto;padding:28px 24px 72px}.acct-main.narrow{max-width:640px}.acct-main h1{margin:0 0 8px}.acct-main h1:focus:not(:focus-visible),.acct-card h2:focus:not(:focus-visible){outline:none}.acct-intro{margin:0 0 24px;color:var(--muted);line-height:1.55;overflow-wrap:anywhere}.acct-intro strong{color:var(--text)}.acct-quiet{color:var(--muted)}.acct>.acct-main>.account-live .account-message{margin:4px 0 20px;max-width:760px}.acct-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:36px;align-items:start}.acct-toc{position:sticky;top:92px}.acct-toc ul{display:grid;gap:2px;margin:0;padding:0;list-style:none}.acct-toc a{display:block;padding:8px 12px;border-radius:8px;color:var(--plum);font-weight:500;text-decoration:none}.acct-toc a:hover{background:var(--accent-soft)}.acct-sections{display:grid;gap:20px;max-width:760px}.acct-card{padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:14px;scroll-margin-top:88px}.acct-card h2{margin:0 0 10px;font-size:1.35rem}.acct-card p{margin:0 0 14px;line-height:1.55}.acct-card p:last-child{margin-bottom:0}.acct-welcome{max-width:640px}.acct-form label{display:block;margin:16px 0 6px;font-weight:600;font-size:.95rem}.acct-form>label:first-child,.acct-form>:first-child label:first-child{margin-top:0}.acct-form input:not([type=checkbox],[type=radio]){display:block;width:100%;max-width:420px;padding:11px 12px;font:inherit;font-size:16px;color:var(--text);background:#fff;border:1px solid var(--line-strong);border-radius:8px}.acct-form input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.acct-form input[aria-invalid=true]{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}.acct-optional{color:var(--muted);font-weight:400}.acct-hint{display:block;margin:6px 0 0;max-width:62ch;color:var(--muted);font-size:.88rem;line-height:1.5}.acct-card p.acct-hint{margin-bottom:0}.acct-form label.acct-check{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font-weight:500;font-size:.9rem;cursor:pointer}.acct-check input{width:18px;height:18px;margin:0;accent-color:var(--plum)}.acct-inline{display:flex;flex-wrap:wrap;gap:10px;align-items:center;max-width:520px}.acct-inline input:not([type=checkbox]){flex:1 1 220px;width:auto}.acct-code{max-width:200px!important;letter-spacing:.2em}.acct-confirm{max-width:240px!important}.acct-pending{padding:10px 14px;border-left:3px solid var(--peach);background:#fdf4ee;border-radius:6px;overflow-wrap:anywhere}.acct-facts{display:grid;gap:10px;margin:0 0 6px}.acct-facts div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px}.acct-facts dt{color:var(--muted)}.acct-facts dd{margin:0;font-weight:600;overflow-wrap:anywhere}.acct-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}.acct .account-actions{justify-content:flex-start;flex-wrap:wrap;margin-top:16px}.acct-main button.primary,.acct-main button.secondary,.acct-main button.danger,.acct-main button.danger-outline,.acct-main a.acct-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px 18px;border:1px solid transparent;border-radius:10px;font-size:.95rem;font-weight:600;white-space:nowrap}.acct-main button.secondary,.acct-main a.acct-button{background:var(--panel);border-color:var(--line-strong);color:var(--plum)}.acct-main button.secondary:not(:disabled):hover,.acct-main a.acct-button:hover{background:var(--accent-soft)}.acct-main a.acct-button{text-decoration:none}.acct-main a.acct-button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.acct-main a.acct-button.primary:hover{background:var(--accent-hover)}.acct-main button.danger:not(:disabled):hover{background:#a82222}.acct-main button.danger-outline{background:var(--panel);border-color:var(--danger);color:var(--danger)}.acct-main button.danger-outline:hover{background:#fff5f5}.acct-card .account-message{max-width:62ch}.acct-designs{display:grid;margin:8px 0 0;padding:0;list-style:none}.acct-designs li{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.acct-designs li:last-child{border-bottom:1px solid var(--line)}.acct-design-thumb{display:grid;place-items:center;width:56px;max-height:76px;overflow:hidden;border-radius:4px;background:var(--workspace);box-shadow:0 2px 8px rgb(var(--shadow) / .14);color:var(--muted);aspect-ratio:3 / 4}.acct-design-thumb img{display:block;width:100%;height:100%;object-fit:cover}.acct-design-info{display:grid;gap:2px;min-width:0}.acct-design-name{font-weight:600;overflow-wrap:anywhere}.acct-design-meta{color:var(--muted);font-size:.85rem}.acct-design-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.acct-design-ask{flex-basis:100%;text-align:right;color:var(--danger);font-size:.88rem;font-weight:600}.acct-designs li.asking{background:snow}.acct-empty{padding:20px;border:1px dashed var(--line-strong);border-radius:10px}.acct-favs{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:14px;margin:0 0 18px;padding:0;list-style:none}.acct-favs a{display:grid;gap:6px;color:var(--text);text-decoration:none;font-size:.8rem;line-height:1.3}.acct-favs a:hover .acct-favs-name{text-decoration:underline}.acct-favs-thumb{display:block;overflow:hidden;border-radius:4px;background:var(--workspace);box-shadow:0 2px 8px rgb(var(--shadow) / .14)}.acct-favs-thumb img{display:block;width:100%;height:100%;object-fit:cover}.acct-favs-name{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.acct-card.danger{border-color:#e9b9b9}.acct-card.danger h2{color:var(--danger)}.acct-list{margin:0 0 14px;padding-left:20px;line-height:1.6}.acct-choices{margin:0 0 4px;padding:0;border:0}.acct-choices legend{padding:0;font-weight:600;font-size:.95rem}.acct-form label.acct-choice{display:flex;gap:10px;align-items:flex-start;max-width:520px;margin:10px 0 0;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font-weight:400;cursor:pointer}.acct-choice:has(input:checked){border-color:var(--plum);background:var(--accent-soft)}.acct-choice input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--plum)}.acct-choice strong{display:block;font-weight:600}.acct-choice .acct-hint{margin-top:2px}@media(max-width:860px){.acct-layout{grid-template-columns:1fr}.acct-toc{display:none}}@media(max-width:600px){.acct-main{padding:18px 16px 56px}.acct-card{padding:18px 16px}.acct-facts div{grid-template-columns:1fr;gap:2px}.acct-designs li{grid-template-columns:48px minmax(0,1fr);gap:10px 12px}.acct-design-thumb{width:48px}.acct-design-actions{grid-column:1 / -1;justify-content:flex-start}.acct-design-ask{text-align:left}.acct-design-actions>*{flex:1 1 0}.acct-design-actions>.acct-design-ask{flex-basis:100%}.acct-actions>button,.acct-actions>a.acct-button,.acct .account-actions>button{flex:1 1 100%}.acct-inline button{flex:1 1 100%}}.acct-card p a,.acct-intro a{color:var(--accent);font-weight:600}.acct-facts+.acct-form,.acct-card form+.acct-hint,.acct-actions+.acct-hint{margin-top:16px}.cp-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:center}.cp-intro .tp-summary+.tp-summary{margin-top:-8px}.cp-fan{position:relative;height:380px}.cp-fan-card{position:absolute;top:50%;left:50%;width:auto;height:auto;max-width:54%;max-height:88%;border-radius:6px;background:var(--panel);box-shadow:0 10px 30px rgb(var(--shadow) / .2);transform:translate(-50%,-50%)}.cp-fan.count-3 .card-1{transform:translate(-92%,-46%) rotate(-7deg)}.cp-fan.count-3 .card-3{transform:translate(-8%,-46%) rotate(7deg)}.cp-fan.count-2 .card-1{transform:translate(-80%,-48%) rotate(-5deg)}.cp-fan.count-3 .card-2,.cp-fan.count-2 .card-2{z-index:1}.cp-pieces{margin-top:44px}.cp-pieces .template-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}@media(max-width:820px){.cp-hero{grid-template-columns:1fr;gap:16px}.cp-fan{order:-1;height:230px}.cp-pieces .template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.browse-crumbs{margin:0 0 16px;font-size:.85rem;color:var(--muted)}.browse-crumbs a{color:var(--accent);text-decoration:none}.browse-crumbs a:hover{text-decoration:underline}.gallery-intro+.gallery-intro{margin-top:-8px}.gallery-main .gallery-intro{max-width:760px;line-height:1.6}ul.chips{margin:0 0 12px;padding:0;list-style:none}.chips a{display:inline-block;padding:7px 14px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--text);font-size:.9rem;text-decoration:none}.chips a:not([aria-current]):hover{background:var(--hover)}.chips a[aria-current=page]{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.browse-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}a.browse-button{display:inline-flex;align-items:center;padding:8px 14px;border-radius:8px;background:var(--accent);color:var(--accent-text);font-size:.9rem;font-weight:500;text-decoration:none}a.browse-button:hover{background:var(--accent-hover)}.browse-related{margin-top:56px;padding-top:28px;border-top:1px solid var(--line)}.browse-related h2{margin:0 0 14px;font-family:var(--font-display);font-weight:500;font-size:1.4rem;color:var(--plum)}.browse-related ul{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}.browse-related a{display:inline-block;padding:10px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--plum);font-weight:600;text-decoration:none}.browse-related a:hover{border-color:var(--rose);background:var(--accent-soft)}@media(max-width:760px){ul.chips{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 12px;padding:2px 16px 8px;scrollbar-width:none}ul.chips li{flex:none}}.legal{max-width:760px;margin:0 auto;padding:44px 24px 80px;line-height:1.65;overflow-wrap:break-word}.legal h1{margin:0 0 6px;font-family:var(--font-display);font-size:clamp(2rem,5vw,2.75rem);line-height:1.15;color:var(--plum)}.legal-updated{margin:0 0 22px;color:var(--muted);font-size:.9rem}.legal-intro p{margin:0 0 12px;font-size:1.08rem}.legal-toc{margin:28px 0 8px;padding:18px 22px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.legal .legal-toc h2{margin:0 0 8px;font-family:var(--font-ui);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.legal-toc ol{margin:0;padding-left:1.4em;columns:2;column-gap:36px}.legal-toc li{break-inside:avoid;padding:2px 0}.legal section{scroll-margin-top:88px}.legal h2{margin:40px 0 10px;font-family:var(--font-display);font-size:1.45rem;line-height:1.25;color:var(--plum)}.legal h3{margin:24px 0 4px;font-size:1.05rem}.legal p{margin:0 0 12px}.legal ul{margin:0 0 12px;padding-left:1.3em}.legal li{margin:6px 0}.legal a{color:var(--plum);text-decoration-thickness:1px;text-underline-offset:2px}.legal em{color:var(--muted)}.legal-note{padding:12px 16px;background:var(--accent-soft);border-radius:10px}.legal-table-wrap{overflow-x:auto;margin:12px 0 16px}.legal-table{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.5}.legal-table th,.legal-table td{padding:10px 12px 10px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.legal-table thead th{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.legal-table tbody th{width:38%;font-weight:600}.legal-control{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin:16px 0;padding:16px 18px;background:var(--panel);border:1px solid var(--line);border-radius:12px}.legal .legal-control p{flex:1 1 260px;margin:0}.legal-others{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:48px;padding-top:20px;border-top:1px solid var(--line)}@media(max-width:640px){.legal{padding:28px 16px 56px}.legal-toc ol{columns:1}}.home{min-height:100vh;background:var(--bg);overflow-x:clip}.home-wrap{max-width:1160px;margin:0 auto;padding:0 24px}.home main h1,.home main h2{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em;color:var(--plum)}.home-kicker{margin:0 0 12px;font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--plum)}.home-hero{padding:56px 0 64px}.home-hero-inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px;align-items:center}.home main h1{margin:0 0 18px;font-size:clamp(2.15rem,4.3vw,3.4rem);line-height:1.07}.home-lead{max-width:560px;margin:0 0 28px;font-size:1.1rem;line-height:1.6;color:var(--ink)}.home-search{max-width:580px}.home-search label{display:block;margin-bottom:8px;font-weight:600;color:var(--plum)}.home-search-field{position:relative;display:flex;align-items:center;padding:6px;background:var(--panel);border:1px solid var(--line-strong);border-radius:999px;box-shadow:0 8px 26px rgb(var(--shadow) / .1)}.home-search-field:focus-within{outline:2px solid var(--accent);outline-offset:2px}.home-search-icon{flex:none;margin:0 4px 0 12px;color:var(--muted)}.home-search input{flex:1;min-width:0;padding:10px 8px;font:inherit;font-size:1.05rem;color:var(--text);background:none;border:0;outline:none}.home-search button{flex:none;min-height:46px;padding:0 24px;border:0;border-radius:999px;background:var(--plum);color:var(--paper);font-weight:600}.home-search button:hover{background:var(--plum-hover)}.home-popular{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:18px;font-size:.9rem}.home-popular>span{color:var(--muted)}.home-popular ul{display:contents;list-style:none}.home-popular a{display:inline-block;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--plum);text-decoration:none}.home-popular a:hover{border-color:var(--rose);background:var(--accent-soft)}.home-hero-art{position:relative;aspect-ratio:1 / .92;border-radius:36px;background:var(--peach)}.home-hero-cards{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:0;list-style:none}.home-hero-card{position:absolute;width:40%;transition:translate .5s cubic-bezier(.2,.8,.2,1),rotate .5s cubic-bezier(.2,.8,.2,1)}.home-hero-card a{display:block;border-radius:4px;animation:home-settle 1.15s cubic-bezier(.2,.75,.25,1) backwards;animation-delay:calc(var(--home-clock, 0ms) + var(--settle-delay, 0ms))}@keyframes home-settle{0%{transform:translate(var(--settle-x, 0%),30px) rotate(var(--settle-turn, 0deg)) scale(.95)}}.home-hero-card img{display:block;width:100%;height:auto;border-radius:4px;background:var(--panel);box-shadow:0 2px 4px rgb(var(--shadow) / .12),0 18px 40px rgb(var(--shadow) / .28)}.home-hero-card.card-1{left:6%;top:17%;rotate:-8deg;--settle-x: 44%;--settle-turn: 7deg;--settle-delay: 90ms}.home-hero-card.card-2{left:29%;top:7%;width:43%;z-index:2;rotate:1.5deg;--settle-turn: -1.5deg}.home-hero-card.card-3{right:6%;top:20%;rotate:8deg;--settle-x: -44%;--settle-turn: -7deg;--settle-delay: .17s}.home-hero-cards.count-1 .card-1,.home-hero-cards.count-2 .card-1{left:12%}.home-hero-card:hover,.home-hero-card:focus-within{z-index:3}@media(hover:hover){.home-hero-cards:hover .card-1{translate:-10px 2px;rotate:-10deg}.home-hero-cards:hover .card-3{translate:10px 2px;rotate:10deg}}.home-hero-card.card-1:hover,.home-hero-card.card-1:focus-within{translate:-10px -10px;rotate:-5deg}.home-hero-card.card-2:hover,.home-hero-card.card-2:focus-within{translate:0 -10px;rotate:0deg}.home-hero-card.card-3:hover,.home-hero-card.card-3:focus-within{translate:10px -10px;rotate:5deg}.home-crumb{position:absolute;border-radius:3px;animation:home-drift var(--drift-time, 10s) ease-in-out infinite;animation-delay:calc(var(--home-clock, 0ms) - var(--drift-phase, 0s))}@keyframes home-drift{0%,to{translate:0 0;rotate:0deg}35%{translate:var(--drift-x1, 6px) var(--drift-y1, -8px);rotate:var(--drift-turn1, 16deg)}70%{translate:var(--drift-x2, -4px) var(--drift-y2, 6px);rotate:var(--drift-turn2, -10deg)}}.home-crumb-1{top:-14px;right:14%;width:22px;height:22px;background:var(--plum);transform:rotate(18deg);--drift-time: 11s;--drift-x1: -7px;--drift-y1: -9px;--drift-turn1: 22deg;--drift-x2: 5px;--drift-y2: 4px;--drift-turn2: -8deg}.home-crumb-2{top:22px;right:7%;width:12px;height:12px;background:var(--paper);transform:rotate(-16deg);--drift-time: 8.5s;--drift-phase: 3s;--drift-x1: 6px;--drift-y1: 7px;--drift-turn1: -26deg;--drift-x2: -5px;--drift-y2: -6px;--drift-turn2: 14deg}.home-crumb-3{bottom:9%;left:-12px;width:18px;height:18px;background:var(--sage);transform:rotate(30deg);--drift-time: 12.5s;--drift-phase: 6s;--drift-x1: 5px;--drift-y1: -10px;--drift-turn1: 18deg;--drift-x2: -3px;--drift-y2: -3px;--drift-turn2: -12deg}.home-crumb-4{bottom:-10px;right:30%;width:14px;height:14px;background:var(--rose);transform:rotate(-24deg);--drift-time: 9.5s;--drift-phase: 1.5s;--drift-x1: -8px;--drift-y1: -6px;--drift-turn1: -20deg;--drift-x2: 6px;--drift-y2: -9px;--drift-turn2: 12deg}.home-crumb-5{top:7%;left:9%;width:10px;height:10px;background:var(--paper);transform:rotate(24deg);--drift-time: 10.5s;--drift-phase: 4.5s;--drift-x1: 7px;--drift-y1: 5px;--drift-turn1: 30deg;--drift-x2: 2px;--drift-y2: -6px;--drift-turn2: -14deg}.home-crumb-6{bottom:8%;left:21%;width:8px;height:8px;border-radius:2px;background:var(--plum);transform:rotate(-12deg);--drift-time: 9s;--drift-phase: 7s;--drift-x1: -5px;--drift-y1: -7px;--drift-turn1: -28deg;--drift-x2: 6px;--drift-y2: 3px;--drift-turn2: 16deg}.home-section{padding-top:40px;padding-bottom:40px}.home-row+.home-row{border-top:1px solid var(--line)}.home-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:8px 24px;margin-bottom:22px}.home main h2{margin:0 0 6px;font-size:clamp(1.55rem,2.6vw,2.05rem);line-height:1.15}.home-section-head p{margin:0;color:var(--muted)}.home-see-all{flex:none;padding:8px 0;color:var(--plum);font-weight:600;text-decoration:underline;text-decoration-color:var(--peach);text-decoration-thickness:2px;text-underline-offset:5px}.home-see-all:hover{text-decoration-color:var(--plum)}.home-row-links{display:flex;flex-wrap:wrap;gap:8px;margin:-8px 0 20px;padding:0;list-style:none}.home-row-links a{display:inline-block;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--plum);font-size:.88rem;text-decoration:none}.home-row-links a:hover{border-color:var(--rose);background:var(--accent-soft)}.home-tiles{display:flex;flex-wrap:wrap;justify-content:center;gap:22px 16px;margin:0;padding:0;list-style:none}.home-tiles>li{flex:0 0 calc((100% - 6 * 16px) / 7);min-width:0}.home-tile{display:flex;flex-direction:column;color:var(--ink);text-decoration:none}.home-tile-art{display:grid;place-items:center;aspect-ratio:4 / 5;container-type:inline-size;margin-bottom:10px;border-radius:18px;overflow:hidden;background:#fbe3d6;transition:translate .35s cubic-bezier(.2,.8,.2,1)}.home-tile:hover .home-tile-art,.home-tile:focus-visible .home-tile-art{translate:0 -4px}.home-tile.tint-1 .home-tile-art{background:#f5e1e5}.home-tile.tint-2 .home-tile-art{background:#e4ebe0}.home-tile.tint-3 .home-tile-art{background:#f1e6d6}.home-tile-art img{display:block;width:66%;height:auto;max-height:84%;object-fit:contain;border-radius:3px;background:var(--panel);box-shadow:0 2px 4px rgb(var(--shadow) / .1),0 10px 22px rgb(var(--shadow) / .2);transform:rotate(-3deg);transition:transform .35s cubic-bezier(.2,.8,.2,1)}.home-tile:hover .home-tile-art img,.home-tile:focus-visible .home-tile-art img{transform:rotate(0) scale(1.04)}.home-tile-paper{position:relative;display:grid;place-items:center;width:70%;aspect-ratio:5 / 7;padding:8%;border-radius:3px;background:var(--paper);box-shadow:0 2px 4px rgb(var(--shadow) / .1),0 10px 22px rgb(var(--shadow) / .2);outline:1px solid var(--rose);outline-offset:-7px;font-family:var(--font-display);font-size:clamp(.66rem,7.4cqi,1rem);line-height:1.2;text-align:center;color:var(--plum);transform:rotate(-3deg);transition:transform .35s cubic-bezier(.2,.8,.2,1)}.home-tile-paper:before,.home-tile-paper:after{content:"";position:absolute;top:14%;border-radius:1.5px;transform:rotate(18deg)}.home-tile-paper:before{right:16%;width:8px;height:8px;background:var(--plum)}.home-tile-paper:after{right:10%;top:22%;width:5px;height:5px;background:var(--peach)}.home-tile:hover .home-tile-paper,.home-tile:focus-visible .home-tile-paper{transform:rotate(0) scale(1.04)}.home-tile-name{font-weight:600;color:var(--plum);line-height:1.3}.home-tile-count{margin-top:2px;font-size:.85rem;color:var(--muted)}.home-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px 18px;margin:0;padding:0;list-style:none}.home-card{display:flex;flex-direction:column;color:var(--ink);text-decoration:none}.home-card-art{display:grid;place-items:center;aspect-ratio:4 / 5;margin-bottom:10px;border-radius:14px;background:#f3ebe1;transition:translate .35s cubic-bezier(.2,.8,.2,1)}.home-card:hover .home-card-art,.home-card:focus-visible .home-card-art{translate:0 -4px}.home-card-art img{display:block;width:70%;height:auto;max-height:86%;object-fit:contain;border-radius:3px;background:var(--panel);box-shadow:0 2px 4px rgb(var(--shadow) / .1),0 8px 20px rgb(var(--shadow) / .16);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}.home-card:hover .home-card-art img,.home-card:focus-visible .home-card-art img{transform:translateY(-3px) rotate(-1.5deg);box-shadow:0 2px 4px rgb(var(--shadow) / .1),0 16px 30px rgb(var(--shadow) / .22)}.home-cards .fav-button.card{transition:translate .35s cubic-bezier(.2,.8,.2,1)}.home-cards>li:has(.home-card:hover,.home-card:focus-visible) .fav-button.card{translate:0 -4px}.home-card-missing{padding:16px;font-size:.85rem;text-align:center;color:var(--muted)}.home-card-name{font-weight:600;line-height:1.3}.home-card:hover .home-card-name{text-decoration:underline;text-decoration-color:var(--peach);text-decoration-thickness:2px;text-underline-offset:3px}.home-card-detail{margin-top:3px;font-size:.85rem;line-height:1.35;color:var(--muted)}.home-how{margin:32px 0 8px;padding:56px 0 60px;background:var(--peach);color:var(--plum)}.home-how h2{margin-bottom:28px}.home-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none;counter-reset:step}.home-steps li{position:relative;padding:26px 24px 24px;border-radius:18px;background:var(--paper);counter-increment:step}.home-steps li:after{content:counter(step);position:absolute;top:20px;right:22px;font-family:var(--font-display);font-size:2.4rem;line-height:1;color:#a36d79}.home-step-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:16px;border-radius:50%;background:var(--plum);color:var(--paper)}.home-steps h3,.home-benefits h3{margin:0 0 6px;font-size:1.1rem;color:var(--plum)}.home-steps p{margin:0;line-height:1.55;color:var(--ink)}.home-benefits ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:18px 0 0;padding:0;list-style:none}.home-benefits li{padding:20px 20px 22px;border:1px solid var(--line);border-top:4px solid var(--sage);border-radius:14px;background:var(--panel)}.home-benefits li:nth-child(2){border-top-color:var(--peach)}.home-benefits li:nth-child(3){border-top-color:var(--rose)}.home-benefits li:nth-child(4){border-top-color:var(--plum)}.home-benefits p{margin:0;line-height:1.55;color:var(--muted)}.home-about{max-width:820px;padding-bottom:72px}.home-about p{line-height:1.7}.home-about a{color:var(--plum);text-decoration-color:var(--rose);text-underline-offset:3px}.home-about a:hover{text-decoration-color:var(--plum)}.home-reveal{opacity:0;transform:translateY(26px)}.home-reveal.is-revealed{opacity:1;transform:none;transition:opacity .7s ease-out,transform .9s cubic-bezier(.2,.7,.2,1)}.home-reveal :is(.home-tiles,.home-cards,.home-steps)>li,.home-reveal.home-benefits li{opacity:0;transform:translateY(14px)}.home-reveal.is-revealed :is(.home-tiles,.home-cards,.home-steps)>li,.home-reveal.is-revealed.home-benefits li{opacity:1;transform:none;transition:opacity .6s ease-out,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(.12s + var(--reveal-step, 0) * 60ms)}.home-reveal li:nth-child(2){--reveal-step: 1}.home-reveal li:nth-child(3){--reveal-step: 2}.home-reveal li:nth-child(4){--reveal-step: 3}.home-reveal li:nth-child(5){--reveal-step: 4}.home-reveal li:nth-child(6){--reveal-step: 5}.home-reveal li:nth-child(n+7){--reveal-step: 6}@media(max-width:760px){.home-reveal :is(.home-tiles,.home-cards)>li{transform:none}}@media print{.home-reveal,.home-reveal li{opacity:1!important;transform:none!important}}@media(max-width:1100px){.home-tiles>li{flex-basis:calc((100% - 64px)/5)}.home-benefits ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){.home-hero-inner{grid-template-columns:1fr;gap:40px}.home-hero-art{width:min(100%,560px);margin:0 auto;aspect-ratio:1 / .8}.home-hero-card{width:34%}.home-hero-card.card-2{left:31%;width:38%}.home-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.home-steps{grid-template-columns:1fr}}@media(max-width:760px){.home-wrap{padding:0 16px}.home-hero{padding:28px 0 40px}.home-lead{font-size:1.02rem}.home-search-field{padding:4px}.home-search-icon{display:none}.home-search input{padding:10px 12px;font-size:16px}.home-search button{padding:0 18px}.home-section{padding-top:30px;padding-bottom:30px}.home-section-head{flex-direction:column;align-items:flex-start;margin-bottom:16px}.home-tiles,.home-cards{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:14px;margin:0 -16px;padding:4px 16px 14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 16px;overscroll-behavior-x:contain}.home-tiles>li{flex:0 0 38%;scroll-snap-align:start}.home-cards>li{flex:0 0 44%;scroll-snap-align:start}.home-how{padding:40px 0 44px}.home-benefits ul{grid-template-columns:1fr}.home-about{padding-bottom:48px}}@media(prefers-reduced-motion:reduce){.home-hero-card,.home-tile-art,.home-tile-art img,.home-tile-paper,.home-card-art,.home-card-art img,.home-cards .fav-button.card{transition:none}.home-hero-card a,.home-crumb{animation:none}.home-reveal,.home-reveal li{opacity:1!important;transform:none!important;transition:none!important}}@font-face{font-family:Papercrumb DM Sans;src:url(/brand/fonts/dm-sans-variable-latin.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}@font-face{font-family:Papercrumb Fraunces;src:url(/brand/fonts/fraunces-variable-latin.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}:root{--plum: #462c3d;--plum-hover: #35202e;--paper: #fbf6ed;--peach: #f3b99f;--peach-hover: #f7cab6;--rose: #d8a5ae;--sage: #a9b9a1;--ink: #302b2e;--bg: var(--paper);--panel: #ffffff;--text: var(--ink);--muted: #74656e;--line: #ddd1d5;--line-strong: #9a8591;--hover: #f4ede6;--accent: var(--plum);--accent-hover: var(--plum-hover);--accent-soft: #f5e8eb;--accent-text: var(--paper);--workspace: #f0e9e2;--danger: #c92a2a;--good: #2f7a3e;--shadow: 70 44 61;--font-ui: "Papercrumb DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Papercrumb Fraunces", Georgia, "Times New Roman", serif;font-family:var(--font-ui);color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button.primary,button.secondary,button.ghost,button.danger{display:inline-flex;align-items:center;gap:6px;border-radius:8px;padding:8px 14px;font-size:.9rem;font-weight:500;border:1px solid transparent;white-space:nowrap}button.primary{background:var(--accent);color:var(--accent-text)}button.primary:not(:disabled):hover{background:var(--accent-hover)}button.secondary{background:var(--panel);border-color:var(--line)}button.ghost{background:transparent}button.ghost:hover,button.secondary:hover{background:var(--hover)}button.danger{background:var(--danger);color:#fff}.app-message{padding:48px 16px;text-align:center;color:var(--muted)}.gallery-main h1,.template-empty h2,.tp h1,.tp h2,.dialog-body h2,.account-dialog h2{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em;color:var(--plum)}:where(a,button,label):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gallery-header{height:64px;display:flex;align-items:center;gap:16px;padding:0 24px;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:inline-flex;flex:none;border-radius:6px}.brand img{display:block;width:200px;height:auto}.gallery-kicker{margin:0 0 6px;font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--plum)}.gallery-main{max-width:1160px;margin:0 auto;padding:32px 16px 64px}.gallery-main h1{margin:0 0 8px;font-size:2.25rem;line-height:1.15}.gallery-intro{margin:0 0 20px;color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.template-search{margin:24px 0 20px;max-width:640px}.template-search label{display:block;font-weight:600;margin-bottom:8px}.template-search-field{display:flex;flex-wrap:wrap;gap:8px}.template-search input{flex:1;min-width:200px;width:100%;font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--line-strong);border-radius:8px;padding:12px 14px}.template-search input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.template-search p,.template-count{font-size:.85rem;color:var(--muted);margin:8px 0 0}.template-count{margin:0 0 20px}.template-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.template-tags span{font-size:.72rem;color:var(--muted);background:#f3ece5;padding:3px 7px;border-radius:5px}.template-empty{padding:40px 20px;text-align:center;border:1px dashed var(--line-strong);border-radius:12px;background:var(--panel)}.template-empty h2{font-size:1.2rem;margin-top:0}.template-empty p{color:var(--muted)}.thumb-unavailable{display:grid;place-items:center;height:100%;padding:24px;text-align:center;color:var(--muted)}.chips button{border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:7px 14px;font-size:.9rem}.chips button:not(.current):hover{background:var(--hover)}.chips button.current{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.template-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:28px 24px}.template-card{display:flex;flex-direction:column;gap:4px;color:inherit;text-decoration:none}.template-thumb{position:relative;border-radius:6px;overflow:hidden;background:var(--panel);box-shadow:0 1px 2px rgb(var(--shadow) / .1),0 6px 18px rgb(var(--shadow) / .1);transition:transform .15s,box-shadow .15s;margin-bottom:8px}.template-card:hover .template-thumb,.template-card:focus-visible .template-thumb{transform:translateY(-3px);box-shadow:0 2px 4px rgb(var(--shadow) / .1),0 14px 30px rgb(var(--shadow) / .16)}.template-thumb img{display:block;width:100%;height:100%}.thumb-loading,.dialog-preview-loading{width:100%;height:100%;background:linear-gradient(90deg,#f4eee7,#ebe3da,#f4eee7)}.badge{position:absolute;top:8px;left:8px;background:var(--accent);color:var(--accent-text);font-size:.75rem;font-weight:600;padding:3px 8px;border-radius:999px}.template-name{font-weight:600}.template-meta{font-size:.85rem;color:var(--muted)}.editor{position:fixed;left:0;right:0;top:var(--vv-top, 0);height:var(--vv-height, 100dvh);display:flex;flex-direction:column;overflow:hidden;overflow:clip}.topbar{height:56px;flex:none;display:flex;align-items:center;gap:16px;padding:0 12px 0 8px;background:var(--plum);color:var(--paper)}.topbar :focus-visible{outline-color:var(--peach)}.topbar-back{flex:none;display:inline-flex;align-items:center;gap:4px;color:var(--paper);text-decoration:none;font-weight:500;padding:6px 10px 6px 6px;border-radius:8px}.topbar-back:hover{background:#fbf6ed1f}.topbar-mark{display:block;width:32px;height:32px;margin-right:8px}.topbar-title{font-family:var(--font-display);font-weight:500;font-size:1.08rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.save-status{font-size:.8rem;opacity:.85;white-space:nowrap}.save-status.failed{background:#fff3bf;color:#5c3c00;padding:3px 8px;border-radius:6px;opacity:1}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:6px}.topbar .icon-button,.topbar button.ghost{color:var(--paper)}.topbar .icon-button:not(:disabled):hover,.topbar button.ghost:hover{background:#fbf6ed1f}.topbar button.primary{background:var(--peach);color:var(--plum);font-weight:600}.topbar button.primary:not(:disabled):hover{background:var(--peach-hover)}.confirm{display:inline-flex;align-items:center;gap:6px;font-size:.85rem}.editor-body{flex:1;min-height:0;display:flex}.side{flex:none;display:flex;background:var(--panel);border-right:1px solid var(--line)}.rail{width:72px;display:flex;flex-direction:column;padding:8px 0;background:var(--plum)}.rail :focus-visible{outline-color:var(--peach);outline-offset:-2px}.rail button{border:0;background:transparent;color:#d9c8d0;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 0;font-size:.72rem}.rail button:hover{color:var(--paper)}.rail button.current{color:var(--paper);background:#fbf6ed1f;box-shadow:inset 3px 0 0 var(--peach)}.side-panel{width:280px;padding:16px;overflow-y:auto}.side-panel h2{margin:0 0 14px;font-size:1rem}.panel-heading{margin:0 0 8px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.panel-heading:not(:first-child){margin-top:18px}.text-fields{display:grid;gap:8px}.text-fields textarea,.edit-text{width:100%;font:inherit;font-size:.95rem;line-height:1.4;padding:8px 10px;border:1px solid var(--line);border-radius:8px;resize:none;overflow:hidden;color:var(--text);background:#fff}.text-field{position:relative}.text-fields textarea{display:block;padding-right:34px}.text-fields textarea::placeholder{color:var(--muted);font-style:italic}.text-field.selected textarea{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:var(--paper)}.text-field-remove{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:6px;background:transparent;color:var(--muted);opacity:0}.text-field:hover .text-field-remove,.text-field:focus-within .text-field-remove,.text-field.selected .text-field-remove{opacity:1}.text-field-remove:hover{background:#fdecec;color:var(--danger)}.text-field-remove svg{width:16px;height:16px}@media(pointer:coarse){.text-field-remove{opacity:.7}}.text-fields textarea:focus,.edit-text:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}.add-text{display:block;width:100%;text-align:left;border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:12px 14px;margin-bottom:8px}.add-text:hover{background:var(--accent-soft);border-color:var(--rose)}.add-text.heading{font-size:1.6rem}.add-text.subheading{font-size:1.15rem}.add-text.body{font-size:.9rem}.side-hint{font-size:.8rem;color:var(--muted);line-height:1.45}.side-error{font-size:.85rem;color:var(--danger)}.sticker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sticker{position:relative;aspect-ratio:1;border:1px solid var(--line);border-radius:8px;background:var(--paper);overflow:hidden}.sticker:hover{border-color:var(--accent)}.sticker img{position:absolute;top:8px;right:8px;bottom:8px;left:8px;width:calc(100% - 16px);height:calc(100% - 16px);object-fit:contain}.sticker.photo img{top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.upload-button{display:block;text-align:center;background:var(--accent);color:var(--accent-text);border-radius:8px;padding:10px;font-weight:500;cursor:pointer}.upload-button:hover{background:var(--accent-hover)}.upload-button input{position:absolute;width:1px;height:1px;opacity:0}.upload-button:focus-within{outline:2px solid var(--accent);outline-offset:2px}.stage{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--workspace)}.toolbar{flex:none;min-height:52px;display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;padding:6px 12px;background:var(--panel);border-bottom:1px solid var(--line)}.toolbar-group{display:flex;align-items:center;gap:4px}.toolbar-group+.toolbar-group:not(.end){padding-left:12px;border-left:1px solid var(--line)}.toolbar .end{margin-left:auto}.toolbar-hint{font-size:.85rem;color:var(--muted)}.icon-button,.toolbar-button{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 6px;border:0;border-radius:6px;background:transparent}.icon-button:not(:disabled):hover,.toolbar-button:hover{background:var(--hover)}.icon-button.pressed{background:var(--accent-soft);color:var(--accent)}.toolbar-text{font-size:.88rem}.toolbar-button.labelled{display:inline-flex;align-items:center;gap:6px;font-size:.88rem;padding:0 10px;border:1px solid var(--line)}.workspace-error{position:absolute;z-index:3;left:50%;top:12px;transform:translate(-50%);margin:0;padding:8px 14px;border-radius:8px;background:#fff3f3;color:var(--danger);font-size:.85rem;box-shadow:0 4px 14px rgb(var(--shadow) / .14);cursor:pointer}.sticker svg{position:absolute;top:6px;right:6px;bottom:6px;left:6px;width:calc(100% - 12px);height:calc(100% - 12px)}.font-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;width:170px;font-size:.95rem;padding:4px 8px;border:1px solid var(--line);border-radius:6px;white-space:nowrap;overflow:hidden}.font-size{display:flex;align-items:center;border:1px solid var(--line);border-radius:6px}.font-size .icon-button{min-width:28px;height:30px}.font-size input{width:44px;text-align:center;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);font:inherit;font-size:.9rem;height:30px}.colour-trigger{display:block;width:24px;height:24px;border-radius:50%;border:1px solid rgb(0 0 0 / .2);box-shadow:inset 0 0 0 2px #fff}.popover-anchor{position:relative}.popover{position:absolute;top:calc(100% + 6px);left:0;z-index:20;width:240px;max-height:60vh;overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgb(var(--shadow) / .16);padding:12px}.popover.wide{width:260px}.popover.align-right{left:auto;right:0}.align-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:10px}.align-option{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border:0;border-radius:6px;background:transparent;font-size:.8rem}.align-option:hover{background:var(--hover)}.popover-note{margin:0;font-size:.78rem;color:var(--muted)}.popover-heading{margin:4px 0 8px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:12px}.swatch{aspect-ratio:1;border-radius:6px;border:1px solid rgb(0 0 0 / .15)}.swatch.current{outline:2px solid var(--accent);outline-offset:2px}.custom-colour{display:flex;align-items:center;gap:8px;font-size:.85rem}.custom-colour input{width:32px;height:32px;padding:0;border:0;background:none}.font-option{display:block;width:100%;text-align:left;border:0;background:transparent;padding:7px 8px;border-radius:6px;font-size:1.1rem}.font-option:hover{background:var(--hover)}.font-option.current{background:var(--accent-soft)}.slider{display:block;margin-bottom:12px;font-size:.85rem}.slider span{display:flex;justify-content:space-between;margin-bottom:4px}.slider input{width:100%;accent-color:var(--accent)}.workspace{position:relative;flex:1;min-height:0;overflow:hidden;overflow:clip}.workspace .canvas-container{z-index:1}.page-shadow{position:absolute;z-index:0;background:#fff;box-shadow:0 1px 3px rgb(var(--shadow) / .14),0 10px 30px rgb(var(--shadow) / .14)}.workspace-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--muted);z-index:2}.zoom-bar{flex:none;display:flex;align-items:center;justify-content:flex-end;gap:4px;padding:6px 12px;font-size:.85rem;background:var(--panel);border-top:1px solid var(--line)}.zoom-bar span{min-width:44px;text-align:center}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#281a238c;display:grid;place-items:center;padding:16px}.dialog{position:relative;width:min(860px,100%);max-height:calc(100vh - 32px);overflow-y:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);background:var(--panel);border-radius:14px;box-shadow:0 20px 60px rgb(var(--shadow) / .3)}.dialog-close{position:absolute;top:10px;right:10px}.dialog-preview{background:var(--workspace);padding:28px;display:grid;place-items:center}.dialog-preview img,.dialog-preview-loading{width:100%;max-width:340px;aspect-ratio:5 / 7;box-shadow:0 6px 20px rgb(var(--shadow) / .16)}.dialog-body{padding:28px}.dialog-body h2{margin:0 0 6px;font-size:1.25rem}.dialog-body>p{margin:0 0 14px;color:var(--muted);font-size:.92rem}.problems{margin:0 0 16px;padding:10px 12px 10px 28px;background:#fdf0e9;border:1px solid var(--peach);border-radius:8px;font-size:.85rem;line-height:1.45}.all-good{color:var(--good)!important;font-weight:500}.muted{color:var(--muted)}.check{display:flex;align-items:center;gap:8px;margin:18px 0 12px;font-size:.92rem;font-weight:500}.check input{width:18px;height:18px;accent-color:var(--accent)}.file-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.file-list li{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:12px;font-size:.85rem;color:var(--muted)}.file-list button{justify-content:center}@media(max-width:900px){.save-status,.topbar-title{display:none}.side-panel{width:210px}.dialog{grid-template-columns:1fr}.file-list li{grid-template-columns:1fr;gap:4px}}button,a,input,label{touch-action:manipulation}.fit-button{position:absolute;right:12px;bottom:12px;z-index:3;border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 14px;font-size:.85rem;box-shadow:0 2px 8px rgb(var(--shadow) / .14)}.mobile-bar{flex:none;box-sizing:content-box;height:58px;align-items:center;display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--line)}.mobile-bar::-webkit-scrollbar{display:none}.mobile-bar:not(.contextual){justify-content:space-around}.mobile-bar>button{flex:none;min-width:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 4px;border:0;border-radius:10px;background:transparent;font-size:.72rem;color:var(--text)}.mobile-bar>button.pressed{background:var(--accent-soft);color:var(--accent)}.mobile-bar>button:active{background:var(--hover)}.bar-size{flex:none;display:flex;align-items:center;padding:0 4px}.colour-dot{display:block;width:22px;height:22px;border-radius:50%;border:1px solid rgb(0 0 0 / .2);background:conic-gradient(#e03131,#fcc419,#2f9e44,#1971c2,#7048e8,#e64980,#e03131)}.font-glyph{font-size:1.15rem;line-height:22px}.sheet{flex:none;max-height:55%;display:flex;flex-direction:column;background:var(--panel);border-top:1px solid var(--line);border-radius:14px 14px 0 0;box-shadow:0 -6px 24px rgb(var(--shadow) / .1);padding-bottom:env(safe-area-inset-bottom)}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 6px}.sheet-header h2{margin:0;font-size:1rem}.sheet-done{border:0;background:var(--accent);color:var(--accent-text);border-radius:999px;padding:6px 14px;font-size:.85rem;font-weight:500}.sheet-body{overflow-y:auto;padding:4px 14px 14px}.sheet .sticker-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sheet .swatches{grid-template-columns:repeat(8,1fr)}.sheet .font-option{font-size:1.25rem;padding:10px 8px}.editor.compact .topbar{height:50px;gap:4px;padding:0 6px}.editor.compact .topbar .label,.editor.compact .topbar-title,.editor.compact .save-status{display:none}.editor.compact .topbar-back{padding:2px}.editor.compact .topbar-back svg{display:none}.editor.compact .topbar-mark{margin-right:0}@media(max-width:380px){.editor.compact .topbar button.primary svg{display:none}}.editor.compact .topbar-actions{gap:2px}.editor.compact .topbar button.primary,.editor.compact .topbar button.ghost,.editor.compact .topbar button.danger{padding:7px 10px}.editor.compact textarea,.editor.compact input{font-size:16px}@media(max-width:760px){.gallery-header{height:58px;padding:0 16px}.brand img{width:168px}.gallery-main{padding-top:20px}.gallery-main h1{font-size:1.75rem}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.template-name{font-size:.92rem}.dialog-backdrop{padding:0;align-items:end}.dialog{border-radius:16px 16px 0 0;max-height:calc(var(--vv-height, 100dvh) - 24px)}.dialog-preview{padding:18px}.dialog-preview img,.dialog-preview-loading{max-width:200px}.dialog-body{padding:18px 16px calc(18px + env(safe-area-inset-bottom))}}
