:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--app-text);background:var(--app-bg);--app-bg: #101114;--app-bg-soft: #15161f;--app-bg-deep: #0c0d10;--app-ink: #111111;--app-paper: #ffffff;--app-text: #f8fafc;--app-text-muted: rgba(248, 250, 252, .72);--panel-text: #f8fafc;--panel-text-muted: rgba(248, 250, 252, .66);--panel-surface: rgba(15, 17, 22, .72);--panel-surface-strong: rgba(12, 13, 16, .88);--panel-surface-glass: rgba(12, 13, 16, .36);--panel-surface-soft: rgba(255, 255, 255, .08);--panel-border: rgba(255, 255, 255, .14);--panel-border-strong: rgba(255, 255, 255, .2);--panel-highlight: rgba(255, 255, 255, .32);--panel-hairline: rgba(255, 255, 255, .05);--input-hairline: rgba(255, 255, 255, .04);--input-shadow: rgba(0, 0, 0, .12);--input-focus-shadow: rgba(0, 0, 0, .18);--title-shadow: rgba(0, 0, 0, .32);--panel-shadow-soft: rgba(0, 0, 0, .16);--panel-shadow-strong: rgba(0, 0, 0, .35);--panel-shadow: 0 22px 58px rgba(0, 0, 0, .28);--player-accent: #ff1f2d;--player-accent-soft: rgba(255, 31, 45, .28);--player-accent-dark: rgba(55, 3, 7, .88);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--app-bg)}#app{min-height:100vh}button,textarea{font:inherit}button{border:0}.auth-shell{display:grid;min-height:100vh;padding:24px;place-items:center;background:radial-gradient(circle at top,rgba(255,31,45,.24),transparent 30%),radial-gradient(circle at bottom right,rgba(255,159,24,.18),transparent 26%),linear-gradient(180deg,#170d10,#101114 52%,#090a0d)}.auth-panel{width:min(480px,100%);padding:28px;border:1px solid var(--panel-border-strong);border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 38%),#0c0d10d6;box-shadow:0 28px 60px #00000059,0 0 0 1px #ffffff0a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.auth-mark{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--panel-border);border-radius:999px;color:var(--player-accent);background:#ffffff0a;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.auth-panel h1{margin:18px 0 10px;font-size:clamp(28px,5vw,38px)}.auth-copy{margin-bottom:22px;color:var(--app-text-muted);line-height:1.7}.auth-form{display:grid;gap:12px}.auth-label{color:var(--app-text);font-size:14px;font-weight:700}.auth-input{width:100%;min-height:52px;padding:0 16px;border:1px solid var(--panel-border);border-radius:10px;color:var(--app-text);background:linear-gradient(135deg,rgba(255,255,255,.05),transparent 42%),linear-gradient(135deg,var(--player-accent-dark),var(--app-bg-soft) 80%);box-shadow:inset 0 0 0 1px var(--input-hairline),0 16px 32px var(--input-shadow);outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.auth-input:focus{border-color:var(--player-accent);box-shadow:0 0 0 4px var(--player-accent-soft),0 18px 36px var(--input-focus-shadow)}.auth-input::placeholder{color:var(--panel-text-muted)}.auth-submit{width:100%;margin-top:4px}.auth-error{margin:14px 0 0;color:#ff8a93;font-size:14px;font-weight:700}.app-shell{min-height:100vh;padding:32px;background:linear-gradient(135deg,var(--player-accent-soft),transparent 32%),linear-gradient(315deg,var(--panel-surface-soft),transparent 28%),linear-gradient(180deg,var(--player-accent-dark),var(--app-bg) 46%,var(--app-bg-soft))}.workspace{width:min(1180px,100%);margin:0 auto}.intro{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.eyebrow{margin:0 0 8px;color:var(--player-accent);font-size:13px;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:0;color:var(--app-text);font-size:38px;line-height:1.08;letter-spacing:0;text-shadow:0 12px 36px var(--title-shadow)}h2{margin-bottom:0;font-size:16px;letter-spacing:0}.main-grid{display:grid;grid-template-columns:minmax(340px,1.2fr) minmax(300px,.8fr);gap:16px;align-items:stretch}.panel,.output-panel{border:1px solid var(--panel-border-strong);border-radius:8px;background:linear-gradient(135deg,var(--panel-surface-soft),transparent 42%),var(--panel-surface);box-shadow:var(--panel-shadow),0 0 0 1px var(--panel-hairline);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel{padding:20px}.panel-title{display:flex;align-items:center;gap:10px;color:var(--panel-text)}.panel-title svg{color:var(--player-accent);flex:0 0 auto}.compact-title{margin-top:18px}.script-input{width:100%;min-height:146px;margin-top:16px;padding:15px;resize:vertical;border:1px solid var(--panel-border);border-radius:8px;color:var(--app-text);caret-color:var(--player-accent);background:linear-gradient(135deg,var(--panel-surface-soft),transparent 42%),linear-gradient(135deg,var(--player-accent-dark),var(--app-bg-soft) 74%);box-shadow:inset 0 0 0 1px var(--input-hairline),0 16px 32px var(--input-shadow);line-height:1.65;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.script-input:focus{border-color:var(--player-accent);background:linear-gradient(135deg,var(--panel-surface-soft),transparent 42%),linear-gradient(135deg,var(--player-accent-dark),var(--app-bg) 78%);box-shadow:0 0 0 4px var(--player-accent-soft),0 18px 36px var(--input-focus-shadow)}.script-input::placeholder{color:var(--panel-text-muted)}.script-input::selection{color:var(--app-ink);background:var(--player-accent)}.script-input.optimized{min-height:118px}.field-meta{display:flex;min-height:22px;justify-content:space-between;gap:12px;margin:8px 0 14px;color:var(--panel-text-muted);font-size:13px}.warning{color:var(--player-accent);font-weight:700}.primary-action,.secondary-action,.download-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;gap:9px;border-radius:8px;font-weight:800;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,opacity .16s ease}.primary-action{min-width:148px;padding:0 18px;color:var(--app-ink);background:var(--player-accent);box-shadow:0 16px 30px var(--player-accent-soft)}.secondary-action{width:100%;color:var(--app-text);background:linear-gradient(135deg,var(--panel-surface-soft),transparent),linear-gradient(135deg,var(--player-accent-dark),var(--app-bg-soft) 72%);box-shadow:0 14px 28px var(--panel-shadow-soft)}.download-action{min-width:136px;padding:0 16px;color:var(--app-ink);background:var(--player-accent);box-shadow:0 14px 24px var(--player-accent-soft)}.primary-action:hover:not(:disabled),.secondary-action:hover:not(:disabled),.download-action:hover:not(:disabled){transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.48}.text-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.text-action-card{display:grid;grid-template-columns:40px 1fr;align-items:center;gap:12px;min-height:72px;padding:12px;border:1px solid var(--panel-border);border-radius:8px;color:var(--app-text);text-align:left;background:linear-gradient(135deg,var(--panel-surface-soft),transparent 48%),var(--panel-surface-strong);cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.text-action-card.direct{color:var(--app-text);border-color:var(--player-accent);background:linear-gradient(135deg,var(--panel-surface-soft),transparent),linear-gradient(135deg,var(--player-accent),var(--player-accent-dark));box-shadow:0 16px 30px var(--player-accent-soft)}.text-action-card:hover:not(:disabled),.text-action-card:focus-visible{transform:translateY(-1px);border-color:var(--player-accent);box-shadow:0 12px 22px var(--player-accent-soft);outline:none}.text-action-card strong,.text-action-card small{display:block}.text-action-card strong{line-height:1.3}.text-action-card small{margin-top:4px;color:var(--panel-text-muted);line-height:1.3}.text-action-card.direct small{color:var(--app-text-muted)}.action-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:8px;color:var(--player-accent);background:var(--app-text)}.text-action-card.direct .action-icon{color:var(--player-accent)}.optimized-generate{width:100%;margin-top:12px}.agent-notice{margin:12px 0 0;padding:11px 12px;border:1px solid var(--panel-border);border-radius:8px;color:var(--app-text-muted);background:var(--panel-surface-soft);font-size:13px;font-weight:700;line-height:1.45}.voice-card strong,.audio-state strong{display:block;line-height:1.25}.voice-card small,.audio-state small{display:block;margin-top:5px;color:var(--panel-text-muted);line-height:1.3}.voice-list{display:grid;gap:12px;margin-top:18px}.voice-card{display:grid;grid-template-columns:40px 1fr 38px;align-items:center;min-height:76px;gap:12px;width:100%;padding:14px;border:1px solid var(--panel-border);border-radius:8px;color:var(--app-text);text-align:left;background:linear-gradient(135deg,var(--panel-surface-soft),transparent 48%),var(--panel-surface-strong);cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.voice-card>svg{color:var(--player-accent)}.voice-card:hover,.voice-card:focus-visible{transform:translateY(-1px);border-color:var(--player-accent);box-shadow:0 12px 22px var(--player-accent-soft);outline:none}.voice-card.selected{border-color:var(--player-accent);background:linear-gradient(135deg,var(--player-accent-soft),transparent 52%),var(--panel-surface-strong);box-shadow:inset 0 0 0 1px var(--player-accent-soft),0 16px 30px var(--player-accent-soft)}.voice-card.auditioning{border-color:var(--player-accent);background:linear-gradient(135deg,var(--player-accent-soft),transparent 52%),var(--panel-surface-strong)}.voice-copy{min-width:0}.optional-badge{padding:3px 8px;border-radius:999px;color:var(--player-accent);background:var(--player-accent-soft);font-size:12px;font-weight:800}.audition-action{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--panel-border);border-radius:50%;color:var(--player-accent);background:var(--app-text);cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.audition-action:hover,.audition-action:focus-visible,.audition-action.active{border-color:var(--player-accent);color:var(--app-ink);background:var(--player-accent);outline:none}.audition-action:hover{transform:scale(1.04)}.voice-detail{min-height:116px;margin-top:16px;padding:14px;border-radius:8px;background:linear-gradient(135deg,var(--panel-surface-soft),transparent 40%),linear-gradient(135deg,var(--player-accent-dark),var(--app-bg-soft) 74%);color:var(--app-text);box-shadow:inset 0 0 0 1px var(--panel-surface-soft)}.voice-detail p{margin-bottom:12px;line-height:1.55}.voice-detail span{color:var(--player-accent);font-size:13px;font-weight:800}.preference-action{margin-top:12px}.output-panel.player-output{margin-top:16px;padding:0;overflow:hidden;border:0;border-radius:8px;background:transparent;box-shadow:var(--panel-shadow)}.player-shell{position:relative;overflow:hidden;min-height:310px;padding:26px;border-radius:8px;color:var(--app-text);background:radial-gradient(circle at 18% 22%,var(--player-accent-soft),transparent 34%),radial-gradient(circle at 78% 18%,var(--panel-surface-soft),transparent 28%),linear-gradient(135deg,var(--player-accent-dark),var(--app-bg) 70%)}.player-shell:before,.player-shell:after{position:absolute;content:"";border-radius:50%;pointer-events:none}.player-shell:before{inset:-90px auto auto -70px;width:240px;height:240px;border:1px solid var(--panel-border)}.player-shell:after{right:-90px;bottom:-160px;width:360px;height:360px;background:var(--panel-surface-soft)}.player-topline,.player-layout,.player-audio,.favorite-memory{position:relative;z-index:1}.player-topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;color:var(--app-text-muted);font-size:12px;font-weight:800;letter-spacing:0}.player-topline svg{color:var(--player-accent);filter:drop-shadow(0 0 10px var(--player-accent))}.favorite-action{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--panel-border);border-radius:50%;color:var(--player-accent);background:var(--panel-surface-soft);cursor:pointer;transition:transform .16s ease,background .16s ease,box-shadow .16s ease,opacity .16s ease}.favorite-action:hover:not(:disabled),.favorite-action.active{background:var(--player-accent-soft);box-shadow:0 0 24px var(--player-accent-soft);transform:translateY(-1px)}.player-layout{display:grid;grid-template-columns:300px minmax(240px,1fr) auto;align-items:center;gap:30px}.motion-cover{position:relative;width:284px;max-width:100%;aspect-ratio:1;margin:0 auto;overflow:hidden;border:1px solid var(--panel-border);border-radius:8px;color:var(--app-text);box-shadow:0 24px 60px var(--panel-shadow-strong),0 0 42px var(--player-accent-soft)}.motion-field{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;padding:22px;isolation:isolate;background:linear-gradient(135deg,var(--player-accent),transparent 42%),linear-gradient(225deg,var(--player-accent-dark),transparent 46%),linear-gradient(180deg,var(--player-accent-soft),var(--app-bg));animation:motionField 11s ease-in-out infinite alternate}.motion-field:before,.motion-field:after,.motion-band{position:absolute;content:"";pointer-events:none;z-index:-1}.motion-field:before{inset:-18% -34% auto;height:56%;background:linear-gradient(90deg,transparent,var(--panel-highlight),var(--player-accent),transparent);filter:blur(18px);transform:rotate(-10deg);animation:motionSweep 7.6s ease-in-out infinite alternate}.motion-field:after{right:-20%;bottom:-16%;width:78%;height:52%;border:1px solid var(--panel-border);border-radius:999px 0 0;background:linear-gradient(135deg,transparent,var(--player-accent-soft));filter:blur(1px);animation:motionLift 9s ease-in-out infinite alternate}.motion-band{border-radius:999px;filter:blur(24px);mix-blend-mode:screen;opacity:.82}.band-a{top:12%;left:-18%;width:78%;height:26%;background:var(--player-accent);animation:bandFloatA 8s ease-in-out infinite alternate}.band-b{right:-18%;bottom:24%;width:86%;height:22%;background:var(--panel-highlight);animation:bandFloatB 9.5s ease-in-out infinite alternate}.band-c{left:12%;bottom:-12%;width:72%;height:30%;background:var(--player-accent-soft);animation:bandFloatC 10.5s ease-in-out infinite alternate}.motion-brand{position:absolute;top:18px;right:18px;display:inline-flex;align-items:center;gap:7px;color:var(--app-text);font-size:15px;font-weight:900;text-shadow:0 8px 24px var(--title-shadow)}.motion-brand svg{filter:drop-shadow(0 0 12px var(--player-accent))}.motion-field strong{display:block;margin:34px 0 0;color:var(--app-text);font-size:44px;font-weight:900;line-height:1.12;text-align:center;text-shadow:0 14px 30px var(--title-shadow);overflow-wrap:anywhere}.motion-field p{position:absolute;right:0;bottom:0;left:0;min-height:72px;margin:0;padding:14px 18px;color:var(--app-text);background:var(--panel-surface-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:16px;font-weight:800;line-height:1.45}@keyframes motionField{0%{background-position:0% 50%;transform:scale(1)}to{background-position:100% 50%;transform:scale(1.035)}}@keyframes motionSweep{0%{transform:translate(-10%) rotate(-12deg)}to{transform:translate(14%) rotate(-4deg)}}@keyframes motionLift{0%{transform:translate3d(0,8px,0) scale(1)}to{transform:translate3d(-18px,-10px,0) scale(1.08)}}@keyframes bandFloatA{0%{transform:translate3d(-12px,0,0) rotate(-6deg)}to{transform:translate3d(42px,24px,0) rotate(9deg)}}@keyframes bandFloatB{0%{transform:translate3d(16px,8px,0) rotate(5deg)}to{transform:translate3d(-38px,-20px,0) rotate(-10deg)}}@keyframes bandFloatC{0%{transform:translate3d(0,14px,0) scale(1)}to{transform:translate3d(18px,-22px,0) scale(1.18)}}@media (prefers-reduced-motion: reduce){.motion-field,.motion-field:before,.motion-field:after,.motion-band{animation:none}}.player-copy{min-width:0}.player-kicker{margin-bottom:10px;color:var(--player-accent);font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.player-copy h2{margin-bottom:8px;font-size:30px;line-height:1.15}.player-copy p{max-width:520px;margin-bottom:14px;color:var(--app-text-muted);line-height:1.6}.player-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.player-meta span{padding:5px 10px;border:1px solid var(--panel-border);border-radius:999px;color:var(--app-text-muted);background:var(--panel-surface-soft);font-size:12px;font-weight:800}.player-status{display:block;max-width:560px;color:var(--app-text);overflow-wrap:anywhere}.player-controls{display:grid;justify-items:center;gap:14px}.player-main-action,.player-side-action{display:inline-flex;align-items:center;justify-content:center;color:var(--app-ink);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.player-main-action{width:76px;height:76px;border-radius:50%;background:var(--player-accent);box-shadow:0 18px 36px var(--player-accent-soft)}.player-side-action{width:44px;height:44px;border-radius:50%;color:var(--app-text);border:1px solid var(--panel-border);background:var(--panel-surface-soft)}.player-main-action:hover:not(:disabled),.player-side-action:hover:not(:disabled){transform:translateY(-2px) scale(1.02)}.player-main-action:disabled,.player-side-action:disabled{cursor:not-allowed;opacity:.45}.player-audio{margin-top:20px;padding:12px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-surface-strong)}.player-audio audio{display:block;width:100%;height:38px}.player-audio p{margin:0;color:var(--app-text-muted);font-size:13px;line-height:1.4}.favorite-memory{margin-top:14px;padding:14px;border:1px solid var(--panel-border);border-radius:8px;background:linear-gradient(135deg,var(--panel-surface-soft),transparent 46%),var(--panel-surface-strong)}.favorite-memory-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}.favorite-memory-head .player-kicker{margin-bottom:4px}.favorite-memory-head span{color:var(--app-text-muted);font-size:12px;font-weight:900}.favorite-notice,.favorite-empty{margin:0;color:var(--app-text-muted);font-size:13px;line-height:1.45}.favorite-notice{margin-bottom:10px;color:var(--player-accent);font-weight:800}.favorite-list{display:grid;gap:8px}.favorite-item{display:grid;grid-template-columns:minmax(116px,.38fr) minmax(0,1fr) 34px;align-items:center;gap:12px;width:100%;padding:11px 12px;border:1px solid var(--panel-border);border-radius:8px;color:var(--app-text);text-align:left;background:var(--panel-surface-soft);cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.favorite-item:hover,.favorite-item:focus-visible{border-color:var(--player-accent);box-shadow:0 10px 22px var(--player-accent-soft);outline:none;transform:translateY(-1px)}.favorite-item strong,.favorite-item small,.favorite-item em{display:block}.favorite-item small{margin-top:4px;color:var(--app-text-muted);font-size:12px;line-height:1.35}.favorite-item em{min-width:0;color:var(--app-text-muted);font-style:normal;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.favorite-remove{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--panel-border);border-radius:50%;color:var(--player-accent);background:var(--panel-surface-soft);cursor:pointer;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}.favorite-remove:hover,.favorite-remove:focus-visible{background:var(--player-accent-soft);box-shadow:0 0 18px var(--player-accent-soft);outline:none;transform:scale(1.04)}@media (max-width: 980px){.main-grid{grid-template-columns:1fr}.player-layout{grid-template-columns:1fr;text-align:center}.player-copy p,.player-status{margin-right:auto;margin-left:auto}.player-meta{justify-content:center}.text-action-grid{grid-template-columns:1fr}}@media (max-width: 640px){.app-shell{padding:20px}.intro{align-items:stretch;flex-direction:column}h1{font-size:30px}.primary-action{width:100%}.panel,.output-panel{padding:16px}.output-panel.player-output{padding:0}.player-shell{padding:20px}.motion-cover{width:100%;max-width:280px}.motion-brand{top:14px;right:14px;font-size:14px}.motion-field strong{margin-top:26px;font-size:34px}.motion-field p{min-height:68px;padding:12px 14px;font-size:14px}.favorite-memory-head,.favorite-item{grid-template-columns:1fr}.favorite-remove{justify-self:start}.favorite-memory-head{align-items:flex-start}.player-copy h2{font-size:24px}}
