@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Playfair+Display:wght@400;600;700&family=Bebas+Neue&family=DM+Serif+Display&family=Fira+Sans:wght@400;500;600;700&family=Cormorant+Garamond:wght@400;500;600;700&family=Sora:wght@400;500;600;700&family=Archivo+Narrow:wght@400;600;700&family=Syne:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&family=Barlow:wght@400;500;600;700&family=Fraunces:wght@400;600;700&family=Jost:wght@400;500;600;700&family=Archivo+Black&family=PT+Serif:wght@400;700&family=Work+Sans:wght@400;500;600;700&family=Oswald:wght@400;500;600;700&family=Merriweather:wght@400;700&family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&family=Anton&family=Libre+Baskerville:wght@400;700&family=Raleway:wght@400;500;600;700&family=Montserrat:wght@400;500;600;700&family=Source+Sans+3:wght@400;500;600;700&family=Source+Serif+4:wght@400;600;700&family=Poppins:wght@400;500;600;700&family=Alegreya:wght@400;500;600;700&family=Rubik:wght@400;500;600;700&family=Inconsolata:wght@400;500;600;700&display=swap");@property --site-bg-1{syntax:"<color>";inherits:true;initial-value:#f2f1ed}@property --site-bg-2{syntax:"<color>";inherits:true;initial-value:#e3e1dc}@property --site-bg-3{syntax:"<color>";inherits:true;initial-value:#c9c6bf}@property --site-bg-4{syntax:"<color>";inherits:true;initial-value:#8e8b84}@property --site-bg-5{syntax:"<color>";inherits:true;initial-value:#2b2a27}:root{--bg:#f7f6f2;--ink:#1b1a17;--accent:#c2472c;--muted:#6d6a63;--card:#fff;--border:#e4e1db;--button-bg:#1b1a17;--button-text:#fff;--button-reverse-bg:#f4f2ee;--site-bg-1:#f2f1ed;--site-bg-2:#e3e1dc;--site-bg-3:#c9c6bf;--site-bg-4:#8e8b84;--site-bg-5:#2b2a27;--site-grad-1-size:1200px 600px;--site-grad-2-size:900px 500px;--site-grad-3-size:800px 400px;--site-grad-1-x:10%;--site-grad-1-y:-10%;--site-grad-2-x:100%;--site-grad-2-y:0%;--site-grad-3-x:20%;--site-grad-3-y:90%}:root[data-theme=dark]{--bg:#0e0d0b;--ink:#f5f2ec;--accent:#f2a37c;--muted:#bcb5ab;--card:#1a1816;--border:#2f2a25;--button-bg:#f5f2ec;--button-text:#0e0d0b;--button-reverse-bg:#2a2622}*{box-sizing:border-box}body,html{padding:0;margin:0;font-family:Space Grotesk,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(var(--site-grad-1-size) at var(--site-grad-1-x) var(--site-grad-1-y),var(--site-bg-1),transparent),radial-gradient(var(--site-grad-2-size) at var(--site-grad-2-x) var(--site-grad-2-y),var(--site-bg-3),transparent),radial-gradient(var(--site-grad-3-size) at var(--site-grad-3-x) var(--site-grad-3-y),var(--site-bg-4),transparent),var(--site-bg-2);transition:--site-bg-1 120s linear,--site-bg-2 120s linear,--site-bg-3 120s linear,--site-bg-4 120s linear,--site-bg-5 120s linear,background 120s linear,color 60s linear}a{color:inherit;text-decoration:none}.page{max-width:1400px;margin:0 auto;padding:32px 24px 64px}.header{justify-content:flex-start;gap:16px;margin-bottom:28px;position:relative;z-index:3}.header,.header-actions{display:flex;align-items:center}.header-actions{gap:10px;flex-wrap:wrap}.title{display:flex;flex-direction:column;gap:6px}.title h1{margin:0;font-size:36px;letter-spacing:-.02em;color:var(--header-ink)}.title p{margin:0;color:var(--header-muted)}.header-connect,.theme-toggle{margin-top:0;align-self:center}.button{background:var(--button-bg);color:var(--button-text);border:none;padding:12px 18px;border-radius:999px;font-weight:600;cursor:pointer}.button:disabled{opacity:.55;cursor:not-allowed}.button.secondary{background:transparent;color:var(--ink);border:1px solid var(--border)}.button.theme-solid{background:var(--button-bg);color:var(--button-text);border:1px solid var(--border)}.theme-icon{display:inline-block;font-size:16px;line-height:1}.tab-group{display:inline-flex;gap:6px;padding:4px;border-radius:999px;border:1px solid var(--border);background:#fff}:root[data-theme=dark] .tab-group{background:#1a1816}.tab{padding:8px 14px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--ink);font-weight:600;cursor:pointer}.tab.active{background:var(--button-bg);color:var(--button-text);border-color:var(--border)}.modal-backdrop{position:fixed;inset:0;background:rgba(10,8,6,.45);display:grid;place-items:center;z-index:20}.modal{width:min(520px,calc(100% - 32px));background:var(--card);border:1px solid var(--border);border-radius:16px;padding:18px;box-shadow:0 20px 40px rgba(0,0,0,.2)}.modal-title{font-size:18px;font-weight:700;margin-bottom:6px}.modal-actions{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.button.header-connect{background:#fff;color:#1b1a17;border:1px solid var(--border)}.button.reverse{background:var(--button-reverse-bg);color:var(--ink);border:1px solid var(--border);letter-spacing:.02em}.grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:28px;gap:28px;align-items:start;padding-bottom:50px}.card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:20px;box-shadow:0 10px 30px rgba(0,0,0,.05)}.controls{display:grid;grid-gap:16px;gap:16px}.card.controls{padding-top:10px}.controls-locked{position:relative;overflow:hidden}.controls-locked>:not(.controls-lock){opacity:.35;filter:blur(1px);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.controls-lock{position:absolute;inset:0;display:grid;place-items:center;background:hsla(0,0%,100%,.7);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:2}.lock-card{display:grid;grid-gap:12px;gap:12px;padding:18px 20px;border-radius:14px;background:#fff;border:1px solid var(--border);box-shadow:0 10px 30px rgba(0,0,0,.08);text-align:center}.lock-title{font-weight:600}.label{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.input,select{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font-size:14px;font-family:inherit;line-height:1.3;background:var(--card);color:var(--ink)}.input[readonly]{background:rgba(0,0,0,.04);color:var(--muted);cursor:not-allowed}.row{display:flex;gap:10px}.row>*{flex:1 1;min-width:0}.size-control{align-items:flex-start}.size-control,.size-control-column{display:flex;flex-direction:column;gap:6px}.size-control-column{align-items:center}.size-control .button.tiny{padding:4px 6px;min-width:26px;border-radius:6px;font-size:12px;line-height:1}.size-input{width:44px;padding:4px;text-align:center}.size-label{font-size:12px;color:var(--muted);margin-top:0;text-transform:none;letter-spacing:.01em}.size-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin-top:10px}.text-options-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:10px}.size-block{display:flex;flex-direction:column;gap:6px}.size-block-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.edit-actions{display:flex;gap:6px;flex-wrap:nowrap;align-items:center}.icon-button{display:inline-flex;align-items:center;gap:6px}.button.small.icon-button{padding:4px 10px;min-height:26px;border-radius:14px}.icon-button img{width:12px;height:12px;object-fit:contain;display:block;filter:none}.icon-button .icon-edit{filter:invert(1)}.icon-button .icon-done{display:block;font-size:14px;line-height:1;font-weight:700}:root[data-theme=dark] .icon-button .icon-edit{filter:none}:root[data-theme=dark] .icon-button .icon-revert{filter:invert(1)}.revert-dirty{background:#2b6f3a;border-color:#2b6f3a;color:#fff}.size-row{display:flex;gap:10px;align-items:center}.size-row .input{flex:1 1}.track-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;flex:1 1}.track-edit-grid .textarea{min-height:160px}.size-preview-stack{display:flex;flex-direction:column;gap:6px;flex:1 1;min-width:0}.color-input{padding:3px;height:44px;border-radius:10px}.color-input::-webkit-color-swatch-wrapper{padding:0}.color-input::-webkit-color-swatch{border:none;border-radius:8px}.color-input::-moz-color-swatch{border:none;border-radius:8px}.textarea{padding:5px 6px;min-height:140px;resize:vertical}.track-preview-input{min-height:88px;height:88px;resize:none;padding:10px 12px;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.track-preview-input::-webkit-scrollbar{width:0;height:0;display:none}.color-control{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.color-control .color-input{height:22px;padding:2px 3px;border-radius:8px}.list{display:grid;grid-gap:10px;gap:10px;max-height:260px;overflow:auto;border:1px solid var(--border);border-radius:10px;padding:10px}.list button{text-align:left;border:1px solid transparent;background:#fff7;border-radius:10px;padding:8px 10px;cursor:pointer}.list button:hover{border-color:var(--accent)}.result-item{display:grid;grid-template-columns:40px 1fr;align-items:center;grid-gap:10px;gap:10px}.result-thumb{width:40px;height:40px;border-radius:8px;overflow:hidden;background:#e9e7e1;display:inline-flex;align-items:center;justify-content:center}.result-thumb img{width:100%;height:100%;object-fit:cover;display:block}.result-fallback{font-size:12px;color:var(--muted);font-weight:600}.result-meta{display:flex;flex-direction:column;gap:4px}.field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:8px}.field-note{grid-column:2/4;margin-top:6px;justify-self:end;text-align:right;white-space:nowrap}.search-tabs{margin-bottom:16px}.results-block,.search-bar{margin-top:8px;margin-bottom:18px}.results-header{display:flex;align-items:center;justify-content:flex-start;gap:8px}.button.icon{padding:2px 10px;min-width:36px;font-size:20px;line-height:1}.customize-top-controls{margin-bottom:8px}.field{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink)}.field input{width:16px;height:16px}.preset-list{display:grid;grid-gap:10px;gap:10px;margin-top:8px}.preset-row{display:flex;gap:10px;align-items:center}.preset-row .preset{flex:1 1}.button.small{padding:8px 12px;font-size:12px;border-radius:16px;white-space:nowrap}.theme-select{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:12px;font-size:14px;background:#fff}.theme-select-list{display:grid;grid-gap:8px;gap:8px}.prebuilt-theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.custom-palette{border:1px solid var(--border);border-radius:12px;padding:10px;display:grid;grid-gap:10px;gap:10px;background:#fff}.custom-palette-grid{display:grid;grid-template-columns:repeat(var(--custom-palette-count,5),minmax(0,1fr));grid-gap:10px;gap:10px}.custom-palette-item{display:flex;flex-direction:column;gap:6px;min-width:0}.custom-palette-item .color-input{height:52px;border-radius:12px}.custom-palette-item-actions{display:flex;gap:4px}.custom-palette-item-actions .button.small{flex:1 1;min-width:0;padding:6px 0;border-radius:10px}.custom-palette-actions{justify-content:space-between}:root[data-theme=dark] .custom-palette{background:#141210;border-color:#3a342d}:root[data-theme=dark] .custom-palette .small{color:#d8d1c7}:root[data-theme=dark] .custom-palette-item-actions .button.secondary{background:#26221e;color:#f5f2ec;border-color:#51483f}:root[data-theme=dark] .custom-palette-item-actions .button.secondary:hover:not(:disabled){background:#312b25;border-color:#6a6055}:root[data-theme=dark] .custom-palette-item-actions .button.secondary:disabled{background:#1d1a17;color:#8f8579;border-color:#3a342d}:root[data-theme=dark] .custom-palette-actions .button.secondary{background:#26221e;color:#f5f2ec;border-color:#51483f}:root[data-theme=dark] .custom-palette-actions .button:not(.secondary){background:#f5f2ec;color:#0e0d0b;border:1px solid #d6cec2}.theme-option.active{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.preset{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#fff;cursor:pointer;text-align:left}.preset:disabled{opacity:.6;cursor:not-allowed}.preset-title{font-weight:600;font-size:13px}.preset-swatches{display:flex;gap:4px}.preset-swatches .swatch-button,.preset-swatches span{width:16px;height:16px;border-radius:4px;border:1px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.05)}.swatch-button{padding:0;cursor:pointer;border:1px solid #fff;background:transparent}.swatch-button:disabled{cursor:not-allowed;opacity:.6}.swatches{display:flex;align-items:center;gap:6px}.swatches span{width:18px;height:18px;border-radius:4px;border:1px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.08)}.poster-column{grid-column:2;gap:12px;position:-webkit-sticky;position:sticky;top:16px;z-index:1}.poster-column,.poster-wrap{display:flex;flex-direction:column;align-self:start;transform:none}.poster-wrap{gap:14px;align-items:flex-start;position:relative;top:auto;z-index:auto;padding:0 80px 10px;box-sizing:border-box;width:100%}.poster-wrap .small{width:100%;text-align:center}.poster svg{-webkit-user-select:none;-moz-user-select:none;user-select:none}.poster-layout{width:100%}.poster-locked svg{pointer-events:none}.poster-locked-frame{opacity:.92}.poster{position:relative;width:100%;max-width:900px;aspect-ratio:2/3;background:#f0efea;border:12px solid #f7f6f2;box-shadow:0 20px 40px rgba(0,0,0,.12)}.poster.horizontal{max-width:1200px;aspect-ratio:3/2}.slider-overlay{position:absolute;pointer-events:auto;z-index:5}.poster-stage{position:relative;width:100%}.slider-handle-wrap{position:absolute;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:4px;pointer-events:auto;touch-action:none}.slider-handle-wrap.right{flex-direction:row}.slider-handle-wrap.left{flex-direction:row-reverse}.slider-handle{width:26px;height:26px;border-radius:6px;background:transparent;border:1px solid #000;display:grid;place-items:center;cursor:ns-resize;touch-action:none}.slider-handle.locked{cursor:not-allowed}.slider-handle-icon{width:14px;height:18px;object-fit:contain;display:block;pointer-events:none}:root[data-theme=dark] .slider-handle{border-color:#fff}:root[data-theme=dark] .slider-handle-icon{filter:invert(1)}.slider-lock{width:22px;height:22px;border-radius:6px;border:none;background:transparent;display:grid;place-items:center;padding:0;cursor:pointer;touch-action:none}.slider-lock img{width:12px;height:12px;object-fit:contain;display:block;pointer-events:none}.slider-lock.locked{background:#2f2f2f}.slider-lock.locked img,:root[data-theme=dark] .slider-lock img{filter:invert(1)}.poster-actions{justify-content:center;width:100%}.export-menu{position:relative}.export-menu-list{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;display:none;grid-template-columns:1fr;gap:6px;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:8px;box-shadow:0 10px 24px rgba(0,0,0,.15)}.export-menu.open .export-menu-list,.export-menu:hover .export-menu-list{display:grid}.export-menu-item{width:100%;justify-content:flex-start}.small{font-size:12px;color:var(--muted)}.label.underline,.poster-print-link{text-decoration:underline}.label.underline{text-underline-offset:4px}.palette-style .small{min-height:28px;display:flex;align-items:flex-end}.palette-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.palette-col{display:flex;flex-direction:column;gap:8px}.palette-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.palette-step-grid-centered .palette-col{align-items:center;text-align:center}.palette-step-grid-centered .size-control{align-items:center}@media (max-width:900px){.grid{grid-template-columns:1fr;padding-bottom:0}.poster-column{grid-column:auto}.poster-column,.poster-wrap{position:static;top:auto;transform:none;z-index:auto}.header{flex-direction:column;align-items:flex-start}.text-options-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.footer{margin-top:48px;padding:24px 0 12px;border-top:1px solid var(--footer-border,var(--border));color:var(--footer-muted,var(--muted));display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.footer a{color:var(--footer-ink,inherit);text-decoration:underline}.footer .footer-feedback{text-decoration:none;color:var(--footer-ink,var(--ink));border-color:var(--footer-border,var(--border))}.footer .footer-disclaimer{flex:1 1 100%;font-size:12px;line-height:1.45}.footer-tip{display:flex;align-items:center}.footer-coffee{background:#2563eb;color:#fff;border:1px solid #1e40af;text-decoration:none}