@font-face{font-family:Alice;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/alice-400-DOnBKDre.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fraunces-400-ukD16Tqj.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fraunces-400-ukD16Tqj.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/cormorant-garamond-400-CUoBjw-S.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/cormorant-garamond-400-CUoBjw-S.woff2) format("woff2")}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/eb-garamond-400-CRpggXlh.woff2) format("woff2")}@font-face{font-family:EB Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/eb-garamond-400-CRpggXlh.woff2) format("woff2")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/playfair-display-400-BOwq7MWX.woff2) format("woff2")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/playfair-display-400-BOwq7MWX.woff2) format("woff2")}@font-face{font-family:Spectral;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/spectral-400-CTVgUekv.woff2) format("woff2")}@font-face{font-family:Spectral;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/spectral-600-DE3OxvnQ.woff2) format("woff2")}@font-face{font-family:Lora;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/lora-400-BiLcIKcI.woff2) format("woff2")}@font-face{font-family:Lora;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/lora-400-BiLcIKcI.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/inter-400-Dx4kXJAl.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/inter-400-Dx4kXJAl.woff2) format("woff2")}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/instrument-sans-400-BbzFLZTg.woff2) format("woff2")}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/instrument-sans-400-BbzFLZTg.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fraunces-700-CEOla-zY.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fraunces-400-italic-ChpO6tcr.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:italic;font-weight:700;font-display:swap;src:url(/assets/fraunces-700-italic-BTx51a-P.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/cormorant-garamond-700-DajfzrDU.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/cormorant-garamond-400-italic-Dc_OZ8oc.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:700;font-display:swap;src:url(/assets/cormorant-garamond-700-italic-1ifP4r4a.woff2) format("woff2")}@font-face{font-family:EB Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/eb-garamond-700-D7LhwqnD.woff2) format("woff2")}@font-face{font-family:EB Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/eb-garamond-400-italic-DSEbMgZu.woff2) format("woff2")}@font-face{font-family:EB Garamond;font-style:italic;font-weight:700;font-display:swap;src:url(/assets/eb-garamond-700-italic-Db6TyVBE.woff2) format("woff2")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/playfair-display-700-CuDiGg7c.woff2) format("woff2")}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/playfair-display-400-italic-LeeEXsx5.woff2) format("woff2")}@font-face{font-family:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(/assets/playfair-display-700-italic-CB566L-e.woff2) format("woff2")}@font-face{font-family:Spectral;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/spectral-700-Cd2m0ohD.woff2) format("woff2")}@font-face{font-family:Spectral;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/spectral-400-italic-CDO25mTW.woff2) format("woff2")}@font-face{font-family:Spectral;font-style:italic;font-weight:700;font-display:swap;src:url(/assets/spectral-700-italic-CfJS6vGz.woff2) format("woff2")}@font-face{font-family:Lora;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/lora-700-BHK4Pzk4.woff2) format("woff2")}@font-face{font-family:Lora;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/lora-400-italic-DYjZp4sZ.woff2) format("woff2")}@font-face{font-family:Lora;font-style:italic;font-weight:700;font-display:swap;src:url(/assets/lora-700-italic-BzqHDNuv.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/inter-700-Yt3aPRUw.woff2) format("woff2")}@font-face{font-family:Inter;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/inter-400-italic-D1l0FflY.woff2) format("woff2")}@font-face{font-family:Inter;font-style:italic;font-weight:700;font-display:swap;src:url(/assets/inter-700-italic-BsEzapPQ.woff2) format("woff2")}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/instrument-sans-700-CYfAanHo.woff2) format("woff2")}@font-face{font-family:Instrument Sans;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/instrument-sans-400-italic-DCPiXYsF.woff2) format("woff2")}@font-face{font-family:Instrument Sans;font-style:italic;font-weight:700;font-display:swap;src:url(/assets/instrument-sans-700-italic-YQU9YmSo.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/ibm-plex-mono-400-DMJ8VG8y.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/ibm-plex-mono-500-DSY6xOcd.woff2) format("woff2")}:root{--accent: #2A46C8;--accent-hover: #1f39b4;--accent-soft: #eef1fd;--accent-text: #22389f;--danger: #b4443a;--app-bg: #f7f7f4;--bar-bg: #ffffff;--panel-bg: #f4f4f0;--card-bg: #ffffff;--input-bg: #fbfbf9;--seg-track: #f4f4f0;--track: #ecece6;--border: #e6e6e0;--border-card: #e9e9e3;--border-input: #ebebe5;--border-strong: #cfcfc8;--border-hover: #c9c9c2;--text: #14151a;--text-2: #20211f;--text-3: #3c3c37;--label: #5d5d57;--muted: #9a9a92;--stage-grad: radial-gradient(120% 90% at 50% 0%, #23252d 0%, #15161b 60%, #101116 100%);--strip-bg: rgba(12, 13, 17, .72);--strip-border: #262830;--strip-text: #7e8089;--strip-text-hi: #c9cbd2;--strip-line: #33353e;--strip-line-hi: #4d505c;--font-ui: "Instrument Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-ui);background:var(--app-bg);color:var(--text);-webkit-font-smoothing:antialiased}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-body{flex:1;display:flex;min-height:0}.topbar{flex:none;height:60px;display:flex;align-items:center;gap:16px;padding:0 18px;background:var(--bar-bg);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:9px;flex:none}.brand-mark{width:22px;height:22px;border-radius:6px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:Alice,serif;font-size:13px;line-height:1}.brand-name{font-size:14px;font-weight:600;letter-spacing:-.01em}.bar-divider{width:1px;height:24px;background:#ebebe5;flex:none}.bar-spacer{flex:1}.save-state{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;color:var(--muted);white-space:nowrap;flex:none}.save-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);transition:background .15s}.save-state.dirty .save-dot{background:var(--border-strong)}.preset-strip{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden}.preset-chip{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;background:var(--bar-bg);white-space:nowrap;flex:none}.preset-chip:hover:not(.active){border-color:var(--border-hover)}.preset-chip.active{border-color:var(--accent);background:var(--accent-soft)}.preset-apply{background:none;border:none;font:inherit;font-size:12px;color:var(--label);padding:6px 12px;border-radius:999px;cursor:pointer}.preset-chip.active .preset-apply{color:var(--accent-text);font-weight:500}.preset-del{background:none;border:none;color:var(--muted);font-size:14px;line-height:1;padding:0 9px 0 0;cursor:pointer;opacity:0;transition:opacity .12s}.preset-chip:hover .preset-del,.preset-del:focus-visible{opacity:1}.preset-del:hover{color:var(--danger)}.preset-save{background:none;border:1px dashed var(--border-strong);border-radius:999px;color:var(--muted);font:inherit;font-size:12px;padding:6px 12px;cursor:pointer;white-space:nowrap;flex:none}.preset-save:hover{border-color:var(--accent);color:var(--accent)}.seg{display:flex;background:var(--seg-track);border:1px solid var(--border);border-radius:9px;padding:3px;gap:2px;flex:none}.seg button{background:none;border:none;font:inherit;font-size:12px;font-weight:500;color:var(--label);padding:6px 13px;border-radius:7px;cursor:pointer}.seg button:hover:not(.active){color:var(--text)}.seg button.active{background:var(--accent);color:#fff}.export-btn{display:flex;align-items:center;gap:9px;background:var(--accent);color:#fff;border:none;border-radius:9px;padding:10px 18px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;flex:none;box-shadow:0 1px 2px #141a3c4d}.export-btn:hover:not(:disabled){background:var(--accent-hover)}.export-btn:disabled{opacity:.6;cursor:default}.export-icon{width:15px;height:15px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.stage-col{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--stage-grad)}.preview{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:34px;overflow:hidden}.preview-frame{border-radius:6px;overflow:hidden;box-shadow:0 34px 80px #0009,0 0 0 1px #ffffff0f}.stage-meta{display:flex;align-items:center;gap:14px;font-family:var(--font-mono);font-size:11px;color:var(--strip-text);white-space:nowrap;flex:none}.stage-meta .dot{width:3px;height:3px;border-radius:50%;background:#4c4e57}.filmstrip{flex:none;height:126px;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 20px;border-top:1px solid var(--strip-border);background:var(--strip-bg)}.strip-arrow{width:30px;height:30px;flex:none;background:none;border:1px solid var(--strip-line);border-radius:8px;color:var(--strip-text);font-size:13px;line-height:1;cursor:pointer}.strip-arrow:hover:not(:disabled){border-color:var(--strip-line-hi);color:var(--strip-text-hi)}.strip-arrow:disabled{opacity:.35;cursor:default}.thumbs{display:flex;align-items:center;gap:12px}.thumb{position:relative;padding:0;border:none;background:none;border-radius:5px;cursor:pointer;line-height:0;opacity:.72;box-shadow:0 0 0 1px var(--strip-line);transition:opacity .12s}.thumb:hover{opacity:1}.thumb.active{opacity:1;box-shadow:0 0 0 2px var(--accent),0 4px 14px #00000073}.thumb.ghost{opacity:.3}.thumb-inner{overflow:hidden;border-radius:5px}.thumb-label{position:absolute;bottom:4px;left:4px;font-family:var(--font-mono);font-size:8px;line-height:1.5;color:#fff;background:#0000008c;padding:1px 4px;border-radius:3px}.thumb-del{position:absolute;top:-6px;right:-6px;width:15px;height:15px;display:flex;align-items:center;justify-content:center;font-size:8px;line-height:1;color:#fff;background:#22242c;border:1px solid var(--strip-line-hi);border-radius:50%;cursor:pointer;opacity:0;transition:opacity .12s,background .12s}.thumb:hover .thumb-del,.thumb.active .thumb-del{opacity:1}.thumb-del:hover{background:var(--danger);border-color:var(--danger)}.thumb.ghost .thumb-del{opacity:0}.thumb-add{flex:none;background:none;border:1px dashed #383a44;border-radius:5px;color:var(--strip-text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer}.thumb-add:hover{border-color:var(--accent);color:#8fa0f5}.thumb-add .plus{font-size:15px;line-height:1}.thumb-add .word{font-family:var(--font-mono);font-size:8px}.thumb-gap{flex:none;border:2px dashed var(--accent);border-radius:5px}.thumb-clone{position:fixed;z-index:1000;pointer-events:none;transform:translate(-50%,-50%) scale(1.06);border-radius:5px;overflow:hidden;box-shadow:0 0 0 2px var(--accent),0 8px 24px #00000073}.panel{width:392px;flex:none;display:flex;flex-direction:column;background:var(--panel-bg);border-left:1px solid var(--border)}.tabbar{flex:none;display:flex;padding:0 16px;background:var(--bar-bg);border-bottom:1px solid var(--border)}.tab{background:none;border:none;font:inherit;font-size:13px;color:var(--muted);padding:17px 13px;cursor:pointer}.tab:hover:not(.active){color:var(--text-3)}.tab.active{color:var(--text);font-weight:600;box-shadow:inset 0 -2px 0 var(--accent)}.tab-body{flex:1;min-height:0;overflow-y:auto;padding:18px 16px 24px;display:flex;flex-direction:column;gap:16px}.card{background:var(--card-bg);border:1px solid var(--border-card);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px}.card-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;color:var(--muted)}.card-head{display:flex;align-items:center;justify-content:space-between}.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.color-field{position:relative;display:flex;align-items:center;gap:9px;width:100%;border:1px solid var(--border-input);border-radius:9px;padding:8px 10px;cursor:pointer;background:none;font:inherit;text-align:left}.color-field:hover{border-color:var(--border-hover)}.color-field:focus-within{border-color:var(--accent)}.color-swatch{width:24px;height:24px;flex:none;border-radius:6px;box-shadow:inset 0 0 0 1px #0000001a}.color-text{display:flex;flex-direction:column;gap:1px;min-width:0}.color-name{font-size:12px;color:var(--text-3)}.color-hex{font-family:var(--font-mono);font-size:10px;color:var(--muted)}.cp-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:24px;background:#1011166b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:cp-fade .12s ease-out}.cp-modal{width:288px;display:flex;flex-direction:column;gap:14px;padding:16px;background:var(--card-bg);border:1px solid var(--border-card);border-radius:14px;box-shadow:0 24px 60px #0000004d,0 2px 6px #00000014;animation:cp-rise .14s cubic-bezier(.2,.8,.3,1)}@keyframes cp-fade{0%{opacity:0}}@keyframes cp-rise{0%{opacity:0;transform:translateY(6px) scale(.985)}}.cp-head{display:flex;align-items:center;justify-content:space-between}.cp-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.cp-close{background:none;border:none;font:inherit;font-size:17px;line-height:1;color:var(--muted);padding:0 2px;cursor:pointer}.cp-close:hover{color:var(--text)}.cp-sv{position:relative;height:152px;border-radius:10px;cursor:crosshair;touch-action:none;box-shadow:inset 0 0 0 1px #0000001a}.cp-sv:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cp-sv-white,.cp-sv-black{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px;pointer-events:none}.cp-sv-white{background:linear-gradient(to right,#fff,#fff0)}.cp-sv-black{background:linear-gradient(to top,#000,#0000)}.cp-sv-handle{position:absolute;width:15px;height:15px;border-radius:50%;border:2px solid #fff;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 1px 4px #00000073}.cp-sv-handle.on-light{border-color:#14151a;box-shadow:0 1px 3px #00000040}.cp-hue{position:relative;height:12px;border-radius:999px;cursor:pointer;touch-action:none;background:linear-gradient(to right,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red);box-shadow:inset 0 0 0 1px #0000001a}.cp-hue:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.cp-hue-handle{position:absolute;top:50%;width:16px;height:16px;border-radius:50%;border:2px solid #fff;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 1px 4px #00000059}.cp-readout{display:flex;align-items:center;gap:8px;border:1px solid var(--border-input);background:var(--input-bg);border-radius:9px;padding:7px 9px}.cp-readout:focus-within{border-color:var(--accent)}.cp-preview{width:20px;height:20px;flex:none;border-radius:6px;box-shadow:inset 0 0 0 1px #0000001a}.cp-hash{font-family:var(--font-mono);font-size:11px;color:var(--muted)}.cp-hex{flex:1;min-width:0;border:none;background:none;outline:none;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--text-2)}.cp-eyedrop{flex:none;background:none;border:none;padding:2px;color:var(--muted);cursor:pointer;display:flex}.cp-eyedrop:hover{color:var(--accent)}.cp-eyedrop-icon{width:15px;height:15px;fill:currentColor}.cp-section{display:flex;flex-direction:column;gap:8px}.cp-section-label{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;color:var(--muted)}.cp-swatches{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.cp-swatch{position:relative;aspect-ratio:1;border:none;border-radius:6px;padding:0;cursor:pointer;box-shadow:inset 0 0 0 1px #0000001f}.cp-swatch:hover{box-shadow:inset 0 0 0 1px #0000001f,0 0 0 2px var(--border-hover)}.cp-swatch.active{box-shadow:inset 0 0 0 1px #0000001f,0 0 0 2px var(--accent)}.cp-swatch.active:after{content:"";position:absolute;left:50%;top:46%;width:4px;height:8px;border:1.5px solid #fff;border-top:0;border-left:0;transform:translate(-50%,-50%) rotate(45deg)}.cp-swatch.active.on-light:after{border-color:#14151a}.cp-actions{display:flex;gap:8px}.cp-btn{flex:1;border:1px solid var(--border-strong);background:none;border-radius:9px;padding:9px 12px;font:inherit;font-size:12px;font-weight:500;color:var(--text-3);cursor:pointer}.cp-btn:hover{border-color:var(--border-hover);color:var(--text)}.cp-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.cp-btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.font-field{position:relative;border:1px solid var(--border-input);border-radius:9px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.font-field:hover{border-color:var(--border-hover)}.font-field:focus-within{border-color:var(--accent)}.font-kind{font-family:var(--font-mono);font-size:9px;color:var(--muted)}.font-name{display:flex;align-items:baseline;justify-content:space-between;gap:6px;font-size:16px;color:var(--text-2)}.font-caret{font-size:11px;color:var(--muted)}.font-field select{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.fields{display:flex;flex-direction:column;gap:13px;padding-top:4px}.field{display:flex;align-items:center;gap:11px}.field-label{width:98px;flex:none;font-size:12px;color:var(--label)}.field-num,.num-box{width:52px;flex:none;border:1px solid var(--border-input);border-radius:7px;padding:5px 7px;font-family:var(--font-mono);font-size:11px;color:var(--text-3);text-align:right;background:var(--input-bg)}.field-num:focus{outline:1px solid var(--accent)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;min-width:0;height:15px;margin:0;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:5px;border-radius:3px;background:linear-gradient(to right,var(--accent) 0 var(--fill, 0%),var(--track) var(--fill, 0%) 100%)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:15px;height:15px;margin-top:-5px;border-radius:50%;background:#fff;border:1.5px solid var(--accent);box-shadow:0 1px 3px #141a3c40}input[type=range]::-moz-range-track{height:5px;border-radius:3px;background:var(--track)}input[type=range]::-moz-range-progress{height:5px;border-radius:3px;background:var(--accent)}input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#fff;border:1.5px solid var(--accent);box-shadow:0 1px 3px #141a3c40}input[type=range]:focus-visible{outline:1px solid var(--accent);outline-offset:3px}.overlay-row{display:flex;align-items:center;gap:10px}.overlay-row .select-field{flex:1;min-width:0}.overlay-val{font-family:var(--font-mono);font-size:11px;color:var(--label);width:26px;flex:none;text-align:right}.select-field{position:relative;display:flex;align-items:center;justify-content:space-between;gap:6px;border:1px solid var(--border-input);border-radius:9px;padding:9px 10px;font-size:12px;color:var(--text-3)}.select-field:hover{border-color:var(--border-hover)}.select-field:focus-within{border-color:var(--accent)}.select-field select{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.check{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--text-3);cursor:pointer}.check input{width:15px;height:15px;margin:0;flex:none;accent-color:var(--accent);cursor:pointer}.check.strong{font-weight:500}.toggle-block{display:flex;flex-direction:column;gap:7px;padding:2px 4px}.toggle{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:500;color:var(--text-3);cursor:pointer}.toggle input{position:absolute;opacity:0;width:0;height:0}.toggle-track{position:relative;width:30px;height:17px;flex:none;border-radius:999px;background:#d8d8d1;transition:background .14s}.toggle-knob{position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:#fff;transition:transform .14s}.toggle input:checked+.toggle-track{background:var(--accent)}.toggle input:checked+.toggle-track .toggle-knob{transform:translate(13px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--accent);outline-offset:2px}.icon-btn{width:28px;height:28px;flex:none;background:none;border:1px solid var(--border-input);border-radius:8px;color:var(--label);font-size:12px;line-height:1;cursor:pointer}.icon-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.icon-btn.danger:hover:not(:disabled){border-color:var(--danger);color:var(--danger)}.icon-btn:disabled{opacity:.35;cursor:default}.icon-row{display:flex;gap:6px}.field-block{display:flex;flex-direction:column;gap:7px}.field-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.field-head .icon-btn{width:24px;height:24px}.field-name{font-size:12px;font-weight:500;color:var(--text-3)}.text-input{width:100%;background:var(--input-bg);border:1px solid var(--border-input);border-radius:9px;padding:10px 11px;font:inherit;font-size:14px;color:var(--text-2);resize:vertical}.text-input.body{font-size:13px;line-height:1.5;min-height:96px}.text-input:focus{outline:none;border-color:var(--accent)}.align-seg{display:flex;background:var(--seg-track);border:1px solid var(--border-input);border-radius:9px;padding:3px;gap:2px}.align-seg button{flex:1;background:none;border:none;font:inherit;font-size:12px;color:var(--label);padding:7px;border-radius:7px;cursor:pointer}.align-seg button:hover:not(.active){color:var(--text)}.align-seg button.active{background:var(--accent);color:#fff;font-weight:500}.card.inline-row{flex-direction:row;align-items:center;justify-content:space-between;padding:11px 14px}.dropzone{position:relative;border:1px dashed var(--border-strong);border-radius:10px;padding:22px;display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--input-bg);cursor:pointer;text-align:center}.dropzone:hover{border-color:var(--accent);background:#f7f8fe}.dropzone:focus-within{border-color:var(--accent)}.dropzone-title{font-size:12px;font-weight:500;color:var(--text-3)}.dropzone-note{font-family:var(--font-mono);font-size:10px;color:var(--muted)}.dropzone input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.logo-preview{max-height:40px;max-width:100%;object-fit:contain}.kv{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--label)}.kv-val{font-family:var(--font-mono);color:var(--text-3);text-align:right;word-break:break-all}.hint{font-size:12px;color:var(--muted);line-height:1.45;margin:0}.hint.indent{padding-left:40px}.hint code{font-family:var(--font-mono);background:var(--seg-track);padding:1px 5px;border-radius:4px}.link-btn{background:none;border:none;color:var(--accent);font:inherit;font-size:12px;font-weight:600;padding:0;cursor:pointer;width:fit-content;text-align:left}.link-btn:hover{color:var(--accent-hover)}.link-btn.quiet{font-weight:400;color:var(--muted)}.link-btn.quiet:hover{color:var(--danger)}.too-narrow{display:none}@media (max-width: 1000px){.app{display:none}.too-narrow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:100vh;padding:32px;text-align:center}.too-narrow .brand{justify-content:center}.too-narrow p{font-size:13px;color:var(--label);margin:0;max-width:34ch;line-height:1.5}.too-narrow .dims{font-family:var(--font-mono);font-size:11px;color:var(--muted)}}
