@font-face{font-family:Archivo Black;font-style:normal;font-display:swap;font-weight:400;src:url(../media/archivo-black-latin-400-normal.28-s2vszyg0u5.woff2)format("woff2"),url(../media/archivo-black-latin-400-normal.2f-eiboqvs3t_.woff)format("woff")}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-latin-400-normal.1xf5nwxyfigak.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-400-normal.19i24--p24z3r.woff)format("woff")}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-latin-600-normal.2ovda_azncp9b.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-600-normal.2wn5p1s7u3utm.woff)format("woff")}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-latin-500-normal.11q3guvgd1r20.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-500-normal.1fgk-kmy-32_a.woff)format("woff")}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.grid{display:grid}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.filter{filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}}:root{--ink:#132e44;--muted:#56564f;--paper:#f8f5e9;--linen:#eee6d2;--moss:#143f62;--rust:#b3342d;--line:#c6bcaa;--serif:Georgia,"Times New Roman",serif;--sans:"IBM Plex Sans",system-ui,sans-serif;--mono:"IBM Plex Mono",monospace;--display:"Archivo Black",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font:15px/1.55 var(--sans);margin:0}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}:focus-visible{outline:2px solid var(--rust);outline-offset:3px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.05}h1{letter-spacing:-.075em;font-size:clamp(3.4rem,6.2vw,6.2rem)}h2{letter-spacing:-.065em;font-size:clamp(2.2rem,4vw,4rem)}h3{letter-spacing:-.035em;font-size:1.66rem}.wrap{width:min(1230px,100% - 100px);margin-inline:auto}.top{background:var(--paper);border-bottom:2px solid var(--ink)}.nav,.footer-inner{justify-content:space-between;align-items:center;gap:18px;min-height:65px;display:flex}.nav nav,.nav-actions,.footer-inner>div{align-items:center;gap:25px;font-size:13px;font-weight:600;display:flex}.nav nav a:hover,.footer a:hover,.text-link{color:var(--rust)}.brand{font:16px/1 var(--display);letter-spacing:-.055em;white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.brand-studio{letter-spacing:.13em;text-transform:uppercase;font:500 9px/1.6 var(--mono);display:block}.brand-mark{background:var(--rust);color:#fff6e7;width:34px;height:34px;font:30px/1 var(--mono);letter-spacing:0;place-items:center;display:grid}.language{font:500 11px var(--mono);border-bottom:1px solid}.button{text-align:center;border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;gap:9px;min-height:45px;padding:11px 18px;font-size:14px;font-weight:600;line-height:1.25;display:inline-flex}.button.small{min-height:36px;padding:8px 12px}.button.primary{background:var(--moss);color:#fff9ee;border-color:var(--moss)}.button.primary:hover{background:#092e4b}.button.outline{border-color:var(--ink);background:0 0}.button.outline:hover{background:#eae6d7}.eyebrow{letter-spacing:.13em;font:500 10px/1.5 var(--mono);color:var(--rust)}.actions{flex-wrap:wrap;align-items:center;gap:11px;margin-top:24px;display:flex}.showcase{justify-items:center;gap:20px;width:100%;display:grid}.showcase-canvas{aspect-ratio:1;place-items:center;width:min(100%,400px);display:grid}.hoop{background:linear-gradient(#e9ddc2,#e9ddc2) padding-box padding-box,repeating-radial-gradient(at 47% 49%,#66401927 0 .55px,#ffdfa331 .65px 1.1px,#0000 1.4px 3.2px) border-box,conic-gradient(from 38deg,#cf9f64,#976638,#a67546,#dda96a,#e9be86,#c99458,#e9c18a,#cf9f64) border-box;border:clamp(11px,1.6vw,22px) solid #0000;border-radius:50%;justify-content:center;align-items:center;min-width:0;display:flex;position:relative;box-shadow:0 0 0 1px #815630,0 0 0 2px #c49a68,3px 7px 11px #5b3e333b,8px 17px 33px #573c2b35}.hoop:before{content:"";border-radius:inherit;pointer-events:none;border:1px solid #946b40;position:absolute;inset:calc(clamp(11px,1.6vw,22px)/-1.72414);box-shadow:inset 0 1px 1px #fff1cd9c,0 -1px 1px #fae1ae77}.hoop:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #63482999,inset 2px 5px 14px #4c331855,inset -2px -3px 6px #6f502826}.hoop canvas{border-radius:50%;width:100%;height:100%;display:block}.frame{outline:1px solid var(--line);background:#fffdf6;display:flex}.frame canvas{width:100%;height:100%;display:block}.screw{z-index:1;pointer-events:none;width:56px;height:21px;position:absolute;top:calc(-1*clamp(11px,1.6vw,22px) - 11px);left:50%;transform:translate(-50%)}.screw:before,.screw:after{content:"";background:linear-gradient(112deg,#ead0a3,#c3925d 57%,#a17343);border:1px solid #8c6037;border-radius:3px 3px 2px 2px;width:16px;height:21px;position:absolute;top:0;box-shadow:1px 2px 2px #5233185c}.screw:before{left:9px}.screw:after{right:9px}.screw span{z-index:1;background:repeating-linear-gradient(100deg,#5b3c2259 0 1px,#0000 1px 3px),linear-gradient(#f4dd9c,#c79b4a 42%,#8a6128 82%,#b88a43);border:1px solid #77541e;border-radius:2px;height:7px;position:absolute;top:6px;left:1px;right:1px;box-shadow:0 1px 2px #39271480}.screw span:after{content:"";background:repeating-linear-gradient(0deg,#77541e8a 0 1px,#0000 1px 3px),linear-gradient(90deg,#ab813e,#ead18b 43%,#ac843e);border:1px solid #78551f;border-radius:2px;width:9px;height:12px;position:absolute;top:-3px;right:-1px}.segmented{border:1px solid var(--line);background:#eee8da;border-radius:2px;flex-wrap:wrap;align-self:start;gap:2px;max-width:100%;padding:2px;display:inline-flex}.segmented button{color:var(--ink);font:500 10px/1.4 var(--mono);background:0 0;border:0;border-radius:1px;padding:6px 9px}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.section{padding-block:58px 66px}.section h2{margin:10px 0 26px}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.feature-card,.panel{border:1px solid var(--line);background:#fffaf1;border-radius:2px;min-width:0;padding:23px}.feature-card{display:block}.feature-card:is(a):hover{background:#fff9eb;border-color:#a64435}.feature-card p{color:var(--muted);max-width:36ch;margin:11px 0 15px}.card-top{color:var(--rust);justify-content:space-between;align-items:center;margin-bottom:19px;font-size:11px;font-weight:720;display:flex}.process{border-block:1px solid var(--line);background:#ece9dc}.endcap{text-align:center}.footer{border-top:2px solid var(--ink);background:var(--paper)}.footer-inner{min-height:93px}.page{min-height:60vh;padding:46px 0 60px}.page h1{margin:7px 0 18px;font-size:clamp(2.5rem,5vw,4.7rem)}.page h2{margin:8px 0 14px;font-size:2rem}.page-lede{max-width:66ch;color:var(--muted);margin-bottom:22px}.stack{gap:13px;display:grid}.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.form{gap:14px;max-width:550px;display:grid}.auth-google{min-height:44px}.auth-email-option{border-top:1px solid var(--line);color:var(--muted);padding-top:10px;font-size:13px}.form label,.field{gap:5px;font-size:13px;font-weight:650;display:grid}.form input,.form select,.form textarea,.field input,.field select,.field textarea{width:100%;color:var(--ink);background:#fffcf5;border:1px solid #bcaf99;border-radius:2px;min-height:38px;padding:8px 10px}.form input[type=checkbox]{width:auto;min-height:0}.fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.form small,.hint{color:var(--muted);font-size:12px}.field-hint{font-weight:400}.error{color:#9a2e24;font-weight:650}.success{color:var(--moss)}.project-list{gap:10px;margin-top:20px;display:grid}.project-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:12px 0;display:flex}.project-row a{font-weight:650}.photo{object-fit:contain;border-radius:8px;max-width:100%;max-height:360px;margin-inline:auto;display:block}.prose{max-width:75ch}.prose p,.prose ul{margin:12px 0 20px}.prose ul{padding-inline-start:22px;list-style:outside}.fabric-calculator{margin-block:22px 30px}.fabric-calculator .fields{align-items:end}.fabric-calculator input,.fabric-calculator select{min-width:0;min-height:44px;font-size:16px}.fabric-calculator-results{border-block:1px solid var(--line);margin:0}.fabric-calculator-results>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-block:10px;display:grid}.fabric-calculator-results>div+div{border-top:1px solid var(--line)}.fabric-calculator-results dd{gap:2px;margin:0;display:grid}.fabric-calculator-results dd span{color:var(--muted);font-size:.9em}.fabric-calculator-actions{flex-wrap:wrap;gap:8px;display:flex}.fabric-calculator .hint{margin:0}.name-pattern{grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:start;gap:12px 18px;max-width:none}.name-pattern-fields{gap:10px;display:grid}.name-pattern input,.name-pattern select{min-width:0;min-height:44px;font-size:16px}.name-preview{grid-area:1/2/3;gap:13px;display:grid}.name-preview-cloth{background:#eee5ce;align-items:center;min-height:150px;padding:clamp(12px,4vw,48px);display:grid}.name-preview-cloth>.frame,.name-preview-cloth>.hoop{max-width:760px;margin-inline:auto}.name-preview-size{color:var(--muted);flex-wrap:wrap;gap:6px 14px;display:flex}.name-tool-link{margin:-10px 0 17px}@media (max-width:720px){.name-pattern{grid-template-columns:minmax(0,1fr)}.name-preview{grid-area:auto}}@media (max-width:360px){.name-pattern .fields{grid-template-columns:minmax(0,1fr)}}.photo-landing{margin:0 0 25px}.photo-landing .actions{margin:0 0 17px}.photo-landing-example{max-width:420px;margin:0}.photo-landing-example>div{grid-template-columns:minmax(0,3fr) minmax(0,4fr);gap:8px;display:grid}.photo-landing-example img{border:1px solid var(--line);width:100%;height:auto;display:block}.photo-landing-example figcaption{color:var(--muted);margin-top:6px;font-size:13px}.pet-portrait-stages{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,2vw,16px);max-width:750px;display:grid}.pet-portrait-stages figure{min-width:0;margin:0}.pet-portrait-stages img{aspect-ratio:1;object-fit:contain;border:1px solid var(--line);background:#eee5d3;width:100%;height:auto;display:block}.pet-portrait-stages figcaption{color:var(--muted);margin-top:6px;font-size:clamp(.75rem,2vw,.9rem)}.pet-portrait-clip{border:1px solid var(--line);background:#fffaf1;max-width:380px;margin:0 0 17px;scroll-margin-top:90px}.pet-portrait-clip summary{cursor:pointer;min-height:44px;padding:12px 14px;font-weight:650}.pet-portrait-clip video{aspect-ratio:2/3;background:#f8f3e6;width:100%;height:auto;display:block}.portrait-demo-link{padding:9px 14px 12px;display:inline-block}.portrait-watch{max-width:920px;padding-top:clamp(18px,4vw,42px)}.portrait-watch h1{max-width:24ch;margin-bottom:16px;font-size:clamp(1.8rem,4vw,3.35rem)}.portrait-watch-layout{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:clamp(14px,4vw,38px);display:grid}.portrait-watch video{aspect-ratio:2/3;background:var(--paper);border:1px solid var(--line);width:min(330px,40svh,100%);height:auto;display:block}.portrait-watch-copy{justify-items:start;gap:12px;max-width:44ch;display:grid}.portrait-watch-copy>p{color:var(--muted)}.portrait-watch-copy ol{margin:8px 0 0;padding-left:19px}.portrait-watch-copy li+li{margin-top:6px}.portrait-watch-copy time{font-family:var(--mono);font-size:.8em}@media (max-width:600px){.portrait-watch-layout{grid-template-columns:1fr}.portrait-watch video{justify-self:center}.portrait-watch-copy .button{min-height:44px}}.analytics{color:var(--muted);background:#f1ebdd;padding:5px max(22px,50% - 615px) 10px;font-size:12px}.analytics button{margin:4px 8px 0 0;text-decoration:underline}@media (max-width:900px){.wrap{width:calc(100% - 48px)}.nav nav{gap:13px}}@media (max-width:680px){.wrap{width:calc(100% - 32px)}.nav{min-height:59px}.nav .desktop-nav{display:none}.nav-actions{gap:10px}.split{grid-template-columns:1fr}.showcase-canvas{width:min(100%,330px)}.cards{grid-template-columns:1fr}.section{padding-block:40px}.footer-inner{flex-wrap:wrap;padding-block:16px}.footer-inner>div{flex-wrap:wrap;gap:14px}.page{padding-block:30px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.studio-head{border-bottom:1px solid var(--line);grid-template-columns:1fr minmax(160px,420px) 1fr;align-items:center;gap:16px;padding:12px 24px;display:grid}.studio-back,.studio-head-actions{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.studio-head-actions{text-align:right;justify-content:flex-end}.studio-head>input{text-align:center;min-width:0;font:26px var(--serif);background:0 0;border:1px solid #0000;border-radius:6px;padding:5px}.studio-head>input:hover,.studio-head>input:focus{border-color:var(--line)}.studio-body{grid-template-columns:215px minmax(0,1fr) 225px;min-height:690px;display:grid}.studio-tools,.studio-details{background:#fffaf1;flex-direction:column;align-items:stretch;gap:12px;padding:20px 16px;display:flex}.studio-tools{border-right:1px solid var(--line)}.studio-details{border-left:1px solid var(--line)}.studio-details h2{font-size:29px}.studio-details dl{margin:0;font-size:12px}.studio-details dl>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:10px;padding:6px 0;display:flex}.studio-details dt{color:var(--muted)}.studio-details dd{text-align:right;margin:0;font-weight:600}.tool-grid{grid-template-columns:1fr 1fr;gap:5px;display:grid}.tool-grid button,.studio-row button{border:1px solid var(--line);background:#fffcf5;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:7px 5px;font-size:11px;display:flex}.tool-grid button[aria-pressed=true]{background:var(--moss);border-color:var(--moss);color:#fffcf5}.studio-row{align-items:center;gap:5px;font-size:11px;display:flex}.studio-row button{min-width:32px;min-height:29px}.check{align-items:center;gap:6px;font-size:12px;display:flex}.palette-label{margin-top:6px}.swatches{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.swatches button{background:repeating-linear-gradient(0deg,#0001 0 1px,transparent 1px 3px),var(--thread);color:#fff;text-shadow:0 1px 2px #000,1px 0 2px #000;border:1px solid #59463347;border-radius:5px;height:29px;font-size:11px;font-weight:800}.workbench{background:repeating-linear-gradient(0deg,#bda78519 0 1px,#0000 1px 4px),#e9dfcb;flex-direction:column;min-width:0;display:flex}.workbench-tools{border-bottom:1px solid #cfc0a7;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:13px 15px;display:flex}.workbench-caption{color:#695b47;align-items:center;gap:7px;padding:9px 16px;font-size:11px;display:flex}.editable-cloth{touch-action:none;cursor:crosshair}.studio-export{border-top:1px solid var(--line);gap:8px;padding-top:12px;display:grid}.studio-export a.text-link{font-size:12px}.studio-alert{color:#8b2c1f;background:#f8e3dc;padding:8px 24px}.studio-alert a{text-decoration:underline}.thread-count{max-height:120px;font-size:12px;overflow:auto}details summary{cursor:pointer;font-size:13px;font-weight:650}details>.field,details>.studio-row,details>.button{margin-top:6px}@media (max-width:1000px){.studio-body{grid-template-columns:170px minmax(0,1fr) 178px}.studio-tools,.studio-details{padding-inline:10px}.tool-grid button{flex-direction:column}}@media (max-width:760px){.studio-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.workbench{grid-area:1/1/auto/-1}.studio-tools,.studio-details{border-top:1px solid var(--line);padding:13px}.studio-head{grid-template-columns:auto minmax(0,1fr) auto;gap:5px;padding-inline:10px}.studio-head>input{font-size:19px}.tool-grid button{flex-direction:row}}.form .upload,.preview-empty{text-align:center;color:var(--moss);background:#f4eddf;border:1px dashed #bdad91;border-radius:8px;justify-items:center;gap:5px;padding:20px;display:grid}.form .upload input{max-width:300px;margin-top:8px;font-size:12px}.preview-empty{place-content:center;min-height:260px}.photo-methods{gap:6px;min-width:0;display:grid}.photo-methods legend{margin-bottom:7px;font-size:13px;font-weight:650}.form .photo-method{border:1px solid var(--line);cursor:pointer;background:#fffcf5;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 10px}.photo-method:has(:checked){border-color:var(--moss);box-shadow:inset 3px 0 var(--moss);background:#edf0e8}.form .photo-method input{width:16px;min-height:0;accent-color:var(--moss);margin:0}.photo-method small{font-weight:400;display:block}.photo-method-price{white-space:nowrap;font:500 10px/1.8 var(--mono);color:var(--moss);align-self:start}.form .photo-upload{gap:3px;padding:13px}.form .photo-upload input{margin-top:4px}.photo-sample{justify-self:start}.photo-grid-settings{border-block:1px solid var(--line);padding:8px 0}.photo-grid-settings summary small{margin-inline-start:6px;font-weight:400}.photo-grid-settings .fields{margin-block:9px}.photo-progress{justify-items:start;gap:10px;display:grid}.photo-progress .stitch-loading{width:100%}.create-result-next{gap:6px;display:grid}.photo-result .photo{max-height:min(56vh,480px)}.photo-result[data-waiting] .photo{max-height:min(32vh,260px)}.stitch-loading{max-width:100%;color:var(--ink);text-align:left;background:#fcf4de;border:1px solid #c6ae85;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:16px;padding:13px;display:grid}.stitch-sampler{aspect-ratio:1;background:repeating-linear-gradient(0deg,#b78a4724 0 1px,#0000 1px 8px),repeating-linear-gradient(90deg,#b78a4724 0 1px,#0000 1px 8px),#f4e7cb;border:1px solid #c6ae85;place-items:center;display:grid}.stitch-sampler svg{width:100%;padding:4px}.stitch-sampler path{stroke:var(--rust);stroke-width:2.15px;stroke-linecap:round}.stitch-sampler path[data-ink]{stroke-dasharray:1;animation:2.5s infinite both stitch-ink}.stitch-sampler path[data-spark]{stroke:#94621c}.stitch-loading-stage{color:var(--moss);font:500 10px/1.4 var(--mono);letter-spacing:.07em;text-transform:uppercase;display:block}.stitch-loading-copy strong{font:italic 600 clamp(1rem,2vw,1.45rem)/1.15 var(--serif);margin:3px 0 2px;display:block}.stitch-loading-copy p{color:var(--muted);font-size:13px}.stitch-loading-thread{background:repeating-linear-gradient(90deg,#c5b38d 0 4px,#0000 4px 7px);height:4px;margin-top:10px;overflow:hidden}.stitch-loading-thread span{background:repeating-linear-gradient(90deg,var(--rust) 0 4px,transparent 4px 7px);width:38%;height:100%;animation:1.8s ease-in-out infinite alternate stitch-thread;display:block}.stitch-spinner{flex:none;animation:1.5s ease-in-out infinite stitch-spinner}.stitch-loading-compact{grid-template-columns:46px minmax(0,1fr);gap:9px;padding:6px 9px}.stitch-loading-compact .stitch-loading-copy strong{font-size:16px}.stitch-loading-compact .stitch-loading-copy p{font-size:11px}.stitch-loading-compact .stitch-loading-thread{margin-top:5px}.studio-review.studio-wait{justify-content:flex-start;padding-block:5px}.studio-wait .stitch-loading{background:0 0;border:0;padding:0}.history-loading .stitch-loading{margin-inline:10px}@keyframes stitch-ink{0%{stroke-dashoffset:1px;opacity:.4}25%,82%{stroke-dashoffset:0;opacity:1}to{opacity:.45}}@keyframes stitch-thread{to{transform:translate(163%)}}@keyframes stitch-spinner{50%{opacity:.62;transform:rotate(90deg)scale(.82)}to{transform:rotate(90deg)}}@media (max-width:680px){.stitch-loading:not(.stitch-loading-compact){grid-template-columns:66px minmax(0,1fr);gap:10px;padding:9px}}@media (prefers-reduced-motion:reduce){.stitch-sampler path[data-ink],.stitch-loading-thread span,.stitch-spinner{animation:none}.stitch-sampler path[data-ink]{stroke-dasharray:none}}@media (min-width:681px) and (min-height:710px){.photo-result{position:sticky;top:18px}}.create-page .page-lede{margin-bottom:20px}.create-modes{min-width:0;margin:0 0 16px}.create-modes legend{margin-bottom:7px;font-weight:650}.create-mode-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.create-mode{border:1px solid var(--line);cursor:pointer;background:#fffaf1;grid-template-columns:auto auto minmax(0,1fr);align-items:start;gap:9px;padding:12px;display:grid}.create-mode input{width:14px;height:14px;accent-color:var(--moss);margin:4px 0 0}.create-mode svg{margin-top:1px}.create-mode strong,.create-mode small{display:block}.create-mode small{color:var(--muted);font-size:12px}.create-mode:has(:checked){border-color:var(--moss);box-shadow:inset 0 -3px var(--moss);background:#edf0e8}.create-mode:hover,.form .photo-method:hover{border-color:var(--moss)}.photo-create h2{letter-spacing:-.05em;font-size:clamp(1.4rem,2.6vw,2rem)}.photo-create .form{max-width:none}.create-flow{gap:8px;margin:0;padding:0;list-style:none;display:grid}.create-flow li{border-bottom:1px solid var(--line);grid-template-columns:34px minmax(0,1fr);align-items:start;gap:9px;padding:9px 0;display:grid}.create-flow svg{color:var(--moss);justify-self:center;margin-top:3px}.create-flow p{color:var(--muted);font-size:13px}.create-example{gap:7px;margin-top:2px;display:grid}.create-example-head{justify-content:space-between;gap:8px;font-size:13px;display:flex}.create-example-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.create-example-grid figure{min-width:0}.create-example-image{aspect-ratio:1;border:1px solid var(--line);background:#f1e8d6;place-items:center;display:grid;overflow:hidden}.create-example-image img{object-fit:contain;width:100%;height:100%;min-height:0;display:block}.create-example-chart .frame{background:0 0;outline:0;justify-content:center;align-items:center;max-width:100%;max-height:100%}.create-example-chart canvas{object-fit:contain}.create-example figcaption{font:500 10px var(--mono);margin-top:4px}.create-history{margin-top:16px}.create-history ul{margin:4px 0 0;padding:0;list-style:none}.create-history li>div{overflow-wrap:anywhere;min-width:0}.tabs{flex-wrap:wrap;gap:14px;margin:15px 0;display:flex}.tabs a{color:var(--rust);font-size:13px;font-weight:680}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}th,td{border-bottom:1px solid var(--line);vertical-align:top;padding:10px}.admin-page h1{overflow-wrap:anywhere;font-size:clamp(2.1rem,4vw,3.75rem)}.admin-nav{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:3px 10px;margin:0 0 22px;display:flex}.admin-nav a{border-bottom:2px solid #0000;padding:9px 7px;font-weight:650}.admin-nav a:hover,.admin-nav a[aria-current=page]{color:var(--rust);border-bottom-color:currentColor}.admin-record-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.admin-record-heading h2{overflow-wrap:anywhere;min-width:0;margin:0}.admin-filters{align-items:end;gap:10px;display:flex}.admin-filters .field{flex:1;min-width:0;max-width:480px}.admin-filters input{min-height:45px}.admin-owner-filter{overflow-wrap:anywhere;flex-wrap:wrap;gap:6px 16px;font-size:13px;display:flex}.admin-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.admin-table{padding:5px 12px 11px}.admin-table th{white-space:nowrap}.admin-person{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.admin-person small{color:var(--muted);font-size:12px}.admin-table .admin-person{min-width:145px}.admin-account-credits{white-space:nowrap;justify-items:start;gap:6px;display:grid}.admin-account-credits strong{font-variant-numeric:tabular-nums}.admin-account-credits .share-dialog{white-space:normal}.admin-reference{overflow-wrap:anywhere;max-width:19ch;font-size:11px;display:block}.admin-project-caption{gap:6px;padding:8px 12px 12px;display:grid}.admin-project-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:4px 8px;font-size:12px;display:flex}.admin-metrics .feature-card{gap:3px;padding:15px 18px;font-weight:650;display:grid}.admin-metrics strong{font:400 clamp(1.35rem,3vw,2.35rem)/1.25 var(--display);letter-spacing:-.05em}.admin-secondary-metrics{flex-wrap:wrap;gap:12px 28px;margin:0;padding:12px 18px;display:flex}.admin-secondary-metrics div{align-items:baseline;gap:8px;font-size:13px;display:flex}.admin-secondary-metrics dd{margin:0;font-weight:650}.admin-review .shared-measurements dd{overflow-wrap:anywhere;min-width:0}@media (max-width:480px){.admin-nav a{align-items:center;min-height:44px;display:flex}.admin-project-caption{padding-inline:7px}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-metrics .feature-card{padding:10px 12px}.admin-metrics .feature-card:last-child{grid-column:1/-1}}.gallery-card{overflow:hidden}.gallery-art{background:#eae0cd;border-radius:8px;place-items:center;min-height:160px;margin-bottom:16px;padding:25px;display:grid}.gallery-art>.hoop{max-width:230px}.gallery-art img{border-radius:5px;width:100%;height:auto;display:block}.front-page{background:var(--paper)}.register{padding:29px 0 0}.register-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(24px,4vw,62px);padding:24px 0 45px;display:grid}.register-copy h1{letter-spacing:-.067em;margin:12px 0 19px;font-size:clamp(2.5rem,5.35vw,5rem);font-weight:400;line-height:.99}.register-copy h1 strong{color:var(--rust);font-weight:400}.register-lede{color:#364758;max-width:44ch;font-size:clamp(15px,1.5vw,19px);line-height:1.5}.register-copy .actions{align-items:center;gap:18px}.register-copy .button{padding-inline:15px}.register-free{margin-top:12px;font-size:14px}.register-free a{text-underline-offset:3px;text-decoration:underline}.register-demo{border-bottom:1px solid var(--ink);white-space:nowrap;align-items:center;gap:6px;min-height:28px;font-weight:600;display:inline-flex}.register-demo:hover{border-color:var(--rust);color:var(--rust)}.register-proof{border:1px solid var(--ink);background-color:#eee3c8;background-image:linear-gradient(#153c5010 1px,#0000 1px),linear-gradient(90deg,#153c5010 1px,#0000 1px);background-size:12px 12px;min-width:0;margin:0;padding:clamp(10px,1.4vw,18px);box-shadow:5px 5px #ded5bf}.register-transform{grid-template-columns:minmax(0,1fr) minmax(0,2.35fr);align-items:start;gap:clamp(7px,1.1vw,14px);display:grid}.register-transform figure{min-width:0;margin:0}.register-transform img{aspect-ratio:1;object-fit:cover;object-position:center 56%;background:var(--paper);border:1px solid var(--line);width:100%;height:auto;display:block}.register-transform figure:nth-child(2){grid-column:1}.register-transform-result{grid-area:1/2/span 2;align-self:center}.register-transform figcaption{font:500 clamp(10px,1vw,12px)/1.35 var(--mono);padding-top:5px}.register-transform-result figcaption{font-weight:600}.proof-caption{border-top:1px solid #153c5058;gap:2px;margin-top:11px;padding-top:8px;display:grid}.proof-caption span{font:500 10px/1.4 var(--mono);color:var(--muted)}.proof-caption q{font:italic clamp(14px,1.5vw,19px)/1.35 var(--serif)}.register-index{border-top:2px solid var(--ink);padding:13px 0 55px;scroll-margin-top:16px}.index-head{padding:12px 0 22px;font-size:clamp(1.7rem,3.4vw,3rem)}.index-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.7fr) auto;align-items:center;gap:13px;padding:15px 0;display:grid}.index-row:last-child{border-bottom:1px solid var(--line)}.index-row h3{font-size:clamp(1.2rem,2vw,1.75rem)}.index-row p{color:var(--muted);font-size:14px}.index-action{align-items:center;gap:9px;font-size:13px;font-weight:600;display:flex}.index-row:hover h3,.index-row:hover .index-action{color:var(--rust)}.register-foot{border-top:1px solid var(--ink);background:#ece3ce}.register-foot-inner{justify-content:space-between;align-items:center;gap:20px;padding-block:32px 36px;display:flex}.register-foot h2{margin-top:7px;font-size:clamp(1.8rem,3.9vw,3.8rem)}.register-foot .actions{margin-top:0}@media (max-width:900px){.register-grid{gap:24px}.index-row{gap:8px}}@media (max-width:680px){.register{padding-top:24px}.register-grid{grid-template-columns:minmax(0,1fr);gap:23px;padding:0 0 28px}.register-copy h1{margin-bottom:13px;font-size:clamp(2.3rem,9.5vw,4.25rem)}.register-copy .actions{gap:9px 14px;margin-top:15px}.index-head{padding:8px 0 14px}.index-row{grid-template-columns:minmax(0,1fr) auto;gap:5px 9px;padding:12px 0}.index-row p{grid-area:2/1/auto/-1}.index-action{grid-column:2;gap:4px;font-size:11px}.register-index{padding-bottom:34px}.register-foot-inner{gap:12px;display:grid}}.studio{background:#f8f5e9}.studio-head{border-bottom:1px solid var(--ink);background:#f8f5e9}.studio-head>input{font:italic 25px/1.25 var(--serif);border-bottom:1px dashed #9e9585;border-radius:0;padding:2px 4px 5px}.studio-body{grid-template-columns:237px minmax(0,1fr) 234px}.studio-tools,.studio-details{background:#f9f5e8;padding:19px 13px}.studio-tools .eyebrow,.studio-details .eyebrow{border-bottom:1px dashed #a59b85;padding-bottom:6px}.studio-details h2{font:italic 26px/1.1 var(--serif);letter-spacing:-.03em}.studio-details dd{font-family:var(--mono);font-size:10px}.workbench{background-color:#eae0c7;background-image:repeating-linear-gradient(0deg,#92754b11 0 1px,#0000 1px 4px),repeating-linear-gradient(90deg,#fff8e13a 0 1px,#0000 1px 5px)}.workbench-tools{background:#f8f0ddaa;border-bottom:1px solid #bfb091}.workbench-caption{font-family:var(--mono);letter-spacing:.015em;font-size:9px}.tool-grid{background:repeating-linear-gradient(91deg,#935a3015 0 1px,#0000 1px 8px),#cba878;border:1px solid #9d784f;gap:4px;padding:6px;box-shadow:inset 0 0 0 1px #f3d39d}.tool-grid button{color:#324653;background:#efe5cf;border:1px solid #a18c6a;border-radius:2px;justify-content:flex-start;gap:4px;min-height:32px;padding:5px 4px 9px;font-size:10px;position:relative;box-shadow:inset 0 2px 3px #957a4a22}.tool-grid button[aria-pressed=true]{color:#8d2e27;background:#fff8e9;border-color:#812d28;box-shadow:inset 0 0 0 1px #bc4d40}.tool-grid kbd{color:#5d4e39;font:500 8px var(--mono);position:absolute;bottom:0;right:3px}.studio-row button{border-radius:2px}.swatches{gap:8px 3px}.swatches button{height:42px;color:var(--ink);text-shadow:none;isolation:isolate;filter:drop-shadow(0 1px 1px #6b573958);background:0 0;border:0;border-radius:0;grid-template-rows:11px 18px 9px;justify-items:center;gap:0;padding:2px 1px;display:grid;position:relative}.swatches button:before{content:"";z-index:-1;clip-path:polygon(9% 0,91% 0,100% 10%,100% 24%,83% 30%,83% 70%,100% 78%,100% 90%,91% 100%,9% 100%,0 90%,0 78%,17% 70%,17% 30%,0 24%,0 10%);background:#fdfaf0;position:absolute;inset:0 2px}.bobbin-code,.bobbin-symbol{font:500 8px/1.2 var(--mono);white-space:nowrap}.bobbin-thread{background:repeating-linear-gradient(96deg,#1112 0 1px,transparent 1px 3px),linear-gradient(90deg,#0004,transparent 30%,#fff3 49%,transparent 69%,#0004),var(--thread);border-radius:3px;width:100%;margin-block:1px;box-shadow:inset 0 -2px 2px #0003}.thread-selection{overflow-wrap:anywhere;align-items:center;gap:7px;min-width:0;font-size:12px;display:flex}.thread-color-chip{border:1px solid #34261755;border-radius:3px;flex:none;width:18px;height:18px}.thread-picker-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.thread-picker-actions .button{gap:3px;padding-inline:4px;font-size:11px}.thread-picker-actions .button svg{flex:none}.thread-picker-actions .button[aria-expanded=true]{background:#eaf1f4}.thread-picker-actions .button[aria-expanded=true] svg{transform:rotate(180deg)}.thread-picker{border:1px solid var(--line);background:#fffcf5;gap:8px;min-width:0;padding:8px;display:grid}.thread-picker input[type=search]{min-width:0}.thread-options{border-block:1px solid var(--line);overscroll-behavior:contain;max-height:15rem;overflow:auto}.thread-options ul{margin:0;padding:0;list-style:none}.thread-group-label{color:var(--muted);background:var(--linen);padding:5px 6px;font-size:11px;font-weight:650}.thread-option{text-align:left;align-items:center;gap:7px;width:100%;min-height:34px;padding:5px 6px;font-size:12px;display:flex}.thread-option:hover,.thread-option:focus-visible{background:#eaf1f4}.thread-option:focus-visible{outline-offset:-2px}.thread-options>.hint{padding:8px 6px}.thread-custom{align-items:center;gap:6px;display:flex}.thread-custom input{border:1px solid var(--line);cursor:pointer;flex:none;width:32px;height:32px}.thread-custom button{padding-inline:6px;font-size:11px}.swatches button[aria-pressed=true]{outline:1px solid var(--rust);outline-offset:2px}.stamp-picker{border:0;gap:7px;min-width:0;margin:0;padding:0;display:grid}.stamp-tray{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.stamp-tray button{border:1px solid var(--line);min-height:54px;color:var(--ink);background:#fffaf0;grid-template-rows:28px auto;align-content:start;justify-items:center;gap:4px;padding:5px 2px;display:grid}.stamp-tray button:hover{border-color:var(--ink)}.stamp-tray button[aria-pressed=true]{border-color:var(--rust);box-shadow:inset 0 0 0 1px var(--rust)}.stamp-tray svg{width:100%;height:28px}.stamp-tray span{font-size:10px;line-height:1.2}.stamp-category{border:1px solid var(--line);width:100%;min-height:36px;color:var(--ink);background:#fffaf0;padding:4px 5px;font-size:12px}.word-stamp{gap:4px;display:flex}.word-stamp input{border-bottom:1px dashed var(--rust);background:#fffaf0;flex:1;min-width:0;padding:4px;font-size:12px}.word-stamp button{border:1px solid var(--line);padding:4px 6px;font-size:11px;font-weight:600}@media (max-width:1000px) and (min-width:761px){.studio-body{grid-template-columns:193px minmax(0,1fr) 186px}.tool-grid button{flex-direction:row}.tool-grid svg{width:12px}}@media (max-width:760px){.studio-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.studio-tools,.studio-details{padding:12px 9px}.studio-head>input{font-size:19px}.tool-grid button{min-height:29px;font-size:9px}.tool-grid svg{width:12px}}.workspace-page h1{font-size:clamp(2.15rem,4.5vw,3.8rem)}.workspace-projects{border-top:1px solid var(--ink);margin-top:24px;padding-top:12px}.workspace-projects h2{letter-spacing:-.045em;font-size:clamp(1.35rem,2.4vw,1.8rem)}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.project-card{border:1px solid var(--line);background:#fffaf1;min-width:0}.project-card:hover{border-color:var(--ink)}.project-card-link{display:block}.project-card-art{aspect-ratio:1.18;background:#ece3ce;place-items:center;display:grid;overflow:hidden}.project-card-art img{object-fit:contain;width:100%;height:100%;display:block}.project-card-grid{color:var(--muted);font:500 10px var(--mono);place-items:center;gap:8px;display:grid}.project-card-caption,.project-card-meta{justify-content:space-between;align-items:center;gap:8px;padding-inline:12px;display:flex}.project-card-caption{padding-top:10px}.project-card-caption h3{font:600 17px/1.3 var(--sans);letter-spacing:normal;overflow-wrap:anywhere}.project-card-caption svg{flex:none}.project-card-meta{min-height:35px;color:var(--muted);font-size:12px}.project-actions{position:relative}.project-actions[open]{z-index:2}.project-actions summary{cursor:pointer;place-items:center;min-width:36px;min-height:34px;list-style:none;display:grid}.project-actions summary::-webkit-details-marker{display:none}.project-actions summary:hover,.project-actions[open]>summary{color:var(--ink);background:#f0e9d8}.project-actions-popover{min-width:154px;color:var(--ink);border:1px solid var(--line);background:#fffaf1;padding:4px;display:grid;position:absolute;top:100%;right:0;box-shadow:0 6px 16px #132e441f}.project-actions-popover>button{text-align:left;white-space:nowrap;align-items:center;gap:7px;padding:7px 8px;font-size:13px;display:flex}.project-actions-popover>button:hover,.project-actions-popover>button:focus-visible{background:#f0e9d8}.project-actions-popover .error{padding:5px 8px}.studio-source-card{border:1px solid var(--line);text-align:left;background:#fffaf1;margin:0;padding:0}.studio-source-card img{object-fit:contain;background:#eee5d0;width:100%;height:104px;display:block}.studio-source-card figcaption{font:500 10px var(--mono);flex-wrap:wrap;justify-content:space-between;gap:3px 8px;padding:4px 7px;display:flex}@media (max-width:850px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.project-grid{gap:9px}.project-card-caption h3{font-size:14px}.project-card-caption,.project-card-meta{padding-inline:7px}.project-card-caption svg{width:13px}}.studio-size{border-bottom:1px solid var(--line);gap:7px;padding-bottom:11px;display:grid}.studio-size legend{margin-bottom:5px;font-size:13px;font-weight:650}.studio-size legend span{color:var(--muted);font-weight:400}.studio-image-options{margin-top:8px;font-size:13px}.studio-image-options .field input[type=checkbox]{justify-self:start;width:auto;min-height:0}.studio-size-actions{flex-wrap:wrap;gap:5px;display:flex}.frame{position:relative}.stamp-overlay,.cloth-reference,.embroidery-motion,.fill-reveal{pointer-events:none;position:absolute;inset:0}.editable-cloth[data-needle-cursor]{cursor:none}.cloth-reference{border-radius:inherit;opacity:.4;overflow:hidden}.cloth-reference img{max-width:none;display:block;position:absolute;top:50%;left:50%}:is(html:has(.studio),body:has(.studio)){overscroll-behavior:none;overflow:hidden}body:has(.studio){grid-template-rows:auto minmax(0,1fr);height:100dvh;display:grid}body:has(.studio)>main{min-height:0;overflow:hidden}:is(body:has(.studio)>.footer,body:has(.studio)>.analytics){display:none}.studio{flex-direction:column;height:100%;display:flex;overflow:hidden}.studio-head,.studio-alert{flex:none}.studio-body{flex:1;grid-template-rows:minmax(0,1fr);min-height:0;overflow:hidden}.studio-tools,.studio-details{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;overflow:auto}.studio-tools>*,.studio-details>*,.studio-tool-section>*,.studio-thread-section>*{flex-shrink:0}.workbench{min-height:0;overflow:hidden}.workbench-tools,.workbench-caption{flex:none}.studio-review{background:#fff5d8;border-bottom:1px solid #d9be80;flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:5px 12px;padding:7px 14px;font-size:13px;display:flex}.studio-review p{color:var(--muted);font-size:11px}.stamp-controls{background:#eaf1f4;border-color:#bacbd3}.stamp-controls output{text-align:center;min-width:36px}.revision-timeline{min-width:0;color:var(--ink);background:#faf6e9;border-top:1px solid #b6a78b;flex:none}.timeline-controls{align-items:center;gap:12px;padding:5px 12px;display:flex}.timeline-label,.timeline-navigation button{border:1px solid var(--line);background:#fffbf3;justify-content:center;align-items:center;min-height:33px;display:flex}.timeline-label{gap:6px;padding:0 8px;font-size:12px;font-weight:650}.timeline-chevron{transition:transform .12s}.timeline-label[aria-expanded=true] .timeline-chevron{transform:rotate(180deg)}.timeline-scrub{flex:1;align-items:center;gap:9px;min-width:30px;display:flex}.timeline-scrub input{min-width:22px;height:24px;accent-color:var(--moss);cursor:ew-resize;flex:1;margin:0}.timeline-position{white-space:nowrap;font:600 11px var(--mono)}.timeline-position span{color:var(--muted);font-weight:400}.timeline-navigation{align-items:center;gap:4px;display:flex}.timeline-step{min-width:32px}.timeline-latest{gap:5px;padding:0 8px;font-size:12px;font-weight:650}.timeline-navigation .timeline-latest[data-live=true]{opacity:1;color:#334a30;background:#eaf0e4;border-color:#b8c5ac}.timeline-latest[data-live=true]:before{content:"";background:#52694e;border-radius:50%;width:6px;height:6px}.timeline-navigation button:disabled{cursor:default}.timeline-rail{overscroll-behavior-inline:contain;scrollbar-width:thin;padding:1px 12px 6px;display:flex;position:relative;overflow-x:auto}.timeline-rail[hidden]{display:none}.timeline-marker{text-align:left;flex:none;justify-items:start;gap:3px;min-width:106px;padding:7px 8px 3px;display:grid;position:relative}.timeline-marker:before{content:"";background:#baab8f;height:1px;position:absolute;inset:11px 0 auto}.timeline-marker:first-child:before{left:12px}.timeline-marker:last-child:before{width:12px;right:auto}.timeline-marker[aria-pressed=true]{background:#e4edf1}.timeline-marker:hover,.timeline-label:hover,.timeline-navigation button:enabled:hover{background:#eee7d7}.timeline-node{z-index:0;background:#fffbf3;border:1px solid #a59478;border-radius:50%;width:9px;height:9px}.timeline-marker[aria-pressed=true] .timeline-node{background:var(--moss);border-color:var(--moss);box-shadow:0 0 0 2px #e4edf1}.timeline-marker-label{white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:flex}.timeline-marker-label b,.timeline-marker-size{font:500 10px var(--mono)}.timeline-marker-size{color:var(--muted)}@media (max-width:760px),(max-height:520px) and (max-width:1024px){.timeline-controls{gap:7px;padding:5px 8px}.timeline-label,.timeline-navigation button{min-height:38px}.timeline-step{min-width:34px}.timeline-position span{display:none}}@media (max-width:360px){.timeline-label svg:first-child{display:none}.timeline-controls,.timeline-scrub{gap:5px}}.history-review{background:#e4eef0;border-color:#bacbd3}.history-loading{text-align:center;justify-items:center;gap:8px;display:grid}.camera-viewport{touch-action:none;overscroll-behavior:none;cursor:grab;flex:1;min-height:0;position:relative;overflow:clip;container-type:size}.camera-scene{transform-origin:50%;will-change:transform;width:max(1px,min(calc(100cqw - 32px),calc((100cqh - 38px) * var(--cloth-ratio))));-webkit-user-select:none;user-select:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.camera-scene[hidden]{display:none}.embroidery-needle{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;inset:0}.camera-viewport[data-pan-tool] .editable-cloth{cursor:grab}.camera-viewport[data-panning],.camera-viewport[data-panning] .editable-cloth{cursor:grabbing}.camera-viewport .history-loading{place-content:center;position:absolute;inset:0}.workbench-tools{z-index:1;align-items:center;position:relative}.studio-reference-toggle{cursor:pointer;align-items:center;gap:7px;min-height:32px;padding-inline:8px;font-size:13px;font-weight:600;display:flex}.studio-reference-toggle input{width:16px;height:16px;accent-color:var(--moss)}.studio-reference-toggle:has(:disabled){color:var(--muted);cursor:default}.camera-tools,.camera-zoom{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.camera-zoom{border:1px solid var(--line);background:#fffaf1;gap:0}.camera-zoom button,.camera-help summary{justify-content:center;align-items:center;gap:4px;min-width:32px;min-height:32px;padding:5px 7px;display:flex}.camera-zoom button:hover,.camera-help summary:hover{background:#eee6d3}.camera-zoom button:disabled{cursor:default}.camera-zoom .camera-fit-desktop{border-left:1px solid var(--line);font-size:11px;font-weight:600}.camera-zoom output{text-align:center;min-width:43px;font:500 10px var(--mono)}.camera-zoom .camera-fit-mobile,.studio-reference-icon{display:none}.camera-help{position:relative}.camera-help summary{border:1px solid var(--line);background:#fffaf1;list-style:none}.camera-help summary::-webkit-details-marker{display:none}.camera-help>div{z-index:5;border:1px solid var(--line);background:#fffaf1;width:min(270px,82vw);padding:12px;position:absolute;top:calc(100% + 5px);right:0;box-shadow:0 4px 12px #3a302624}.camera-help p{margin-top:5px;font-size:12px}.touch-mode.segmented{display:none}.touch-mode button{align-items:center;gap:4px;display:flex}@media (any-pointer:coarse){.touch-mode.segmented{display:inline-flex}.camera-zoom button,.camera-help summary{min-width:38px;min-height:38px}}.mobile-menu,.create-mode-short,.upload-thumbnail,.studio-language,.studio-mobile-dock,.studio-view-select,.studio-drawer-head,.studio-drawer-dismiss,.studio-save-short{display:none}.studio-tool-section,.studio-thread-section{display:contents}.create-submit>.button{width:100%}.photo-upload small{overflow-wrap:anywhere;display:block}@media (max-width:680px){.nav.wrap{gap:6px;width:calc(100% - 24px)}.nav-actions{gap:4px}.nav-actions .button{gap:5px;min-height:44px;padding-inline:9px}.language{text-underline-offset:3px;border:0;place-items:center;min-width:38px;min-height:44px;text-decoration:underline;display:inline-grid}.mobile-menu{display:block}.mobile-menu button{place-items:center;min-width:44px;min-height:44px;display:grid}.nav .mobile-menu nav{border:1px solid var(--ink);background:#fffaf1;min-width:180px;margin:0;padding:5px;display:none;position:fixed;inset:58px 12px auto auto;box-shadow:0 10px 25px #132e4425}.nav .mobile-menu nav:popover-open{gap:0;display:grid}.mobile-menu nav a{align-items:center;min-height:46px;padding-inline:12px;display:flex}.mobile-menu nav a+a{border-top:1px solid var(--line)}.page{padding-block:24px 36px}.page h1{overflow-wrap:anywhere;margin:5px 0 11px;font-size:clamp(2rem,9vw,3.2rem)}.panel,.feature-card{padding:15px}.form :is(input,select,textarea):not([type=checkbox],[type=radio]),.field :is(input,select,textarea):not([type=checkbox],[type=radio]){min-height:44px;font-size:16px}.gallery-art{padding:15px}.create-page .page-lede{margin-bottom:14px;font-size:14px}.create-modes{margin-bottom:12px}.create-modes legend{font-size:13px}.create-mode-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.create-mode{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:64px;padding:5px;display:flex;position:relative}.create-mode input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.create-mode:has(:focus-visible){outline:2px solid var(--rust);outline-offset:2px}.create-mode:has(:checked){box-shadow:inset 0 -3px var(--moss)}.create-mode-copy{display:none}.create-mode-short{font-size:13px;line-height:1.15;display:block}.photo-create{gap:12px}.photo-create h2{margin-block:0 2px}.photo-create .form{gap:12px}.photo-create[data-mode=photo]:not([data-has-photo]) .create-optional{display:none}.form .photo-upload{text-align:left;cursor:pointer;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;min-height:68px;padding:10px;display:grid;position:relative}.photo-upload>svg{justify-self:center}.photo-upload input[type=file]{opacity:0;cursor:pointer;width:100%;max-width:none;height:100%;margin:0;position:absolute;inset:0}.photo-upload:focus-within{outline:2px solid var(--rust);outline-offset:2px}.photo-upload[data-has-photo]>svg{display:none}.upload-thumbnail{object-fit:cover;background:var(--linen);width:44px;height:44px;display:block}.photo-methods legend{margin-bottom:4px}.form .photo-method{min-height:54px;padding:7px 8px}.photo-result[data-idle-photo]{display:none}.photo-result{scroll-margin-top:10px}.photo-result .showcase-canvas{width:min(100%,300px,43svh)}.photo-result .photo{max-height:min(43svh,360px)}.photo-result .segmented button{min-height:42px}.create-submit[data-dock]{z-index:2;padding:7px 8px max(7px,env(safe-area-inset-bottom));background:#fffaf1;margin-inline:-8px;position:sticky;bottom:0;box-shadow:0 -5px 9px #fffaf1}.photo-create form:has(:is(textarea,input:not([type=file],[type=radio],[type=checkbox])):focus) .create-submit{position:static}.create-result-action,.create-submit>.button{min-height:48px}.project-card-meta .project-actions summary{min-width:44px;min-height:44px}.project-actions-popover>button{min-height:44px}}@media (max-width:680px) and (max-height:460px),(max-height:520px) and (max-width:1024px) and (any-pointer:coarse){.photo-result{scroll-margin-top:10px}.create-result-action{min-height:48px}.photo-result .showcase-canvas{width:min(100%,300px,43svh)}.photo-result .photo{max-height:43svh}.photo-create .form :is(input,select,textarea):not([type=checkbox],[type=radio]){min-height:44px;font-size:16px}}@media (max-width:360px){.nav .brand{font-size:14px}.nav .brand-mark{width:31px;height:31px}.nav-actions .button{padding-inline:6px;font-size:12px}.nav-actions .button svg{display:none}}@media (max-width:760px),(max-height:520px) and (max-width:1024px){body:has(.studio){grid-template-rows:minmax(0,1fr)}body:has(.studio)>.top{display:none}.studio-head{grid-template-columns:auto minmax(0,1fr) auto;gap:5px;padding:4px 8px}.studio-head>input{text-align:left;padding-inline:5px;font-size:18px}.studio-back,.studio-language .language{place-items:center;min-width:44px;min-height:44px;display:grid}.studio-back span{display:none}.studio-head-actions{gap:2px}.studio-head-actions>span[role=status]{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.studio-head-actions>.button{gap:6px;min-height:44px;padding-inline:9px;font-size:12px}.studio-head-actions .studio-save-short{display:inline}.studio-head-actions .studio-save-project{display:none}.studio-language{display:block}.studio-language .language{text-underline-offset:3px;border:0;text-decoration:underline}.studio-body{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);position:relative}.studio-body .workbench{grid-area:1/1}.studio :is(.studio-tools,.studio-details){z-index:4;border:1px solid var(--line);scrollbar-gutter:auto;background:#fffaf0;border-bottom:0;max-height:min(100%,53dvh);padding:0 13px 14px;display:none;position:absolute;inset:auto 0 0;box-shadow:0 -8px 26px #162f4429}.studio-body:is([data-mobile-panel=tools],[data-mobile-panel=threads]) .studio-tools,.studio-body[data-mobile-panel=details] .studio-details{display:flex}.studio-body[data-mobile-panel=tools] .studio-thread-section,.studio-body[data-mobile-panel=threads] .studio-tool-section{display:none}.studio-drawer-dismiss{z-index:3;cursor:default;background:#142f431a;display:block;position:absolute;inset:0}.studio-drawer-head{z-index:1;border-bottom:1px solid var(--line);background:#fffaf0;justify-content:space-between;align-items:center;min-height:49px;margin-inline:-13px;padding-inline:13px 5px;display:flex;position:sticky;top:0}.studio-drawer-head button{place-items:center;width:44px;height:44px;display:grid}.studio .tool-grid button,.studio .studio-row button,.studio .stamp-tray button{min-height:44px;font-size:12px}.thread-picker-actions .button,.thread-option,.thread-custom .button{min-height:44px}.thread-picker input[type=search]{font-size:16px}.studio .tool-grid svg{width:16px}.studio .tool-grid kbd,.studio .desktop-undo{display:none}.studio .stamp-tray{grid-template-columns:repeat(4,minmax(0,1fr))}.studio .stamp-tray span{font-size:11px}.stamp-category,.word-stamp button{min-height:44px}.stamp-category{font-size:16px}.studio .swatches{grid-template-columns:repeat(auto-fit,minmax(47px,1fr));gap:9px 5px}.studio .swatches button{min-height:46px}.studio .studio-source-card img{height:66px}.studio .studio-details h2{font-size:23px}.studio :is(.studio-tools,.studio-details) summary{min-height:44px;padding-block:10px;display:list-item}.studio :is(.field input,.field select,.word-stamp input){font-size:16px}.studio :is(.field input,.field select):not([type=checkbox],[type=range]){min-height:44px}.studio :is(.workbench-tools>.segmented,.camera-tools>.touch-mode,.workbench-caption){display:none}.studio .workbench-tools{flex-wrap:nowrap;gap:4px;padding:4px 7px}.studio-view-select{border:1px solid var(--line);min-width:0;min-height:44px;color:var(--ink);background:#fffaf1;border-radius:2px;flex:1;padding:0 5px;font-size:16px;display:block}.studio-reference-toggle{border:1px solid var(--line);background:#fffaf1;flex:0 0 44px;justify-content:center;min-height:44px;padding:0;position:relative}.studio-reference-toggle input{opacity:0;width:100%;height:100%;cursor:inherit;margin:0;position:absolute;inset:0}.studio-reference-toggle:has(:checked){background:var(--ink);border-color:var(--ink);color:var(--paper)}.studio-reference-toggle:has(:focus-visible){outline:2px solid var(--rust);outline-offset:2px}.studio-reference-toggle:has(:disabled){opacity:.55}.studio-reference-toggle .studio-reference-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.studio-reference-icon{display:block}.camera-tools,.camera-zoom{flex-wrap:nowrap}.camera-tools{flex:none;gap:4px}.camera-zoom button,.camera-help summary{width:44px;min-width:44px;min-height:44px}.camera-zoom :is(.camera-zoom-level,.camera-fit-desktop){display:none}.camera-zoom .camera-fit-mobile{gap:2px;padding-inline:0;display:flex}.camera-zoom .camera-fit-mobile output{min-width:0}.studio .thread-highlight-clear{min-height:38px;position:absolute;inset:calc(100% + 5px) 7px auto auto}.studio-mobile-dock{padding-bottom:env(safe-area-inset-bottom,0px);background:#f9f5e8;border-top:1px solid #b6a78b;flex:none;display:block}.studio-mobile-shortcuts,.studio-mobile-tabs,.studio-mobile-undo{align-items:center;display:flex}.studio-mobile-shortcuts{border-bottom:1px solid var(--line);justify-content:space-between;gap:5px;padding:3px 8px}.studio-mobile-shortcuts .touch-mode{flex-wrap:nowrap;display:flex}.studio-mobile-shortcuts .touch-mode button{min-height:44px;font:600 13px var(--sans)}.studio-mobile-undo{gap:4px;margin-left:auto}.studio-mobile-undo button{border:1px solid var(--line);background:#fffaf1;place-items:center;min-width:44px;min-height:44px;display:grid}.studio-mobile-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:3px 8px;display:grid}.studio-mobile-tabs button{justify-content:center;align-items:center;gap:6px;min-height:46px;padding-inline:4px;font-size:13px;font-weight:600;display:flex}.studio-mobile-tabs button[aria-expanded=true]{background:var(--ink);color:var(--paper)}.thread-dot{border:1px solid #655644;border-radius:50%;flex:none;width:17px;height:17px;box-shadow:inset 0 0 0 2px #fffaf0}.studio-review .button{min-height:44px}.studio button,.studio summary{touch-action:manipulation}}@media (max-height:520px) and (min-width:600px) and (max-width:1024px){.studio-mobile-dock{justify-content:center;align-items:center;display:flex}.studio-mobile-shortcuts{border-bottom:0;border-right:1px solid var(--line)}.studio-mobile-tabs{flex:1;max-width:430px}.studio :is(.studio-tools,.studio-details){width:min(300px,48%);max-height:none;inset:0 0 0 auto}.studio-review{grid-template-columns:minmax(0,1fr) auto;padding:4px 8px;display:grid}.revision-timeline{z-index:2;position:relative}.timeline-rail{border-top:1px solid var(--line);background:#faf6e9;position:absolute;inset:auto 0 100%}}@media (max-width:360px){.studio-head-actions>.button:not(.studio-try-photo) span,.studio-try-photo svg{display:none}.studio .workbench-tools{gap:3px;padding-inline:4px}.camera-tools{gap:3px}.studio-view-select{padding-inline:3px}.studio-head-actions>.button{min-width:44px}.studio-mobile-tabs button{gap:4px}}.project-public-badge,.shared-status{color:#24513b;background:#e5ece4;align-items:center;gap:6px;width:max-content;padding:3px 8px;font-size:12px;font-weight:650;display:inline-flex}.project-public-badge{margin-inline-start:auto;padding:2px 6px}.share-dialog{border:1px solid var(--ink);width:min(440px,100% - 24px);max-height:calc(100dvh - 24px);color:var(--ink);text-align:left;background:#fffaf1;margin:auto;padding:0;position:fixed;inset:0;overflow:auto}.share-dialog::backdrop{background:#10293e70}.share-dialog-content{gap:13px;padding:17px 19px 20px;display:grid}.share-dialog-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.share-dialog-head h2,.shared-pattern h3{letter-spacing:-.03em;font-size:1.38rem}.share-dialog-head button{place-items:center;min-width:44px;min-height:44px;display:grid}.share-dialog-actions{flex-wrap:wrap;gap:7px;display:flex}.share-dialog-actions>*{flex:1 0 max-content}.share-dialog input{min-width:0;min-height:44px;font-size:16px}.studio-head-actions .studio-share{min-width:36px;min-height:36px;padding:0}.studio-print-options{border:0;gap:9px;min-width:0;margin:0;padding:0;display:grid}.studio-print-options .check{min-height:32px;font-size:14px}.studio-print-dialog .button{min-height:44px}.shared-pattern h1{overflow-wrap:anywhere}.shared-pattern .split{margin-top:14px}.shared-pattern .showcase-canvas{width:min(100%,420px,54svh);container-type:size}.shared-pattern .showcase-canvas>:is(.frame,.hoop){max-width:min(100%,calc(100cqh * var(--chart-ratio)))}.shared-pattern .segmented button{min-height:44px}.shared-measurements>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:10px;padding:7px 0;display:flex}.shared-measurements dd{text-align:right;margin:0;font-weight:600}.shared-thread-list{gap:5px;display:grid}.shared-thread-list li{align-items:center;gap:7px;display:flex}.shared-thread-list li span{border:1px solid var(--line);width:14px;height:14px}@media (max-width:760px),(max-height:520px) and (max-width:1024px){.studio-head-actions .studio-share{min-width:44px;min-height:44px;padding:0}.studio-head-actions .studio-print{min-width:44px;padding:0}.studio-head-actions .studio-print span{display:none}.studio-print-options select{font-size:16px}}.gallery-hero{border-bottom:1px solid var(--line);background:#eae1cc}.gallery-hero-layout{grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(24px,5vw,70px);min-height:355px;padding-block:39px 45px;display:grid}.gallery-hero h1{max-width:12ch;font-size:clamp(3rem,6vw,6rem)}.gallery-hero-copy p{max-width:37ch;color:var(--muted);margin-top:17px;font-size:clamp(15px,1.65vw,19px)}.gallery-hero-jump,.gallery-detail-back a,.gallery-create-link a,.gallery-related .text-link{align-items:center;gap:8px;font-weight:650;display:inline-flex}.gallery-hero-jump{border-bottom:1px solid;margin-top:19px;padding-block:8px 4px}.gallery-specimens{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;padding:12px;display:grid}.gallery-specimen{background:#fffaf0;border:1px solid #bbac93;grid-template-rows:auto 1fr;padding:6px;transition:transform .18s;display:grid;position:relative;transform:rotate(-7deg);box-shadow:0 6px 12px #564a3330}.gallery-specimen:nth-child(2){z-index:1;transform:rotate(5deg)translateY(16px)}.gallery-specimen:nth-child(3){transform:rotate(10deg)translateY(-10px)}.gallery-specimen:is(:hover,:focus-visible){z-index:2;transform:translateY(-5px)}.gallery-specimen img{width:100%;height:auto;display:block}.gallery-specimen span{font:500 clamp(9px, 1vw, 12px)/1.35 var(--mono);text-align:center;padding:5px 2px 3px}.gallery-catalog{padding-block:24px 50px;scroll-margin-top:10px}.gallery-collections{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:7px 9px;padding-bottom:20px;display:flex}.gallery-collections a{border:1px solid var(--line);background:#fffaf1;border-radius:2px;place-items:center;min-height:40px;padding-inline:13px;font-weight:600;display:grid}.gallery-collections a:hover{border-color:var(--ink)}.gallery-collections a[aria-current=page]{border-color:var(--ink);background:var(--ink);color:#fffaf1}.gallery-collection,.gallery-related{margin-top:32px}.gallery-collection-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:5px 14px;margin-bottom:13px;display:flex}.gallery-collection-heading h2{font-family:var(--serif);letter-spacing:-.035em;font-size:clamp(1.85rem,3vw,3rem)}.gallery-collection-heading>span{color:var(--muted);font:500 12px/1.5 var(--mono)}.gallery-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;display:grid}.gallery-pattern-card{border:1px solid var(--line);background:#fffaf1;border-radius:2px;min-width:0;display:block;overflow:hidden}.gallery-pattern-card:hover{border-color:var(--rust)}.gallery-pattern-art{aspect-ratio:1.1;background:#f6edd9;border-bottom:1px solid #e2d5ba;place-items:center;display:grid;overflow:hidden}.gallery-pattern-art img{object-fit:contain;width:100%;height:100%;min-height:0;transition:transform .18s;display:block}.gallery-pattern-art[data-studio=false] img{object-fit:cover}.gallery-pattern-card:hover img{transform:scale(1.045)}.gallery-pattern-copy{padding:12px 27px 14px 12px;position:relative}.gallery-pattern-copy h3{font:700 16px/1.2 var(--sans);letter-spacing:-.015em}.gallery-pattern-copy p{color:var(--muted);margin-top:6px;font-size:13px;line-height:1.4}.gallery-card-arrow{color:var(--rust);position:absolute;top:12px;right:8px}.gallery-create-link{margin-top:30px}.gallery-detail{padding-block:22px 50px}.gallery-detail-back{align-items:center;gap:14px;margin-bottom:17px;display:flex}.gallery-detail-back a{color:var(--rust);padding-block:7px}.gallery-detail-back span{border-left:1px solid var(--line);color:var(--muted);padding-left:14px}.gallery-detail-layout{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start;gap:26px;display:grid}.gallery-detail-visual{border:1px solid var(--line);background-color:#efe5ce;background-image:linear-gradient(#97856017 1px,#0000 1px),linear-gradient(90deg,#97856017 1px,#0000 1px);background-size:10px 10px;min-width:0;padding:28px clamp(16px,3vw,40px) 20px}.gallery-detail-visual .showcase-canvas{width:min(100%,470px);container-type:size}.gallery-detail-visual .showcase-canvas>.frame{max-width:min(100%, calc(100cqh * var(--gallery-ratio,1)))}.gallery-detail-visual .segmented button{min-height:36px;padding-inline:13px;font-size:12px}.gallery-detail-info{min-width:0;padding:9px 0}.gallery-detail-info h1{overflow-wrap:anywhere;font-size:clamp(2.6rem,4.3vw,4.65rem)}.gallery-detail-description{color:var(--muted);max-width:44ch;margin-top:11px;font-size:17px}.gallery-actions{gap:10px;margin-top:18px;display:grid}.gallery-size-label{gap:5px;font-weight:650;display:grid}.gallery-size-label select{min-height:44px;font-size:16px;font-weight:500}.gallery-action-buttons{grid-template-columns:1fr 1fr;gap:8px;display:grid}.gallery-action-buttons svg{flex:none}.gallery-action-error{color:var(--rust)}.gallery-detail-specs{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));margin:19px 0 0;display:grid}.gallery-detail-specs>div{padding:9px 4px 9px 0}.gallery-detail-specs>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.gallery-detail-specs dt{color:var(--muted);font-size:12px}.gallery-detail-specs dd{margin:1px 0 0;font-weight:650}.gallery-threads{margin-top:9px}.gallery-threads summary{cursor:pointer;min-height:38px;padding-block:8px;font-weight:650}.gallery-threads summary span{color:var(--muted);margin-left:5px}.gallery-threads ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:0;padding:2px 0;display:grid}.gallery-threads li{align-items:center;gap:6px;font-size:12px;display:flex}.gallery-thread-swatch{border:1px solid #132e444d;flex:none;width:13px;height:13px}.gallery-related .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:730px}@media (max-width:1050px){.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gallery-action-buttons{grid-template-columns:1fr}}@media (max-width:800px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gallery-hero-layout{gap:16px;min-height:0;padding-block:28px 37px}.gallery-detail-layout{grid-template-columns:minmax(0,1fr);gap:16px}.gallery-detail-info{display:contents}.gallery-detail-layout{grid-template-areas:"title""description""preview""actions""specs""threads";gap:8px}.gallery-detail-info h1{grid-area:title}.gallery-detail-description{grid-area:description;margin:0 0 9px}.gallery-detail-visual{grid-area:preview}.gallery-detail-visual .showcase-canvas{width:min(100%,330px,44svh)}.gallery-actions{grid-area:actions;margin-top:9px}.gallery-action-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-detail-specs{grid-area:specs;margin-top:9px}.gallery-threads{grid-area:threads}}@media (max-width:610px){.gallery-hero-layout{grid-template-columns:minmax(0,1fr);gap:10px;padding-block:25px}.gallery-hero h1{max-width:none;font-size:clamp(2.9rem,10.4vw,4.4rem)}.gallery-hero-copy p{margin-top:9px}.gallery-hero-jump{margin-top:7px}.gallery-specimens{max-width:390px;margin:auto;padding-inline:12px}.gallery-collections{gap:5px;padding-bottom:13px}.gallery-collections a{min-height:38px;padding-inline:9px;font-size:13px}.gallery-grid,.gallery-related .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-pattern-copy{padding:10px 22px 11px 8px}.gallery-pattern-copy h3{font-size:15px}.gallery-pattern-copy p{font-size:12px}.gallery-card-arrow{width:13px;top:9px;right:5px}.gallery-collection,.gallery-related{margin-top:24px}.gallery-action-buttons .button{padding-inline:6px;font-size:13px}}@media (prefers-reduced-motion:reduce){.gallery-specimen,.gallery-pattern-art img{transition:none}}.gallery-filters{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:end;gap:10px;padding:14px 0;display:flex}.gallery-extra-link{margin-inline-start:18px}.gallery-download-intro{max-width:920px;margin-block:16px 18px}.gallery-download-intro h1{text-wrap:balance;font-size:clamp(1.95rem,6vw,3.65rem)}.gallery-download-intro .page-lede{margin-block:8px 0}.gallery-download-intro-actions{flex-wrap:wrap;align-items:center;gap:4px 16px;margin-top:14px;display:flex}.gallery-download-intro-actions>a{align-items:center;gap:6px;min-height:44px;display:inline-flex}.gallery-download-grid{grid-template-columns:repeat(3,minmax(0,1fr));scroll-margin-top:12px}.gallery-download-pattern{flex-direction:column;display:flex}.gallery-download-pattern .gallery-pattern-copy{flex-direction:column;flex:1;align-items:start;gap:6px;padding:12px;display:flex}.gallery-download-pattern .gallery-pattern-copy h2{font:600 clamp(1rem,2vw,1.45rem)/1.2 var(--sans);letter-spacing:normal}.gallery-download-pattern h2 a:hover{text-decoration:underline}.gallery-download-pattern .gallery-pattern-copy .gallery-download-use{color:var(--rust);order:-1;margin:0;font-weight:650}.gallery-download-actions{flex-wrap:wrap;align-items:center;gap:4px 11px;margin-top:auto;font-size:13px;display:flex}.gallery-download-actions .text-link{align-items:center;min-height:44px;display:inline-flex}.motif-personalizer{border:1px solid var(--line);background:#f9f1e1;grid-template-columns:minmax(220px,.62fr) minmax(0,1fr);align-items:center;gap:clamp(0px,5vw,56px);margin-top:24px;padding:16px clamp(15px,4vw,48px);scroll-margin-top:12px;display:grid}.motif-personalizer-preview{width:min(100%,275px);margin-inline:auto}.motif-personalizer-copy h2{margin:0 0 8px;font-size:clamp(1.7rem,3.2vw,2.7rem)}.motif-personalizer-copy>p{max-width:53ch;color:var(--muted)}.motif-personalizer-form{gap:6px;width:min(100%,320px);margin-top:12px;display:grid}.motif-personalizer-form input{width:100%;min-height:44px;color:var(--ink);background:#fffcf5;border:1px solid #bcaf99;border-radius:2px;padding:8px 10px;font-size:16px}.motif-personalizer-form .button{width:fit-content;min-height:44px;margin-top:5px}.motif-personalizer-share{align-items:center;min-height:44px;margin-top:4px;display:inline-flex}.gallery-name-link{align-items:center;width:fit-content;min-height:44px;display:inline-flex}:is(.christmas-tips,.pet-photo-guide){border-top:1px solid var(--line);margin-top:30px;padding-top:20px}:is(.christmas-tips,.pet-photo-guide) h2{font-size:clamp(1.6rem,3vw,2.3rem)}:is(.christmas-tips,.pet-photo-guide) p{max-width:57ch;margin:9px 0}.christmas-tips a{align-items:center;gap:5px;display:inline-flex}.christmas-share{margin-top:20px}.christmas-share a{text-underline-offset:3px;text-decoration:underline}@media (max-width:680px){.gallery-extra-link{margin-inline-start:0}.gallery-download-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.motif-personalizer{grid-template-columns:minmax(0,1fr);gap:12px}.motif-personalizer-preview{width:min(100%,205px)}.motif-personalizer-form{width:100%}.gallery-download-pattern .button{padding-inline:6px;font-size:12px}}@media (max-width:360px){.gallery-download-grid{grid-template-columns:minmax(0,1fr)}}.gallery-filters label{gap:3px;min-width:100px;font-size:13px;font-weight:650;display:grid}.gallery-filters .gallery-query{flex:1;min-width:min(100%,220px)}.gallery-filters input,.gallery-filters select,.gallery-filters .button{min-height:40px}.gallery-filters .gallery-beginner{align-items:center;gap:6px;min-height:40px;display:flex}.gallery-filters .gallery-beginner input{width:16px;height:16px;min-height:0;accent-color:var(--moss);padding:0}.gallery-filter-summary{justify-content:space-between;gap:10px;margin-top:12px;font-size:13px;display:flex}.gallery-empty{color:var(--muted);padding-block:30px}@media (max-width:600px){.gallery-filters{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gallery-filters .gallery-query,.gallery-filters .button{grid-column:1/-1}.gallery-filters input:not([type=checkbox]),.gallery-filters select{min-height:44px;font-size:16px}}.thread-highlight{pointer-events:none;position:absolute;inset:0}.cloth-selection{pointer-events:none;outline-offset:-1px;outline:2px solid #135b8b;position:absolute;box-shadow:0 0 0 1px #fffaf1}.thread-highlight-clear{min-height:32px;color:var(--ink);background:#eaf1f4;border:1px solid #9fb8c5;justify-content:space-between;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:650;display:inline-flex}.thread-highlight-clear .thread-color-chip{width:12px;height:12px}.layer-list{border-block:1px solid var(--line);min-width:0;padding:8px 0}.layer-list h2{font:650 14px var(--sans);align-items:center;gap:6px;margin:0 0 7px;display:flex}.layer-list ul{max-height:220px;margin:0;padding:0;list-style:none;overflow:auto}.layer-list li{border:1px solid #0000;align-items:center;min-height:36px;display:flex}.layer-list li[data-selected=true]{background:#edf3f5;border-color:#88a8bc}.layer-list li button{place-items:center;min-width:27px;min-height:35px;display:grid}.layer-list li .layer-name{text-align:left;overflow-wrap:anywhere;flex:1;justify-content:space-between;align-items:center;gap:4px;min-width:0;padding-inline:4px;font-size:12px;display:flex}.layer-name small{white-space:nowrap;color:var(--muted)}.layer-controls{background:#eaf1f4;border-color:#bacbd3}.layer-controls form{flex-wrap:wrap;align-items:end;gap:5px;display:flex}.layer-controls label{gap:2px;font-size:11px;display:grid}.layer-controls input{border:1px solid var(--line);background:#fffaf1;width:55px;min-height:36px;padding-inline:4px;font-size:14px}.layer-actions{align-self:end}.stamp-size-slider{gap:2px;min-width:106px;font-size:11px;display:grid}.stamp-size-slider span{justify-content:space-between;gap:4px;display:flex}.stamp-size-slider input{width:100%;accent-color:var(--moss)}@media (max-width:760px){.studio .layer-list li button{min-width:36px;min-height:44px}.studio .layer-list .layer-name{font-size:14px}.layer-controls input{min-height:44px;font-size:16px}}.gallery-pattern-copy .gallery-match{color:var(--moss);font-weight:650}.layer-compact-label{display:none}@media (max-width:760px){.layer-controls[data-has-layer=true]{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 8px;padding:5px 8px;display:grid}.layer-controls[data-has-layer=true] form{flex-wrap:nowrap;grid-area:2/1/auto/-1}.layer-controls[data-has-layer=true] .layer-actions{grid-area:1/2}.layer-controls .layer-actions button{min-width:44px;min-height:44px;padding:4px}.layer-wide-label{display:none}.layer-compact-label{display:inline}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
