:root{
  --bg:#050505;
  --line:rgba(255,245,232,.08);
  --line2:rgba(255,245,232,.14);
  --text:#f5f0e8;
  --muted:#9a9187;
  --faint:#625a52;
  --accent:#ffb35c;
  --accent2:#e99a43;
  --accent-soft:rgba(255,179,92,.10);
  --good:#d7c59e;
  --bad:#ef887e;
  --shadow:0 28px 86px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.03);
  --media-preview-radius:21px;
  --media-preview-border:rgba(255,255,255,.055);
  --media-preview-bg:#050505;
  --media-preview-padding:0px;
  --image-preview-radius:var(--media-preview-radius);
  --image-preview-border:var(--media-preview-border);
  --image-preview-bg:var(--media-preview-bg);
  --image-preview-padding:var(--media-preview-padding)
}
*{box-sizing:border-box}
html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{overflow:hidden;background:radial-gradient(900px 620px at 84% -8%,rgba(255,179,92,.065),transparent 58%),radial-gradient(720px 540px at 16% 108%,rgba(135,108,78,.05),transparent 62%),var(--bg)}
button,input,select,textarea{font:inherit}
button{color:inherit}
.hidden{display:none!important}
.noise{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.06;background-image:radial-gradient(rgba(255,255,255,.24) .45px,transparent .55px);background-size:4px 4px;mix-blend-mode:soft-light}
.ambient{position:fixed;z-index:0;border-radius:999px;filter:blur(110px);pointer-events:none}
.ambient-a{width:360px;height:360px;right:8%;top:2%;background:rgba(255,176,92,.05)}
.ambient-b{width:300px;height:300px;left:16%;bottom:0;background:rgba(141,118,92,.04)}
.glass{background:linear-gradient(145deg,rgba(28,26,23,.75),rgba(9,8,7,.57));border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(30px) saturate(118%);-webkit-backdrop-filter:blur(30px) saturate(118%)}

.shell{position:relative;z-index:1;height:100vh;display:grid;grid-template-columns:272px minmax(0,1fr);gap:16px;padding:16px;overflow:hidden}
.sidebar{height:calc(100vh - 32px);border-radius:30px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.brand{display:flex;align-items:center;gap:12px;padding:4px 4px 28px}
.mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#ffd7a3,#e99a43);color:#28180a;font-weight:900;font-size:13px;box-shadow:0 0 38px rgba(255,179,92,.14)}
.brand-copy strong{display:block;font-size:14px}
.brand-copy small{display:block;margin-top:4px;color:#665e56;font:700 8px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1.45px}
.section-label{padding:0 7px 10px;color:#70685f;font:800 8px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1.4px}
.sidebar>div:first-child{min-height:0;flex:1 1 auto;display:flex;flex-direction:column}
.app-filter{
  flex:0 0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:4px;
  margin:0 0 10px;
  padding:3px;
  border:1px solid rgba(255,255,255,.045);
  border-radius:13px;
  background:rgba(0,0,0,.18);
}
.app-filter-btn{
  min-width:0;
  height:30px;
  border:1px solid transparent;
  border-radius:9px;
  background:transparent;
  color:#6f675f;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:0 5px;
  cursor:pointer;
  transition:.15s ease;
  font-size:7.5px;
  white-space:nowrap;
}
.app-filter-btn b{
  min-width:13px;
  height:13px;
  padding:0 3px;
  border-radius:5px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.035);
  color:#5f5750;
  font:800 6px ui-monospace,SFMono-Regular,Menlo,monospace;
}
.app-filter-btn:hover{
  color:#aaa096;
  background:rgba(255,255,255,.025);
}
.app-filter-btn.active{
  border-color:rgba(255,179,92,.16);
  background:rgba(255,179,92,.075);
  color:#d2b18d;
}
.app-filter-btn.active b{
  background:rgba(255,179,92,.10);
  color:var(--accent);
}
.app-list{display:grid;gap:8px;min-height:0;flex:1 1 auto;overflow:auto;padding-right:2px;align-content:start;scrollbar-width:thin;scrollbar-color:rgba(255,179,92,.16) transparent}
.app-item.filter-hidden{display:none}
.app-filter-empty{
  min-height:110px;
  border:1px dashed rgba(255,255,255,.055);
  border-radius:17px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#5d554e;
  padding:16px;
}
.app-filter-empty strong{
  font-size:9px;
  color:#81776d;
}
.app-filter-empty span{
  margin-top:6px;
  font-size:7px;
  color:#554e47;
}
.app-item{width:100%;min-height:78px;border:1px solid transparent;border-radius:19px;background:transparent;padding:12px;text-align:left;display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;cursor:pointer}
.app-item.active{border-color:rgba(255,179,92,.19);background:linear-gradient(145deg,rgba(255,179,92,.09),rgba(255,255,255,.025))}
.app-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;border:1px solid rgba(255,179,92,.22);background:rgba(255,179,92,.08);color:var(--accent);font-size:11px;font-weight:850}
.app-copy{min-width:0}
.app-copy strong{display:block;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.app-copy span{display:block;margin-top:5px;color:#7f776e;font-size:9px}
.active-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px rgba(255,179,92,.62)}
.sidebar-foot{padding:12px 5px 4px}
.api-state{display:flex;align-items:center;gap:10px}
.dot{width:7px;height:7px;border-radius:50%;background:#6b635b;box-shadow:0 0 0 4px rgba(255,255,255,.025);flex:0 0 auto}
.dot.ok{background:var(--good);box-shadow:0 0 0 4px rgba(215,197,158,.075),0 0 16px rgba(215,197,158,.32)}
.api-state strong{display:block;font-size:9px;color:#a69e94}
.api-state span{display:block;margin-top:4px;color:#544d46;font:700 7px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1px}

.main{min-width:0;min-height:0;height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden}
.topbar{height:68px;flex:0 0 68px;border-radius:23px;display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 22px}
.page-title span{display:block;color:#6e665e;font:800 7px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1.35px}
.page-title strong{display:block;margin-top:5px;font-size:12px;font-weight:680}
.top-actions{display:flex;align-items:center;gap:9px}
.live-pill{height:36px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.022);display:flex;align-items:center;gap:8px;padding:0 11px;color:#837b72;font:800 7px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1.05px}
.live-pill i{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px rgba(255,179,92,.54)}
.settings-btn,.history-btn{height:38px;border:1px solid var(--line2);border-radius:13px;background:rgba(255,255,255,.035);padding:0 12px;display:flex;align-items:center;gap:9px;cursor:pointer;color:#d8d0c6;font-size:9px;transition:.16s}
.settings-btn:hover,.history-btn:hover{border-color:rgba(255,179,92,.20);background:rgba(255,179,92,.045)}
.settings-btn b,.history-btn b{width:18px;height:18px;border-radius:6px;display:grid;place-items:center;background:rgba(255,255,255,.04);color:var(--accent);font-size:10px}

.workspace{width:100%;max-width:1600px;flex:1 1 auto;min-height:0;margin:0 auto;padding-top:14px;display:grid;grid-template-rows:minmax(0,1fr) 236px;gap:14px;overflow:hidden}
.workspace-top{min-height:0;display:grid;grid-template-columns:390px minmax(0,1fr);gap:14px}
.workspace-bottom{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px}

.asset-panel,.output-panel,.prompt-panel,.operation-panel{min-width:0;min-height:0;border-radius:27px;overflow:hidden}
.asset-panel{padding:12px;display:grid;grid-template-rows:48px minmax(0,1fr) 106px 54px;gap:9px}
.output-panel{padding:12px;display:flex;flex-direction:column}
.prompt-panel{padding:12px;display:flex;flex-direction:column}
.operation-panel{padding:12px;display:flex;flex-direction:column}

.panel-head{min-height:48px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:2px 5px 8px}
.panel-head span{display:block;color:#6a625a;font:800 7px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1.25px}
.panel-head h2{margin:5px 0 0;font-size:16px;letter-spacing:-.45px}
.panel-head>b{align-self:center;color:#645c54;font:800 7px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.8px}
.compact-head{min-height:48px;flex:0 0 48px}
.compact-head>b{font-size:8px;color:#82786e}

.image-grid{min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:7px}
.upload-slot{position:relative;border:1px solid var(--line);background:rgba(0,0,0,.19);cursor:pointer;transition:.16s;text-align:left;overflow:hidden}
.upload-slot:hover{border-color:rgba(255,179,92,.23);background:rgba(255,179,92,.022)}
.upload-slot.has-file{border-color:rgba(255,179,92,.26);background:linear-gradient(145deg,rgba(255,179,92,.055),rgba(255,255,255,.01))}
.image-slot{border-radius:14px;padding:6px;display:flex;flex-direction:column}
.media-preview{position:relative;flex:1 1 auto;min-height:0;border-radius:9px;background:rgba(255,255,255,.018);display:grid;place-items:center;overflow:hidden}
.media-preview span{position:absolute;top:6px;left:6px;color:#5d554d;font:800 6px ui-monospace,SFMono-Regular,Menlo,monospace;z-index:1}
.media-preview i{font-style:normal;color:#806b55;font-size:14px}
.media-preview img{width:100%;height:100%;object-fit:cover}
.media-caption{padding:5px 2px 0;min-width:0}
.media-caption strong{display:block;font-size:7.5px;color:#b1a79d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.media-caption small{display:block;margin-top:2px;color:#564e46;font:800 5.5px ui-monospace,SFMono-Regular,Menlo,monospace}
.slot-clear{position:absolute;top:6px;right:6px;width:19px;height:19px;border-radius:7px;display:grid;place-items:center;background:rgba(5,5,5,.82);border:1px solid rgba(255,255,255,.08);color:#aaa096;font-style:normal;font-size:9px;z-index:3}

.video-reference{border-radius:15px;padding:8px;display:grid;grid-template-columns:120px 1fr;gap:10px;align-items:center}
.video-reference-preview{height:88px;border-radius:11px;background:rgba(255,255,255,.018);display:grid;place-items:center;position:relative;overflow:hidden}
.video-reference-preview>span{position:absolute;left:8px;top:8px;color:#5d554d;font:800 6px ui-monospace,SFMono-Regular,Menlo,monospace;z-index:1}
.video-reference-preview>i{font-style:normal;color:#806b55;font-size:15px}
.video-reference-preview video{width:100%;height:100%;object-fit:cover}
.video-reference-copy{min-width:0}
.video-reference-copy strong{display:block;font-size:9px;color:#b7aea4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.video-reference-copy small{display:block;margin-top:6px;color:#625a52;font-size:7px;line-height:1.45}

.audio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.audio-slot{border-radius:12px;padding:7px;display:grid;grid-template-columns:30px 1fr;gap:7px;align-items:center}
.audio-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:rgba(255,179,92,.055);border:1px solid rgba(255,179,92,.12);color:#aa8158;font-size:7px;font-weight:800}
.audio-slot strong{display:block;font-size:7.5px;color:#aaa096;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.audio-slot small{display:block;margin-top:2px;color:#564e46;font:800 5.5px ui-monospace,SFMono-Regular,Menlo,monospace}

.output-head{height:58px;flex:0 0 58px;padding-bottom:9px;align-items:flex-end}
.output-head-actions{display:flex;align-items:center;gap:8px}
.status-pill,.ratio-pill{height:38px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.02);display:flex;align-items:center}
.status-pill{gap:9px;padding:0 11px}
.status-dot{width:7px;height:7px;border-radius:50%;background:#675f58;box-shadow:0 0 0 4px rgba(255,255,255,.025)}
.status-dot.running{background:var(--accent);box-shadow:0 0 0 4px rgba(255,179,92,.07),0 0 18px rgba(255,179,92,.45)}
.status-dot.success{background:var(--good);box-shadow:0 0 16px rgba(215,197,158,.3)}
.status-dot.failed{background:var(--bad);box-shadow:0 0 16px rgba(239,136,126,.28)}
.status-pill strong{display:block;font-size:8px;color:#b2a99f}
.status-pill span{display:block;margin-top:3px;color:#5c544c;font:700 6px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.6px}
.ratio-pill{padding:0 10px;gap:7px}
.ratio-pill span{color:#766e65;font-size:7px}
.ratio-pill b{color:#d0c6bb;font-size:8px}

.empty-state,.loading-state,.error-state,.file-state{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:#655d55}
.empty-mark,.loading-mark{width:64px;height:64px;border-radius:21px;display:grid;place-items:center;border:1px solid rgba(255,179,92,.15);background:rgba(255,179,92,.04);color:#a7835d;font-size:18px;margin-bottom:15px}
.empty-state strong,.loading-state strong,.error-state strong{font-size:11px;color:#948a80}
.empty-state span,.loading-state span,.error-state span{font-size:8px;margin-top:7px;color:#5f5750}
.loading-mark:after{content:"";width:21px;height:21px;border:2px solid rgba(255,179,92,.18);border-top-color:var(--accent);border-radius:50%;animation:spin .9s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.error-state .empty-mark{color:var(--bad);border-color:rgba(239,136,126,.18);background:rgba(239,136,126,.05)}
.download-btn{height:38px;min-width:76px;border:1px solid rgba(255,179,92,.20);border-radius:13px;background:rgba(255,255,255,.025);color:#d6b083;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 11px;cursor:pointer;font-size:8px;transition:.16s}
.download-btn b{color:var(--accent);font-size:13px}
.download-btn:hover:not(:disabled){background:rgba(255,179,92,.08);border-color:rgba(255,179,92,.32);transform:translateY(-1px)}
.download-btn:disabled{opacity:.28;cursor:not-allowed}

.prompt-panel textarea{flex:1 1 auto;min-height:0;width:100%;resize:none;border:1px solid var(--line);outline:none;border-radius:15px;background:rgba(0,0,0,.23);color:#eee8df;padding:13px 14px;font-size:10px;line-height:1.65}
.prompt-panel textarea::placeholder{color:#514a43}
.prompt-panel textarea:focus,select:focus,.input:focus{border-color:rgba(255,179,92,.30);box-shadow:0 0 0 4px rgba(255,179,92,.03)}

.operation-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.operation-field{display:block}
.operation-field>span{display:block;margin:0 0 5px 2px;color:#746c63;font-size:7px}
select,.input{width:100%;height:38px;border:1px solid var(--line);border-radius:12px;background:rgba(0,0,0,.24);color:#ded7ce;padding:0 10px;outline:none}
.advanced-btn{align-self:end;height:38px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);padding:0 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;color:#aaa197;font-size:8px}
.advanced-btn b{color:var(--accent);letter-spacing:1px}
.operation-foot{margin-top:auto}
.workflow-state{display:flex;align-items:center;gap:7px;color:#6e665e;font-size:7px;margin:0 2px 8px}
.workflow-state i{width:6px;height:6px;border-radius:50%;background:var(--good);box-shadow:0 0 12px rgba(215,197,158,.28)}
.generate-btn{width:100%;height:46px;border-radius:14px;border:1px solid rgba(255,179,92,.42);background:linear-gradient(180deg,#ffc984,#e99a43);color:#2a1909;font-weight:850;font-size:10px;padding:0 14px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;box-shadow:0 11px 30px rgba(255,179,92,.09);transition:.18s}
.generate-btn:hover{transform:translateY(-1px);box-shadow:0 15px 34px rgba(255,179,92,.13)}
.generate-btn:disabled{opacity:.46;cursor:not-allowed;transform:none}
.generate-btn b{font-size:14px}

.drawer-overlay{position:fixed;inset:0;z-index:80}
.drawer-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.56);backdrop-filter:blur(8px)}
.drawer{position:absolute;right:16px;top:16px;bottom:16px;width:min(540px,calc(100vw - 32px));border-radius:28px;overflow:auto;padding:18px}
.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;padding:5px 4px 17px;border-bottom:1px solid var(--line)}
.drawer-head span{color:#6e665e;font:800 7px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1.4px}
.drawer-head h2{margin:5px 0 0;font-size:22px;letter-spacing:-.7px}
.drawer-close{width:36px;height:36px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.03);cursor:pointer;color:#aaa197;font-size:18px}
.drawer-intro{margin:16px 3px 4px;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.018);color:#756d64;font-size:8px;line-height:1.6}
.drawer-section{padding:18px 3px;border-bottom:1px solid var(--line)}
.drawer-section.compact{border-bottom:0}
.drawer-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}
.drawer-title strong{display:block;font-size:10px}
.drawer-title span{display:block;margin-top:5px;color:#6c645c;font-size:8px}
.drawer-title b{border:1px solid var(--line);border-radius:999px;padding:6px 8px;color:#7f766c;background:rgba(255,255,255,.02);font:800 7px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.8px}
.key-status{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:#827970;font-size:8px}
.key-status code{margin-left:auto;color:#a2988e;font-size:8px}
.key-row{display:grid;grid-template-columns:1fr auto auto;gap:8px}
.btn{height:38px;border-radius:12px;border:1px solid var(--line2);background:rgba(255,255,255,.03);padding:0 11px;cursor:pointer;font-size:8px}
.btn.soft{color:#b5aca2}
.btn.primary{border-color:rgba(255,179,92,.34);background:var(--accent-soft);color:#efc18c}
.btn.full{width:100%}
.text-danger{margin-top:10px;padding:0;border:0;background:transparent;color:#a96f68;font-size:8px;cursor:pointer}
.setting-field{display:block;margin-top:10px}
.setting-field>span{display:block;margin:0 0 6px 2px;color:#776f66;font-size:7px}
.settings-grid{display:grid;gap:8px}
.settings-grid.two{grid-template-columns:1fr 1fr}
.settings-grid.three{grid-template-columns:repeat(3,1fr)}
.toggle-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.toggle-grid label{height:42px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.018);padding:0 10px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}
.toggle-grid label span{font-size:8px;color:#9e958b}
.toggle-grid input{display:none}
.toggle-grid i{position:relative;width:30px;height:17px;border-radius:999px;background:#3f3a35;transition:.18s}
.toggle-grid i:after{content:"";position:absolute;width:11px;height:11px;left:3px;top:3px;border-radius:50%;background:#8b8379;transition:.18s}
.toggle-grid input:checked+i{background:rgba(255,179,92,.26)}
.toggle-grid input:checked+i:after{left:16px;background:var(--accent)}

.toast{position:fixed;right:24px;bottom:24px;z-index:120;min-width:250px;max-width:420px;padding:12px 14px;border-radius:14px;background:rgba(28,25,22,.94);border:1px solid var(--line2);box-shadow:var(--shadow);backdrop-filter:blur(20px);font-size:9px;color:#e4ddd4;transform:translateY(18px);opacity:0;pointer-events:none;transition:.18s}
.toast.show{transform:none;opacity:1}
.toast.bad{border-color:rgba(239,136,126,.28);color:#f0aaa2}
.toast.good{border-color:rgba(215,197,158,.24);color:#e7d8b7}

@media(max-width:1280px){
  .shell{grid-template-columns:224px minmax(0,1fr)}
  .workspace-top{grid-template-columns:350px minmax(0,1fr)}
  .workspace-bottom{grid-template-columns:minmax(0,1fr) 330px}
  .video-reference{grid-template-columns:105px 1fr}
}
@media(max-width:980px){
  html,body{height:auto;min-height:100%;overflow:auto}
  body{overflow-x:hidden}
  .shell{display:block;height:auto;padding:10px;overflow:visible}
  .sidebar{height:auto;border-radius:22px;margin-bottom:10px;padding:10px;display:block}
  .brand{padding:0 2px 10px}
  .section-label{display:none}
  .app-item{min-height:58px}
  .sidebar-foot{display:none}
  .main{height:auto;overflow:visible}
  .topbar{height:62px;border-radius:20px}
  .live-pill{display:none}
  .workspace{display:block;height:auto;overflow:visible;padding-top:10px}
  .workspace-top,.workspace-bottom{display:block}
  .asset-panel,.output-panel,.prompt-panel,.operation-panel{margin-bottom:10px;border-radius:22px}
  .asset-panel{min-height:680px}
  .output-panel{height:60vh;min-height:420px}
  .prompt-panel{height:260px}
  .operation-panel{min-height:250px}
}
@media(max-width:620px){
  .page-title strong{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .settings-btn span{display:none}
  .image-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,140px)}
  .asset-panel{display:block;min-height:0}
  .image-grid,.video-reference,.audio-grid{margin-top:8px}
  .video-reference{grid-template-columns:90px 1fr}
  .audio-grid{grid-template-columns:1fr}
  .output-head-actions .ratio-pill{display:none}
  .output-panel{height:55vh;min-height:360px}
  .settings-grid.two,.settings-grid.three,.toggle-grid{grid-template-columns:1fr}
  .key-row{grid-template-columns:1fr 1fr}
  .key-row .input{grid-column:1/-1}
  .drawer{right:8px;top:8px;bottom:8px;width:calc(100vw - 16px)}
}
.duration-control{margin-top:10px;padding:10px 11px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.018)}
.duration-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.duration-head span{color:#746c63;font-size:7px}
.duration-head b{color:#d9b27f;font-size:9px}
.duration-control input[type="range"]{width:100%;appearance:none;-webkit-appearance:none;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--accent) 50%,rgba(255,255,255,.08) 50%);outline:none;cursor:pointer}
.duration-control input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#ffd19b;border:2px solid #2c1b0d;box-shadow:0 0 0 3px rgba(255,179,92,.12)}
.duration-control input[type="range"]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#ffd19b;border:2px solid #2c1b0d;box-shadow:0 0 0 3px rgba(255,179,92,.12)}
.duration-scale{display:flex;align-items:center;justify-content:space-between;margin-top:6px;color:#5f5750;font-size:6px}


/* Compact operation panel: keep all controls inside the fixed bottom row */
.operation-panel{padding:10px 12px 11px}
.operation-panel .compact-head{min-height:36px;flex:0 0 36px;padding:0 2px 6px;align-items:center}
.operation-panel .compact-head h2{margin-top:3px;font-size:14px}
.operation-head .workflow-state{margin:0;white-space:nowrap}
.compact-state{font-size:6.5px;color:#776f66}
.compact-state i{width:5px;height:5px}
.operation-grid{gap:7px}
.operation-field>span{margin-bottom:4px}
.operation-panel select{height:34px;border-radius:11px;font-size:9px}
.operation-panel .duration-control{margin-top:7px;padding:7px 9px 6px;border-radius:11px}
.operation-panel .duration-head{margin-bottom:5px}
.operation-panel .duration-head span{font-size:6.5px}
.operation-panel .duration-head b{font-size:8.5px}
.operation-panel .duration-control input[type="range"]{height:3px}
.operation-panel .duration-scale{margin-top:4px;font-size:5.5px}
.operation-foot{margin-top:auto}
.operation-panel .generate-btn{height:41px;border-radius:12px}

/* Duration range: 1–15 seconds */


/* RunningHub failure diagnostics */
.diagnostic-error{width:min(760px,88%);max-height:88%;padding:20px 24px;overflow:auto}
.diagnostic-error .empty-mark{width:48px;height:48px;border-radius:16px;margin-bottom:10px}
.failure-message{max-width:680px;line-height:1.55;color:#8f8379!important}
.failure-diagnostics{width:100%;margin-top:13px;display:grid;gap:7px;text-align:left}
.failure-row{min-height:30px;padding:7px 10px;border:1px solid rgba(239,136,126,.12);border-radius:10px;background:rgba(239,136,126,.025);display:flex;align-items:center;justify-content:space-between;gap:16px}
.failure-row span{margin:0!important;color:#665d55!important;font:800 6px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.8px}
.failure-row b{color:#c9bdb2;font-size:8px;font-weight:650;word-break:break-all}
.failure-detail{border:1px solid var(--line);border-radius:10px;background:rgba(0,0,0,.18);overflow:hidden}
.failure-detail summary{padding:8px 10px;cursor:pointer;color:#857a70;font-size:7px;user-select:none}
.failure-detail pre{margin:0;padding:9px 10px 11px;border-top:1px solid var(--line);max-height:150px;overflow:auto;white-space:pre-wrap;word-break:break-word;color:#a99e93;font:6.5px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}


/* Generation history */
.history-drawer{display:flex;flex-direction:column;overflow:hidden}
.history-toolbar{height:46px;flex:0 0 46px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 4px;border-bottom:1px solid var(--line)}
.history-toolbar>span{color:#625a52;font-size:7px}
.history-clear{border:0;background:transparent;color:#8b7665;font-size:7px;cursor:pointer;padding:6px 4px}
.history-clear:hover{color:#d9b27f}
.history-list{flex:1 1 auto;min-height:0;overflow:auto;padding:12px 2px 4px;display:grid;align-content:start;gap:9px}
.history-empty{min-height:180px;border:1px dashed var(--line2);border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#5d554d}
.history-empty strong{font-size:10px;color:#8e847a}
.history-empty span{margin-top:7px;font-size:7px}
.history-item{position:relative;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.018);padding:12px;transition:.16s}
.history-item:hover{border-color:rgba(255,179,92,.15);background:rgba(255,179,92,.02)}
.history-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.history-item-head>div{min-width:0}
.history-item-head span{display:block;color:#5f574f;font:700 6px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.5px}
.history-item-head strong{display:block;margin-top:6px;max-width:330px;color:#cfc5bb;font-size:8.5px;font-weight:650;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.history-status{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;padding:5px 8px;background:rgba(255,255,255,.018);color:#827970;font-style:normal;font-size:6px}
.history-status.success{color:#d8c69e;border-color:rgba(215,197,158,.17);background:rgba(215,197,158,.04)}
.history-status.failed{color:#d9938b;border-color:rgba(239,136,126,.17);background:rgba(239,136,126,.04)}
.history-status.running,.history-status.queued{color:#d7a86d;border-color:rgba(255,179,92,.18);background:rgba(255,179,92,.045)}
.history-meta{display:flex;align-items:center;gap:6px;margin-top:10px}
.history-meta span{border:1px solid var(--line);border-radius:8px;background:rgba(0,0,0,.16);padding:4px 7px;color:#766d64;font-size:6px}
.history-task{margin-top:9px;color:#514a43;font:700 6px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.35px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.history-load{width:100%;height:32px;margin-top:10px;border:1px solid rgba(255,179,92,.16);border-radius:10px;background:rgba(255,179,92,.035);color:#bc966d;display:flex;align-items:center;justify-content:space-between;padding:0 10px;cursor:pointer;font-size:7px}
.history-load:hover{background:rgba(255,179,92,.075);border-color:rgba(255,179,92,.28)}
.history-load b{color:var(--accent);font-size:10px}


.history-import{margin:12px 2px 2px;padding:12px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.018)}
.history-import>div:first-child strong{display:block;font-size:9px;color:#bdb3a9}
.history-import>div:first-child span{display:block;margin-top:4px;color:#665e56;font-size:7px;line-height:1.5}
.history-import-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}
.history-import-row .input{height:36px}
.history-import-row .btn{height:36px;min-width:68px}


/* Multi-app workspace */
.app-item .active-dot{opacity:0;transform:scale(.7);transition:.16s}
.app-item.active .active-dot{opacity:1;transform:scale(1)}
.app-workspace.hidden{display:none!important}

/* 2MP text-to-image app */
.image-workspace{
  grid-template-rows:minmax(0,1fr) 124px;
}
.image-workspace-main{
  min-height:0;
  display:grid;
  grid-template-columns:390px minmax(0,1fr);
  gap:14px;
}
.image-prompt-panel{
  min-width:0;
  min-height:0;
  border-radius:27px;
  padding:12px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.image-prompt-panel .panel-head{
  flex:0 0 54px;
}
.image-prompt-panel .panel-head>b{
  color:#7c7268;
  font-size:8px;
}
.image-prompt-panel textarea{
  flex:1 1 auto;
  min-height:0;
  width:100%;
  resize:none;
  border:1px solid var(--line);
  outline:none;
  border-radius:16px;
  background:rgba(0,0,0,.23);
  color:#eee8df;
  padding:14px;
  font-size:10px;
  line-height:1.7;
}
.image-prompt-panel textarea::placeholder{color:#514a43}
.image-prompt-panel textarea:focus{
  border-color:rgba(255,179,92,.30);
  box-shadow:0 0 0 4px rgba(255,179,92,.03);
}
.image-app-note{
  flex:0 0 auto;
  min-height:58px;
  margin-top:9px;
  padding:10px 11px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.018);
  display:flex;
  align-items:center;
  gap:10px;
}
.image-app-note>i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 15px rgba(255,179,92,.38);
  flex:0 0 auto;
}
.image-app-note strong{
  display:block;
  color:#a99f95;
  font-size:8px;
}
.image-app-note span{
  display:block;
  margin-top:4px;
  color:#625a52;
  font-size:6.5px;
  line-height:1.5;
}

.image-preview-shell{
  flex:1 1 auto;
  min-width:0;
  min-height:0;
  width:100%;
  overflow:hidden;
  border-radius:var(--media-preview-radius);
  border:1px solid var(--media-preview-border);
  background:var(--media-preview-bg);
}
.image-preview-stage{
  position:relative;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:var(--media-preview-padding);
  background:
    radial-gradient(circle at 50% 42%,rgba(255,179,92,.025),transparent 36%),
    var(--media-preview-bg);
}
.image-preview-stage:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.012),transparent 18%,transparent 82%,rgba(0,0,0,.18));
}
.image-preview-stage>img.generated-image{
  position:relative;
  z-index:1;
  display:block;
  flex:0 0 auto;
  margin:0;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  background:var(--media-preview-bg);
}
.image-preview-stage>video.generated-video{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  background:var(--media-preview-bg);
}

.image-result-grid{
  width:100%;
  height:100%;
  overflow:auto;
  padding:10px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  align-content:start;
}
.image-result-grid img{
  width:100%;
  height:auto;
  border-radius:12px;
  border:1px solid var(--line);
  background:#070707;
}

.image-control-panel{
  min-width:0;
  min-height:0;
  border-radius:25px;
  padding:12px 14px;
  display:grid;
  grid-template-columns:minmax(200px,1fr) 190px 140px 150px 220px;
  gap:10px;
  align-items:center;
}
.image-control-copy>span{
  display:block;
  color:#686058;
  font:800 6px ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:1.15px;
}
.image-control-copy h2{
  margin:4px 0 0;
  font-size:15px;
}
.image-control-copy small{
  display:block;
  margin-top:5px;
  color:#5f5750;
  font-size:6.5px;
}
.image-control-field>span,
.image-fixed-field>span{
  display:block;
  margin:0 0 5px 2px;
  color:#746c63;
  font-size:7px;
}
.image-control-field select{
  width:100%;
  height:38px;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(0,0,0,.24);
  color:#ded7ce;
  padding:0 10px;
  outline:none;
}
.image-fixed-field{
  min-width:0;
}
.image-fixed-field strong{
  height:38px;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(255,255,255,.022);
  display:flex;
  align-items:center;
  padding:0 11px;
  color:#cdb28f;
  font-size:10px;
}
.image-workflow-state{
  height:38px;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(255,255,255,.018);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:#746c63;
  font-size:7px;
}
.image-workflow-state i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--good);
  box-shadow:0 0 12px rgba(215,197,158,.28);
}
.image-generate-btn{
  height:44px;
  margin:0;
}

@media(max-width:1280px){
  .image-workspace-main{grid-template-columns:350px minmax(0,1fr)}
  .image-control-panel{grid-template-columns:minmax(170px,1fr) 170px 120px 130px 190px}
}
@media(max-width:980px){
  .image-workspace{display:block!important}
  .image-workspace.hidden{display:none!important}
  .image-workspace-main{display:block}
  .image-prompt-panel{height:360px;margin-bottom:10px}
  .image-workspace .output-panel{height:60vh;min-height:420px;margin-bottom:10px}
  .image-control-panel{
    min-height:250px;
    grid-template-columns:1fr 1fr;
    align-items:end;
    margin-bottom:10px;
  }
  .image-control-copy{grid-column:1/-1}
  .image-workflow-state{grid-column:1/2}
  .image-generate-btn{grid-column:2/3;width:100%}
}
@media(max-width:620px){
  .image-control-panel{grid-template-columns:1fr}
  .image-control-copy,
  .image-workflow-state,
  .image-generate-btn{grid-column:1}
  .image-result-grid{grid-template-columns:1fr}
}


/* White Marble Portrait Master */
.white-marble-control-panel{
  grid-template-columns:minmax(220px,1fr) 118px 118px 190px 135px 220px;
}
.image-control-field .control-input{
  width:100%;
  height:38px;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(0,0,0,.24);
  color:#ded7ce;
  padding:0 10px;
  outline:none;
  font-size:8px;
}
.image-control-field .control-input:focus{
  border-color:rgba(255,179,92,.28);
  box-shadow:0 0 0 3px rgba(255,179,92,.03);
}
.white-marble-seed-field{min-width:0}
@media(max-width:1280px){
  .white-marble-control-panel{
    grid-template-columns:minmax(180px,1fr) 100px 100px 160px 120px 185px;
  }
}
@media(max-width:980px){
  .white-marble-control-panel{
    grid-template-columns:1fr 1fr;
  }
  .white-marble-control-panel .image-control-copy{grid-column:1/-1}
  .white-marble-control-panel .white-marble-seed-field{grid-column:1/-1}
  .white-marble-control-panel .image-workflow-state{grid-column:1/2}
  .white-marble-control-panel .image-generate-btn{grid-column:2/3}
}
@media(max-width:620px){
  .white-marble-control-panel{grid-template-columns:1fr}
  .white-marble-control-panel .image-control-copy,
  .white-marble-control-panel .white-marble-seed-field,
  .white-marble-control-panel .image-workflow-state,
  .white-marble-control-panel .image-generate-btn{grid-column:1}
}


/* KQ12 portrait */
.kq12-control-panel{
  grid-template-columns:minmax(240px,1fr) 180px 180px 220px;
}
@media(max-width:1280px){
  .kq12-control-panel{
    grid-template-columns:minmax(190px,1fr) 155px 155px 190px;
  }
}
@media(max-width:980px){
  .kq12-control-panel{
    grid-template-columns:1fr 1fr;
  }
  .kq12-control-panel .image-control-copy{grid-column:1/-1}
  .kq12-control-panel .image-workflow-state{grid-column:1/2}
  .kq12-control-panel .image-generate-btn{grid-column:2/3}
}
@media(max-width:620px){
  .kq12-control-panel{grid-template-columns:1fr}
  .kq12-control-panel .image-control-copy,
  .kq12-control-panel .image-workflow-state,
  .kq12-control-panel .image-generate-btn{grid-column:1}
}


/* Realistic skin upscale */
.skin-input-panel{
  min-width:0;
  min-height:0;
  border-radius:27px;
  padding:12px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.skin-upload-slot{
  position:relative;
  flex:1 1 auto;
  min-height:0;
  width:100%;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(0,0,0,.20);
  padding:12px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  gap:12px;
  cursor:pointer;
  overflow:hidden;
  transition:.16s;
}
.skin-upload-slot:hover{
  border-color:rgba(255,179,92,.22);
  background:rgba(255,179,92,.025);
}
.skin-upload-preview{
  flex:1 1 auto;
  min-height:180px;
  border-radius:15px;
  border:1px solid rgba(255,255,255,.055);
  background:#070707;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#746a61;
  overflow:hidden;
}
.skin-upload-preview span{
  font:800 8px ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:1.1px;
}
.skin-upload-preview i{
  color:var(--accent);
  font-style:normal;
  font-size:16px;
}
.skin-upload-preview img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  background:#050505;
}
.skin-upload-copy strong{
  display:block;
  color:#bdb3a9;
  font-size:9px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.skin-upload-copy small{
  display:block;
  margin-top:5px;
  color:#625a52;
  font-size:6.5px;
}
.skin-upload-slot .slot-clear{
  top:10px;
  right:10px;
}
.skin-input-panel .image-app-note{
  margin-top:9px;
}
.skin-control-panel{
  grid-template-columns:minmax(240px,1fr) 220px 190px 220px;
}
@media(max-width:1280px){
  .skin-control-panel{
    grid-template-columns:minmax(190px,1fr) 190px 165px 190px;
  }
}
@media(max-width:980px){
  .skin-control-panel{
    grid-template-columns:1fr 1fr;
  }
  .skin-control-panel .image-control-copy{grid-column:1/-1}
  .skin-control-panel .image-workflow-state{grid-column:1/2}
  .skin-control-panel .image-generate-btn{grid-column:2/3}
}
@media(max-width:620px){
  .skin-control-panel{grid-template-columns:1fr}
  .skin-control-panel .image-control-copy,
  .skin-control-panel .image-workflow-state,
  .skin-control-panel .image-generate-btn{grid-column:1}
}
