:root{font-family:Inter,"SF Pro Display","SF Pro Text",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:light;--bg:#f7f7fb;--surface:#fff;--surface-2:#f1f1f7;--text:#151520;--muted:#6f7082;--line:#e5e5ed;--accent:#6d5dfc;--accent-2:#9a6bff;--success:#18a873;--danger:#e15361;--shadow:0 20px 65px rgba(25,22,70,.09);--radius:24px}html[data-theme="dark"]{color-scheme:dark;--bg:#090a10;--surface:#12131c;--surface-2:#191b27;--text:#f6f6fa;--muted:#9d9eaf;--line:#272936;--accent:#8b7cff;--accent-2:#b07cff;--shadow:0 25px 80px rgba(0,0,0,.35)}@media(prefers-color-scheme:dark){html[data-theme="system"]{color-scheme:dark;--bg:#090a10;--surface:#12131c;--surface-2:#191b27;--text:#f6f6fa;--muted:#9d9eaf;--line:#272936;--accent:#8b7cff;--accent-2:#b07cff;--shadow:0 25px 80px rgba(0,0,0,.35)}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}p{color:var(--muted);line-height:1.7}button,input,select,textarea{font:inherit}.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.topbar{height:72px;display:flex;align-items:center;gap:26px;padding:0 max(22px,calc((100vw - 1180px)/2));position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(22px);border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent)}.brand{font-weight:850;letter-spacing:-.02em;display:flex;align-items:center;gap:9px;margin-right:auto}.brand-mark{width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--accent-2));display:grid;place-items:center;color:white;box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 32%,transparent)}.main-nav{display:flex;gap:24px;font-size:14px;color:var(--muted)}.main-nav a:hover{color:var(--text)}.top-actions{display:flex;align-items:center;gap:8px}.button,.icon-button{border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:13px;font-weight:720;transition:.18s ease}.button{padding:11px 17px}.button.primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 25%,transparent)}.button.primary:hover{transform:translateY(-1px);box-shadow:0 14px 32px color-mix(in srgb,var(--accent) 32%,transparent)}.button.ghost{background:var(--surface);border:1px solid var(--line)}.button.line{background:#06c755;color:#fff}.button.large{padding:15px 22px;border-radius:15px}.button.small{padding:9px 14px;font-size:14px}.button.full{width:100%}.icon-button{width:38px;height:38px;background:transparent;color:var(--muted)}.hero{display:grid;grid-template-columns:1.04fr .96fr;gap:70px;align-items:center;min-height:690px;padding-block:90px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:850;color:var(--accent);display:inline-flex;align-items:center;gap:8px}.eyebrow i{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 16px var(--accent)}h1,h2,h3{letter-spacing:-.035em;margin-top:0}.hero h1{font-size:clamp(3rem,6.3vw,6rem);line-height:.98;margin:20px 0 26px}.gradient-text{background:linear-gradient(115deg,var(--accent),#c668ff);-webkit-background-clip:text;background-clip:text;color:transparent}.lead{font-size:19px;max-width:640px}.hero-actions{display:flex;gap:12px;margin:32px 0}.trust-row{display:flex;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:13px}.glass-card{background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 90%,transparent),color-mix(in srgb,var(--accent) 7%,var(--surface)));border:1px solid color-mix(in srgb,var(--line) 75%,var(--accent));border-radius:30px;box-shadow:var(--shadow);overflow:hidden}.demo-top{height:58px;padding:0 20px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);font-size:13px}.demo-top b{margin-right:auto}.window-dots{font-size:8px;letter-spacing:4px;color:#ff8376}.badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--accent) 13%,var(--surface));color:var(--accent);font-size:11px;font-weight:780}.badge.soft{background:color-mix(in srgb,var(--success) 11%,var(--surface));color:var(--success)}.badge.muted{background:var(--surface-2);color:var(--muted)}.before-after{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);height:370px}.mock-photo{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 30%,#e9e9ee,#c6c7d0)}html[data-theme="dark"] .mock-photo{background:radial-gradient(circle at 50% 30%,#353644,#20212b)}.mock-photo.after{background:radial-gradient(circle at 50% 33%,#8a7cf844,#15151d)}.mock-photo>span{position:absolute;top:16px;left:16px;background:#0008;color:#fff;padding:6px 9px;border-radius:8px;font-size:11px}.product-shape{width:125px;height:180px;border-radius:16px;background:linear-gradient(150deg,#ffffff,#d9d9e5);color:#252538;display:grid;place-items:center;text-align:center;font-weight:900;letter-spacing:.05em;box-shadow:0 25px 35px #0002;transform:perspective(600px) rotateY(-4deg)}.product-shape.glow{box-shadow:0 25px 60px #7967ff55}.spark{position:absolute;color:#bbadff;font-size:28px}.s1{right:28px;top:72px}.s2{left:25px;bottom:68px;font-size:18px}.prompt-preview{padding:17px;display:flex;align-items:center;gap:12px}.prompt-preview p{font-size:12px;margin:0;line-height:1.45;flex:1}.prompt-preview button{border:0;border-radius:10px;background:var(--accent);color:white;padding:10px 13px}.section{padding-block:95px}.section.alt{background:color-mix(in srgb,var(--surface-2) 65%,var(--bg));border-block:1px solid var(--line)}.section-heading{max-width:720px;margin-bottom:40px}.section-heading.center{text-align:center;margin-inline:auto}.section-heading.compact{display:flex;align-items:end;justify-content:space-between;max-width:none;margin-top:58px;margin-bottom:16px}.section-heading h2{font-size:clamp(2.2rem,4vw,3.6rem);margin:10px 0}.tool-grid,.feature-grid,.pricing-grid,.case-grid,.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tool-card,.feature-grid article,.price-card,.case-grid article,.help-grid article{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 8px 30px rgba(20,20,50,.035)}.tool-card.clickable{transition:.2s ease}.tool-card.clickable:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:var(--shadow)}.tool-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 15%,var(--surface)),color-mix(in srgb,var(--accent-2) 18%,var(--surface)));color:var(--accent);font-size:22px;margin-bottom:38px}.tool-card .badge{position:absolute;right:20px;top:20px}.tool-card h3{font-size:22px;margin-bottom:8px}.tool-card a,.tool-link{color:var(--accent);font-weight:750;font-size:13px}.feature-grid article b{color:var(--accent);font-size:12px}.feature-grid article h3{font-size:23px;margin-top:28px}.price-card.featured{border-color:color-mix(in srgb,var(--accent) 60%,var(--line));box-shadow:0 20px 55px color-mix(in srgb,var(--accent) 13%,transparent)}.popular{position:absolute;right:18px;top:18px;background:var(--accent);color:white;font-size:11px;font-weight:800;padding:6px 10px;border-radius:999px}.points{font-size:38px;font-weight:850;margin:26px 0}.points small{font-size:13px;color:var(--muted)}.faq-home{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.faq-home details,details{border-bottom:1px solid var(--line);padding:18px 4px}.faq-home summary,summary{font-weight:750;cursor:pointer}.final-cta{margin-block:95px;padding:54px;border-radius:32px;background:linear-gradient(130deg,#29235f,#6556e9 55%,#9d67e9);color:white;display:flex;align-items:center;justify-content:space-between;gap:30px}.final-cta p{color:#ffffffb8}.footer{width:min(1180px,calc(100% - 40px));margin:auto;padding:34px 0 50px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px}.footer div:last-child{display:flex;gap:18px;color:var(--muted);font-size:13px}.page-hero{padding-top:110px;padding-bottom:40px}.page-hero h1{font-size:clamp(3rem,6vw,5.6rem);max-width:930px;margin:18px 0}.case-visual{height:230px;border-radius:18px;margin-bottom:24px;background:linear-gradient(135deg,#d7d8e1,#fff)}.c1{background:radial-gradient(circle at 50% 35%,#fff,#dfe1eb 65%,#cfd1dc)}.c2{background:linear-gradient(140deg,#faf6ea,#e9d6bc)}.c3{background:linear-gradient(140deg,#dce8f3,#a8c1dc)}.auth-shell{min-height:calc(100vh - 150px);display:grid;place-items:center;padding:60px 20px}.auth-card{width:min(460px,100%);background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:38px;box-shadow:var(--shadow)}.auth-card h1{font-size:42px;margin:10px 0}.field{display:block;margin:18px 0}.field>span{display:block;font-size:12px;font-weight:770;margin:0 0 7px;color:var(--muted)}input,textarea,select{width:100%;border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:13px;padding:13px 14px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}textarea{min-height:140px;resize:vertical}.check{font-size:13px;color:var(--muted);display:flex;gap:8px;align-items:center}.check input{width:auto}.terms{margin:18px 0}.or{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;margin:22px 0}.or:before,.or:after{content:"";height:1px;background:var(--line);flex:1}.auth-foot{text-align:center;font-size:13px}.alert{padding:13px 15px;border-radius:13px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));font-size:13px}.alert.error{background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger)}.workspace-shell{width:min(1380px,calc(100% - 38px));margin:0 auto;padding:26px 0 80px}.member-bar{display:flex;align-items:center;justify-content:space-between;padding:13px 4px;border-bottom:1px solid var(--line);margin-bottom:44px}.member-links{display:flex;gap:24px;font-size:13px;color:var(--muted)}.credit-chip{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;color:var(--accent)}.credit-chip.large{font-size:14px;padding:10px 15px}.workspace-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.page-title{font-size:clamp(2.3rem,4vw,4rem);margin:8px 0}.workspace-head p{margin:0}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.workspace-panel,.settings-panel{background:var(--surface);border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:0 12px 38px rgba(30,30,60,.045)}.settings-panel{position:sticky;top:92px}.settings-title{display:flex;align-items:center;justify-content:space-between}.upload-zone{min-height:260px;border:1.5px dashed color-mix(in srgb,var(--accent) 32%,var(--line));border-radius:20px;background:color-mix(in srgb,var(--accent) 3%,var(--surface-2));display:flex;align-items:center;justify-content:center;cursor:pointer;padding:18px;transition:.2s}.upload-zone.dragover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.upload-zone.locked{cursor:default;text-align:center;flex-direction:column}.upload-icon{width:52px;height:52px;border-radius:17px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);display:grid;place-items:center;font-size:26px;margin:auto}.upload-empty{text-align:center}.upload-empty h3{margin:14px 0 4px}.upload-empty p{font-size:12px}.preview-list{width:100%;display:grid;grid-template-columns:repeat(5,minmax(100px,1fr));gap:10px}.preview-card{position:relative;aspect-ratio:1;border-radius:15px;overflow:hidden;background:var(--surface-2);border:2px solid transparent}.preview-card:first-child{border-color:var(--accent)}.preview-card:first-child:before{content:"主圖";position:absolute;left:7px;top:7px;background:var(--accent);color:white;font-size:9px;font-weight:800;padding:4px 6px;border-radius:7px;z-index:2}.preview-card img{width:100%;height:100%;object-fit:cover}.preview-card button{position:absolute;right:6px;top:6px;width:25px;height:25px;border:0;border-radius:50%;background:#0009;color:#fff;cursor:pointer}.preview-card.dragging{opacity:.45}.prompt-field{margin-top:24px}.example-row{display:flex;gap:8px;flex-wrap:wrap}.example-row button,.ratio-grid button,.segmented button,.history-actions button{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);border-radius:10px;padding:8px 11px;cursor:pointer;font-size:12px}.ratio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.ratio-grid button.active,.segmented button.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--surface))}.segmented{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.resolution-note,.cost-box{border:1px solid var(--line);border-radius:15px;padding:14px;margin:18px 0;background:var(--surface-2)}.resolution-note b{font-size:12px}.resolution-note p{font-size:11px;margin:5px 0 0}.cost-box{display:flex;align-items:center;justify-content:space-between}.cost-box span{font-size:12px;color:var(--muted)}.cost-box b{font-size:20px}.source-banner{display:flex;gap:12px;align-items:center;padding:12px;background:var(--surface-2);border-radius:15px;margin-top:14px}.source-banner img{width:60px;height:60px;object-fit:cover;border-radius:11px}.source-banner p{margin:2px 0;font-size:11px}.job-status{margin-top:22px;padding:14px 16px;border-radius:14px;background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--accent);font-weight:700}.hidden{display:none!important}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.result-grid article{margin:0;border:1px solid var(--line);border-radius:18px;padding:10px;background:var(--surface-2)}.result-grid img{width:100%;border-radius:13px;display:block}.result-grid a{display:inline-block;margin:10px 8px 2px 2px;color:var(--accent);font-size:12px;font-weight:750}.history-list{display:grid;gap:10px}.history-list article{background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:14px 16px;display:flex;align-items:center;gap:13px}.history-list article>div:nth-child(2){flex:1}.history-list p{margin:3px 0;font-size:12px}.history-list time{font-size:11px;color:var(--muted)}.status-dot{width:9px;height:9px;border-radius:50%;background:#aaa}.status-dot.completed{background:var(--success)}.status-dot.failed{background:var(--danger)}.status-dot.running,.status-dot.processing{background:#e3a525}.history-list.detailed article{align-items:flex-start;padding:20px}.prompt-history{color:var(--text)!important;font-size:14px!important}.history-actions{display:flex;gap:8px}.history-actions a{font-size:12px;color:var(--accent);font-weight:750;padding:8px}.filter-bar{display:grid;grid-template-columns:1fr 180px auto;gap:8px;margin-bottom:18px}.filter-bar button{border:0;background:var(--accent);color:white;border-radius:12px;padding:0 16px}.empty{padding:35px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:18px}.guest-pill{padding:8px 12px;border-radius:999px;background:#ffb54522;color:#b66f00;font-size:12px;font-weight:780}.error-text{color:var(--danger);font-size:11px}.admin-layout{display:grid;grid-template-columns:210px 1fr;gap:30px;width:min(1420px,calc(100% - 40px));margin:0 auto;padding:34px 0 80px}.admin-nav{display:flex;flex-direction:column;gap:5px;position:sticky;top:98px;height:max-content}.admin-nav a{padding:10px 12px;border-radius:10px;color:var(--muted);font-size:13px}.admin-nav a:hover{background:var(--surface);color:var(--text)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px;margin-bottom:16px}.panel.narrow{max-width:480px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0}.stats article{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px}.stats b{display:block;font-size:27px}.stats span{font-size:11px;color:var(--muted)}.row,.split{display:flex;align-items:center;gap:16px}.row{padding:10px 0;border-bottom:1px solid var(--line)}.row>*:nth-child(2){flex:1}.split{justify-content:space-between}.split.mini{gap:10px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.muted-text,.hint{color:var(--muted);font-size:12px}.footer p{margin:4px 0}.footer a{color:var(--muted)}@media(max-width:900px){.main-nav{display:none}.hero{grid-template-columns:1fr;gap:30px;min-height:auto;padding-block:64px}.hero-demo{max-width:650px}.tool-grid,.feature-grid,.pricing-grid,.case-grid,.help-grid{grid-template-columns:1fr 1fr}.workspace-grid{grid-template-columns:1fr}.settings-panel{position:static}.admin-layout{grid-template-columns:1fr}.admin-nav{position:static;flex-direction:row;overflow:auto}.stats{grid-template-columns:1fr 1fr}.faq-home{grid-template-columns:1fr}.preview-list{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.topbar{padding:0 14px;height:64px}.top-actions .ghost{display:none}.shell,.workspace-shell{width:min(100% - 24px,1180px)}.hero{padding-block:45px}.hero h1{font-size:3.1rem}.hero-actions{flex-direction:column}.before-after{height:300px}.tool-grid,.feature-grid,.pricing-grid,.case-grid,.help-grid{grid-template-columns:1fr}.final-cta{padding:34px 24px;align-items:flex-start;flex-direction:column}.footer{width:calc(100% - 28px);flex-direction:column}.workspace-head{align-items:flex-start;flex-direction:column}.member-bar{align-items:flex-start;gap:12px;flex-direction:column}.member-links{width:100%;overflow:auto}.preview-list{grid-template-columns:repeat(2,1fr)}.result-grid{grid-template-columns:1fr}.filter-bar{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.history-list.detailed article{flex-direction:column}.history-actions{width:100%}.admin-layout{width:calc(100% - 24px)}}
.settings-card-grid,.credit-bucket-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:22px}.settings-card h3{margin-bottom:8px}.settings-admin-row{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(260px,1.5fr) minmax(160px,.8fr) auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.settings-admin-row textarea{min-height:70px}.settings-admin-row small{display:block;color:var(--muted);margin-top:4px}.admin-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.stack{display:grid;gap:10px}.stack textarea{min-height:110px}.calculator-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 1.2fr;gap:16px;align-items:end}.bar-compare{display:grid;gap:12px}.bar-compare>div{display:grid;grid-template-columns:90px 1fr auto;gap:14px;align-items:center}.bar-compare>div:after{content:"";grid-column:2;height:10px;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-2));width:min(100%,calc(15% + var(--value,0) * 1%));opacity:.75}.history-list article.unread{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 4%,var(--surface))}.stats.mini{grid-template-columns:repeat(3,1fr);margin-bottom:0}
@media(max-width:1000px){.settings-card-grid,.credit-bucket-grid,.admin-three{grid-template-columns:1fr 1fr}.calculator-grid{grid-template-columns:1fr 1fr}.settings-admin-row{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.settings-card-grid,.credit-bucket-grid,.admin-three,.calculator-grid,.settings-admin-row{grid-template-columns:1fr}.stats.mini{grid-template-columns:1fr}.bar-compare>div{grid-template-columns:1fr}.bar-compare>div:after{grid-column:1}}
.plan-admin-grid{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px;align-items:end}.plan-admin-grid>div{grid-column:span 1}.plan-admin-grid label{font-size:11px;color:var(--muted);font-weight:700}.plan-admin-grid label.wide{grid-column:span 3}.plan-admin-grid h2{margin:8px 0 0}@media(max-width:900px){.plan-admin-grid{grid-template-columns:1fr 1fr}.plan-admin-grid label.wide{grid-column:span 2}}@media(max-width:620px){.plan-admin-grid{grid-template-columns:1fr}.plan-admin-grid label.wide{grid-column:span 1}}

/* v1.0.5 navigation/session usability */
.main-nav a,.member-links a{position:relative;padding:8px 3px;border-radius:8px;transition:.18s ease}
.main-nav a.active,.member-links a.active{color:var(--accent);font-weight:800}
.main-nav a.active:after,.member-links a.active:after{content:"";position:absolute;left:4px;right:4px;bottom:-7px;height:2px;border-radius:999px;background:var(--accent)}
.inline-form{display:inline-flex;margin:0}.inline-form button{font:inherit}
.top-credit{text-decoration:none;white-space:nowrap}.member-chip{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-topbar{height:70px;padding:0 28px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(18px)}
.admin-brand-label{font-size:11px;color:var(--muted);font-weight:760;padding-left:10px;margin-left:4px;border-left:1px solid var(--line)}
.admin-area main{min-height:calc(100vh - 70px)}
.admin-nav{gap:15px;top:92px;max-height:calc(100vh - 115px);overflow:auto;padding-right:6px}
.admin-nav-group{display:flex;flex-direction:column;gap:4px}
.admin-nav-title{font-size:10px;letter-spacing:.11em;color:var(--muted);font-weight:850;padding:4px 12px 5px;text-transform:uppercase}
.admin-nav a{border-left:3px solid transparent;padding:10px 12px 10px 11px}
.admin-nav a.active{background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent);border-left-color:var(--accent);font-weight:820}
.admin-nav a.active:hover{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}
@media(max-width:900px){.admin-nav{gap:8px;max-height:none;padding:0;flex-direction:column}.admin-nav-group{min-width:180px}.admin-topbar{padding:0 16px}.admin-layout{grid-template-columns:1fr}.admin-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));position:static}.admin-nav-title{padding-left:8px}}
@media(max-width:620px){.admin-nav{grid-template-columns:1fr}.top-actions .top-credit{display:none}.admin-brand-label{display:none}}

/* v1.0.6: public site / AI workspace / admin are three independent shells */
.app-area{min-height:100vh;background:var(--bg)}
.app-topbar{height:70px;padding:0 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:80;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(18px)}
.app-brand-label{font-size:11px;color:var(--muted);font-weight:760;padding-left:10px;margin-left:4px;border-left:1px solid var(--line)}
.app-layout{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:calc(100vh - 70px);width:min(1600px,100%);margin:0 auto}
.app-sidebar{border-right:1px solid var(--line);padding:26px 16px 22px;display:flex;flex-direction:column;gap:22px;position:sticky;top:70px;height:calc(100vh - 70px);background:color-mix(in srgb,var(--surface) 72%,var(--bg));overflow:auto}
.app-sidebar-head{display:grid;gap:4px;padding:0 10px}.app-sidebar-head strong{font-size:16px}.app-sidebar-head .eyebrow{font-size:10px}
.app-sidebar-nav{display:grid;gap:5px}.app-sidebar-nav a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;color:var(--muted);font-size:13px;font-weight:700;border:1px solid transparent;transition:.16s ease}.app-sidebar-nav a span{width:18px;text-align:center;color:inherit}.app-sidebar-nav a:hover{background:var(--surface);color:var(--text)}.app-sidebar-nav a.active{background:color-mix(in srgb,var(--accent) 11%,var(--surface));border-color:color-mix(in srgb,var(--accent) 24%,var(--line));color:var(--accent);font-weight:820}
.app-sidebar-foot{margin-top:auto;display:grid;gap:12px;padding:14px 10px 2px;border-top:1px solid var(--line)}.sidebar-points,.sidebar-member{display:grid;gap:3px}.sidebar-points span,.sidebar-member small{font-size:10px;color:var(--muted)}.sidebar-points b{font-size:15px}.sidebar-member span{font-size:12px;font-weight:750;overflow:hidden;text-overflow:ellipsis}.sidebar-member small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.app-main{min-width:0;padding:0 0 72px}.app-main .workspace-shell{width:min(1180px,calc(100% - 56px));margin:0 auto;padding-top:38px}.app-main .banana-workspace{width:min(1320px,calc(100% - 56px))}
.app-member-name{color:var(--text);font-size:12px;font-weight:750;text-decoration:none;padding:8px 4px;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-member-name:hover{color:var(--accent)}
.public-area .main-nav a{position:relative;padding:8px 3px}.public-area .main-nav a.active{color:var(--accent);font-weight:800}.public-area .main-nav a.active:after{content:"";position:absolute;left:4px;right:4px;bottom:-7px;height:2px;border-radius:999px;background:var(--accent)}
@media(max-width:1050px){.app-layout{grid-template-columns:190px minmax(0,1fr)}.app-sidebar{padding-inline:10px}.app-top-actions .member-chip{display:none}}
@media(max-width:820px){.app-topbar{padding:0 14px}.app-brand-label{display:none}.app-top-actions .button.ghost:first-child{display:none}.app-layout{display:block}.app-sidebar{position:sticky;top:70px;height:auto;z-index:60;border-right:0;border-bottom:1px solid var(--line);padding:8px 12px;background:color-mix(in srgb,var(--bg) 95%,transparent);backdrop-filter:blur(18px)}.app-sidebar-head,.app-sidebar-foot{display:none}.app-sidebar-nav{display:flex;overflow:auto;gap:5px}.app-sidebar-nav a{white-space:nowrap;padding:9px 11px}.app-main .workspace-shell,.app-main .banana-workspace{width:min(100% - 24px,1180px);padding-top:26px}}
@media(max-width:560px){.app-top-actions .button.ghost,.app-top-actions .app-member-name{display:none}.app-topbar .brand span:not(.brand-mark):not(.app-brand-label){max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar-nav a span{display:none}.app-sidebar-nav a{font-size:12px}.top-credit{font-size:11px;padding-inline:9px}}

/* v1.0.7: optimized website settings + draft/publish global layout */
.brand-logo{height:34px;max-width:150px;object-fit:contain;display:block}.site-announcement{min-height:38px;padding:8px max(22px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:center;gap:14px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));font-size:12px;font-weight:700}.site-announcement a{color:var(--accent);font-weight:850}.admin-page{min-width:0}.admin-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:18px}.admin-page-head p{margin:6px 0 0}.version-chip,.version-stack span{display:inline-flex;align-items:center;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:8px 12px;color:var(--muted);font-size:11px;font-weight:800}.version-stack{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.admin-subnav{display:flex;gap:5px;padding:5px;border:1px solid var(--line);background:var(--surface);border-radius:15px;width:max-content;max-width:100%;overflow:auto;margin-bottom:16px}.admin-subnav a{padding:9px 14px;border-radius:10px;color:var(--muted);font-size:12px;font-weight:800;white-space:nowrap}.admin-subnav a.active{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}.admin-info-banner{display:flex;align-items:center;gap:12px;padding:12px 15px;border:1px solid color-mix(in srgb,var(--success) 28%,var(--line));background:color-mix(in srgb,var(--success) 7%,var(--surface));border-radius:15px;margin-bottom:18px;color:var(--muted);font-size:12px}.admin-info-banner b{color:var(--success);white-space:nowrap}.site-settings-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr);gap:18px;align-items:start}.site-settings-form-column{display:grid;gap:18px}.site-settings-form{display:grid;gap:15px}.panel-heading-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.panel-heading-row h2,.panel-heading-row p{margin:0}.panel-heading-row p{margin-top:5px}.save-state{font-size:10px;font-weight:800;color:var(--muted);padding:6px 9px;background:var(--surface-2);border-radius:999px}.save-state.dirty{color:#b46a00;background:#fff1d6}.form-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field small{font-size:10px;color:var(--muted);display:block;margin-top:6px}.color-input-row{display:grid;grid-template-columns:52px 1fr;gap:8px}.color-input-row input[type=color]{width:52px;height:44px;padding:3px;border-radius:11px}.sticky-save-bar{position:sticky;bottom:14px;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px 11px 15px;border:1px solid color-mix(in srgb,var(--line) 75%,transparent);background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(16px);border-radius:15px;box-shadow:0 14px 34px rgba(20,20,45,.08)}.sticky-save-bar span{font-size:11px;color:var(--muted)}.asset-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.asset-card{border:1px solid var(--line);background:var(--bg);border-radius:16px;padding:14px;display:grid;gap:12px;min-width:0}.asset-card>div:first-child{display:grid;gap:4px}.asset-card small{color:var(--muted);font-size:10px;line-height:1.45}.asset-card form{display:grid;gap:8px}.asset-card input[type=file]{font-size:11px;max-width:100%}.asset-preview{height:128px;border:1px dashed var(--line);border-radius:12px;background:var(--surface);display:grid;place-items:center;overflow:hidden}.asset-preview img{max-width:100%;max-height:100%;object-fit:contain}.favicon-preview-box img{width:64px;height:64px}.og-preview-box{aspect-ratio:1200/630;height:auto}.og-preview-box img{width:100%;height:100%;object-fit:cover}.asset-placeholder{font-size:11px;color:var(--muted)}.site-preview-column{display:grid;gap:14px;position:sticky;top:90px}.preview-panel{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:16px;box-shadow:0 14px 35px rgba(20,20,60,.035)}.preview-panel-title{display:grid;gap:3px;margin-bottom:13px}.preview-panel-title small{color:var(--muted);font-size:10px}.browser-tab-preview{height:44px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);display:grid;grid-template-columns:20px minmax(0,1fr) 14px;align-items:center;gap:8px;padding:0 10px;font-size:11px}.browser-tab-preview img,.search-brand-row img{width:18px;height:18px;border-radius:5px;object-fit:contain}.mini-favicon{width:18px;height:18px;border-radius:5px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);display:grid;place-items:center;font-size:10px}.search-brand-row{display:flex;align-items:center;gap:8px}.search-brand-row>div{display:grid}.search-brand-row b{font-size:11px}.search-brand-row small{font-size:9px;color:var(--muted)}.search-title{color:#315fca;font-size:18px;margin-top:12px;line-height:1.25}.search-preview p{font-size:11px;margin:5px 0 0}.social-card{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:var(--surface-2)}.social-image{aspect-ratio:1200/630;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface-2));display:grid;place-items:center;overflow:hidden}.social-image img{width:100%;height:100%;object-fit:cover}.social-placeholder{color:var(--muted);font-size:12px}.social-copy{display:grid;gap:3px;padding:11px}.social-copy small{font-size:9px;color:var(--muted);text-transform:uppercase}.social-copy b{font-size:12px}.social-copy p{font-size:10px;margin:0;line-height:1.45}.brand-preview-row{display:flex;align-items:center;gap:12px}.brand-preview-row>img{width:46px;height:46px;object-fit:contain}.brand-preview-row>div{display:grid;gap:3px;min-width:0;margin-right:auto}.brand-preview-row small{font-size:10px;color:var(--muted)}.publish-status-row{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;background:var(--surface);border:1px solid var(--line);border-radius:15px;margin-bottom:16px}.publish-status-row>div{display:flex;align-items:center;gap:9px}.publish-status-row small{color:var(--muted)}.layout-editor{display:grid;gap:18px}.layout-tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);padding-bottom:10px}.layout-tabs button{border:0;background:transparent;padding:9px 13px;border-radius:10px;color:var(--muted);cursor:pointer;font-weight:800;font-size:12px}.layout-tabs button.active{background:color-mix(in srgb,var(--accent) 11%,var(--surface));color:var(--accent)}.switch-row{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);font-size:12px;font-weight:750}.switch-row input{width:18px;height:18px}.nav-editor-grid{display:grid;gap:8px}.nav-editor-row{display:grid;grid-template-columns:24px 120px minmax(0,1fr);gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:9px 12px}.nav-editor-row>span{font-size:11px;color:var(--muted);font-weight:800}.toggle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.layout-live-preview{border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));background:color-mix(in srgb,var(--accent) 4%,var(--surface));border-radius:14px;padding:14px;margin-top:14px}.announcement-layout-preview{display:flex;align-items:center;justify-content:center;gap:12px;font-size:11px}.announcement-layout-preview b{color:var(--accent)}.header-layout-preview{display:flex;align-items:center;gap:10px}.header-layout-preview>div{display:flex;gap:13px;margin-left:auto;color:var(--muted);font-size:10px}.footer-layout-preview{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.footer-layout-preview>div{display:grid;gap:3px}.footer-layout-preview>div:last-child{display:flex;gap:10px;color:var(--muted);font-size:10px}.footer-layout-preview small{color:var(--muted)}.publish-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:16px}.publish-panel h2,.publish-panel p{margin:4px 0}.publish-panel form{display:flex;gap:8px;align-items:center;min-width:min(420px,100%)}.publish-panel input{min-width:220px}.hidden{display:none!important}
@media(max-width:1100px){.site-settings-grid{grid-template-columns:1fr}.site-preview-column{position:static;grid-template-columns:1fr 1fr}.asset-card-grid{grid-template-columns:1fr 1fr}.publish-panel{align-items:flex-start;flex-direction:column}.publish-panel form{width:100%}.publish-panel input{flex:1}}
@media(max-width:720px){.form-two-col,.toggle-grid,.site-preview-column,.asset-card-grid{grid-template-columns:1fr}.admin-page-head,.publish-status-row{align-items:flex-start;flex-direction:column}.version-stack{justify-content:flex-start}.nav-editor-row{grid-template-columns:22px 80px 1fr}.header-layout-preview>div{display:none}.publish-panel form{flex-direction:column;align-items:stretch}.publish-panel input{min-width:0}.sticky-save-bar{bottom:8px}.site-announcement{padding-inline:14px;justify-content:flex-start;overflow:auto;white-space:nowrap}}

/* v1.0.8: compact collapsible admin navigation */
.admin-nav{gap:8px;padding-right:4px}
.admin-nav-dashboard,.admin-nav-section>summary{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;border-radius:12px;color:var(--muted);font-size:13px;font-weight:800;cursor:pointer;transition:.16s ease;border:1px solid transparent;list-style:none}
.admin-nav-section>summary::-webkit-details-marker{display:none}
.admin-nav-dashboard:hover,.admin-nav-section>summary:hover{background:var(--surface);color:var(--text)}
.admin-nav-dashboard.active,.admin-nav-section.active-group>summary{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:color-mix(in srgb,var(--accent) 18%,var(--line));color:var(--accent)}
.admin-nav-main-icon{width:20px;height:20px;display:grid;place-items:center;flex:0 0 20px;font-size:13px;color:inherit}
.admin-nav-chevron{margin-left:auto;font-size:19px;line-height:1;transition:transform .16s ease;color:var(--muted)}
.admin-nav-section[open]>summary .admin-nav-chevron{transform:rotate(90deg)}
.admin-nav-links{display:grid;gap:3px;padding:5px 0 3px 30px}
.admin-nav-links a{position:relative;padding:9px 11px!important;border-left:0!important;border-radius:10px!important;font-size:12px!important}
.admin-nav-links a:before{content:"";position:absolute;left:-12px;top:50%;width:6px;height:1px;background:var(--line)}
.admin-nav-links a.active{background:color-mix(in srgb,var(--accent) 11%,var(--surface))!important;color:var(--accent)!important;font-weight:820}
.admin-nav-links a.active:before{background:var(--accent);height:2px}
@media(max-width:900px){.admin-nav{display:flex!important;flex-direction:column!important}.admin-nav-section{width:100%}.admin-nav-links{padding-left:28px}}

/* Pricing v0.1 */
.cycle-switch button:disabled{opacity:.45;cursor:not-allowed}.package-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.package-card.daily-promo{border-color:color-mix(in srgb,#ff8a3d 50%,var(--line));background:linear-gradient(155deg,color-mix(in srgb,#ff8a3d 8%,var(--surface)),var(--surface))}.promo-badge{background:#ff8a3d1c!important;color:#dc681e!important}.package-breakdown{display:grid;gap:5px;margin:8px 0 2px;color:var(--muted);font-size:12px}.package-breakdown b{color:var(--accent)}.package-points{font-size:22px!important;font-weight:850;color:var(--text)!important;margin:8px 0}.package-price{display:block;font-size:22px;margin:8px 0 14px}.package-card button:disabled{opacity:.55;cursor:not-allowed}.resolution-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.pricing-mini-card{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--surface-2);display:grid;gap:9px}.pricing-mini-card label{display:grid;gap:4px;font-size:11px;color:var(--muted)}.pricing-mini-card button{border:0;background:var(--accent);color:#fff;border-radius:10px;padding:9px}.model-pricing-panel{display:block}@media(max-width:780px){.resolution-pricing-grid{grid-template-columns:1fr}}

/* pricing page */
.pricing-page{padding-bottom:90px}.pricing-head{margin-bottom:18px}.pricing-section-head{margin-top:46px}.membership-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:20px}.membership-card{display:flex;flex-direction:column;gap:18px;padding:26px;min-height:100%;box-shadow:0 8px 30px rgba(20,20,50,.035);background:var(--surface);border:1px solid var(--line);border-radius:24px;position:relative}.membership-card.free{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 85%,var(--surface-2)),var(--surface))}.membership-card.featured{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:0 22px 60px color-mix(in srgb,var(--accent) 12%,transparent)}.membership-card-top{display:grid;gap:8px}.membership-card-top h3{font-size:28px;margin:0}.membership-price{font-size:34px;font-weight:850;letter-spacing:-.04em;line-height:1.05}.membership-price small{font-size:15px;color:var(--muted);font-weight:700}.membership-points{margin:0!important;color:var(--muted)!important;font-size:15px!important}.membership-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.membership-highlights .metric{padding:14px;border-radius:16px;background:var(--surface-2);display:grid;gap:3px}.membership-highlights .metric b{font-size:12px;color:var(--accent)}.membership-highlights .metric span{font-size:14px;color:var(--text)}.membership-feature-list{display:grid;gap:10px;padding:0 0 0 18px;margin:0;color:var(--muted);font-size:14px;line-height:1.6}.membership-footer{margin-top:auto}.store-package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.package-card{display:grid;gap:14px;padding:20px;min-height:unset}.package-card.daily-promo{grid-column:1 / -1;padding:24px;background:linear-gradient(135deg,color-mix(in srgb,#ff8a3d 10%,var(--surface)),color-mix(in srgb,var(--accent) 10%,var(--surface)));border-color:color-mix(in srgb,#ff8a3d 45%,var(--line))}.package-main{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.package-main h3{margin:2px 0 4px;font-size:24px}.package-side{text-align:right;display:grid;gap:6px;justify-items:end}.package-breakdown{margin:6px 0 2px}.package-points{font-size:30px!important;line-height:1.1;margin:6px 0 0!important}.package-price{font-size:30px;line-height:1.1;margin:0}.purchase-row{display:flex;gap:10px;align-items:center}.purchase-row select{flex:1;min-width:0}.purchase-row .primary-btn{white-space:nowrap;border:0;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border-radius:12px;padding:12px 18px;font-weight:800;cursor:pointer}.disabled-row .primary-btn{width:100%}.muted-note{display:block}.plan-grid.compact-plans{gap:18px}

@media(max-width:1000px){.membership-pricing-grid{grid-template-columns:1fr 1fr}.store-package-grid{grid-template-columns:1fr 1fr}.membership-card.featured{grid-column:1 / -1}.package-card.daily-promo{grid-column:1 / -1}}
@media(max-width:700px){.membership-pricing-grid,.store-package-grid{grid-template-columns:1fr}.membership-highlights{grid-template-columns:1fr 1fr}.package-main{flex-direction:column;align-items:flex-start}.package-side{text-align:left;justify-items:start}.purchase-row{flex-direction:column;align-items:stretch}.purchase-row .primary-btn{width:100%}.membership-card.featured,.package-card.daily-promo{grid-column:auto}}
@media(max-width:520px){.membership-highlights{grid-template-columns:1fr}.membership-card-top h3{font-size:24px}.membership-price{font-size:28px}.package-points,.package-price{font-size:26px}}

.provider-settings-card{display:grid;gap:20px}.provider-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.provider-settings-head h2{margin:10px 0 4px}.provider-settings-head p{margin:0}.provider-key-state{min-width:220px;padding:16px;border-radius:16px;background:var(--surface-2);display:grid;gap:5px;text-align:right}.provider-key-state small,.provider-key-state span{color:var(--muted);font-size:11px}.provider-key-state strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px}.provider-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.provider-status-grid article{padding:14px;border:1px solid var(--line);border-radius:14px;display:grid;gap:5px}.provider-status-grid small,.provider-status-grid span{color:var(--muted);font-size:11px}.provider-task-control form{display:grid;grid-template-columns:minmax(160px,1fr) minmax(220px,2fr) auto;align-items:end;gap:10px}.provider-actions-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:14px}.provider-actions-grid form{padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);display:grid;gap:10px;align-content:start}.provider-actions-grid h3{margin:0}.provider-actions-grid label{display:grid;gap:6px;font-size:12px;color:var(--muted)}.provider-actions-grid p{font-size:12px;margin:0}.provider-actions-grid button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:1024px){.provider-task-control form{grid-template-columns:1fr 1fr}.provider-task-control form .button{justify-self:start}}@media(max-width:900px){.provider-actions-grid{grid-template-columns:1fr}.provider-status-grid{grid-template-columns:1fr 1fr}.provider-settings-head{flex-direction:column}.provider-key-state{width:100%;text-align:left}}@media(max-width:620px){.provider-task-control form,.provider-status-grid{grid-template-columns:1fr}}

.provider-dashboard-alert{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0 4px}.provider-dashboard-alert b{white-space:nowrap}.provider-dashboard-alert span{flex:1;min-width:220px}.provider-dashboard-alert a{font-weight:800;color:inherit}

/* Banana explicit model + resolution controls */
.model-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.model-choice{position:relative;min-height:76px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:14px;padding:12px 10px;text-align:left;cursor:pointer;transition:.16s ease}.model-choice:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--line));transform:translateY(-1px)}.model-choice.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 9%,transparent)}.model-choice-copy{display:grid;gap:4px}.model-choice-copy strong{font-size:13px;letter-spacing:-.01em}.model-choice-copy small{font-size:10px;color:var(--muted);line-height:1.25}.model-recommended{display:inline-flex;margin-top:7px;padding:3px 6px;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);font-size:9px;font-weight:850}.resolution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.resolution-grid button{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);border-radius:10px;padding:9px 10px;cursor:pointer;font-size:12px;font-weight:760}.resolution-grid button.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--surface))}.resolution-grid button:disabled,.resolution-grid button.unsupported{opacity:.38;cursor:not-allowed;filter:saturate(.25)}.setting-hint{display:block;margin-top:7px;color:var(--muted);font-size:10px;line-height:1.45}
@media(max-width:520px){.model-choice-grid{grid-template-columns:1fr}.model-choice{min-height:62px}}

/* Member admin workspace */
.member-admin-page{min-width:0}.member-admin-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:18px}.member-admin-hero .page-title{margin:8px 0 4px}.member-admin-hero p{margin:0}.member-admin-hero-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.danger-soft{background:color-mix(in srgb,var(--danger) 12%,var(--surface))!important;color:var(--danger)!important}.member-admin-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0}.member-admin-stats article{padding:16px 17px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.member-admin-stats b{display:block;font-size:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-admin-stats span{display:block;margin-top:4px;color:var(--muted);font-size:11px}.member-admin-jump{position:sticky;top:86px;z-index:20;display:flex;gap:6px;overflow:auto;padding:8px;margin:16px 0 20px;background:color-mix(in srgb,var(--bg) 91%,transparent);backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:15px}.member-admin-jump a{white-space:nowrap;padding:7px 10px;border-radius:9px;color:var(--muted);font-size:11px;font-weight:760}.member-admin-jump a:hover{background:var(--surface);color:var(--accent)}.member-admin-section{scroll-margin-top:145px;padding:24px;margin-bottom:18px}.member-admin-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:8px}.member-admin-section-head h2{margin:5px 0 0;font-size:25px}.member-readonly-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.member-readonly-grid>div{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);min-width:0}.member-readonly-grid small,.member-readonly-grid span{display:block;color:var(--muted);font-size:10px}.member-readonly-grid strong{display:block;margin:5px 0 2px;font-size:13px;overflow-wrap:anywhere}.member-admin-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.member-admin-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.member-action-card{padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);display:grid;gap:10px;align-content:start;min-width:0}.member-action-card h3{margin:0;font-size:16px}.member-action-card p{margin:0;font-size:12px}.member-action-card label{display:grid;gap:5px;color:var(--muted);font-size:11px}.member-action-card .check{display:flex;align-items:center;gap:8px}.member-action-card .check input{width:auto}.member-bucket-summary{display:grid;gap:8px}.member-bucket-summary>div{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:12px;background:var(--surface)}.member-bucket-summary span{font-size:12px;color:var(--muted)}.member-bucket-summary b{font-size:19px}.member-admin-table{margin-top:16px;border:1px solid var(--line);border-radius:14px}.member-admin-table table{min-width:680px}.positive{color:var(--success);font-weight:800}.negative{color:var(--danger);font-weight:800}.member-inline-danger{display:flex;gap:8px;max-width:620px;margin:12px 0}.member-inline-danger input{flex:1}.member-subtitle{margin:22px 0 10px;font-size:16px}.member-session-list,.member-order-list,.member-job-list,.member-note-list{display:grid;gap:9px}.member-session-list>article,.member-order-list>article{display:flex;align-items:flex-start;gap:14px;justify-content:space-between;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.member-session-list article>div,.member-order-list article>div{min-width:0;flex:1}.member-session-list p,.member-order-list p{margin:3px 0;font-size:11px;overflow-wrap:anywhere}.member-session-list small,.member-order-list small{display:block;color:var(--muted);font-size:10px;line-height:1.5}.member-session-list article.revoked{opacity:.55}.member-session-list form,.member-order-list form{display:flex;gap:7px;align-items:center;min-width:min(360px,46%)}.member-session-list form input,.member-order-list form input{min-width:0}.member-tag-list{display:flex;flex-wrap:wrap;gap:7px}.member-tag-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 7px 5px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 11%,var(--surface));color:var(--accent);font-size:11px;font-weight:780}.member-tag-chip form{display:inline}.member-tag-chip button{border:0;background:transparent;color:inherit;cursor:pointer;padding:0 3px;font-weight:900}.member-mini-form{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;margin-top:10px}.member-note-list{max-height:310px;overflow:auto}.member-note-list article{padding:10px 0;border-bottom:1px solid var(--line)}.member-note-list article:last-child{border-bottom:0}.member-note-list p{margin:4px 0;font-size:12px}.member-note-list small{color:var(--muted);font-size:10px}.member-job-card{padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2)}.member-job-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.member-job-head>div{min-width:0}.member-job-head b{display:block;max-width:760px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-job-head p{margin:4px 0;font-size:11px}.member-job-head small{color:var(--muted);font-size:10px}.member-reveal-form{display:flex;gap:8px;margin-top:12px}.member-reveal-form input{flex:1}.member-reveal-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.member-reveal-gallery img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.privacy-warning{display:block;color:var(--danger);margin-top:7px;font-size:10px}.notes-grid{margin-top:14px}.security-message-actions{margin-top:12px}
@media(max-width:1150px){.member-admin-stats{grid-template-columns:repeat(3,1fr)}.member-readonly-grid{grid-template-columns:repeat(2,1fr)}.member-admin-action-grid{grid-template-columns:1fr 1fr}.member-reveal-gallery{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.member-admin-hero{flex-direction:column}.member-admin-hero-actions{justify-content:flex-start}.member-admin-stats,.member-admin-two-col,.member-admin-action-grid,.member-readonly-grid{grid-template-columns:1fr}.member-inline-danger,.member-reveal-form,.member-session-list>article,.member-order-list>article{flex-direction:column}.member-session-list form,.member-order-list form{min-width:0;width:100%}.member-mini-form{grid-template-columns:1fr}.member-reveal-gallery{grid-template-columns:repeat(2,1fr)}.member-admin-jump{top:72px}}

.member-tag-chip-manage{display:grid;width:100%;grid-template-columns:auto minmax(190px,1fr);gap:9px;border-radius:12px;padding:8px 10px}.member-tag-chip-manage form{display:grid;grid-template-columns:minmax(120px,1fr) auto;gap:6px;align-items:center}.member-tag-chip-manage input{padding:8px 10px;font-size:11px}.member-tag-chip-manage .button{padding:8px 10px}@media(max-width:620px){.member-tag-chip-manage,.member-tag-chip-manage form{grid-template-columns:1fr}}

.member-permission-note{padding:14px;border:1px dashed var(--line);border-radius:14px;background:var(--surface-2);color:var(--muted);font-size:12px;line-height:1.6}

/* Member visual generation history */
.job-thumbnail{position:relative;flex:0 0 auto;overflow:hidden;display:grid;place-items:center;border:1px solid var(--line);background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 10%,var(--surface-2)),var(--surface-2));color:var(--accent)}
.job-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}
.dashboard-job-thumbnail{width:50px;height:50px;border-radius:12px}
.history-job-thumbnail{width:72px;height:72px;border-radius:14px}
.job-thumbnail-placeholder{font-size:18px;font-weight:850;opacity:.8}
.job-thumbnail-count{position:absolute;right:5px;bottom:5px;min-width:24px;padding:3px 6px;border-radius:999px;background:rgba(8,9,15,.78);color:#fff;font-size:10px;font-weight:850;text-align:center;box-shadow:0 3px 12px rgba(0,0,0,.2)}
.dashboard-history-list{gap:9px}
.dashboard-job-card{display:flex;align-items:center;gap:13px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);transition:.16s ease}
.dashboard-job-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 42%,var(--line));background:color-mix(in srgb,var(--accent) 3%,var(--surface))}
.dashboard-job-copy{min-width:0;flex:1}
.dashboard-job-copy b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.dashboard-job-copy p{display:flex;align-items:center;gap:7px;margin:4px 0 0;font-size:11px}
.dashboard-job-card time{flex:0 0 auto;font-size:10px;color:var(--muted)}
.visual-history-list .history-card{align-items:center;gap:16px;padding:14px 16px;transition:.16s ease}
.visual-history-list .history-card:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 2.5%,var(--surface))}
.history-entry-link{min-width:0;display:flex;align-items:center;gap:15px;flex:1}
.history-entry-link .history-main{min-width:0;flex:1}
.history-entry-link .split.mini{align-items:center}
.history-entry-link .badge{gap:6px}
.history-entry-link .status-dot{width:7px;height:7px}
.visual-history-list .prompt-history{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:6px 0!important}
.visual-history-list .history-actions{position:relative;z-index:2;flex:0 0 auto;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.visual-history-list .history-actions form{display:inline-flex}
.visual-history-list .history-actions a,.visual-history-list .history-actions button{border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:760;padding:8px;cursor:pointer;border-radius:9px}
.visual-history-list .history-actions a:hover,.visual-history-list .history-actions button:hover{background:var(--surface-2);color:var(--accent)}
.visual-history-list .history-actions .history-detail-action{color:var(--accent)}
.visual-history-list .history-actions .danger-link:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,var(--surface))}
.back-link{display:inline-flex;margin:3px 0 22px;color:var(--muted);font-size:13px;font-weight:750}
.back-link:hover{color:var(--accent)}
.job-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px}
.job-detail-header .page-title{margin:8px 0 4px}
.job-detail-header p{margin:0}
.job-detail-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.job-detail-header-actions form{display:inline-flex}
.job-detail-header-actions .badge{gap:6px}
.job-detail-section{margin-top:24px}
.job-detail-section-heading{margin-top:0;margin-bottom:15px}
.job-detail-section-heading h2{font-size:30px;margin:5px 0 0}
.job-result-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.job-result-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.job-result-card>a{display:block;background:var(--surface-2)}
.job-result-card img{display:block;width:100%;max-height:640px;min-height:260px;object-fit:contain}
.job-result-card>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;font-size:12px;color:var(--muted)}
.job-result-card>div a{color:var(--accent);font-weight:800}
.job-media-empty{background:var(--surface)}
.job-detail-columns{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:16px;margin-top:18px}
.job-detail-panel{margin-top:16px;padding:24px}
.job-detail-panel h2{margin:7px 0 15px;font-size:24px}
.job-detail-prompt{margin:0 0 18px;color:var(--text);font-size:16px;white-space:pre-wrap}
.job-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.job-meta-grid>div,.job-timeline>div{padding:12px 13px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);min-width:0}
.job-meta-grid dt,.job-timeline dt{color:var(--muted);font-size:10px;font-weight:750}
.job-meta-grid dd,.job-timeline dd{margin:5px 0 0;font-size:13px;font-weight:760;overflow-wrap:anywhere}
.job-id-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px!important}
.input-history-panel p{margin-bottom:0}
.job-input-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.job-input-gallery img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}
.job-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}
@media(max-width:980px){.visual-history-list .history-card{align-items:flex-start;flex-direction:column}.visual-history-list .history-actions{width:100%;justify-content:flex-start;padding-left:87px}.job-detail-columns{grid-template-columns:1fr}.job-result-card img{min-height:220px}.job-input-gallery{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.dashboard-job-card{align-items:flex-start}.dashboard-job-card time{display:none}.history-entry-link{align-items:flex-start}.history-job-thumbnail{width:62px;height:62px}.visual-history-list .history-actions{padding-left:77px}.job-detail-header{flex-direction:column}.job-detail-header-actions{justify-content:flex-start}.job-result-gallery{grid-template-columns:1fr}.job-meta-grid,.job-timeline{grid-template-columns:1fr}.job-result-card img{min-height:180px}.job-input-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:460px){.visual-history-list .history-card{padding:13px}.history-entry-link{gap:11px}.history-job-thumbnail{width:56px;height:56px}.visual-history-list .history-actions{padding-left:0}.visual-history-list .history-actions .history-detail-action{width:100%}.job-detail-panel{padding:18px}.dashboard-job-thumbnail{width:46px;height:46px}}
.job-result-card>div .job-result-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.job-result-card>div .job-result-links a{color:var(--accent);font-weight:800}

/* GPT Image Mod */
.gpt-image-workspace .optional-upload-zone{min-height:190px}.reference-role-guide{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}.reference-role-guide span{padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:11px}.reference-role-guide b{color:var(--text)}.prompt-template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.prompt-template-grid button{display:grid;gap:3px;text-align:left;border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:12px;padding:10px;cursor:pointer}.prompt-template-grid button:hover{border-color:var(--accent)}.prompt-template-grid b{font-size:12px}.prompt-template-grid span{font-size:10px;color:var(--muted)}.single-model-grid{grid-template-columns:1fr}.quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.quality-grid button{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);border-radius:10px;padding:9px 10px;cursor:pointer;font-size:12px;font-weight:760}.quality-grid button.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--surface))}.quality-grid button:disabled{opacity:.38;cursor:not-allowed}.gpt-preview-card{padding-bottom:8px}.gpt-preview-meta{display:grid;gap:6px;padding:7px 7px 0}.gpt-preview-meta small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.image-role-select{width:100%;padding:6px 7px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:10px}.image-role-main{display:block;padding:6px 7px;border-radius:8px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);font-size:10px;font-weight:800;text-align:center}.preview-remove{position:absolute!important;right:6px;top:6px}
@media(max-width:800px){.prompt-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.prompt-template-grid{grid-template-columns:1fr}}

/* GPT Image: recommendation badges and clearer quality/size guidance. */
.gpt-image-workspace .resolution-grid button,
.gpt-image-workspace .quality-grid button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:42px;position:relative}
.gpt-image-workspace .option-recommended{display:inline-flex;padding:2px 5px;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);font-size:8px;font-weight:850;line-height:1.2}
.gpt-image-workspace .resolution-grid button.active .option-recommended,
.gpt-image-workspace .quality-grid button.active .option-recommended{background:var(--accent);color:#fff}
.cost-settlement-note{margin:-7px 2px 14px;color:var(--muted);font-size:10px;line-height:1.55}
.tool-category{display:block;margin:-2px 0 7px;color:var(--accent);font-size:11px;font-weight:800}
.tool-capability{display:block;margin:9px 0;color:var(--muted);font-size:11px;line-height:1.5}
.provider-purpose{margin:7px 0 0;max-width:620px;font-size:12px}
.admin-tool-copy{margin:5px 0 0;max-width:720px}
.admin-tool-capability{display:inline-flex;margin-top:7px;padding:5px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:10px;font-weight:760}

/* Admin-only cost visibility */
.admin-cost-stats article small{display:block;margin-top:6px;color:var(--muted);font-size:10px;line-height:1.45}.admin-cost-compare{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-jobs-table table{min-width:1450px}.admin-jobs-table td{vertical-align:middle}.admin-jobs-table code{font-size:11px;color:var(--accent)}.cost-diff{font-weight:800}.cost-diff.positive{color:var(--danger)}.cost-diff.negative{color:var(--success)}.cost-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.cost-highlight-panel{border-color:color-mix(in srgb,var(--accent) 42%,var(--line))}.cost-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 18px}.cost-kpi-grid article,.usage-grid article{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:15px}.cost-kpi-grid span,.usage-grid span,.detail-list span{display:block;color:var(--muted);font-size:11px}.cost-kpi-grid b{display:block;font-size:22px;margin:5px 0}.cost-kpi-grid small{color:var(--muted);font-size:10px}.detail-list{display:grid;gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:14px 0}.detail-list>div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:11px 13px;border-bottom:1px solid var(--line);background:var(--surface-2)}.detail-list>div:last-child{border-bottom:0}.detail-list.compact>div{padding:9px 12px}.usage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.usage-grid b{display:block;font-size:19px;margin-top:5px}.prompt-admin-box{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);white-space:pre-wrap;line-height:1.65;font-size:13px}.provider-dashboard-alert span{display:block;margin:4px 0}.provider-dashboard-alert a{color:inherit;font-weight:800}@media(max-width:900px){.cost-detail-grid{grid-template-columns:1fr}.cost-kpi-grid{grid-template-columns:1fr}.admin-cost-compare{grid-template-columns:1fr}}@media(max-width:620px){.usage-grid{grid-template-columns:1fr}.detail-list>div{grid-template-columns:1fr;gap:4px}}

/* AI task cost table: keep compact operational fields on one line and let the panel scroll horizontally. */
.admin-jobs-table{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-gutter:stable}
.admin-jobs-table table{min-width:1780px;table-layout:fixed}
.admin-jobs-table th{white-space:nowrap;word-break:keep-all;line-height:1.25}
.admin-jobs-table td{vertical-align:middle;line-height:1.4}
.admin-jobs-table td.nowrap-cell{white-space:nowrap;word-break:keep-all}
.admin-jobs-table .member-cell,.admin-jobs-table .tool-cell{white-space:nowrap;word-break:keep-all}
.admin-jobs-table .member-cell b,.admin-jobs-table .member-cell small,.admin-jobs-table .tool-cell small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-jobs-table .tool-cell .badge{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-jobs-table .version-cell{overflow:hidden;text-overflow:ellipsis}
.admin-jobs-table .cost-cell{font-variant-numeric:tabular-nums}
.admin-jobs-table .jobs-column-widths .col-task{width:88px}
.admin-jobs-table .jobs-column-widths .col-member{width:150px}
.admin-jobs-table .jobs-column-widths .col-tool{width:150px}
.admin-jobs-table .jobs-column-widths .col-resolution{width:92px}
.admin-jobs-table .jobs-column-widths .col-status{width:94px}
.admin-jobs-table .jobs-column-widths .col-success{width:70px}
.admin-jobs-table .jobs-column-widths .col-points{width:78px}
.admin-jobs-table .jobs-column-widths .col-cost{width:112px}
.admin-jobs-table .jobs-column-widths .col-difference{width:112px}
.admin-jobs-table .jobs-column-widths .col-sync{width:104px}
.admin-jobs-table .jobs-column-widths .col-version{width:190px}
.admin-jobs-table .jobs-column-widths .col-time{width:150px}
.admin-jobs-table .jobs-column-widths .col-action{width:82px}
.billing-sync-summary{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;margin-bottom:16px}.billing-sync-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.billing-sync-settings-grid .panel{margin-bottom:0}.billing-last-run{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);margin:12px 0}.billing-last-run b,.billing-last-run p,.billing-last-run small{display:block}.billing-last-run p{margin:5px 0;font-size:12px}.billing-daily-table table{min-width:900px}.billing-runs-table table{min-width:760px}.billing-sync-page .provider-key-state{text-align:right}.billing-sync-page .provider-key-state small,.billing-sync-page .provider-key-state strong{display:block}.billing-sync-page .admin-info-banner a{margin-left:auto;color:var(--accent);font-weight:800}.admin-info-banner a{margin-left:auto;color:var(--accent);font-weight:800;white-space:nowrap}@media(max-width:1000px){.billing-sync-summary,.billing-sync-settings-grid{grid-template-columns:1fr}}@media(max-width:620px){.billing-sync-page .provider-key-state{text-align:left}.billing-sync-page .split{align-items:flex-start;flex-direction:column}.admin-info-banner{align-items:flex-start;flex-direction:column}.admin-info-banner a{margin-left:0}}

/* Pricing plan comparison */
.plan-comparison-section{margin-top:72px}.plan-comparison-heading{margin-top:0;margin-bottom:18px;align-items:flex-end}.plan-comparison-heading h2{margin:8px 0 6px}.plan-comparison-heading p{margin:0}.plan-comparison-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:0 12px 34px rgba(25,22,70,.04)}.plan-comparison-table{min-width:720px;border-collapse:separate;border-spacing:0}.plan-comparison-table th,.plan-comparison-table td{padding:17px 20px;border-bottom:1px solid var(--line);text-align:center;white-space:nowrap}.plan-comparison-table thead th{position:sticky;top:0;background:var(--surface-2);font-size:12px;color:var(--text);text-transform:none;letter-spacing:0}.plan-comparison-table thead th:first-child,.plan-comparison-table tbody th{text-align:left}.plan-comparison-table tbody th{font-size:13px;color:var(--text);font-weight:780;background:color-mix(in srgb,var(--surface-2) 48%,var(--surface))}.plan-comparison-table tr:last-child th,.plan-comparison-table tr:last-child td{border-bottom:0}.plan-comparison-table td{font-size:13px;font-weight:720}.plan-comparison-table .comparison-yes{color:var(--success);font-size:17px}.plan-comparison-table .comparison-no{color:var(--muted)}.plan-comparison-note{margin:11px 4px 0;font-size:11px}

/* Per-tool recent generations */
.tool-recent-section{margin-top:34px;padding-top:30px;border-top:1px solid var(--line)}.tool-recent-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.tool-recent-head h2{font-size:28px;margin:7px 0 4px}.tool-recent-head p{margin:0;font-size:12px}.tool-recent-all{flex:0 0 auto;color:var(--accent);font-size:12px;font-weight:800;padding:9px 12px;border-radius:10px}.tool-recent-all:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.tool-recent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.tool-recent-card{min-width:0;display:flex;align-items:center;gap:13px;padding:12px;border:1px solid var(--line);border-radius:17px;background:var(--surface);transition:.16s ease}.tool-recent-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:color-mix(in srgb,var(--accent) 2.5%,var(--surface))}.tool-recent-thumbnail{width:68px;height:68px;border-radius:13px}.tool-recent-copy{min-width:0;flex:1}.tool-recent-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.tool-recent-title-row>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.tool-recent-title-row .badge{flex:0 0 auto;gap:5px}.tool-recent-title-row .status-dot{width:6px;height:6px}.tool-recent-copy>p{margin:5px 0;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool-recent-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px}.tool-recent-meta span{color:var(--accent);font-weight:800}.tool-recent-empty{display:flex;align-items:center;gap:13px;padding:22px;border:1px dashed var(--line);border-radius:17px;color:var(--muted)}.tool-recent-empty>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--accent) 9%,var(--surface));color:var(--accent)}.tool-recent-empty b{color:var(--text);font-size:13px}.tool-recent-empty p{margin:3px 0 0;font-size:11px}

/* Generation progress button */
.button.generation-busy{cursor:wait;opacity:.92}.generation-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.42);border-top-color:#fff;border-radius:50%;animation:generation-spin .72s linear infinite}@keyframes generation-spin{to{transform:rotate(360deg)}}

@media(max-width:900px){.tool-recent-grid{grid-template-columns:1fr}.plan-comparison-section{margin-top:50px}}
@media(max-width:620px){.tool-recent-head{align-items:flex-start}.tool-recent-head h2{font-size:24px}.tool-recent-thumbnail{width:58px;height:58px}.tool-recent-title-row{align-items:flex-start}.tool-recent-card{gap:10px;padding:10px}.plan-comparison-table{min-width:640px}.plan-comparison-table th,.plan-comparison-table td{padding:14px 16px}}

/* Prompt optimizer */
.prompt-optimizer-control{margin:10px 0 14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.prompt-optimizer-control>small{color:var(--muted);font-size:12px}.prompt-optimize-button{border:1px solid color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--text);border-radius:10px;padding:9px 13px;display:inline-flex;align-items:center;gap:7px;font-weight:700;cursor:pointer}.prompt-optimize-button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,var(--surface))}.prompt-optimizer-control.is-insufficient .prompt-optimize-button{opacity:.72;border-style:dashed}.prompt-optimize-button.is-loading{cursor:wait;opacity:.85}.prompt-optimizer-modal{position:fixed;inset:0;z-index:1200;background:rgba(10,12,20,.58);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px}.prompt-optimizer-modal.hidden{display:none}.prompt-optimizer-dialog{position:relative;width:min(560px,100%);max-height:min(78vh,760px);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.3)}.prompt-optimizer-dialog h3{margin:6px 0 10px}.prompt-modal-close{position:absolute;right:14px;top:12px;border:0;background:transparent;color:var(--muted);font-size:24px;cursor:pointer}.prompt-optimizer-result{white-space:pre-wrap;line-height:1.75;padding:16px;border:1px solid var(--border);background:var(--surface-2);border-radius:12px;margin:14px 0;max-height:48vh;overflow:auto}.prompt-optimizer-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}@media(max-width:640px){.prompt-optimizer-control{align-items:flex-start;flex-direction:column}.prompt-optimize-button{width:100%;justify-content:center}.prompt-optimizer-dialog{padding:20px 16px}.prompt-optimizer-actions{flex-direction:column-reverse}.prompt-optimizer-actions .button{width:100%;text-align:center}}
.history-tool-filter{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.history-tool-filter a{padding:8px 12px;border:1px solid var(--border);border-radius:999px;color:var(--muted);text-decoration:none}.history-tool-filter a.active{background:color-mix(in srgb,var(--accent) 12%,var(--surface));border-color:var(--accent);color:var(--text);font-weight:700}.prompt-history-icon{display:grid;place-items:center;font-size:28px;background:color-mix(in srgb,var(--accent) 9%,var(--surface-2))}.disabled-action{opacity:.55;cursor:not-allowed}.credit-snapshot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.credit-snapshot-grid article{border:1px solid var(--border);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:5px}.credit-snapshot-grid article>b{font-size:20px}.credit-snapshot-grid article>span{font-size:13px;color:var(--muted)}.credit-snapshot-grid .refund-text{color:var(--success,#2b9d66);font-weight:700}@media(max-width:720px){.credit-snapshot-grid{grid-template-columns:1fr}.history-tool-filter a{flex:1 1 42%;text-align:center}}
.provider-deepseek-config{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.provider-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.provider-config-grid label{display:flex;flex-direction:column;gap:6px}@media(max-width:720px){.provider-config-grid{grid-template-columns:1fr}}
.admin-nav-subsection{margin:2px 0}.admin-nav-subsection>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:9px;color:var(--muted);font-weight:650}.admin-nav-subsection>summary::-webkit-details-marker{display:none}.admin-nav-subsection[open]>summary,.admin-nav-subsection.active-group>summary{color:var(--text);background:color-mix(in srgb,var(--accent) 7%,transparent)}.admin-nav-sublinks{display:flex;flex-direction:column;gap:2px;margin:3px 0 5px 10px;padding-left:9px;border-left:1px solid var(--border)}.admin-nav-sublinks a{font-size:13px!important;padding:7px 9px!important}.admin-tool-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px}.admin-tool-overview-card{display:flex;flex-direction:column;gap:14px}.admin-tool-overview-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:13px}.admin-tool-code{font-family:ui-monospace,monospace;color:var(--muted);font-size:12px}.admin-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-settings-grid label,.tool-optimizer-profile-panel form>label{display:flex;flex-direction:column;gap:6px}.admin-form-actions{display:flex;gap:10px;margin-top:14px}.optimizer-test-box{border-top:1px solid var(--border);margin-top:20px;padding-top:18px}.optimizer-test-box textarea{width:100%;margin-bottom:10px}.optimizer-test-result{white-space:pre-wrap;line-height:1.6;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:12px;margin-top:10px}@media(max-width:900px){.admin-tool-overview-grid,.admin-settings-grid{grid-template-columns:1fr}}

/* Admin information architecture: lightweight nested groups */
.admin-nav-subsection{margin:5px 0 6px!important;padding:0!important;border:0!important;background:transparent!important}
.admin-nav-subsection>summary{min-height:auto!important;padding:7px 10px 6px!important;border-radius:0!important;background:transparent!important;border:0!important;color:var(--muted)!important;font-size:11px!important;font-weight:800!important;letter-spacing:.04em;text-transform:none}
.admin-nav-subsection>summary:hover{background:transparent!important;color:var(--text)!important}
.admin-nav-subsection.active-group>summary,.admin-nav-subsection[open]>summary{background:transparent!important;color:var(--muted)!important}
.admin-nav-subchevron{margin-left:auto;font-size:11px;opacity:.7;transition:transform .16s ease}
.admin-nav-subsection:not([open]) .admin-nav-subchevron{transform:rotate(-90deg)}
.admin-nav-sublinks{margin:2px 0 4px 10px!important;padding:0 0 0 10px!important;border-left:1px solid color-mix(in srgb,var(--accent) 22%,var(--line))!important;gap:2px!important}
.admin-nav-sublinks a{padding:7px 9px!important;border-radius:9px!important;font-size:12px!important}
.admin-nav-sublinks a:before{display:none!important}
.provider-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.provider-overview-card{display:flex;flex-direction:column;gap:16px;min-height:260px}
.provider-overview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.provider-overview-head h2{margin:9px 0 0}
.provider-overview-card>p{margin:0;color:var(--muted);line-height:1.7;min-height:48px}
.provider-overview-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}
.provider-overview-meta span{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.provider-overview-meta small{color:var(--muted);font-size:11px}.provider-overview-meta b{font-size:13px}
.optimizer-support-panel{margin-top:16px}.compact-grid{margin-bottom:0!important}.admin-mini-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}
.admin-mini-card>div{display:grid;gap:3px}.admin-mini-card small{color:var(--muted);font-family:ui-monospace,monospace}.admin-mini-card>a{grid-column:1/-1;font-size:12px;color:var(--accent);font-weight:800}
@media(max-width:900px){.provider-overview-grid{grid-template-columns:1fr}.provider-overview-card{min-height:0}}
@media(max-width:620px){.provider-overview-meta{grid-template-columns:1fr}}

/* v1.0.9 platform density system */
/* Public marketing pages stay spacious, but trim excess vertical whitespace. */
.public-area .section{padding-block:76px}
.public-area .section-heading{margin-bottom:30px}
.public-area .section-heading.compact{margin-top:42px;margin-bottom:14px}
.public-area .tool-card,.public-area .feature-grid article,.public-area .price-card,.public-area .case-grid article,.public-area .help-grid article{padding:24px;border-radius:20px}
.public-area .tool-icon{margin-bottom:26px}
.public-area .page-hero{padding-top:86px;padding-bottom:32px}
.public-area .final-cta{margin-block:76px;padding:46px;border-radius:26px}
.public-area .field{margin:15px 0}

/* Member AI workspace: medium density, keep creation controls comfortable. */
.app-area .app-main .workspace-shell{padding-top:28px;padding-bottom:50px}
.app-area .app-main .banana-workspace{padding-top:28px}
.app-area .workspace-head{gap:18px;margin-bottom:20px}
.app-area .workspace-head p{margin:4px 0;line-height:1.55}
.app-area .page-title{font-size:clamp(2rem,3.4vw,3.2rem);margin:6px 0}
.app-area .workspace-grid{grid-template-columns:minmax(0,1fr) 310px;gap:16px}
.app-area .panel,.app-area .settings-panel{padding:18px;border-radius:18px}
.app-area .settings-panel{top:84px}
.app-area .upload-zone{min-height:220px;border-radius:16px;padding:15px}
.app-area .optional-upload-zone{min-height:160px}
.app-area .upload-icon{width:46px;height:46px;border-radius:14px;font-size:22px}
.app-area .prompt-field{margin-top:18px}
.app-area .field{margin:14px 0}
.app-area input,.app-area textarea,.app-area select{padding:11px 12px;border-radius:11px}
.app-area textarea{min-height:110px}
.app-area .prompt-template-grid{margin-top:8px}
.app-area .result-grid{gap:11px;margin-top:14px}
.app-area .tool-recent-section{margin-top:24px;padding-top:22px}
.app-area .tool-recent-head{margin-bottom:12px}
.app-area .tool-recent-card{padding:10px;border-radius:14px}
.app-area .tool-recent-empty{padding:16px;border-radius:14px}
.app-area .history-tool-filter{margin:10px 0}
.app-area .visual-history-list .history-card{padding:12px 14px;gap:13px}
.app-area .job-detail-panel{padding:18px;margin-top:12px}
.app-area .job-detail-section-heading{margin-bottom:10px}
.app-area .job-detail-section-heading h2{font-size:24px}
.app-area .credit-snapshot-grid article{padding:11px}

/* Admin: high information density for operational work. */
.admin-area .admin-topbar{height:62px;padding-inline:22px}
.admin-area main{min-height:calc(100vh - 62px)}
.admin-area .admin-layout{grid-template-columns:205px minmax(0,1fr);gap:22px;width:min(1500px,calc(100% - 28px));padding:22px 0 48px}
.admin-area .admin-nav{top:76px;max-height:calc(100vh - 92px);gap:7px;padding-right:3px}
.admin-area .admin-nav-section>summary{min-height:38px;padding:8px 10px;border-radius:10px;font-size:12px}
.admin-area .admin-nav-links{gap:1px;padding:4px 0 2px 26px}
.admin-area .admin-nav-links a{padding:7px 9px!important;border-radius:8px!important;font-size:12px!important}
.admin-area .admin-nav-subsection{margin:2px 0 3px!important}
.admin-area .admin-nav-subsection>summary{padding:5px 8px!important}
.admin-area .admin-nav-sublinks{margin:1px 0 3px 8px!important;padding-left:8px!important}
.admin-area .admin-nav-sublinks a{padding:6px 8px!important}
.admin-area .admin-page{min-width:0}
.admin-area .admin-page-head,.admin-area .workspace-head{gap:18px;margin-bottom:16px}
.admin-area .workspace-head{align-items:flex-start}
.admin-area .workspace-head p,.admin-area .admin-page-head p{margin:3px 0;line-height:1.5;font-size:13px}
.admin-area .page-title{font-size:clamp(1.9rem,3vw,3rem);line-height:1.04;margin:5px 0 7px}
.admin-area .eyebrow{font-size:10px}
.admin-area .panel{padding:16px;border-radius:16px;margin-bottom:12px}
.admin-area .section-heading{margin-bottom:16px}
.admin-area .section-heading.compact{align-items:flex-start;margin:0 0 12px}
.admin-area .section-heading h2{font-size:clamp(1.3rem,2vw,1.75rem);margin:3px 0 4px}
.admin-area .section-heading p{font-size:12px;line-height:1.5;margin:2px 0}
.admin-area p{line-height:1.55}
.admin-area .field{margin:12px 0}
.admin-area input,.admin-area textarea,.admin-area select{padding:10px 11px;border-radius:10px}
.admin-area textarea{min-height:92px}
.admin-area .tool-optimizer-profile-panel textarea[name="system_prompt"]{height:150px;min-height:130px}
.admin-area .button{padding:9px 14px;border-radius:11px}
.admin-area .button.small{padding:7px 11px;font-size:12px}
.admin-area .inline-admin-form{gap:8px}
.admin-area .admin-settings-grid{gap:9px}
.admin-area .admin-form-actions{gap:8px;margin-top:10px}
.admin-area .optimizer-test-box{margin-top:14px;padding-top:14px}
.admin-area .optimizer-test-box h3{margin-bottom:4px}
.admin-area .optimizer-test-box p{margin:4px 0 9px}
.admin-area .optimizer-test-box textarea{min-height:80px;height:90px;margin-bottom:8px}
.admin-area .admin-tool-overview-grid{gap:10px;margin-bottom:12px}
.admin-area .admin-tool-overview-card{gap:10px}
.admin-area .admin-mini-card{padding:11px;border-radius:11px;gap:6px 10px}
.admin-area .resolution-pricing-grid{gap:9px;margin-top:11px}
.admin-area .pricing-mini-card{padding:11px;border-radius:11px;gap:7px}
.admin-area .pricing-mini-card button{padding:8px;border-radius:9px}
.admin-area .model-pricing-panel>.split{gap:10px}
.admin-area .model-pricing-panel>.split p{margin:4px 0;font-size:12px}
.admin-area .model-pricing-panel>.split form{display:grid;grid-template-columns:150px minmax(190px,1fr) auto;gap:7px;align-items:center;min-width:min(520px,52%)}
.admin-area .model-pricing-panel>.split form button{min-height:38px}
.admin-area .stats{gap:9px;margin:14px 0}
.admin-area .stats article{padding:13px}
.admin-area .cost-kpi-grid{gap:8px;margin:10px 0 13px}
.admin-area .cost-kpi-grid article,.admin-area .usage-grid article{padding:11px;border-radius:11px}
.admin-area .detail-list{margin:10px 0;border-radius:11px}
.admin-area .detail-list>div{padding:8px 11px}
.admin-area .provider-settings-card{gap:14px}
.admin-area .provider-overview-grid{gap:10px}
.admin-area .provider-overview-card{gap:11px;min-height:0;padding:16px}
.admin-area .provider-overview-meta{gap:7px}
.admin-area .billing-sync-summary,.admin-area .billing-sync-settings-grid{gap:10px;margin-bottom:12px}
.admin-area .billing-last-run{padding:11px;margin:9px 0}
.admin-area .member-admin-hero{gap:16px;margin-bottom:12px}
.admin-area .member-admin-stats{gap:8px;margin:12px 0}
.admin-area .member-admin-jump{margin:11px 0 14px;padding:6px;border-radius:12px}
.admin-area .member-admin-section{padding:18px;margin-bottom:12px}
.admin-area .member-readonly-grid{gap:8px;margin-top:11px}
.admin-area .member-admin-two-col{gap:10px}
.admin-area .member-admin-action-grid{gap:9px;margin-top:10px}
.admin-area .member-action-card{padding:12px;border-radius:12px;gap:7px}
.admin-area .member-subtitle{margin:15px 0 8px}
.admin-area .job-detail-panel{padding:16px;margin-top:12px}
.admin-area .admin-info-banner{padding:11px 13px}

/* Compact model/provider identity used across prompt optimizer admin pages. */
.admin-model-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:8px;color:var(--muted);font-size:11px}
.admin-model-meta span{display:inline-flex;align-items:center;min-height:26px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2)}
.admin-model-meta code{color:var(--text);font-size:11px}
.admin-kpi-compact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.admin-kpi-compact-grid article{display:grid;gap:3px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);min-width:0}
.admin-kpi-compact-grid small,.admin-kpi-compact-grid span{color:var(--muted);font-size:10px;line-height:1.4}
.admin-kpi-compact-grid b{font-size:14px;overflow-wrap:anywhere}
.cost-rule-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

@media(max-width:1050px){
  .app-area .workspace-grid{grid-template-columns:1fr}
  .admin-area .admin-layout{grid-template-columns:185px minmax(0,1fr);gap:16px}
  .admin-area .model-pricing-panel>.split form{min-width:0;width:100%;grid-template-columns:1fr 1fr auto}
  .admin-kpi-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .admin-area .admin-layout{display:block;width:min(100% - 24px,1180px);padding-top:14px}
  .admin-area .admin-nav{position:static;max-height:none;margin-bottom:16px}
}
@media(max-width:620px){
  .public-area .section{padding-block:54px}
  .public-area .page-hero{padding-top:62px}
  .public-area .final-cta{margin-block:54px;padding:32px 24px}
  .app-area .app-main .workspace-shell,.app-area .app-main .banana-workspace{padding-top:22px;padding-bottom:38px}
  .app-area .panel,.app-area .settings-panel{padding:15px}
  .admin-area .admin-topbar{height:58px;padding-inline:14px}
  .admin-area .panel{padding:13px;border-radius:13px}
  .admin-area .page-title{font-size:2rem}
  .admin-area .model-pricing-panel>.split form{grid-template-columns:1fr}
  .admin-area .tool-optimizer-profile-panel textarea[name="system_prompt"]{height:130px}
  .admin-kpi-compact-grid,.cost-rule-grid{grid-template-columns:1fr}
}

/* AI 去背：批次工作台 */
.remove-bg-workspace .workspace-grid{align-items:start}
.remove-bg-preview-list{display:grid;gap:10px;margin:12px 0 18px}
.remove-bg-preview-card{display:grid;grid-template-columns:72px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.remove-bg-preview-card>img{width:72px;height:72px;object-fit:cover;border-radius:10px;background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 50%/16px 16px}
.remove-bg-preview-copy{display:grid;gap:4px;min-width:0}.remove-bg-preview-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remove-bg-preview-copy small{color:var(--muted)}
.remove-bg-per-image-setting{display:flex;gap:6px;align-items:center}.remove-bg-per-image-setting select{min-width:90px}.remove-bg-per-image-setting input[type=color]{width:42px;height:34px;padding:2px}
.remove-bg-background-panel{margin-top:10px;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.remove-bg-color-row,.remove-bg-inline-color{display:flex;gap:8px;align-items:center;margin-top:10px}.remove-bg-color-row input[type=color],.remove-bg-inline-color input[type=color]{width:46px;height:36px;padding:2px}.remove-bg-color-row input[type=text],.remove-bg-inline-color input[type=text]{max-width:130px}
.remove-bg-advanced{margin-top:12px;border-top:1px solid var(--border);padding-top:10px}.remove-bg-advanced summary{cursor:pointer;font-weight:700}.toggle-row{display:flex;gap:8px;align-items:center;margin-top:10px}
.remove-bg-limit-summary{display:flex;justify-content:space-between;gap:8px;padding:10px 0;color:var(--muted)}.remove-bg-limit-summary b{color:var(--text)}
.remove-bg-results{display:grid;gap:14px;margin-top:16px}.remove-bg-result-card{border:1px solid var(--border);border-radius:16px;padding:14px;background:var(--surface)}.remove-bg-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.remove-bg-result-head>div{display:flex;align-items:center;gap:8px;min-width:0}.remove-bg-result-head b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.remove-bg-compare{position:relative;overflow:hidden;border-radius:14px;aspect-ratio:4/3;background:#f5f5f5}.remove-bg-compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.remove-bg-after-wrap{position:absolute;inset:0;overflow:hidden;background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 50%/20px 20px}.remove-bg-after-wrap img{max-width:none}.remove-bg-compare-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:5}.remove-bg-compare-line{position:absolute;top:0;bottom:0;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.18);z-index:4;pointer-events:none}.remove-bg-compare-label{position:absolute;top:10px;z-index:4;padding:4px 7px;border-radius:8px;background:rgba(0,0,0,.6);color:white;font-size:12px}.remove-bg-compare-label.before{left:10px}.remove-bg-compare-label.after{right:10px}
.remove-bg-result-controls{display:grid;gap:10px;margin-top:12px}.remove-bg-card-actions,.remove-bg-result-actions{display:flex;gap:8px;flex-wrap:wrap}.remove-bg-result-actions{margin-top:14px}.remove-bg-result-error{padding:12px;border-radius:10px;background:color-mix(in srgb,#ef4444 9%,transparent);color:#ef4444}.segmented.compact button{padding:7px 10px}
@media (max-width:720px){.remove-bg-preview-card{grid-template-columns:56px minmax(0,1fr) auto}.remove-bg-preview-card>img{width:56px;height:56px}.remove-bg-per-image-setting{grid-column:2/-1}.remove-bg-result-head{align-items:flex-start;flex-direction:column}}
.billing-overview-actions{margin-bottom:12px}.billing-overview-actions .split{align-items:center}.billing-overview-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px}.billing-unsynced-kpi{border-color:color-mix(in srgb,var(--accent) 30%,var(--line))!important}.billing-unsynced-link{display:inline-flex;padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger);font-weight:800}.billing-unsynced-link.is-clear{background:color-mix(in srgb,var(--success) 10%,var(--surface));color:var(--success)}.billing-provider-overview table{min-width:980px}@media(max-width:1100px){.billing-overview-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.billing-overview-kpis{grid-template-columns:1fr}}
.billing-capability-table{min-width:1180px}.billing-na,.billing-empty{color:var(--muted)}.billing-stale{display:block;margin-top:4px;color:var(--warning,#b7791f)}.billing-v2-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.billing-v2-status-grid article{margin:0}.billing-v2-status-grid small,.billing-v2-status-grid b,.billing-v2-status-grid span{display:block}.billing-v2-status-grid b{margin-top:5px}.billing-v2-status-grid span{margin-top:5px;color:var(--muted)}.billing-information-note{display:flex;align-items:center;gap:10px;margin-bottom:12px}.billing-information-note p{margin:0}.billing-capability-card{margin-bottom:12px}.billing-capability-card table{min-width:720px}@media(max-width:1188px){.billing-capability-table{min-width:1080px}.billing-v2-status-grid{gap:10px}}@media(max-width:1024px){.billing-v2-status-grid{grid-template-columns:1fr}.billing-information-note{align-items:flex-start}}
.job-tool-filter{display:flex;align-items:center;gap:10px;min-height:46px;margin:0 0 12px;padding:7px 10px;border:1px solid var(--line);border-radius:13px;background:var(--surface);overflow:hidden}.job-tool-filter-label{white-space:nowrap;color:var(--muted);font-size:11px;font-weight:800}.job-tool-filter-buttons{display:flex;gap:7px;overflow-x:auto;scrollbar-width:thin;padding:1px}.job-tool-filter-buttons a{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:8px 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:12px;font-weight:750;background:var(--surface-2)}.job-tool-filter-buttons a:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));color:var(--text)}.job-tool-filter-buttons a.active{background:color-mix(in srgb,var(--accent) 13%,var(--surface));border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 8%,transparent)}@media(max-width:720px){.job-tool-filter{align-items:flex-start;flex-direction:column}.job-tool-filter-buttons{width:100%}}
.admin-jobs-table .admin-prompt-cell{max-width:260px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Admin task centre: summary data stays readable without relying on a wide scroll table. */
.admin-task-center{container-type:inline-size;overflow:visible}.admin-task-center table{width:100%;min-width:0;table-layout:fixed}.admin-task-center th,.admin-task-center td{min-width:0;padding:11px 9px}.admin-task-center th:nth-child(1){width:76px}.admin-task-center th:nth-child(2){width:128px}.admin-task-center th:nth-child(3){width:88px}.admin-task-center th:nth-child(5){width:100px}.admin-task-center th:nth-child(7){width:82px}.admin-task-center th:nth-child(8){width:66px}.admin-task-center th:nth-child(9){width:116px}.admin-task-center th:nth-child(10){width:62px}.admin-task-identity,.admin-task-project,.admin-task-cost{overflow-wrap:anywhere}.admin-task-id,.admin-task-email,.admin-task-project>b,.admin-task-preview,.admin-task-cost small{display:block}.admin-task-id{font-size:12px}.admin-task-email,.admin-task-preview,.admin-task-cost small{margin-top:3px;color:var(--muted);font-size:11px;line-height:1.35}.admin-task-preview{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.admin-task-product-type{display:none}.admin-task-center .admin-task-cost{font-variant-numeric:tabular-nums}.admin-task-center .admin-task-action{white-space:nowrap}
@container (max-width:1110px){.admin-task-center .admin-task-product,.admin-task-center .admin-task-type{display:none}.admin-task-center .admin-task-product-type{display:table-cell}.admin-task-center .admin-task-project .admin-task-product-type{display:none}.admin-task-center .admin-task-product-type span{display:block}.admin-task-center th:nth-child(4){width:auto}.admin-task-center th:nth-child(6){width:88px}}
@container (max-width:820px){.admin-task-center table,.admin-task-center tbody,.admin-task-center tr,.admin-task-center td{display:block;width:100%}.admin-task-center thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.admin-task-center tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;padding:12px 0;border-bottom:1px solid var(--line)}.admin-task-center tr:last-child{border-bottom:0}.admin-task-center td{padding:0;border:0}.admin-task-center .admin-task-time{grid-column:1/-1;color:var(--muted);font-size:11px}.admin-task-center .admin-task-identity{grid-column:1}.admin-task-center .admin-task-project{grid-column:1/-1}.admin-task-center .admin-task-project .admin-task-product-type{display:grid;grid-template-columns:auto 1fr;gap:5px;margin-top:5px}.admin-task-center .admin-task-product-type{display:none}.admin-task-center .admin-task-status,.admin-task-center .admin-task-points,.admin-task-center .admin-task-cost,.admin-task-center .admin-task-action{width:auto;align-self:end}.admin-task-center .admin-task-status{grid-column:1}.admin-task-center .admin-task-points{grid-column:2}.admin-task-center .admin-task-cost{grid-column:1}.admin-task-center .admin-task-action{grid-column:2}.admin-task-center .admin-task-cost small{display:inline;margin:0 0 0 5px}}
@media(max-width:720px){.job-tool-filter{overflow:visible}.job-tool-filter-buttons{flex-wrap:wrap;overflow:visible}}

.manual-billing-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:12px}.manual-billing-month-picker{margin-bottom:12px}.manual-month-picker-actions{display:flex;align-items:center;gap:8px;min-width:min(360px,100%)}.manual-month-picker-actions input{margin:0}.manual-billing-overview small,.manual-billing-kpis span{display:block}.manual-billing-note{margin-bottom:12px}@media(max-width:900px){.manual-billing-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.manual-billing-kpis{grid-template-columns:1fr}.manual-month-picker-actions{width:100%;min-width:0}}

/* AI Object Eraser */
.object-eraser-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}.object-eraser-main{min-width:0}.object-eraser-upload{min-height:330px}.object-eraser-editor{display:grid;gap:14px}.object-eraser-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft)}.object-eraser-tool-group{display:flex;gap:6px;align-items:center}.object-eraser-tool-group button,.object-eraser-toolbar button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:10px;padding:8px 12px;cursor:pointer}.object-eraser-tool-group button.active{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent);color:var(--primary)}.object-eraser-toolbar button:disabled{opacity:.4;cursor:not-allowed}.object-eraser-brush-control{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.object-eraser-brush-control input{width:140px}.object-eraser-stage-wrap{display:grid;place-items:center;min-height:380px;padding:18px;border-radius:18px;background:linear-gradient(135deg,rgba(15,23,42,.04),rgba(99,102,241,.05));overflow:auto}.object-eraser-stage{position:relative;display:inline-block;width:min(100%,900px);max-height:72vh;overflow:hidden;border-radius:14px;box-shadow:0 18px 45px rgba(15,23,42,.12);background:#111;touch-action:none}.object-eraser-stage img{display:block;width:100%;height:100%;object-fit:contain}.object-eraser-stage canvas#object-eraser-overlay{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:none;opacity:.48}.object-eraser-editor-hint{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:13px}.object-eraser-mask-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:rgba(239,68,68,.7);margin-right:5px}.object-eraser-warning{padding:12px 14px;border-radius:14px;border:1px solid color-mix(in srgb,var(--warning, #f59e0b) 45%,transparent);background:color-mix(in srgb,var(--warning, #f59e0b) 14%,transparent);color:var(--text);font-size:13px;line-height:1.55}.object-eraser-settings{position:sticky;top:88px}.object-eraser-summary-card{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);display:grid;gap:4px}.object-eraser-summary-card span,.object-eraser-summary-card small,.object-eraser-summary-row span{color:var(--muted);font-size:13px}.object-eraser-summary-row{display:flex;justify-content:space-between;align-items:center;padding:12px 2px;border-bottom:1px solid var(--line)}.object-eraser-result{display:grid;gap:16px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.object-eraser-compare{position:relative;overflow:hidden;border-radius:16px;background:#111;min-height:280px;aspect-ratio:var(--object-eraser-ratio,4/3)}.object-eraser-compare>img,.object-eraser-after-wrap,.object-eraser-after-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.object-eraser-after-wrap{overflow:hidden;clip-path:inset(0 50% 0 0);background:#111}.object-eraser-compare>input[type=range]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:5}.object-eraser-compare-line{position:absolute;top:0;bottom:0;left:50%;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.25);z-index:4;pointer-events:none}.object-eraser-compare-label{position:absolute;top:12px;z-index:4;padding:5px 9px;border-radius:999px;background:rgba(15,23,42,.72);color:#fff;font-size:12px}.object-eraser-compare-label.before{left:12px}.object-eraser-compare-label.after{right:12px}.object-eraser-result-actions{display:flex;gap:10px;flex-wrap:wrap}.object-eraser-history-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.object-eraser-history-compare figure{margin:0}.object-eraser-history-compare img{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:14px;background:var(--surface-soft)}.object-eraser-history-compare figcaption{text-align:center;margin-top:8px;color:var(--muted);font-size:13px}
@media(max-width:900px){.object-eraser-grid{grid-template-columns:1fr}.object-eraser-settings{position:static}.object-eraser-stage-wrap{min-height:260px;padding:10px}.object-eraser-toolbar{align-items:flex-start}.object-eraser-brush-control{width:100%}.object-eraser-brush-control input{flex:1}.object-eraser-history-compare{grid-template-columns:1fr}}
.object-eraser-again-choice{display:grid;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.object-eraser-again-choice>span{color:var(--muted);font-size:13px}





.prompt-reverse-grid{display:grid;grid-template-columns:minmax(320px,620px) minmax(280px,330px);gap:22px;align-items:start;justify-content:space-between}.prompt-reverse-upload-square{aspect-ratio:1/1;width:100%;max-width:620px;padding:16px;border:1px solid var(--line);border-radius:22px;background:var(--surface);cursor:pointer;display:block}.prompt-reverse-upload-inner,.prompt-reverse-preview-shell{width:100%;height:100%;border:1.5px dashed color-mix(in srgb,var(--accent) 42%,var(--line));border-radius:18px;background:var(--surface-2);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:10px;position:relative;overflow:hidden}.prompt-reverse-upload-square.dragover .prompt-reverse-upload-inner,.prompt-reverse-upload-square.dragover .prompt-reverse-preview-shell{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 5%,var(--surface-2))}.prompt-reverse-preview{display:block;width:100%;height:100%;object-fit:contain;padding:12px}.prompt-reverse-preview-badge{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);padding:7px 11px;border-radius:999px;background:rgba(20,20,28,.72);color:#fff;font-size:12px;white-space:nowrap}.prompt-reverse-settings{position:sticky;top:88px}.prompt-reverse-result-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;align-items:start}.prompt-reverse-result-image{display:block;width:100%;max-height:640px;object-fit:contain;border-radius:18px;background:var(--surface-2)}.prompt-reverse-result-copy .job-detail-prompt{font-size:16px;white-space:pre-wrap}.prompt-reverse-analysis-grid article b{font-size:13px;line-height:1.55}@media(max-width:900px){.prompt-reverse-grid,.prompt-reverse-result-grid{grid-template-columns:1fr}.prompt-reverse-upload-square{max-width:none}.prompt-reverse-settings{position:static}}
.tool-skill-list{display:grid;gap:16px}.tool-skill-card{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2)}.tool-skill-card h3{margin:4px 0 4px}.tool-skill-card form{display:grid;gap:12px;margin-top:14px}.tool-skill-card textarea{min-height:170px}.skill-version-history{margin-top:14px}.skill-version-history summary{cursor:pointer;font-weight:700}.skill-version-row{display:grid;grid-template-columns:70px 90px 1fr;gap:10px;padding:10px 0;border-top:1px solid var(--line);align-items:center}.skill-version-row small{color:var(--muted)}

.copy-toast{position:fixed;top:20px;right:20px;z-index:9999;max-width:min(360px,calc(100vw - 32px));padding:11px 14px;border-radius:12px;background:rgba(20,25,36,.94);color:#fff;font-size:13px;font-weight:750;box-shadow:0 12px 34px rgba(15,23,42,.22);opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .18s ease,transform .18s ease}.copy-toast.show{opacity:1;transform:translateY(0)}.copy-toast.error{background:rgba(153,27,27,.95)}

/* AI 消除物件：文字指定模式 */
.object-eraser-text-upload{min-height:360px;position:relative;overflow:hidden;padding:16px}
.object-eraser-text-upload .upload-empty{min-height:326px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.source-remove-button{position:absolute;top:12px;right:12px;z-index:8;width:34px;height:34px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:999px;background:rgba(18,18,26,.78);color:#fff;font-size:22px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.2);backdrop-filter:blur(8px)}.source-remove-button:hover{background:rgba(35,35,48,.94);transform:translateY(-1px)}.source-remove-button:disabled{opacity:.38;cursor:not-allowed;transform:none}.source-remove-button.hidden{display:none}
.object-eraser-source-preview{width:100%;min-height:326px;display:grid;place-items:center;position:relative;border-radius:16px;overflow:hidden;background:var(--surface-2)}
.object-eraser-source-preview img{display:block;width:100%;height:100%;max-height:620px;object-fit:contain}
.object-eraser-source-meta{position:absolute;right:10px;bottom:10px;max-width:calc(100% - 20px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 9px;border-radius:999px;background:rgba(15,23,42,.72);color:#fff;font-size:11px;font-weight:700}
.object-eraser-description{margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}
.object-eraser-description label{display:block;margin-bottom:8px;font-size:14px;font-weight:850;color:var(--text)}
.object-eraser-description textarea{width:100%;min-height:104px;resize:vertical}
.object-eraser-description-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-top:8px;color:var(--muted);font-size:11px;line-height:1.5}
.object-eraser-description-foot small{max-width:82%}
.muted-note{margin:0;color:var(--muted);font-size:11px;line-height:1.6}
@media(max-width:620px){.object-eraser-text-upload{min-height:300px;padding:10px}.object-eraser-text-upload .upload-empty,.object-eraser-source-preview{min-height:280px}.object-eraser-description-foot{flex-direction:column;gap:5px}.object-eraser-description-foot small{max-width:none}}

/* Compatibility aliases used by newer member/admin components. */
:root{--border:var(--line);--primary:var(--accent);--surface-soft:var(--surface-2)}

/* AI 消除物件：讓排隊／處理狀態明確可見，並避免重複送出。 */
.object-eraser-submit[aria-busy="true"]{cursor:wait;opacity:.86;transform:none!important}
.object-eraser-submit-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:objectEraserSpin .75s linear infinite}
.job-status.processing{display:flex;align-items:center;gap:10px;padding:15px 16px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent);font-weight:760}
.job-status.processing:before{content:"";width:14px;height:14px;border:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-top-color:var(--accent);border-radius:50%;animation:objectEraserSpin .75s linear infinite;flex:0 0 auto}
@keyframes objectEraserSpin{to{transform:rotate(360deg)}}

/* 方案與點數會員區 */
.billing-member-tabs{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:6px 0 26px;padding:5px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}
.billing-member-tabs a{padding:9px 14px;border-radius:11px;color:var(--muted);font-size:13px;font-weight:760}
.billing-member-tabs a.active{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}
.credit-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.credit-summary-card h3{font-size:30px;margin:12px 0 8px}.credit-summary-card p{margin:0 0 4px}.credit-summary-card small{color:var(--muted)}
.workspace-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.purchase-history-list{display:grid;gap:12px}.purchase-history-card{display:flex;align-items:center;justify-content:space-between;gap:22px}.purchase-history-main h3{margin:9px 0 5px}.purchase-history-main p{margin:0 0 5px}.purchase-history-main small{color:var(--muted)}
.purchase-history-meta{display:grid;justify-items:end;gap:5px;min-width:190px}.purchase-history-meta span{color:var(--muted);font-size:12px}.purchase-history-meta b{font-size:20px}.purchase-detail-panel{max-width:860px}.membership-purchase-row{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(150px,1fr);gap:8px}.membership-purchase-row .button{height:100%}
@media(max-width:900px){.credit-summary-grid{grid-template-columns:1fr 1fr}.purchase-history-card{align-items:flex-start}.membership-purchase-row{grid-template-columns:1fr}}
@media(max-width:620px){.credit-summary-grid{grid-template-columns:1fr}.purchase-history-card{flex-direction:column}.purchase-history-meta{justify-items:start;min-width:0}.billing-member-tabs{overflow-x:auto;flex-wrap:nowrap}.billing-member-tabs a{white-space:nowrap}}

/* AI Expand */
.ai-expand-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.ai-expand-preview-card{margin:0;min-width:0}.ai-expand-preview-card img{display:block;width:100%;max-height:560px;object-fit:contain;border-radius:14px;background:var(--surface-soft)}.ai-expand-custom-ratio{display:flex;align-items:center;gap:8px;margin-top:10px}.ai-expand-custom-ratio input{width:88px}.ai-expand-workspace .object-eraser-source-meta{max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:800px){.ai-expand-compare-grid{grid-template-columns:1fr}}

/* Public image utilities */
.public-tools-shell{max-width:1180px;margin:0 auto;padding:48px 24px 72px}.public-tools-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;margin-bottom:28px}.public-tools-head.compact{margin-bottom:20px}.public-tools-head h1{font-size:clamp(32px,5vw,52px);margin:6px 0 10px}.public-tools-head p{max-width:720px}.utility-quota-card{min-width:260px;display:flex;flex-direction:column;gap:6px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.utility-quota-card span,.utility-quota-card a{font-size:13px}.utility-tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.utility-tool-card{display:flex;min-height:220px;flex-direction:column;gap:10px;padding:22px;border:1px solid var(--line);border-radius:22px;background:var(--panel);text-decoration:none;color:inherit}.utility-tool-card:hover{transform:translateY(-2px);border-color:var(--accent)}.utility-tool-card h2{font-size:20px;margin:2px 0}.utility-tool-card p{flex:1;color:var(--muted)}.utility-tool-icon{font-size:28px}.utility-breadcrumb{display:flex;gap:8px;align-items:center;margin-bottom:14px;font-size:14px}.utility-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:18px;align-items:start}.utility-upload-panel,.utility-settings-panel{padding:20px}.utility-dropzone{min-height:240px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;border:1.5px dashed var(--line);border-radius:20px;cursor:pointer;text-align:center}.utility-dropzone.dragover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.utility-dropzone input{display:none}.utility-drop-icon{font-size:34px}.utility-selected-summary{display:flex;justify-content:space-between;gap:16px;margin:16px 2px 8px}.utility-file-list{display:grid;gap:8px}.utility-file-row,.utility-result-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:14px}.utility-file-row div,.utility-result-row div{display:flex;min-width:0;flex-direction:column}.utility-file-row b,.utility-result-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.utility-settings-panel{display:grid;gap:16px}.utility-settings-panel label{display:grid;gap:8px}.utility-settings-panel select,.utility-settings-panel input[type=number]{width:100%}.utility-settings-panel input[type=range]{width:100%}.utility-status{padding:12px 14px;border-radius:12px;background:var(--soft)}.utility-status.error{background:color-mix(in srgb,#ef4444 14%,transparent)}.utility-status.success{background:color-mix(in srgb,#22c55e 14%,transparent)}.utility-results{margin-top:28px}.utility-result-list{display:grid;gap:10px}.utility-result-row{grid-template-columns:72px minmax(0,1fr) auto}.utility-result-row img{width:72px;height:72px;object-fit:cover;border-radius:12px;background:#fff}.button.tiny{padding:5px 8px;font-size:12px}.hidden{display:none!important}@media(max-width:900px){.utility-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.utility-layout{grid-template-columns:1fr}.public-tools-head{flex-direction:column}.utility-quota-card{width:100%}}@media(max-width:560px){.public-tools-shell{padding:30px 16px 56px}.utility-tool-grid{grid-template-columns:1fr}.utility-selected-summary{flex-direction:column;gap:4px}}
.app-sidebar-section-label{margin:12px 10px 4px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.12em}.utility-dashboard-heading{margin-top:34px}.app-utility-grid{margin-bottom:34px}
.utility-admin-metrics{margin-bottom:0}.utility-admin-checks{display:flex;flex-wrap:wrap;gap:12px 20px}.utility-admin-checks label{display:flex;align-items:center;gap:7px}.utility-admin-checks input[type=checkbox]{width:auto}.utility-member-summary{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.utility-member-summary h3{margin:6px 0 0}@media(max-width:900px){.utility-member-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
.remove-bg-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.remove-bg-history-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--panel)}.remove-bg-history-preview{min-height:280px;display:flex;align-items:center;justify-content:center;padding:16px;background:#fff}.remove-bg-history-preview.transparent{background:repeating-conic-gradient(#e7e7e7 0 25%,#fff 0 50%) 50%/22px 22px}.remove-bg-history-preview img{display:block;max-width:100%;max-height:420px;object-fit:contain}.remove-bg-history-copy{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 16px;border-top:1px solid var(--line)}.remove-bg-history-editor{display:grid;gap:12px;padding:16px;border-top:1px solid var(--line)}.remove-bg-history-editor p{margin:4px 0 0;font-size:13px;color:var(--muted)}.remove-bg-history-options{display:flex;flex-wrap:wrap;gap:8px}.choice-chip{border:1px solid var(--line);border-radius:999px;padding:8px 12px;background:transparent;color:inherit;cursor:pointer}.choice-chip.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.remove-bg-history-custom{display:flex;gap:10px;align-items:center}.remove-bg-history-custom input[type=color]{width:46px;height:38px;padding:2px}.remove-bg-history-custom input[type=text]{max-width:120px}.remove-bg-history-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}@media(max-width:800px){.remove-bg-history-grid{grid-template-columns:1fr}}

/* Public image utilities: select -> workspace -> complete flow */
.utility-page-head{align-items:center}.utility-stage{min-height:420px}.utility-select-stage{display:grid;place-items:center;padding:34px 0}.utility-select-card{width:min(720px,100%);text-align:center}.utility-dropzone-hero{min-height:360px;padding:44px 28px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--accent) 4%,var(--surface)));border-width:2px;box-shadow:0 18px 60px rgba(25,22,70,.05)}.utility-dropzone-hero b{font-size:24px}.utility-dropzone-hero small{font-size:14px}.utility-select-button{margin-top:12px;padding:14px 30px}.utility-select-limit{margin-top:14px;color:var(--muted);font-size:13px}.utility-editor-layout{grid-template-columns:minmax(0,1.7fr) minmax(310px,.68fr);gap:20px}.utility-files-panel{min-height:600px;padding:22px}.utility-files-panel.dragover{outline:2px dashed var(--accent);outline-offset:-10px;background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.utility-files-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.utility-files-toolbar h2,.utility-settings-panel h2{margin:6px 0 0;font-size:22px}.utility-file-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.utility-file-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:0 7px 22px rgba(20,20,50,.035)}.utility-file-thumb{position:relative;aspect-ratio:1/1;background:var(--surface-2);overflow:hidden}.utility-file-thumb img{display:block;width:100%;height:100%;object-fit:contain;padding:6px}.utility-file-remove{position:absolute;right:8px;top:8px;width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.6);border-radius:50%;background:rgba(20,20,30,.74);color:white;font-size:20px;line-height:1;cursor:pointer;backdrop-filter:blur(8px)}.utility-file-remove:hover{background:rgba(20,20,30,.92)}.utility-file-meta{display:grid;gap:4px;padding:11px 12px}.utility-file-meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.utility-file-meta small{color:var(--muted);font-size:11px}.utility-settings-panel{position:sticky;top:92px;padding:22px;gap:18px;border-radius:22px}.utility-settings-panel h2{margin-bottom:2px}.utility-setting-note{margin:0;font-size:12px}.utility-range-value{display:inline-flex;justify-self:end;padding:4px 8px;border-radius:999px;background:var(--surface-2);font-size:12px;font-weight:800;color:var(--accent)}.utility-compress-estimate{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}.utility-compress-estimate>div{display:grid;gap:4px;min-width:0}.utility-compress-estimate span{font-size:10px;color:var(--muted)}.utility-compress-estimate b{font-size:14px;overflow:hidden;text-overflow:ellipsis}.utility-compress-estimate>small{grid-column:1/-1;padding-top:4px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);line-height:1.45}.utility-start-button{margin-top:2px}.utility-complete-stage{display:grid;gap:18px}.utility-complete-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:22px 24px}.utility-complete-check{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--success) 13%,var(--surface));color:var(--success);font-weight:900;font-size:22px}.utility-complete-hero h2{margin:5px 0 0;font-size:25px}.utility-zip-button{padding-inline:24px}.utility-complete-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.utility-complete-summary article{display:grid;gap:6px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.utility-complete-summary span{font-size:12px;color:var(--muted)}.utility-complete-summary b{font-size:22px}.utility-result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.utility-result-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.utility-result-thumb{aspect-ratio:1/1;overflow:hidden;background:var(--surface-2)}.utility-result-thumb img{display:block;width:100%;height:100%;object-fit:contain}.utility-result-meta{display:grid;gap:4px;padding:11px 12px}.utility-result-meta b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.utility-result-meta small{font-size:11px;color:var(--muted)}.utility-result-card>a{margin:0 10px 10px;width:calc(100% - 20px)}.utility-continue-panel{padding:22px}.utility-continue-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.utility-continue-head h2{margin:6px 0 0;font-size:21px}.utility-continue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.utility-continue-grid a{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);transition:.15s ease}.utility-continue-grid a:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));transform:translateY(-1px)}.utility-continue-grid span{color:var(--accent);font-size:18px}.utility-continue-grid b{font-size:13px}.utility-file-grid:empty:after{content:"尚未加入圖片";grid-column:1/-1;min-height:320px;display:grid;place-items:center;color:var(--muted);border:1px dashed var(--line);border-radius:18px}
@media(max-width:1050px){.utility-file-grid,.utility-result-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.utility-editor-layout{grid-template-columns:minmax(0,1.45fr) minmax(290px,.75fr)}}
@media(max-width:820px){.utility-editor-layout{grid-template-columns:1fr}.utility-settings-panel{position:static}.utility-file-grid,.utility-result-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.utility-complete-hero{grid-template-columns:auto 1fr}.utility-complete-hero .utility-zip-button{grid-column:1/-1;width:100%}.utility-continue-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.utility-dropzone-hero{min-height:280px;padding:32px 20px}.utility-dropzone-hero b{font-size:20px}.utility-files-panel{min-height:420px;padding:14px}.utility-files-toolbar{align-items:flex-start}.utility-files-toolbar .button{padding:9px 11px;font-size:12px}.utility-file-grid,.utility-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.utility-compress-estimate,.utility-complete-summary{grid-template-columns:1fr}.utility-compress-estimate>small{grid-column:auto}.utility-complete-hero{padding:18px}.utility-complete-summary article{padding:14px}.utility-complete-summary b{font-size:18px}.utility-continue-head{align-items:flex-start;flex-direction:column}.utility-continue-grid{grid-template-columns:1fr}}

.utility-global-status{margin:-4px 0 16px}

/* v1 three-workspace navigation */
.app-topbar-left{display:flex;align-items:center;gap:12px;min-width:0}.app-topbar-left .brand{margin-right:0;flex:0 0 auto}.app-brand{padding-right:11px;border-right:1px solid var(--line)}
.app-menu{position:relative}.app-menu-trigger{border:1px solid transparent;background:transparent;color:var(--text);cursor:pointer;display:flex;align-items:center;gap:8px;border-radius:12px;min-height:38px;padding:8px 10px;font-weight:780;transition:.16s ease}.app-menu-trigger:hover,.app-menu.open .app-menu-trigger{background:var(--surface);border-color:var(--line)}.app-menu-chevron{color:var(--muted);font-size:12px;transition:transform .16s ease}.app-menu.open .app-menu-chevron{transform:rotate(180deg)}
.workspace-menu-trigger{min-width:172px;justify-content:space-between}.workspace-trigger-label{font-size:12px;white-space:nowrap}.app-dropdown-menu{position:absolute;z-index:120;top:calc(100% + 9px);padding:7px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 20px 55px rgba(20,20,55,.16);backdrop-filter:blur(20px)}.workspace-menu-panel{left:0;width:300px}.member-menu-panel{right:0;width:230px}.app-dropdown-menu>a,.app-dropdown-menu form button{width:100%;border:0;background:transparent;color:var(--text);display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:11px;text-align:left;cursor:pointer;font-size:12px;font-weight:730}.app-dropdown-menu>a:hover,.app-dropdown-menu form button:hover{background:var(--surface-2)}.workspace-menu-panel>a{display:grid;grid-template-columns:28px minmax(0,1fr) 18px;gap:10px;align-items:center}.workspace-menu-panel>a.active{background:color-mix(in srgb,var(--accent) 10%,var(--surface));color:var(--accent)}.workspace-menu-panel>a>span:nth-child(2){display:grid;gap:2px}.workspace-menu-panel small{font-size:10px;color:var(--muted);font-weight:600}.workspace-menu-panel i{font-style:normal;color:var(--accent);font-weight:900}.workspace-menu-icon{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 10%,var(--surface-2));color:var(--accent)}
.member-menu-trigger{padding:5px 8px 5px 5px}.member-menu-avatar{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);font-size:12px;font-weight:900}.member-menu-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.member-menu-summary{display:grid;gap:3px;padding:9px 11px 11px;border-bottom:1px solid var(--line);margin-bottom:5px}.member-menu-summary b{font-size:12px}.member-menu-summary small{color:var(--muted);font-size:10px}.app-menu-separator{height:1px;background:var(--line);margin:5px 4px}.app-dropdown-menu form{margin:0}.app-dropdown-menu form button span,.member-menu-panel>a span{width:18px;text-align:center;color:var(--muted)}
.app-sidebar-disabled{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;color:color-mix(in srgb,var(--muted) 72%,transparent);font-size:12px;font-weight:680;cursor:not-allowed}.app-sidebar-disabled>span{width:18px;text-align:center}.video-coming-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.video-coming-card{position:relative;min-height:220px;display:flex;flex-direction:column;gap:10px}.video-coming-card .badge{position:absolute;right:18px;top:18px}.video-coming-card h2{font-size:22px;margin:14px 0 0}.video-coming-card p{margin:0}.video-coming-card small{margin-top:auto;color:var(--muted)}
@media(max-width:1050px){.workspace-menu-trigger{min-width:150px}.member-menu-name{display:none}.member-menu-trigger{padding-right:6px}}
@media(max-width:820px){.app-topbar{gap:8px}.app-topbar-left{gap:7px}.app-brand>span:not(.brand-mark){display:none}.app-brand{padding-right:7px}.workspace-menu-trigger{min-width:0;padding-inline:8px}.workspace-menu-panel{left:-48px}.app-home-link{display:none!important}.video-coming-grid{grid-template-columns:1fr 1fr}.app-sidebar-disabled{white-space:nowrap}}
@media(max-width:560px){.workspace-trigger-label{max-width:112px;overflow:hidden;text-overflow:ellipsis}.workspace-menu-panel{position:fixed;left:12px;right:12px;top:64px;width:auto}.member-menu-panel{position:fixed;left:12px;right:12px;top:64px;width:auto}.video-coming-grid{grid-template-columns:1fr}}

.video-coming-card-link{color:var(--text);text-decoration:none;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.video-coming-card-link:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 20%,transparent)}.video-coming-card-link:hover .tool-card-link{color:var(--accent)}.video-coming-card-link:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 68%,white);outline-offset:3px}.video-coming-card.is-muted{opacity:.64;cursor:default}.video-studio-project-nav{display:grid;gap:10px;margin:0 0 14px;padding:10px 4px;border-bottom:1px solid var(--line)}.video-studio-project-nav-head{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0}.video-studio-project-nav-head>div{display:flex;align-items:center;gap:10px;min-width:0}.video-studio-project-nav-head a{color:var(--muted);font-size:12px;font-weight:720;white-space:nowrap}.video-studio-project-nav-head h1{margin:0;font-size:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-studio-project-nav-tabs{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-inline:contain}.video-studio-project-nav-tabs a{flex:0 0 auto;padding:8px 11px;border:1px solid transparent;border-radius:10px;color:var(--muted);font-size:12px;font-weight:760;text-decoration:none}.video-studio-project-nav-tabs a:hover,.video-studio-project-nav-tabs a:focus-visible,.video-studio-project-nav-tabs a.is-active{border-color:color-mix(in srgb,var(--accent) 34%,var(--line));background:var(--accent-soft);color:var(--accent);outline:none}.video-studio-workspace-next,.video-studio-resources-context{display:flex;margin:-4px 0 12px}.video-studio-workspace-next{align-items:flex-end;justify-content:space-between;gap:16px}.video-studio-project-generation-settings{display:flex;align-items:flex-end;flex:1 1 auto;flex-wrap:wrap;gap:10px;min-width:0}.video-studio-project-generation-settings label{display:grid;gap:5px;flex:0 1 120px;color:var(--muted);font-size:12px;font-weight:720}.video-studio-project-generation-settings label:first-child{flex-basis:160px}.video-studio-project-generation-settings select{min-width:110px;padding:9px 11px}.video-studio-workspace-next>[data-studio-next-edit]{flex:0 0 auto;white-space:nowrap}@media(max-width:1188px){.video-studio-project-generation-settings{max-width:720px}}@media(max-width:1024px){.video-studio-workspace-next{align-items:center}.video-studio-project-generation-settings label{flex-basis:150px}.video-studio-project-generation-settings label:first-child{flex-basis:180px}}@media(max-width:700px){.video-studio-project-nav-head{align-items:flex-start;flex-direction:column}.video-studio-project-nav-head>div:last-child{width:100%;justify-content:space-between}.video-studio-workspace-next,.video-studio-resources-context{justify-content:flex-start}.video-studio-workspace-next{align-items:stretch;flex-direction:column}.video-studio-project-generation-settings label,.video-studio-project-generation-settings label:first-child{flex:1 1 140px}.video-studio-workspace-next>[data-studio-next-edit]{align-self:flex-start}}

/* v1 workspace switcher: direct large blocks (方案 C) */
.workspace-switcher{display:flex;align-items:center;gap:8px;min-width:0;flex:1;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;padding:5px 2px}.workspace-switcher::-webkit-scrollbar{display:none}.workspace-switch-link{flex:0 0 auto;min-width:174px;height:50px;padding:7px 11px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--surface) 74%,transparent);display:flex;align-items:center;gap:9px;transition:.16s ease}.workspace-switch-link:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:var(--surface)}.workspace-switch-link.active{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 13%,var(--surface)),color-mix(in srgb,var(--accent-2) 8%,var(--surface)));box-shadow:0 7px 20px color-mix(in srgb,var(--accent) 10%,transparent)}.workspace-switch-icon{width:31px;height:31px;flex:0 0 31px;border-radius:9px;display:grid;place-items:center;background:var(--surface-2);color:var(--muted);font-size:16px;font-weight:850}.workspace-switch-link.active .workspace-switch-icon{background:color-mix(in srgb,var(--accent) 16%,var(--surface));color:var(--accent)}.workspace-switch-copy{min-width:0;display:grid;gap:2px}.workspace-switch-copy b{font-size:12px;line-height:1.1;white-space:nowrap}.workspace-switch-copy small{font-size:9px;line-height:1.1;color:var(--muted);white-space:nowrap}.workspace-switch-link.active .workspace-switch-copy b{color:var(--accent)}
@media(max-width:1180px){.workspace-switch-link{min-width:142px}.workspace-switch-copy small{display:none}}
@media(max-width:900px){.app-topbar-left{flex:1;overflow:hidden}.workspace-switcher{padding-right:6px}.workspace-switch-link{min-width:132px;height:44px;padding:6px 9px}.workspace-switch-icon{width:28px;height:28px;flex-basis:28px}.workspace-switch-copy b{font-size:11px}}
@media(max-width:560px){.workspace-switcher{gap:6px}.workspace-switch-link{min-width:125px}.workspace-switch-copy b{font-size:10px}.workspace-switch-icon{width:26px;height:26px;flex-basis:26px;font-size:14px}}

/* AI short video */
.video-short-page{max-width:1460px}.video-short-head{align-items:flex-end}.video-balance-card{min-width:150px;padding:14px 18px;border:1px solid var(--line);border-radius:18px;background:var(--panel);display:grid;gap:4px}.video-balance-card span{font-size:12px;color:var(--muted)}.video-balance-card b{font-size:20px}.video-short-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}.video-short-editor{display:grid;gap:18px}.video-prompt-panel,.video-assets-panel,.video-result-panel,.video-settings-panel{padding:22px}.video-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.video-section-head h2{margin:4px 0 0}.video-char-count{font-size:12px;color:var(--muted)}.video-prompt-panel textarea{width:100%;min-height:150px;resize:vertical;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);padding:16px;font:inherit;line-height:1.7}.video-prompt-panel textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 25%,transparent);border-color:var(--accent)}.video-asset-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.video-asset-group{border:1px solid var(--line);border-radius:18px;padding:14px;background:color-mix(in srgb,var(--panel) 94%,var(--accent) 6%)}.video-asset-group-copy{display:flex;gap:10px;align-items:center;margin-bottom:12px}.video-asset-group-copy div{display:grid;gap:2px}.video-asset-group-copy small{color:var(--muted)}.video-asset-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--accent-soft);color:var(--accent);font-weight:800}.video-upload-zone{min-height:112px;border:1px dashed color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:14px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;cursor:pointer;color:var(--accent);background:color-mix(in srgb,var(--accent) 3%,transparent)}.video-upload-zone.compact{min-height:64px}.video-upload-zone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.video-upload-zone:has(input:disabled){opacity:.45;cursor:not-allowed}.video-upload-zone small{color:var(--muted)}.video-ref-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.video-ref-grid:empty{display:none}.video-ref-card{position:relative;min-width:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel)}.video-ref-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}.video-ref-card button{position:absolute;right:6px;top:6px;width:25px;height:25px;border:0;border-radius:999px;background:rgba(12,12,18,.72);color:#fff;cursor:pointer}.video-ref-card div{padding:7px;display:grid;min-width:0}.video-ref-card b,.video-ref-card small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.video-ref-card b{font-size:11px}.video-ref-card small{font-size:10px;color:var(--muted)}.video-settings-panel{position:sticky;top:90px}.video-settings-panel>h2{margin:5px 0 12px}.video-tier-grid{display:grid;gap:8px}.video-tier-card{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:14px;padding:12px;display:grid;grid-template-columns:30px 1fr 20px;gap:8px;text-align:left;align-items:center;cursor:pointer}.video-tier-card>span{font-size:20px}.video-tier-card div{display:grid;gap:2px}.video-tier-card small{color:var(--muted);line-height:1.35}.video-tier-card i{opacity:0;color:var(--accent);font-style:normal}.video-tier-card.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent)}.video-tier-card.active i{opacity:1}.video-setting-block{padding-top:16px;margin-top:16px;border-top:1px solid var(--line)}.setting-label{display:flex;justify-content:space-between;gap:10px;margin-bottom:9px}.setting-label small{color:var(--muted)}.video-choice-row{display:flex;gap:7px;flex-wrap:wrap}.video-audio-state{margin-top:16px;padding:11px 12px;border-radius:13px;background:var(--surface);display:flex;gap:9px;align-items:center}.video-audio-state div{display:grid;gap:1px}.video-audio-state small{color:var(--muted)}.video-estimate-card{margin-top:16px;padding:14px;border-radius:14px;background:var(--surface);display:flex;align-items:center;justify-content:space-between}.video-estimate-card b{font-size:20px}.video-submit-button{width:100%;margin-top:12px}.video-submit-button.is-busy{opacity:.75}.center{text-align:center}.video-processing{min-height:320px;display:grid;place-items:center;align-content:center;text-align:center;gap:8px}.video-processing-orb{width:62px;height:62px;border:4px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;animation:video-spin 1s linear infinite}.video-processing-orb span{display:none}@keyframes video-spin{to{transform:rotate(360deg)}}.video-player-result video{width:100%;max-height:680px;border-radius:18px;background:#080912}.video-result-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.video-recent-section{margin-top:28px}.video-recent-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.video-recent-card{padding:0;overflow:hidden;color:inherit;text-decoration:none}.video-recent-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#1d2038,#342449);display:grid;place-items:center;color:#fff;font-size:28px}.video-recent-thumb video{width:100%;height:100%;object-fit:cover}.video-recent-card>div:last-child{padding:12px;display:grid;gap:3px}.video-recent-card small{color:var(--muted)}.video-history-player video{width:100%;max-height:720px;border-radius:18px;background:#080912}.video-history-actions{display:flex;gap:10px;margin-top:12px}.history-video-thumb{background:#111529;color:#fff;display:grid;place-items:center;font-size:24px}.hidden{display:none!important}
@media(max-width:1100px){.video-short-layout{grid-template-columns:1fr}.video-settings-panel{position:static}.video-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.video-short-head{align-items:flex-start}.video-balance-card{width:100%}.video-asset-groups{grid-template-columns:1fr}.video-ref-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.video-recent-grid{grid-template-columns:1fr}.video-prompt-panel,.video-assets-panel,.video-result-panel,.video-settings-panel{padding:16px}}

/* AI short-film project studio */
.short-film-project-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;align-items:start}.short-film-create-card,.short-film-project-list{padding:22px}.short-film-create-card{display:grid;gap:14px}.short-film-create-card h2{margin:3px 0}.short-film-create-card textarea{min-height:180px}.short-film-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.short-film-mode-grid label{cursor:pointer}.short-film-mode-grid input{position:absolute;opacity:0}.short-film-mode-grid span{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.short-film-mode-grid input:checked+span{border-color:var(--accent);background:var(--accent-soft)}.short-film-mode-grid small{color:var(--muted)}.short-film-project-cards{display:grid;gap:9px}.short-film-project-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--line);border-radius:14px;color:inherit;text-decoration:none;background:var(--surface)}.short-film-project-card>div{display:grid;gap:4px}.short-film-project-card small{color:var(--muted)}.short-film-studio-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px}.muted-link{color:var(--muted);text-decoration:none;font-size:13px}.short-film-stepper{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:0 0 18px}.short-film-step{min-width:0;display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:15px;text-decoration:none;color:inherit;background:var(--panel)}.short-film-step>span{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border-radius:999px;background:var(--surface);font-weight:800}.short-film-step>div{display:grid;min-width:0}.short-film-step small{font-size:10px;color:var(--muted);letter-spacing:.08em}.short-film-step.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}.short-film-step.active>span{background:var(--accent);color:white}.short-film-step.done>span{background:#16a34a;color:white}.short-film-step.locked{opacity:.5}.short-film-stage-panel{padding:24px}.short-film-script-editor{display:grid;gap:14px}.short-film-script-editor textarea{min-height:360px}.short-film-source-preview{padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface);margin-bottom:14px}.short-film-source-preview span{font-size:12px;color:var(--muted)}.short-film-source-preview p{white-space:pre-wrap;line-height:1.7}.short-film-art-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.short-film-art-columns>section{border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--surface)}.short-film-art-head{display:flex;justify-content:space-between;align-items:center}.short-film-entity-list{display:grid;gap:9px;margin-top:10px}.short-film-entity-card{display:grid;grid-template-columns:74px 1fr;gap:10px;align-items:start;padding:10px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.short-film-entity-thumb{width:74px;aspect-ratio:1;display:grid;place-items:center;border-radius:10px;background:var(--accent-soft);overflow:hidden}.short-film-entity-thumb img{width:100%;height:100%;object-fit:cover}.short-film-entity-card p{font-size:12px;color:var(--muted);margin:3px 0}.short-film-shot-list{display:grid;gap:11px}.short-film-shot-card{display:grid;grid-template-columns:90px 1fr;gap:14px;padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.short-film-shot-no{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--accent)}.short-film-shot-copy{display:grid;gap:7px}.short-film-shot-copy h3{margin:0}.short-film-shot-copy p{margin:0;line-height:1.6}.short-film-shot-meta{display:flex;gap:6px;flex-wrap:wrap}.short-film-shot-meta span{padding:4px 8px;border-radius:999px;background:var(--panel);font-size:11px;color:var(--muted)}.button-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}@media(max-width:1050px){.short-film-project-layout{grid-template-columns:1fr}.short-film-stepper{overflow-x:auto;grid-template-columns:repeat(5,minmax(150px,1fr));padding-bottom:4px}.short-film-art-columns{grid-template-columns:1fr}}@media(max-width:720px){.short-film-studio-head{align-items:flex-start;flex-direction:column}.short-film-mode-grid{grid-template-columns:1fr}.short-film-shot-card{grid-template-columns:1fr}}
.short-film-entity-card-rich{display:grid;gap:12px}.short-film-entity-main{display:flex;gap:12px;align-items:flex-start}.short-film-entity-gallery{display:flex;gap:8px;overflow-x:auto;padding:2px 0}.short-film-art-thumb{flex:0 0 86px;position:relative}.short-film-art-thumb button{width:86px;padding:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface);cursor:pointer}.short-film-art-thumb img{display:block;width:86px;height:86px;object-fit:cover}.short-film-art-thumb span{display:block;padding:5px 4px;font-size:11px;color:var(--muted)}.short-film-art-thumb.selected button{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}.short-film-art-thumb.pending{display:grid;place-items:center;min-height:112px;border:1px dashed var(--border);border-radius:12px;font-size:11px;color:var(--muted)}.short-film-entity-actions{display:flex;gap:8px;flex-wrap:wrap}.button.compact{padding:8px 10px;font-size:12px}
.short-film-shoot-controls{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr)) auto;gap:8px;align-items:end;margin-top:12px}.short-film-shoot-controls label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.short-film-version-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:14px}.short-film-video-version{padding:10px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.short-film-video-version video,.short-film-video-placeholder{width:100%;aspect-ratio:16/9;border-radius:10px;background:#0b0d12;display:grid;place-items:center}.short-film-video-placeholder{color:#c9ceda}.short-film-video-version .split{margin-top:8px;align-items:center}@media(max-width:780px){.short-film-shoot-controls{grid-template-columns:1fr 1fr}.short-film-shoot-controls button{grid-column:1/-1}}
.short-film-final-result{display:grid;gap:14px}.short-film-final-result video{width:100%;max-height:70vh;border-radius:16px;background:#0b0d12}.short-film-render-progress{display:flex;gap:14px;align-items:center;padding:22px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2)}.short-film-final-ready{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2)}
.short-film-inline-editor{margin-top:12px;border-top:1px solid var(--border);padding-top:10px}.short-film-inline-editor summary{cursor:pointer;color:var(--primary);font-weight:700}.short-film-inline-editor form{display:grid;gap:10px;margin-top:10px}.short-film-add-entity{display:grid;grid-template-columns:1fr 1.4fr auto;gap:6px;margin-top:8px}.short-film-shot-edit-form fieldset{border:1px solid var(--border);border-radius:12px;padding:10px}.short-film-shot-edit-form legend{font-size:12px;color:var(--muted);padding:0 5px}.short-film-check{display:inline-flex!important;align-items:center;gap:5px;margin:3px 10px 3px 0!important;font-size:12px}.button.danger{border-color:#ef4444;color:#ef4444;background:transparent}@media(max-width:720px){.short-film-add-entity{grid-template-columns:1fr}.short-film-inline-editor .split{grid-template-columns:1fr}}

/* AI short-film UX refresh — 2026-08-19 */
.short-film-art-suggestion-banner{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;margin:0 0 16px;border:1px solid var(--line);border-radius:14px;background:var(--accent-soft)}
.short-film-art-suggestion-banner b{display:block;margin-bottom:3px}.short-film-art-suggestion-banner p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.short-film-art-rows{display:grid;gap:18px;margin-top:16px}.short-film-art-row{width:100%;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.short-film-art-row .short-film-art-head{align-items:flex-start;gap:14px}.short-film-art-head>div{display:grid;gap:3px}.short-film-art-head h2,.short-film-art-head h3{margin:0}.short-film-art-head small{color:var(--muted)}
.short-film-entity-list-horizontal{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin-top:12px}.short-film-entity-list-horizontal .short-film-entity-card{min-width:0}
.short-film-suggestion-reason{margin:6px 0 0!important;padding:7px 9px;border-radius:9px;background:var(--surface-2);font-size:11px!important;line-height:1.55!important}.short-film-suggestion-reason b{color:var(--text)}
.image-preview-button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.image-preview-button img{display:block}
.short-film-thumb-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}.short-film-thumb-actions form{margin:0}.short-film-thumb-actions .button{padding:5px 7px;font-size:11px}
.short-film-art-cost-note{display:flex;align-items:center;gap:6px;margin-top:5px;color:var(--muted);font-size:11px}.short-film-art-cost-note b{color:var(--text)}
.short-film-lightbox[hidden]{display:none!important}.short-film-lightbox{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:28px;background:rgba(0,0,0,.82);backdrop-filter:blur(4px)}.short-film-lightbox img{display:block;max-width:min(94vw,1300px);max-height:88vh;object-fit:contain;border-radius:14px;box-shadow:0 24px 70px rgba(0,0,0,.45)}.short-film-lightbox-close{position:absolute;top:20px;right:20px;width:42px;height:42px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(10,10,14,.72);color:#fff;font-size:28px;line-height:1;cursor:pointer}.lightbox-open{overflow:hidden}
.short-film-global-shoot-settings{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(2,minmax(150px,.8fr)) auto;gap:10px;align-items:end;padding:16px;margin:4px 0 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.short-film-global-shoot-settings>div:first-child{align-self:center}.short-film-global-shoot-settings h3{margin:0 0 3px}.short-film-global-shoot-settings p{margin:0;color:var(--muted);font-size:12px}.short-film-global-shoot-settings label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.short-film-global-shoot-settings select{width:100%}.short-film-generate-all{display:flex;justify-content:flex-end;margin:0 0 14px}.badge.error{background:color-mix(in srgb,#ef4444 14%,var(--surface));color:#ef4444;border-color:color-mix(in srgb,#ef4444 28%,var(--line))}
@media(max-width:1050px){.short-film-entity-list-horizontal{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.short-film-global-shoot-settings{grid-template-columns:1fr 1fr}.short-film-global-shoot-settings>div:first-child{grid-column:1/-1}.short-film-global-shoot-settings button{grid-column:1/-1}}
@media(max-width:680px){.short-film-art-row{padding:12px}.short-film-entity-list-horizontal{grid-template-columns:1fr}.short-film-global-shoot-settings{grid-template-columns:1fr}.short-film-global-shoot-settings>*{grid-column:auto!important}.short-film-lightbox{padding:14px}.short-film-lightbox-close{top:12px;right:12px}}

/* AI 短片：逐鏡生成估算進度與成功影片封面 */
.short-film-video-progress{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:10px;padding:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 10%,var(--surface-2)),color-mix(in srgb,var(--surface) 94%,#111827));color:var(--text)}
.short-film-progress-copy{display:flex;align-items:center;justify-content:space-between;gap:12px}.short-film-progress-copy span{font-weight:700}.short-film-progress-copy b{font-size:20px}.short-film-video-progress>small{color:var(--muted);font-size:11px}
.short-film-progress-track{width:100%;height:8px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--muted) 20%,transparent)}.short-film-progress-track>[data-progress-bar]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 58%,#d8b4fe));transition:width .45s ease}
.short-film-video-preview-shell{position:relative;width:100%;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 12%,var(--surface-2)),color-mix(in srgb,var(--surface) 92%,#111827))}.short-film-video-preview-shell video{width:100%;height:100%;aspect-ratio:auto;display:block;object-fit:cover;background:transparent}.short-film-preview-loading{position:absolute;inset:auto 12px 12px 12px;padding:7px 10px;border-radius:999px;background:color-mix(in srgb,var(--surface) 82%,transparent);backdrop-filter:blur(8px);color:var(--muted);font-size:11px;text-align:center;pointer-events:none;transition:opacity .2s ease}.short-film-video-preview-shell.preview-ready .short-film-preview-loading{opacity:0}
.short-film-voice-panel{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface) 80%,transparent)}
.short-film-voice-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.short-film-voice-head>div{display:grid;gap:4px}.short-film-voice-head small{color:var(--muted)}
.short-film-voice-form{display:grid;gap:10px}.short-film-voice-toggle{font-weight:700}.short-film-voice-fields{display:grid;gap:10px}.short-film-voice-fields label{display:grid;gap:6px;font-size:12px;color:var(--muted)}.short-film-voice-fields textarea{min-height:90px}
.short-film-version-carousel{display:grid;gap:10px;margin-top:14px}.short-film-version-carousel-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.short-film-version-carousel-copy{display:grid;gap:2px;justify-items:center;flex:1}.short-film-version-carousel-copy small{color:var(--muted)}
.short-film-carousel-arrow{width:38px;height:38px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;font-size:24px;line-height:1;display:grid;place-items:center}.short-film-carousel-arrow[hidden]{display:none}.short-film-version-viewport{position:relative}.short-film-video-version.is-active{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}
.short-film-version-meta{margin-top:8px}.short-film-version-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-top:8px}
@media(max-width:780px){.short-film-version-actions{justify-content:flex-start}.short-film-version-carousel-head{gap:6px}}
.short-film-voice-toggle-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.short-film-voice-design-form{display:grid;gap:10px}.short-film-voice-design-form label{display:grid;gap:6px;font-size:12px;color:var(--muted)}.short-film-voice-design-form textarea{min-height:88px}.short-film-voice-candidates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.short-film-voice-candidate{display:grid;gap:8px;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.short-film-voice-candidate.selected{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent)}.short-film-voice-candidate audio,.short-film-fixed-voice audio{width:100%}.short-film-voice-candidate>div,.short-film-fixed-voice>div{display:grid;gap:3px}.short-film-voice-candidate small,.short-film-fixed-voice small{color:var(--muted)}.short-film-fixed-voice{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,280px) auto;gap:12px;align-items:center;padding:10px;border:1px solid color-mix(in srgb,var(--accent) 50%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.short-film-fixed-voice form{justify-self:end}@media(max-width:760px){.short-film-voice-candidates{grid-template-columns:1fr}.short-film-fixed-voice{grid-template-columns:1fr}.short-film-fixed-voice form{justify-self:start}}
.short-film-final-workspace{display:grid;gap:18px}.short-film-final-summary{margin-top:0}.short-film-final-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.7fr);gap:16px;align-items:start}.short-film-final-preview-panel,.short-film-final-settings-panel,.short-film-final-timeline-panel,.short-film-final-render-zone{border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:16px}.short-film-final-preview-head,.short-film-final-timeline-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.short-film-final-preview-head h3,.short-film-final-settings-panel h3,.short-film-final-timeline-head h3{margin:4px 0}.short-film-final-player{position:relative;margin-top:12px;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#0b0d12}.short-film-final-player>video{width:100%;height:100%;display:block;object-fit:contain;background:#0b0d12}.short-film-final-now{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin-top:10px}.short-film-final-now>span{font-size:11px;font-weight:850;color:var(--accent);letter-spacing:.08em}.short-film-final-now>small{color:var(--muted)}.short-film-final-settings-form{display:grid;gap:12px;margin-top:12px}.short-film-final-settings-form>label{display:grid;gap:6px;font-size:12px;color:var(--muted)}.short-film-final-upload-group{display:grid;gap:8px}.short-film-final-upload-group audio{width:100%}.short-film-final-logo-thumb{max-width:120px;max-height:70px;object-fit:contain;border:1px solid var(--line);border-radius:10px;padding:6px;background:var(--panel)}.short-film-final-logo-preview{position:absolute;z-index:4;max-width:22%;max-height:18%;pointer-events:none}.short-film-final-logo-preview img{display:block;max-width:100%;max-height:100%;object-fit:contain}.short-film-final-logo-preview[data-position="left_top"]{left:18px;top:18px}.short-film-final-logo-preview[data-position="right_top"]{right:18px;top:18px}.short-film-final-logo-preview[data-position="left_bottom"]{left:18px;bottom:18px}.short-film-final-logo-preview[data-position="right_bottom"]{right:18px;bottom:18px}.short-film-final-subtitle-preview{position:absolute;left:8%;right:8%;bottom:8%;z-index:5;text-align:center;font-weight:800;font-size:clamp(14px,2vw,24px);text-shadow:0 2px 8px rgba(0,0,0,.9);color:white;pointer-events:none}.short-film-final-subtitle-preview.style-boxed{background:rgba(0,0,0,.75);padding:6px 10px;border-radius:8px}.short-film-final-subtitle-preview.style-brand{background:color-mix(in srgb,var(--accent) 78%,transparent);padding:6px 10px;border-radius:999px}.short-film-final-timeline{display:flex;gap:10px;overflow-x:auto;padding:8px 2px 4px;scroll-snap-type:x proximity}.short-film-final-shot{flex:0 0 190px;display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel);cursor:pointer;scroll-snap-align:start}.short-film-final-shot.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.short-film-final-shot.dragging{opacity:.45}.short-film-final-shot.missing{opacity:.65}.short-film-final-shot-thumb{aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#0b0d12;display:grid;place-items:center;color:var(--muted)}.short-film-final-shot-thumb img,.short-film-final-shot-thumb video{width:100%;height:100%;object-fit:cover}.short-film-final-shot-copy{display:grid;gap:2px}.short-film-final-shot-copy span{font-size:10px;font-weight:850;color:var(--accent)}.short-film-final-shot-copy small{color:var(--muted)}.short-film-final-shot label{display:grid;gap:4px;font-size:11px;color:var(--muted)}.short-film-final-render-zone{display:grid;gap:12px}.short-film-final-render-zone .short-film-final-result video{width:100%;max-height:68vh;border-radius:14px;background:#0b0d12}.short-film-render-progress{display:grid;gap:8px}.short-film-final-preview-actions{display:flex;gap:6px}@media(max-width:980px){.short-film-final-grid{grid-template-columns:1fr}.short-film-final-settings-panel{order:2}}@media(max-width:680px){.short-film-final-preview-head,.short-film-final-timeline-head{align-items:flex-start;flex-direction:column}.short-film-final-now{grid-template-columns:1fr}.short-film-final-shot{flex-basis:155px}}
.short-film-voice-details{margin-top:10px}.short-film-voice-details>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px}.short-film-voice-details>summary>span:first-child{min-width:0}.short-film-voice-panel-collapsed{margin-top:10px;border:0;padding:0;background:transparent}.short-film-voice-toggle-form{display:flex!important;align-items:center;gap:10px;flex-wrap:wrap}.short-film-voice-toggle-form .short-film-voice-toggle{margin:0!important}.short-film-voice-design-form{display:grid;gap:10px}.short-film-voice-design-form label{display:grid;gap:6px;font-size:12px;color:var(--muted)}.short-film-voice-candidates{display:grid;gap:8px}.short-film-voice-candidate{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:12px}.short-film-voice-candidate audio,.short-film-fixed-voice audio{width:100%}
.short-film-final-shot-edit{grid-column:1/-1;border-top:1px solid var(--line);padding-top:9px}.short-film-final-shot-edit summary{cursor:pointer;font-weight:750;color:var(--accent)}.short-film-final-edit-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;margin-top:10px}.short-film-final-edit-grid label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.short-film-subtitle-timeline{display:grid;gap:8px;margin-top:12px}.short-film-subtitle-timeline-head{display:flex;justify-content:space-between;align-items:center}.short-film-subtitle-segment{display:grid;grid-template-columns:minmax(160px,1fr) 82px auto 82px 34px;gap:6px;align-items:center;padding:7px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.short-film-subtitle-segment span{text-align:center;color:var(--muted)}@media(max-width:800px){.short-film-final-edit-grid{grid-template-columns:1fr 1fr}.short-film-subtitle-segment{grid-template-columns:1fr 72px auto 72px 34px}}@media(max-width:560px){.short-film-final-edit-grid{grid-template-columns:1fr}.short-film-subtitle-segment{grid-template-columns:1fr 1fr}.short-film-subtitle-segment span{display:none}.short-film-subtitle-segment .icon-button{justify-self:end}}
.member-materials-page{display:grid;gap:18px}.member-material-tabs{display:flex;gap:8px;flex-wrap:wrap}.member-material-tabs a{padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:13px}.member-material-tabs a.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:800}.member-material-create{padding:18px;display:grid;gap:12px}.member-material-create h2{margin:0 0 4px}.member-material-create p{margin:0}.member-material-create-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;align-items:end}.member-material-create-form label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.member-material-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px}.member-material-card{padding:0;overflow:hidden}.member-material-preview{width:100%;aspect-ratio:16/8;display:grid;place-items:center;background:var(--surface-2);font-size:42px}.member-material-preview img{width:100%;height:100%;object-fit:cover}.member-material-card-body{display:grid;gap:12px;padding:16px}.member-material-card-body h3{margin:0}.member-material-card-body p{margin:3px 0}.member-material-gallery{display:flex;gap:8px;overflow-x:auto}.member-material-file{min-width:118px;max-width:180px;padding:7px;border:1px solid var(--line);border-radius:12px;display:grid;gap:6px}.member-material-file.selected{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 24%,transparent)}.member-material-file img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.member-material-file audio{width:165px;max-width:100%}@media(max-width:680px){.member-material-grid{grid-template-columns:1fr}.member-material-create-form{grid-template-columns:1fr}}
.short-film-library-picker{margin:10px 0;border:1px solid var(--line);border-radius:13px;padding:9px 11px;background:var(--surface)}.short-film-library-picker summary,.short-film-voice-library summary,.short-film-final-library-picker summary{cursor:pointer;font-weight:750;color:var(--accent)}.short-film-library-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin-top:10px}.short-film-library-choice{display:grid;grid-template-columns:48px 1fr;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:11px}.short-film-library-choice img{width:48px;height:48px;border-radius:9px;object-fit:cover}.short-film-library-choice>div{display:grid;min-width:0}.short-film-library-choice small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.short-film-library-choice button{grid-column:1/-1}.short-film-voice-library{border:1px solid var(--line);border-radius:12px;padding:9px}.short-film-voice-library-list{display:grid;gap:7px;margin-top:8px}.short-film-voice-library-list form,.short-film-final-library-picker form{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;border:1px solid var(--line);border-radius:10px}.short-film-voice-library-list form>div{display:grid}.short-film-final-library-picker{border:1px solid var(--line);border-radius:12px;padding:9px}.short-film-final-library-picker form{margin-top:7px}
.short-film-voice-recommendation{display:grid;gap:6px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.short-film-voice-recommendation-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.short-film-voice-recommendation b{font-size:13px}.short-film-voice-recommendation small{color:var(--muted);line-height:1.55}
.short-film-trim-timeline{display:grid;gap:7px;margin:10px 0 12px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.short-film-timeline-ruler{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}.short-film-timeline-ruler b{color:var(--text)}.short-film-range-track{position:relative;height:30px;display:flex;align-items:center}.short-film-range-track:before{content:"";position:absolute;left:0;right:0;height:7px;border-radius:999px;background:color-mix(in srgb,var(--muted) 20%,transparent)}.short-film-range-window,.short-film-subtitle-block{position:absolute;height:9px;border-radius:999px;background:var(--accent);z-index:1;pointer-events:none}.short-film-range-track input[type="range"]{position:absolute;left:0;width:100%;height:30px;margin:0;background:transparent;appearance:none;-webkit-appearance:none;pointer-events:none;z-index:2}.short-film-range-track input[type="range"]::-webkit-slider-runnable-track{height:7px;background:transparent}.short-film-range-track input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;margin-top:-5px;border:3px solid var(--accent);border-radius:50%;background:var(--surface);box-shadow:0 2px 7px rgba(0,0,0,.18);pointer-events:auto;cursor:ew-resize}.short-film-range-track input[type="range"]::-moz-range-track{height:7px;background:transparent}.short-film-range-track input[type="range"]::-moz-range-thumb{width:14px;height:14px;border:3px solid var(--accent);border-radius:50%;background:var(--surface);pointer-events:auto;cursor:ew-resize}.short-film-subtitle-range{grid-column:1/-1;width:100%}.short-film-subtitle-block{background:color-mix(in srgb,var(--accent) 75%,#fff)}
.short-film-final-active-editor{display:grid;gap:12px;margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.short-film-final-active-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.short-film-final-active-editor-head h3{margin:4px 0}.short-film-final-active-editor-head>small{max-width:360px;color:var(--muted);line-height:1.5}
.short-film-final-active-editor>label{display:grid;gap:5px;font-size:12px;color:var(--muted)}
.short-film-final-shot script[data-final-shot-state]{display:none}
@media(max-width:680px){.short-film-final-active-editor-head{flex-direction:column}.short-film-final-active-editor-head>small{max-width:none}}

.member-material-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.member-material-overview-card{padding:16px;display:flex;align-items:center;gap:12px}.member-material-overview-card>span{width:40px;height:40px;border-radius:12px;background:var(--accent-soft);display:grid;place-items:center;color:var(--accent);font-size:20px}.member-material-overview-card>div{display:grid;gap:3px;flex:1}.member-material-overview-card small{color:var(--muted)}.member-material-create{padding:0;overflow:hidden}.member-material-create-summary{cursor:pointer;list-style:none;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.member-material-create-summary::-webkit-details-marker{display:none}.member-material-create-summary span{font-weight:800;color:var(--accent)}.member-material-create-summary small{color:var(--muted)}.member-material-create[open] .member-material-create-form{border-top:1px solid var(--line);padding:16px 18px}.short-film-entity-main p,.short-film-library-choice small,.member-material-card-body p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.section-heading.compact{margin-top:4px;margin-bottom:0}
.short-film-script-narration{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.short-film-script-narration>div{display:grid;gap:3px;min-width:220px;flex:1}.short-film-script-narration small{color:var(--muted)}.short-film-script-narration audio{min-width:280px;max-width:100%}.is-ai-busy{opacity:.88}.short-film-dual-range{position:relative;height:42px;display:flex;align-items:center;touch-action:none;user-select:none}.short-film-dual-rail{position:absolute;left:0;right:0;height:8px;border-radius:999px;background:color-mix(in srgb,var(--muted) 20%,transparent)}.short-film-dual-range .short-film-range-window,.short-film-dual-range .short-film-subtitle-block{position:absolute;height:10px;border-radius:999px;background:var(--accent);pointer-events:none}.short-film-dual-handle{position:absolute;top:50%;width:22px;height:22px;padding:0;transform:translate(-50%,-50%);border:3px solid var(--accent);border-radius:50%;background:var(--surface);box-shadow:0 3px 10px rgba(0,0,0,.25);cursor:ew-resize;z-index:3;touch-action:none}.short-film-dual-handle:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:3px}.short-film-dual-handle [data-dual-value]{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);padding:3px 6px;border-radius:7px;background:var(--surface-2);border:1px solid var(--line);font-size:10px;color:var(--text);white-space:nowrap;opacity:0;transition:.15s}.short-film-dual-handle:hover [data-dual-value],.short-film-dual-handle:focus [data-dual-value],.short-film-dual-handle:active [data-dual-value]{opacity:1}

.short-film-suggestion-reason{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}

/* AI 短片專案首頁：上方建立、下方全部專案 */
.short-film-projects-head{margin-bottom:18px}.short-film-create-strip{display:grid;grid-template-columns:minmax(220px,.58fr) minmax(0,2fr);gap:22px;align-items:start;padding:22px;margin-bottom:24px}.short-film-create-copy{display:grid;gap:7px}.short-film-create-copy h2,.short-film-create-copy p{margin:0}.short-film-create-copy p{color:var(--muted);line-height:1.6}.short-film-create-controls{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.25fr) auto;gap:12px;align-items:stretch}.short-film-create-controls textarea{min-height:102px;resize:vertical}.short-film-create-controls>.button{min-width:150px;align-self:stretch}.short-film-create-strip .short-film-mode-grid{grid-template-columns:1fr 1fr}.short-film-create-strip .short-film-mode-grid span{height:100%;box-sizing:border-box}.short-film-my-projects{display:grid;gap:14px}.short-film-project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.short-film-project-tile{min-width:0;display:block;border:1px solid var(--line);border-radius:17px;overflow:hidden;background:var(--surface);color:inherit;text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.short-film-project-tile:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 58%,var(--line));box-shadow:0 14px 36px rgba(0,0,0,.18)}.short-film-project-cover{position:relative;aspect-ratio:16/9;background:linear-gradient(145deg,var(--accent-soft),var(--panel));overflow:hidden}.short-film-project-cover>img{width:100%;height:100%;display:block;object-fit:cover}.short-film-project-placeholder{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:7px;color:var(--muted);background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 55%),var(--panel)}.short-film-project-placeholder>span{font-size:30px;color:var(--accent)}.short-film-project-placeholder>small{font-size:11px}.short-film-project-step{position:absolute;top:10px;left:10px;padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--surface) 86%,transparent);backdrop-filter:blur(10px);font-size:11px;font-weight:800;color:var(--text);border:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.short-film-project-info{display:grid;gap:8px;padding:14px}.short-film-project-info h3{margin:0;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.short-film-project-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:12px}.short-film-project-info>small{color:var(--muted);font-size:11px}.short-film-project-continue{color:var(--accent);font-size:13px}.short-film-project-empty{min-height:180px;display:grid;place-items:center;align-content:center;text-align:center}
@media(min-width:1500px){.short-film-project-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1200px){.short-film-create-strip{grid-template-columns:1fr}.short-film-create-controls{grid-template-columns:1fr 1.2fr}.short-film-create-controls>.button{grid-column:1/-1;min-height:44px}.short-film-project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.short-film-create-controls{grid-template-columns:1fr}.short-film-create-controls>.button{grid-column:auto}.short-film-create-strip .short-film-mode-grid{grid-template-columns:1fr}.short-film-project-gallery{grid-template-columns:1fr}}


/* Persistent /app shell navigation: keep current content visible while the next page loads. */
body.app-area.is-app-navigating .app-topbar::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform-origin:left center;animation:app-shell-loading .9s ease-in-out infinite;pointer-events:none;z-index:5}
body.app-area.is-app-navigating [data-app-main]{cursor:progress}
@keyframes app-shell-loading{0%{transform:scaleX(.08);opacity:.35}50%{transform:scaleX(.7);opacity:.9}100%{transform:scaleX(.08);opacity:.35}}

/* Studio project draft confirmation. */
.studio-project-new,.studio-draft{max-width:980px}.studio-project-intro,.studio-draft-intro{text-align:center;max-width:700px;margin:0 auto 24px}.studio-project-intro h1,.studio-draft-intro h1{font-size:clamp(2rem,4vw,3.2rem);margin:10px 0}.studio-project-intro p,.studio-draft-intro p{margin:0}.studio-project-form{display:grid;gap:18px}.studio-project-form textarea{min-height:150px;resize:vertical}.studio-project-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}.studio-project-options fieldset{min-width:0;border:1px solid var(--line);border-radius:15px;padding:14px}.studio-project-options legend{padding:0 5px;font-size:12px;font-weight:800}.studio-radio-pills{display:flex;flex-wrap:wrap;gap:8px}.studio-radio-pills label{position:relative}.studio-radio-pills input{position:absolute;opacity:0}.studio-radio-pills span{display:block;padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);font-size:12px;font-weight:750;cursor:pointer}.studio-radio-pills input:checked+span{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}.studio-radio-pills input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.studio-duration-input{display:inline-flex;align-items:center;gap:8px}.studio-duration-input input{width:110px}.studio-project-options [data-duration-error]{margin:8px 0 0;color:var(--danger);font-size:12px}.studio-project-advanced{padding:0;border:0}.studio-project-advanced .field{display:grid;gap:7px;max-width:320px;margin-top:14px}.studio-project-advanced p{font-size:12px;margin-bottom:0}.studio-project-submit{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:16px}.studio-project-submit p{font-size:12px;margin:0;max-width:610px}.studio-draft-state{text-align:center;max-width:640px;margin:40px auto}.studio-draft-state h1{margin:10px 0}.studio-draft-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.studio-draft-stats div{padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface);text-align:center}.studio-draft-stats strong,.studio-draft-stats span{display:block}.studio-draft-stats strong{font-size:19px}.studio-draft-stats span{font-size:11px;color:var(--muted);margin-top:4px}.studio-draft-card{padding:0;overflow:hidden}.studio-draft-card>section{padding:20px;border-bottom:1px solid var(--line)}.studio-draft-card h2{font-size:16px;margin-bottom:10px}.studio-draft-card h3{font-size:14px;margin-bottom:5px}.studio-draft-card p{margin:0}.studio-draft-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.studio-draft-grid article,.studio-draft-shots article{padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.studio-draft-shots{display:grid;gap:9px}.studio-draft-shots article{display:grid;grid-template-columns:1fr auto;gap:5px 12px}.studio-draft-shots article p{grid-column:1/-1;font-size:12px}.studio-draft-shots span{font-size:11px;color:var(--muted)}.studio-draft-actions{display:flex;align-items:center;gap:10px;padding:16px 20px}.studio-draft-actions>div{margin-right:auto}.studio-draft-actions p,.studio-draft-actions small{font-size:11px}.studio-draft-actions small{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:720px){.studio-project-options,.studio-draft-grid{grid-template-columns:1fr}.studio-project-submit,.studio-draft-actions{align-items:stretch;flex-direction:column}.studio-project-submit .button,.studio-draft-actions .button{width:100%}.studio-draft-actions>div{margin-right:0}.studio-draft-stats{grid-template-columns:1fr 1fr}}

/* 2026-08-20 short-film Art card cleanup */
.short-film-entity-card [data-entity-description-clamp]{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-height:1.55;min-height:0}
.short-film-entity-action-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:8px;border-top:1px solid var(--line)}
.short-film-entity-action-row>form,.short-film-entity-action-row>.short-film-entity-edit-details{margin:0}
.short-film-entity-edit-details>summary.button{list-style:none;cursor:pointer}.short-film-entity-edit-details>summary.button::-webkit-details-marker{display:none}
.short-film-entity-edit-details[open]{flex:1 0 100%}.short-film-entity-edit-details[open]>summary{width:max-content;margin-bottom:10px}.short-film-entity-edit-content{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.short-film-entity-edit-content form{display:grid;gap:10px}.short-film-entity-edit-content label{display:grid;gap:6px}
@media(max-width:680px){.short-film-entity-action-row>form,.short-film-entity-action-row>.short-film-entity-edit-details{flex:1 1 calc(50% - 4px)}.short-film-entity-action-row .button{width:100%;justify-content:center}}

/* 2026-08-20 private material card/detail cleanup */
.member-material-card-link{display:block;color:inherit;text-decoration:none;overflow:hidden;transition:border-color .16s ease,transform .16s ease}.member-material-card-link:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));transform:translateY(-1px)}
.member-material-card-link .member-material-preview{aspect-ratio:4/3;min-height:0}.member-material-card-link [data-material-description-clamp]{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-height:1.55}
.member-material-voice-status{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--line);font-size:12px}.member-material-voice-status b{color:var(--muted)}.member-material-voice-status b.configured{color:var(--success,#22c55e)}.member-material-edit-link{color:var(--accent);font-weight:800;font-size:12px}
.member-material-detail-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:16px}.member-material-detail-main,.member-material-detail-assets,.member-material-character-voice,.danger-zone{padding:20px}.member-material-detail-primary{display:grid;place-items:center;min-height:200px;border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden;margin-bottom:14px}.member-material-detail-primary img{width:100%;max-height:440px;object-fit:contain}.member-material-detail-primary>span{font-size:54px}.member-material-detail-form{display:grid;gap:12px}.member-material-detail-form label{display:grid;gap:6px}.member-material-detail-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:14px}.member-material-detail-asset{display:grid;gap:8px;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.member-material-detail-asset.selected{border-color:var(--accent)}.member-material-detail-asset img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}.member-material-detail-asset audio{width:100%}.member-material-character-voice{margin-top:16px}.danger-zone{margin-top:16px;border-color:color-mix(in srgb,#ef4444 35%,var(--line))}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:16px}.danger-zone h2{margin:0}.danger-zone p{margin:4px 0 0;color:var(--muted)}
@media(max-width:900px){.member-material-detail-layout{grid-template-columns:1fr}.danger-zone{align-items:flex-start;flex-direction:column}}
.admin-prompt-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.admin-prompt-preview-grid details{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.admin-prompt-preview-grid summary{cursor:pointer;font-weight:800}.admin-prompt-preview-grid pre{white-space:pre-wrap;max-height:360px;overflow:auto;font-size:11px;line-height:1.55}@media(max-width:900px){.admin-prompt-preview-grid{grid-template-columns:1fr}}
.short-film-project-tile{position:relative}.short-film-project-link{display:block;color:inherit;text-decoration:none}.short-film-project-menu{position:absolute;top:10px;right:10px;z-index:6}.short-film-project-menu-trigger{width:34px;height:34px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(10px);color:var(--text);font-size:19px;line-height:1;cursor:pointer}.short-film-project-menu-popover{position:absolute;top:40px;right:0;min-width:142px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 18px 45px rgba(0,0,0,.35)}.short-film-project-menu-popover button{width:100%;padding:9px 11px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.short-film-project-menu-popover button:hover{background:var(--panel)}.short-film-project-menu-popover button.danger{color:var(--danger)}

/* 05 成片工作台：中央預覽 + 右側 Inspector + 底部固定 Shot 時間軸 */
.short-film-final-editor-layout{grid-template-columns:minmax(0,1fr) minmax(340px,410px);gap:18px;align-items:stretch}
.short-film-final-editor-layout .short-film-final-preview-panel{min-width:0;align-self:start}
.short-film-final-inspector{border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden;min-width:0;align-self:start;position:sticky;top:82px;max-height:calc(100vh - 100px);display:flex;flex-direction:column}
.short-film-final-inspector-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 16px 12px;border-bottom:1px solid var(--line)}
.short-film-final-inspector-head h3{margin:4px 0 0;font-size:18px;line-height:1.3}
.short-film-autosave-status{flex:0 0 auto;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:800;color:var(--muted);background:var(--panel)}
.short-film-autosave-status.saving{color:#d9c7ff;background:color-mix(in srgb,var(--accent) 14%,var(--panel))}
.short-film-autosave-status.saved{color:#66e3a4;background:rgba(29,117,79,.18)}
.short-film-autosave-status.error{color:#ff8f9b;background:rgba(148,38,50,.18)}
.short-film-final-inspector-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:var(--panel)}
.short-film-final-inspector-tabs button{appearance:none;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);padding:13px 6px;font-weight:800;font-size:12px;cursor:pointer}
.short-film-final-inspector-tabs button:last-child{border-right:0}
.short-film-final-inspector-tabs button:hover{color:var(--text);background:color-mix(in srgb,var(--accent) 7%,transparent)}
.short-film-final-inspector-tabs button.active{color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent);box-shadow:inset 0 -2px 0 var(--accent)}
.short-film-final-inspector-body{overflow:auto;padding:16px;display:block;min-height:360px}
.short-film-final-inspector-panel{display:grid;gap:14px}
.short-film-final-inspector-panel[hidden]{display:none!important}
.short-film-final-inspector-panel>label,.short-film-final-settings-form>label{display:grid;gap:6px;font-size:12px;color:var(--muted)}
.short-film-inspector-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.short-film-final-edit-grid.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
.short-film-final-inspector .short-film-trim-timeline{margin:0}
.short-film-final-inspector .short-film-subtitle-timeline{margin:0}
.short-film-final-inspector .short-film-subtitle-timeline-head>div{display:grid;gap:2px}
.short-film-final-inspector .short-film-subtitle-timeline-head small{color:var(--muted);font-weight:500}
.short-film-final-inspector .muted{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.short-film-final-workspace>.short-film-final-timeline-panel{position:sticky;bottom:0;z-index:30;margin-top:2px;padding:12px 14px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(16px);box-shadow:0 -14px 34px rgba(0,0,0,.28)}
.short-film-final-workspace>.short-film-final-timeline-panel .short-film-final-timeline{padding-bottom:2px}
.short-film-final-workspace>.short-film-final-timeline-panel .short-film-final-shot{flex-basis:168px;padding:8px}
.short-film-final-workspace>.short-film-final-timeline-panel .short-film-final-shot-thumb{border-radius:9px}
.short-film-final-workspace>.short-film-final-render-zone{margin-top:6px}
@media(max-width:1180px){.short-film-final-editor-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px)}}
@media(max-width:980px){.short-film-final-editor-layout{grid-template-columns:1fr}.short-film-final-inspector{position:relative;top:auto;max-height:none}.short-film-final-workspace>.short-film-final-timeline-panel{bottom:0}}
@media(max-width:620px){.short-film-final-inspector-tabs{grid-template-columns:repeat(2,1fr)}.short-film-final-edit-grid.compact-grid{grid-template-columns:1fr}.short-film-final-workspace>.short-film-final-timeline-panel .short-film-final-shot{flex-basis:145px}}

/* 2026-08-21 final multitrack timeline */
.short-film-final-multitrack{display:grid;gap:0;padding:12px 0 0!important;overflow:hidden}
.short-film-final-multitrack>.short-film-final-timeline-head{padding:0 14px 10px}
.short-film-final-timeline-ruler-row,.short-film-final-track{display:grid;grid-template-columns:112px minmax(0,1fr);border-top:1px solid var(--line)}
.short-film-track-label-spacer,.short-film-final-track-label{border-right:1px solid var(--line);background:color-mix(in srgb,var(--panel) 92%,transparent)}
.short-film-final-track-label{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:10px 12px;min-height:58px;color:var(--muted)}
.short-film-final-track-label b{color:var(--text);font-size:12px}.short-film-final-track-label span{font-size:10px}
.short-film-final-time-ruler{position:relative;height:32px;background:var(--panel);overflow:visible}
.short-film-final-time-ruler:before{content:"";position:absolute;left:0;right:0;bottom:5px;height:6px;background:repeating-linear-gradient(90deg,color-mix(in srgb,var(--muted) 40%,transparent) 0 1px,transparent 1px 2%)}
.short-film-final-time-ruler>span{position:absolute;top:5px;transform:translateX(-50%);font-size:9px;color:var(--muted);white-space:nowrap}.short-film-final-time-ruler>span:first-child{transform:none}.short-film-final-time-ruler>span:last-of-type{transform:translateX(-100%)}
.short-film-final-playhead{position:absolute;z-index:12;top:0;bottom:-235px;width:2px;background:var(--accent);pointer-events:none;transition:left .08s linear}.short-film-final-playhead:before{content:"";position:absolute;left:50%;top:-1px;transform:translateX(-50%);width:10px;height:10px;border-radius:50%;background:var(--accent)}
.short-film-final-track-lane{min-width:0;display:flex;align-items:stretch;gap:4px;padding:5px;background:#0d1017;overflow:hidden;min-height:62px}
.short-film-final-track-lane>*{min-width:70px}.short-film-final-video-lane{min-height:112px}
.short-film-final-multitrack .short-film-final-shot{flex:var(--clip-duration) 1 0!important;min-width:105px;display:grid;grid-template-rows:58px auto;gap:4px;padding:5px;border-radius:9px;position:relative;overflow:hidden}
.short-film-final-multitrack .short-film-final-shot-thumb{height:58px;aspect-ratio:auto;border-radius:6px}.short-film-final-multitrack .short-film-final-shot-copy{gap:0}.short-film-final-multitrack .short-film-final-shot-copy b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.short-film-final-multitrack .short-film-final-shot-copy small,.short-film-final-multitrack .short-film-final-shot-copy span{font-size:9px}
.short-film-timeline-trim-edge{position:absolute;top:0;bottom:0;width:6px;z-index:4;cursor:ew-resize;background:transparent}.short-film-timeline-trim-edge:hover{background:color-mix(in srgb,var(--accent) 65%,transparent)}.short-film-timeline-trim-edge.start{left:0}.short-film-timeline-trim-edge.end{right:0}
.short-film-timeline-shot-slot{position:relative;flex:var(--clip-duration) 1 0;min-width:105px;height:48px;background:color-mix(in srgb,var(--panel) 80%,transparent);border-radius:7px}
.short-film-timeline-subtitle-clip{position:absolute;top:7px;height:34px;min-width:22px;max-width:100%;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 70%,var(--line));border-radius:6px;background:color-mix(in srgb,var(--accent) 30%,#15162a);color:#fff;padding:4px 7px;text-align:left;cursor:pointer}.short-film-timeline-subtitle-clip span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9px}
.short-film-timeline-audio-clip{position:relative;flex:var(--clip-duration) 1 0;min-width:105px;height:52px;border:1px solid color-mix(in srgb,#3a8fff 48%,var(--line));border-radius:7px;background:color-mix(in srgb,#15345f 48%,var(--panel));color:#d8e9ff;padding:5px 7px;text-align:left;overflow:hidden;cursor:pointer}.short-film-timeline-audio-clip b,.short-film-timeline-audio-clip small{position:relative;z-index:2;font-size:9px;display:block}.short-film-waveform{position:absolute;left:4px;right:4px;bottom:5px;height:22px;opacity:.6;background:repeating-linear-gradient(90deg,transparent 0 3px,currentColor 3px 4px,transparent 4px 7px);mask:linear-gradient(to bottom,transparent 0,black 28%,black 72%,transparent 100%)}
.short-film-timeline-bgm-clip{position:relative;flex:1;height:52px;border:1px solid color-mix(in srgb,#54b86a 50%,var(--line));border-radius:7px;background:color-mix(in srgb,#21482b 58%,var(--panel));color:#dfffe7;padding:5px 8px;text-align:left;overflow:hidden;cursor:pointer}.short-film-timeline-bgm-clip b,.short-film-timeline-bgm-clip small{position:relative;z-index:2;font-size:9px;display:block}.short-film-timeline-empty-audio{display:flex;align-items:center;padding:0 12px;color:var(--muted);font-size:10px}
@media(max-width:800px){.short-film-final-timeline-ruler-row,.short-film-final-track{grid-template-columns:72px minmax(620px,1fr)}.short-film-final-multitrack{overflow-x:auto}.short-film-final-track-label{position:sticky;left:0;z-index:15}.short-film-track-label-spacer{position:sticky;left:0;z-index:15}}
.short-film-inspector-used-duration{display:flex;align-items:baseline;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.short-film-inspector-used-duration span,.short-film-inspector-used-duration small{font-size:11px;color:var(--muted)}.short-film-inspector-used-duration b{font-size:14px;color:var(--text)}
.short-film-subtitle-edge{position:absolute;top:0;bottom:0;width:7px;z-index:3;cursor:ew-resize;background:transparent}.short-film-subtitle-edge.start{left:0}.short-film-subtitle-edge.end{right:0}.short-film-timeline-subtitle-clip:hover .short-film-subtitle-edge,.short-film-timeline-subtitle-clip[data-subtitle-drag-mode] .short-film-subtitle-edge{background:color-mix(in srgb,var(--accent) 60%,transparent)}.short-film-timeline-subtitle-clip[data-subtitle-drag-mode="move"]{cursor:grabbing;opacity:.92}

/* 2026-08-21 humanized timeline: direct edit below, preview above, precision inspector right */
.short-film-final-multitrack{--timeline-width:900px;--timeline-label-width:96px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-gutter:stable}
.short-film-final-timeline-ruler-row,.short-film-final-track{grid-template-columns:var(--timeline-label-width) var(--timeline-width);min-width:calc(var(--timeline-label-width) + var(--timeline-width))}
.short-film-final-track-lane{width:var(--timeline-width);min-width:var(--timeline-width);overflow:visible;gap:0;padding:5px 0}
.short-film-final-time-ruler{width:var(--timeline-width);min-width:var(--timeline-width);cursor:pointer}
.short-film-final-track-label,.short-film-track-label-spacer{position:sticky;left:0;z-index:18}
.short-film-final-multitrack .short-film-final-shot,.short-film-timeline-shot-slot,.short-film-timeline-audio-clip{min-width:26px!important;max-width:none!important;margin:0;border-radius:6px}
.short-film-final-multitrack .short-film-final-shot{flex-grow:0!important;flex-shrink:0!important}
.short-film-timeline-shot-slot,.short-film-timeline-audio-clip{flex-grow:0!important;flex-shrink:0!important}
.short-film-timeline-bgm-clip{flex-grow:0!important;flex-shrink:0!important;max-width:none}
.short-film-final-shot.is-selected-object,.short-film-timeline-subtitle-clip.is-selected-object,.short-film-timeline-audio-clip.is-selected-object,.short-film-timeline-bgm-clip.is-selected-object{outline:2px solid var(--accent);outline-offset:-2px;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}
.short-film-timeline-subtitle-clip.is-selected-object{z-index:8;background:color-mix(in srgb,var(--accent) 48%,#15162a)}
.short-film-final-shot.active:not(.is-selected-object){outline:none;box-shadow:none}
.short-film-final-time-ruler:hover{background:color-mix(in srgb,var(--accent) 4%,var(--panel))}
.short-film-final-playhead{pointer-events:none}
.short-film-selected-subtitle-editor{display:grid;gap:14px}
.short-film-selected-subtitle-editor>label{display:grid;gap:7px;color:var(--muted);font-size:12px}
.short-film-selected-subtitle-editor textarea{min-height:96px;resize:vertical;line-height:1.55}
.short-film-final-subtitle-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.short-film-final-subtitle-time-grid label{display:grid;gap:6px;font-size:12px;color:var(--muted)}
.short-film-subtitle-duration-readout{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.short-film-subtitle-duration-readout span{font-size:11px;color:var(--muted)}
.short-film-subtitle-duration-readout b{font-size:13px}
.short-film-timeline-subtitle-clip{min-width:18px;max-width:none;padding:4px 9px}
.short-film-timeline-subtitle-clip span{font-size:10px}
@media(max-width:800px){.short-film-final-multitrack{--timeline-label-width:72px}.short-film-final-timeline-ruler-row,.short-film-final-track{grid-template-columns:var(--timeline-label-width) var(--timeline-width)}.short-film-final-subtitle-time-grid{grid-template-columns:1fr}}

/* AI 短片：01 劇本閱讀式工作區 */
.short-film-script-reader{display:grid;gap:22px;margin:8px 0 20px}.short-film-script-reader-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:6px 2px 18px;border-bottom:1px solid color-mix(in srgb,var(--border) 55%,transparent)}.short-film-script-reader-head h3{font-size:clamp(26px,3vw,38px);margin:4px 0 8px}.short-film-script-reader-head p{max-width:760px;margin:0;color:var(--muted);font-size:15px;line-height:1.8}.short-film-script-stats{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.short-film-script-stats span{padding:7px 11px;border-radius:999px;background:var(--soft);font-size:13px;white-space:nowrap}.short-film-script-sections{display:grid;gap:10px}.short-film-script-section{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;padding:20px 0}.short-film-script-section+.short-film-script-section{border-top:1px solid color-mix(in srgb,var(--border) 45%,transparent)}.short-film-script-section-index{font-size:12px;font-weight:800;color:var(--muted);letter-spacing:.12em;padding-top:5px}.short-film-script-section-body{min-width:0}.short-film-script-section-body>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.short-film-script-section-body h4{font-size:20px;margin:0 0 4px}.short-film-script-section-body header span{color:var(--muted);font-size:13px}.short-film-script-section-body header>b{font-size:13px;white-space:nowrap;padding:6px 9px;border-radius:999px;background:var(--soft)}.short-film-script-prose{margin:16px 0;line-height:1.95;max-width:850px}.short-film-script-dialogue{display:grid;gap:12px;margin-top:14px}.short-film-script-dialogue>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:14px;align-items:start}.short-film-script-dialogue b{font-size:13px;color:var(--muted);padding-top:2px}.short-film-script-dialogue p{margin:0;font-size:16px;line-height:1.8}.short-film-script-edit-drawer{margin-top:8px;border-radius:16px;background:var(--soft);padding:0 16px}.short-film-script-edit-drawer>summary{cursor:pointer;padding:14px 0;font-weight:750}.short-film-script-edit-drawer .short-film-script-editor{padding:4px 0 18px}@media(max-width:760px){.short-film-script-reader-head{display:grid}.short-film-script-stats{justify-content:flex-start}.short-film-script-section{grid-template-columns:30px minmax(0,1fr)}.short-film-script-dialogue>div{grid-template-columns:1fr;gap:2px}}

/* AI 短片：02 美術定稿 */
.short-film-art-stage{display:grid;gap:22px}.short-film-art-catalog{display:grid;gap:0}.short-film-art-category{display:grid;gap:14px;padding:4px 0 30px}.short-film-art-category+.short-film-art-category{border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent);padding-top:30px}.short-film-art-category-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.short-film-art-category-head>div{display:flex;align-items:baseline;gap:9px}.short-film-art-category-head h3{margin:0;font-size:20px}.short-film-art-category-head small{color:var(--muted)}.short-film-art-category-empty{padding:18px 0;color:var(--muted)}.short-film-art-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.short-film-art-visual-card{min-width:0;border:1px solid color-mix(in srgb,var(--border) 65%,transparent);border-radius:18px;overflow:hidden;background:var(--panel);box-shadow:0 8px 26px rgba(0,0,0,.035)}.short-film-art-visual-card.is-finalized{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.short-film-art-card-visual{position:relative;aspect-ratio:4/3;background:linear-gradient(145deg,var(--soft),color-mix(in srgb,var(--accent) 10%,var(--surface)));overflow:hidden}.short-film-art-card-hero{width:100%;height:100%;padding:0!important;border:0!important;border-radius:0!important;background:transparent}.short-film-art-card-hero img{width:100%;height:100%;object-fit:cover;display:block}.short-film-art-card-placeholder{height:100%;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted)}.short-film-art-card-placeholder span{font-size:36px;color:color-mix(in srgb,var(--accent) 55%,var(--muted))}.short-film-art-card-status{position:absolute;left:12px;right:12px;top:12px;display:flex;justify-content:space-between;align-items:flex-start;gap:6px;pointer-events:none}.short-film-art-card-status .badge{font-size:10px;padding:4px 7px}.short-film-art-card-copy{display:grid;gap:11px;padding:15px}.short-film-art-card-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.short-film-art-card-title h4{font-size:18px;margin:0}.short-film-art-card-title small,.short-film-art-card-title>span{color:var(--muted);font-size:11px}.short-film-art-card-summary{margin:0;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.short-film-art-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.short-film-art-card-actions>form,.short-film-art-card-actions .button{width:100%}.short-film-art-card-actions .button{justify-content:center}.short-film-art-card-details{border-top:1px solid color-mix(in srgb,var(--border) 42%,transparent);padding-top:8px}.short-film-art-card-details>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;font-weight:700;color:var(--muted);padding:4px 0}.short-film-art-detail-count{font-size:11px;font-weight:600;color:var(--muted)}.short-film-art-card-editor{padding-top:12px}.short-film-art-card-editor form{display:grid;gap:10px}.short-film-art-footer{display:grid;gap:14px}.short-film-add-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.short-film-add-row form{display:grid;grid-template-columns:1fr 1fr auto;gap:6px}.short-film-art-stage .short-film-library-picker{margin:0;padding:0;border:0;background:transparent}.short-film-art-stage .short-film-library-picker summary{font-size:12px}.short-film-art-stage .short-film-voice-panel{border:0;padding:10px 0 0;background:transparent}@media(max-width:980px){.short-film-art-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.short-film-add-row{grid-template-columns:1fr}}@media(max-width:760px){.short-film-art-card-grid{grid-template-columns:1fr}.short-film-art-category-head{align-items:flex-start;flex-direction:column}.short-film-art-card-actions{grid-template-columns:1fr}}

/* AI 短片：03 導演分鏡台 */
.short-film-storyboard-stage{display:grid;gap:20px}.short-film-storyboard-heading{align-items:flex-start}.short-film-storyboard-stats{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.short-film-storyboard-empty{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px;border-radius:18px;background:var(--surface);border:1px dashed var(--line)}.short-film-storyboard-empty p{margin:5px 0 0;color:var(--muted)}.short-film-rhythm-check{border-radius:18px;background:var(--surface);border:1px solid var(--line);overflow:hidden}.short-film-rhythm-check>summary{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:15px 18px;cursor:pointer;font-weight:800}.short-film-rhythm-check>summary small{font-weight:500;color:var(--muted)}.short-film-rhythm-list{display:grid;gap:8px;padding:0 16px 16px}.short-film-rhythm-item{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;border-radius:13px;background:var(--panel)}.short-film-rhythm-item p{margin:0;line-height:1.55}.short-film-story-sequences{display:grid;gap:22px}.short-film-story-sequence{display:grid;gap:13px;padding:18px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}.short-film-story-sequence-head{display:grid;grid-template-columns:42px 1fr auto;align-items:start;gap:12px}.short-film-story-sequence-index{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--accent-soft);color:var(--accent);font-weight:900}.short-film-story-sequence-head h3{margin:0 0 5px}.short-film-story-sequence-head p{margin:0;color:var(--muted);line-height:1.55}.short-film-story-shot-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.short-film-story-shot-card{min-width:0;border-radius:16px;background:var(--panel);overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 80%,transparent)}.short-film-story-shot-visual{aspect-ratio:16/8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:linear-gradient(135deg,var(--accent-soft),var(--surface));color:var(--accent);font-weight:900;letter-spacing:.06em}.short-film-story-shot-visual small{color:var(--muted);font-weight:600;letter-spacing:0}.short-film-story-shot-copy{display:grid;gap:9px;padding:14px}.short-film-story-shot-copy h4{margin:2px 0 0;font-size:16px}.short-film-story-shot-copy>p{margin:0;line-height:1.55}.short-film-shot-entity-meta span{background:var(--surface)}.short-film-timing-note{font-size:12px;color:var(--muted);padding:8px 10px;border-radius:10px;background:var(--surface)}.short-film-shot-advanced{margin-top:8px;border-radius:12px;background:var(--surface);padding:10px}.short-film-shot-advanced>summary{cursor:pointer;font-weight:750;color:var(--muted)}.short-film-shot-advanced-fields{display:grid;gap:10px;margin-top:10px}.short-film-director-note{padding:10px 12px;border-radius:11px;background:var(--panel)}.short-film-director-note p{margin:4px 0 0;color:var(--muted)}@media(max-width:760px){.short-film-story-sequence-head{grid-template-columns:38px 1fr}.short-film-story-sequence-head>.badge{grid-column:2}.short-film-storyboard-empty{align-items:flex-start;flex-direction:column}.short-film-storyboard-stats{justify-content:flex-start}}

/* AI 短片：04 開拍方案與透明計價 */
.short-film-shoot-stage{display:grid;gap:20px}.short-film-shoot-heading{align-items:flex-start}.short-film-model-choice{display:grid;gap:13px;padding:18px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}.short-film-subsection-head h3{margin:2px 0 4px}.short-film-subsection-head p{margin:0;color:var(--muted)}.short-film-model-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.short-film-model-option{display:grid;gap:8px;padding:14px;border-radius:15px;background:var(--panel);border:1px solid transparent}.short-film-model-option h4{margin:0}.short-film-model-option p,.short-film-model-option small{margin:0;color:var(--muted);line-height:1.5}.short-film-model-option.is-recommended{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:var(--accent-soft)}.short-film-model-option.is-disabled{opacity:.65}.short-film-plan-comparison{border-radius:14px;border:1px solid var(--line);overflow:hidden}.short-film-plan-comparison>summary{padding:12px 14px;cursor:pointer;font-weight:800}.short-film-comparison-table{width:100%;border-collapse:collapse;font-size:13px}.short-film-comparison-table th,.short-film-comparison-table td{padding:11px 12px;text-align:left;vertical-align:top;border-top:1px solid var(--line)}.short-film-comparison-table th{color:var(--muted);font-size:11px;letter-spacing:.03em}.short-film-price-chip{display:inline-flex;padding:3px 7px;margin:2px;border-radius:999px;background:var(--panel);white-space:nowrap}.short-film-plan-comparison .form-help{padding:0 13px 12px}.short-film-shoot-total-bar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:15px 17px;border-radius:17px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line))}.short-film-shoot-total-bar>div{display:grid;gap:2px}.short-film-shoot-total-bar>div>b{font-size:22px}.short-film-shoot-total-bar small{color:var(--muted)}.short-film-full-cost-details{border:1px solid var(--line);border-radius:15px;background:var(--surface)}.short-film-full-cost-details>summary{cursor:pointer;padding:12px 14px;font-weight:800}.short-film-full-cost-list{display:grid;padding:0 14px 14px}.short-film-full-cost-list>div{display:grid;grid-template-columns:1fr auto 70px;gap:12px;padding:9px 0;border-top:1px solid var(--line);align-items:center}.short-film-full-cost-list>div span:nth-child(2){color:var(--muted);font-size:12px}.short-film-full-cost-list>div b{text-align:right}.short-film-shoot-controls{grid-template-columns:repeat(4,minmax(120px,1fr)) minmax(180px,auto)!important}.short-film-shot-cost>span{display:grid;gap:2px}.short-film-shot-cost small{font-size:11px;font-weight:500;color:var(--muted)}@media(max-width:950px){.short-film-model-option-grid{grid-template-columns:1fr}.short-film-shoot-total-bar{align-items:flex-start;flex-direction:column}.short-film-shoot-controls{grid-template-columns:1fr 1fr!important}}@media(max-width:620px){.short-film-shoot-controls{grid-template-columns:1fr!important}.short-film-full-cost-list>div{grid-template-columns:1fr auto}.short-film-full-cost-list>div span:nth-child(2){grid-column:1}}

/* AI 短片：05 單一 Master Preview */
.short-film-final-preview-head>div>p{margin:3px 0 0;color:var(--muted);font-size:12px;line-height:1.55;max-width:620px}.short-film-final-preview-actions{align-items:center;flex-wrap:wrap;justify-content:flex-end}.short-film-preview-proxy-status{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;background:var(--panel);color:var(--muted);white-space:nowrap}.short-film-preview-proxy-status.ready{background:color-mix(in srgb,#20b26b 14%,var(--panel));color:#20b26b}.short-film-preview-proxy-status.stale{background:color-mix(in srgb,#d99a24 15%,var(--panel));color:#b67b14}.short-film-preview-proxy-status.working{background:var(--accent-soft);color:var(--accent)}.short-film-final-master-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#07090d}.short-film-final-master-placeholder{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:7px;text-align:center;padding:28px;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.055),transparent 48%),#07090d;color:#f4f6fa}.short-film-final-master-placeholder[hidden]{display:none}.short-film-final-master-placeholder p{max-width:520px;margin:0;color:#9298a5;line-height:1.65;font-size:13px}.short-film-final-player[data-preview-stale="1"]:has(.short-film-final-master-preview:not([hidden]))::before{content:"舊預覽 · 剪輯已變更";position:absolute;z-index:8;left:12px;top:12px;padding:6px 9px;border-radius:999px;background:rgba(8,10,14,.82);border:1px solid rgba(255,190,76,.35);color:#ffc260;font-size:11px;font-weight:800;pointer-events:none}.short-film-final-now{padding:0 2px}.short-film-final-now b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.short-film-final-workspace>.short-film-final-timeline-panel{border-color:color-mix(in srgb,var(--line) 80%,transparent);background:color-mix(in srgb,#0e1118 84%,var(--surface));}.short-film-final-multitrack .short-film-final-track-lane{background:#080b10}.short-film-final-multitrack .short-film-final-time-ruler{background:#0b0e14}.short-film-final-multitrack .short-film-final-track-label{background:#10141c}@media(max-width:680px){.short-film-final-preview-actions{justify-content:flex-start}}

/* 02 美術：三欄角色卡內的聲音開關保持橫向可讀 */
.short-film-voice-toggle-form{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:100%}.short-film-voice-toggle{white-space:nowrap;min-width:0}.short-film-voice-toggle-form .button{white-space:nowrap;justify-self:end}@media(max-width:420px){.short-film-voice-toggle-form{grid-template-columns:1fr}.short-film-voice-toggle-form .button{justify-self:start}}

/* AI 電影 Studio V2 工作台 */
.video-studio-v2{width:min(1520px,calc(100% - 24px));margin:0 auto;padding:14px 0 48px;position:relative}.video-studio-v2-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;padding:8px 4px}.video-studio-v2-topbar>div{display:flex;align-items:center;gap:10px;min-width:0}.video-studio-v2-topbar a,.video-studio-v2-topbar span{font-size:12px;color:var(--muted)}.video-studio-v2-topbar h1{font-size:18px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-studio-v2-topbar .button[disabled],.video-studio-v2-editor-actions .button[disabled]{cursor:not-allowed;opacity:.55;transform:none;box-shadow:none}.video-studio-v2-layout{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px}.video-studio-v2-toolbar{display:flex;flex-direction:column;gap:7px;padding:8px;border:1px solid var(--line);border-radius:18px;background:var(--surface);align-self:start;position:sticky;top:86px}.video-studio-v2-toolbar button{display:grid;place-items:center;gap:4px;min-height:58px;padding:7px 4px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--muted);font-size:11px;font-weight:760;cursor:pointer}.video-studio-v2-toolbar button span{font-size:15px}.video-studio-v2-toolbar button:hover,.video-studio-v2-toolbar button:focus-visible,.video-studio-v2-toolbar button.is-active{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 24%,var(--line));outline:none}.video-studio-v2-content{display:grid;gap:12px;min-width:0}.video-studio-v2-stage-grid{display:grid;grid-template-columns:minmax(0,58fr) minmax(320px,42fr);gap:12px;align-items:stretch}.video-studio-v2-preview,.video-studio-v2-editor,.video-studio-v2-scenes{min-width:0;border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}.video-studio-v2-preview{display:grid;grid-template-rows:auto minmax(280px,1fr) auto}.video-studio-v2-panel-head{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line)}.video-studio-v2-panel-head div{min-width:0}.video-studio-v2-panel-head span,.video-studio-v2-panel-head>span{color:var(--muted);font-size:11px}.video-studio-v2-panel-head h2{font-size:16px;margin:3px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-studio-v2-preview-media{position:relative;display:grid;place-items:center;min-height:280px;max-height:520px;aspect-ratio:16/9;background:#090b10;overflow:hidden}.video-studio-v2-preview-media video,.video-studio-v2-preview-media>img{width:100%;height:100%;display:block;object-fit:contain}.video-studio-v2-empty{display:grid;justify-items:center;gap:6px;padding:28px;text-align:center}.video-studio-v2-preview-media .video-studio-v2-empty{color:#f4f5f8}.video-studio-v2-empty p{max-width:420px;margin:0;font-size:12px}.video-studio-v2-preview-media .video-studio-v2-empty p{color:#9499a6}.video-studio-v2-caption{margin:0;padding:10px 14px;text-align:center;font-size:13px;border-top:1px solid var(--line);background:var(--surface-2)}.video-studio-v2-editor{display:flex;flex-direction:column;max-height:590px}.video-studio-v2-save-state{white-space:nowrap;color:var(--success)!important;font-size:11px!important}.video-studio-v2-editor-body{display:grid;gap:11px;padding:14px;overflow:auto;overscroll-behavior:contain}.video-studio-v2-editor-body>label,.video-studio-v2-advanced-grid label{display:grid;gap:6px}.video-studio-v2-editor-body label>span,.video-studio-v2-advanced-grid label>span,.video-studio-v2-reference-grid h3,.video-studio-v2-advanced-grid h3{font-size:11px;color:var(--muted);margin:0}.video-studio-v2-editor-body textarea{min-height:0;resize:vertical}.video-studio-v2-reference-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.video-studio-v2-reference-grid section,.video-studio-v2-advanced-grid section{padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.video-studio-v2-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.video-studio-v2-chips span{padding:5px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:760}.video-studio-v2-chips small{color:var(--muted)}.video-studio-v2-editor-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.video-studio-v2-plan-note{font-size:11px;margin:-4px 0 0;text-align:right}.video-studio-v2-advanced{padding:0;border-bottom:0;border-top:1px solid var(--line)}.video-studio-v2-advanced summary{padding:12px 2px}.video-studio-v2-advanced-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding-top:2px}.video-studio-v2-advanced-grid .video-studio-v2-wide{grid-column:1/-1}.video-studio-v2-advanced-grid p{font-size:12px;margin:5px 0 0}.video-studio-v2-editor-empty{padding:24px}.video-studio-v2-scenes>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--line)}.video-studio-v2-scenes>header span,.video-studio-v2-scenes>header small{color:var(--muted);font-size:11px}.video-studio-v2-scenes>header h2{font-size:16px;margin:3px 0 0}.video-studio-v2-scene{padding:0;border-bottom:1px solid var(--line)}.video-studio-v2-scene:last-child{border-bottom:0}.video-studio-v2-scene>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;list-style:none}.video-studio-v2-scene>summary::-webkit-details-marker{display:none}.video-studio-v2-scene>summary span:first-child{display:grid;gap:3px}.video-studio-v2-scene>summary small,.video-studio-v2-scene>summary span:last-child{color:var(--muted);font-size:11px}.video-studio-v2-scene>summary:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.video-studio-v2-shot-strip{display:flex;gap:9px;padding:0 14px 14px;overflow-x:auto;overscroll-behavior-inline:contain}.video-studio-v2-shot-card{flex:0 0 154px;display:grid;gap:6px;padding:7px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer}.video-studio-v2-shot-card:hover,.video-studio-v2-shot-card:focus-visible,.video-studio-v2-shot-card.is-selected{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 12%,transparent)}.video-studio-v2-shot-thumb{display:grid;place-items:center;aspect-ratio:16/9;border-radius:9px;overflow:hidden;background:color-mix(in srgb,var(--accent) 7%,var(--surface));color:var(--muted);font-size:10px}.video-studio-v2-shot-thumb img{width:100%;height:100%;object-fit:cover}.video-studio-v2-shot-meta{display:flex;justify-content:space-between;gap:8px;font-size:10px}.video-studio-v2-shot-meta small{color:var(--muted)}.video-studio-v2-shot-title{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-studio-v2-drawer{position:absolute;z-index:20;left:84px;top:68px;width:min(390px,calc(100% - 96px));max-height:calc(100vh - 110px);overflow:auto;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.video-studio-v2-drawer[hidden]{display:none}.video-studio-v2-drawer>header{position:sticky;top:0;display:flex;justify-content:space-between;gap:12px;padding:14px;background:var(--surface);border-bottom:1px solid var(--line)}.video-studio-v2-drawer>header span{color:var(--muted);font-size:11px}.video-studio-v2-drawer>header h2{font-size:16px;margin:3px 0 0}.video-studio-v2-drawer>header button{border:0;background:transparent;color:var(--muted);cursor:pointer}.video-studio-v2-drawer>section{padding:14px;border-bottom:1px solid var(--line)}.video-studio-v2-drawer>section h3{font-size:14px}.video-studio-v2-assets{display:grid;gap:8px}.video-studio-v2-assets>article{display:grid;grid-template-columns:68px 1fr;gap:10px;align-items:center}.video-studio-v2-asset-visual{display:grid;place-items:center;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--surface-2);color:var(--muted);font-size:10px;text-align:center}.video-studio-v2-asset-visual img{width:100%;height:100%;object-fit:cover}.video-studio-v2-assets h4{font-size:13px;margin:0}.video-studio-v2-assets p{font-size:11px;margin:3px 0 0}.video-studio-v2 button:focus-visible,.video-studio-v2 a:focus-visible,.video-studio-v2 input:focus-visible,.video-studio-v2 textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.video-studio-v2-assets small{color:var(--muted);font-size:10px}.video-studio-v2-assets details{margin-top:7px}.video-studio-v2-assets summary{font-size:11px;color:var(--accent);cursor:pointer}.video-studio-v2-assets form{display:grid;gap:7px;margin-top:7px}.video-studio-v2-assets form label{display:grid;gap:4px;font-size:10px;color:var(--muted)}.video-studio-v2-assets form input,.video-studio-v2-assets form textarea{width:100%}.video-studio-v2-assets form>div{display:flex;align-items:center;gap:8px}
@media(max-width:1000px){.video-studio-v2-stage-grid{grid-template-columns:1fr}.video-studio-v2-editor{max-height:none}.video-studio-v2-preview-media{max-height:460px}.video-studio-v2-toolbar{position:static}}
@media(max-width:700px){.video-studio-v2{width:min(100% - 16px,1520px)}.video-studio-v2-topbar{align-items:flex-start;flex-direction:column}.video-studio-v2-topbar>div:last-child{width:100%;flex-wrap:wrap}.video-studio-v2-layout{grid-template-columns:1fr}.video-studio-v2-toolbar{display:grid;grid-template-columns:repeat(4,1fr)}.video-studio-v2-toolbar button{min-height:50px}.video-studio-v2-preview{grid-template-rows:auto minmax(220px,1fr) auto}.video-studio-v2-preview-media{min-height:220px}.video-studio-v2-reference-grid,.video-studio-v2-advanced-grid{grid-template-columns:1fr}.video-studio-v2-advanced-grid .video-studio-v2-wide{grid-column:auto}.video-studio-v2-drawer{position:fixed;inset:76px 8px 8px;width:auto;max-height:none}.video-studio-v2-scenes>header{align-items:flex-start}.video-studio-v2-scene>summary span:last-child{display:none}}
.video-studio-edit-timeline{min-height:280px}.video-studio-edit-tracks{display:grid;gap:8px;padding:14px;overflow:auto}.video-studio-edit-tracks>div{display:grid;grid-template-columns:46px minmax(420px,1fr);gap:10px;align-items:center;min-height:38px}.video-studio-edit-tracks>b{color:var(--muted);font-size:11px;text-align:right}.video-studio-edit-tracks>div>span,.video-studio-edit-tracks>div>div{min-height:30px;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);font-size:11px}.video-studio-edit-tracks [data-edit-clips]{display:flex;gap:6px}.video-studio-edit-clip{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:7px 9px;font-size:11px;cursor:pointer}.video-studio-edit-clip.is-selected{border-color:var(--accent);background:var(--accent-soft)}
.studio-projects{max-width:1380px}.studio-projects-head{align-items:center}.studio-projects-head .page-title{font-size:clamp(2rem,2.6vw,2.75rem);margin:7px 0}.studio-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.studio-project-card,.studio-project-empty{min-width:0;padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 12px 38px rgba(30,30,60,.045)}.studio-project-card{display:flex;flex-direction:column;gap:18px}.studio-project-card.is-legacy{border-color:color-mix(in srgb,var(--accent) 28%,var(--line));background:color-mix(in srgb,var(--accent) 3%,var(--surface))}.studio-project-card>header,.studio-project-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.studio-project-status,.studio-project-card time{color:var(--muted);font-size:11px;font-weight:720}.studio-project-card-copy{min-width:0}.studio-project-card h2{margin:0 0 8px;font-size:20px;line-height:1.25;overflow-wrap:anywhere}.studio-project-card h2 a:hover{color:var(--accent)}.studio-project-card p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:3.9em;margin:0;font-size:13px}.studio-project-card footer{margin-top:auto;align-items:flex-end}.studio-project-card-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.studio-project-card-actions form{margin:0}.studio-project-empty{grid-column:1/-1;text-align:center;padding:48px}.studio-project-empty h2{margin:10px 0}.studio-project-empty p{max-width:460px;margin:0 auto 18px}@media(max-width:980px){.studio-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.studio-projects-head{align-items:stretch;flex-direction:column}.studio-projects-head>.button{width:100%}.studio-project-grid{grid-template-columns:1fr}.studio-project-card>footer{align-items:stretch;flex-direction:column}.studio-project-card-actions,.studio-project-card-actions form,.studio-project-card-actions .button{width:100%}.studio-project-empty{padding:34px 20px}}

.video-studio-resources{width:min(1380px,calc(100% - 32px));margin:0 auto;padding:28px 0 52px;display:grid;gap:20px}.video-studio-resources-head,.video-studio-resource-section>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.video-studio-resources-head h1,.video-studio-resource-section h2{margin:4px 0;font-size:clamp(22px,2vw,32px)}.video-studio-resources-head p,.video-studio-resource-section header span{margin:0;color:var(--muted);font-size:13px}.video-studio-resource-section{display:grid;gap:12px}.video-studio-resource-section h2{font-size:18px}.video-studio-resource-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.video-studio-resource-card{display:grid;gap:11px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);text-decoration:none}.video-studio-resource-card:hover{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.video-studio-resource-image{display:grid;place-items:center;aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:var(--surface-2);color:var(--muted);font-size:12px;text-align:center}.video-studio-resource-image img{width:100%;height:100%;object-fit:cover}.video-studio-resource-copy{display:grid;gap:6px;min-width:0}.video-studio-resource-copy>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-studio-resource-copy small{color:var(--muted);font-size:12px;line-height:1.45}.video-studio-resource-copy em{justify-self:start;font-style:normal}.video-studio-resource-empty{padding:20px;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}.video-studio-resource-detail-grid{display:grid;grid-template-columns:minmax(280px,400px) minmax(0,1fr);gap:18px}.video-studio-resource-form,.video-studio-resource-history,.video-studio-resource-section form{display:grid;align-content:start;gap:14px;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.video-studio-resource-form label,.video-studio-resource-history label,.video-studio-resource-section form label{display:grid;gap:6px}.video-studio-resource-form div,.video-studio-resource-history>div,.video-studio-resource-section form{display:flex;gap:8px;flex-wrap:wrap}.video-studio-resource-history{margin-top:18px}.video-studio-resource-history>div{margin:8px 0}.video-studio-resource-form p,.video-studio-resource-section form p{min-height:20px;margin:0;color:var(--muted)}@media(max-width:1050px){.video-studio-resource-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.video-studio-resources{width:min(100% - 20px,1380px);padding-top:18px}.video-studio-resources-head,.video-studio-resource-section>header{align-items:flex-start;flex-direction:column}.video-studio-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.video-studio-resource-detail-grid{grid-template-columns:1fr}}@media(max-width:420px){.video-studio-resource-grid{grid-template-columns:1fr}}
.video-studio-resource-picker{width:min(760px,calc(100vw - 32px));max-height:min(80vh,760px);color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:18px}.video-studio-resource-picker::backdrop{background:#05030bb8}.video-studio-resource-picker header{display:flex;justify-content:space-between;align-items:center;gap:12px}.video-studio-resource-picker label{display:grid;gap:6px;margin:14px 0}.video-studio-resource-picker-item{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.video-studio-resource-picker-item .video-studio-resource-image{width:76px}.video-studio-resource-picker-item span{display:grid;gap:5px}.video-studio-resource-picker-item small{color:var(--muted)}
.video-short-settings{display:grid;gap:18px;min-width:0}.admin-settings-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.admin-settings-tabs button{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);padding:9px 14px;font-weight:760;cursor:pointer}.admin-settings-tabs button.active,.admin-settings-tabs button:hover,.admin-settings-tabs button:focus-visible{color:var(--accent);border-color:var(--accent);background:var(--accent-soft);outline:none}.admin-settings-panel{display:grid;gap:16px;min-width:0}.admin-settings-panel.hidden{display:none}.admin-two-table-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-two-table-grid .table-wrap,.video-short-settings .table-wrap{overflow-x:auto}.video-short-settings table{width:100%;border-collapse:collapse}.video-short-settings th,.video-short-settings td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:13px}.video-short-settings th{color:var(--muted);font-weight:760;white-space:nowrap}.video-short-settings td small{color:var(--muted)}.admin-settings-detail{display:grid;gap:16px}.admin-settings-detail>summary{cursor:pointer;font-weight:800}.admin-settings-detail[open]>summary{color:var(--accent)}.admin-table-form{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.admin-table-form input{min-width:88px;max-width:150px}.video-short-settings fieldset{grid-column:1/-1;border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;gap:12px;flex-wrap:wrap}.video-short-settings fieldset label{display:inline-flex;gap:5px;align-items:center}.video-short-settings .stack{display:grid;gap:12px}.video-short-settings .stack label{display:grid;gap:6px}@media(max-width:900px){.admin-two-table-grid{grid-template-columns:1fr}.admin-table-form{min-width:420px}}@media(max-width:640px){.admin-settings-tabs{margin-inline:-4px}.video-short-settings th,.video-short-settings td{padding:9px;font-size:12px}.admin-table-form{min-width:360px}}
.video-studio-preparation-status{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:18px 20px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.video-studio-preparation-status strong{font-size:16px}.video-studio-preparation-status p{width:100%;margin:0}.video-studio-preparation-status small{color:var(--muted)}.video-studio-resource-copy .badge{display:inline-flex;width:max-content}.video-studio-resource-card-actions{display:flex;gap:6px;flex-wrap:wrap}.video-studio-resource-card-actions .button{flex:1 1 112px}.video-studio-resource-detail [data-resource-library]{margin-top:18px}.video-studio-resource-detail [data-resource-library] summary{cursor:pointer;font-weight:760}.video-studio-resource-detail [data-resource-library][open] summary{margin-bottom:12px}@media(max-width:700px){.video-studio-preparation-status{align-items:flex-start;flex-direction:column}.video-studio-preparation-status .button{width:100%}}
.video-studio-resource-card{position:relative}.video-studio-resource-edit{position:absolute;top:16px;right:16px;z-index:2;padding:6px 9px;border-radius:9px;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--accent);font-size:12px;font-weight:780}.video-studio-resource-card [data-resource-card-detail]:focus-visible,.video-studio-resource-edit:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 65%,white);outline-offset:2px}.video-studio-project-nav-tabs span{flex:0 0 auto;padding:8px 11px;border:1px solid transparent;border-radius:10px;color:var(--muted);font-size:12px;font-weight:760;opacity:.45}
/* Admin video-reference diagnostics stay bounded at tablet widths. */
.admin-reference-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px;margin-top:12px}.admin-reference-card{min-width:0;display:grid;gap:5px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.admin-reference-card.is-warning{border-color:var(--danger);box-shadow:0 0 0 1px color-mix(in srgb,var(--danger) 28%,transparent)}.admin-reference-card small,.admin-reference-card span{color:var(--muted);font-size:11px}.admin-reference-card strong{color:var(--danger);font-size:11px}.admin-reference-thumb{display:grid;place-items:center;aspect-ratio:16/10;border-radius:10px;overflow:hidden;background:var(--panel);color:var(--muted)}.admin-reference-thumb img{width:100%;height:100%;object-fit:cover}
.studio-directing-settings { min-width: 0; }
.studio-directing-settings textarea,
.studio-directing-settings select { max-width: 100%; width: 100%; }
