@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&family=Manrope:wght@400;500;600&family=Playfair+Display:wght@500;600&family=Source+Sans+3:wght@400;500;600&family=Space+Grotesk:wght@400;500;600&display=swap');

:root[data-palette="sage"]{--blush:#dce8d8;--rose:#9eb59b;--rose-deep:#536d58;--ink:#26362c;--cream:#f7f8f1;--line:#c5d2c0;--hero-mid:#edf2e8}
:root[data-palette="coast"]{--blush:#d7e9e9;--rose:#8fbaba;--rose-deep:#386b70;--ink:#26383d;--cream:#f4f9f8;--line:#bfd6d7;--hero-mid:#e7f2f1}
:root[data-palette="terracotta"]{--blush:#ead7c9;--rose:#c58c70;--rose-deep:#814b3c;--ink:#302d2b;--cream:#f8f4ef;--line:#d9c2b2;--hero-mid:#f1e7dc}
:root[data-palette="festival"]{--blush:#E3AFC9;--rose:#E3AFC9;--rose-deep:#E11A45;--ink:#362b31;--cream:#EFECD7;--line:#EDC92C;--hero-mid:#E3AFC9}
:root[data-palette="rose"]{--hero-mid:#fff0ef}
:root[data-font="soft"]{--display:'Manrope',sans-serif;--mono:'DM Sans',sans-serif}
:root[data-font="classic"]{--display:'Playfair Display',Georgia,serif;--mono:'Source Sans 3',sans-serif}
:root[data-font="modern"]{--display:'Space Grotesk',sans-serif;--mono:'IBM Plex Mono',monospace}
:root[data-font="technical"]{--display:'IBM Plex Mono',monospace;--mono:'IBM Plex Sans',sans-serif}
.hero{background:linear-gradient(120deg,var(--cream),var(--hero-mid,#fff0ef) 52%,var(--blush))}
.page-top .page-brand{color:var(--rose-deep)}
.appearance-trigger{border:0;background:none;color:var(--rose-deep);font:inherit;font-size:10px;letter-spacing:.16em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);cursor:pointer;padding:8px 4px}
.appearance-trigger:hover,.appearance-trigger:focus-visible{color:var(--ink);outline-color:var(--rose-deep)}
.appearance-dialog{width:min(560px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);padding:0;border:1px solid var(--line);background:var(--cream);color:var(--ink);font:14px/1.5 var(--mono);box-shadow:0 24px 80px #26201c33}
.appearance-dialog::backdrop{background:#211e1db3}
.appearance-form{padding:28px 30px 30px}
.appearance-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}
.appearance-heading .kicker{margin:0 0 5px}
.appearance-heading h2{margin:0;font:600 28px/1.15 var(--display)}
.appearance-close{border:0;background:none;color:var(--ink);font-size:26px;line-height:1;cursor:pointer}
.appearance-dialog fieldset{margin:0 0 22px;padding:0;border:0}
.appearance-dialog legend{margin-bottom:10px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--rose-deep)}
.appearance-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:9px}.palette-options{grid-template-columns:repeat(auto-fit,minmax(126px,1fr))}
.appearance-option{position:relative;display:grid;gap:8px;min-width:0;padding:10px;border:1px solid var(--line);cursor:pointer;font-size:11px}
.appearance-option:has(input:checked){border-color:var(--rose-deep);box-shadow:inset 0 0 0 1px var(--rose-deep)}
.appearance-option input{position:absolute;opacity:0;inset:0;width:auto;height:100%;cursor:pointer}
.appearance-option input:focus-visible~*{outline:2px solid var(--rose-deep);outline-offset:2px}
.palette-swatches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 7px}
.palette-swatches i{display:flex;align-items:center;gap:5px;min-width:0;color:var(--ink);font:7px/1 var(--mono);font-style:normal;white-space:nowrap}
.palette-swatches i::before{content:'';width:12px;height:12px;flex:none;background:var(--swatch-color,#ffdcdc)}
.palette-swatches i::after{content:attr(data-hex)}
.palette-options label:nth-child(1) i:nth-child(1){--swatch-color:#ffdcdc}.palette-options label:nth-child(1) i:nth-child(2){--swatch-color:#d8a2a2}.palette-options label:nth-child(1) i:nth-child(3){--swatch-color:#362b31}
.palette-options label:nth-child(2) i:nth-child(1){--swatch-color:#dce8d8}.palette-options label:nth-child(2) i:nth-child(2){--swatch-color:#9eb59b}.palette-options label:nth-child(2) i:nth-child(3){--swatch-color:#26362c}
.palette-options label:nth-child(3) i:nth-child(1){--swatch-color:#d7e9e9}.palette-options label:nth-child(3) i:nth-child(2){--swatch-color:#8fbaba}.palette-options label:nth-child(3) i:nth-child(3){--swatch-color:#26383d}
.palette-options label:nth-child(4) i:nth-child(1){--swatch-color:#ead7c9}.palette-options label:nth-child(4) i:nth-child(2){--swatch-color:#c58c70}.palette-options label:nth-child(4) i:nth-child(3){--swatch-color:#302d2b}
.palette-options label:nth-child(5) i:nth-child(1){--swatch-color:#e11a45}.palette-options label:nth-child(5) i:nth-child(2){--swatch-color:#e3afc9}.palette-options label:nth-child(5) i:nth-child(3){--swatch-color:#efecd7}.palette-options label:nth-child(5) i:nth-child(4){--swatch-color:#edc92c}
.palette-options label:nth-child(6) i:nth-child(1){--swatch-color:#ffdcdc}.palette-options label:nth-child(6) i:nth-child(2){--swatch-color:#d8a2a2}.palette-options label:nth-child(6) i:nth-child(3){--swatch-color:#362b31}
.font-sample{display:block;font-size:27px;line-height:1.1}
.font-editorial{font-family:'Bodoni Moda',serif}.font-soft{font-family:'Manrope',sans-serif}.font-classic{font-family:'Playfair Display',serif}.font-modern{font-family:'Space Grotesk',sans-serif}.font-technical{font-family:'IBM Plex Mono',monospace}
.font-original{font-family:'Bodoni Moda',Georgia,serif}
.appearance-done{width:100%;padding:12px;border:1px solid var(--ink);background:var(--ink);color:var(--cream);font:inherit;cursor:pointer}
.appearance-done:hover{background:var(--rose-deep);border-color:var(--rose-deep)}
@media(max-width:700px){.appearance-form{padding:22px 18px}.appearance-options{gap:6px}.palette-options{grid-template-columns:repeat(2,minmax(0,1fr))}.appearance-option{padding:8px 6px;font-size:10px}.appearance-heading h2{font-size:24px}}