:root{color:#fffaf2;background:#050507;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,PingFang SC,Helvetica Neue,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0;background:#050507}button{font:inherit}.app-shell{width:min(100%,430px);min-height:100svh;margin:0 auto;overflow:hidden;background:radial-gradient(circle at 72% -8%,rgba(255,250,242,.11),transparent 14rem),linear-gradient(180deg,#111113,#050507 44%,#030304)}.screen{position:relative;min-height:100svh;overflow-x:hidden}.brief-screen{display:flex;flex-direction:column;padding:16px 18px 18px}.brief-screen:before,.camera-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;opacity:.11;pointer-events:none;background-image:radial-gradient(circle,rgba(255,250,242,.42) 1px,transparent 1.35px);background-size:20px 20px;-webkit-mask-image:linear-gradient(180deg,#000 0 44%,transparent 74%);mask-image:linear-gradient(180deg,#000 0 44%,transparent 74%)}.topbar,.progress,.step-title,.mood-stack,.album-preview,.type-panel,.scene-panel,.bottom-actions{position:relative;z-index:1}.topbar{display:flex;align-items:center;justify-content:space-between;min-height:42px}.brand{display:inline-flex;align-items:center;gap:7px;font:800 13px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:.2px}.icon-button,.pilot-pill{display:grid;min-width:38px;height:36px;place-items:center;border:1px solid rgba(255,250,242,.14);border-radius:999px;color:#fffaf2e0;background:#ffffff0f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.icon-button{cursor:pointer}.pilot-pill{min-width:54px;font:800 10px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:1px}.progress{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px}.progress span{display:grid;height:26px;place-items:center;border:1px solid rgba(255,250,242,.12);border-radius:999px;color:#fffaf26b;background:#fffaf209;font:800 11px/1 Helvetica Neue,Arial,sans-serif}.progress span.active{color:#151411;border-color:#fffaf2f0;background:#fffaf2}.progress span.done{color:#fffaf2d1;border-color:#fffaf242;background:#fffaf214}.step-title{display:grid;gap:8px;padding:24px 8px 18px}.step-title span{color:#fffaf26b;font:800 11px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:1.6px}.step-title h1{max-width:348px;margin:0;color:#fffaf2;font-size:clamp(36px,10.4vw,49px);font-weight:650;line-height:1.04;letter-spacing:0}.step-title p{max-width:312px;margin:0;color:#fffaf29e;font-size:14px;line-height:1.52}.mood-stack{display:grid;grid-template-columns:1fr;gap:9px}.glow-card{position:relative;isolation:isolate;min-height:74px;overflow:hidden;border:1px solid rgba(255,250,242,.12);border-radius:22px;color:#fffaf2;background:linear-gradient(180deg,#fffaf214,#fffaf206),#0e0e10db;box-shadow:inset 0 1px #ffffff14,0 14px 34px #0003;cursor:pointer;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,filter .18s ease,opacity .18s ease,transform .18s ease}.glow-card:first-child{min-height:74px}.glow-card span,.glow-card p,.glow-card small{position:relative;z-index:1;display:block}.glow-card small{padding:12px 16px 0;color:#fffaf261;font:800 10px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:1.4px}.glow-card span{padding:5px 86px 0 16px;font-size:18px;font-weight:760}.glow-card p{margin:5px 86px 12px 16px;color:#fffaf294;font-size:12px;line-height:1.48}.glow-card.selected{color:#fffaf2;border-color:#fffaf26b;background:radial-gradient(circle at 88% 4%,color-mix(in srgb,var(--c),transparent 42%),transparent 7.4rem),linear-gradient(180deg,#fffaf229,#fffaf20e),#141415eb;transform:translateY(-1px);box-shadow:0 0 0 1px #fffaf25c,0 0 0 6px #fffaf20b,inset 0 1px #ffffff29,0 18px 38px #00000057}.glow-card.selected small{color:#fffaf280}.glow-card.selected p{color:#fffaf2ad}.glow-card:not(.selected){opacity:.82;filter:saturate(.62) brightness(.92)}.album-preview{display:grid;gap:10px;margin-top:16px;padding:15px;border:1px solid rgba(255,250,242,.11);border-radius:24px;background:#fffaf20b;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.album-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.album-title span{display:inline-flex;align-items:center;gap:7px;color:#fffaf2;font:800 14px/1 Helvetica Neue,Arial,sans-serif}.album-title small{color:#fffaf26b;font:800 10px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:.8px}.album-preview>p{margin:0;color:#fffaf28f;font-size:12px;line-height:1.5}.album-strip{display:flex;gap:10px;margin-inline:-4px;overflow-x:auto;padding:2px 4px 4px;scrollbar-width:none}.album-strip::-webkit-scrollbar{display:none}.album-card{position:relative;flex:0 0 148px;min-height:176px;overflow:hidden;border:1px solid rgba(255,250,242,.1);border-radius:20px;background:#111}.album-card img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos, 50% 50%);filter:saturate(.92) contrast(.95)}.album-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 28%,rgba(0,0,0,.78) 100%)}.album-card div{position:absolute;right:12px;bottom:12px;left:12px;z-index:1;display:grid;gap:5px}.album-card span{color:#fffaf2a8;font:800 10px/1 Helvetica Neue,Arial,sans-serif}.album-card strong{color:#fffaf2;font-size:17px}.album-card p{display:-webkit-box;margin:0;overflow:hidden;color:#fffaf2ad;font-size:11px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.type-panel,.scene-panel{display:grid;gap:14px}.type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:12px;border:1px solid rgba(255,250,242,.1);border-radius:28px;background:#ffffff0e;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.type-grid button{position:relative;min-height:46px;border:1px solid rgba(255,250,242,.08);border-radius:16px;color:#fffaf2a8;background:#0000003d;cursor:pointer;font:800 13px/1 Helvetica Neue,Arial,sans-serif;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.type-grid button.selected{color:#151411;border-color:#fffaf2;background:#fffaf2;transform:translateY(-1px);box-shadow:0 0 0 3px #fffaf229,0 10px 22px #fffaf21f}.translation-card,.mission-card{display:grid;gap:8px;padding:17px;border:1px solid rgba(255,250,242,.1);border-radius:26px;background:radial-gradient(circle at 82% 0,rgba(255,219,145,.18),transparent 9rem),#ffffff0e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.translation-card span,.mission-card span{color:#fffaf26b;font:800 11px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:1.2px}.translation-card strong,.mission-card strong{color:#fffaf2;font-size:22px}.translation-card p,.mission-card p{margin:0;color:#fffaf29e;font-size:13px;line-height:1.58}.translation-card .script-line{margin-top:4px;color:#fffaf2d6}.scene-rail{display:flex;gap:12px;margin:-8px 0;overflow-x:auto;padding:8px 8px 12px;scroll-padding-inline:8px;scroll-snap-type:x proximity;scrollbar-width:none}.scene-rail::-webkit-scrollbar{display:none}.scene-card{position:relative;flex:0 0 158px;min-height:206px;overflow:hidden;border:1px solid rgba(255,250,242,.12);border-radius:24px;color:#fffaf2;background:#111;cursor:pointer;scroll-snap-align:start;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,filter .18s ease,opacity .18s ease,transform .18s ease}.scene-card img{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos, 50% 50%);filter:saturate(.9) contrast(.92) brightness(.86);transition:transform .22s ease,filter .22s ease}.scene-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(180deg,#00000014,#0000002e 42%,#000000d1),radial-gradient(circle at 70% 0,color-mix(in srgb,var(--c),transparent 58%),transparent 7rem)}.scene-card span{position:absolute;bottom:52px;left:14px;z-index:2;display:block;padding:0;color:color-mix(in srgb,var(--c),#fffaf2 16%);font:800 10px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:1.1px}.scene-card strong{position:absolute;bottom:18px;left:14px;z-index:2;display:block;padding:0;font-size:21px}.scene-card.selected{border-color:#fffaf2;transform:translateY(-1px);box-shadow:inset 0 0 0 2px #fffaf2b8,0 14px 28px #0000004d}.scene-card.selected img{filter:saturate(1) contrast(.98) brightness(.96);transform:scale(1.03)}.scene-card:not(.selected){opacity:.76;filter:saturate(.88) brightness(.9)}.bottom-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:auto;padding-top:14px}.bottom-actions:has(.ghost-action){grid-template-columns:.72fr 1.28fr}.primary-action,.ghost-action{display:inline-flex;min-height:54px;align-items:center;justify-content:center;gap:8px;border-radius:18px;cursor:pointer;font:800 15px/1 Helvetica Neue,Arial,sans-serif}.primary-action{border:0;color:#151411;background:#fffaf2;box-shadow:0 18px 42px #fffaf221}.primary-action:disabled{cursor:not-allowed;color:#fffaf247;background:#ffffff14;box-shadow:none}.ghost-action{border:1px solid rgba(255,250,242,.12);color:#fffaf2bd;background:#ffffff0a}.camera-screen{color:#fffaf2;background:#040405}.finder-bg,.finder-shade{position:absolute;top:0;right:0;bottom:0;left:0}.finder-bg{width:100%;height:100%;object-fit:cover;object-position:var(--pos, 50% 50%);filter:brightness(.62) contrast(1.1) saturate(.94)}.finder-shade{background:linear-gradient(180deg,rgba(0,0,0,.82),transparent 18%,transparent 48%,rgba(0,0,0,.92)),radial-gradient(circle at 82% 10%,rgba(255,217,145,.16),transparent 15rem)}.camera-top{position:absolute;top:16px;right:18px;left:18px;z-index:4;display:flex;align-items:center;justify-content:space-between}.round-dark{display:grid;width:48px;height:48px;place-items:center;border:1px solid rgba(255,250,242,.12);border-radius:999px;color:#fffaf2;background:#00000052;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.camera-top span{color:#fffaf2b8;font:800 13px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:1.2px}.finder-frame{position:absolute;top:0;right:0;left:0;z-index:2;height:calc(100svh - 265px)}.finder-frame:before,.finder-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,250,242,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,250,242,.18) 1px,transparent 1px);background-size:33.333% 33.333%;opacity:.7}.finder-frame:after{inset:auto 0 0;height:46px;background:#fffaf21f}.finder-chip{position:absolute;top:82px;z-index:3;padding:9px 12px;border:1px solid rgba(255,250,242,.14);border-radius:999px;color:#fffaf2b8;background:#0000006b;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font:800 11px/1 Helvetica Neue,Arial,sans-serif}.finder-chip.left{left:18px}.finder-chip.right{right:18px}.corner{position:absolute;z-index:3;width:58px;height:58px;border-color:#fffaf2db}.tl{top:27%;left:18%;border-top:5px solid;border-left:5px solid}.tr{top:27%;right:18%;border-top:5px solid;border-right:5px solid}.bl{bottom:24%;left:18%;border-bottom:5px solid;border-left:5px solid}.br{right:18%;bottom:24%;border-right:5px solid;border-bottom:5px solid}.coach-glass{position:absolute;right:18px;bottom:22px;left:18px;z-index:4;display:grid;gap:7px;padding:16px;border:1px solid rgba(255,250,242,.13);border-radius:24px;background:#000000a3;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.coach-glass span{color:#fffaf27a;font:800 11px/1 Helvetica Neue,Arial,sans-serif}.coach-glass strong{font-size:24px}.coach-glass p{margin:0;color:#fffaf2a8;font-size:13px;line-height:1.56}.camera-deck{position:absolute;right:0;bottom:0;left:0;z-index:5;display:grid;gap:10px;padding:12px 18px;background:#050507}.meter{display:grid;grid-template-columns:1fr 1fr;gap:10px}.meter span{display:grid;min-height:28px;place-items:center;border-radius:999px;color:#fffaf252;background:#ffffff14;font:800 12px/1 Helvetica Neue,Arial,sans-serif}.meter span.active{color:#151411;background:#fffaf2}.camera-deck p{margin:0;color:#fffaf294;font-size:13px;line-height:1.45}.cue-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.cue-tabs button{min-height:42px;border:1px solid rgba(255,250,242,.1);border-radius:15px;color:#fffaf270;background:transparent;font:800 12px/1 Helvetica Neue,Arial,sans-serif}.cue-tabs button.active{color:#151411;background:#fffaf2}.capture-row{display:grid;grid-template-columns:74px 1fr 74px;align-items:center;gap:20px;padding-top:4px}.side-tool{display:grid;min-height:68px;place-items:center;gap:5px;border:1px solid rgba(255,250,242,.12);border-radius:22px;color:#fffaf2bd;background:#ffffff0f;font:800 12px/1 Helvetica Neue,Arial,sans-serif}.shutter{display:grid;width:86px;height:86px;place-self:center;place-items:center;border:5px solid #fffaf2;border-radius:999px;color:#fffaf2;background:radial-gradient(circle at 35% 28%,#ff9c86 0 12%,transparent 13%),radial-gradient(circle,#ff342d 0,#ff342d 47%,#c60d0d 51%,#c60d0d);box-shadow:0 0 0 8px #ffffff1a,0 0 38px #ff342d47}.shutter.ready{box-shadow:0 0 0 8px #ffd99129,0 0 48px #ffd9913d}.hidden-input{display:none}.result-screen{padding:18px 18px 24px;color:#151411;background:radial-gradient(circle at 50% 0,rgba(255,255,255,.98),transparent 17rem),#f6f2e9}.result-top{display:flex;align-items:center;justify-content:space-between;min-height:48px;color:#655e55}.icon-button.light{color:#151411;border-color:#1514111f;background:#ffffffb8}.result-top span{font:800 13px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:1px}.polaroid{position:relative;margin-top:24px;padding:14px 14px 28px;background:#fffdf8;box-shadow:0 28px 54px #1e191229;transform:rotate(-1deg)}.polaroid:before{content:"";position:absolute;top:-16px;left:50%;width:122px;height:34px;background:repeating-linear-gradient(-8deg,#e0cca4b8 0,#e0cca4b8 9px,#f4e5c2b8 9px,#f4e5c2b8 18px);transform:translate(-50%) rotate(2deg)}.polaroid figure{height:min(54svh,430px);margin:0;overflow:hidden;background:#0b0b0c}.polaroid img{width:100%;height:100%;object-fit:cover;object-position:var(--pos, 50% 50%)}.polaroid figcaption{display:grid;gap:8px;padding:18px 6px 0}.polaroid span{color:var(--c);font:800 11px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:1px}.polaroid h1{margin:0;color:#151411;font-size:38px;font-weight:680;line-height:1.02}.polaroid p{margin:0;color:#5a534b;font-size:15px;line-height:1.45}.result-actions{display:grid;gap:11px;margin-top:22px}.result-actions .primary-action{color:#fffaf2;background:#151411}.result-actions .ghost-action{color:#151411;border-color:#15141124;background:#ffffffc2}.record-panel{display:grid;gap:10px;margin-top:16px;padding:14px;border:1px solid rgba(21,20,17,.08);border-radius:22px;background:#ffffffc2}.record-panel span{color:#7b7168;font:800 10px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:1px}.record-panel textarea{width:100%;resize:vertical;border:1px solid rgba(21,20,17,.12);border-radius:16px;color:#151411;background:#f6f2e9b8;padding:12px;font:500 13px/1.55 PingFang SC,Helvetica Neue,Arial,sans-serif;outline:none}.record-panel textarea:focus{border-color:#15141157;box-shadow:0 0 0 3px #1514110f}.album-save-button{min-height:44px;border:0;border-radius:15px;color:#fffaf2;background:#151411;cursor:pointer;font:800 13px/1 Helvetica Neue,Arial,sans-serif}.save-preview{display:grid;gap:10px;margin-top:16px;padding:14px;border:1px solid rgba(21,20,17,.08);border-radius:22px;background:#ffffffb8}.save-preview span{color:#8a8178;font:800 10px/1 Helvetica Neue,Arial,sans-serif;letter-spacing:1px}.save-preview strong{color:#151411;font-size:16px}.save-preview img{width:100%;max-height:360px;object-fit:contain;border-radius:12px;background:#eee7dc}@media(max-width:370px){.brief-screen{padding-inline:14px}.mood-stack{gap:9px}.glow-card{min-height:82px}.album-card{flex-basis:136px;min-height:166px}.scene-card{flex-basis:146px;min-height:194px}.type-grid{gap:7px}.type-grid button{min-height:42px;font-size:12px}}@media(prefers-reduced-motion:no-preference){.glow-card,.translation-card,.mission-card,.scene-card{animation:rise .46s ease both}.coach-glass{animation:rise .42s ease both}.polaroid{animation:develop .58s ease both}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes develop{0%{opacity:0;filter:brightness(1.8) saturate(.4);transform:translateY(22px) rotate(0) scale(.97)}to{opacity:1;filter:brightness(1) saturate(1);transform:translateY(0) rotate(-1deg) scale(1)}}
