*{box-sizing:border-box} :root{color-scheme:light} [hidden]{display:none!important}body{margin:0;background:#fff9fc;color:#523848;font-family:system-ui,"Microsoft Yahei",sans-serif;line-height:1.65}.top,main,footer{max-width:1240px;margin:auto;padding:24px clamp(18px,4vw,54px)}.top{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #f0d3e2}.brand{font-weight:900;letter-spacing:2px;font-size:21px;color:#ae4e79;text-decoration:none}.brand small{display:block;font-size:11px;font-weight:500;letter-spacing:1px}.top nav{display:flex;gap:16px;flex-wrap:wrap}.top nav a{color:#9c4d74;font-size:13px}.eyebrow{font-weight:750;font-size:11px;letter-spacing:2px;color:#ba7295}h1{font-size:clamp(28px,4.5vw,42px);margin:8px 0}h1 span{color:#ca749c}.intro,.hint{color:#917887;font-size:13px}.panel{background:white;border:1px solid #f0cee0;border-radius:22px;padding:clamp(18px,3vw,28px);box-shadow:0 14px 40px #44213a08;margin:22px 0}.panel h2{margin:6px 0 12px;font-size:22px}.layout{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,1fr);gap:22px}.layout>.panel{margin:0}label{display:block;font-size:14px;font-weight:650;margin:16px 0 0}input:not([type=checkbox]):not([type=color]),textarea{display:block;width:100%;padding:11px 13px;margin-top:6px;border:1px solid #e6bdd2;border-radius:11px;font:inherit;font-weight:400;color:#523848;background:#fff}textarea{resize:vertical}input:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #bc6392;outline-offset:2px}input[type=color]{display:block;margin-top:7px;width:100%;height:43px;border:1px solid #e6bdd2;border-radius:12px;background:white}fieldset{margin-top:22px;border:1px solid #efd3e1;border-radius:14px;padding:8px 15px 16px}legend{padding:0 6px;font-size:14px;font-weight:750}fieldset label{font-weight:450;display:flex;align-items:center;gap:9px;margin:9px 0}input[type=checkbox]{accent-color:#b65a86;width:17px;height:17px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}button{font:inherit;cursor:pointer;background:#b65783;border:1px solid #b65783;border-radius:12px;color:white;padding:10px 18px;font-weight:700}button.secondary{background:white;color:#a04e76;border-color:#dfb3c9}button:disabled{opacity:.6;cursor:wait}.notice{background:#fff1f7;border:1px solid #eec7da;padding:12px;border-radius:12px;color:#915474;overflow-wrap:anywhere}.preview-panel{align-self:start;position:sticky;top:15px}.preview{--theme:#d96f9d;border:1px solid #ecd2e0;border-radius:18px;overflow:hidden;background:#fff}.preview #previewHero{text-align:center;padding:30px 18px;background:color-mix(in srgb,var(--theme) 17%,white);border-bottom:3px solid var(--theme)}.logo{display:grid;place-items:center;margin:auto;width:66px;height:66px;border-radius:50%;background:white;color:var(--theme);font-size:32px}.preview h3{font-size:23px;color:var(--theme);margin:10px 0}.preview p{overflow-wrap:anywhere}.preview-body{padding:22px}.announcement{border-left:4px solid var(--theme);padding:10px 14px;background:#fff6fa}.module-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:15px 0}.module-grid span{border:1px solid #edd8e1;border-radius:10px;padding:9px;text-align:center;font-size:12px;color:var(--theme)}footer{font-size:11px;color:#a28b99}@media(max-width:850px){.layout{grid-template-columns:1fr}.preview-panel{position:static}.top{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.media-editor{margin-top:32px;padding-top:20px;border-top:1px solid #efd3e1}.media-field{background:#fff9fc;border:1px solid #efcedf;border-radius:14px;padding:16px;margin:14px 0}.media-field label{margin:0}.media-field input[type=file]{display:block;max-width:100%;margin-top:12px;color:#654258}.media-field .actions{margin-top:10px}.finish-box{margin-top:30px;padding:20px;border:1px solid #e5b0cc;background:#fff2f8;border-radius:16px}.finish-box h2{margin:0 0 8px}#launchState{color:#954973;font-weight:750}#lastSaved,#saveStatus,#finishStatus,.media-field .hint{overflow-wrap:anywhere}#previewHero{position:relative;isolation:isolate;min-height:240px;display:grid;place-items:center;overflow:hidden}#previewBackground{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}#previewHero::before{content:"";position:absolute;inset:0;background:linear-gradient(#fff9,#fff4);z-index:-1}.hero-content{position:relative;text-align:center;padding:18px}.character{display:block;max-width:100%;width:auto;max-height:240px;margin:auto;object-fit:contain;filter:drop-shadow(0 5px 12px #5b23423b)}#previewHero:has(.character:not([hidden])) .logo{display:none}.preview img[hidden]{display:none!important}

/* Creator-defined preview theme: no hard-coded pink in the preview surface. */
.theme-editor{background:#fffbfd}.theme-editor select{width:100%;margin-top:6px;padding:10px;border:1px solid #dfb5ca;border-radius:10px;background:#fff;color:#523848;font:inherit}
.preview{--theme:#d96f9d;--soft:color-mix(in srgb,var(--theme) 13%,white);--line:color-mix(in srgb,var(--theme) 28%,white);--surface:color-mix(in srgb,var(--theme) 4%,white);--ink:#3c3540;background:var(--surface);border-color:var(--line);color:var(--ink)}
.preview #previewHero{background:linear-gradient(135deg,var(--soft),var(--surface));border-color:var(--theme)}
.preview #previewHero:before{background:linear-gradient(90deg,var(--surface) 90%,transparent)}
.preview .announcement{background:var(--soft)}.preview .module-grid span{border-color:var(--line);background:var(--surface)}
.preview[data-preset="night"]{--surface:#161c31;--soft:#273354;--line:#51668e;--ink:#f4f5ff}.preview[data-preset="night"] #previewHero:before{background:linear-gradient(90deg,#161c31e8,#161c31a0)}
.preview[data-preset="night"] .logo{background:#26314c}.preview[data-preset="night"] .module-grid span{color:#f1f4ff}.preview[data-preset="night"] .hint{color:#c7d4e8}
.preview[data-preset="minimal"]{--surface:#fff;--soft:#f2f3f4;--line:#d9dcdf;--ink:#25282c}.preview[data-preset="minimal"] #previewHero{background:#f7f7f6}.preview[data-preset="minimal"] .logo{border:1px solid #d9dcdf}
.preview[data-preset="warm"]{--surface:#fffaf4;--soft:#ffe2c9;--line:#efc6a7;--ink:#493328}.preview[data-preset="warm"] #previewHero{background:linear-gradient(135deg,#fff0df,#fffaf4)}
.preview[data-pattern]:not([data-pattern="none"]) #previewHero:after{position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.25;letter-spacing:35px;line-height:90px;font-size:38px;white-space:pre-wrap;overflow:hidden}
.preview[data-pattern="stars"] #previewHero:after{content:"✦    ✧     ✦     ✧    ✦     ✧     ✦     ✧    ✦     ✧";color:var(--theme)}
.preview[data-pattern="petals"] #previewHero:after{content:"✿    ❀     ✿     ❀    ✿     ❀     ✿     ❀    ✿";color:var(--theme)}
.preview[data-pattern="bubbles"] #previewHero:after{content:"○     ◯      ○     ◯     ○     ◯      ○     ◯";color:var(--theme)}
.preview[data-layout="split"] #previewHero .hero-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(105px,34%);align-items:center;gap:8px;text-align:left;width:100%}
.preview[data-layout="split"] #previewHero .hero-content .logo,.preview[data-layout="split"] #previewHero .hero-content .character{grid-column:2;grid-row:1 / 4}
.preview[data-layout="split"] #previewHero .hero-content h3{grid-column:1;grid-row:1}
.preview[data-layout="split"] #previewHero .hero-content p{grid-column:1;grid-row:2}
.preview[data-layout="split"] #previewHero .hero-content .character{max-height:220px}
.preview[data-preset="night"] #previewHero h3{color:var(--theme)}
@media(max-width:520px){.preview[data-layout="split"] #previewHero .hero-content{display:block;text-align:center}}
[role="status"]:empty{display:none}

.version-history{margin-top:24px;border-top:1px solid #ecdce3;padding-top:18px}.version-history summary{cursor:pointer;font-weight:700}.version-list{list-style:none;padding:0;margin:12px 0 0}.version-list li{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid #f0e7eb}.version-list li>div{min-width:0}.version-list button{flex-shrink:0}.version-list p{margin:5px 0}.version-excerpt{font-size:13px;overflow-wrap:anywhere;color:#766771}.recovery-panel{border-color:#d7b0c0}.recovery-panel h2{font-size:18px}#saveStatus{min-height:1.5em;font-size:13px;color:#766771}#saveReload{margin-bottom:12px}
.version-list{max-height:360px;overflow-y:auto;overscroll-behavior:contain;padding-right:6px}#previewIntro,#previewAnnouncement{white-space:pre-line}
