:root{--paper: #F1F0E7;--stone: #E3E1D5;--stone-hover: #D7D5C8;--white: #FFFFFF;--ink: #222222;--pencil: #6E6C64;--ok: #3F6E45;--ok-bg: #DCE5D1;--warn: #8E6A10;--warn-bg: #F1E2B0;--err: #A9432E;--err-bg: #F2D6CB;--f: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--pen-underline: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 10' preserveAspectRatio='none'%3E%3Cpath d='M2 6.5C18 3 34 8 52 5.2S90 3.4 118 6' fill='none' stroke='%23222222' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");color-scheme:light}@font-face{font-family:Sunflower Ranch;src:url(/fonts/SunflowerRanch-Regular.otf) format("opentype");font-weight:100 900;font-display:swap}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--f);font-size:16px;line-height:1.55;-webkit-text-size-adjust:100%}h1,h2,h3{margin:0;line-height:1.08;font-weight:500;letter-spacing:-.025em;text-wrap:balance}h1{font-size:clamp(36px,6.4vw,64px)}h2{font-size:clamp(26px,4vw,36px)}h3{font-size:20px;letter-spacing:-.01em;font-weight:600}p{margin:0}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px dashed var(--ink);outline-offset:3px}img{max-width:100%}.pencil{color:var(--pencil)}.small{font-size:14px}.label{font-size:14px;font-weight:600;color:var(--pencil)}.wrap{max-width:1180px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.underline-on{background:var(--pen-underline) no-repeat left bottom / 100% 8px}.top{position:sticky;top:0;z-index:5;background:var(--paper);padding-top:env(safe-area-inset-top,0px)}.top .wrap{display:flex;align-items:center;gap:20px;padding-block:14px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand .doodle{height:38px;width:auto}.brand .word{height:17px;width:auto}.nav{display:flex;gap:22px;margin-left:auto;overflow-x:auto;max-width:100%}.nav a{padding:4px 0 8px;text-decoration:none;color:var(--pencil);font-weight:500;white-space:nowrap}.nav a:hover{color:var(--ink)}.nav a[aria-current=page]{color:var(--ink);background:var(--pen-underline) no-repeat left bottom / 100% 8px}main{padding-block:32px 96px}.page{display:grid;gap:32px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:var(--stone);padding:11px 18px;font-weight:600;cursor:pointer;text-decoration:none;color:var(--ink)}.btn:hover{background:var(--stone-hover)}.btn.ink{background:var(--ink);color:var(--white)}.btn.ink:hover{background:#000}.btn.paper{background:var(--paper)}.btn.sm{padding:7px 12px;font-size:14px}.btn[disabled]{opacity:.4;cursor:not-allowed}.btn .ico{width:20px;height:20px;flex:none}.tag{display:inline-block;font-size:13px;font-weight:600;padding:2px 8px;background:var(--stone)}.tag.ink{background:var(--ink);color:var(--white)}.msg{padding:12px 14px;font-size:15px}.msg.ok{background:var(--ok-bg);color:var(--ok)}.msg.warn{background:var(--warn-bg);color:var(--warn)}.msg.err{background:var(--err-bg);color:var(--err)}.panel{background:var(--white);padding:20px;display:grid;gap:14px;align-content:start;min-width:0}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.seg{display:flex;gap:18px;flex-wrap:wrap}.seg button{border:0;background:none;padding:4px 0 8px;cursor:pointer;font-weight:500;color:var(--pencil)}.seg button[aria-pressed=true]{color:var(--ink);background:var(--pen-underline) no-repeat left bottom / 100% 8px}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--white);padding:11px 18px;font-weight:600;z-index:20;max-width:calc(100% - 32px)}.toast.ok{background:var(--ok-bg);color:var(--ok)}.toast.warn{background:var(--warn-bg);color:var(--warn)}.toast.err{background:var(--err-bg);color:var(--err)}.hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px 40px;align-items:center}.hero .doodle{width:clamp(120px,18vw,200px);height:auto}.hero .word{height:clamp(26px,4vw,40px);width:auto;display:block;margin-bottom:16px}.hand-title{font-family:"Sunflower Ranch",var(--f);font-weight:400;font-size:clamp(34px,5.6vw,64px);line-height:1.1;letter-spacing:.01em}.hero .lede{font-size:clamp(20px,2.6vw,26px);line-height:1.3;letter-spacing:-.01em}@media(max-width:640px){.hero{grid-template-columns:1fr}}.feature{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);background:var(--white);padding:16px;gap:16px}.feature .strip{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.feature .strip canvas{width:100%;aspect-ratio:1;display:block;background:var(--paper)}.feature .txt{padding:12px;display:grid;gap:14px;align-content:center}@media(max-width:800px){.feature{grid-template-columns:1fr}}.grid-kits{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:32px 20px}.kitcard{display:grid;gap:10px;text-decoration:none}.kitcard canvas{width:100%;aspect-ratio:1;display:block;background:var(--white)}.kitcard .nm{font-size:20px;font-weight:600;letter-spacing:-.01em}.kitcard:hover .nm{background:var(--pen-underline) no-repeat left bottom / 100% 7px;padding-bottom:3px}.kitcard .sub{font-size:14px;color:var(--pencil)}.kit{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px;align-items:start}@media(max-width:920px){.kit{grid-template-columns:1fr}}.maker{background:var(--white);padding:20px;display:grid;gap:18px;min-width:0}.stage{display:grid;justify-items:center;gap:14px}.stage canvas{width:100%;max-width:440px;aspect-ratio:1;display:block;background:var(--white);border:3px solid var(--ink)}.actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.slots{display:flex;gap:18px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.slots button{flex:none;border:0;background:none;padding:4px 0 8px;cursor:pointer;font-weight:500;color:var(--pencil);font-size:15px}.slots button[aria-pressed=true]{color:var(--ink);background:var(--pen-underline) no-repeat left bottom / 100% 8px}.scroller{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:6px;align-items:center}.scroller .track{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding-bottom:12px;min-width:0}.scroller .track::-webkit-scrollbar{display:none}.scroller .track>*{scroll-snap-align:start}.sc{width:36px;height:36px;border:0;background:var(--paper);display:grid;place-items:center;cursor:pointer;padding:0;color:var(--ink)}.sc:hover{background:var(--stone)}.sc[disabled]{opacity:.25;cursor:default}.sc svg{width:22px;height:12px}.sc.l svg{transform:scaleX(-1)}.opt{border:0;background:var(--paper);padding:6px;cursor:pointer;display:grid;place-items:center;position:relative;aspect-ratio:1;width:92px;flex:none}.opt canvas{width:100%;aspect-ratio:1;display:block}.opt .none{font-size:13px;color:var(--pencil);font-weight:600}.opt[aria-pressed=true]{background:var(--stone)}.opt[aria-pressed=true]:after{content:"";position:absolute;left:12%;right:12%;bottom:4px;height:7px;background:var(--pen-underline) no-repeat center / 100% 100%}.swatch{width:30px;height:30px;border:0;padding:0;cursor:pointer;position:relative;flex:none}.swatch.orig{background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M5 25.5C11 18 18 11.5 25.5 4.5' fill='none' stroke='%23222222' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / 100% 100%}.swatch[aria-pressed=true]:after{content:"";position:absolute;left:-2px;right:-2px;bottom:-11px;height:7px;background:var(--pen-underline) no-repeat center / 100% 100%}.side{display:grid;gap:12px;align-content:start}.artist{display:flex;gap:14px;align-items:center}.avatar{width:56px;height:56px;flex:none;background:var(--paper)}.avatar canvas{width:100%;height:100%;display:block}.stats{display:flex;gap:18px;font-size:14px;color:var(--pencil);flex-wrap:wrap}.stats b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.tm-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:24px;align-items:start}@media(max-width:900px){.tm-layout{grid-template-columns:1fr}}.tm-canvas{width:100%;aspect-ratio:1;display:block;background:var(--white);touch-action:none}.ctrl{display:grid;gap:14px}.ctrl label{display:grid;gap:2px;font-size:14px;font-weight:500}.ctrl label span{display:flex;justify-content:space-between}.ctrl label span b{font-variant-numeric:tabular-nums;font-weight:600}input[type=range]{accent-color:#222222;width:100%}.shapes{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;max-width:260px}.shapes button{border:0;background:var(--paper);padding:6px;cursor:pointer;aspect-ratio:1;display:grid;place-items:center}.shapes button[aria-pressed=true]{background:var(--ink)}.shapes button[aria-pressed=true] svg *{stroke:#fff}.dlgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px}.dlgrid button{border:0;background:var(--paper);padding:14px;text-align:left;cursor:pointer;display:grid;gap:2px}.dlgrid button:hover:not([disabled]){background:var(--stone)}.dlgrid button[disabled]{opacity:.5;cursor:default}.dlgrid b{font-size:15px;font-weight:600}.dlgrid span{font-size:13px;color:var(--pencil)}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}code{font-family:ui-monospace,Menlo,monospace;font-size:.86em;background:var(--stone);padding:1px 5px}.tag.err{background:var(--err-bg);color:var(--err)}.studio{display:grid;grid-template-columns:190px minmax(0,1fr) minmax(0,320px);gap:24px;align-items:start}@media(max-width:1080px){.studio{grid-template-columns:minmax(0,1fr)}}.steps{list-style:none;margin:0;padding:0;display:grid;gap:2px;align-content:start}.steps button{display:flex;gap:12px;align-items:center;padding:9px 0;font-weight:500;color:var(--pencil);border:0;background:none;cursor:pointer;width:100%;text-align:left}.steps .n{width:22px;display:inline-grid;place-items:center;font-variant-numeric:tabular-nums;flex:none}.steps button.done{color:var(--ink)}.steps button[aria-current=step]{color:var(--ink);font-weight:700}.steps button[aria-current=step] .t{background:var(--pen-underline) no-repeat left bottom / 100% 7px;padding-bottom:4px}@media(max-width:1080px){.steps{grid-auto-flow:column;overflow-x:auto;gap:18px}.steps button{white-space:nowrap}}.stepbody{display:grid;gap:12px;min-width:0}.sticky{position:sticky;top:calc(80px + env(safe-area-inset-top,0px))}@media(max-width:1080px){.sticky{position:static}}.preview-canvas{width:100%;aspect-ratio:1;display:block;background:var(--white);border:3px solid var(--ink)}.drop{background:var(--white);padding:20px;display:grid;gap:12px}.drop.over{background:var(--stone)}.cats{display:grid;gap:3px}.cat{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:12px;align-items:center;background:var(--paper);padding:10px 12px}@media(max-width:560px){.cat{grid-template-columns:1fr auto}.cat .thumbs{grid-column:1 / -1;grid-row:2}}.cat .nm{font-weight:600;display:grid;gap:2px;justify-items:start}.cat .nm small{font-weight:500;color:var(--pencil);font-size:13px}.thumbs{display:flex;gap:4px;overflow-x:auto;min-width:0;scrollbar-width:thin;padding-bottom:2px}.th{position:relative;flex:none}.th .x{position:absolute;top:0;right:0;width:18px;height:18px;border:0;padding:0;background:var(--ink);color:var(--white);display:grid;place-items:center;cursor:pointer;opacity:0}.th:hover .x,.th .x:focus-visible{opacity:1}@media(hover:none){.th .x{opacity:1}}.recent{display:grid;gap:3px}.rec{display:grid;grid-template-columns:auto auto auto minmax(0,1fr) auto;gap:10px;align-items:center;background:var(--white);padding:10px 12px}@media(max-width:640px){.rec{grid-template-columns:auto auto auto minmax(0,1fr)}.rec .act{grid-column:1 / -1}}.rec .info{display:grid;gap:4px;min-width:0;font-size:14px}.rec .info b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec .act{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.select{border:0;background:var(--paper);padding:7px 10px;font-size:14px;font-weight:600;cursor:pointer}.pal{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.pal .swatch{width:36px;height:36px}.tints{display:grid;gap:3px}.tint{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px 12px;align-items:center;background:var(--paper);padding:10px 12px}.tint .head{display:grid;gap:6px;min-width:0}.tint .chips{grid-column:1 / -1;display:flex;gap:5px;flex-wrap:wrap;align-items:center}.tint .chips .swatch{width:24px;height:24px}.tint .chips .swatch:after{display:none}.tint .chips .swatch.off{opacity:.18}.tint .chips .swatch.off:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4.5 4.8c3.8 3.4 7.3 7 11 10.6M15.4 4.3c-3.6 3.9-7.2 7.6-10.8 11.2' fill='none' stroke='%23222222' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center / 80% no-repeat}.modes{display:flex;gap:3px;flex-wrap:wrap}.modes button{border:0;padding:6px 10px;font-weight:600;font-size:13.5px;cursor:pointer;background:var(--stone)}.modes button[aria-pressed=true]{background:var(--ink);color:var(--white)}.field{display:grid;gap:6px}.field input,.field textarea{border:0;background:var(--paper);color:var(--ink);padding:11px 14px;width:100%}.field textarea{min-height:84px;resize:vertical}.choices{display:grid;gap:4px}.choice{display:flex;gap:12px;align-items:flex-start;border:0;background:var(--paper);padding:12px 14px;text-align:left;cursor:pointer}.choice .dot{width:16px;height:16px;flex:none;margin-top:3px;background:var(--white)}.choice[aria-checked=true]{background:var(--stone)}.choice[aria-checked=true] .dot{background:var(--ink)}.checklist{list-style:none;padding:0;margin:0;display:grid;gap:8px}.checklist li{display:flex;gap:10px;align-items:center;font-size:15px}.checklist li.err{color:var(--err)}.checklist li.warn{color:var(--warn)}.howto-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}@media(max-width:860px){.howto-layout{grid-template-columns:1fr;gap:24px}}.howto-art{background:var(--white);padding:16px}.howto{width:100%;aspect-ratio:1;display:block;background:var(--white)}.howto-steps{list-style:none;margin:0;padding:0;display:grid;gap:4px}.howto-steps li{display:flex;gap:14px;align-items:flex-start;padding:12px 14px;background:var(--white)}.howto-steps .n{font-size:26px;font-weight:500;line-height:1;width:26px;flex:none;letter-spacing:-.03em}.howto-steps b{font-size:17px;font-weight:600}.howto-steps li.on b{background:var(--pen-underline) no-repeat left bottom / 100% 7px;padding-bottom:3px}.kitprev{width:100%;aspect-ratio:1;display:block;background:var(--white);object-fit:cover}.kitprev.empty{display:grid;place-items:center}.check-row{display:flex;gap:10px;align-items:flex-start;font-size:15px;cursor:pointer}.check-row input{margin-top:4px;width:16px;height:16px;accent-color:#222222;flex:none}.handle-input{display:flex;align-items:center;background:var(--paper)}.handle-input span{padding-left:14px;color:var(--pencil);font-weight:600}.handle-input input{border:0;background:transparent;padding:11px 14px 11px 2px;width:100%;min-width:0}.field input[type=email]{border:0;background:var(--paper);padding:11px 14px;width:100%}.ok-text{color:var(--ok);font-weight:600}.err-text{color:var(--err);font-weight:600}.artist-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}.legal .prose{max-width:70ch;gap:10px}.legal .prose h3{margin-top:10px}.legal .prose ul{margin:0;padding-left:20px;display:grid;gap:6px}.btn.google{background:var(--white);outline:2px solid var(--stone);outline-offset:-2px;justify-content:center;width:100%}.btn.google:hover{background:var(--paper)}.btn.danger{background:var(--err-bg);color:var(--err)}.or{display:flex;align-items:center;gap:10px;color:var(--pencil);font-size:13px}.or:before,.or:after{content:"";flex:1;height:7px;background:var(--pen-underline) no-repeat center / 100% 100%;opacity:.35}.code-input{font-size:28px!important;letter-spacing:.3em;font-variant-numeric:tabular-nums;max-width:260px}.field input:not([type=checkbox]){border:0;background:var(--paper);padding:11px 14px;width:100%}.avatar-img{display:block;background:var(--white);object-fit:cover;flex:none}.avatar-img.empty{background:var(--paper);padding:12%}.nav-me{display:inline-flex;align-items:center;gap:8px}.nav-me .avatar-img{border:2px solid var(--ink)}.face-picker{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:18px;align-items:start}@media(max-width:520px){.face-picker{grid-template-columns:1fr}}.picker-canvas{width:100%;aspect-ratio:1;display:block;background:var(--white);border:3px solid var(--ink)}.methods{list-style:none;margin:0;padding:0;display:grid;gap:4px}.methods li{display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--paper);padding:10px 14px;flex-wrap:wrap}.profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px;align-items:center}.profile-hero>.avatar-img{border:3px solid var(--ink)}@media(max-width:600px){.profile-hero{grid-template-columns:1fr}.profile-hero>.avatar-img{width:120px!important;height:120px!important}}.profile-links{gap:14px;font-weight:600}.profile-links a{text-decoration:none;background:var(--pen-underline) no-repeat left bottom / 100% 6px;padding-bottom:3px;overflow-wrap:anywhere}
