:root{color:#fff8e7;background:#050505;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body{overflow-x:hidden;background:#050505}button,input,textarea{font:inherit}button{min-height:48px;border:0;cursor:pointer}input,textarea{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:13px 14px;color:#fff8e7;background:#ffffff12;outline:none}textarea{min-height:96px;resize:vertical}a{color:inherit}.gold-button,.glass-button,.small-button{display:inline-flex;align-items:center;justify-content:center;width:100%;border-radius:8px;padding:0 18px;font-weight:800;text-decoration:none}.gold-button{color:#211504;background:linear-gradient(135deg,#fff0b0,#d6a642 48%,#9d6b18);box-shadow:0 18px 48px #d6a64238}.glass-button,.small-button{color:#fff3cf;border:1px solid rgba(255,225,150,.25);background:#ffffff17;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.small-button{width:auto;min-height:38px;padding:0 12px;font-size:13px}.icon-button{width:46px;min-height:46px;border-radius:999px;color:#fff2c2;border:1px solid rgba(255,222,137,.3);background:#0a080499;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.text-button{min-height:32px;padding:0;color:#f5c76e;background:transparent}.home-page{min-height:100vh;padding:22px 16px 48px;color:#fff8e7;background:radial-gradient(circle at 50% 0,rgba(216,168,74,.22),transparent 32rem),linear-gradient(180deg,#11100d,#050505 42%)}.maker-hero{max-width:760px;margin:0 auto 20px;padding:32px 0 12px}.maker-hero p,.kicker,.panel-label{margin:0 0 10px;color:#f0c96a;font-size:13px;font-weight:800;letter-spacing:0}.maker-hero h1{max-width:560px;margin:0;font-size:clamp(30px,9vw,52px);line-height:1.05}.maker-form,.share-panel,.poster-generator{max-width:760px;margin:0 auto}.form-card,.share-panel,.poster-generator{border:1px solid rgba(255,225,150,.14);border-radius:8px;padding:18px;margin-bottom:16px;background:#ffffff0e;box-shadow:0 18px 70px #00000040}.form-card h2{margin:0 0 18px;font-size:20px}label{display:grid;gap:8px;margin-bottom:15px;color:#fff8e7d1;font-size:14px;font-weight:700}.section-head,.chapter-editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.chapter-editor{border-top:1px solid rgba(255,255,255,.1);padding-top:16px;margin-top:16px}.image-preview{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:8px;margin:2px 0 14px;border:1px solid rgba(255,225,150,.18)}.hint{margin:-4px 0 16px;color:#fff8e794;font-size:13px}.error-message{max-width:760px;margin:0 auto 14px;padding:12px 14px;border:1px solid rgba(255,111,111,.36);border-radius:8px;color:#ffd9d9;background:#780a0a4d}.success-message{max-width:760px;margin:0 auto 14px;padding:12px 14px;border:1px solid rgba(220,180,88,.4);border-radius:8px;color:#fff0b5;background:#7c580c47}.landing-page .landing-copy,.landing-panel p{max-width:640px;color:#fff8e7b8;line-height:1.8}.theme-grid{display:grid;grid-template-columns:1fr;gap:10px}.theme-option{min-height:54px;margin:0;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#ffffff0f}.theme-option input{display:none}.theme-option.active{color:#1b1001;border-color:#e7bf61;background:linear-gradient(135deg,#fff1b7,#d5a442)}.action-bar{position:sticky;bottom:0;z-index:5;display:grid;gap:10px;padding:12px 0 calc(12px + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,#050505 20%)}.share-panel{display:grid;gap:12px}.qr-box{display:grid;justify-items:center;gap:10px;color:#fff8e7b3;font-size:13px}.qr-box img{width:180px;border-radius:8px}.poster-card{display:grid;gap:12px;width:min(100%,320px);min-height:480px;margin:0 auto 14px;padding:22px;border-radius:8px;color:#fff7df;background:#060606}.poster-card span{color:#f4cd75;font-weight:900}.poster-card h2{margin:0;font-size:28px;line-height:1.12}.poster-card img{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:8px}.download-link{display:block;margin:10px 0;color:#f4cd75;font-weight:800;text-align:center}.poster-preview{width:100%;border-radius:8px}.movie-page{position:relative;min-height:100vh;overflow-x:hidden;color:#fff8e7;background:linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px) 0 0 / 22px 100%,radial-gradient(circle at 50% 18%,rgba(218,172,78,.2),transparent 22rem),#050505}.theme-pink{color:#fff7fb;background:radial-gradient(circle at 50% 10%,rgba(255,206,223,.34),transparent 20rem),linear-gradient(180deg,#2a0714,#070406)}.grain-layer{pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;opacity:.14;background-image:radial-gradient(circle at 20% 20%,#fff 0 1px,transparent 1px),radial-gradient(circle at 80% 30%,#fff 0 1px,transparent 1px),radial-gradient(circle at 40% 80%,#fff 0 1px,transparent 1px);background-size:36px 36px,48px 48px,58px 58px;animation:grainMove .9s steps(2) infinite}@keyframes grainMove{0%{transform:translateZ(0)}50%{transform:translate3d(-2%,1%,0)}to{transform:translate3d(1%,-1%,0)}}.music-player{position:fixed;top:calc(14px + env(safe-area-inset-top));right:14px;z-index:20}.return-edit-button{position:fixed;right:14px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:24;min-height:44px;border-radius:999px;padding:0 18px;color:#1c1203;font-weight:900;background:linear-gradient(135deg,#fff0b0,#d6a642 48%,#9d6b18);box-shadow:0 16px 42px #00000061}.movie-intro,.movie-chapter,.movie-finale,.not-found{position:relative;z-index:2;display:grid;align-content:center;min-height:100vh;padding:calc(42px + env(safe-area-inset-top)) 20px calc(38px + env(safe-area-inset-bottom))}.movie-intro{text-align:center}.movie-intro h1{margin:0;font-size:clamp(38px,12vw,68px);line-height:1.02}.intro-copy{max-width:520px;margin:18px auto 0;color:#fff8e7c2;font-size:18px;line-height:1.65}.credits{display:grid;gap:8px;margin:32px 0;color:#fff8e7a6}.start-button{max-width:320px;margin:0 auto}.cinema-opening.movie-intro{isolation:isolate;overflow:hidden;min-height:100svh;padding:calc(24px + env(safe-area-inset-top)) 20px calc(96px + env(safe-area-inset-bottom));place-items:center;align-content:center;color:#fff8e7;background:radial-gradient(circle at 50% 38%,rgba(214,166,66,.13),transparent 34%),linear-gradient(180deg,#000,#050505 55%,#000)}.cinema-noise,.cinema-curtain,.cinema-spotlight,.cinema-film-wipe{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.cinema-noise{z-index:-1;opacity:.18;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 4px);animation:cinemaGrain 1.6s steps(2) infinite}.cinema-spotlight{z-index:-1;background:radial-gradient(ellipse at 50% 28%,rgba(255,240,176,.24),rgba(214,166,66,.08) 28%,transparent 58%),linear-gradient(105deg,transparent 0 30%,rgba(255,240,176,.08) 44%,transparent 58% 100%);filter:blur(1px);animation:cinemaSpotlight 4.8s ease-in-out infinite alternate}.cinema-curtain{z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.78),transparent 18% 82%,rgba(0,0,0,.78)),repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 2px,transparent 2px 18px)}.cinema-sound-toggle{position:absolute;top:calc(16px + env(safe-area-inset-top));right:16px;z-index:4;min-width:54px;min-height:38px;border:1px solid rgba(255,240,176,.26);border-radius:999px;color:#fff8e7d1;background:#ffffff0f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.cinema-phase{width:min(100%,520px);text-align:center;animation:cinemaFadeUp .9s ease both}.cinema-wake p{margin:0;color:#ffffffe6;font-size:20px;font-weight:700}.cinema-countdown strong{display:inline-grid;place-items:center;width:168px;height:168px;border:1px solid rgba(255,240,176,.38);border-radius:50%;color:#fff8e7;font-size:96px;line-height:1;text-shadow:0 0 34px rgba(245,204,113,.52);animation:countdownPulse .48s ease both}.cinema-label{margin:0 0 16px;color:#f5cc71d1;font-size:12px;font-weight:900;text-transform:uppercase}.cinema-opening.movie-intro h1{margin:0;color:#fff8e7;font-size:38px;line-height:1.08;text-shadow:0 0 30px rgba(214,166,66,.34),0 22px 60px rgba(0,0,0,.9)}.cinema-credits{display:grid;gap:9px;margin-top:30px;color:#fff8e7b8;font-size:15px}.cinema-hook p,.cinema-ready p{margin:0 auto;max-width:360px;color:#fff8e7e6;font-size:22px;font-weight:800;line-height:1.7;text-shadow:0 18px 48px rgba(0,0,0,.72)}.cinema-ready p:last-child{margin-top:22px;color:#fff8e7b8;font-size:16px;font-weight:700}.typing-caret{display:inline-block;width:2px;height:1em;margin-left:4px;background:#f5cc71;vertical-align:-.16em;animation:caretBlink .8s steps(2) infinite}.cinema-enter-button{position:absolute;left:50%;bottom:calc(28px + env(safe-area-inset-bottom));z-index:5;min-width:186px;min-height:52px;border:1px solid rgba(255,240,176,.5);border-radius:999px;color:#1f1505;font-size:17px;font-weight:900;background:linear-gradient(135deg,#fff5c6,#d8a541 52%,#9f6a16);box-shadow:0 0 26px #f5cc713d,0 22px 60px #0000008c;transform:translate(-50%);animation:enterButtonIn .8s ease both}.cinema-film-wipe{z-index:8;transform:translate(-115%);background:repeating-linear-gradient(90deg,#000000fa 0,#000000fa 22px,#fff0b033 22px,#fff0b033 28px,#000000fa 28px,#000000fa 58px),linear-gradient(90deg,transparent,rgba(255,240,176,.26),transparent)}.cinema-opening.is-exiting .cinema-film-wipe{animation:filmWipe .72s cubic-bezier(.7,0,.2,1) forwards}.cinema-opening.is-exiting .cinema-phase,.cinema-opening.is-exiting .cinema-enter-button{animation:cinemaExit .52s ease forwards}.movie-chapter{gap:22px}.chapter-heading span{color:#f0c96a;font-size:12px;font-weight:900}.chapter-heading h2{margin:8px 0;font-size:clamp(32px,10vw,58px);line-height:1.04}.chapter-heading p{margin:0;color:#fff8e7ad}.film-frame{position:relative;overflow:hidden;width:100%;max-width:520px;aspect-ratio:4 / 5;margin:0 auto;border:1px solid rgba(245,204,113,.24);border-radius:8px;box-shadow:0 28px 70px #0000007a}.film-frame:before,.film-frame:after{content:"";position:absolute;top:0;bottom:0;z-index:2;width:16px;background:repeating-linear-gradient(180deg,#000000b8 0,#000000b8 12px,#fff0b047 12px,#fff0b047 18px)}.film-frame:before{left:0}.film-frame:after{right:0}.film-frame img{width:100%;height:100%;object-fit:cover;transform-origin:center}.subtitle-line{min-height:86px;max-width:560px;margin:0 auto;padding:14px 16px;color:#fff9ea;font-size:18px;line-height:1.65;text-align:center;text-shadow:0 2px 18px rgba(0,0,0,.9);background:linear-gradient(180deg,transparent,rgba(0,0,0,.32))}.next-button{max-width:280px;margin:0 auto}.movie-finale{text-align:center}.emotion-lines{display:grid;gap:22px;font-size:clamp(24px,7vw,42px);font-weight:900;line-height:1.35}.emotion-lines p{margin:0;animation:lineIn .72s ease both}@keyframes lineIn{0%{opacity:0;transform:translateY(20px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.big-en{margin:0 0 10px;color:#f5ce72;font-size:clamp(38px,12vw,76px);font-weight:1000}.blessing-card h2,.director-note h2{margin:0 0 18px;font-size:clamp(30px,9vw,54px)}.final-copy,.director-note p{max-width:620px;margin:0 auto 22px;color:#fff8e7c7;font-size:18px;line-height:1.8}.not-found{justify-items:center;text-align:center}@keyframes cinemaFadeUp{0%{opacity:0;transform:translateY(16px) scale(.985);filter:blur(6px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes countdownPulse{0%{opacity:0;transform:scale(.72);filter:blur(8px)}54%{opacity:1;transform:scale(1.08);filter:blur(0)}to{opacity:.15;transform:scale(1.18);filter:blur(4px)}}@keyframes cinemaSpotlight{0%{opacity:.64;transform:translate(-2%) scale(1)}to{opacity:1;transform:translate(2%) scale(1.04)}}@keyframes cinemaGrain{0%{transform:translateZ(0)}to{transform:translate3d(-3px,2px,0)}}@keyframes caretBlink{50%{opacity:0}}@keyframes enterButtonIn{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@keyframes filmWipe{to{transform:translate(115%)}}@keyframes cinemaExit{to{opacity:0;transform:scale(1.02);filter:blur(8px)}}@media(min-width:720px){.home-page{padding-inline:28px}.cinema-opening.movie-intro h1{font-size:52px}.cinema-hook p{max-width:620px;font-size:28px}.theme-grid,.action-bar{grid-template-columns:repeat(3,1fr)}.movie-chapter{grid-template-columns:minmax(0,.82fr) minmax(320px,520px);align-items:center;column-gap:36px}.film-frame{grid-row:span 3}.subtitle-line,.next-button{margin-left:0}}
