/* Integration layer for the original AppSidebar / Header CSS and native
   editors. Palette: AIMovieStudiov2/frontend/tailwind.config.ts, eb52643.
   Source shell rules are generated verbatim into source-shell.css. */
:root {
 color-scheme:dark;
 --app-bg:#0a0a0f;--app-panel:#13131a;--app-card:#1a1a24;
 --app-border:#1e1e2e;--app-border-strong:#2a2a3a;
 --app-text:#e4e4e7;--app-muted:#8d8d9a;
 --app-accent:#6366f1;--app-accent-strong:#818cf8;
 --app-success:#4ade80;--app-warm:#fbbf24;--app-danger:#f87171;
 --app-bg-rgb:10 10 15;--app-panel-rgb:19 19 26;--app-card-rgb:26 26 36;
 --app-muted-rgb:141 141 154;--app-accent-rgb:99 102 241;
 --toolbar-height:3.25rem;--sidebar-width:12rem;--sidebar-width-collapsed:3.75rem;
 --traffic-light-inset:0px;--shell-hairline:rgb(var(--app-muted-rgb)/.12);
 --shell-hover:rgb(var(--app-muted-rgb)/.09);
 --shell-selected:rgb(var(--app-accent-rgb)/.16);
 --shell-selected-strong:rgb(var(--app-accent-rgb)/.24);
 --fs-sm:.8rem;--fs-xs:.72rem;
 --paper:var(--app-panel);--surface:var(--app-card);--canvas:var(--app-bg);
 --ink:var(--app-text);--muted:var(--app-muted);--line:var(--app-border);
 --accent:var(--app-accent);--accent-soft:var(--shell-selected);
 --shadow:0 4px 16px #0005;
 --inspector:286px;
}
html,body{background:var(--app-bg);color:var(--app-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:0;-webkit-font-smoothing:antialiased}
:root{--app-bg:#09090b;--app-panel:#111113;--app-card:#18181b;--app-border:#27272a;--app-border-strong:#3f3f46;--app-muted:#a1a1aa;--app-bg-rgb:9 9 11;--app-panel-rgb:17 17 19;--app-card-rgb:24 24 27}
.immersive-header{height:58px;flex:none;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:0 24px;border-bottom:1px solid var(--app-border);background:var(--app-bg);position:relative;z-index:10;font-size:12px}
.immersive-leading,.immersive-home,.immersive-actions{display:flex;align-items:center;gap:12px;min-width:0}
.immersive-home{padding:6px 0;color:var(--app-text);font-size:13px;font-weight:600;white-space:nowrap}
.immersive-divider{color:#52525b}.immersive-leading>strong{font-size:12px;font-weight:500;white-space:nowrap;color:var(--app-muted)}
.immersive-project{display:flex;gap:10px;align-items:center;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.immersive-project>span{color:var(--app-muted);font-size:10px;border:1px solid var(--app-border);border-radius:4px;padding:2px 5px}
.immersive-actions{justify-content:flex-end;gap:10px}.immersive-actions .saved{font-size:10px;color:var(--app-muted);white-space:nowrap}
.immersive-jobs{font-size:12px;padding:8px 10px;white-space:nowrap;border-radius:6px}.immersive-jobs:hover{background:var(--app-card)}
.immersive-jobs>span:not(:empty){padding:1px 5px;border-radius:4px;background:#312e81;color:#e0e7ff}
.immersive-project-menu{position:relative}.immersive-project-menu>summary{display:flex;gap:9px;align-items:center;cursor:pointer;padding:8px 10px;border:1px solid var(--app-border);border-radius:6px;list-style:none;white-space:nowrap}.immersive-project-menu>summary::-webkit-details-marker{display:none}
.immersive-project-menu>div{position:absolute;right:0;top:42px;min-width:166px;padding:5px;border:1px solid var(--app-border-strong);border-radius:8px;background:var(--app-card);box-shadow:0 12px 28px #0008;display:grid;gap:2px}
.immersive-project-menu>div>button{padding:9px 12px;text-align:left;font-size:12px;border-radius:4px}.immersive-project-menu>div>button:hover{background:#27272a}
.immersive-context{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 20px;min-height:42px;background:var(--app-bg);border-bottom:1px solid var(--app-border);font-size:12px;color:var(--app-muted)}
.immersive-context>button{display:flex;gap:8px;align-items:center;color:var(--app-text)}
@media(max-width:1100px){.immersive-actions .saved{display:none}.immersive-header{grid-template-columns:1fr auto}.immersive-project{display:none}}
@media(max-width:640px){.immersive-header{height:52px;padding:0 12px;gap:8px}.immersive-leading{gap:8px}.immersive-actions{gap:4px}.immersive-actions .icon-btn{display:none}.immersive-leading>strong,.immersive-divider{display:none}.immersive-jobs{padding:8px 5px;font-size:11px}.immersive-project-menu>summary{font-size:11px}.native-source-workspace>.toolbar{height:auto;min-height:48px;gap:0;padding:5px 8px}.native-source-workspace>.toolbar .segmented{max-width:calc(100vw - 28px);overflow-x:auto;white-space:nowrap}.native-source-workspace>.toolbar .segmented>button{padding:7px 9px;font-size:11px}.native-source-workspace>.toolbar>.tool-group:last-child{display:none}}
body{font-size:14px}
.app.source-frame{display:flex;flex-direction:column;height:100dvh;overflow:hidden;background:var(--app-bg)}
.source-frame-body{display:flex;flex:1;min-height:0;min-width:0}
.source-frame .main{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;background:var(--app-bg)}
.source-sidebar-slot{flex:none;display:flex;min-height:0;background:var(--app-bg)}
.source-sidebar-slot .app-sidebar{height:100%;background:var(--app-panel)}
.source-sidebar-slot .app-sidebar__item{min-height:32px;font-size:13px}
.source-sidebar-slot .app-sidebar__label{font-size:11px}
.source-sidebar-slot .app-sidebar__item--utility{font-size:12px}
.source-sidebar-slot svg{display:block}
.source-topbar .app-toolbar__row{grid-template-columns:minmax(240px,1fr) auto minmax(270px,1fr)}
.source-topbar .app-toolbar__leading{overflow:hidden}
.source-topbar .app-toolbar__crumbs{font-size:13px}
.source-topbar .app-toolbar__brand{color:var(--app-accent-strong)}
.source-topbar .toolbar-project{max-width:220px}
.source-topbar .toolbar-project__name{font-size:13px}
.source-topbar .toolbar-project__dot{width:5px;height:5px;border-radius:50%;background:var(--app-success)}
.source-topbar .saved{font-size:11px;white-space:nowrap}
.source-redo svg{transform:scaleX(-1)}
.tabs{height:40px;padding:0 20px;gap:24px;background:var(--app-panel);border-color:var(--app-border);font-size:12px}
.tabs button{height:100%;font-size:12px;color:var(--app-muted)}
.tabs button.active{color:var(--app-text);border-color:var(--app-accent)}
.tabs .tab-end{font-size:11px}
.tabs .tab-jobs{color:var(--app-accent-strong);height:28px}
.btn{font-size:12px;min-height:30px;padding:6px 11px;border-radius:6px;border-color:var(--app-border-strong);background:var(--app-panel);color:var(--app-text);box-shadow:none}
.btn:hover:not(:disabled){border-color:var(--app-accent);background:var(--app-card)}
.btn.primary{background:var(--app-accent);border-color:var(--app-accent);color:#fff}
.btn.primary:hover:not(:disabled){background:var(--app-accent-strong)}
.icon-btn{color:var(--app-muted)}
.icon-btn:hover:not(:disabled){color:var(--app-text);background:var(--shell-hover)}
.toolbar{height:40px;min-height:40px;padding:0 16px;background:var(--app-panel);border-color:var(--app-border)}
.segmented{padding:2px;border:1px solid var(--app-border);border-radius:6px;background:var(--app-bg)}
.segmented button{font-size:12px;padding:5px 10px;color:var(--app-muted)}
.segmented button.active{background:var(--shell-selected);color:var(--app-accent-strong);box-shadow:none}
.footer{height:22px;font-size:10px;padding:0 16px;background:var(--app-panel);border-color:var(--app-border);color:var(--app-muted)}
.brief{background:var(--app-panel);border-color:var(--app-border);padding:14px 20px}
.brief-title{font-size:16px;font-weight:600;line-height:1.6}
.brief-number{background:var(--shell-selected);color:var(--app-accent-strong)}
.brief p,.guide{font-size:12px;line-height:1.7}
.guide{background:var(--app-card)}
.text-button{color:var(--app-accent-strong)}
.field{font-size:12px}.field textarea,.field input:not([type=range]),.field select,.story-row input,.story-row textarea{font-size:13px;background:var(--app-bg);color:var(--app-text);border-color:var(--app-border-strong)}
.inspector{background:var(--app-panel)}
.inspector-title{font-size:13px}.inspector-tip{font-size:12px}
.generation-bar{background:var(--app-panel);border-color:var(--app-border)}
.generation-bar strong{font-size:13px}.generation-bar span{font-size:12px}
.paper-zone{background-color:var(--app-bg);background-image:radial-gradient(#2a2a3a .7px,transparent .7px)}
.board-caption{font-size:11px}.scene-fallback{background:var(--app-bg)}
.asset-tray{background:var(--app-panel)}.asset-thumb{background:var(--app-card)}
.character-choices>div label,.check-field{font-size:12px;color:var(--app-muted)}
.section-label{font-size:12px}.swatch{background:var(--app-bg);color:var(--app-text)}
.preview-area,.film-stage,.story-sheet{background:var(--app-bg)}
.take,.takes,.film-audio,.timeline{background:var(--app-panel);border-color:var(--app-border)}
.take span,.clip small{background:var(--app-card);color:var(--app-text)}
.clip{background:var(--app-card)}
.page-title h2,.drawer-head h2,.dialog-head h2,.film-empty h2,.home h1,.home h2,.feature h2{font-family:inherit;letter-spacing:-.02em}
.home h1{font-size:32px}.home h2{font-size:24px}.home-eyebrow{color:var(--app-muted);font-size:11px}
.feature .scene{box-shadow:none;border:1px solid var(--app-border)}
.activity-symbol,.studio-activity:nth-child(3n+2) .activity-symbol,.studio-activity:nth-child(3n) .activity-symbol{width:44px;height:44px;border-radius:8px;background:var(--shell-selected);color:var(--app-accent-strong)}
.activity-copy strong{font-size:14px}.activity-copy>span{font-size:12px}.activity-copy small{font-size:11px}
.library-filters .active{background:var(--shell-selected);color:var(--app-accent-strong);border-color:var(--app-accent)}
.library,.version-page,.jobs-drawer,.dialog{background:var(--app-panel)}
.dialog input,.dialog textarea,.dialog select,.character-editor input,.character-editor textarea{background:var(--app-bg);color:var(--app-text);border-color:var(--app-border-strong)}
.dialog-head,.dialog-foot,.service-state,.cloud-projects,.character-editor{background:var(--app-panel);border-color:var(--app-border)}
.dialog-scrim{background:#0008}.candidate-text,.version-data{background:var(--app-bg);color:var(--app-text)}
.jobs-drawer,.dialog{box-shadow:0 18px 50px #0005}
.audio-art{background:var(--app-card);color:var(--app-accent-strong)}
#message{background:var(--app-card);color:var(--app-text);border:1px solid var(--app-border-strong);font-size:13px;z-index:80}
.native-book-workspace{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;background:var(--app-bg)}
.native-book-workspace #native-book{flex:1;min-height:0;overflow:hidden}
.native-source-workspace{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;overflow:hidden;background:var(--app-bg)}
.native-source-slot{flex:1;min-height:0;min-width:0;overflow:hidden;position:relative}
.source-gallery-workspace{display:flex;flex:1;min-height:0;overflow:hidden}
#native-gallery{flex:1;min-height:0;min-width:0;overflow:hidden}
#native-gallery .source-home-gallery{height:100%;overflow:auto}
#native-gallery .content{max-width:1100px;width:100%;padding:36px 32px}
#native-gallery .content__title{font-size:24px;letter-spacing:-.02em}
#native-gallery .content__subtitle{font-size:13px;line-height:1.8}
#native-audio .native-audio-shell{min-height:0}
/* The old host's generic .inspector mobile rule must not hide the source editor. */
#native-story .inspector{display:block}
@container native-story (max-width:940px){
 #native-story .editor-book-title span{display:none}
 #native-story .editor-video-action,#native-story .editor-audio-action{width:38px;height:38px;overflow:hidden;padding:0}
 #native-story .editor-video-action svg,#native-story .editor-audio-action svg{width:17px;height:17px}
 #native-story .editor-video-action span,#native-story .editor-audio-action span{display:none}
}
.an-workbench,.gm-workbench,.ar-workbench,.lb-workbench{--ex-paper:var(--app-bg);--ex-white:var(--app-panel);--ex-ink:var(--app-text);--ex-muted:var(--app-muted);--ex-line:var(--app-border);--ex-accent:var(--app-accent);--ex-soft:var(--shell-selected)}
:focus-visible{outline:2px solid var(--app-accent-strong);outline-offset:3px}
::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#2a2a3a;border-radius:3px}
@media(max-width:1450px){.source-topbar .saved{display:none}}
@media(max-width:1050px){.source-topbar .app-toolbar__center{display:none}.source-topbar .app-toolbar__row{grid-template-columns:minmax(0,1fr) auto}.source-topbar .snapshot-button{display:none}}
@media(max-width:600px){.source-topbar .app-toolbar__crumb--muted,.source-topbar .app-toolbar__crumb-sep,.source-topbar .toolbar-group{display:none}.source-topbar .app-toolbar__row{gap:4px;padding:0 8px}.source-topbar .app-toolbar__trailing{gap:4px}.source-topbar .save-cloud{font-size:11px;padding:4px}.tabs{gap:18px;padding:0 14px}.footer span:last-child{display:none}}
/* Shared film-stage navigation around the original LTX, Coji and AIMovie pages. */
.source-frame .film-workflow-nav{height:52px;min-height:52px;background:var(--app-bg);padding:0 24px;flex-wrap:nowrap}
.film-workflow-nav .segmented{display:flex;gap:2px;padding:3px;background:var(--app-panel);border-radius:8px}
.film-workflow-nav .segmented>button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:7px 13px;white-space:nowrap;font-size:12px;border-radius:5px;transition:background 160ms ease-out,color 160ms ease-out}
.film-workflow-nav .segmented>button.active{color:#e0e7ff;background:#25243b}
.film-workflow-nav .segmented>button:focus-visible{outline:2px solid #a5b4fc;outline-offset:1px}
.film-workflow-nav .btn{min-height:36px}
@media(max-width:760px){.source-frame .film-workflow-nav{padding:0 10px;height:52px;min-height:52px}.film-workflow-nav>.tool-group:first-child{width:100%;min-width:0}.film-workflow-nav .segmented{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:none!important;overflow:visible!important}.film-workflow-nav .segmented>button{min-height:40px;padding:6px 3px!important;font-size:12px!important;gap:0}.film-workflow-nav .segmented>button svg{display:none}.film-workflow-nav>.tool-group:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.film-workflow-nav .segmented>button{transition:none}}
@media(max-width:760px){.source-frame .film-workflow-nav{height:56px;min-height:56px}.film-workflow-nav .segmented>button{min-height:44px}}
/* Original applications retain their own canvas, panels, menus and timeline. */
.original-workspace{display:flex;flex-direction:column;min-height:calc(100dvh - 64px);background:var(--studio-bg,#0f1117);color:var(--studio-text,#eef0f5)}
.original-toolbar{flex-wrap:wrap;padding:8px 16px;gap:8px;background:#151820;border-color:#2b303c}
.original-toolbar>div:first-child{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.original-save-status{font-size:12px;color:#aeb4c2;max-width:42ch}
.original-toolbar button{min-height:40px}.original-toolbar .btn{color:#e8ecf5;background:#222734;border-color:#373f50}
.original-frame-region{position:relative;flex:1;min-height:600px;display:flex;background:#111318}
.original-frame-region iframe{width:100%;min-height:calc(100dvh - 184px);flex:1;border:0;background:#111318}
.original-frame-state{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:24px;background:#111318;color:#c8cede;pointer-events:none}
.original-frame-state[hidden],.original-activity[hidden]{display:none}
.original-activity{padding:12px 20px;background:#1a2333;border-bottom:1px solid #344259;color:#edf3fc;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.original-activity strong{font-size:14px}.original-activity p{font-size:13px;line-height:1.7;flex:1;min-width:240px;margin:0;color:#c6d1e4}
.original-activity .text-button{color:#cedaf0;min-height:40px;padding:0 8px;text-decoration:underline}
.original-boundary{margin:0;padding:8px 20px;font-size:12px;line-height:1.7;color:#aeb4c2;background:#151820}
.original-workspace:fullscreen{height:100dvh;overflow:auto}.original-workspace:fullscreen iframe{min-height:calc(100dvh - 116px)}
@media(max-width:700px){.original-frame-region{min-height:560px}.original-toolbar{padding:8px}.original-save-status{font-size:11px}.original-activity{padding:12px;gap:8px}}
