:root{color-scheme:dark;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#090911;color:#f6f5fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}.app-shell{display:flex;min-height:100vh}.sidebar{width:253px;flex:none;background:#101019;border-right:1px solid #242430;padding:26px 14px;display:flex;flex-direction:column;min-height:100vh}.brand{display:flex;align-items:center;gap:10px;padding:0 11px 48px}.brand-mark{width:40px;height:40px;display:grid;place-content:center;border-radius:11px;background:linear-gradient(140deg,#8a3dff,#4d3fee);font-weight:850;font-size:25px;letter-spacing:-3px;box-shadow:0 8px 32px #7136f944}.brand-mark span{color:#ecb8ff}.brand b{font-size:13px;letter-spacing:1.2px}.brand small{display:block;font-size:9px;color:#9290a8;letter-spacing:2.1px;margin-top:4px}.side-title{font-size:10px;color:#706e82;letter-spacing:1.5px;padding:0 12px 14px;font-weight:800}.space-top{padding-top:36px}.nav-item{display:flex;width:100%;gap:12px;align-items:center;text-align:left;background:none;border:0;color:#9795ad;padding:14px 12px;border-radius:10px;font-size:13px;margin-bottom:4px;font-weight:600}.nav-item:hover{color:#fff;background:#1a1925}.nav-item.active{background:#2a213f;color:#fff;box-shadow:inset 3px 0 0 #a86afa}.nav-ico{font-size:18px;font-weight:400;width:22px;text-align:center;color:#b8a6ef}.nav-end{margin-left:auto}.ready-dot{width:6px;height:6px;border-radius:50%;background:#77debd}.muted{color:#706e83;font-size:10px;font-weight:500}.subnav{padding:0 14px;color:#7d7b95;font-size:12px;display:grid;gap:18px}.subnav>div{display:flex;gap:11px;align-items:center}.side-bottom{margin-top:auto;padding:20px 9px 3px;border-top:1px solid #272535;display:flex;gap:8px;align-items:center;color:#b1adbe;font-size:10px}.side-bottom small{margin-left:auto;color:#656377}.pulse-dot{width:7px;height:7px;border-radius:50%;background:#e5b14a}.pulse-dot.ok{background:#70d6ae}.main{flex:1;min-width:0}.topbar{height:74px;border-bottom:1px solid #20202c;display:flex;justify-content:space-between;align-items:center;padding:0 41px}.breadcrumb{font-size:12px;color:#828196}.breadcrumb span{padding:0 9px;color:#4d4b60}.breadcrumb strong{color:#eceaf3;font-weight:600}.header-right{display:flex;gap:21px;align-items:center}.safe-tag{font-size:10px;border:1px solid #315743;color:#83d9b0;border-radius:6px;padding:7px 10px;font-weight:800;letter-spacing:.5px}.help-link{font-size:12px;color:#a6a3b9}.content{max-width:1380px;margin:0 auto;padding:43px 40px}.intro{margin-bottom:31px}.eyebrow{color:#a681ff;font-size:10px;font-weight:850;letter-spacing:2.5px;margin-bottom:10px}.intro h1{font-size:39px;line-height:1.15;letter-spacing:-1.6px;margin:0 0 10px;font-weight:760}.intro h1 em{font-style:normal;background:linear-gradient(95deg,#d9c0ff,#8c65ff);background-clip:text;-webkit-background-clip:text;color:transparent}.intro p{color:#88869d;font-size:13px;margin:0;line-height:1.7}.workspace-grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(335px,1.09fr);gap:19px;align-items:start}.panel{background:#11111b;border:1px solid #252433;border-radius:14px;overflow:hidden}.controls-panel{padding:24px}.result-panel{padding:24px}.section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:26px}.section-header h2{font-size:15px;letter-spacing:-.2px;margin:0 0 6px;font-weight:750}.section-header p{color:#77758a;font-size:11px;margin:0}.model-pill{font-size:10px;white-space:nowrap;color:#baa4fb;border:1px solid #4b3b72;border-radius:6px;background:#221c35;padding:8px 9px}.field{margin-bottom:24px}.field-label{display:flex;justify-content:space-between;gap:6px;color:#bcbacb;font-size:10px;font-weight:850;letter-spacing:1.1px;margin-bottom:10px}.field-label span{color:#66647a;letter-spacing:0;font-weight:600}textarea,select{background:#171722;border:1px solid #302e40;border-radius:9px;color:#e8e7f1;width:100%;outline:none}textarea{padding:15px;line-height:1.65;resize:vertical;font-size:12px;min-height:161px}textarea::placeholder{color:#68667a}textarea:focus,select:focus{border-color:#9866eb;box-shadow:0 0 0 3px #8758e420}select{height:43px;padding:0 12px;font-size:12px}.hint{color:#666477;font-size:11px;line-height:1.5;margin-top:9px}.choice-group{display:flex;gap:9px}.choice{flex:1;border:1px solid #302d40;border-radius:9px;display:flex;gap:6px;align-items:center;justify-content:center;flex-wrap:wrap;color:#b3b1c4;background:#171722;padding:13px 7px;font-weight:700;font-size:12px}.choice small{font-size:9px;width:100%;font-weight:500;color:#716f85}.choice.active{background:#262035;border-color:#9261dc;color:#efddff}.format-icon{border:1.8px solid currentColor;display:inline-block;border-radius:2px}.portrait{height:15px;width:9px}.landscape{height:9px;width:15px}.square{height:12px;width:12px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.output-strip{padding:12px;background:#1b1928;border:1px solid #322943;border-radius:8px;color:#b5afc8;display:flex;justify-content:space-between;gap:8px;font-size:11px;flex-wrap:wrap;margin:0 0 14px}.output-strip strong{color:#e9d8ff}.alert{padding:12px 13px;border-radius:9px;font-size:11px;line-height:1.7;margin-bottom:17px}.note{background:#171823;color:#9b98ae;border:1px solid #282639}.warning{background:#30251b;color:#ecd3a4;border:1px solid #78542c}.error{background:#371e2a;color:#ffc6d4;border:1px solid #873f57;margin-top:14px}.generate-btn{border:0;width:100%;border-radius:9px;padding:16px 17px;color:white;background:linear-gradient(105deg,#8e4df0,#6548ee);font-size:13px;font-weight:800;box-shadow:0 8px 24px #6631d22a;text-align:left}.generate-btn:hover:not(:disabled){filter:brightness(1.12)}.generate-btn:disabled{opacity:.5;filter:grayscale(.5)}.generate-btn>span:first-child{margin-right:10px}.generate-btn .arrow{float:right}.cost-note{text-align:center;color:#757286;font-size:10px;margin:14px 0 0}.upload-area{min-height:130px;padding:17px;border:1px dashed #54426e;background:#191626;border-radius:9px;display:flex;align-items:center;flex-direction:column;justify-content:center;position:relative;overflow:hidden;cursor:pointer;gap:6px}.upload-area input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;z-index:2}.upload-area>span{font-size:25px;color:#b58df7}.upload-area strong{font-size:12px}.upload-area small{font-size:10px;color:#837f96;text-align:center}.upload-area img{max-height:195px;max-width:100%;object-fit:contain;display:block;z-index:1}.upload-area img[hidden]{display:none}.link-btn{background:none;border:0;padding:9px 0 0;color:#b3a1e1;font-size:11px}.video-stage{position:relative;min-height:377px;border-radius:9px;border:1px solid #272439;display:grid;place-items:center;background:radial-gradient(ellipse at 52% 55%,#1a1830,#11111b 60%);overflow:hidden}.stage-glow{pointer-events:none;position:absolute;left:50%;top:51%;transform:translate(-50%,-50%);width:280px;height:280px;border-radius:50%;background:#513b7b;opacity:.07;filter:blur(44px)}.stage-empty{text-align:center;max-width:265px;z-index:1}.stage-symbol{height:66px;width:66px;border-radius:50%;display:grid;place-content:center;margin:0 auto 23px;color:#af8af4;font-size:21px;background:#28213d;border:1px solid #533c80;padding-left:4px}.stage-empty h3{font-size:15px;margin:0 0 10px}.stage-empty p{color:#706e87;font-size:11px;line-height:1.7;margin:0}#resultVideo{max-width:100%;max-height:530px;min-height:260px}#resultVideo:not([hidden]){display:block}.stage-footer{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:20px 0;border-bottom:1px solid #282637}.output-info{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#e3e1ef}.output-info small{color:#716f84;font-size:10px}.download-btn{border:1px solid #634c90;color:#dcc5ff;font-size:11px;border-radius:7px;padding:9px 12px;white-space:nowrap}.download-btn[hidden]{display:none}.state-badge{color:#a5a2b8;background:#222130;border:1px solid #383547;font-size:10px;border-radius:5px;padding:6px 9px}.state-badge.active{color:#dec8ff;border-color:#7953ac}.state-badge.success{color:#87dfb7;border-color:#37634d}.state-badge.failed{color:#ffc4ca;border-color:#7f434b}.pipeline{padding-top:21px}.pipeline-head{font-size:10px;letter-spacing:1.1px;color:#77748d;font-weight:850;margin-bottom:20px}.step{display:flex;gap:12px;align-items:flex-start;padding-bottom:19px;color:#7d7a8e}.step-dot{width:10px;height:10px;border-radius:50%;border:2px solid #504c64;margin-top:3px;flex:none}.step.completed .step-dot{background:#78d4ab;border-color:#78d4ab}.step.active .step-dot{background:#be90fd;border-color:#be90fd;box-shadow:0 0 0 5px #7d5d9a2c}.step b{display:block;color:#c9c7d7;font-size:12px;margin-bottom:5px}.step small{font-size:10px;line-height:1.5;color:#77758b}.bottom-panel{display:flex;gap:13px;padding:19px;margin-top:24px;background:#141420;border:1px solid #28273a;border-radius:11px}.bottom-icon{width:24px;height:24px;display:grid;place-content:center;background:#282137;color:#cda6fb;border-radius:50%;font-size:13px;flex:none}.bottom-panel strong{color:#d7d4e5;font-size:12px}.bottom-panel p{color:#77748e;font-size:11px;line-height:1.8;margin:8px 0 0}footer{padding:31px 0 8px;text-align:center;color:#484658;font-size:10px;letter-spacing:1px}footer span{padding:0 8px}body.loading .stage-symbol{animation:float 2s infinite alternate}@keyframes float{to{transform:translateY(-5px);box-shadow:0 0 26px #8d59e735}}@media(max-width:1050px){.sidebar{width:214px}.content{padding:36px 23px}.topbar{padding:0 24px}.workspace-grid{grid-template-columns:1fr}.video-stage{min-height:350px}}@media(max-width:690px){.app-shell{display:block}.sidebar{width:100%;min-height:0;padding:14px}.brand{padding:0 5px 13px}.sidebar .side-title,.sidebar .subnav,.sidebar .side-bottom{display:none}.sidebar nav{display:flex;overflow:auto;gap:7px}.nav-item{flex:none;width:auto;padding:10px 12px;white-space:nowrap;font-size:11px}.nav-ico{display:none}.nav-end{display:none}.topbar{padding:0 16px;height:57px}.content{padding:28px 15px}.intro h1{font-size:31px}.header-right{gap:7px}.safe-tag{font-size:8px}.help-link{font-size:10px}.controls-panel,.result-panel{padding:18px}.section-header{flex-wrap:wrap}.model-pill{font-size:9px}.two-fields{grid-template-columns:1fr;gap:0}.video-stage{min-height:290px}}

/* v0.2: Higgsfield-inspired dark neutral / electric-lime creator workspace.
   Original Neon Video Studio branding; no Higgsfield marks or copied assets. */
:root { color-scheme:dark; background:#090a0b; color:#f4f5f0; --accent:#d0ff46; --accent-hover:#e0ff83; --panel:#161718; --line:#2e3030; --muted:#929590 }
body { background:#090a0b; color:#f4f5f0 }
.sidebar { background:#101112; border-color:#272929 }
.brand-mark { color:#121510; background:var(--accent); box-shadow:0 0 27px #d0ff4620; border-radius:13px; letter-spacing:-2px }
.brand-mark span { color:#4c5b16 }
.brand small,.side-title,.subnav,.muted,.side-bottom small { color:#858985 }
.nav-item { color:#a9aaa7 }
.nav-item:hover { background:#1c1e1d; color:#fff }
.nav-item.active { background:#252b1e; color:#f3ffdc; box-shadow:inset 3px 0 0 var(--accent) }
.nav-ico { color:#b9d79b }
.nav-item.active .nav-ico { color:var(--accent) }
.ready-dot,.pulse-dot.ok { background:var(--accent) }
.sidebar .side-bottom,.topbar { border-color:#282a2a }
.breadcrumb { color:#8e918c }.breadcrumb span { color:#626662 }.breadcrumb strong { color:#f5f6ef }
.safe-tag { color:var(--accent); border-color:#465b25; background:#192217 }
.help-link { color:#b5b8b3 }.eyebrow { color:var(--accent) }
.intro h1 em { background:none; color:var(--accent); -webkit-text-fill-color:var(--accent) }
.intro p,.section-header p,.hint,.cost-note,.step small,.subnav,.toolbar-note { color:#8e918b }
.panel { background:#151617; border-color:#2f3030; border-radius:13px }
.section-header h2 { color:#f0f2ea }
.model-pill { color:var(--accent); background:#22291c; border-color:#384b2b }
.field-label { color:#bcc1b8 }.field-label span { color:#868b83 }
textarea,select { background:#1e2020; border-color:#373a37; color:#f7f8f1 }
textarea::placeholder { color:#747970 }
textarea:focus,select:focus { border-color:#a4ce3b; box-shadow:0 0 0 3px #d0ff4617 }
.choice { background:#1d1f20; border-color:#373a37; color:#c4c7c2 }
.choice small { color:#898c86 }.choice.active { background:#29321f; border-color:#b7e936; color:#f1ffce }
.output-strip { background:#20251c; border-color:#39482a; color:#b6c2a9 }
.output-strip strong { color:var(--accent) }
.note { background:#1c1e1d; border-color:#313431; color:#adb0a8 }
.warning { background:#2d251a; border-color:#785c27; color:#f5dab0 }
.error { background:#322021; color:#ffc5c5; border-color:#764242 }
.generate-btn,.library-upload { background:var(--accent); color:#13170c; border:0; box-shadow:0 8px 24px #baff2a1a; font-weight:800 }
.generate-btn:hover:not(:disabled),.library-upload:hover { background:var(--accent-hover);filter:none }
.upload-area { background:#1b2019; border-color:#576b3b }
.upload-area>span,.link-btn { color:var(--accent) }
.upload-area small { color:#a5ada0 }
.video-stage { border-color:#363a36; background:radial-gradient(ellipse at 52% 56%,#1e241e,#111313 66%) }
.stage-glow { background:var(--accent); opacity:.025 }
.stage-symbol { color:var(--accent); background:#242f1b; border-color:#40582c }
.download-btn { color:#e5fbc8; border-color:#536641; background:#242b20;cursor:pointer }
.download-btn:hover { border-color:var(--accent) }
.state-badge { background:#242624; border-color:#393d38; color:#babdb5 }
.state-badge.active,.state-badge.success { color:var(--accent); border-color:#5a7431 }
.stage-footer,.bottom-panel { border-color:#323531 }
.pipeline-head { color:#a1a59c }
.step.completed .step-dot,.step.active .step-dot { background:var(--accent); border-color:var(--accent) }
.step.active .step-dot { box-shadow:0 0 0 5px #d0ff461a }
.bottom-panel { background:#171918 }
.bottom-icon { background:#29351f; color:var(--accent) }
footer { color:#707570 }
.counter { padding:2px 7px; border-radius:999px; font-size:10px; background:#282c25; color:#b5b8ac }
.library-nav .nav-item { margin-bottom:5px }
.output-actions,.upload-actions { display:flex; align-items:center; flex-wrap:wrap; gap:9px }
.upload-actions { justify-content:space-between }
.output-actions .download-btn { white-space:nowrap }
[hidden] { display:none!important }
.media-view { max-width:1200px; min-height:400px }
.library-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:17px }
.library-upload,.secondary-btn { display:inline-flex; gap:8px; align-items:center; justify-content:center; border-radius:8px; font-size:12px; padding:11px 16px; cursor:pointer; white-space:nowrap }
.secondary-btn { background:#222423; color:#ecefea; border:1px solid #40423e; box-shadow:none; font-weight:700 }
.secondary-btn:hover { background:#2a2d2a; border-color:#646c57 }
.danger-outline { color:#ffc4bf; border-color:#654342 }
.toolbar-note { font-size:11px }
.retention-chip { color:var(--accent); border:1px solid #4b6633; border-radius:8px; background:#222d1b; padding:10px 14px; font-size:12px; font-weight:750 }
.library-tip { background:#171b14; border:1px solid #303a29; padding:15px 17px; font-size:12px; border-radius:9px; margin-bottom:27px; line-height:1.65; color:#aab3a4 }
.library-tip strong { color:#e2eecd }
.media-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(185px,1fr)); gap:16px }
.media-card { overflow:hidden; border-radius:12px; background:#181a19; border:1px solid #363937; display:flex; flex-direction:column }
.media-cover { aspect-ratio:4/3; display:grid; place-items:center; background:linear-gradient(135deg,#252a22,#141615); position:relative; overflow:hidden }
.media-cover img,.media-cover video { width:100%;height:100%;object-fit:cover }
.media-cover .fallback-glyph { font-size:35px; color:#8b9e71 }
.media-cover .movie-tag { position:absolute;left:10px;bottom:10px;background:#000b;color:#f5f9eb;font-size:10px;border:1px solid #ffffff25;border-radius:6px;padding:4px 7px }
.media-info { padding:12px 12px 14px; min-width:0; display:flex; flex-direction:column; gap:8px; flex:1 }
.media-name { margin:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:12px;color:#f0f2e9 }
.media-detail { font-size:10px;color:#a1a59d;line-height:1.5 }
.media-actions { display:flex; flex-wrap:wrap; gap:7px;margin-top:auto }
.media-actions button { border:1px solid #454b3f;border-radius:7px;background:#262b23;color:#f0f1eb;cursor:pointer;font-size:11px;padding:7px 9px }
.media-actions button.primary { background:var(--accent);color:#161a11;border-color:transparent;font-weight:760 }
.media-actions button.delete { color:#ffb5b5;border-color:#604440;background:#2b2221 }
.empty-library { text-align:center; border:1px dashed #424840;border-radius:13px;background:#171a17;padding:60px 20px; color:#a3aaa0 }
.empty-library span { font-size:42px;color:var(--accent) }
.empty-library h2 {font-size:18px;color:#f0f4e9}
.empty-library p {font-size:12px;max-width:410px;margin:8px auto;line-height:1.65}
.toast { position:fixed;bottom:24px;right:25px;background:#262c21;color:#edfbd9;padding:14px 18px;border:1px solid #5c7844;box-shadow:0 12px 30px #0008;border-radius:9px;max-width:420px;font-size:12px;z-index:30;line-height:1.6 }
.media-modal { position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:15px }
.modal-backdrop { position:absolute;inset:0;background:#000c;backdrop-filter:blur(5px) }
.modal-panel { position:relative;max-height:94vh;overflow:auto;background:#1a1d1a;border:1px solid #5c6454;padding:18px;border-radius:13px;width:min(640px,96vw);box-shadow:0 24px 120px #000a }
.modal-header,.modal-actions { display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:12px;font-size:13px }
.modal-header button { background:none;border:0;color:#fff;cursor:pointer;font-size:19px }
#historyPlayer {display:block;width:100%;max-height:65vh;background:#090a09 }
.modal-actions { padding-top:16px;padding-bottom:0;flex-wrap:wrap }
.modal-actions span {color:#adb4a5;font-size:11px }
@media (max-width:690px) { .library-nav { display:flex;gap:7px;overflow:auto }.library-nav .nav-item { width:auto }.library-upload,.secondary-btn { padding:10px 12px }.media-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.media-card{min-width:0}.media-actions button{font-size:10px}.toolbar-note{width:100%}.toast{left:12px;right:12px;bottom:12px} }
