:root{--shell-bg:#eceae3;--shell-surface:#fff;--shell-surface-2:#f5f3ec;--shell-text:#2a2a26;--shell-text-muted:#6f6b60;--shell-accent:#a9793c;--shell-accent-strong:#7c5a2b;--shell-border:#d8d4c8;--shell-shadow:#1e1a1224;--shell-focus:#3f6b8a}*{box-sizing:border-box}.color-input-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html,body{margin:0;padding:0}body{background:var(--shell-bg);color:var(--shell-text);padding:1.75rem max(16px,4vw);font-family:Archivo,Helvetica Neue,Arial,sans-serif}button{font-family:inherit}:focus-visible{outline:2px solid var(--shell-focus);outline-offset:2px}.app{max-width:76rem;margin-inline:auto}.desk-intro{border-bottom:1px solid var(--shell-border);margin-bottom:.25rem;padding-bottom:1.1rem}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--shell-accent-strong);margin:0 0 .5rem;font-size:.7rem;font-weight:600}.desk-intro h1{font-optical-sizing:auto;letter-spacing:-.01em;margin:0 0 .6rem;font-family:Fraunces,Georgia,serif;font-size:1.6rem;font-weight:600}.lede{color:var(--shell-text-muted);margin:0;font-size:.87rem;line-height:1.55}.workshop{grid-template-columns:minmax(0,22rem) minmax(0,1fr);align-items:start;gap:1.75rem;display:grid}.desk,.proof{max-height:calc(100vh - 3rem);position:sticky;top:1.5rem;overflow-y:auto}.desk{flex-direction:column;gap:1.5rem;padding-right:.25rem;display:flex}@media (width<=860px){.workshop{grid-template-columns:1fr}.desk,.proof{max-height:none;position:static;overflow-y:visible}.proof{order:-1;margin-bottom:1.75rem}}.control-group{background:var(--shell-surface);border:1px solid var(--shell-border);border-radius:4px;padding:1.15rem 1.15rem 1.3rem}.control-group h2{letter-spacing:.12em;text-transform:uppercase;color:var(--shell-text-muted);margin:0 0 .2rem;font-size:.7rem;font-weight:600}.control-group .group-title{letter-spacing:0;text-transform:none;color:var(--shell-text);margin-bottom:.85rem;font-family:Fraunces,Georgia,serif;font-size:1.15rem;font-weight:600;display:block}.swatch-grid{grid-template-columns:repeat(auto-fill,minmax(3.6rem,1fr));gap:.6rem;display:grid}.swatch{cursor:pointer;background:0 0;border:none;border-radius:4px;flex-direction:column;align-items:center;gap:.35rem;padding:.15rem;display:flex}.swatch-chip{border:1px solid var(--shell-shadow);border-radius:50%;width:2.6rem;height:2.6rem;position:relative;box-shadow:inset 0 0 0 2px #ffffff59}.swatch[aria-pressed=true] .swatch-chip{box-shadow:0 0 0 2px var(--shell-surface), 0 0 0 4px var(--shell-accent)}.swatch-chip .check{color:#fff;text-shadow:0 1px 2px #00000073;opacity:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex;position:absolute;inset:0}.swatch[aria-pressed=true] .check{opacity:1}.swatch-chip--custom{background:conic-gradient(from 180deg,#e0574f,#e0a83f,#7fb35a,#4fa3c4,#7a6cd6,#d95bab,#e0574f)}.swatch-chip--custom .plus{color:#fff;text-shadow:0 1px 2px #00000080;justify-content:center;align-items:center;font-size:1.2rem;font-weight:600;display:flex;position:absolute;inset:0}.swatch[aria-pressed=true] .swatch-chip--custom .plus{opacity:0}.swatch-label{text-align:center;color:var(--shell-text-muted);max-width:4.4rem;font-size:.68rem;line-height:1.2}.swatch[aria-pressed=true] .swatch-label{color:var(--shell-text);font-weight:500}.type-list{flex-direction:column;gap:.6rem;display:flex}.type-card{text-align:left;background:var(--shell-surface-2);border:1px solid var(--shell-border);cursor:pointer;border-radius:4px;flex-direction:column;gap:.15rem;padding:.75rem .85rem;display:flex}.type-card[aria-pressed=true]{border-color:var(--shell-accent);box-shadow:0 0 0 1px var(--shell-accent);background:var(--shell-surface)}.type-card .type-name{letter-spacing:.06em;text-transform:uppercase;color:var(--shell-accent-strong);justify-content:space-between;align-items:center;font-size:.7rem;font-weight:600;display:flex}.type-card .type-sample-heading{font-size:1.25rem;line-height:1.15}.type-card .type-sample-body{color:var(--shell-text-muted);font-size:.85rem}.toggle-row{gap:.5rem;display:flex}.toggle-btn{background:var(--shell-surface-2);border:1px solid var(--shell-border);cursor:pointer;color:var(--shell-text-muted);border-radius:4px;flex-direction:column;flex:1;align-items:center;gap:.4rem;padding:.6rem .4rem;font-size:.7rem;display:flex}.toggle-btn[aria-pressed=true]{border-color:var(--shell-accent);color:var(--shell-text);background:var(--shell-surface);box-shadow:0 0 0 1px var(--shell-accent)}.toggle-icon{align-items:flex-end;gap:2px;height:1.1rem;display:flex}.toggle-icon i{opacity:.6;background:currentColor;border-radius:1px;width:4px;display:block}.toggle-btn[aria-pressed=true] .toggle-icon i{opacity:1}.field-group+.field-group{margin-top:1rem}.field-group>.field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--shell-text-muted);margin-bottom:.5rem;font-size:.68rem;font-weight:600;display:block}.handoff-btn{background:var(--shell-accent);color:#fff;cursor:pointer;border:none;border-radius:4px;width:100%;padding:.85rem 1rem;font-size:.9rem;font-weight:600}.handoff-btn:hover{background:var(--shell-accent-strong)}.code-panel{flex-direction:column;gap:.65rem;margin-top:1rem;display:flex}.look-summary{color:var(--shell-text);background:var(--shell-surface-2);border:1px solid var(--shell-border);border-radius:4px;margin:0;padding:.65rem .8rem;font-size:.85rem;line-height:1.5}.look-summary b{color:var(--shell-accent-strong)}pre.code-block{color:#ece7db;white-space:pre;background:#232019;border-radius:4px;max-height:16rem;margin:0;padding:.85rem;font-size:.72rem;line-height:1.55;overflow:auto}.copy-btn{border:1px solid var(--shell-border);color:var(--shell-text);cursor:pointer;background:0 0;border-radius:4px;align-self:flex-start;padding:.5rem .9rem;font-size:.8rem}.copy-btn:hover,.copy-btn[data-copied=true]{border-color:var(--shell-accent);color:var(--shell-accent-strong)}.handoff-hint{color:var(--shell-text-muted);margin:0;font-size:.78rem;line-height:1.5}.proof{border:1px solid var(--shell-border);background:#fff;border-radius:4px;justify-content:center;align-items:flex-start;padding:clamp(1.5rem,4vw,4rem);display:flex}.page-frame{background:var(--pf-bg);width:100%;color:var(--pf-text);border:1px solid #00000014;border-radius:4px;transition:background .15s,color .15s;box-shadow:0 24px 60px #00000024}.mock-post{padding:var(--pf-space-7,6rem) var(--pf-space-4,1.5rem)}.mock-post .kicker{margin:0 0 var(--pf-space-3,1rem);font-family:var(--pf-font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--pf-accent);font-size:.72rem;font-weight:600}.mock-post h1{margin:0 0 var(--pf-space-4,1.5rem);font-family:var(--pf-font-heading);font-weight:var(--pf-weight-heading,500);letter-spacing:-.02em;text-wrap:balance;color:var(--pf-text);font-size:clamp(2.6rem,1.9rem + 3.5vw,4.6rem);line-height:.98}.mock-post .meta{padding-top:var(--pf-space-3,1rem);border-top:2px solid var(--pf-accent);font-family:var(--pf-font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--pf-text-muted);margin:0;font-size:.8rem;font-weight:500;display:inline-block}.post-body{max-width:var(--pf-text-width,34rem);margin-top:var(--pf-space-6,4rem)}.post-body p{font-family:var(--pf-font-body);font-weight:var(--pf-weight-body,400);line-height:var(--pf-lh-body,1.65);margin:0 0 var(--pf-space-4,1.5rem);font-size:1.08rem}.post-body a{color:var(--pf-accent);text-underline-offset:2px;text-decoration-thickness:1px}.post-body figure{margin:var(--pf-space-5,2.5rem) 0}.post-body .post-photo{border-radius:3px;width:100%;max-width:100%;display:block}.post-body figcaption{margin-top:var(--pf-space-2,.5rem);font-size:.82rem;font-family:var(--pf-font-body);color:var(--pf-text-muted)}.post-body blockquote{margin:var(--pf-space-5,2.5rem) 0;padding-left:var(--pf-space-4,1.5rem);border-left:3px solid var(--pf-accent);font-family:var(--pf-font-heading);font-size:1.3rem;font-style:italic;line-height:var(--pf-lh-heading,1.15);color:var(--pf-text)}.post-body .buttons{margin-top:var(--pf-space-5,2.5rem);gap:.75rem;display:flex}.post-body button.pf-primary,.post-body button.pf-secondary{font-family:var(--pf-font-body);cursor:default;border-radius:3px;padding:.6rem 1.2rem;font-size:.95rem}.post-body button.pf-primary{background:var(--pf-accent);color:var(--pf-bg-raised);border:1px solid var(--pf-accent)}.post-body button.pf-secondary{color:var(--pf-accent-strong);border:1px solid var(--pf-border);background:0 0}.post-body hr{border:none;border-top:1px solid var(--pf-border);margin:var(--pf-space-6,4rem) 0 var(--pf-space-4,1.5rem)}.post-body .sign-off{font-family:var(--pf-font-body);color:var(--pf-text-muted);font-size:.95rem;font-style:italic}
