@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-latin-700-normal-CqTg7A15.woff2) format("woff2"),url(/assets/baloo-2-latin-700-normal-Ld3Zm3l2.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-latin-800-normal-BbF3Etk1.woff2) format("woff2"),url(/assets/baloo-2-latin-800-normal-B8BXfZF7.woff) format("woff")}@font-face{font-family:Bubblegum Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bubblegum-sans-latin-400-normal-BXy4BlRP.woff2) format("woff2"),url(/assets/bubblegum-sans-latin-400-normal-CE2wf8zX.woff) format("woff")}@font-face{font-family:Chewy;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/chewy-latin-400-normal-BFhrjfYU.woff2) format("woff2"),url(/assets/chewy-latin-400-normal-Bytuav8a.woff) format("woff")}@font-face{font-family:Comfortaa;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/comfortaa-latin-600-normal-BgHTI9Cz.woff2) format("woff2"),url(/assets/comfortaa-latin-600-normal-DSfhJPm3.woff) format("woff")}@font-face{font-family:Comfortaa;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/comfortaa-latin-700-normal-DOtxUU44.woff2) format("woff2"),url(/assets/comfortaa-latin-700-normal-K_GTRK4c.woff) format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fredoka-latin-600-normal-C4zohCW5.woff2) format("woff2"),url(/assets/fredoka-latin-600-normal-CcrEjrB4.woff) format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fredoka-latin-700-normal-BOIZVyIN.woff2) format("woff2"),url(/assets/fredoka-latin-700-normal-C8FeHd3X.woff) format("woff")}@font-face{font-family:Grandstander;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/grandstander-latin-700-normal-B7EXRwbV.woff2) format("woff2"),url(/assets/grandstander-latin-700-normal-C_7sGtqO.woff) format("woff")}@font-face{font-family:Grandstander;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/grandstander-latin-800-normal-C5RZ1tt5.woff2) format("woff2"),url(/assets/grandstander-latin-800-normal-CCyNXI-Z.woff) format("woff")}@font-face{font-family:Henny Penny;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/henny-penny-latin-400-normal-BoMsKDmu.woff2) format("woff2"),url(/assets/henny-penny-latin-400-normal-Ce2YpXbn.woff) format("woff")}@font-face{font-family:Lemonada;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lemonada-latin-600-normal-Br8uKo_U.woff2) format("woff2"),url(/assets/lemonada-latin-600-normal-wc9RdLQq.woff) format("woff")}@font-face{font-family:Lemonada;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lemonada-latin-700-normal-o81mPNau.woff2) format("woff2"),url(/assets/lemonada-latin-700-normal-D-V-bhh0.woff) format("woff")}@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lilita-one-latin-400-normal-87r-Z-Re.woff2) format("woff2"),url(/assets/lilita-one-latin-400-normal-DXkechA3.woff) format("woff")}@font-face{font-family:Mali;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/mali-latin-600-normal-B9TiUNpT.woff2) format("woff2"),url(/assets/mali-latin-600-normal-CycpQCwU.woff) format("woff")}@font-face{font-family:Mali;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/mali-latin-700-normal-UA1FHiAM.woff2) format("woff2"),url(/assets/mali-latin-700-normal-DHEtm6Un.woff) format("woff")}@font-face{font-family:Pacifico;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pacifico-latin-400-normal-7HIToT7q.woff2) format("woff2"),url(/assets/pacifico-latin-400-normal-DArfF-vd.woff) format("woff")}@font-face{font-family:Sniglet;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/sniglet-latin-800-normal-Db1o7iA-.woff2) format("woff2"),url(/assets/sniglet-latin-800-normal-g3yqKLdc.woff) format("woff")}@font-face{font-family:Zen Maru Gothic;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/zen-maru-gothic-latin-700-normal-CSiy1nnP.woff2) format("woff2"),url(/assets/zen-maru-gothic-latin-700-normal-Cb4EHpDE.woff) format("woff")}@font-face{font-family:Zen Maru Gothic;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/zen-maru-gothic-latin-900-normal-ClrOxROE.woff2) format("woff2"),url(/assets/zen-maru-gothic-latin-900-normal-eQHcQQud.woff) format("woff")}:root{--surface: #f6f3ef;--panel: #ffffff;--panel-border: #e4ddd5;--text: #2b2420;--text-muted: #7a6f66;--accent: #c0512f;--accent-text: #ffffff;--focus: #1f6feb;--danger-surface: #fdebe6;--danger-text: #8f2a12;--radius: 10px;font-family:Nunito,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);background:var(--surface)}@media(prefers-color-scheme:dark){:root{--surface: #1b1816;--panel: #26211e;--panel-border: #3a332e;--text: #f1ebe5;--text-muted: #a89c91;--accent: #e8734f;--accent-text: #1b1816;--focus: #6aa6ff;--danger-surface: #43211a;--danger-text: #ffb4a0}}*{box-sizing:border-box}body{margin:0;background:var(--surface)}h1,h2,p{margin:0}button,input,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.editor-shell{min-height:100vh;display:flex;flex-direction:column}.editor-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;background:var(--panel);border-bottom:1px solid var(--panel-border)}.editor-header h1{font-size:20px;font-weight:800}.editor-header p{font-size:13px;color:var(--text-muted)}.header-actions{display:flex;gap:8px;flex-wrap:wrap}.editor-main{flex:1;display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;padding:24px;align-items:start}.editor-sidebar{display:flex;flex-direction:column;gap:24px;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);padding:20px;max-height:calc(100vh - 120px);overflow-y:auto;position:sticky;top:24px}.editor-sidebar h2{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.theme-chip{display:flex;flex-direction:column;gap:6px;align-items:flex-start;padding:8px 10px;background:transparent;border:1px solid var(--panel-border);border-radius:8px;cursor:pointer;text-align:left}.theme-chip:hover{border-color:var(--accent)}.theme-chip.is-active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.theme-chip-title{font-size:13px;font-weight:700}.theme-swatches{display:flex;gap:4px}.theme-swatches span{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.15)}.field-group{display:flex;flex-direction:column;gap:12px}.field{display:flex;flex-direction:column;gap:4px}.field label,.photo-row-body label{font-size:12px;font-weight:700;color:var(--text-muted)}.field input,.field textarea{padding:8px 10px;background:var(--surface);border:1px solid var(--panel-border);border-radius:8px;resize:vertical}.hint{font-size:12px;color:var(--text-muted);line-height:1.5}.photo-row{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--panel-border);border-radius:8px}.photo-row-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.photo-row-title{font-size:14px;font-weight:700}.photo-row-actions{display:flex;gap:4px}.photo-row-body{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px}.button-primary,.button-secondary,.button-ghost{padding:8px 14px;border-radius:8px;border:1px solid transparent;font-weight:700;font-size:13px;cursor:pointer}.button-primary{background:var(--accent);color:var(--accent-text)}.button-secondary{background:transparent;border-color:var(--panel-border)}.button-ghost{background:transparent;color:var(--text-muted)}.button-secondary:hover:not(:disabled),.button-ghost:hover:not(:disabled){border-color:var(--accent);color:var(--text)}button:disabled{opacity:.5;cursor:not-allowed}.editor-stage{display:flex;flex-direction:column;gap:12px;min-width:0}.stage-viewport{width:100%}.stage-sizer{position:relative;box-shadow:0 10px 40px #0000002e;border-radius:6px;overflow:hidden}.stage-canvas{position:absolute;left:0;top:0;transform-origin:top left}.stage-hint{font-size:13px;color:var(--text-muted)}.upload-hotspot{position:absolute;display:flex;align-items:flex-end;justify-content:center;padding:0 0 18px;background:transparent;border:3px dashed transparent;border-radius:24px;cursor:pointer}.upload-hotspot:hover,.upload-hotspot:focus-visible{background:#ffffff59;border-color:#00000059}.upload-hotspot-label{display:none;padding:6px 14px;font-size:22px;font-weight:800;color:#2b2420;background:#ffffffeb;border-radius:999px}.upload-hotspot:hover .upload-hotspot-label,.upload-hotspot:focus-visible .upload-hotspot-label{display:inline-block}.notice{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--danger-surface);color:var(--danger-text);border-radius:8px;font-size:14px;font-weight:600}@media(max-width:960px){.editor-main{grid-template-columns:minmax(0,1fr);padding:16px}.editor-sidebar{position:static;max-height:none;order:2}.editor-stage{order:1}.editor-header{flex-direction:column;align-items:flex-start;padding:16px}}button,[role=option]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}input[type=range]{width:100%;height:32px;accent-color:var(--accent)}.stage-sizer{touch-action:pan-y}.photo-row.is-selected{border-color:var(--focus);box-shadow:0 0 0 1px var(--focus)}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;background:#00000080;overscroll-behavior:contain}.sheet{display:flex;flex-direction:column;gap:12px;width:100%;max-width:560px;max-height:94vh;max-height:94dvh;overflow-y:auto;padding:12px 16px calc(16px + env(safe-area-inset-bottom));background:var(--panel);border-radius:16px 16px 0 0;animation:sheet-rise .18s ease-out}@keyframes sheet-rise{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.sheet{animation:none}}@media(min-width:961px)and (pointer:fine){.sheet-backdrop{align-items:center}.sheet{border-radius:16px;padding-bottom:16px}}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.sheet-header h2{font-size:16px;font-weight:800}.sheet-content{display:flex;flex-direction:column;gap:12px}.focus-viewport{position:relative;margin:0 auto;overflow:hidden;background:var(--surface);border-radius:10px;box-shadow:inset 0 0 0 1px var(--panel-border)}.focus-scene{position:absolute;left:0;top:0;transform-origin:0 0;pointer-events:none}.gesture-surface{position:absolute;top:0;right:0;bottom:0;left:0;cursor:grab;touch-action:none}.sheet-hint{font-size:13px;text-align:center;color:var(--text-muted)}.size-control{display:grid;grid-template-columns:48px minmax(0,1fr) 48px 52px;gap:8px;align-items:center}.size-readout{text-align:right;font-size:14px;font-weight:800}.step-button{min-width:48px;min-height:48px;font-size:22px;font-weight:800;line-height:1;background:var(--surface);border:1px solid var(--panel-border);border-radius:12px;cursor:pointer}.step-button:active{background:var(--panel-border)}.nudge-pad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.sheet-actions{display:flex;gap:8px}.sheet-actions button{flex:1;min-height:44px}@media(pointer:coarse){.button-primary,.button-secondary,.button-ghost,.theme-chip{min-height:44px}input[type=range]{height:44px}}@media(max-width:960px){.editor-shell{padding-bottom:84px}.editor-header .header-actions{position:fixed;left:0;right:0;bottom:0;z-index:20;flex-wrap:nowrap;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--panel-border)}.header-actions button{flex:1;min-height:46px}.photo-row-body{display:none}input,textarea{font-size:16px}}
