:root{--ink:#12131a;--muted:#737786;--soft:#f5f6fb;--line:#e7e8ee;--panel:#fff;--violet:#6658f5;--violet-dark:#5145d5;--teal:#18b7a0;--rose:#ed6d91;--shadow:0 18px 55px rgba(27,30,51,.08);--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--soft);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}p{line-height:1.65;color:var(--muted)}.wordmark{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.02em;font-size:1.12rem}.wordmark em{font-style:normal;color:var(--violet)}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;color:#fff;background:linear-gradient(135deg,var(--violet),#a791ff);font-size:.85rem;font-weight:850;box-shadow:0 8px 18px rgba(102,88,245,.25)}.public-nav{height:76px;padding:0 clamp(20px,4vw,72px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.86);border-bottom:1px solid rgba(226,227,235,.8);backdrop-filter:blur(16px);position:sticky;top:0;z-index:10}.public-nav nav{display:flex;align-items:center;gap:clamp(16px,3vw,34px);color:#616473;font-size:.9rem}.public-nav nav a:hover{color:var(--ink)}.nav-cta{padding:11px 17px;border-radius:10px;background:var(--ink);color:#fff!important;font-weight:700}.public-footer{display:grid;grid-template-columns:1.6fr 1fr auto;gap:30px;align-items:end;padding:48px clamp(20px,5vw,80px);background:#171822;color:#fff}.public-footer p{max-width:400px;color:#a4a7b5;font-size:.88rem}.public-footer>div:nth-child(2){display:flex;gap:22px;color:#c5c7d2;font-size:.88rem}.public-footer small{color:#8f92a1}.public-simple{min-height:calc(100vh - 76px);display:grid;place-items:center;padding:50px 20px}.simple-card{width:min(560px,100%);padding:48px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius);text-align:center}.simple-card h1{margin:10px 0;font-size:clamp(2rem,5vw,3.4rem);letter-spacing:-.05em}.simple-card .button{margin-top:20px}.kicker,.top-eyebrow,.workspace-label,.eyebrow{color:var(--violet);text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.67rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:12px 18px;font-weight:750;transition:.2s}.button:hover{transform:translateY(-1px)}.button.primary{color:#fff;background:var(--violet);border-color:var(--violet)}.button.primary:hover{background:var(--violet-dark)}.button.secondary{background:#fff}.button.danger{background:#fff0f2;color:#c23c5d;border-color:#ffd2db}.button.small{padding:9px 13px;font-size:.82rem}.alert{padding:13px 16px;border-radius:11px;margin-bottom:18px;font-size:.9rem;border:1px solid}.alert.success{background:#f0edff;border-color:#d1caff;color:#5b4daf}.alert.error{background:#fff1f3;border-color:#ffcdd8;color:#ad334f}.alert.info{background:#eef0ff;border-color:#cdd1ff;color:#4b42b8}.auth-page{min-height:100vh;background:#181923;display:grid;grid-template-columns:1.1fr 1fr;color:#fff}.auth-visual{padding:clamp(30px,6vw,90px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:radial-gradient(circle at 70% 25%,rgba(102,88,245,.35),transparent 45%),#191a29}.auth-visual:after{content:"";position:absolute;inset:15% -20% -20% 20%;border:1px solid rgba(255,255,255,.11);border-radius:50%;transform:rotate(-16deg)}.auth-visual h1{max-width:580px;font-size:clamp(2.6rem,5vw,5.3rem);letter-spacing:-.065em;line-height:.98;margin:70px 0 20px;position:relative;z-index:1}.auth-visual p{max-width:440px;color:#b0b2c4;position:relative;z-index:1}.auth-metrics{display:flex;gap:34px;position:relative;z-index:1}.auth-metrics strong{display:block;font-size:1.5rem}.auth-metrics small{color:#9b9eaf}.auth-panel{display:grid;place-items:center;background:#fff;color:var(--ink);padding:32px 20px}.auth-card{width:min(430px,100%)}.auth-card h2{font-size:2rem;letter-spacing:-.04em;margin:20px 0 8px}.auth-card>p{margin-top:0}.auth-card form{display:grid;gap:14px;margin-top:24px}.auth-card label,.field label{font-size:.78rem;font-weight:750;color:#454858;display:grid;gap:7px}.auth-card input,.field input,.field select,.field textarea,.form-control{width:100%;border:1px solid #dfe1e9;border-radius:10px;background:#fff;padding:12px 13px;color:var(--ink);outline:0}.auth-card input:focus,.field input:focus,.field select:focus,.field textarea:focus,.form-control:focus{border-color:var(--violet);box-shadow:0 0 0 3px rgba(102,88,245,.12)}.auth-card .button{width:100%;padding:13px}.auth-card .split{display:flex;justify-content:space-between;gap:15px;font-size:.84rem;color:var(--muted)}.auth-card .split a{color:var(--violet);font-weight:700}.google-button{display:flex!important;background:#fff;color:#30313a;border-color:#dfe1e9}.divider{display:flex;align-items:center;gap:12px;color:#a1a4b0;font-size:.75rem;margin:22px 0}.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}.app-body{background:#f4f5f9}.app-shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#191a25;color:#c6c8d4;padding:25px 15px 18px;display:flex;flex-direction:column;z-index:20}.sidebar .wordmark{color:#fff;padding:0 13px 36px}.sidebar .wordmark em{color:#b3a8ff}.workspace-label{color:#777b8e;padding:0 13px 12px;font-size:.62rem}.side-nav{display:grid;gap:4px}.side-nav a{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:10px;font-size:.84rem;color:#a9acbb}.side-nav a:hover,.side-nav a.active{background:rgba(255,255,255,.09);color:#fff}.side-nav i{width:20px;text-align:center;font-style:normal;color:#8d82ff}.side-account{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding:16px 8px 0;display:flex;align-items:center;gap:9px}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#dedbff;color:#5448c8;font-weight:800;font-size:.78rem}.side-account strong{display:block;color:#fff;font-size:.76rem;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-account small{display:block;color:#818596;font-size:.67rem;margin-top:3px}.side-account>a:last-child{margin-left:auto;color:#8f93a4}.app-main{width:calc(100% - 245px);margin-left:245px}.topbar{min-height:85px;padding:18px clamp(22px,4vw,54px);background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar h1{font-size:1.45rem;margin:4px 0 0;letter-spacing:-.035em}.top-actions{display:flex;align-items:center;gap:14px}.sidebar-toggle{display:none;border:0;background:transparent;font-size:1.4rem}.content{padding:clamp(22px,4vw,48px);max-width:1420px}.announcement{display:flex;gap:14px;align-items:center;padding:14px 17px;border-radius:12px;background:#eeefff;border:1px solid #d8d9ff;margin-bottom:20px;font-size:.87rem;color:#4d47a5}.announcement strong{color:#302a91}.page-intro{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.page-intro h2{font-size:2rem;letter-spacing:-.055em;margin:7px 0}.page-intro p{margin:0}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}.stat-card,.panel,.table-wrap,.plan-card,.ticket-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 25px rgba(27,30,51,.035)}.stat-card{padding:20px}.stat-card small{display:block;color:#888b99;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:750}.stat-card strong{display:block;font-size:1.9rem;letter-spacing:-.05em;margin:10px 0 5px}.stat-card span{color:#888b99;font-size:.78rem}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,1fr);gap:18px}.panel{padding:22px}.panel h3,.table-wrap h3{margin:0 0 16px;font-size:1rem;letter-spacing:-.02em}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.muted{color:#858895}.progress{height:7px;border-radius:8px;background:#ececf3;overflow:hidden}.progress>i{display:block;height:100%;background:linear-gradient(90deg,var(--violet),#9c8bff);border-radius:inherit}.quota-row{display:grid;gap:8px;margin:18px 0}.quota-row .line{display:flex;justify-content:space-between;font-size:.82rem}.quota-row .line span{color:#727583}.creation-list{display:grid;gap:9px}.creation-item{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #f0f0f4}.creation-item:last-child{border:0}.thumb{width:54px;height:42px;border-radius:8px;object-fit:cover;background:#e9eaf1}.creation-item strong{display:block;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:330px}.creation-item small{display:block;color:#898b98;font-size:.7rem;margin-top:4px}.status{margin-left:auto;font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.status.completed{color:#0b927b}.status.processing,.status.queued,.status.submitting{color:#9d7a00}.status.failed{color:#c44660}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-bottom:17px;flex-wrap:wrap}.toolbar form{display:flex;gap:8px}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;font-size:.8rem}.table-wrap th,.table-wrap td{text-align:left;padding:13px 15px;border-bottom:1px solid #f0f0f4;white-space:nowrap}.table-wrap th{color:#858895;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.table-wrap tr:last-child td{border-bottom:0}.table-wrap td strong{display:block}.table-wrap td small{display:block;color:#9294a0;margin-top:3px}.badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#f0efff;color:#5a4dd0;font-size:.65rem;font-weight:800;text-transform:uppercase}.badge.green{background:#e7faf5;color:#0c896f}.badge.orange{background:#fff5dc;color:#9a7100}.badge.red{background:#fff0f3;color:#b23955}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:grid;gap:7px;margin-bottom:15px}.field small{color:#888b98;font-size:.75rem}.field textarea{min-height:130px;resize:vertical}.field-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.checkbox-field{display:flex;align-items:center;gap:9px;font-size:.82rem;color:#555866}.checkbox-field input{accent-color:var(--violet)}.studio-layout{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.3fr);gap:18px}.studio-card{background:#1a1b27;color:#fff;border-radius:var(--radius);padding:24px;box-shadow:0 20px 50px rgba(19,20,32,.18)}.studio-card h2{margin:6px 0 6px;font-size:1.6rem;letter-spacing:-.04em}.studio-card p{color:#a6a9bb;margin-top:0}.studio-card .field label{color:#d6d8e2}.studio-card input,.studio-card select,.studio-card textarea{background:#242536;border-color:#3a3c4d;color:#fff}.studio-card .field small{color:#8e92a8}.studio-card .button.primary{background:#9387ff;border-color:#9387ff;color:#171720}.studio-result{min-height:470px;background:#101118;border-radius:var(--radius);display:grid;place-items:center;overflow:hidden;position:relative}.studio-result video,.studio-result img{width:100%;height:100%;object-fit:contain;background:#07080c}.studio-empty{text-align:center;padding:40px;color:#85899a}.studio-empty .empty-icon{font-size:2.4rem;color:#9186ff}.job-state{position:absolute;top:17px;left:17px;z-index:2;padding:7px 10px;border-radius:8px;background:rgba(0,0,0,.55);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.job-detail{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:18px}.media-viewer{background:#11121a;border-radius:var(--radius);min-height:450px;display:grid;place-items:center;overflow:hidden}.media-viewer video,.media-viewer img{max-width:100%;max-height:72vh}.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.plan-card{padding:24px;position:relative}.plan-card.featured{border-color:#9d92ff;box-shadow:0 14px 38px rgba(102,88,245,.13)}.plan-card .badge{position:absolute;top:18px;right:18px}.plan-card h3{font-size:1.22rem;margin:0 0 10px}.plan-price{font-size:2.2rem;letter-spacing:-.06em;font-weight:850;margin:10px 0}.plan-price small{font-size:.75rem;font-weight:500;letter-spacing:0;color:#858895}.plan-card ul{list-style:none;padding:0;margin:20px 0;display:grid;gap:11px;color:#686b78;font-size:.82rem}.plan-card li:before{content:"✓";color:var(--teal);font-weight:800;margin-right:8px}.ticket-list{display:grid;gap:10px}.ticket-card{display:flex;align-items:center;gap:15px;padding:16px}.ticket-card strong{font-size:.88rem}.ticket-card small{display:block;color:#8b8e9b;margin-top:4px}.ticket-card .status{margin-left:auto}.messages{display:grid;gap:12px;max-height:530px;overflow:auto;padding:2px}.message{max-width:78%;padding:13px 15px;border-radius:13px;background:#f1f1f7}.message.mine{margin-left:auto;background:#e9e6ff}.message small{display:block;color:#888b99;margin-top:6px;font-size:.66rem}.pagination{display:flex;gap:6px;margin-top:20px}.pagination a{padding:8px 12px;border:1px solid var(--line);border-radius:8px;font-size:.78rem}.pagination a.active{background:var(--violet);border-color:var(--violet);color:#fff}.code-box{padding:15px;border-radius:10px;background:#1b1c28;color:#e2e3ec;font-family:ui-monospace,monospace;font-size:.8rem;overflow:auto}.public-hero{padding:clamp(70px,10vw,150px) clamp(20px,6vw,100px) 80px;background:radial-gradient(circle at 80% 10%,#dfd9ff 0,transparent 28%),#fff}.public-hero .hero-inner{max-width:1230px;margin:auto}.public-hero h1{font-size:clamp(3rem,8vw,7.2rem);line-height:.92;letter-spacing:-.075em;max-width:900px;margin:20px 0}.public-hero h1 em{color:var(--violet);font-style:normal}.public-hero p{max-width:620px;font-size:1.05rem}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.hero-video{margin-top:60px;border-radius:20px;overflow:hidden;background:#101119;aspect-ratio:16/7;box-shadow:0 30px 80px rgba(18,19,33,.2)}.hero-video video{width:100%;height:100%;object-fit:cover}.public-section{padding:80px clamp(20px,6vw,100px)}.public-section .section-inner{max-width:1230px;margin:auto}.public-section h2{font-size:clamp(2.2rem,5vw,4.5rem);letter-spacing:-.065em;margin:10px 0}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:35px}.feature-card{padding:25px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.feature-card h3{margin:24px 0 8px}.feature-card p{font-size:.86rem}.feature-icon{font-size:1.6rem;color:var(--violet)}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.faq-item{padding:18px 0;border-bottom:1px solid var(--line)}.faq-item strong{display:flex;justify-content:space-between}.faq-item p{font-size:.86rem;margin-bottom:0}.public-cta{background:#191a25;color:#fff}.public-cta p{color:#afb1bf}.public-cta .button.primary{background:#9488ff;border-color:#9488ff;color:#171720}
@media(max-width:1050px){.auth-page{grid-template-columns:1fr}.auth-visual{display:none}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plans-grid,.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-layout,.job-detail{grid-template-columns:1fr}.studio-result{min-height:390px}.dashboard-grid{grid-template-columns:1fr}}
@media(max-width:760px){.public-nav{height:66px}.public-nav nav a:not(.nav-cta){display:none}.public-footer{grid-template-columns:1fr}.public-footer>div:nth-child(2){flex-wrap:wrap}.sidebar{transform:translateX(-100%);transition:.2s}.app-shell.sidebar-open .sidebar{transform:translateX(0)}.app-main{width:100%;margin-left:0}.topbar{min-height:72px;padding:14px 18px}.sidebar-toggle{display:block}.content{padding:20px 15px}.top-eyebrow{font-size:.58rem}.topbar h1{font-size:1.18rem}.top-actions .button{display:none}.stats-grid,.plans-grid,.feature-grid,.faq-grid,.form-grid,.form-grid.three{grid-template-columns:1fr}.page-intro{display:block}.page-intro .button{margin-top:14px}.panel{padding:17px}.studio-card{padding:18px}.studio-result{min-height:300px}.public-hero{padding:70px 20px 45px}.public-hero h1{font-size:clamp(3.2rem,17vw,5.5rem)}.public-section{padding:60px 20px}.hero-video{aspect-ratio:4/3}.message{max-width:90%}}

/* Studio generation state: a quiet orbital system instead of a generic spinner. */
.studio-generation-orbit{position:relative;display:block;width:76px;height:76px;border:0!important;border-radius:50%;color:inherit!important;background:radial-gradient(circle at center,rgba(179,166,255,.28) 0 8%,rgba(120,105,255,.08) 9% 34%,transparent 35%);box-shadow:0 0 0 1px rgba(175,161,255,.18),0 0 42px rgba(119,99,255,.2),inset 0 0 28px rgba(182,171,255,.12);animation:studio-orbit-breathe 3.2s ease-in-out infinite}
.studio-generation-orbit-core{position:absolute;inset:29px;border-radius:50%;background:#e9e5ff;box-shadow:0 0 18px 5px rgba(201,191,255,.8);animation:studio-core-pulse 1.8s ease-in-out infinite}
.studio-generation-orbit-ring{position:absolute;inset:9px;border:1px solid rgba(196,185,255,.58);border-radius:50%;transform:rotate(-24deg);animation:studio-ring-spin 4.5s linear infinite}
.studio-generation-orbit-ring.ring-b{inset:18px;border-color:rgba(113,218,209,.52);transform:rotate(58deg) scaleX(.65);animation-duration:3.4s;animation-direction:reverse}
.studio-generation-orbit-spark{position:absolute;top:4px;left:50%;width:6px;height:6px;border-radius:50%;background:#7ce1d4;box-shadow:0 0 14px 3px rgba(124,225,212,.7);transform-origin:0 34px;animation:studio-spark-orbit 2.7s linear infinite}
.studio-generation-orbit-spark.spark-b{top:auto;left:auto;right:7px;bottom:16px;background:#a891ff;box-shadow:0 0 14px 3px rgba(168,145,255,.7);transform-origin:-28px -18px;animation-duration:3.9s;animation-direction:reverse}
@keyframes studio-orbit-breathe{0%,100%{transform:scale(.94);opacity:.78}50%{transform:scale(1.04);opacity:1}}
@keyframes studio-core-pulse{0%,100%{transform:scale(.72);opacity:.72}50%{transform:scale(1.16);opacity:1}}
@keyframes studio-ring-spin{to{transform:rotate(336deg)}}
@keyframes studio-spark-orbit{to{transform:rotate(360deg)}}
.admin-ticket-sidebar{align-self:start;min-width:0}.admin-ticket-divider{height:1px;margin:22px 0;border-top:1px solid var(--line)}
.stat-card-action{display:flex!important;align-items:center;gap:10px;flex-wrap:wrap}.stat-card-action a,.link-button{border:0;background:transparent;color:var(--violet);font:inherit;font-size:.72rem;font-weight:750;padding:0;text-decoration:none;cursor:pointer}.link-button:hover,.stat-card-action a:hover{text-decoration:underline}
.manual-payment-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.manual-payment-plans{margin-bottom:18px}.manual-payment-plan{display:flex;flex-direction:column}.manual-payment-plan p{flex:1}.manual-payment-plan .button{width:100%}.manual-payment-history{overflow:auto}.manual-payment-history table{min-width:560px}
@media(max-width:760px){body{overflow-x:hidden}.content{min-width:0}.job-detail,.dashboard-grid{min-width:0}.admin-ticket-sidebar{order:-1}.manual-payment-intro{display:block}.manual-payment-intro .button{margin-top:12px}.motion-studio-page .studio-output-grid{grid-template-columns:1fr}.motion-studio-page .studio-composer{left:12px;right:12px;bottom:10px;width:auto;transform:none;max-width:none;overflow:hidden}.motion-studio-page .studio-form-grid-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.motion-studio-page .studio-form-grid-options .field,.motion-studio-page .studio-form-grid-options select,.motion-studio-page .studio-form-grid-options input{min-width:0;max-width:none;width:100%}.motion-studio-page .studio-submit-row{flex-direction:row;align-items:center}.motion-studio-page .studio-submit{width:auto;min-width:0;flex:0 0 auto}.motion-studio-page .studio-model-chip{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-generation-orbit{width:64px;height:64px}.studio-generation-orbit-core{inset:25px}.studio-generation-orbit-ring{inset:8px}.studio-generation-orbit-ring.ring-b{inset:15px}}
@media(max-width:420px){.motion-studio-page .content{padding-left:10px;padding-right:10px}.motion-studio-page .studio-composer{left:8px;right:8px;padding:10px}.motion-studio-page .studio-form-grid-options{grid-template-columns:1fr}.motion-studio-page .studio-format-switch{width:100%;overflow:auto}.motion-studio-page .studio-format-switch button{flex:1;white-space:nowrap}.motion-studio-page .studio-submit-row{gap:8px}.motion-studio-page .studio-upload-trigger{flex:0 0 38px}.motion-studio-page .studio-model-chip{flex:1}.manual-payment-history{margin-left:-2px;margin-right:-2px}}
.attachment-preview{margin-top:8px;padding:8px;border:1px solid var(--line);border-radius:9px;background:rgba(139,124,255,.08)}.attachment-preview img{display:block;max-width:220px;max-height:160px;border-radius:6px}.expiry-calendar{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}.expiry-day{padding:13px;border:1px solid var(--line);border-radius:10px;background:rgba(139,124,255,.06)}.expiry-day strong,.expiry-day span{display:block}.expiry-day span{margin-top:5px;color:var(--muted);font-size:.78rem}.addon-card output{float:right;color:var(--violet);font-weight:800}.addon-card input[type=range]{width:100%;accent-color:var(--violet)}.live-activity{margin-bottom:18px}.generating-animation i{animation:mv-pulse 1.2s ease-in-out infinite}@keyframes mv-pulse{0%,100%{transform:scale(.85);opacity:.55}50%{transform:scale(1.15);opacity:1}}.studio-hover-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .2s}.studio-output-card:hover .studio-hover-video,.studio-output-card:focus-visible .studio-hover-video{opacity:1}.studio-output-card:hover img,.studio-output-card:focus-visible img{opacity:.15}
.ticket-image-preview{display:block;max-width:100%;max-height:260px;margin:9px 0;border-radius:9px;object-fit:contain;background:#090912}

:root[data-theme="dark"] { --ink:#f4f4ec; --muted:#a7a2ba; --soft:#0d0c18; --line:rgba(255,255,255,.12); --panel:#171624; --violet:#8b7cff; --violet-dark:#6e5de7; --teal:#a79cff; }
:root[data-theme="dark"] body { color:var(--ink); background:var(--soft); }
:root[data-theme="dark"] .public-nav { background:rgba(9,10,9,.88); border-color:var(--line); }
:root[data-theme="dark"] .public-nav nav { color:var(--muted); }
:root[data-theme="dark"] .public-footer { background:#070807; }
:root[data-theme="dark"] .public-simple,.public-page[data-theme="dark"] { background:var(--soft); }
:root[data-theme="dark"] .simple-card,.app-body[data-theme="dark"] .panel,.app-body[data-theme="dark"] .table-wrap,.app-body[data-theme="dark"] .stat-card { background:var(--panel); border-color:var(--line); }
.theme-switch { border:1px solid var(--line); border-radius:999px; padding:7px 10px; color:var(--ink); background:transparent; font-size:14px; line-height:1; }
.theme-switch:hover { color:var(--violet); border-color:var(--violet); }
:root[data-theme="dark"] .app-body { color:var(--ink); background:#0d0c18; }
:root[data-theme="dark"] .app-body .topbar { color:var(--ink); background:#12111f; border-color:var(--line); }
:root[data-theme="dark"] .app-body .panel,
:root[data-theme="dark"] .app-body .table-wrap,
:root[data-theme="dark"] .app-body .stat-card,
:root[data-theme="dark"] .app-body .plan-card,
:root[data-theme="dark"] .app-body .ticket-card { color:var(--ink); background:#151915; border-color:var(--line); box-shadow:none; }
:root[data-theme="dark"] .app-body .panel p,
:root[data-theme="dark"] .app-body .table-wrap td,
:root[data-theme="dark"] .app-body .muted { color:#a5aaa2; }
:root[data-theme="dark"] .app-body .table-wrap th { color:#908ba8; }
:root[data-theme="dark"] .app-body .table-wrap td { border-color:var(--line); }
:root[data-theme="dark"] .app-body .field label,
:root[data-theme="dark"] .app-body .checkbox-field { color:#d7d4ea; }
:root[data-theme="dark"] .app-body .field input,
:root[data-theme="dark"] .app-body .field select,
:root[data-theme="dark"] .app-body .field textarea,
:root[data-theme="dark"] .app-body .form-control { color:var(--ink); background:#242040; border-color:#403a60; }
:root[data-theme="dark"] .app-body .button.secondary { color:var(--ink); background:#242040; border-color:#403a60; }
:root[data-theme="dark"] .auth-panel { color:var(--ink); background:#12111f; }
:root[data-theme="dark"] .auth-card label { color:#d7d4ea; }
:root[data-theme="dark"] .auth-card input { color:var(--ink); background:#242040; border-color:#403a60; }

/* MotionVeo unified visual system — dark-first, with a calm light counterpart. */
:root {
  --ink:#f7f4ff; --muted:#a29cb8; --soft:#07080f; --line:rgba(235,246,235,.13);
  --panel:#111512; --panel-2:#1b1930; --violet:#8b7cff; --violet-dark:#6e5de7;
  --teal:#a79cff; --rose:#ff7d9b; --shadow:0 24px 80px rgba(0,0,0,.28); --radius:18px;
}

/* Currency switch and live plan-coupon preview. */
.plan-currency-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;width:100%;max-width:1240px;margin:0 auto 28px;color:#aaa4b8;font-size:.75rem;font-weight:800;letter-spacing:.03em}.plan-currency-switch{display:inline-flex;padding:4px;border:1px solid rgba(151,132,255,.28);border-radius:999px;background:rgba(255,255,255,.045);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}.plan-currency-switch button{min-width:62px;padding:8px 14px;border:0;border-radius:999px;color:#9e98aa;background:transparent;font:800 .72rem/1 Inter,ui-sans-serif,system-ui,sans-serif;cursor:pointer;transition:.18s ease}.plan-currency-switch button.active{color:#fff;background:linear-gradient(135deg,#713cff,#a55bff);box-shadow:0 7px 18px rgba(113,60,255,.28)}
.motion-plan-coupon{display:grid;gap:7px;margin:16px 0 17px}.motion-plan-coupon>label{color:#aaa4b4;font-size:.67rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.motion-plan-coupon>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.motion-plan-coupon input{min-width:0;padding:11px 12px;border:1px solid rgba(255,255,255,.11);border-radius:11px;color:#f8f6ff;background:rgba(255,255,255,.055);font:700 .76rem Inter,ui-sans-serif,system-ui,sans-serif;outline:none}.motion-plan-coupon input:focus{border-color:#9580ff;box-shadow:0 0 0 3px rgba(137,111,255,.13)}.motion-plan-coupon button{padding:10px 14px;border:1px solid rgba(156,132,255,.4);border-radius:11px;color:#ddd5ff;background:rgba(126,88,255,.15);font:850 .72rem Inter,ui-sans-serif,system-ui,sans-serif;cursor:pointer}.motion-plan-coupon button:disabled{opacity:.62;cursor:wait}.motion-plan-coupon small{min-height:15px;color:#9690a2;font-size:.65rem}.motion-plan-coupon small.success{color:#8be3bc}.motion-plan-coupon small.error{color:#ff9aaa}.motion-plan-card.has-coupon .motion-plan-price strong{color:#a990ff}.motion-plan-card.has-coupon .motion-plan-price s{display:inline!important;color:#88818f;font-size:.82rem}
.motion-plan-coupon-shell{margin:10px 0 17px}.motion-plan-coupon-toggle{display:inline-flex;align-items:center;gap:6px;padding:5px 0;border:0;color:#b7adce;background:transparent;font:800 .72rem Inter,ui-sans-serif,system-ui,sans-serif;cursor:pointer}.motion-plan-coupon-toggle:hover,.motion-plan-coupon-toggle:focus-visible{color:#a990ff}.motion-plan-coupon-toggle span{display:inline-grid;place-items:center;width:17px;height:17px;border:1px solid rgba(153,130,255,.38);border-radius:50%;font-size:.7rem}.motion-plan-coupon{margin:7px 0 0}.motion-plan-coupon[hidden]{display:none!important}
@media(max-width:620px){.plan-currency-toolbar{justify-content:space-between;margin-bottom:24px}.plan-currency-switch button{min-width:58px;padding:8px 12px}.motion-plan-coupon>div{grid-template-columns:minmax(0,1fr) auto}}

/* Unified premium pricing system */
.pricing-hero{padding-bottom:52px}.pricing-section{padding-top:54px}
.motion-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),400px));justify-content:center;gap:18px;align-items:start;width:100%;max-width:100%;min-width:0}
.motion-plan-card{--plan-accent:#8d78ff;position:relative;display:flex;flex-direction:column;min-width:0;padding:37px 28px 28px;border:1px solid rgba(255,255,255,.14);border-radius:25px;color:#f7f5ff;background:radial-gradient(circle at 88% 4%,rgba(131,99,255,.12),transparent 25%),linear-gradient(155deg,#191820 0%,#0c0c11 62%,#08080c 100%);box-shadow:0 22px 60px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.06);overflow:visible}
.motion-plan-card:before{content:"";position:absolute;z-index:1;top:-1px;left:22px;right:22px;height:4px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,transparent,#7f45ff 18%,#a55cff 82%,transparent);box-shadow:0 4px 18px rgba(133,79,255,.42)}
.motion-plan-card.is-featured{border-color:rgba(145,116,255,.78);box-shadow:0 24px 70px rgba(82,47,221,.2),inset 0 1px 0 rgba(255,255,255,.09)}
.motion-plan-card.is-value{--plan-accent:#d679ff;border-color:rgba(255,153,99,.8);background:radial-gradient(circle at 90% 3%,rgba(147,61,255,.22),transparent 28%),linear-gradient(155deg,#211638 0%,#11101a 58%,#09090d 100%)}
.motion-plan-card.is-value:before{background:linear-gradient(90deg,transparent,#ad67ff 14%,#ef6da1 56%,#ffad52 86%,transparent);box-shadow:0 4px 18px rgba(239,109,161,.35)}
.motion-plan-ribbon{position:absolute;z-index:3;top:-16px;left:50%;right:auto;min-height:0;display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:3px solid rgba(214,200,255,.75);border-radius:999px;color:#fff;background:linear-gradient(135deg,#6d35ff 0%,#9d54ff 55%,#b768ff 100%);box-shadow:0 10px 28px rgba(119,62,255,.38),inset 0 1px 0 rgba(255,255,255,.3);font-size:.64rem;font-weight:900;letter-spacing:.1em;line-height:1;text-transform:uppercase;white-space:nowrap;transform:translateX(-50%)}
.motion-plan-card.is-value .motion-plan-ribbon{border-color:rgba(255,218,203,.75);background:linear-gradient(120deg,#8d43ff 0%,#e55ca4 55%,#ff9d57 100%);box-shadow:0 10px 28px rgba(229,92,164,.3),inset 0 1px 0 rgba(255,255,255,.35)}
.motion-plan-card.is-featured .motion-plan-head{margin-top:0}
.motion-plan-head{display:flex;align-items:flex-start;justify-content:space-between;gap:13px}.motion-plan-head h3{margin:7px 0 0;color:#fff;font-size:clamp(1.65rem,2.2vw,2.25rem);letter-spacing:-.055em;line-height:1}.motion-plan-access{color:#a995ff;font-size:.69rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.motion-plan-discount{flex:0 0 auto;display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#7218f4;color:#fff;font-size:.74rem;font-weight:900;letter-spacing:.03em;box-shadow:0 7px 20px rgba(114,24,244,.35)}
.motion-plan-description{min-height:42px;margin:10px 0 20px;color:#8f8b9c;font-size:.83rem;line-height:1.55}
.motion-plan-capacity{padding:19px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.motion-plan-capacity-label{display:block;margin-bottom:12px;color:#d8d3e6;font-size:.68rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.motion-plan-capacity ul,.motion-plan-features{list-style:none!important;padding:0!important}.motion-plan-capacity ul{display:grid;gap:8px;margin:0!important;color:#eeeaf7!important;font-size:.79rem!important}.motion-plan-capacity li{display:flex;align-items:center;gap:6px}.motion-plan-capacity li:before,.motion-plan-features li:before{content:"✓"!important;flex:0 0 auto;margin-right:4px!important;color:var(--plan-accent)!important;font-size:1rem;font-weight:900}
.motion-plan-price{display:flex;align-items:baseline;gap:9px;margin:24px 0 2px;flex-wrap:wrap}.motion-plan-price s{color:#9a819c;font-size:.88rem}.motion-plan-price strong{color:#fff;font-size:clamp(2rem,3vw,2.75rem);letter-spacing:-.07em;line-height:1}.motion-plan-price>span{color:#888492;font-size:.78rem}.motion-plan-price-local{margin:7px 0 18px;color:#c0b9d3;font-size:.84rem;font-weight:750}.motion-plan-price-local small{color:#777282;font-size:.64rem;font-weight:600}
.motion-plan-card form{margin:0}.motion-plan-cta{width:100%;min-height:53px;border:0!important;border-radius:14px!important;color:#111018!important;background:linear-gradient(135deg,#eeeaff,#8d75ff)!important;font-size:.95rem;font-weight:900;box-shadow:0 9px 0 rgba(85,59,198,.48),0 18px 35px rgba(78,50,205,.2)}.motion-plan-cta:hover{transform:translateY(-2px);filter:brightness(1.06)}.motion-plan-card.is-value .motion-plan-cta{color:#fff!important;background:linear-gradient(135deg,#8f2bff,#6515f4)!important}
.motion-plan-models{margin-top:25px;padding:17px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.045)}.motion-plan-models-title{display:flex;align-items:center;gap:8px;margin-bottom:14px;color:#fff}.motion-plan-models-title>span{color:#bcaeff}.motion-plan-models-title strong{font-size:.78rem;letter-spacing:.02em;text-transform:uppercase}.motion-plan-models-title .plan-help{margin-left:auto}
.motion-plan-models ul{display:grid!important;gap:9px!important;margin:0!important;padding:0!important;list-style:none!important}.motion-plan-models li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;color:#ddd8e7!important;font-size:.73rem!important}.motion-plan-models li:before{display:none!important}.motion-plan-model-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:underline;text-decoration-style:dashed;text-underline-offset:4px;text-decoration-color:#5f5b69}.motion-model-chip,.motion-model-access{padding:5px 7px;border-radius:7px;color:#c7b4f6;background:#130c25;font-size:.59rem;font-weight:800;white-space:nowrap}.motion-model-access.unlimited{color:#dfc5ff;background:#1b0b31}
.motion-plan-features{display:grid!important;gap:10px!important;margin:22px 0 0!important;color:#aaa5b5!important;font-size:.75rem!important}.motion-plan-features li{display:flex;align-items:flex-start}.motion-plan-note{margin:18px 0 0!important}.motion-plan-card .plan-help{position:relative;display:inline-grid;place-items:center;width:20px;height:20px;padding:0;border:1px solid #777182;border-radius:50%;color:#aaa5b3;background:transparent;font-size:.66rem;font-weight:900;vertical-align:middle}
.motion-plan-upgrade{display:block!important;padding:25px!important}.motion-plan-upgrade .studio-upgrade-header{margin-bottom:24px}.motion-studio-page .motion-plan-upgrade .motion-plan-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),400px))!important;max-width:none!important;margin-top:0!important}.motion-studio-page .motion-plan-upgrade .motion-plan-card{width:100%;max-width:400px}
.plan-rate-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.plan-rate-panel h3{margin:6px 0}.plan-rate-panel p{margin:0}.plan-rate-control{display:flex;align-items:center;gap:9px;white-space:nowrap}.plan-rate-control input{width:125px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#0e0e16;color:#fff}.plan-admin-layout{grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr);align-items:start}.plan-editor{position:sticky;top:18px}.plan-admin-models{margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:16px;background:rgba(126,102,255,.055)}.plan-admin-models h3{margin:6px 0}.plan-admin-model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.plan-admin-model{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.035);cursor:pointer}.plan-admin-model input{accent-color:var(--violet)}.plan-admin-model span{min-width:0}.plan-admin-model strong,.plan-admin-model small{display:block}.plan-admin-model strong{font-size:.74rem}.plan-admin-model small{color:var(--muted);font-size:.62rem}.plan-admin-model i{margin-left:auto;color:#a995ff;font-size:.61rem;font-style:normal;font-weight:850;text-transform:uppercase}
@media(max-width:1100px){.motion-plan-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),400px))}.plan-admin-layout{grid-template-columns:1fr}.plan-editor{position:static}}
@media(max-width:760px){.pricing-section{padding:46px 14px 35px}.motion-plan-grid,.motion-studio-page .motion-plan-upgrade .motion-plan-grid{grid-template-columns:minmax(0,1fr)!important;gap:30px}.motion-plan-card{width:100%;max-width:100%;padding:35px 19px 22px;border-radius:20px}.motion-plan-ribbon{top:-14px;padding:7px 13px;border-width:3px;font-size:.59rem}.motion-plan-head h3{font-size:1.7rem}.motion-plan-capacity{padding:16px}.motion-plan-price strong{font-size:2.25rem}.motion-plan-models li{grid-template-columns:minmax(0,1fr) auto}.motion-model-chip{display:none}.motion-model-access{font-size:.56rem}.motion-plan-upgrade{padding:27px 13px 17px!important}.plan-rate-panel{display:grid}.plan-rate-control{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.plan-rate-control input{width:100%;min-width:0}.plan-rate-control .button{grid-column:1/-1;width:100%}.plan-admin-model-grid{grid-template-columns:1fr}.plan-editor{padding:16px}.plan-admin-layout{width:100%;max-width:100%;min-width:0}.plan-admin-layout>.table-wrap{max-width:100%}}
@media(max-width:390px){.motion-plan-card{padding-inline:15px}.motion-plan-capacity,.motion-plan-models{padding:14px}.motion-plan-models li{gap:5px}.motion-model-access{padding:5px;font-size:.52rem}.motion-plan-discount{padding:6px 8px;font-size:.63rem}}
html,body { min-height:100%; }
body { color:var(--ink); background:var(--soft); }
body,button,input,select,textarea { font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { transition:color .2s ease,opacity .2s ease; }
.wordmark { color:#faf7ff; letter-spacing:-.04em; }
.wordmark em { color:var(--violet); }
.brand-mark { width:31px; height:31px; display:block; border-radius:7px; background:linear-gradient(112deg,transparent 0 15%,color-mix(in srgb,var(--violet) 58%,transparent) 15% 29%,transparent 29% 38%,color-mix(in srgb,var(--violet) 80%,transparent) 38% 52%,transparent 52% 61%,var(--violet) 61% 75%,transparent 75% 100%); box-shadow:none; font-size:0; }
.public-nav { background:rgba(7,9,8,.88); border-color:var(--line); }
.public-nav nav { color:#b1acc2; }
.public-nav nav a:hover { color:var(--violet); }
.nav-cta { color:#0d0b18!important; background:var(--violet); border-radius:999px; }
.theme-switch { color:var(--ink); background:rgba(255,255,255,.04); border-color:var(--line); }
.public-footer { background:#050705; border-top:1px solid var(--line); }
.public-footer p { color:#a39db6; }
.public-footer>div:nth-child(2) { color:#d0cbe2; }
.public-simple { background:radial-gradient(circle at 85% 0,rgba(139,124,255,.09),transparent 28%),var(--soft); }
.simple-card,.feature-card { color:var(--ink); background:var(--panel); border-color:var(--line); box-shadow:var(--shadow); }
.simple-card p,.feature-card p { color:var(--muted); }
.button { border-color:var(--line); color:var(--ink); background:rgba(255,255,255,.035); border-radius:999px; }
.button.primary { color:#0d0b18; background:var(--violet); border-color:var(--violet); }
.button.primary:hover { color:#07080f; background:#b6aeff; }
.button.secondary { color:var(--ink); background:rgba(255,255,255,.045); }
.button.danger { background:rgba(255,125,155,.1); color:#ff9bb1; border-color:rgba(255,125,155,.25); }
.alert { border-radius:14px; }
.alert.success { background:rgba(105,231,206,.1); border-color:rgba(105,231,206,.35); color:#8cf1df; }
.alert.error { background:rgba(255,125,155,.1); border-color:rgba(255,125,155,.3); color:#ff9db2; }
.alert.info { background:rgba(139,124,255,.08); border-color:rgba(139,124,255,.3); color:#d5d0ff; }
.auth-page { background:#07080f; }
.auth-visual { background:radial-gradient(circle at 70% 18%,rgba(139,124,255,.15),transparent 34%),radial-gradient(circle at 38% 90%,rgba(54,92,255,.13),transparent 38%),#0c0b18; }
.auth-visual:after { border-color:rgba(139,124,255,.15); }
.auth-visual h1 { color:#f6faf2; }
.auth-visual p { color:#aaa7be; }
.auth-metrics small { color:#918da8; }
.auth-panel { background:#0d110e; color:var(--ink); }
.auth-card h2 { color:#faf7ff; }
.auth-card>p { color:var(--muted); }
.auth-card label,.field label { color:#cdd7cc; }
.auth-card input,.field input,.field select,.field textarea,.form-control { color:var(--ink); background:#1b1930; border-color:#403a60; }
.auth-card input::placeholder,.field input::placeholder,.field textarea::placeholder { color:#6f7b71; }
.auth-card input:focus,.field input:focus,.field select:focus,.field textarea:focus,.form-control:focus { border-color:var(--violet); box-shadow:0 0 0 3px rgba(139,124,255,.12); }
.auth-card .split,.auth-card .split a { color:var(--muted); }
.auth-card .split a { color:var(--violet); }
.google-button { color:var(--ink); background:#1b1930; border-color:#403a60; }
.divider { color:#817b98; }
.divider:before,.divider:after { background:var(--line); }
.app-body { color:var(--ink); background:#07080f; }
.sidebar { background:#0a0d0b; border-right:1px solid var(--line); color:#bdb8d1; }
.sidebar .wordmark { color:#faf7ff; }
.workspace-label,.eyebrow,.kicker,.top-eyebrow { color:var(--violet); }
.side-nav a { color:#aaa4bd; }
.side-nav a:hover,.side-nav a.active { color:#f6f3ff; background:rgba(139,124,255,.1); }
.side-nav i { color:var(--violet); }
.side-account { border-color:var(--line); }
.side-account strong { color:#f6f3ff; }
.side-account small { color:#8c87a6; }
.side-account>a:last-child { color:#9690b0; }
.avatar { color:#17200f; background:var(--violet); }
.topbar { color:var(--ink); background:rgba(11,15,12,.92); border-color:var(--line); backdrop-filter:blur(18px); }
.topbar h1 { color:#f7f4ff; }
.content { background:radial-gradient(circle at 100% 0,rgba(139,124,255,.055),transparent 25%); }
.announcement { position:relative; overflow:hidden; color:#e6e1ff; background:linear-gradient(90deg,rgba(139,124,255,.13),rgba(105,231,206,.08)); border-color:rgba(139,124,255,.32); border-radius:15px; padding:15px 52px 15px 18px; box-shadow:0 10px 35px rgba(139,124,255,.06); transition:opacity .2s ease,transform .2s ease; }
.announcement:before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:var(--violet); }
.announcement-copy { display:flex; align-items:center; flex-wrap:wrap; gap:10px 14px; }
.announcement-label { color:var(--violet); font-size:.62rem; font-weight:850; letter-spacing:.14em; }
.announcement strong { color:#f1efff; }
.announcement-copy>span:last-child { color:#b2aec6; }
.announcement-close { position:absolute; right:13px; top:50%; transform:translateY(-50%); width:28px; height:28px; border:1px solid rgba(255,255,255,.18); border-radius:50%; color:#e5e1ff; background:rgba(0,0,0,.18); font-size:1.15rem; line-height:1; }
.announcement-close:hover { color:#0d0b18; background:var(--violet); border-color:var(--violet); }
.announcement.is-dismissed { opacity:0; transform:translateY(-5px); }
.announcement-modal-backdrop{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;background:rgba(4,5,12,.72);backdrop-filter:blur(18px);opacity:0;transition:opacity .25s ease}.announcement-modal-backdrop[hidden]{display:none}.announcement-modal-backdrop.is-visible{opacity:1}.announcement-modal-backdrop.is-dismissed{opacity:0}.announcement-modal{position:relative;isolation:isolate;overflow:hidden;width:min(540px,100%);padding:42px;border:1px solid rgba(255,255,255,.2);border-radius:28px;color:#f7f5ff;background:linear-gradient(145deg,rgba(30,28,53,.94),rgba(11,14,24,.92));box-shadow:0 35px 100px rgba(0,0,0,.55),inset 0 1px rgba(255,255,255,.12);transform:translateY(18px) scale(.96);transition:transform .35s cubic-bezier(.2,.8,.2,1)}.is-visible>.announcement-modal{transform:none}.announcement-modal:before{content:"";position:absolute;z-index:-1;width:310px;height:310px;right:-140px;top:-150px;border-radius:50%;background:radial-gradient(circle,rgba(139,124,255,.55),transparent 68%);animation:announcementGlow 5s ease-in-out infinite}.announcement-modal h2{margin:12px 0 10px;font-size:clamp(1.7rem,4vw,2.6rem);letter-spacing:-.05em}.announcement-modal p{margin:0;color:#c0bbd2;font-size:.98rem}.announcement-modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.announcement-orbit{position:absolute;right:35px;top:30px;width:62px;height:62px;border:1px solid rgba(139,124,255,.35);border-radius:50%;animation:announcementSpin 8s linear infinite}.announcement-orbit i{position:absolute;width:8px;height:8px;border-radius:50%;background:#8b7cff;box-shadow:0 0 18px #8b7cff}.announcement-orbit i:nth-child(1){left:27px;top:-4px}.announcement-orbit i:nth-child(2){right:-3px;bottom:13px;background:#5ee7ff}.announcement-orbit i:nth-child(3){left:2px;bottom:5px;background:#69e7ce}@keyframes announcementSpin{to{transform:rotate(360deg)}}@keyframes announcementGlow{50%{transform:scale(1.18) translate(-10px,10px);opacity:.75}}
@media(max-width:600px){.announcement-modal{padding:32px 24px;border-radius:22px}.announcement-orbit{right:22px;top:22px;transform:scale(.75)}.announcement-modal-actions{display:grid}.announcement-modal-actions .button{width:100%}}
.checkout-coupon{margin:16px 0;display:flex;align-items:center;justify-content:space-between;gap:22px}.checkout-coupon h3{margin:6px 0}.checkout-coupon p{margin:0}.checkout-coupon form{display:flex;gap:8px;min-width:min(100%,360px)}.checkout-coupon .form-control{min-width:0}@media(max-width:700px){.checkout-coupon,.checkout-coupon form{display:grid}.checkout-coupon form{width:100%}}
.studio-upgrade-surface{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1.35fr);gap:26px;align-items:center;margin:0 0 20px;padding:26px;border:1px solid rgba(159,146,255,.26);border-radius:22px;background:radial-gradient(circle at 95% 0,rgba(139,124,255,.2),transparent 32%),linear-gradient(135deg,rgba(39,31,75,.95),rgba(13,13,25,.96));box-shadow:0 18px 55px rgba(26,14,74,.22),inset 0 1px rgba(255,255,255,.08)}.studio-upgrade-copy h3{margin:6px 0 8px;color:#fff;font-size:1.35rem;letter-spacing:-.035em}.studio-upgrade-copy p{margin:0;max-width:480px;color:#bdb8d0;font-size:.86rem}.studio-upgrade-points{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:18px;color:#d8d3e9;font-size:.72rem;font-weight:700}.studio-upgrade-points span{display:inline-flex;align-items:center;gap:6px}.studio-upgrade-points i{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;color:#b7aaff;background:rgba(159,146,255,.15);font-style:normal}.studio-plan-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px}.studio-plan-choice{position:relative;display:flex;flex-direction:column;min-width:0;padding:17px;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(10,10,21,.58);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.studio-plan-choice:hover{transform:translateY(-3px);border-color:rgba(176,161,255,.58);box-shadow:0 12px 28px rgba(0,0,0,.22)}.studio-plan-choice.is-featured{border-color:rgba(180,255,112,.38);background:linear-gradient(150deg,rgba(56,56,34,.35),rgba(10,10,21,.7))}.studio-plan-badge{position:absolute;right:12px;top:10px;color:#d7ffb3;font-size:.56rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.studio-plan-choice-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;color:#f7f4ff}.studio-plan-choice-head strong{font-size:.82rem}.studio-plan-choice-head span{color:#aaa4bf;font-size:.65rem}.studio-plan-choice-price{margin:12px 0 8px;color:#fff;font-size:1.35rem;font-weight:850;letter-spacing:-.04em}.studio-plan-choice ul{display:grid;gap:5px;min-height:54px;padding:0;margin:0 0 14px;list-style:none;color:#aaa5bb;font-size:.66rem}.studio-plan-choice li:before{content:'+';margin-right:5px;color:#9f92ff;font-weight:850}.studio-plan-choice form{margin-top:auto}.studio-plan-choice .button{width:100%;padding:9px 10px;font-size:.72rem}.studio-plan-empty{color:#bdb8d0;font-size:.82rem}.studio-plan-empty a{color:#d0c8ff;font-weight:800}@media(max-width:1000px){.studio-upgrade-surface{grid-template-columns:1fr}.studio-plan-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.studio-upgrade-surface{padding:20px 16px}.studio-plan-choices{grid-template-columns:1fr}.studio-upgrade-points{display:grid}}
.subscription-expiry-banner { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0 0 20px; padding:15px 18px; border:1px solid rgba(255,173,89,.42); border-radius:15px; color:#fff4df; background:linear-gradient(100deg,rgba(255,151,76,.16),rgba(139,124,255,.1)); box-shadow:0 10px 35px rgba(255,151,76,.08); }
.subscription-expiry-copy { display:flex; align-items:center; flex-wrap:wrap; gap:7px 13px; min-width:0; }
.subscription-expiry-copy .eyebrow { color:#ffc477; }
.subscription-expiry-copy strong { color:#fff4df; font-size:.94rem; }
.subscription-expiry-copy>span:last-child { color:#d8cbb8; font-size:.78rem; }
.subscription-expiry-actions { display:flex; align-items:center; justify-content:flex-end; gap:13px; flex:0 0 auto; }
.subscription-expiry-timer { color:#ffd18d; font-size:.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.subscription-expiry-actions .button { white-space:nowrap; }
.page-intro h2 { color:#f6f3ff; }
.page-intro p,.muted { color:var(--muted); }
.stat-card,.panel,.table-wrap,.plan-card,.ticket-card { color:var(--ink); background:linear-gradient(145deg,#131914,#11101d); border-color:var(--line); box-shadow:0 16px 50px rgba(0,0,0,.18); }
.stat-card small,.stat-card span,.table-wrap th,.table-wrap td small,.field small,.ticket-card small { color:#908ba8; }
.stat-card strong,.panel h3,.table-wrap h3,.table-wrap td strong,.ticket-card strong { color:#f3f0ff; }
.progress { background:#29254b; }
.progress>i { background:linear-gradient(90deg,var(--violet),#a79cff); }
.creation-item,.table-wrap th,.table-wrap td { border-color:var(--line); }
.thumb { background:#211d39; }
.status.completed { color:#8f83ff; }.status.processing,.status.queued,.status.submitting { color:#d5f46e; }.status.failed { color:#ff8fa9; }
.badge { color:#d7ff84; background:rgba(139,124,255,.12); }.badge.green { color:#9c91ff; background:rgba(105,231,206,.12); }.badge.orange { color:#f0d27c; background:rgba(240,210,124,.12); }.badge.red { color:#ff9db2; background:rgba(255,125,155,.12); }
.studio-layout { grid-template-columns:minmax(360px,.8fr) minmax(0,1.4fr); gap:20px; }
.studio-card { background:linear-gradient(155deg,#151c16,#0f0e1b); border:1px solid var(--line); border-radius:22px; box-shadow:0 25px 70px rgba(0,0,0,.3); }
.studio-card h2 { color:#f5f9f1; }.studio-card p { color:#a19db7; }.studio-card .field label { color:#dedaf2; }
.studio-card input,.studio-card select,.studio-card textarea { color:#eef8eb; background:#211d39; border-color:#403a60; }
.studio-card input:focus,.studio-card select:focus,.studio-card textarea:focus { border-color:var(--violet); box-shadow:0 0 0 3px rgba(139,124,255,.12); }
.studio-card .field small { color:#89958a; }.studio-card .button.primary { color:#10170d; background:var(--violet); }
.studio-result { min-height:540px; background:#0a0a14; border:1px solid var(--line); border-radius:22px; box-shadow:inset 0 0 0 1px rgba(255,255,255,.025); }
.studio-empty { color:#849087; }.studio-empty h3 { color:#ded9f1; }.studio-empty .empty-icon { color:var(--violet); }
.job-state { background:rgba(0,0,0,.62); color:#d5d0ff; border:1px solid rgba(139,124,255,.28); }
.media-viewer,.code-box { background:#0a0a14; border-color:var(--line); }
.plan-card.featured { border-color:rgba(139,124,255,.5); box-shadow:0 18px 55px rgba(139,124,255,.08); }
.plan-card ul { color:#aaa4c0; }.plan-card li:before { color:var(--violet); }
.message { color:#e1dcf2; background:#211d39; }.message.mine { background:rgba(139,124,255,.13); }.message small { color:#8e88a5; }
.pagination a { border-color:var(--line); }.pagination a.active { color:#0d0b18; background:var(--violet); border-color:var(--violet); }
.code-box { color:#e0ddff; }
.public-hero { color:#f8f5ff; background:radial-gradient(circle at 78% 12%,rgba(139,124,255,.12),transparent 28%),#080b09; }
.public-hero p,.public-section p { color:var(--muted); }.public-hero h1 em { color:var(--violet); }.feature-icon { color:var(--violet); }.public-cta { background:#0a0d0b; }

/* Pricing layout and quota controls */
.pricing-page{overflow-x:clip;background:radial-gradient(circle at 15% 5%,rgba(92,66,255,.24),transparent 31%),radial-gradient(circle at 86% 18%,rgba(202,71,255,.17),transparent 30%),linear-gradient(145deg,#10102a 0%,#170f32 48%,#0a1227 100%)}
.pricing-upgrade-title{width:min(1560px,calc(100% - 48px));margin:0 auto;padding:46px 0 14px;text-align:center}
.pricing-upgrade-title span{color:#9d8dff;font-size:.7rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.pricing-upgrade-title h1{margin:9px 0 0;color:#faf8ff;font-size:clamp(2.25rem,4vw,4rem);letter-spacing:-.06em;line-height:1;text-transform:uppercase}
.pricing-section{padding:30px 24px 78px}
.pricing-section .section-inner{width:100%;max-width:1560px}
.pricing-section .plan-currency-toolbar{max-width:none}
.pricing-section .motion-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch;gap:18px}
.pricing-section .motion-plan-card{width:100%;max-width:none}
.pricing-section .motion-plan-card{background:radial-gradient(circle at 88% 4%,rgba(168,104,255,.25),transparent 29%),linear-gradient(155deg,#25204a 0%,#17152f 60%,#101126 100%)}
.pricing-section .motion-plan-card.is-featured{background:radial-gradient(circle at 82% 5%,rgba(177,107,255,.34),transparent 31%),linear-gradient(155deg,#30205d 0%,#1b183b 58%,#11132c 100%)}
.pricing-section .motion-plan-card.is-value{background:radial-gradient(circle at 90% 3%,rgba(237,92,207,.3),transparent 31%),linear-gradient(155deg,#3a1f60 0%,#211942 58%,#12142e 100%)}
.motion-plan-description:empty{display:none}
.motion-plan-price{flex-wrap:nowrap;white-space:nowrap}
.motion-plan-price s,.motion-plan-price strong,.motion-plan-price>span{flex:0 0 auto}
.motion-plan-price strong{font-size:clamp(1.9rem,2.6vw,2.75rem)}
.motion-plan-coupon-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:7px}
.motion-plan-coupon-input-wrap{position:relative;display:block;min-width:0}
.motion-plan-coupon-input-wrap input{width:100%;padding-right:38px}
.motion-plan-coupon .motion-plan-coupon-remove{position:absolute;top:50%;right:8px;width:25px;height:25px;padding:0;border:0;border-radius:50%;color:#d7d0ec;background:rgba(255,255,255,.09);font-size:1rem;line-height:1;transform:translateY(-50%)}
.motion-plan-coupon .motion-plan-coupon-remove:hover{color:#fff;background:rgba(154,126,255,.28)}
.motion-plan-coupon .motion-plan-coupon-remove[hidden]{display:none!important}
.plan-unlimited-switch{margin-top:9px;color:#bdb5d4}
.field.is-limit-disabled>label:first-child{opacity:.55}
.field input:disabled{cursor:not-allowed}
@media(max-width:1180px){.pricing-section .motion-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.pricing-upgrade-title{width:calc(100% - 28px);padding:31px 0 8px}.pricing-section{padding:24px 14px 48px}.pricing-section .motion-plan-grid{grid-template-columns:minmax(0,1fr)}.motion-plan-price{gap:7px}.motion-plan-price strong{font-size:clamp(1.85rem,10vw,2.35rem)}.motion-plan-price>span{font-size:.72rem}}
@media(max-width:390px){.motion-plan-price strong{font-size:1.85rem}.motion-plan-price s{font-size:.72rem}.motion-plan-price>span{font-size:.65rem}}

/* Only the selected Studio visual-input panel may be visible. This explicit
   hidden rule wins over the mobile grid layout's display override. */
body.motion-studio-page .studio-visual-popover [data-input-option][hidden]{display:none!important}

:root[data-theme="light"] { --ink:#151915; --muted:#6f786f; --soft:#f3f6f2; --line:#dfe7df; --panel:#fff; --panel-2:#f8fbf7; --violet:#6e59f5; --violet-dark:#5543d8; --teal:#12a98f; --shadow:0 18px 55px rgba(24,35,25,.08); }
:root[data-theme="light"] body { color:var(--ink); background:var(--soft); }
:root[data-theme="light"] .wordmark { color:#161b17; }:root[data-theme="light"] .wordmark em { color:var(--violet); }
:root[data-theme="light"] .public-nav { background:rgba(255,255,255,.9); border-color:var(--line); }:root[data-theme="light"] .public-nav nav { color:#697269; }
:root[data-theme="light"] .public-footer { background:#171b18; }:root[data-theme="light"] .public-simple { background:var(--soft); }
:root[data-theme="light"] .simple-card,:root[data-theme="light"] .feature-card,:root[data-theme="light"] .stat-card,:root[data-theme="light"] .panel,:root[data-theme="light"] .table-wrap,:root[data-theme="light"] .plan-card,:root[data-theme="light"] .ticket-card { color:var(--ink); background:#fff; border-color:var(--line); box-shadow:var(--shadow); }
:root[data-theme="light"] .button.secondary { color:var(--ink); background:#fff; }:root[data-theme="light"] .auth-page { background:#181923; }
:root[data-theme="light"] .auth-panel { background:#fff; color:#151915; }:root[data-theme="light"] .auth-card h2 { color:#151915; }:root[data-theme="light"] .auth-card>p { color:#6f7481; }
:root[data-theme="light"] .auth-card label,:root[data-theme="light"] .field label { color:#454858; }:root[data-theme="light"] .auth-card input,:root[data-theme="light"] .field input,:root[data-theme="light"] .field select,:root[data-theme="light"] .field textarea,:root[data-theme="light"] .form-control { color:#151915; background:#fff; border-color:#dfe1e9; }
:root[data-theme="light"] .app-body { color:#151915; background:#f3f5f8; }:root[data-theme="light"] .sidebar { background:#191a25; border-right:0; }:root[data-theme="light"] .topbar { color:#151915; background:#fff; border-color:#e6e8ee; }:root[data-theme="light"] .topbar h1 { color:#151915; }
:root[data-theme="light"] .content { background:#f3f5f8; }:root[data-theme="light"] .announcement { color:#4d47a5; background:#eeefff; border-color:#d8d9ff; box-shadow:none; }:root[data-theme="light"] .announcement strong { color:#302a91; }:root[data-theme="light"] .announcement-copy>span:last-child { color:#5c5f86; }
:root[data-theme="light"] .stat-card strong,:root[data-theme="light"] .panel h3,:root[data-theme="light"] .table-wrap h3,:root[data-theme="light"] .table-wrap td strong,:root[data-theme="light"] .ticket-card strong { color:#151915; }:root[data-theme="light"] .stat-card small,:root[data-theme="light"] .stat-card span,:root[data-theme="light"] .table-wrap th,:root[data-theme="light"] .table-wrap td small,:root[data-theme="light"] .field small,:root[data-theme="light"] .ticket-card small { color:#888b99; }
:root[data-theme="light"] .table-wrap th,:root[data-theme="light"] .table-wrap td,:root[data-theme="light"] .creation-item { border-color:#f0f0f4; }:root[data-theme="light"] .progress { background:#ececf3; }:root[data-theme="light"] .progress>i { background:linear-gradient(90deg,var(--violet),#9c8bff); }
:root[data-theme="light"] .studio-card { background:#1a1b27; border-color:transparent; }:root[data-theme="light"] .studio-result { background:#101118; border-color:transparent; }:root[data-theme="light"] .public-hero { color:#151915; background:radial-gradient(circle at 80% 10%,#dfd9ff 0,transparent 28%),#fff; }:root[data-theme="light"] .public-cta { background:#191a25; }

@media(max-width:1050px){.studio-layout{grid-template-columns:1fr}.studio-result{min-height:430px}}
@media(max-width:760px){.announcement-copy{display:block;padding-right:10px}.announcement-label,.announcement strong,.announcement-copy>span:last-child{display:block;margin-bottom:4px}.announcement-copy>span:last-child{margin-bottom:0}.studio-layout{gap:14px}.studio-result{min-height:330px}}

/* PixVerse-inspired creator canvas */
.creator-shell { display:grid; gap:0; padding:18px; border:1px solid var(--line); border-radius:24px; background:#090c0a; box-shadow:0 25px 80px rgba(0,0,0,.24); }
.creator-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:48px; padding:0 4px 14px; }
.creator-tabs { display:flex; align-items:center; gap:22px; overflow:auto; }
.creator-tab { color:#7f8b81; font-size:.84rem; white-space:nowrap; }
.creator-tab.active { color:#f2f8ef; font-weight:800; }
.creator-status { color:#91a094; font-size:.72rem; white-space:nowrap; }
.creator-status i { display:inline-block; width:7px; height:7px; margin-right:7px; border-radius:50%; background:var(--teal); box-shadow:0 0 14px var(--teal); }
.creator-output { position:relative; display:grid; place-items:center; min-height:450px; overflow:hidden; border:1px solid rgba(255,255,255,.08); border-radius:18px 18px 10px 10px; background:radial-gradient(circle at 50% 36%,rgba(139,124,255,.06),transparent 28%),#050706; }
.creator-output:before { content:""; position:absolute; inset:22px; border:1px dashed rgba(139,124,255,.09); border-radius:12px; pointer-events:none; }
.creator-output .studio-empty { position:relative; z-index:1; max-width:430px; }
.creator-output .studio-empty h3 { font-size:1.15rem; margin:12px 0 6px; }
.creator-output .studio-empty p { margin:0; font-size:.86rem; }
.creator-composer { position:relative; z-index:2; margin:-1px 18px 0; padding:18px 20px 16px; border:1px solid rgba(255,255,255,.1); border-radius:15px; background:linear-gradient(145deg,rgba(28,34,29,.98),rgba(13,17,14,.98)); box-shadow:0 18px 45px rgba(0,0,0,.35); }
.creator-control-row { display:flex; align-items:end; gap:12px; flex-wrap:wrap; }
.creator-control-row .field { flex:1 1 160px; min-width:140px; margin:0; }
.creator-control-top { margin-bottom:12px; }
.creator-control-row .field label { font-size:.72rem; letter-spacing:.02em; }
.creator-control-row .field select,.creator-control-row .field input { min-height:43px; padding:10px 12px; border-radius:11px; }
.creator-prompt { margin:0 0 14px; }
.creator-prompt textarea { min-height:104px; resize:vertical; padding:14px; border-radius:12px; background:#111711; border-color:#403a60; font-size:.94rem; }
.creator-prompt textarea::placeholder { color:#77718f; }
.creator-prompt small { margin-top:7px; }
.creator-sound { flex:0 0 auto; min-height:43px; padding:0 8px 10px 0; color:#9ca99d; white-space:nowrap; }
.creator-submit-row { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:16px; padding-top:14px; border-top:1px solid var(--line); }
.creator-note { max-width:650px; color:#928dab; font-size:.72rem; line-height:1.5; }
.creator-submit { min-width:170px; padding:12px 20px; }
.creator-submit span { font-size:1rem; }
:root[data-theme="light"] .creator-shell { background:#0a0c0a; border-color:#1e241f; }
:root[data-theme="light"] .creator-composer { background:#1b1930; border-color:#303b31; }
@media(max-width:760px){
  .creator-shell { padding:10px; border-radius:18px; }
  .creator-toolbar { align-items:flex-start; padding:2px 3px 10px; }
  .creator-status { display:none; }
  .creator-output { min-height:300px; border-radius:14px 14px 8px 8px; }
  .creator-output:before { inset:14px; }
  .creator-composer { margin:-1px 5px 0; padding:14px; border-radius:12px; }
  .creator-submit-row { align-items:stretch; flex-direction:column; gap:12px; }
  .creator-submit { width:100%; }
}

/* Legal pages and final violet palette pass. */
.legal-card { width:min(900px,100%); text-align:left; padding:clamp(28px,5vw,58px); }
.legal-card h1 { max-width:760px; }
.legal-card h2 { margin:34px 0 10px; color:var(--ink); font-size:1.18rem; letter-spacing:-.025em; }
.legal-card h3 { margin:22px 0 7px; color:var(--ink); font-size:.94rem; }
.legal-card p,.legal-card li { color:var(--muted); font-size:.92rem; line-height:1.75; }
.legal-card ul { margin:10px 0 18px; padding-left:1.2rem; }
.legal-card li { margin:6px 0; }
.legal-lead { max-width:680px; font-size:1rem!important; }
.legal-link { color:var(--violet); font-weight:750; }
.legal-contact { display:grid; gap:7px; margin:14px 0 20px; padding:17px 19px; border:1px solid var(--line); border-radius:14px; background:rgba(139,124,255,.07); color:var(--muted); }
.legal-contact strong { color:var(--ink); }
.legal-updated,.legal-copyright { font-size:.78rem!important; }
.legal-copyright { color:var(--ink)!important; font-weight:700; }
:root, :root[data-theme="dark"] { --teal:#a79cff; }
.status.processing,.status.queued,.status.submitting { color:#b9adff; }
.badge { color:#d8d2ff; }
.progress>i { background:linear-gradient(90deg,var(--violet),#b3a9ff); }
.public-footer { background:#070611; }
.auth-panel { background:#0d0c18; }
.app-body .sidebar { background:#0a0914; }
.creator-shell { background:#090814; }
.creator-output { background:radial-gradient(circle at 50% 36%,rgba(139,124,255,.08),transparent 28%),#05040d; }

/* VEO Frame-inspired Studio canvas: media wall + floating API-driven composer. */
.motion-studio-page .content { max-width:none; min-height:calc(100vh - 85px); padding:20px 24px 330px; }
.motion-studio-page [hidden] { display:none!important; }
.motion-studio-page .studio-page-intro { align-items:center; margin-bottom:15px; }
.motion-studio-page .studio-page-intro h2 { margin:4px 0 2px; font-size:1.42rem; letter-spacing:-.045em; }
.motion-studio-page .studio-page-intro p { font-size:.76rem; }
.motion-studio-page .studio-workspace { display:block; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.motion-studio-page .studio-output-panel { padding:0; border:0; border-radius:0; background:transparent; }
.motion-studio-page .studio-output-head { padding:0 0 13px; border-bottom:1px solid rgba(255,255,255,.08); }
.motion-studio-page .studio-output-head h3 { font-size:.94rem; }
.motion-studio-page .studio-output-grid { grid-template-columns:repeat(auto-fill,minmax(235px,1fr)); gap:14px; padding-top:15px; }
.motion-studio-page .studio-output-card { position:relative; aspect-ratio:auto; border-radius:15px; background:#10111a; box-shadow:0 5px 18px rgba(0,0,0,.24); }
.motion-studio-page .studio-output-media { position:relative; inset:auto; aspect-ratio:16/10; border-radius:inherit; }
.motion-studio-page .studio-output-actions { position:relative; z-index:4; }
.motion-studio-page .studio-output-meta { bottom:39px; }
.motion-studio-page .studio-output-meta { position:absolute; z-index:3; inset:auto 0 39px; padding:34px 12px 11px; background:linear-gradient(transparent,rgba(3,3,8,.9)); opacity:0; transform:translateY(4px); transition:opacity .18s ease,transform .18s ease; }
.motion-studio-page .studio-output-card:hover .studio-output-meta,.motion-studio-page .studio-output-card:focus-visible .studio-output-meta { opacity:1; transform:none; }
.motion-studio-page .studio-output-card:hover { transform:translateY(-2px); border-color:rgba(159,146,255,.46); }
.motion-studio-page .studio-output-meta strong { color:#fff; }
.motion-studio-page .studio-output-meta small { color:#a8a3b8; }
.motion-studio-page .studio-output-panel>.studio-empty { min-height:330px; display:grid; place-content:center; }
.motion-studio-page .studio-composer { position:fixed; z-index:19; left:calc(245px + (100vw - 245px)/2); bottom:18px; transform:translateX(-50%); width:min(780px,calc(100vw - 320px)); max-height:calc(100vh - 120px); overflow:auto; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 10px; padding:12px; border:1px solid rgba(190,179,255,.22); border-radius:18px; background:rgba(18,16,31,.68); box-shadow:0 18px 55px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.09); backdrop-filter:blur(26px) saturate(145%); }
.motion-studio-page .studio-composer-head,.motion-studio-page .studio-prompt-field,.motion-studio-page .studio-reference-control { grid-column:1/-1; }
.motion-studio-page .studio-composer-head { align-items:center; padding-bottom:8px; border-bottom:1px solid rgba(255,255,255,.07); }
.motion-studio-page .studio-composer-head>div:first-child { display:none; }
.motion-studio-page .studio-composer-actions { width:100%; justify-content:space-between; }
.motion-studio-page .studio-format-switch { padding:2px; border-radius:10px; background:rgba(255,255,255,.045); pointer-events:auto; }
.motion-studio-page .studio-format-switch button { padding:6px 10px; font-size:.67rem; pointer-events:auto; }
.motion-studio-page .studio-format-switch button[data-studio-kind="exclusive"].active { color:#e7ffc3; background:rgba(162,255,83,.18); box-shadow:inset 0 0 0 1px rgba(180,255,112,.36); }
.motion-studio-page .studio-prompt-field label { gap:0; color:transparent; font-size:0; }
.motion-studio-page .studio-prompt-field textarea { min-height:66px; max-height:160px; padding:8px 4px; border:0; border-radius:0; background:transparent; font-size:.94rem; line-height:1.5; resize:vertical; box-shadow:none; }
.motion-studio-page .studio-prompt-field textarea:focus { border:0; box-shadow:none; }
.motion-studio-page .studio-prompt-field small { display:none; }
.motion-studio-page .studio-form-grid-options { display:flex; align-items:flex-end; gap:7px; min-width:0; overflow-x:auto; padding-right:3px; scrollbar-width:none; }
.motion-studio-page .studio-form-grid-options::-webkit-scrollbar { display:none; }
.motion-studio-page .studio-form-grid-options .field { flex:0 0 auto; margin:0; }
.motion-studio-page .studio-form-grid-options .field label { gap:0; color:transparent; font-size:0; }
.motion-studio-page .studio-form-grid-options select,.motion-studio-page .studio-form-grid-options input { width:auto; min-width:94px; min-height:38px; padding:8px 29px 8px 10px; border-radius:999px; color:#c3bed3; background:#1a1925; border-color:rgba(255,255,255,.1); font-size:.7rem; }
.motion-studio-page .studio-form-grid-options .studio-model-field select { min-width:175px; max-width:240px; }
.motion-studio-page .studio-title-field input { min-width:145px; max-width:180px; padding-right:10px; }
.motion-studio-page .studio-sound { flex:0 0 auto; min-height:38px; padding:0 7px; font-size:.68rem; }
.motion-studio-page .studio-reference-control { padding:8px 10px; border-radius:12px; }
.motion-studio-page .studio-reference-icon { width:27px; height:27px; font-size:.94rem; }
.motion-studio-page .studio-reference-copy strong { font-size:.7rem; }.motion-studio-page .studio-reference-copy span { font-size:.64rem; }.motion-studio-page .studio-reference-copy small { display:none; }
.motion-studio-page .studio-reference-button { padding:7px 10px!important; }
.motion-studio-page .studio-submit-row { align-self:end; margin:0; padding:0; border:0; }
.motion-studio-page .studio-submit-note { display:none; }
.motion-studio-page .studio-submit { min-width:150px; min-height:40px; padding:9px 15px; border-radius:12px; white-space:nowrap; }
:root[data-theme="light"] .motion-studio-page .studio-composer { background:rgba(255,255,255,.92); border-color:#dedbeb; box-shadow:0 20px 60px rgba(35,30,70,.2); }
:root[data-theme="light"] .motion-studio-page .studio-form-grid-options select,:root[data-theme="light"] .motion-studio-page .studio-form-grid-options input { color:#4a465b; background:#f3f1fa; border-color:#dedbea; }
@media(max-width:760px){.motion-studio-page .content{padding:15px 12px 385px}.motion-studio-page .studio-page-intro p{display:none}.motion-studio-page .studio-output-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.motion-studio-page .studio-composer{left:50%;bottom:10px;width:calc(100vw - 20px);grid-template-columns:1fr;padding:11px;border-radius:17px}.motion-studio-page .studio-submit-row{grid-column:1/-1}.motion-studio-page .studio-submit{width:100%}.motion-studio-page .studio-shortcut{display:none}.motion-studio-page .studio-reference-copy span{white-space:normal}.motion-studio-page .studio-output-meta{opacity:1;transform:none;padding:27px 9px 8px}.motion-studio-page .studio-output-meta strong{font-size:.66rem}.motion-studio-page .studio-output-meta small{display:none}}

/* Live Studio states: show the optimistic job immediately and make the
   background render feel like an active holographic work surface. */
.motion-studio-page .studio-output-card.is-optimistic { border-color:rgba(159,146,255,.4); box-shadow:0 0 0 1px rgba(159,146,255,.08),0 14px 34px rgba(69,48,148,.2); }
.motion-studio-page .studio-output-card.is-optimistic .studio-output-media { background:radial-gradient(circle at 50% 45%,rgba(139,124,255,.18),transparent 56%),#080711; }
.app-body .generating-animation {
  position:relative;
  isolation:isolate;
  display:grid;
  place-items:center;
  gap:11px;
  width:min(92%,290px);
  min-height:142px;
  padding:18px 16px 15px;
  overflow:hidden;
  border:1px solid rgba(112,245,231,.18);
  border-radius:16px;
  background:
    linear-gradient(180deg,rgba(18,38,47,.52),rgba(8,11,20,.86)),
    repeating-linear-gradient(90deg,rgba(98,232,255,.06) 0 1px,transparent 1px 22px),
    repeating-linear-gradient(0deg,rgba(159,146,255,.045) 0 1px,transparent 1px 18px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 0 28px rgba(54,211,205,.08),0 12px 32px rgba(0,0,0,.22);
  animation:mv-field 4.8s ease-in-out infinite;
}
.app-body .generating-animation::before {
  content:"";
  position:absolute;
  z-index:0;
  top:-32%;
  left:-38%;
  width:27%;
  height:164%;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(112,245,231,.03) 26%,rgba(112,245,231,.78) 50%,rgba(139,124,255,.16) 69%,transparent 100%);
  filter:blur(.35px);
  mix-blend-mode:screen;
  transform:skewX(-13deg);
  animation:mv-scan 2.35s cubic-bezier(.22,.72,.28,1) infinite;
}
.app-body .generating-animation::after {
  content:"";
  position:absolute;
  z-index:0;
  top:20%;
  left:14%;
  width:3px;
  height:3px;
  border-radius:50%;
  background:#70f5e7;
  box-shadow:23px 52px 0 rgba(112,245,231,.68),58px 9px 0 rgba(159,146,255,.86),91px 72px 0 rgba(112,245,231,.5),138px 31px 0 rgba(255,255,255,.7),171px 84px 0 rgba(159,146,255,.6),214px 14px 0 rgba(112,245,231,.72),246px 67px 0 rgba(255,255,255,.48);
  opacity:.5;
  pointer-events:none;
  animation:mv-particles 3.4s ease-in-out infinite alternate;
}
.app-body .generating-animation>i {
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:64px;
  height:64px;
  border:0;
  border-radius:12px;
  color:#e7ffff;
  background:linear-gradient(145deg,#263956 0%,#12202e 48%,#172a35 100%);
  clip-path:polygon(50% 0,92% 24%,92% 76%,50% 100%,8% 76%,8% 24%);
  box-shadow:0 0 0 1px rgba(112,245,231,.28),0 0 26px rgba(54,211,205,.22),0 12px 24px rgba(0,0,0,.28);
  animation:mv-core-float 2.6s ease-in-out infinite;
}
.app-body .generating-animation>i::before {
  content:"";
  position:absolute;
  inset:5px;
  clip-path:inherit;
  background:
    linear-gradient(125deg,transparent 15%,rgba(255,255,255,.14) 35%,transparent 50%),
    repeating-linear-gradient(135deg,rgba(112,245,231,.08) 0 2px,transparent 2px 8px),
    #0c1722;
  opacity:.95;
  animation:mv-core-grid 1.55s linear infinite;
}
.app-body .generating-animation>i::after {
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:4px;
  height:30px;
  border-radius:5px;
  background:linear-gradient(180deg,transparent,#fff 34%,#70f5e7 66%,transparent);
  box-shadow:0 0 11px rgba(112,245,231,.95),0 0 22px rgba(139,124,255,.48);
  transform:translate(-50%,-50%) scaleY(.5);
  animation:mv-signal 1.35s ease-in-out infinite;
}
.app-body .generating-animation .studio-loader {
  position:relative;
  z-index:2;
  display:block;
  width:20px;
  height:20px;
  border:1px solid rgba(224,255,252,.78);
  border-radius:4px;
  background:rgba(112,245,231,.08);
  box-shadow:inset 0 0 0 3px rgba(8,16,27,.72),0 0 14px rgba(112,245,231,.46);
  transform:rotate(45deg);
  animation:mv-loader 1.2s linear infinite;
}
.app-body .generating-animation .studio-loader::before {
  content:"";
  position:absolute;
  inset:4px;
  border-top:2px solid #fff;
  border-right:2px solid #70f5e7;
  opacity:.95;
  animation:mv-loader-inner .75s ease-in-out infinite alternate;
}
.app-body .generating-animation small {
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:baseline;
  justify-content:center;
  min-height:1.35em;
  color:#cbe2e2;
  font-size:.7rem;
  letter-spacing:.01em;
  text-shadow:0 0 12px rgba(112,245,231,.22);
  animation:mv-copy 1.8s ease-in-out infinite;
}
.app-body .generating-animation small::after {
  content:"...";
  display:inline-block;
  width:1.15em;
  overflow:hidden;
  transform:scaleX(0);
  transform-origin:left center;
  animation:mv-dots 1.25s steps(4,end) infinite;
}
@keyframes mv-field { 0%,100% { background-position:0 0,0 0,0 0; box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 0 28px rgba(54,211,205,.07),0 12px 32px rgba(0,0,0,.22); } 50% { background-position:0 0,11px 0,-7px 8px; box-shadow:inset 0 1px 0 rgba(255,255,255,.11),inset 0 0 34px rgba(54,211,205,.14),0 12px 34px rgba(0,0,0,.28); } }
@keyframes mv-scan { 0% { transform:translateX(0) skewX(-13deg); opacity:0; } 12% { opacity:.82; } 78% { opacity:.72; } 100% { transform:translateX(520%) skewX(-13deg); opacity:0; } }
@keyframes mv-particles { 0% { transform:translate3d(-3px,4px,0); opacity:.28; } 45% { opacity:.74; } 100% { transform:translate3d(9px,-7px,0); opacity:.52; } }
@keyframes mv-core-float { 0%,100% { transform:translateY(2px) scale(.96); filter:brightness(.92); } 50% { transform:translateY(-4px) scale(1.04); filter:brightness(1.18); } }
@keyframes mv-core-grid { from { background-position:0 0,0 0,0 0; } to { background-position:18px -10px,22px -16px,0 0; } }
@keyframes mv-signal { 0%,100% { transform:translate(-50%,-50%) scaleY(.45); opacity:.45; } 50% { transform:translate(-50%,-50%) scaleY(1.12); opacity:1; } }
@keyframes mv-loader { 0% { transform:rotate(45deg) scale(.82); } 50% { transform:rotate(135deg) scale(1); } 100% { transform:rotate(225deg) scale(.82); } }
@keyframes mv-loader-inner { from { transform:translate(-1px,1px); opacity:.48; } to { transform:translate(2px,-2px); opacity:1; } }
@keyframes mv-copy { 0%,100% { opacity:.58; transform:translateY(2px); } 50% { opacity:1; transform:translateY(0); } }
@keyframes mv-dots { 0%,24% { transform:scaleX(0); } 25%,49% { transform:scaleX(.34); } 50%,74% { transform:scaleX(.67); } 75%,100% { transform:scaleX(1); } }
@media (prefers-reduced-motion:reduce) {
  .app-body .generating-animation,.app-body .generating-animation::before,.app-body .generating-animation::after,.app-body .generating-animation>i,.app-body .generating-animation>i::before,.app-body .generating-animation>i::after,.app-body .generating-animation .studio-loader,.app-body .generating-animation .studio-loader::before,.app-body .generating-animation small,.app-body .generating-animation small::after { animation:none; }
}
@media (max-width:760px) {
  .app-body .generating-animation { min-height:108px; padding:12px 9px 10px; gap:7px; border-radius:13px; }
  .app-body .generating-animation>i { width:52px; height:52px; border-radius:10px; }
  .app-body .generating-animation>i::before { inset:4px; }
  .app-body .generating-animation>i::after { height:24px; }
  .app-body .generating-animation .studio-loader { width:16px; height:16px; }
  .app-body .generating-animation small { font-size:.62rem; }
}
@media (max-width:420px) {
  .app-body .generating-animation { min-height:96px; padding:9px 7px 8px; gap:5px; border-radius:11px; }
  .app-body .generating-animation>i { width:44px; height:44px; border-radius:8px; }
  .app-body .generating-animation>i::before { inset:3px; }
  .app-body .generating-animation>i::after { height:20px; width:3px; }
  .app-body .generating-animation .studio-loader { width:14px; height:14px; }
  .app-body .generating-animation .studio-loader::before { inset:3px; }
  .app-body .generating-animation small { font-size:.57rem; }
}
.motion-studio-page .studio-output-card[data-job-kind="image"]:hover img,
.motion-studio-page .studio-output-card[data-job-kind="image"]:focus-visible img,
.motion-studio-page .studio-output-card[data-job-kind="image"]:focus-within img { opacity:1; }

/* The loader uses orbital motion only. Remove the horizontal scan beam and
   text/particle sweeps so the creating state never looks like a progress bar. */
.app-body .generating-animation::before,
.app-body .generating-animation::after,
.app-body .generating-animation small::after {
  content:none!important;
  display:none!important;
  animation:none!important;
  transform:none!important;
}

/* Minimal infinite AI orbit. The loops use only rotation and opacity, so they
   stay smooth on mobile and return to their first frame without a visible jump. */
.app-body .generating-animation {
  animation:none!important;
  background:
    radial-gradient(circle at 50% 42%,rgba(139,124,255,.09),transparent 34%),
    linear-gradient(180deg,rgba(12,25,32,.46),rgba(7,10,18,.72))!important;
}
.app-body .generating-animation>i.studio-generation-orbit {
  position:relative;
  display:block;
  width:78px;
  height:78px;
  border:0!important;
  border-radius:50%!important;
  clip-path:none!important;
  color:inherit!important;
  background:radial-gradient(circle,rgba(193,184,255,.1) 0 20%,transparent 21% 100%)!important;
  box-shadow:none!important;
  transform:none;
  animation:none!important;
}
.app-body .generating-animation>i.studio-generation-orbit::before,
.app-body .generating-animation>i.studio-generation-orbit::after {
  content:none!important;
  display:none!important;
  animation:none!important;
}
.app-body .generating-animation .studio-generation-orbit-core {
  position:absolute;
  z-index:3;
  inset:32px;
  border-radius:50%;
  background:#f2efff;
  box-shadow:0 0 9px 2px rgba(219,211,255,.72),0 0 25px 7px rgba(139,124,255,.26);
  animation:none!important;
}
.app-body .generating-animation .studio-generation-orbit-ring {
  position:absolute;
  z-index:1;
  inset:10px;
  border:1px solid transparent;
  border-top-color:rgba(223,217,255,.88);
  border-right-color:rgba(151,139,255,.42);
  border-radius:50%;
  opacity:.9;
  box-shadow:none;
  animation:none!important;
}
.app-body .generating-animation .studio-generation-orbit-ring.ring-b {
  inset:18px;
  border-top-color:rgba(116,236,222,.76);
  border-right-color:rgba(116,236,222,.2);
  animation:none!important;
}
.app-body .generating-animation .studio-generation-orbit-spark {
  position:absolute;
  z-index:4;
  top:5px;
  left:calc(50% - 2px);
  width:4px;
  height:4px;
  border-radius:50%;
  background:#d8d1ff;
  box-shadow:0 0 8px 2px rgba(179,166,255,.64);
  transform-origin:2px 34px;
  animation:none!important;
}
.app-body .generating-animation .studio-generation-orbit-spark.spark-b {
  top:calc(50% - 2px);
  right:5px;
  bottom:auto;
  left:auto;
  background:#78e8dc;
  box-shadow:0 0 8px 2px rgba(120,232,220,.56);
  transform-origin:-32px 2px;
  animation:none!important;
}
.app-body .generating-animation small {
  animation:none!important;
  color:#b8becd;
  letter-spacing:.005em;
}
@keyframes mv-orbit-breathe {
  0%,100% { opacity:.78; filter:brightness(.92); }
  50% { opacity:1; filter:brightness(1.12); }
}
@keyframes mv-orbit-core {
  0%,100% { transform:scale(.78); opacity:.72; }
  50% { transform:scale(1.08); opacity:1; }
}
@keyframes mv-orbit-ring-a {
  from { transform:rotate(0deg) scaleY(.52); }
  to { transform:rotate(360deg) scaleY(.52); }
}
@keyframes mv-orbit-ring-b {
  from { transform:rotate(70deg) scaleX(.58); }
  to { transform:rotate(-290deg) scaleX(.58); }
}
@keyframes mv-orbit-particle {
  from { transform:rotate(0deg); }
  to { transform:rotate(360deg); }
}
@keyframes mv-orbit-particle-b {
  from { transform:rotate(0deg); }
  to { transform:rotate(-360deg); }
}
@media (max-width:760px) {
  .app-body .generating-animation>i.studio-generation-orbit { width:66px; height:66px; }
  .app-body .generating-animation .studio-generation-orbit-core { inset:27px; }
  .app-body .generating-animation .studio-generation-orbit-ring { inset:8px; }
  .app-body .generating-animation .studio-generation-orbit-ring.ring-b { inset:15px; }
  .app-body .generating-animation .studio-generation-orbit-spark { top:4px; transform-origin:2px 29px; }
  .app-body .generating-animation .studio-generation-orbit-spark.spark-b { right:4px; transform-origin:-27px 2px; }
}

/* Native SVG motion is isolated from CSS/JS animation lifecycles. Its SMIL
   timelines repeat indefinitely and continue until the result replaces it. */
.app-body .generating-animation .studio-generation-orbit-svg {
  display:block;
  width:82px;
  height:82px;
  overflow:visible;
  filter:drop-shadow(0 0 12px rgba(139,124,255,.22));
}
.app-body .generating-animation .orbit-halo { fill:rgba(139,124,255,.07); }
.app-body .generating-animation .orbit-line {
  fill:none;
  stroke-linecap:round;
  stroke-width:1.15;
  stroke-dasharray:56 44;
}
.app-body .generating-animation .orbit-line-a { stroke:rgba(215,207,255,.86); }
.app-body .generating-animation .orbit-line-b { stroke:rgba(112,236,222,.68); stroke-dasharray:42 58; }
.app-body .generating-animation .orbit-particle-a { fill:#d8d1ff; filter:drop-shadow(0 0 4px #9f92ff); }
.app-body .generating-animation .orbit-particle-b { fill:#78e8dc; filter:drop-shadow(0 0 4px #54d5c7); }
.app-body .generating-animation .orbit-core-glow { fill:rgba(166,151,255,.24); }
.app-body .generating-animation .orbit-core { fill:#f5f2ff; filter:drop-shadow(0 0 5px #b8aaff); }
@media (max-width:760px) {
  .app-body .generating-animation .studio-generation-orbit-svg { width:68px; height:68px; }
}

/* Premium Studio workspace */
.studio-page-intro { align-items:flex-end; }
.studio-intro-actions { display:flex; gap:10px; align-items:center; }
.studio-workspace { display:grid; gap:20px; padding:clamp(18px,2.4vw,30px); border:1px solid rgba(255,255,255,.12); border-radius:26px; background:linear-gradient(145deg,#131222,#0b0a14); box-shadow:0 26px 90px rgba(0,0,0,.28); min-width:0; }
.studio-workspace-head,.studio-output-head,.studio-composer-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; min-width:0; }
.studio-workspace-head h3,.studio-output-head h3,.studio-composer-head h3 { margin:4px 0 0; color:#f7f4ff; font-size:1.08rem; letter-spacing:-.02em; }
.studio-overline { display:block; color:#9e95cf; font-size:.63rem; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.studio-ready,.studio-shortcut { color:#aaa5c0; font-size:.72rem; white-space:nowrap; }
.studio-ready i { display:inline-block; width:7px; height:7px; margin-right:7px; border-radius:50%; background:#9f92ff; box-shadow:0 0 15px rgba(159,146,255,.8); }
.studio-composer-actions { display:flex; align-items:center; gap:13px; }
.studio-format-switch { display:flex; align-items:center; gap:3px; padding:3px; border:1px solid rgba(255,255,255,.11); border-radius:11px; background:#0b0a14; }
.studio-format-switch button { display:flex; align-items:center; gap:6px; padding:7px 10px; border:0; border-radius:8px; color:#89839e; background:transparent; font:inherit; font-size:.68rem; font-weight:800; cursor:pointer; }
.studio-format-switch button.active { color:#f4f1ff; background:#2a2447; box-shadow:inset 0 0 0 1px rgba(159,146,255,.26); }
.studio-format-switch button.active span { color:#b8adff; }
.studio-kind-tabs { display:flex; gap:5px; padding:4px; width:max-content; max-width:100%; border:1px solid rgba(255,255,255,.1); border-radius:13px; background:#0a0912; }
.studio-kind-tabs a { display:flex; align-items:baseline; gap:7px; padding:9px 14px; border-radius:9px; color:#8f8aa2; font-size:.78rem; font-weight:780; text-decoration:none; }
.studio-kind-tabs a small { color:#625d76; font-size:.62rem; font-weight:650; }
.studio-kind-tabs a.active { color:#f6f3ff; background:#25213d; box-shadow:inset 0 0 0 1px rgba(159,146,255,.28); }
.studio-kind-tabs a.active small { color:#aaa0ff; }
.studio-output-panel { min-width:0; padding:18px; border:1px solid rgba(255,255,255,.1); border-radius:18px; background:#090812; }
.studio-output-head { align-items:center; padding-bottom:15px; border-bottom:1px solid rgba(255,255,255,.08); }
.studio-output-head>a { color:#a79cff; font-size:.74rem; font-weight:780; text-decoration:none; white-space:nowrap; }
.studio-output-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding-top:15px; min-width:0; }
.studio-output-card { display:block; min-width:0; overflow:hidden; border:1px solid rgba(255,255,255,.1); border-radius:13px; background:#11101c; color:inherit; text-decoration:none; transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.studio-output-card:hover { transform:translateY(-2px); border-color:rgba(159,146,255,.52); box-shadow:0 13px 28px rgba(0,0,0,.25); }
.studio-output-card:focus-within .studio-hover-video { opacity:1; }
.studio-output-card:focus-within img { opacity:.15; }
.studio-output-link { display:block; color:inherit; text-decoration:none; }
.studio-output-head-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.studio-output-head-actions>a:first-child { color:#a79cff; font-size:.74rem; font-weight:780; text-decoration:none; white-space:nowrap; }
.studio-output-head-actions .button,.studio-output-actions .button { min-height:29px; padding:6px 9px; border-radius:8px; font-size:.62rem; }
.studio-output-actions { display:flex; align-items:center; justify-content:flex-end; gap:7px; padding:8px 11px 10px; border-top:1px solid rgba(255,255,255,.08); }
.studio-output-actions .button.secondary { color:#ddd8ef; background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.12); }
.media-action-note { margin-right:auto; color:#77718b; font-size:.61rem; }
.inline-action-form { display:inline-flex; margin:0; }
.studio-output-media { position:relative; display:grid; place-items:center; aspect-ratio:16/10; overflow:hidden; background:#07070e; }
.studio-output-media img,.studio-output-media video { width:100%; height:100%; object-fit:cover; display:block; }
.studio-media-badge { position:absolute; z-index:2; top:9px; left:9px; display:inline-flex; align-items:center; gap:5px; max-width:calc(100% - 18px); padding:4px 7px; overflow:hidden; border:1px solid rgba(255,255,255,.15); border-radius:7px; color:#f6f3ff; background:rgba(7,6,15,.7); font-size:.58rem; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
.studio-media-badge i { color:#b8adff; font-style:normal; font-size:.56rem; }
.studio-play { position:absolute; left:10px; bottom:9px; display:grid; place-items:center; width:27px; height:27px; border:1px solid rgba(255,255,255,.2); border-radius:50%; color:#fff; background:rgba(7,6,15,.68); font-size:.65rem; }
.studio-output-state { font-size:1.35rem; color:#9f92ff; }
.studio-output-state.failed { color:#ff8ea9; }
.studio-output-message { display:grid; place-items:center; gap:8px; max-width:85%; text-align:center; }
.studio-output-message i { display:grid; place-items:center; width:34px; height:34px; border:1px solid rgba(159,146,255,.35); border-radius:50%; color:#b8adff; font-style:normal; }
.studio-output-message.failed i { color:#ff8ea9; border-color:rgba(255,142,169,.38); }
.studio-output-message small { color:#918ba6; font-size:.65rem; line-height:1.35; }
.studio-output-message.failed small { color:#d28c9d; }
.studio-output-meta { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 8px; padding:11px 12px 12px; }
.studio-output-meta strong { overflow:hidden; color:#eeeaff; font-size:.74rem; font-weight:750; text-overflow:ellipsis; white-space:nowrap; }
.studio-output-meta small { grid-column:1/-1; overflow:hidden; color:#7c7790; font-size:.64rem; text-overflow:ellipsis; white-space:nowrap; }
.studio-output-status { font-size:.61rem; font-weight:800; text-transform:capitalize; }
.studio-output-status.complete { color:#b4aaff; }.studio-output-status.active { color:#a9a2bf; }.studio-output-status.failed { color:#ff98ae; }
.studio-output-panel>.studio-empty { min-height:180px; padding:30px 10px 20px; }
.gallery-toolbar { align-items:center; }
.gallery-filter,.media-toolbar-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.gallery-count { font-size:.8rem; }
.gallery-grid { grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); margin-top:0; }
.gallery-card { padding:0; overflow:hidden; }
.gallery-card-link { display:block; color:inherit; text-decoration:none; }
.gallery-card-media { position:relative; display:grid; place-items:center; aspect-ratio:16/10; overflow:hidden; background:#171822; }
.gallery-card-media img { width:100%; height:100%; object-fit:cover; display:block; }
.gallery-card-placeholder { color:#8f86ff; font-size:2rem; }
.gallery-kind-badge { position:absolute; top:10px; left:10px; padding:4px 7px; border:1px solid rgba(255,255,255,.15); border-radius:7px; color:#fff; background:rgba(7,6,15,.7); font-size:.58rem; font-weight:800; }
.gallery-card-meta { display:grid; gap:5px; padding:13px 14px 11px; }
.gallery-card-meta>div { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; }
.gallery-card-meta strong { min-width:0; overflow:hidden; font-size:.8rem; text-overflow:ellipsis; white-space:nowrap; }
.gallery-card-meta small { overflow:hidden; color:#898c99; font-size:.67rem; text-overflow:ellipsis; white-space:nowrap; }
.media-card-actions { display:flex; align-items:center; justify-content:flex-end; gap:7px; padding:0 14px 13px; }
.media-card-actions .button { min-height:30px; padding:6px 10px; font-size:.66rem; }
.media-card-actions .media-action-note { margin-right:auto; }
:root[data-theme="light"] .studio-output-actions { border-color:#ece9f3; }
:root[data-theme="light"] .studio-output-actions .button.secondary { color:#4b4661; background:#f6f4fb; border-color:#e2deef; }
:root[data-theme="light"] .media-action-note { color:#858198; }
.studio-composer { display:grid; gap:17px; padding:20px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:linear-gradient(145deg,#1b1730,#100e1e); box-shadow:0 18px 45px rgba(0,0,0,.2); }
.studio-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; min-width:0; }
.studio-form-grid-top { grid-template-columns:minmax(150px,.55fr) minmax(0,1.45fr); }
.studio-form-grid-options { grid-template-columns:repeat(4,minmax(0,1fr)); align-items:end; }
.studio-composer .field { margin:0; min-width:0; }
.studio-composer .field label { color:#d5d0e8; font-size:.7rem; font-weight:750; letter-spacing:.02em; }
.studio-composer .field input,.studio-composer .field select { min-height:43px; padding:10px 12px; border-radius:11px; color:#f0edff; background:#211d39; border-color:#403a60; }
.studio-prompt-field textarea { min-height:108px; resize:vertical; padding:14px; border-radius:12px; color:#f0edff; background:#121025; border-color:#403a60; font-size:.92rem; }
.studio-prompt-field textarea:focus,.studio-composer .field input:focus,.studio-composer .field select:focus { border-color:#9f92ff; box-shadow:0 0 0 3px rgba(159,146,255,.12); outline:none; }
.studio-prompt-field small,.studio-composer .field small { display:block; margin-top:6px; color:#88829e; font-size:.66rem; }
.studio-sound { align-self:end; min-height:43px; padding:0 5px 11px 2px; color:#a6a0b8; font-size:.72rem; white-space:nowrap; }
.studio-reference-control { display:flex; align-items:center; gap:13px; min-width:0; padding:12px 14px; border:1px dashed rgba(159,146,255,.48); border-radius:13px; background:rgba(159,146,255,.07); }
.studio-media-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; min-width:0; }
.studio-reference-control.is-disabled { opacity:.58; border-color:rgba(255,255,255,.15); background:rgba(255,255,255,.025); }
.studio-reference-icon { display:grid; place-items:center; flex:0 0 auto; width:32px; height:32px; border-radius:9px; color:#b6aaff; background:#2b2547; font-size:1.15rem; }
.studio-reference-copy { display:grid; gap:2px; min-width:0; }
.studio-reference-copy strong { color:#eeeaff; font-size:.76rem; }.studio-reference-copy span { overflow:hidden; color:#a9a2ba; font-size:.69rem; text-overflow:ellipsis; white-space:nowrap; }.studio-reference-copy small { color:#77718b; font-size:.61rem; }
.studio-reference-button { position:relative; flex:0 0 auto; margin-left:auto; padding:8px 12px!important; font-size:.68rem!important; cursor:pointer; }
.studio-reference-button input { position:absolute; width:1px; height:1px; overflow:hidden; opacity:0; pointer-events:none; }
.studio-reference-control.is-disabled .studio-reference-button { cursor:not-allowed; }
.studio-input-mode-label { color:#a9a2ba; font-size:.68rem; font-weight:800; letter-spacing:.04em; }
.studio-input-mode-switch { display:flex; gap:7px; padding:4px; border:1px solid rgba(159,146,255,.28); border-radius:13px; background:rgba(159,146,255,.06); }
.studio-input-mode { display:flex; align-items:center; gap:8px; flex:1; min-width:0; padding:9px 11px; border:1px solid transparent; border-radius:9px; color:#aaa4bd; background:transparent; text-align:left; cursor:pointer; }
.studio-input-mode>span:first-child { display:grid; place-items:center; flex:0 0 auto; width:26px; height:26px; border-radius:8px; color:#b8adff; background:#2b2547; font-size:.9rem; }
.studio-input-mode>span:last-child { display:grid; gap:2px; min-width:0; }
.studio-input-mode strong { color:#dcd7ed; font-size:.72rem; }
.studio-input-mode small { color:#8e88a4; font-size:.62rem; }
.studio-input-mode.active { border-color:rgba(159,146,255,.45); color:#f5f1ff; background:#25203f; box-shadow:inset 0 0 0 1px rgba(159,146,255,.12); }
.studio-input-mode.active strong { color:#fff; }
.studio-media-controls { grid-template-columns:1fr; }
.studio-submit-row { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-top:15px; border-top:1px solid rgba(255,255,255,.09); }
.studio-submit-note { color:#918ba4; font-size:.68rem; line-height:1.5; }
.studio-submit { min-width:170px; padding:12px 20px; }
:root[data-theme="light"] .studio-workspace { background:linear-gradient(145deg,#fff,#f5f3ff); border-color:#deddf0; box-shadow:0 18px 55px rgba(24,22,50,.08); }
:root[data-theme="light"] .studio-workspace-head h3,:root[data-theme="light"] .studio-output-head h3,:root[data-theme="light"] .studio-composer-head h3 { color:#171725; }
:root[data-theme="light"] .studio-format-switch { background:#f1effa; border-color:#deddf0; }:root[data-theme="light"] .studio-format-switch button { color:#77728d; }:root[data-theme="light"] .studio-format-switch button.active { color:#302a55; background:#fff; }
:root[data-theme="light"] .studio-kind-tabs { background:#f1effa; border-color:#deddf0; }
:root[data-theme="light"] .studio-kind-tabs a { color:#737186; }:root[data-theme="light"] .studio-kind-tabs a.active { color:#302a55; background:#fff; }
:root[data-theme="light"] .studio-output-panel { background:#fff; border-color:#e3e1ee; }
:root[data-theme="light"] .studio-output-card { background:#fbfaff; border-color:#e5e2f0; }.studio-output-meta strong { color:#eeeaff; }
:root[data-theme="light"] .studio-output-meta strong { color:#27243a; }.studio-output-meta small { color:#858198; }
:root[data-theme="light"] .studio-composer { background:#fff; border-color:#e1deed; box-shadow:0 12px 35px rgba(24,22,50,.07); }
:root[data-theme="light"] .studio-composer .field label { color:#454258; }:root[data-theme="light"] .studio-composer .field input,:root[data-theme="light"] .studio-composer .field select,:root[data-theme="light"] .studio-prompt-field textarea { color:#202033; background:#faf9ff; border-color:#ddd9eb; }
:root[data-theme="light"] .studio-reference-copy strong { color:#27243a; }
:root[data-theme="light"] .studio-input-mode-switch { border-color:#ded8ef; background:#f5f2fd; }
:root[data-theme="light"] .studio-input-mode { color:#77728d; }
:root[data-theme="light"] .studio-input-mode strong { color:#3c3852; }
:root[data-theme="light"] .studio-input-mode.active { color:#302a55; background:#fff; border-color:#cfc6f6; }
@media(max-width:1050px){.studio-output-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.studio-form-grid-options{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){.studio-page-intro{align-items:flex-start;}.studio-workspace{padding:13px;border-radius:19px;gap:14px;}.studio-workspace-head,.studio-output-head,.studio-composer-head{display:block;}.studio-ready,.studio-shortcut{display:block;margin-top:9px;}.studio-composer-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:9px;margin-top:13px;}.studio-output-panel,.studio-composer{padding:13px;border-radius:14px;}.studio-output-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}.studio-form-grid,.studio-form-grid-top,.studio-form-grid-options{grid-template-columns:1fr;}.studio-reference-control{align-items:flex-start;flex-wrap:wrap;}.studio-reference-button{margin-left:45px;}.studio-submit-row{align-items:stretch;flex-direction:column;}.studio-submit{width:100%;}}

.studio-input-mode:disabled { opacity:.42; cursor:not-allowed; }
.studio-visual-input-note { color:#9f98b5; font-size:.69rem; line-height:1.45; }
.studio-reference-control.is-disabled .studio-reference-button { pointer-events:none; opacity:.55; cursor:not-allowed!important; }


/* Final reference visual treatment. */
.motion-studio-page .studio-composer { width:min(1200px,calc(100vw - 36px)) !important; max-height:calc(100vh - 80px) !important; padding:18px 20px 16px !important; gap:8px !important; border:1px solid rgba(255,255,255,.13) !important; border-radius:28px !important; background:#151515 !important; box-shadow:0 16px 45px rgba(0,0,0,.42) !important; }
.motion-studio-page .studio-prompt-field { margin:0 !important; }
.motion-studio-page .studio-prompt-field label { color:transparent !important; font-size:0 !important; }
.motion-studio-page .studio-prompt-field textarea { width:100% !important; min-height:56px !important; max-height:110px !important; padding:4px 12px 8px !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; color:#b8b8b8 !important; font-size:1rem !important; line-height:1.45 !important; }
.motion-studio-page .studio-prompt-field textarea::placeholder { color:#858585 !important; opacity:1 !important; }
.motion-studio-page .studio-prompt-field textarea:focus { border:0 !important; box-shadow:none !important; background:transparent !important; }
.motion-studio-page .studio-prompt-field small { display:none !important; }
.motion-studio-page .studio-submit-row { display:flex !important; align-items:center !important; gap:8px !important; }
.motion-studio-page .studio-upload-trigger { flex:0 0 64px !important; width:64px !important; height:64px !important; border-radius:50% !important; color:#aaa !important; background:#222 !important; font-size:1.55rem !important; }
.motion-studio-page .studio-model-chip { margin-left:auto !important; max-width:none !important; padding:12px 20px !important; border:0 !important; color:#bcbcbc !important; background:#222 !important; font-size:.95rem !important; }
.motion-studio-page .studio-submit { flex:0 0 64px !important; width:64px !important; height:64px !important; min-width:64px !important; min-height:64px !important; border:0 !important; background:#222 !important; color:#aaa !important; }
.motion-studio-page .studio-submit span { color:#aaa !important; font-size:1.7rem !important; }
@media(max-width:760px) { .motion-studio-page .studio-composer { width:calc(100vw - 20px) !important; padding:14px !important; border-radius:22px !important; } .motion-studio-page .studio-upload-trigger { flex-basis:48px !important; width:48px !important; height:48px !important; } .motion-studio-page .studio-submit { flex-basis:48px !important; width:48px !important; min-width:48px !important; height:48px !important; min-height:48px !important; } .motion-studio-page .studio-model-chip { max-width:calc(100vw - 150px) !important; padding:9px 12px !important; font-size:.72rem !important; } }

/* Higher-specificity guard for legacy Studio declarations below. */
body .motion-studio-page .studio-composer { width:min(1200px,calc(100vw - 36px)) !important; padding:18px 20px 16px !important; gap:8px !important; border-radius:28px !important; background:#151515 !important; }
body .motion-studio-page .studio-composer-head { display:none !important; }
body .motion-studio-page .studio-prompt-field label { color:transparent !important; font-size:0 !important; }
body .motion-studio-page .studio-prompt-field textarea { min-height:56px !important; max-height:110px !important; padding:4px 12px 8px !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; color:#b8b8b8 !important; font-size:1rem !important; }
body .motion-studio-page .studio-prompt-field small { display:none !important; }
body .motion-studio-page .studio-submit-row { display:flex !important; align-items:center !important; gap:8px !important; }
body .motion-studio-page .studio-upload-trigger { flex:0 0 64px !important; width:64px !important; height:64px !important; border-radius:50% !important; background:#222 !important; color:#aaa !important; }
body .motion-studio-page .studio-model-chip { margin-left:auto !important; max-width:none !important; padding:12px 20px !important; border:0 !important; background:#222 !important; color:#bcbcbc !important; font-size:.95rem !important; }
body .motion-studio-page .studio-submit { flex:0 0 64px !important; width:64px !important; height:64px !important; min-width:64px !important; min-height:64px !important; border:0 !important; background:#222 !important; color:#aaa !important; }
body .motion-studio-page .studio-submit span { color:#aaa !important; font-size:1.7rem !important; }
@media(max-width:760px) { body .motion-studio-page .studio-composer { width:calc(100vw - 20px) !important; padding:14px !important; border-radius:22px !important; } body .motion-studio-page .studio-upload-trigger { flex-basis:48px !important; width:48px !important; height:48px !important; } body .motion-studio-page .studio-submit { flex-basis:48px !important; width:48px !important; min-width:48px !important; height:48px !important; min-height:48px !important; } body .motion-studio-page .studio-model-chip { max-width:calc(100vw - 150px) !important; padding:9px 12px !important; font-size:.72rem !important; } }

/* Reference-matched single-surface composer. */
.motion-studio-page .studio-composer {
  width:min(1200px,calc(100vw - 36px)) !important;
  max-height:calc(100vh - 80px) !important;
  padding:18px 20px 16px !important;
  gap:8px !important;
  border:1px solid rgba(255,255,255,.13) !important;
  border-radius:28px !important;
  background:#151515 !important;
  box-shadow:0 16px 45px rgba(0,0,0,.42) !important;
}
.motion-studio-page .studio-prompt-field { margin:0 !important; }
.motion-studio-page .studio-prompt-field label { color:transparent !important; font-size:0 !important; }
.motion-studio-page .studio-prompt-field textarea {
  width:100% !important;
  min-height:56px !important;
  max-height:110px !important;
  padding:4px 12px 8px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#b8b8b8 !important;
  font-size:1rem !important;
  line-height:1.45 !important;
}
.motion-studio-page .studio-prompt-field textarea::placeholder { color:#858585 !important; opacity:1 !important; }
.motion-studio-page .studio-prompt-field textarea:focus { border:0 !important; box-shadow:none !important; background:transparent !important; }
.motion-studio-page .studio-prompt-field small { display:none !important; }
.motion-studio-page .studio-submit-row { display:flex !important; align-items:center !important; gap:8px !important; }
.motion-studio-page .studio-upload-trigger { flex:0 0 64px !important; width:64px !important; height:64px !important; border-radius:50% !important; color:#aaa !important; background:#222 !important; font-size:1.55rem !important; }
.motion-studio-page .studio-model-chip { margin-left:auto !important; max-width:none !important; padding:12px 20px !important; border:0 !important; color:#bcbcbc !important; background:#222 !important; font-size:.95rem !important; }
.motion-studio-page .studio-submit { flex:0 0 64px !important; width:64px !important; height:64px !important; min-width:64px !important; min-height:64px !important; border:0 !important; background:#222 !important; color:#aaa !important; }
.motion-studio-page .studio-submit span { color:#aaa !important; font-size:1.7rem !important; }
@media(max-width:760px) {
  .motion-studio-page .studio-composer { width:calc(100vw - 20px) !important; padding:14px 14px 12px !important; border-radius:22px !important; }
  .motion-studio-page .studio-upload-trigger { flex-basis:48px !important; width:48px !important; height:48px !important; }
  .motion-studio-page .studio-submit { flex-basis:48px !important; width:48px !important; min-width:48px !important; height:48px !important; min-height:48px !important; }
  .motion-studio-page .studio-model-chip { max-width:calc(100vw - 150px) !important; padding:9px 12px !important; font-size:.72rem !important; }
}

/* Final Studio composer lock, after all legacy rules. */
.motion-studio-page .studio-composer { width:min(600px,calc(100vw - 24px)) !important; max-height:calc(100vh - 92px) !important; grid-template-columns:1fr !important; gap:6px !important; padding:10px 12px 11px !important; border-radius:19px !important; overflow:visible !important; }
.motion-studio-page .studio-composer-head { display:none !important; }
.motion-studio-page .studio-prompt-field textarea { min-height:48px !important; max-height:88px !important; padding:9px 11px !important; border:0 !important; outline:0 !important; box-shadow:none !important; background:rgba(250,249,255,.97) !important; color:#26213d !important; }
.motion-studio-page .studio-submit-row { grid-column:1/-1 !important; display:flex !important; align-items:center !important; gap:7px !important; padding:0 !important; border:0 !important; }
.motion-studio-page .studio-submit-note { display:none !important; }
.motion-studio-page .studio-submit { flex:0 0 38px !important; min-width:38px !important; width:38px !important; height:38px !important; min-height:38px !important; padding:0 !important; border-radius:50% !important; font-size:0 !important; background:#3a3842 !important; color:#f7f5fb !important; border:1px solid rgba(255,255,255,.14) !important; box-shadow:none !important; }
.motion-studio-page .studio-submit span { display:inline-block !important; color:#f7f5fb !important; font-size:1.1rem !important; }
@media(max-width:760px) { .motion-studio-page .studio-composer { width:calc(100vw - 18px) !important; padding:9px 10px !important; } .motion-studio-page .studio-composer-head { display:none !important; } .motion-studio-page .studio-prompt-field textarea { min-height:48px !important; max-height:76px !important; } }

/* Last-mile Studio composer lock: this intentionally comes after legacy
   theme rules so the compact popover composer remains the active design. */
.motion-studio-page .studio-composer {
  width:min(600px,calc(100vw - 24px)) !important;
  max-height:calc(100vh - 92px) !important;
  grid-template-columns:1fr !important;
  gap:6px !important;
  padding:10px 12px 11px !important;
  border-radius:19px !important;
  overflow:visible !important;
}
.motion-studio-page .studio-composer-head { display:none !important; }
.motion-studio-page .studio-prompt-field textarea {
  min-height:48px !important;
  max-height:88px !important;
  padding:9px 11px !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:rgba(250,249,255,.97) !important;
  color:#26213d !important;
}
.motion-studio-page .studio-submit-row {
  grid-column:1/-1 !important;
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:0 !important;
  border:0 !important;
}
.motion-studio-page .studio-submit-note { display:none !important; }
.motion-studio-page .studio-submit {
  flex:0 0 38px !important;
  min-width:38px !important;
  width:38px !important;
  height:38px !important;
  min-height:38px !important;
  padding:0 !important;
  border-radius:50% !important;
  font-size:0 !important;
  background:#3a3842 !important;
  color:#f7f5fb !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:none !important;
}
.motion-studio-page .studio-submit span { display:inline-block !important; color:#f7f5fb !important; font-size:1.1rem !important; }
@media(max-width:760px) {
  .motion-studio-page .studio-composer { width:calc(100vw - 18px) !important; padding:9px 10px !important; }
  .motion-studio-page .studio-composer-head { display:none !important; }
  .motion-studio-page .studio-prompt-field textarea { min-height:48px !important; max-height:76px !important; }
}

/* Final Studio composer overrides. */
.motion-studio-page .studio-composer { width:min(600px,calc(100vw - 24px)); grid-template-columns:1fr; gap:4px; padding:10px 12px 11px; border-radius:19px; overflow:visible; }
.motion-studio-page .studio-composer-head { display:none!important; }
.motion-studio-page .studio-prompt-field textarea { min-height:43px; max-height:76px; padding:7px 5px 5px; border:0!important; box-shadow:none!important; background:transparent!important; }
.motion-studio-page .studio-visual-popover { width:min(540px,calc(100vw - 24px)); padding:14px; gap:13px; }
.motion-studio-page .studio-visual-popover .studio-form-grid-options { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(82px,.8fr) minmax(82px,.8fr) minmax(92px,.9fr); gap:10px; overflow:visible; }
.motion-studio-page .studio-visual-popover .studio-form-grid-options select { width:100%; min-width:0; max-width:none; }
.motion-studio-page .studio-visual-popover .studio-media-controls { display:grid; gap:10px; }
.motion-studio-page .studio-visual-popover .studio-input-mode-switch { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.motion-studio-page .studio-visual-popover .studio-reference-control { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; min-width:0; }
.motion-studio-page .studio-submit-row { grid-column:1/-1; display:flex; flex-direction:row; align-items:center; gap:7px; padding:0; border:0; }
.motion-studio-page .studio-submit-row .studio-submit-note { display:none; }
.motion-studio-page .studio-submit { flex:0 0 38px!important; min-width:38px!important; width:38px!important; height:38px!important; min-height:38px!important; padding:0!important; border-radius:50%!important; font-size:0!important; background:#3a3842!important; color:#f7f5fb!important; box-shadow:none!important; }
.motion-studio-page .studio-submit span { color:#f7f5fb!important; font-size:1.1rem!important; }
@media(max-width:760px) {
  .motion-studio-page .studio-composer { width:calc(100vw - 18px); grid-template-columns:1fr; padding:9px 10px; }
  .motion-studio-page .studio-visual-popover { width:calc(100vw - 22px); max-height:62vh; }
  .motion-studio-page .studio-visual-popover .studio-form-grid-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .motion-studio-page .studio-visual-popover .studio-model-field { grid-column:1/-1; }
  .motion-studio-page .studio-visual-popover .studio-reference-control { grid-template-columns:auto minmax(0,1fr); }
  .motion-studio-page .studio-visual-popover .studio-reference-button { grid-column:2; justify-self:start; }
}

/* Refined free-account upgrade surface inside Studio. */
.studio-upgrade-surface { position:relative; display:block; margin:0 0 20px; padding:24px; overflow:hidden; border:1px solid rgba(159,146,255,.26); border-radius:22px; background:linear-gradient(135deg,rgba(27,23,52,.98),rgba(13,14,25,.98)); box-shadow:0 18px 55px rgba(12,8,35,.32),inset 0 1px 0 rgba(255,255,255,.08); }
.studio-upgrade-surface::after { content:""; position:absolute; inset:0; pointer-events:none; opacity:.35; background:linear-gradient(115deg,transparent 0 58%,rgba(139,124,255,.12) 58.2%,transparent 72%),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px); background-size:auto,34px 100%; }
.studio-upgrade-header { position:relative; z-index:1; display:flex; align-items:flex-start; gap:13px; }
.studio-upgrade-icon { flex:0 0 38px; width:38px; height:38px; display:grid; place-items:center; border:1px solid rgba(185,174,255,.35); border-radius:12px; color:#e8e2ff; background:linear-gradient(145deg,#8877ff,#4d3b9b); box-shadow:0 8px 20px rgba(112,88,255,.28); font-size:1rem; }
.studio-upgrade-copy { min-width:0; }
.studio-upgrade-copy h3 { margin:4px 0 5px; color:#fff; font-size:1.22rem; letter-spacing:-.035em; }
.studio-upgrade-copy p { max-width:620px; margin:0; color:#aaa5bf; font-size:.78rem; line-height:1.5; }
.studio-upgrade-note { margin-left:auto; flex:0 0 auto; padding:7px 10px; border:1px solid rgba(105,231,206,.22); border-radius:999px; color:#9cebdd; background:rgba(44,157,141,.1); font-size:.6rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.studio-plan-choices { position:relative; z-index:1; display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:12px; margin-top:20px; }
.studio-plan-choice { min-width:0; display:flex; flex-direction:column; padding:17px; border:1px solid rgba(255,255,255,.12); border-radius:16px; background:rgba(9,9,19,.72); box-shadow:inset 0 1px 0 rgba(255,255,255,.05); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.studio-plan-choice:hover { transform:translateY(-2px); border-color:rgba(174,160,255,.6); box-shadow:0 14px 28px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08); }
.studio-plan-choice.is-featured { border-color:rgba(105,231,206,.36); background:linear-gradient(150deg,rgba(31,59,61,.42),rgba(9,9,19,.8)); }
.studio-plan-choice-head { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; color:#f8f6ff; }
.studio-plan-choice-head strong { display:block; font-size:.86rem; }
.studio-plan-access { display:block; margin-top:4px; color:#89849e; font-size:.62rem; }
.studio-plan-mark { color:#b4a8ff; font-size:1rem; }
.studio-plan-choice-price { display:flex; align-items:baseline; gap:6px; margin:15px 0 14px; }
.studio-plan-choice-price strong { color:#fff; font-size:1.48rem; letter-spacing:-.045em; }
.studio-plan-choice-price span { color:#8e899f; font-size:.65rem; }
.studio-plan-capacity { display:grid; gap:8px; min-height:84px; margin-bottom:16px; }
.studio-plan-capacity-item { display:flex; align-items:flex-start; gap:8px; color:#b5b0c5; font-size:.68rem; line-height:1.35; }
.studio-plan-capacity-item i { flex:0 0 auto; color:#9e91ff; font-style:normal; font-size:.72rem; }
.studio-plan-capacity-item .plan-help { margin-top:-1px; }
.studio-plan-choice form { margin-top:auto; }
.studio-plan-choice .button { width:100%; min-height:37px; padding:9px 12px; font-size:.72rem; }
.studio-plan-choice .button.primary { color:#171421; background:#a99aff; border-color:#a99aff; box-shadow:0 8px 18px rgba(139,124,255,.18); }
.studio-plan-choice .button.primary:hover { background:#c1b8ff; border-color:#c1b8ff; }
.studio-plan-empty { position:relative; z-index:1; margin-top:18px; color:#bdb8d0; font-size:.78rem; }
@media(max-width:760px) { .studio-upgrade-surface { padding:18px 16px; border-radius:18px; } .studio-upgrade-note { display:none; } .studio-upgrade-copy h3 { font-size:1.08rem; } .studio-plan-choices { grid-template-columns:1fr; } }

/* Final Studio composer overrides (kept last so legacy theme rules cannot
   expand the compact chat bar or its circular send control). */
.motion-studio-page .studio-composer { width:min(600px,calc(100vw - 24px))!important; grid-template-columns:1fr!important; gap:4px!important; padding:10px 12px 11px!important; border-radius:19px!important; overflow:visible!important; }
.motion-studio-page .studio-composer-head { display:none!important; }
.motion-studio-page .studio-prompt-field textarea { min-height:43px!important; max-height:76px!important; padding:7px 5px 5px!important; border:0!important; box-shadow:none!important; background:transparent!important; }
.motion-studio-page .studio-visual-popover { width:min(540px,calc(100vw - 24px)); padding:14px; gap:13px; }
.motion-studio-page .studio-visual-popover .studio-form-grid-options { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(82px,.8fr) minmax(82px,.8fr) minmax(92px,.9fr); gap:10px; overflow:visible; }
.motion-studio-page .studio-visual-popover .studio-form-grid-options select { width:100%; min-width:0; max-width:none; }
.motion-studio-page .studio-visual-popover .studio-media-controls { display:grid; gap:10px; }
.motion-studio-page .studio-visual-popover .studio-input-mode-switch { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.motion-studio-page .studio-visual-popover .studio-reference-control { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; min-width:0; }
.motion-studio-page .studio-submit-row { grid-column:1/-1; display:flex; flex-direction:row; align-items:center; gap:7px; padding:0; border:0; }
.motion-studio-page .studio-submit-row .studio-submit-note { display:none; }
.motion-studio-page .studio-upload-trigger { flex:0 0 36px; width:36px; height:36px; }
.motion-studio-page .studio-model-chip { max-width:240px; }
.motion-studio-page .studio-submit { flex:0 0 38px!important; min-width:38px!important; width:38px!important; height:38px!important; min-height:38px!important; padding:0!important; border-radius:50%!important; font-size:0!important; background:#3a3842!important; color:#f7f5fb!important; box-shadow:none!important; }
.motion-studio-page .studio-submit span { color:#f7f5fb!important; font-size:1.1rem!important; }
@media(max-width:760px) {
  .motion-studio-page .studio-composer { width:calc(100vw - 18px)!important; grid-template-columns:1fr!important; padding:9px 10px!important; }
  .motion-studio-page .studio-visual-popover { width:calc(100vw - 22px); max-height:62vh; }
  .motion-studio-page .studio-visual-popover .studio-form-grid-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .motion-studio-page .studio-visual-popover .studio-model-field { grid-column:1/-1; }
  .motion-studio-page .studio-visual-popover .studio-reference-control { grid-template-columns:auto minmax(0,1fr); }
  .motion-studio-page .studio-visual-popover .studio-reference-button { grid-column:2; justify-self:start; }
}

/* Studio plan card refinement and visible help tooltip. */
.motion-studio-page .studio-upgrade-surface { overflow:visible; padding:26px; border-color:rgba(139,124,255,.42); background:linear-gradient(145deg,rgba(20,18,36,.98),rgba(13,13,25,.98)); }
.motion-studio-page .studio-upgrade-surface::after { border-radius:inherit; overflow:hidden; }
.motion-studio-page .studio-upgrade-header { margin-bottom:4px; }
.motion-studio-page .studio-upgrade-copy h3 { font-size:1.35rem; }
.motion-studio-page .studio-plan-choices { grid-template-columns:minmax(0,680px); justify-content:start; margin-top:22px; }
.motion-studio-page .studio-plan-choice { padding:27px 28px 25px; border-radius:24px; border-color:rgba(139,124,255,.58); background:linear-gradient(145deg,rgba(21,19,39,.98),rgba(14,13,27,.98)); box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 18px 48px rgba(8,5,25,.28); }
.motion-studio-page .studio-plan-choice:hover { transform:none; border-color:rgba(173,160,255,.9); box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 22px 58px rgba(10,6,32,.38); }
.motion-studio-page .studio-plan-choice-head strong { font-size:1.18rem; }
.motion-studio-page .studio-plan-access { margin-top:7px; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:#9589ff; font-weight:800; }
.motion-studio-page .studio-plan-mark { font-size:1.2rem; }
.motion-studio-page .studio-plan-choice-price { margin:23px 0 21px; gap:9px; }
.motion-studio-page .studio-plan-choice-price strong { font-size:2.7rem; letter-spacing:-.065em; }
.motion-studio-page .studio-plan-choice-price span { font-size:.9rem; color:#8d899f; }
.motion-studio-page .studio-plan-capacity { gap:14px; min-height:0; margin-bottom:25px; }
.motion-studio-page .studio-plan-capacity-item { align-items:center; gap:11px; color:#b5aecb; font-size:.9rem; }
.motion-studio-page .studio-plan-capacity-item i { color:#9587ff; font-size:1rem; }
.motion-studio-page .studio-plan-choice .button { width:auto; min-width:176px; min-height:52px; padding:13px 25px; border-radius:999px; font-size:.98rem; font-weight:850; }
.motion-studio-page .studio-plan-choice .button.primary { color:#171322; background:#907cff; border-color:#907cff; }
.motion-studio-page .studio-plan-choice .button.primary:hover { background:#ac9cff; border-color:#ac9cff; }
.motion-studio-page .studio-plan-choice .plan-help { width:19px; height:19px; color:#b4a8ff; font-size:.72rem; }
.motion-studio-page .studio-plan-choice .plan-help::after { left:0; bottom:calc(100% + 14px); width:320px; padding:14px 16px; border:1px solid #d8d5df; border-radius:12px; background:#fff; color:#252331; box-shadow:0 18px 45px rgba(0,0,0,.35); font-size:.88rem; font-weight:500; line-height:1.45; transform:translate(0,4px); }
.motion-studio-page .studio-plan-choice .plan-help::before { left:9px; bottom:calc(100% + 4px); border-top-color:#fff; transform:translateX(-50%); }
.motion-studio-page .studio-plan-choice .plan-help:hover::after,.motion-studio-page .studio-plan-choice .plan-help:focus-visible::after { transform:translate(0,0); }
@media(max-width:760px) { .motion-studio-page .studio-upgrade-surface { padding:18px 14px; } .motion-studio-page .studio-plan-choices { grid-template-columns:1fr; } .motion-studio-page .studio-plan-choice { padding:22px 19px; } .motion-studio-page .studio-plan-choice-price strong { font-size:2.15rem; } .motion-studio-page .studio-plan-choice .plan-help::after { left:auto; right:-10px; transform:translate(0,4px); } .motion-studio-page .studio-plan-choice .plan-help:hover::after,.motion-studio-page .studio-plan-choice .plan-help:focus-visible::after { transform:translate(0,0); } }

/* Compact creator bar inspired by the supplied references. The form and
   backend fields stay unchanged; only the presentation becomes popover-based. */
.motion-studio-page .studio-composer { position:fixed; isolation:isolate; overflow:visible; grid-template-columns:minmax(0,1fr) auto; padding:10px 12px 11px; border-radius:22px; background:rgba(18,18,22,.86); border-color:rgba(255,255,255,.14); box-shadow:0 22px 60px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.08); }
.motion-studio-page .studio-composer-head { grid-column:1/-1; padding:0; border:0; }
.motion-studio-page .studio-composer-actions { justify-content:flex-end; gap:7px; }
.motion-studio-page .studio-format-switch { order:2; padding:3px; border:0; border-radius:999px; background:rgba(255,255,255,.06); }
.motion-studio-page .studio-format-switch button { min-height:30px; padding:6px 11px; border-radius:999px; color:#aaa7b2; font-size:.67rem; }
.motion-studio-page .studio-format-switch button.active { color:#17161b; background:#f4f3f5; box-shadow:none; }
.motion-studio-page .studio-format-switch button[data-studio-kind="exclusive"].active { color:#f4f3f5; background:#4d3c83; }
.motion-studio-page .studio-settings-toggle { order:1; display:inline-flex; align-items:center; gap:5px; min-height:30px; padding:6px 10px; border:1px solid rgba(255,255,255,.1); border-radius:999px; color:#b7b3c0; background:rgba(255,255,255,.045); font:inherit; font-size:.66rem; font-weight:800; cursor:pointer; }
.motion-studio-page .studio-settings-toggle:hover,.motion-studio-page .studio-settings-toggle[aria-expanded="true"] { color:#fff; background:rgba(139,124,255,.22); border-color:rgba(159,146,255,.5); }
.motion-studio-page .studio-shortcut { order:3; display:none; }
.motion-studio-page .studio-prompt-field textarea { min-height:56px; max-height:115px; padding:9px 4px 7px; color:#f4f1f6; background:transparent; border:0; box-shadow:none; font-size:.91rem; }
.motion-studio-page .studio-prompt-field textarea::placeholder { color:#85818b; }
.motion-studio-page .studio-prompt-field textarea:focus { color:#fff; border:0; box-shadow:none; }
.motion-studio-page .studio-form-grid-options { grid-column:1/-1; align-items:center; gap:6px; padding:0; overflow:hidden; }
.motion-studio-page .studio-form-grid-options .field label { color:transparent; }
.motion-studio-page .studio-form-grid-options select { min-height:34px; min-width:0; max-width:170px; padding:7px 27px 7px 10px; border-radius:999px; color:#d9d5df; background:#29282d; border-color:rgba(255,255,255,.08); font-size:.66rem; }
.motion-studio-page .studio-form-grid-options .studio-model-field { flex:1 1 auto; }
.motion-studio-page .studio-form-grid-options .studio-model-field select { width:100%; max-width:230px; }
.motion-studio-page .studio-duration-field { flex:0 0 auto; }
.motion-studio-page .studio-visual-popover { position:absolute; z-index:30; right:0; bottom:calc(100% + 10px); display:none; width:min(430px,calc(100vw - 28px)); max-height:min(68vh,520px); overflow:auto; padding:10px; border:1px solid rgba(255,255,255,.14); border-radius:18px; background:rgba(28,27,33,.96); box-shadow:0 22px 65px rgba(0,0,0,.62); backdrop-filter:blur(26px) saturate(140%); }
.motion-studio-page .studio-visual-popover.is-open { display:grid; gap:8px; }
.motion-studio-page .studio-visual-popover .studio-media-controls,.motion-studio-page .studio-visual-popover .studio-source-control { display:flex; }
.motion-studio-page .studio-visual-popover .studio-media-controls[hidden],.motion-studio-page .studio-visual-popover .studio-source-control[hidden] { display:none!important; }
.motion-studio-page .studio-visual-popover .studio-reference-control { background:rgba(255,255,255,.045); border-style:solid; }
.motion-studio-page .studio-visual-popover .studio-form-grid-options { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(82px,.8fr) minmax(82px,.8fr) minmax(92px,.9fr); align-items:end; gap:8px; overflow:visible; }
.motion-studio-page .studio-visual-popover .studio-form-grid-options .field { min-width:0; }
.motion-studio-page .studio-visual-popover .studio-form-grid-options select { width:100%; max-width:none; min-width:0; }
.motion-studio-page .studio-visual-popover .studio-input-mode-switch { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.motion-studio-page .studio-visual-popover .studio-input-mode { min-width:0; min-height:68px; padding:10px; border-radius:12px; }
.motion-studio-page .studio-visual-popover .studio-reference-control { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; padding:10px; }
.motion-studio-page .studio-visual-popover .studio-reference-button { margin-left:0; white-space:nowrap; }
.motion-studio-page .studio-submit-row { grid-column:2; align-self:center; padding:0; border:0; }
.motion-studio-page .studio-submit-row { grid-column:1/-1; display:flex; align-items:center; gap:7px; }
.motion-studio-page .studio-upload-trigger,.motion-studio-page .studio-model-chip { display:inline-flex; align-items:center; justify-content:center; border:0; cursor:pointer; font:inherit; }
.motion-studio-page .studio-upload-trigger { flex:0 0 36px; width:36px; height:36px; border-radius:50%; color:#bab6c0; background:rgba(255,255,255,.08); font-size:1.25rem; line-height:1; }
.motion-studio-page .studio-upload-trigger:hover { color:#fff; background:rgba(139,124,255,.28); }
.motion-studio-page .studio-model-chip { min-width:0; max-width:220px; padding:8px 12px; overflow:hidden; border:1px solid rgba(255,255,255,.08); border-radius:999px; color:#d7d3dc; background:rgba(255,255,255,.06); font-size:.66rem; font-weight:750; text-overflow:ellipsis; white-space:nowrap; }
.motion-studio-page .studio-model-chip:hover { color:#fff; background:rgba(255,255,255,.1); }
.motion-studio-page .studio-submit-row .studio-submit-note { flex:1; }
.motion-studio-page .studio-composer-head { display:none; }
.motion-studio-page .studio-composer { width:min(600px,calc(100vw - 24px)); grid-template-columns:1fr; gap:4px; padding:10px 12px 11px; border-radius:19px; }
.motion-studio-page .studio-prompt-field { grid-column:1; }
.motion-studio-page .studio-prompt-field textarea { min-height:43px; max-height:76px; padding:7px 5px 5px; font-size:.86rem; }
.motion-studio-page .studio-agent-pill { display:inline-flex; align-items:center; justify-content:center; min-height:32px; padding:7px 14px; border:0; border-radius:999px; color:#bcb8c2; background:rgba(255,255,255,.08); font:inherit; font-size:.66rem; font-weight:700; cursor:pointer; }
.motion-studio-page .studio-agent-pill:hover,.motion-studio-page .studio-agent-pill[aria-expanded="true"] { color:#fff; background:rgba(139,124,255,.25); }
.motion-studio-page .studio-visual-popover .studio-format-switch { display:flex; order:0; width:100%; margin-bottom:2px; border:0; background:rgba(255,255,255,.05); }
.motion-studio-page .studio-visual-popover .studio-format-switch button { flex:1; justify-content:center; }
.motion-studio-page .studio-submit { flex:0 0 38px; min-width:38px; width:38px; height:38px; min-height:38px; padding:0; border-radius:50%; font-size:0; background:#3a3842; color:#f7f5fb; border:1px solid rgba(255,255,255,.14); box-shadow:none; }
.motion-studio-page .studio-submit span { display:inline-block; font-size:1.1rem; color:#27232e; transform:rotate(0deg); }
.motion-studio-page .studio-submit:hover { background:#6251a0; }
.motion-studio-page .studio-submit:disabled { opacity:.65; }
:root[data-theme="light"] .motion-studio-page .studio-composer { background:rgba(255,255,255,.9); border-color:rgba(60,54,82,.16); }
:root[data-theme="light"] .motion-studio-page .studio-prompt-field textarea { color:#272334; }
:root[data-theme="light"] .motion-studio-page .studio-prompt-field textarea::placeholder { color:#888195; }
:root[data-theme="light"] .motion-studio-page .studio-visual-popover { background:rgba(248,247,252,.98); border-color:#dedbe8; }
@media(max-width:760px) {
  .motion-studio-page .content { padding-bottom:175px; }
  .motion-studio-page .studio-composer { left:50%; bottom:10px; width:calc(100vw - 18px); grid-template-columns:minmax(0,1fr) auto; padding:9px 10px; border-radius:18px; }
  .motion-studio-page .studio-composer-actions { gap:4px; }
  .motion-studio-page .studio-format-switch button { min-height:28px; padding:5px 8px; font-size:.6rem; }
  .motion-studio-page .studio-settings-toggle { min-height:28px; padding:5px 8px; font-size:.6rem; }
  .motion-studio-page .studio-prompt-field textarea { min-height:48px; max-height:72px; font-size:.8rem; }
  .motion-studio-page .studio-agent-pill { min-height:30px; padding:6px 11px; }
  .motion-studio-page .studio-form-grid-options { display:flex; }
  .motion-studio-page .studio-form-grid-options .studio-model-field { flex:1 1 100%; }
  .motion-studio-page .studio-form-grid-options .studio-model-field select { max-width:none; }
  .motion-studio-page .studio-form-grid-options select { min-height:31px; font-size:.61rem; }
  .motion-studio-page .studio-submit { width:38px; height:38px; }
  .motion-studio-page .studio-submit-row { flex-direction:row; }
  .motion-studio-page .studio-upload-trigger { flex-basis:34px; width:34px; height:34px; }
  .motion-studio-page .studio-model-chip { max-width:145px; padding:7px 9px; font-size:.6rem; }
  .motion-studio-page .studio-visual-popover { right:-1px; bottom:calc(100% + 8px); width:calc(100vw - 22px); max-height:62vh; }
  .motion-studio-page .studio-visual-popover .studio-form-grid-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .motion-studio-page .studio-visual-popover .studio-model-field { grid-column:1/-1; }
  .motion-studio-page .studio-visual-popover .studio-reference-control { grid-template-columns:auto minmax(0,1fr); }
  .motion-studio-page .studio-visual-popover .studio-reference-button { grid-column:2; justify-self:start; }
}

/* Final compact composer tuning */
.motion-studio-page .studio-visual-popover { width:min(540px,calc(100vw - 24px)); padding:14px; gap:13px; }
.motion-studio-page .studio-visual-popover .studio-form-grid-options { gap:10px; }
.motion-studio-page .studio-visual-popover .studio-media-controls { display:grid; gap:10px; }
.motion-studio-page .studio-visual-popover .studio-input-mode-label { color:#c7c2d0; font-size:.72rem; font-weight:800; }
.motion-studio-page .studio-visual-popover .studio-input-mode-switch { gap:10px; }
.motion-studio-page .studio-visual-popover .studio-reference-control { min-width:0; }
.motion-studio-page .studio-prompt-field textarea { border:0!important; box-shadow:none!important; background:transparent!important; }
.motion-studio-page .studio-submit { flex:0 0 38px!important; min-width:38px!important; width:38px!important; height:38px!important; min-height:38px!important; border-radius:50%!important; background:#3a3842!important; color:#f7f5fb!important; }
.motion-studio-page .studio-submit span { color:#f7f5fb; }
.studio-source-control { display:flex; align-items:center; gap:13px; min-width:0; padding:12px 14px; border:1px dashed rgba(159,146,255,.48); border-radius:13px; background:rgba(159,146,255,.07); }
.studio-source-control[hidden] { display:none; }
.studio-source-control .studio-reference-copy { flex:1; min-width:0; }
.studio-source-control .studio-reference-button { flex:0 0 auto; }

/* Compact glass composer: keep the controls readable without letting the editor dominate the canvas. */
.motion-studio-page .studio-composer { width:min(700px,calc(100vw - 340px)); max-height:calc(100vh - 105px); gap:7px 9px; padding:10px; border-radius:16px; background:rgba(18,16,31,.62); border-color:rgba(202,194,255,.2); box-shadow:0 16px 48px rgba(0,0,0,.44),inset 0 1px 0 rgba(255,255,255,.1); }
.motion-studio-page .studio-composer-head { padding-bottom:6px; }
.motion-studio-page .studio-composer-actions { gap:8px; }
.motion-studio-page .studio-format-switch { position:relative; z-index:3; gap:2px; padding:2px; border-radius:9px; }
.motion-studio-page .studio-format-switch button { position:relative; z-index:4; min-height:30px; padding:5px 8px; border-radius:7px; font-size:.62rem; cursor:pointer; }
.motion-studio-page .studio-prompt-field textarea { min-height:50px; max-height:92px; padding:5px 2px; font-size:.82rem; }
.motion-studio-page .studio-form-grid-options { gap:5px; }
.motion-studio-page .studio-form-grid-options select,.motion-studio-page .studio-form-grid-options input { min-height:33px; padding:6px 25px 6px 9px; font-size:.62rem; }
.motion-studio-page .studio-form-grid-options .studio-model-field select { min-width:155px; max-width:205px; }
.motion-studio-page .studio-reference-control { padding:6px 8px; gap:9px; }
.motion-studio-page .studio-input-mode-label { grid-column:1/-1; font-size:.59rem; }
.motion-studio-page .studio-input-mode-switch { grid-column:1/-1; padding:2px; gap:3px; border-radius:10px; }
.motion-studio-page .studio-input-mode { padding:6px 8px; gap:6px; }
.motion-studio-page .studio-input-mode>span:first-child { width:22px; height:22px; font-size:.75rem; }
.motion-studio-page .studio-input-mode strong { font-size:.61rem; }
.motion-studio-page .studio-input-mode small { font-size:.53rem; }
.motion-studio-page .studio-media-controls { grid-column:1/-1; }
.motion-studio-page .studio-reference-icon { width:24px; height:24px; font-size:.82rem; }
.motion-studio-page .studio-reference-copy strong { font-size:.64rem; }
.motion-studio-page .studio-reference-copy span { font-size:.58rem; }
.motion-studio-page .studio-reference-button { padding:5px 8px!important; font-size:.6rem!important; }
.motion-studio-page .studio-submit { min-width:125px; min-height:34px; padding:7px 11px; border-radius:10px; font-size:.7rem; }
@media(max-width:760px) { .motion-studio-page .studio-composer { width:calc(100vw - 20px); max-height:calc(100vh - 82px); padding:9px; } .motion-studio-page .studio-prompt-field textarea { min-height:54px; } .motion-studio-page .studio-format-switch { width:100%; overflow-x:auto; } .motion-studio-page .studio-format-switch button { flex:0 0 auto; } .motion-studio-page .studio-media-controls { grid-template-columns:1fr; } }

.contact-message-view { margin-bottom:18px; }
.contact-message-view .panel-head h3 { margin:6px 0 0; font-size:1.18rem; }
.contact-message-meta { display:grid; grid-template-columns:1.4fr 1fr .7fr; gap:16px; padding:15px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.contact-message-meta div { display:grid; gap:4px; min-width:0; }
.contact-message-meta span:first-child { color:var(--muted); font-size:.64rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.contact-message-meta strong,.contact-message-meta a { overflow:hidden; color:var(--ink); font-size:.8rem; text-overflow:ellipsis; white-space:nowrap; }
.contact-message-meta a { color:var(--violet); }
.contact-message-body { padding-top:18px; color:var(--ink); font-size:.9rem; line-height:1.75; white-space:normal; overflow-wrap:anywhere; }
.contact-message-preview { max-width:360px; overflow:hidden; white-space:normal!important; }
:root[data-theme="light"] .contact-message-meta strong,:root[data-theme="light"] .contact-message-body { color:#27243a; }
@media(max-width:700px) { .contact-message-meta { grid-template-columns:1fr; } .contact-message-view .panel-head { align-items:flex-start; flex-direction:column; } .contact-message-preview { max-width:220px; } }

/* Homepage media controls in the admin workspace. */
.admin-media-preview { margin:18px 0; overflow:hidden; border:1px solid rgba(139,124,255,.28); border-radius:12px; background:#080711; }
.admin-media-preview .panel-head { margin:0; padding:12px 14px; border-bottom:1px solid rgba(255,255,255,.1); }
.admin-media-preview .panel-head strong { font-size:.8rem; }
.admin-media-preview video { width:100%; display:block; aspect-ratio:16/9; object-fit:cover; background:#000; }
.admin-media-preview small { display:block; padding:10px 14px; font-size:.73rem; }
.model-upload-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:18px 0; }
.model-upload-card { min-width:0; overflow:hidden; padding:12px; border:1px solid rgba(255,255,255,.12); border-radius:12px; background:rgba(5,4,14,.44); }
.model-upload-card-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
.model-upload-card-head strong { color:var(--ink); font-size:.82rem; }
.model-upload-card img { width:100%; aspect-ratio:16/10; display:block; margin-bottom:12px; border-radius:8px; object-fit:cover; background:#070711; }
.model-upload-preview { overflow:hidden; margin-bottom:12px; border-radius:8px; background:#070711; }
.model-upload-preview img,.model-upload-preview video { width:100%; aspect-ratio:16/10; display:block; object-fit:cover; }
.model-meta-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:20px 0; }
.model-meta-card { padding:14px; border:1px solid rgba(255,255,255,.12); border-radius:12px; background:rgba(5,4,14,.35); }
.model-meta-card>strong { display:block; margin-bottom:12px; color:var(--ink); font-size:.78rem; }
:root[data-theme="light"] .model-meta-card { background:#faf9ff; border-color:var(--line); }
.model-upload-card .field { margin:0; }
.model-upload-card input[type=file] { padding:8px; font-size:.73rem; }
:root[data-theme="light"] .admin-media-preview { background:#f4f2ff; border-color:rgba(110,89,245,.26); }
:root[data-theme="light"] .admin-media-preview .panel-head { border-color:var(--line); }
:root[data-theme="light"] .model-upload-card { background:#faf9ff; border-color:var(--line); }
@media(max-width:860px) { .model-upload-grid,.model-meta-grid { grid-template-columns:1fr; } }

/* Keep media intrinsic dimensions from expanding the Admin Settings grid. */
.app-main,.content,.dashboard-grid,.dashboard-grid>.panel { min-width:0; }
.dashboard-grid>.panel { max-width:100%; overflow:hidden; }
.admin-media-preview { width:100%; max-width:100%; contain:inline-size; }
.admin-media-preview .panel-head { min-width:0; flex-wrap:wrap; }
.admin-media-preview video { width:100%; max-width:100%; height:auto; max-height:340px; aspect-ratio:16/9; object-fit:cover; }
.admin-media-preview+form,.admin-media-preview+form .field,.admin-media-preview+form input[type=file] { min-width:0; max-width:100%; }
@media(max-width:1050px) { .admin-media-preview video { max-height:420px; } }
.app-body { background:#070711; }
.content { background:radial-gradient(circle at 100% 0,rgba(139,124,255,.07),transparent 26%),#080812; }
.stat-card,.panel,.table-wrap,.plan-card,.ticket-card { background:linear-gradient(145deg,#171624,#100f1b); border-color:rgba(255,255,255,.12); }
.progress { background:#292441; }
.thumb,.message { background:#211d39; }
.message.mine { background:rgba(139,124,255,.15); }
.media-viewer,.code-box,.studio-result { background:#090812; }
.studio-card { background:linear-gradient(155deg,#1b1830,#0e0c1b); }
:root[data-theme="light"] .stat-card,:root[data-theme="light"] .panel,:root[data-theme="light"] .table-wrap,:root[data-theme="light"] .plan-card,:root[data-theme="light"] .ticket-card { background:#fff; border-color:var(--line); }
.creator-composer { background:linear-gradient(145deg,rgba(29,25,52,.98),rgba(13,11,27,.98)); }
.creator-prompt textarea { background:#121025; }
:root[data-theme="light"] { --ink:#171725; --muted:#626276; --soft:#f5f4fb; --line:#deddf0; --panel:#fff; --panel-2:#f8f7ff; --violet:#6e59f5; --violet-dark:#5543d8; --teal:#806fff; }
:root[data-theme="light"] .public-footer { background:#171525; }
:root[data-theme="light"] .public-simple { background:var(--soft); }
:root[data-theme="light"] .legal-contact { background:rgba(110,89,245,.07); }

/* Shared public/app surfaces use the same indigo-cyan system as the homepage. */
:root { --teal:#a79cff; --ink:#f7f4ff; --muted:#a29cb8; --soft:#07080f; --line:rgba(255,255,255,.13); --panel:#11121d; --violet:#8b7cff; --violet-dark:#6e5de7; }
:root[data-theme="light"] { --teal:#806fff; --ink:#171725; --muted:#626276; --soft:#f5f4fb; --line:#deddf0; --panel:#fff; --violet:#6e59f5; --violet-dark:#5543d8; }
.badge,.badge.green { color:#d8d2ff; background:rgba(139,124,255,.12); }
.status.completed,.status.processing,.status.queued,.status.submitting { color:#a79cff; }
.progress>i { background:linear-gradient(90deg,var(--violet),#b3a9ff); }
.announcement { color:#e6e1ff; background:linear-gradient(90deg,rgba(139,124,255,.13),rgba(94,231,255,.08)); border-color:rgba(139,124,255,.32); }
.announcement strong { color:#f1efff; }
.studio-card,.creator-composer { background:linear-gradient(145deg,#1d1934,#0f0d1e); }
.studio-card input,.studio-card select,.studio-card textarea,.creator-prompt textarea { background:#211d39; border-color:#403a60; }
.creator-shell { background:#090814; }
.creator-output { background:radial-gradient(circle at 50% 36%,rgba(139,124,255,.08),transparent 28%),#05040d; }

/* Keep long admin navigation usable while the account footer stays visible. */
.sidebar { overflow:hidden; }
.side-nav { flex:1 1 auto; min-height:0; overflow-y:auto; overflow-x:hidden; padding-right:4px; scrollbar-width:thin; scrollbar-color:rgba(139,124,255,.55) transparent; }
.side-nav::-webkit-scrollbar { width:6px; }
.side-nav::-webkit-scrollbar-track { background:transparent; }
.side-nav::-webkit-scrollbar-thumb { background:rgba(139,124,255,.55); border-radius:8px; }
.side-account { flex:0 0 auto; }
.admin-switch { white-space:nowrap; }
@media(max-width:760px) { .top-actions .admin-switch { display:inline-flex; padding:8px 10px; font-size:.72rem; } }

/* Add-on purchase surface: compact glass cards with an explicit 24-hour lifecycle. */
.addon-page { max-width:1120px; margin:0 auto; }
.addon-hero { display:flex; align-items:flex-end; justify-content:space-between; gap:22px; margin-bottom:24px; }
.addon-hero h2 { margin:7px 0 8px; font-size:clamp(1.9rem,4vw,3rem); letter-spacing:-.055em; color:#f7f4ff; }
.addon-hero p { max-width:650px; margin:0; color:#aaa4be; }
.addon-plan-status { display:grid; gap:8px; justify-items:end; text-align:right; }
.addon-plan-status small { color:#928ba8; font-size:.72rem; }
.addon-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.addon-card { position:relative; overflow:hidden; padding:22px; border:1px solid rgba(178,165,255,.23); border-radius:18px; background:linear-gradient(145deg,rgba(34,28,62,.88),rgba(13,12,27,.92)); box-shadow:0 18px 50px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.07); }
.addon-card:before { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(120deg,rgba(139,124,255,.10),transparent 45%); }
.addon-card>* { position:relative; }
.addon-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; }
.addon-kicker { display:block; margin-bottom:6px; color:#9f94dc; font-size:.63rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.addon-card h3 { margin:0; color:#f4f0ff; font-size:1.14rem; letter-spacing:-.025em; }
.addon-rate { display:flex; align-items:baseline; gap:4px; color:#fff; font-size:1.06rem; font-weight:800; letter-spacing:-.025em; line-height:1.1; white-space:nowrap; }
.addon-rate small { color:#c2bdd2; font-size:.64rem; font-weight:650; letter-spacing:0; }
.addon-description { min-height:42px; margin:15px 0 22px; color:#a7a1b8; font-size:.8rem; line-height:1.55; }
.addon-form { display:grid; gap:10px; }
.addon-slider-row { display:flex; align-items:end; justify-content:space-between; gap:14px; }
.addon-slider-row>div { display:flex; align-items:baseline; gap:7px; flex-wrap:wrap; }
.addon-slider-row label { width:100%; color:#aaa3bd; font-size:.68rem; font-weight:750; }
.addon-slider-row output { color:#fff; font-size:1.5rem; font-weight:850; letter-spacing:-.04em; }
.addon-unit-label,.addon-range-note { color:#918aa5; font-size:.68rem; }
.addon-range-note { padding:5px 8px; border:1px solid rgba(255,255,255,.1); border-radius:999px; }
.addon-slider { width:100%; height:6px; margin:4px 0 0; appearance:none; border-radius:8px; outline:none; background:linear-gradient(90deg,#8b7cff 0%,#8b7cff 0%,rgba(255,255,255,.12) 0%,rgba(255,255,255,.12) 100%); cursor:pointer; }
.addon-slider::-webkit-slider-thumb { width:21px; height:21px; appearance:none; border:3px solid #fff; border-radius:50%; background:#8b7cff; box-shadow:0 3px 12px rgba(139,124,255,.5); }
.addon-slider::-moz-range-thumb { width:15px; height:15px; border:3px solid #fff; border-radius:50%; background:#8b7cff; box-shadow:0 3px 12px rgba(139,124,255,.5); }
.addon-range-labels { display:flex; justify-content:space-between; color:#77718c; font-size:.64rem; }
.addon-total { display:flex; align-items:center; justify-content:space-between; margin-top:6px; padding-top:14px; border-top:1px solid rgba(255,255,255,.1); color:#9b95ad; font-size:.74rem; }
.addon-total strong { color:#fff; font-size:1.05rem; font-weight:800; letter-spacing:-.015em; }
.addon-starting-copy { margin:0; color:#8d86a1; font-size:.67rem; }
.addon-submit { width:100%; margin-top:5px; justify-content:space-between; background:linear-gradient(100deg,#8b7cff,#6f5be4)!important; border-color:transparent!important; }
.addon-submit span { font-size:1rem; }
.addon-gate { display:flex; align-items:center; gap:20px; padding:26px; border:1px solid rgba(241,185,77,.32); border-radius:18px; background:linear-gradient(120deg,rgba(75,52,16,.44),rgba(25,19,34,.85)); box-shadow:0 18px 50px rgba(0,0,0,.2); }
.addon-gate-icon { display:grid; flex:0 0 auto; place-items:center; width:52px; height:52px; border:1px solid rgba(241,185,77,.4); border-radius:15px; color:#f3c96e; background:rgba(241,185,77,.1); font-size:1.65rem; }
.addon-gate h3 { margin:6px 0; color:#fff5dc; font-size:1.25rem; }
.addon-gate p { max-width:650px; margin:0 0 16px; color:#c5b99f; font-size:.82rem; }
.addon-history { margin-top:25px; overflow:hidden; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:rgba(16,15,29,.72); box-shadow:0 14px 40px rgba(0,0,0,.15); }
.addon-section-head { display:flex; align-items:end; justify-content:space-between; gap:15px; padding:20px 22px 4px; }
.addon-section-head h3 { margin:6px 0 4px; color:#f3efff; font-size:1rem; }
.addon-history .table-wrap { border:0; border-radius:0; box-shadow:none; background:transparent; }
.addon-history .table-wrap th,.addon-history .table-wrap td { padding:13px 22px; }
@media(max-width:760px) { .addon-hero,.addon-section-head { display:block; } .addon-plan-status { justify-items:start; margin-top:16px; text-align:left; } .addon-grid { grid-template-columns:1fr; } .addon-gate { align-items:flex-start; padding:20px; } .addon-section-head .muted { display:block; margin-top:6px; font-size:.72rem; } .addon-history .table-wrap { overflow-x:auto; } }
:root[data-theme="light"] .addon-hero h2 { color:#171725; }
:root[data-theme="light"] .addon-hero p,.addon-plan-status small { color:#77728a; }
:root[data-theme="light"] .addon-card { border-color:#ddd6ff; background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(246,243,255,.96)); box-shadow:0 16px 42px rgba(66,54,129,.09),inset 0 1px 0 rgba(255,255,255,.8); }
:root[data-theme="light"] .addon-card h3,:root[data-theme="light"] .addon-card .addon-rate,:root[data-theme="light"] .addon-card .addon-total strong { color:#25213b; }
:root[data-theme="light"] .addon-card .addon-rate small { color:#77728a; }
:root[data-theme="light"] .addon-description,.addon-unit-label,.addon-range-note,.addon-total,.addon-starting-copy { color:#77728a; }
:root[data-theme="light"] .addon-range-note { border-color:#dfdced; }
:root[data-theme="light"] .addon-slider { background:linear-gradient(90deg,#6e59f5 0%,#6e59f5 0%,#e2dff0 0%,#e2dff0 100%); }
:root[data-theme="light"] .addon-history { border-color:#deddf0; background:rgba(255,255,255,.82); }
:root[data-theme="light"] .addon-section-head h3 { color:#25213b; }

/* Payment gateways are independent choices, not grouped checkout buttons. */
.checkout-page { width:min(1100px,100%); }
.checkout-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:22px; margin-bottom:20px; }
.checkout-heading h2 { margin:7px 0 5px; color:#f7f5ff; font-size:2rem; letter-spacing:0; }
.checkout-heading p { margin:0; color:#9e99ad; }
.checkout-order { display:grid; grid-template-columns:1.35fr .8fr .9fr auto; align-items:center; gap:20px; margin-bottom:30px; padding:16px 18px; border:1px solid rgba(255,255,255,.12); border-radius:8px; background:rgba(18,18,29,.72); backdrop-filter:blur(18px); }
.checkout-order>div { display:grid; gap:4px; min-width:0; }
.checkout-order>div span { color:#858092; font-size:.64rem; font-weight:750; text-transform:uppercase; }
.checkout-order>div strong { overflow:hidden; color:#f3f1f8; font-size:.86rem; text-overflow:ellipsis; white-space:nowrap; }
.checkout-order-status { padding:7px 9px; border:1px solid rgba(250,194,75,.25); border-radius:999px; color:#f0c86e; background:rgba(250,194,75,.09); font-size:.62rem; font-weight:800; text-transform:uppercase; white-space:nowrap; }
.checkout-method-title { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:13px; }
.checkout-method-title h3 { margin:5px 0 0; color:#f4f1fa; font-size:1rem; letter-spacing:0; }
.checkout-method-title small { color:#807b8d; font-size:.69rem; }
.payment-gateway-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.payment-gateway { position:relative; display:flex; flex-direction:column; min-width:0; min-height:320px; aspect-ratio:1/1; overflow:hidden; padding:20px; border:1px solid rgba(255,255,255,.13); border-radius:8px; color:#f8f7fb; background:rgba(17,18,27,.82); box-shadow:0 14px 38px rgba(0,0,0,.22); backdrop-filter:blur(18px); transition:border-color .18s ease,transform .18s ease,background .18s ease; }
.payment-gateway:before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:var(--gateway-accent); }
.payment-gateway:hover { transform:translateY(-3px); border-color:color-mix(in srgb,var(--gateway-accent) 55%,transparent); background:rgba(23,24,35,.94); }
.payment-gateway-payfast { --gateway-accent:#39d49a; }
.payment-gateway-binance { --gateway-accent:#f3ba2f; }
.payment-gateway-manual { --gateway-accent:#79a9ff; }
.gateway-top { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.gateway-provider { display:flex; align-items:center; gap:11px; min-width:0; }
.gateway-provider-image { display:block; width:52px; height:52px; flex:0 0 auto; border-radius:50%; object-fit:cover; }
.gateway-provider>div { min-width:0; }
.gateway-eyebrow { display:block; margin-bottom:5px; color:var(--gateway-accent); font-size:.58rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.gateway-provider h3 { margin:0; color:#f7f5fb; font-size:1.12rem; letter-spacing:0; }
.gateway-mark { display:grid; place-items:center; width:50px; height:50px; flex:0 0 auto; border:1px solid color-mix(in srgb,var(--gateway-accent) 42%,transparent); border-radius:50%; color:var(--gateway-accent); background:color-mix(in srgb,var(--gateway-accent) 10%,transparent); font-size:.9rem; font-weight:850; }
.gateway-mark-binance { font-size:1.2rem; }
.gateway-mark-manual { font-size:1.15rem; }
.gateway-badge { padding:6px 8px; border:1px solid rgba(255,255,255,.11); border-radius:999px; color:#a8a3b2; background:rgba(255,255,255,.045); font-size:.58rem; font-weight:800; text-transform:uppercase; white-space:nowrap; }
.gateway-badge.recommended { color:#78e4b9; border-color:rgba(57,212,154,.2); background:rgba(57,212,154,.08); }
.gateway-badge.review { color:#9fc0ff; border-color:rgba(121,169,255,.2); background:rgba(121,169,255,.08); }
.gateway-copy { margin-top:30px; }
.gateway-copy h3 { margin:0 0 9px; color:#f7f5fb; font-size:1.18rem; letter-spacing:0; }
.gateway-copy p { margin:0; color:#9b96a6; font-size:.78rem; line-height:1.55; }
.gateway-meta { display:grid; grid-template-columns:1fr auto; align-items:end; gap:12px; margin-top:auto; padding:20px 0 15px; }
.gateway-meta span { color:#777281; font-size:.64rem; }
.gateway-meta strong { color:#e9e6ef; font-size:.78rem; white-space:nowrap; }
.gateway-action { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; padding-top:14px; border-top:1px solid rgba(255,255,255,.1); color:var(--gateway-accent); font-size:.73rem; font-weight:800; }
.gateway-action span:last-child { font-size:1rem; transition:transform .18s ease; }
.payment-gateway:hover .gateway-action span:last-child { transform:translateX(3px); }
:root[data-theme="light"] .checkout-heading h2,:root[data-theme="light"] .checkout-method-title h3 { color:#171725; }
:root[data-theme="light"] .checkout-heading p,:root[data-theme="light"] .checkout-method-title small { color:#747184; }
:root[data-theme="light"] .checkout-order { border-color:#dedce8; background:rgba(255,255,255,.82); box-shadow:0 8px 25px rgba(31,28,61,.05); }
:root[data-theme="light"] .checkout-order>div span { color:#878394; }
:root[data-theme="light"] .checkout-order>div strong { color:#252333; }
:root[data-theme="light"] .payment-gateway { border-color:#dfdde8; color:#252333; background:rgba(255,255,255,.88); box-shadow:0 12px 35px rgba(31,28,61,.07); }
:root[data-theme="light"] .payment-gateway:hover { background:#fff; }
:root[data-theme="light"] .gateway-copy h3 { color:#242231; }
:root[data-theme="light"] .gateway-provider h3 { color:#242231; }
:root[data-theme="light"] .gateway-copy p { color:#716d7d; }
:root[data-theme="light"] .gateway-meta span { color:#888493; }
:root[data-theme="light"] .gateway-meta strong { color:#353241; }
:root[data-theme="light"] .gateway-action { border-color:#e8e6ed; }
@media(max-width:900px) { .payment-gateway-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .payment-gateway { aspect-ratio:auto; min-height:300px; } }
@media(max-width:620px) { .checkout-heading,.checkout-method-title { display:block; } .checkout-heading .button { margin-top:14px; } .checkout-method-title small { display:block; margin-top:6px; } .checkout-order { grid-template-columns:1fr 1fr; gap:15px; } .checkout-order-status { justify-self:start; } .payment-gateway-grid { grid-template-columns:1fr; } .payment-gateway { min-height:285px; } }

/* Checkout layout guardrails. Keep the three gateway cards inside the usable
   content width and let their copy wrap instead of pushing the page sideways. */
.addon-checkout-page { width:min(1280px,100%); max-width:100%; min-width:0; }
.addon-checkout-page .checkout-heading > div { min-width:0; }
.addon-checkout-page .checkout-heading h2 { overflow-wrap:anywhere; }
.addon-checkout-page .checkout-heading p { max-width:720px; }
.addon-checkout-page .checkout-order { grid-template-columns:minmax(0,1.25fr) minmax(150px,.9fr) minmax(130px,.75fr) auto; min-width:0; }
.addon-checkout-page .checkout-order > div,
.addon-checkout-page .checkout-order-status { min-width:0; }
.addon-checkout-page .checkout-order > div strong { overflow-wrap:anywhere; white-space:normal; }
.addon-checkout-page .payment-gateway-grid { grid-template-columns:repeat(3,minmax(0,1fr)); min-width:0; align-items:stretch; }
.addon-checkout-page .payment-gateway { width:100%; min-width:0; min-height:340px; aspect-ratio:auto; }
.addon-checkout-page .gateway-top,
.addon-checkout-page .gateway-provider,
.addon-checkout-page .gateway-copy,
.addon-checkout-page .gateway-meta,
.addon-checkout-page .gateway-action { min-width:0; }
.addon-checkout-page .gateway-provider h3,
.addon-checkout-page .gateway-copy h3,
.addon-checkout-page .gateway-copy p,
.addon-checkout-page .gateway-meta strong,
.addon-checkout-page .gateway-action span { overflow-wrap:anywhere; }
.addon-checkout-page .gateway-copy { margin-top:24px; }
@media(max-width:1180px) and (min-width:761px) {
  .addon-checkout-page .payment-gateway-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .addon-checkout-page .checkout-order { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .addon-checkout-page .checkout-order-status { justify-self:start; }
}
@media(max-width:760px) {
  .addon-checkout-page .checkout-heading { align-items:stretch; }
  .addon-checkout-page .checkout-heading .button { width:100%; }
  .addon-checkout-page .checkout-order { grid-template-columns:1fr; gap:12px; padding:14px; }
  .addon-checkout-page .checkout-order-status { justify-self:start; }
  .addon-checkout-page .payment-gateway-grid { grid-template-columns:1fr; gap:12px; }
  .addon-checkout-page .payment-gateway { min-height:0; aspect-ratio:auto; padding:17px; }
  .addon-checkout-page .gateway-copy { margin-top:20px; }
}


/* Admin dashboard additions. */
.admin-expiry-dashboard { margin-top:18px; padding:22px; border:1px solid var(--line); border-radius:18px; background:var(--panel); box-shadow:var(--shadow); }
.admin-expiry-head { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:18px; }
.admin-expiry-head h3 { margin:6px 0 5px; font-size:1.08rem; }
.admin-expiry-head p { margin:0; color:var(--muted); font-size:.78rem; }
.admin-expiry-summary { padding:8px 11px; border:1px solid rgba(139,124,255,.25); border-radius:999px; color:#c5bcff; background:rgba(139,124,255,.1); font-size:.68rem; font-weight:750; white-space:nowrap; }
.admin-expiry-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:8px; }
.admin-expiry-day { min-height:104px; padding:12px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.025); }
.admin-expiry-day.has-expiry { border-color:rgba(255,125,155,.38); background:rgba(255,125,155,.07); }
.admin-expiry-day.is-today { border-color:rgba(139,124,255,.62); box-shadow:inset 0 0 0 1px rgba(139,124,255,.18); }
.admin-expiry-weekday,.admin-expiry-date,.admin-expiry-copy { display:block; }
.admin-expiry-weekday { color:var(--muted); font-size:.62rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.admin-expiry-date { margin-top:5px; color:var(--ink); font-size:.72rem; }
.admin-expiry-day strong { display:block; margin-top:13px; color:var(--ink); font-size:1.45rem; line-height:1; }
.admin-expiry-copy { margin-top:4px; color:var(--muted); font-size:.61rem; line-height:1.25; }
.admin-expiry-day.has-expiry strong { color:#ff9bb1; }
.plan-card,.subscription-plan,.studio-upgrade-surface,.studio-plan-choice { overflow:visible; }
.plan-help { appearance:none; position:relative; z-index:6; display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; margin:0 0 0 5px; padding:0; border:2px solid #8f8b99; border-radius:50%; color:#aaa6b4; background:transparent; font:800 .7rem/1 Inter,ui-sans-serif,system-ui,sans-serif; cursor:help; vertical-align:-2px; outline:none; }
.plan-help:hover,.plan-help:focus-visible,.plan-help:focus { color:#fff; border-color:#b5aaff; background:rgba(139,124,255,.16); box-shadow:0 0 0 4px rgba(139,124,255,.1); }
.plan-help::after { content:attr(data-tooltip); position:absolute; z-index:999; left:50%; bottom:calc(100% + 14px); width:min(360px,calc(100vw - 42px)); padding:15px 17px; border:1px solid #dedbe5; border-radius:12px; color:#272531; background:#fff; box-shadow:0 20px 55px rgba(0,0,0,.38); font-size:.88rem; font-weight:500; line-height:1.5; letter-spacing:0; text-align:left; text-transform:none; white-space:normal; opacity:0; visibility:hidden; pointer-events:none; transform:translate(-50%,7px); transition:opacity .16s ease,transform .16s ease,visibility .16s ease; }
.plan-help::before { content:""; position:absolute; z-index:1000; left:50%; bottom:calc(100% + 5px); border:6px solid transparent; border-top-color:#fff; opacity:0; visibility:hidden; pointer-events:none; transform:translateX(-50%); transition:opacity .16s ease,visibility .16s ease; }
.plan-help:hover::after,.plan-help:focus-visible::after,.plan-help:focus::after,.plan-help:hover::before,.plan-help:focus-visible::before,.plan-help:focus::before { opacity:1; visibility:visible; }
.plan-help:hover::after,.plan-help:focus-visible::after,.plan-help:focus::after { transform:translate(-50%,0); }
@media(max-width:620px) { .plan-help::after { left:auto; right:-18px; transform:translate(0,7px); } .plan-help:hover::after,.plan-help:focus-visible::after,.plan-help:focus::after { transform:translate(0,0); } .plan-help::before { left:auto; right:3px; transform:none; } }
.plan-help::before,.plan-help::after { content:none!important; }
.plan-help-popover { position:fixed; z-index:99999; width:min(380px,calc(100vw - 32px)); padding:16px 18px; border:1px solid #d9d6df; border-radius:12px; color:#24222c; background:#fff; box-shadow:0 22px 60px rgba(0,0,0,.42); font-size:.94rem; font-weight:500; line-height:1.5; letter-spacing:0; text-align:left; opacity:0; pointer-events:none; transform:translateY(7px); transition:opacity .16s ease,transform .16s ease; }
.plan-help-popover.is-visible { opacity:1; transform:translateY(0); }
.plan-help-popover[hidden] { display:none!important; }
.impersonation-banner { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:18px; }
.impersonation-banner a { color:inherit; font-weight:800; text-decoration:underline; }
.settings-payment-panel { overflow:hidden; }
.settings-payment-form { display:grid; grid-template-columns:minmax(220px,360px) auto; align-items:end; gap:14px; }
.settings-payment-form .field { margin:0; }
.settings-payment-form .button { margin-bottom:15px; }
:root[data-theme="light"] .admin-expiry-dashboard { background:#fff; border-color:#dedce8; box-shadow:0 8px 25px rgba(27,30,51,.035); }
:root[data-theme="light"] .admin-expiry-day { background:#fafaff; border-color:#e3e1eb; }
:root[data-theme="light"] .admin-expiry-day.is-today { border-color:#8b7cff; }
:root[data-theme="light"] .admin-expiry-date,:root[data-theme="light"] .admin-expiry-day strong { color:#27243a; }
:root[data-theme="light"] .admin-expiry-summary { color:#5c4ed0; background:#f0efff; border-color:#d9d4ff; }
@media(max-width:900px) { .admin-expiry-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:620px) { .admin-expiry-dashboard { padding:17px; } .admin-expiry-head { display:block; } .admin-expiry-summary { display:inline-flex; margin-top:13px; } .admin-expiry-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .admin-expiry-day { min-height:96px; } .settings-payment-form { grid-template-columns:1fr; } .settings-payment-form .button { margin-bottom:0; } .impersonation-banner { display:block; } }

/* Day-by-day financing trend. */
.financing-chart-panel { margin-top:18px; overflow:hidden; }
.financing-chart-head { align-items:flex-end; margin-bottom:8px; }
.financing-chart-head h3 { margin:6px 0 4px; }
.financing-chart-head p { margin:0; font-size:.76rem; }
.financing-chart-summary { display:grid; justify-items:end; gap:4px; text-align:right; }
.financing-chart-summary strong { color:var(--ink); font-size:1.3rem; letter-spacing:-.035em; }
.financing-chart-summary span { color:var(--muted); font-size:.68rem; }
.financing-chart-wrap { width:100%; overflow-x:auto; padding-top:7px; }
.financing-chart { display:block; width:100%; min-width:680px; height:auto; overflow:visible; }
.financing-chart-gridline { stroke:var(--line); stroke-width:1; stroke-dasharray:3 5; }
.financing-chart-y-label,.financing-chart-axis-label { fill:var(--muted); font-size:12px; }
.financing-chart-area { fill:url(#financingChartFill); }
.financing-chart-line { fill:none; stroke:var(--violet); stroke-width:4; stroke-linecap:round; stroke-linejoin:round; }
.financing-chart-point { fill:var(--violet); stroke:var(--panel); stroke-width:3; outline:none; transition:r .15s ease,fill .15s ease; }
.financing-chart-point:hover,.financing-chart-point:focus { fill:#b7afff; }
.financing-chart-footer { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-top:4px; padding-top:14px; border-top:1px solid var(--line); color:var(--muted); font-size:.7rem; }
.financing-chart-footer strong { color:var(--ink); font-size:.72rem; }
:root[data-theme="light"] .financing-chart-summary strong,:root[data-theme="light"] .financing-chart-footer strong { color:#27243a; }
:root[data-theme="light"] .financing-chart-point { stroke:#fff; }
@media(max-width:620px) { .financing-chart-head { display:block; } .financing-chart-summary { justify-items:start; margin-top:13px; text-align:left; } .financing-chart-footer { display:block; } .financing-chart-footer strong { display:block; margin-top:7px; } }

/* Current interaction pass: mobile navigation, compact billing, and clearer purchase controls. */
.sidebar-backdrop { display:none; }
.sidebar-toggle { color:#fff; }
.subscription-page { max-width:1280px; margin:0 auto; }
.subscription-catalog { margin:0 0 26px; }
.subscription-catalog .section-heading { margin:0 0 20px; }
.subscription-catalog .section-heading h2 { margin:7px 0; font-size:1.7rem; letter-spacing:-.045em; }
.subscription-catalog .section-heading p { margin:0; }
.subscription-intro { margin-bottom:20px; }
.subscription-plans { gap:14px; }
.subscription-plan { display:flex; flex-direction:column; min-height:0; padding:20px; }
.subscription-plan-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.subscription-plan-mark { color:var(--violet); font-size:1.15rem; }
.subscription-plan.featured .subscription-plan-mark { visibility:hidden; }
.subscription-plan h3 { margin:8px 0 6px; font-size:1.18rem; }
.subscription-plan p { min-height:42px; margin:0 0 8px; font-size:.78rem; }
.subscription-plan .plan-price { margin:8px 0 14px; font-size:1.95rem; }
.subscription-quota-grid,.subscription-feature-list { display:grid; gap:9px; padding:0; list-style:none; }
.subscription-quota-grid { margin:0 0 14px; }
.subscription-quota-grid li,.subscription-feature-list li { display:flex; align-items:flex-start; gap:9px; color:#aaa4b8; font-size:.76rem; line-height:1.35; }
.subscription-quota-grid li::before,.subscription-feature-list li::before { content:'✓'; flex:0 0 auto; color:#0e1320; display:grid; place-items:center; width:17px; height:17px; margin-top:1px; border-radius:50%; background:#8b7cff; font-size:.62rem; font-weight:800; }
.subscription-feature-list { margin:0 0 14px; }
.subscription-feature-list li::before { color:#fff; background:var(--violet); }
.subscription-plan form { margin-top:auto; }
.subscription-plan .button { width:100%; }
.subscription-note { margin:0 0 12px; padding:9px 11px; font-size:.72rem; }
.subscription-sections { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:16px!important; padding:16px 20px; }
.subscription-sections h3 { margin:4px 0; }
.subscription-sections p { margin:0; font-size:.76rem; }
.admin-addon-settings { margin-bottom:18px; }
.admin-addon-settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.admin-addon-rate-card { padding:16px; border:1px solid var(--line); border-radius:14px; background:rgba(139,124,255,.06); }
.admin-addon-rate-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.admin-addon-rate-head strong { color:var(--ink); font-size:.9rem; }
.admin-addon-rate-card .form-grid { gap:10px; }
.admin-addon-rate-card .field { margin-bottom:6px; }
.admin-addon-requests { overflow:hidden; }
.addon-custom-quantity { display:grid; gap:5px; min-width:120px; }
.addon-custom-quantity label { color:#aaa3bd; font-size:.65rem; font-weight:750; }
.addon-custom-input { width:120px; padding:7px 9px; border:1px solid rgba(255,255,255,.16); border-radius:9px; color:#f4efff; background:rgba(255,255,255,.06); }
.addon-custom-input:focus { outline:none; border-color:var(--violet); box-shadow:0 0 0 3px rgba(139,124,255,.14); }
.addon-card-teal { border-color:rgba(105,231,206,.26); }
.addon-card-teal .addon-kicker { color:#79e6d0; }
.addon-card-teal .addon-slider::-webkit-slider-thumb,.addon-card-teal .addon-slider::-moz-range-thumb { background:#69e7ce; }
.ticket-attachment-link { display:inline-block; margin-top:6px; color:var(--violet); font-size:.72rem; font-weight:750; }
.ticket-image-preview { width:min(100%,360px); max-height:260px; margin:10px 0 2px; border:1px solid var(--line); border-radius:12px; object-fit:contain; background:#090912; }
.manual-qr-card { display:grid; justify-items:center; gap:10px; margin:16px 0; padding:20px; border:1px solid rgba(139,124,255,.24); border-radius:16px; background:rgba(139,124,255,.07); text-align:center; }
.job-detail .manual-qr-card { min-width:0; min-height:0; overflow:hidden; }
.job-detail .manual-qr-card img { display:block; width:260px !important; max-width:100% !important; height:260px !important; max-height:260px !important; object-fit:contain; border-radius:12px; background:#fff; }
.manual-qr-card p { margin:0; font-size:.75rem; }
.manual-method-display { display:grid; gap:4px; margin:0 0 17px; padding:13px 15px; border:1px solid rgba(139,124,255,.3); border-radius:12px; background:rgba(139,124,255,.08); }
.manual-method-display strong { color:var(--ink); font-size:.92rem; }
.manual-method-display small { color:var(--muted); font-size:.7rem; }
.financing-stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
.financing-binance-card { border-color:rgba(245,190,45,.45); box-shadow:0 14px 40px rgba(245,190,45,.08); }
.financing-binance-card small b { float:right; padding:4px 7px; border-radius:7px; color:#f8c62e; background:rgba(245,190,45,.13); font-size:.62rem; }
.financing-binance-card strong { color:#f5c324; }
.financing-chart-controls { display:flex; align-items:flex-end; gap:18px; }
.financing-range-toggle { display:flex; gap:7px; padding:4px; border:1px solid rgba(255,255,255,.1); border-radius:12px; background:rgba(255,255,255,.035); }
.financing-range-toggle a { padding:8px 13px; border-radius:8px; color:#aaa4b6; font-size:.72rem; font-weight:800; }
.financing-range-toggle a.active { color:#0b160f; background:#4ade80; }
.financing-chart-line { stroke:#4ade80; }
.financing-chart-point { fill:#4ade80; }
.financing-chart-point:hover,.financing-chart-point:focus { fill:#b4f7c7; }
.motion-studio-page .studio-prompt-field textarea { min-height:66px; color:#211a3c; background:rgba(250,249,255,.96); border:1px solid rgba(139,124,255,.35); border-radius:13px; box-shadow:0 8px 22px rgba(0,0,0,.12); }
.motion-studio-page .studio-prompt-field textarea::placeholder { color:#756b91; opacity:1; }
.motion-studio-page .studio-prompt-field textarea:focus { background:#fff; border-color:#8b7cff; box-shadow:0 0 0 3px rgba(139,124,255,.2); }
.motion-studio-page .studio-composer { gap:6px 9px; padding:10px; }
.motion-studio-page .studio-composer-head { padding-bottom:6px; }
.motion-studio-page .studio-prompt-field { margin:0; }
.motion-studio-page .studio-prompt-field textarea { min-height:58px; max-height:105px; padding:11px 13px; border:1px solid rgba(139,124,255,.34); border-radius:13px; color:#26213d; background:rgba(250,249,255,.97); font-size:.86rem; line-height:1.4; box-shadow:inset 0 1px 0 rgba(255,255,255,.8); }
.motion-studio-page .studio-prompt-field textarea::placeholder { color:#746b91; }
.motion-studio-page .studio-prompt-field textarea:focus { border-color:#8b7cff; box-shadow:0 0 0 3px rgba(139,124,255,.16); }
.motion-studio-page .studio-form-grid-options { gap:6px; }
.motion-studio-page .studio-media-controls { gap:7px; }
.motion-studio-page .studio-reference-control { position:relative; flex-wrap:wrap; opacity:1; }
.motion-studio-page .studio-reference-control.is-disabled { opacity:1; }
.motion-studio-page .studio-reference-button { display:inline-flex!important; align-items:center; justify-content:center; min-height:32px; color:#f8f5ff!important; background:#33295c!important; border:1px solid rgba(159,146,255,.62)!important; opacity:1!important; pointer-events:auto!important; z-index:2; }
.motion-studio-page .studio-reference-button:hover { color:#151021!important; background:#b4aaff!important; border-color:#b4aaff!important; }
.motion-studio-page .studio-reference-button,.motion-studio-page .studio-reference-control.is-disabled .studio-reference-button { cursor:pointer!important; }
.studio-reference-file-input { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; opacity:0; pointer-events:none; }
.studio-attachment-preview { display:flex; flex-basis:100%; flex-wrap:wrap; gap:7px; min-width:0; padding-top:3px; }
.studio-attachment-item { position:relative; display:grid; place-items:center; gap:3px; width:58px; color:#d8d2f2; font-size:.58rem; font-weight:800; }
.studio-attachment-item img { display:block; width:52px; height:40px; border:1px solid rgba(159,146,255,.45); border-radius:7px; object-fit:cover; background:#141125; }
.studio-attachment-tokens { display:flex; flex-wrap:wrap; gap:6px; align-items:center; padding-top:1px; }
.studio-attachment-token { padding:5px 9px; border:1px solid rgba(159,146,255,.4); border-radius:999px; color:#d9d2ff; background:rgba(139,124,255,.12); font-size:.63rem; font-weight:800; cursor:pointer; }
.studio-attachment-token:hover { color:#171025; background:#b4aaff; border-color:#b4aaff; }
@media(max-width:760px) {
  .motion-studio-page .content { padding-bottom:300px; }
  .motion-studio-page .studio-composer { max-height:calc(100vh - 70px); overflow:visible; }
  .motion-studio-page .studio-composer-head { display:flex; align-items:center; }
  .motion-studio-page .studio-composer-head h3 { font-size:.9rem; }
  .motion-studio-page .studio-composer-actions { margin-top:0; }
  .motion-studio-page .studio-format-switch { width:auto; overflow:visible; }
  .motion-studio-page .studio-format-switch button { min-height:28px; padding:4px 7px; font-size:.58rem; }
  .motion-studio-page .studio-prompt-field textarea { min-height:54px; max-height:76px; padding:9px 11px; font-size:.8rem; }
  .motion-studio-page .studio-form-grid-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:visible; }
  .motion-studio-page .studio-form-grid-options .studio-model-field { grid-column:span 3; }
  .motion-studio-page .studio-form-grid-options select { width:100%; min-width:0; max-width:none!important; }
  .motion-studio-page .studio-media-controls { gap:6px; }
  .motion-studio-page .studio-input-mode-switch { padding:3px; }
  .motion-studio-page .studio-input-mode { padding:6px 8px; }
  .motion-studio-page .studio-reference-control { padding:6px 8px; }
  .motion-studio-page .studio-reference-button { min-height:30px; padding:5px 9px!important; font-size:.62rem!important; }
  .studio-attachment-item { width:50px; }
  .studio-attachment-item img { width:46px; height:34px; }
}
@media(max-width:900px) { .admin-addon-settings-grid,.financing-stats { grid-template-columns:1fr; } .financing-chart-controls { align-items:flex-start; flex-direction:column; gap:12px; } }
@media(max-width:760px) {
  .sidebar-backdrop { position:fixed; inset:0; z-index:19; display:block; border:0; background:rgba(3,3,8,.58); opacity:0; pointer-events:none; transition:opacity .2s ease; }
  .app-shell.sidebar-open .sidebar-backdrop { opacity:1; pointer-events:auto; }
  .sidebar { width:min(300px,86vw); padding:20px 12px 14px; box-shadow:20px 0 50px rgba(0,0,0,.35); }
  .sidebar .wordmark { padding-bottom:28px; }
  .side-nav a { min-height:46px; padding:12px 14px; font-size:.9rem; }
  .subscription-sections { display:block; }
  .subscription-sections .button { margin-top:12px; }
  .addon-slider-row { align-items:start; flex-wrap:wrap; }
  .addon-custom-quantity { min-width:100px; }
  .addon-custom-input { width:100px; }
  .financing-range-toggle { width:100%; }
  .financing-range-toggle a { flex:1; text-align:center; }
  .subscription-expiry-banner { display:block; }
  .subscription-expiry-actions { justify-content:space-between; margin-top:13px; }
}
@media(max-width:700px) {
  .job-detail .manual-qr-card { padding:14px; }
  .job-detail .manual-qr-card img { width:220px !important; max-width:100% !important; height:220px !important; max-height:220px !important; }
}

.studio-input-mode:disabled { opacity:.42; cursor:not-allowed; }
.studio-visual-input-note { color:#9f98b5; font-size:.69rem; line-height:1.45; }
.studio-reference-control.is-disabled .studio-reference-button { pointer-events:none; opacity:.55; cursor:not-allowed!important; }

/* One authoritative Studio composer treatment. */
body.motion-studio-page .studio-composer { left:50% !important; transform:translateX(-50%) !important; width:min(1200px,calc(100vw - 36px)) !important; max-height:calc(100vh - 80px) !important; grid-template-columns:1fr !important; padding:30px 22px 16px !important; gap:8px !important; border:1px solid #292929 !important; border-radius:42px !important; background:#151515 !important; box-shadow:0 18px 45px rgba(0,0,0,.5) !important; overflow:visible !important; }
body.motion-studio-page .studio-composer-head { display:none !important; }
body.motion-studio-page .studio-prompt-field { margin:0 !important; }
body.motion-studio-page .studio-prompt-field label { color:transparent !important; font-size:0 !important; }
body.motion-studio-page .studio-prompt-field textarea { width:100% !important; min-height:76px !important; max-height:120px !important; padding:4px 12px 10px !important; border:0 !important; border-radius:0 !important; background:transparent !important; color:#aaa !important; caret-color:#aaa !important; font-size:1.05rem !important; line-height:1.45 !important; resize:none !important; box-shadow:none !important; outline:0 !important; }
body.motion-studio-page .studio-prompt-field textarea::placeholder { color:#858585 !important; opacity:1 !important; }
body.motion-studio-page .studio-prompt-field textarea:focus { border:0 !important; background:transparent !important; box-shadow:none !important; }
body.motion-studio-page .studio-prompt-field small { display:none !important; }
body.motion-studio-page .studio-submit-row { grid-column:1/-1 !important; display:flex !important; align-items:center !important; justify-content:flex-start !important; gap:9px !important; padding:0 !important; border:0 !important; }
body.motion-studio-page .studio-submit-note { display:none !important; }
body.motion-studio-page .studio-upload-trigger { flex:0 0 64px !important; width:64px !important; height:64px !important; min-width:64px !important; min-height:64px !important; padding:0 !important; border:0 !important; border-radius:50% !important; color:#aaa !important; background:#202020 !important; font-size:1.55rem !important; }
body.motion-studio-page .studio-model-chip { flex:0 1 auto !important; margin-left:auto !important; max-width:360px !important; min-height:64px !important; padding:0 20px !important; border:0 !important; border-radius:999px !important; color:#aaa !important; background:#202020 !important; font-size:.95rem !important; white-space:nowrap !important; }
body.motion-studio-page .studio-submit { flex:0 0 64px !important; width:64px !important; height:64px !important; min-width:64px !important; min-height:64px !important; padding:0 !important; border:0 !important; border-radius:50% !important; background:#202020 !important; color:#8d8d8d !important; box-shadow:none !important; }
body.motion-studio-page .studio-submit span { display:inline-block !important; color:#8d8d8d !important; font-size:1.7rem !important; }
body.motion-studio-page .studio-upload-trigger:hover,body.motion-studio-page .studio-model-chip:hover,body.motion-studio-page .studio-submit:hover { background:#252525 !important; }
@media(max-width:760px) {
  body.motion-studio-page .studio-composer { width:calc(100vw - 20px) !important; max-height:calc(100vh - 56px) !important; padding:18px 16px 14px !important; border-radius:30px !important; }
  body.motion-studio-page .studio-prompt-field textarea { min-height:62px !important; max-height:100px !important; font-size:.92rem !important; }
  body.motion-studio-page .studio-upload-trigger,body.motion-studio-page .studio-submit { flex-basis:52px !important; width:52px !important; height:52px !important; min-width:52px !important; min-height:52px !important; }
  body.motion-studio-page .studio-model-chip { max-width:calc(100vw - 145px) !important; min-height:52px !important; padding:0 13px !important; font-size:.72rem !important; }
}

/* Responsive workspace anchoring and compact controls. */
body.motion-studio-page .studio-composer {
  z-index:30 !important;
  left:calc(245px + (100vw - 245px)/2) !important;
  width:min(1040px,calc(100vw - 285px)) !important;
  min-width:0 !important;
  min-height:184px !important;
  background:#111512 !important;
}
body.motion-studio-page .studio-submit-row { min-width:0 !important; }
body.motion-studio-page .studio-upload-trigger,
body.motion-studio-page .studio-submit { line-height:1 !important; }
body.motion-studio-page .studio-model-chip { min-width:0 !important; overflow:hidden !important; text-overflow:ellipsis !important; }
body.motion-studio-page .studio-visual-popover { right:0 !important; left:auto !important; width:min(540px,calc(100vw - 24px)) !important; max-width:calc(100vw - 24px) !important; box-sizing:border-box !important; }
body.motion-studio-page .studio-visual-popover .studio-format-switch { display:flex !important; width:100% !important; gap:2px !important; }
body.motion-studio-page .studio-visual-popover .studio-format-switch button { flex:1 1 0 !important; min-width:0 !important; }
@media(min-width:1600px) {
  body.motion-studio-page .studio-composer { width:min(1120px,calc(100vw - 285px)) !important; }
}
@media(max-width:1100px) and (min-width:761px) {
  body.motion-studio-page .studio-composer { width:calc(100vw - 270px) !important; padding-left:16px !important; padding-right:16px !important; }
  body.motion-studio-page .studio-model-chip { max-width:42vw !important; font-size:.82rem !important; }
}
@media(max-width:760px) {
  body.motion-studio-page .studio-composer { left:50% !important; width:calc(100vw - 20px) !important; max-width:calc(100vw - 20px) !important; max-height:calc(100vh - 56px) !important; min-height:0 !important; padding:18px 16px 14px !important; border-radius:30px !important; }
}
@media(max-width:420px) {
  body.motion-studio-page .studio-composer { width:calc(100vw - 12px) !important; max-width:calc(100vw - 12px) !important; padding:14px 10px 11px !important; border-radius:24px !important; }
  body.motion-studio-page .studio-prompt-field textarea { min-height:54px !important; font-size:.84rem !important; padding-left:6px !important; padding-right:6px !important; }
  body.motion-studio-page .studio-upload-trigger,body.motion-studio-page .studio-submit { flex-basis:44px !important; width:44px !important; height:44px !important; min-width:44px !important; min-height:44px !important; }
  body.motion-studio-page .studio-model-chip { max-width:calc(100vw - 116px) !important; min-height:44px !important; padding:0 9px !important; font-size:.64rem !important; }
}

/* Compact paginator shared by every admin data table. Five page numbers are
   shown at a time; arrows move between five-page groups without widening the
   document or creating horizontal page scroll. */
.pagination {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  width:fit-content;
  max-width:100%;
  margin:22px auto 0;
  padding:6px;
  gap:6px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(18,18,32,.72);
  box-shadow:0 12px 34px rgba(0,0,0,.12);
}
.pagination a,
.pagination .pagination-ellipsis {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-width:36px;
  height:36px;
  padding:0 10px;
  border-radius:9px;
  line-height:1;
}
.pagination a {
  border:1px solid transparent;
  color:#c9c5dc;
  font-size:.78rem;
  font-weight:760;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.pagination a:hover {
  color:#fff;
  border-color:rgba(139,124,255,.42);
  background:rgba(139,124,255,.13);
  transform:translateY(-1px);
}
.pagination a.active {
  color:#0d0b18;
  border-color:var(--violet);
  background:var(--violet);
  box-shadow:0 7px 18px rgba(139,124,255,.24);
}
.pagination .pagination-arrow {
  color:#f4f1ff;
  border-color:rgba(139,124,255,.32);
  background:rgba(139,124,255,.12);
  font-size:1rem;
}
.pagination .pagination-ellipsis {
  min-width:24px;
  padding:0 3px;
  color:#77718e;
  font-weight:800;
}
@media(max-width:480px) {
  .pagination { width:100%; gap:4px; padding:5px; }
  .pagination a { min-width:32px; height:34px; padding:0 8px; }
  .pagination .pagination-ellipsis { min-width:18px; }
}

/* Responsive Studio composer: one compact, centered surface across every
   viewport.  Keep this block last so legacy Studio rules cannot reintroduce
   the oversized bar or hide the prompt while the settings popover changes. */
body.motion-studio-page {
  --studio-sidebar-width:245px;
  --studio-composer-bg:#11101a;
}
body.motion-studio-page .studio-composer {
  position:fixed !important;
  z-index:30 !important;
  left:calc(var(--studio-sidebar-width) + (100vw - var(--studio-sidebar-width)) / 2) !important;
  right:auto !important;
  bottom:max(12px, env(safe-area-inset-bottom)) !important;
  transform:translate3d(-50%,0,0) !important;
  width:min(760px, calc(100vw - var(--studio-sidebar-width) - 40px)) !important;
  max-width:calc(100vw - var(--studio-sidebar-width) - 40px) !important;
  min-width:0 !important;
  min-height:0 !important;
  height:auto !important;
  max-height:calc(100vh - 118px) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  grid-template-rows:auto auto !important;
  gap:7px !important;
  padding:14px 15px 12px !important;
  overflow:visible !important;
  border:1px solid rgba(205,220,210,.14) !important;
  border-radius:24px !important;
  background:var(--studio-composer-bg) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.035) !important;
}
body.motion-studio-page .studio-composer::before {
  content:"";
  position:absolute;
  top:7px;
  left:50%;
  width:42px;
  height:3px;
  transform:translateX(-50%);
  border-radius:999px;
  background:rgba(218,214,236,.2);
  pointer-events:none;
}
body.motion-studio-page .studio-prompt-field {
  display:block !important;
  grid-column:1 !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  visibility:visible !important;
  opacity:1 !important;
}
body.motion-studio-page .studio-prompt-field label {
  display:block !important;
  min-width:0 !important;
  color:transparent !important;
  font-size:0 !important;
}
body.motion-studio-page .studio-prompt-field textarea {
  display:block !important;
  width:100% !important;
  min-height:48px !important;
  max-height:92px !important;
  margin:0 !important;
  padding:3px 7px 5px !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  resize:none !important;
  overflow:auto !important;
  color:#d8d4e2 !important;
  caret-color:#d8d4e2 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:.92rem !important;
  line-height:1.45 !important;
  visibility:visible !important;
  opacity:1 !important;
}
body.motion-studio-page .studio-prompt-field textarea::placeholder { color:#7f8981 !important; opacity:1 !important; }
body.motion-studio-page .studio-prompt-field textarea:focus { border:0 !important; outline:0 !important; background:transparent !important; box-shadow:none !important; }
body.motion-studio-page .studio-prompt-field small { display:none !important; }
body.motion-studio-page .studio-submit-row {
  display:flex !important;
  grid-column:1 !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  min-width:0 !important;
  min-height:38px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}
body.motion-studio-page .studio-submit-row .studio-submit-note { display:none !important; }
body.motion-studio-page .studio-upload-trigger,
body.motion-studio-page .studio-submit {
  flex:0 0 38px !important;
  width:38px !important;
  min-width:38px !important;
  height:38px !important;
  min-height:38px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  line-height:1 !important;
  box-shadow:none !important;
}
body.motion-studio-page .studio-upload-trigger {
  margin-right:auto !important;
  color:#bbb5c9 !important;
  background:#201d2b !important;
  font-size:1.22rem !important;
}
body.motion-studio-page .studio-submit {
  color:#e0dced !important;
  background:#201d2b !important;
  font-size:0 !important;
}
body.motion-studio-page .studio-submit span { color:#e0dced !important; font-size:1.15rem !important; }
body.motion-studio-page .studio-upload-trigger:hover,
body.motion-studio-page .studio-submit:hover,
body.motion-studio-page .studio-upload-trigger:focus-visible,
body.motion-studio-page .studio-submit:focus-visible { background:#302a43 !important; outline:2px solid rgba(139,124,255,.45) !important; outline-offset:2px; }
body.motion-studio-page .studio-model-chip {
  flex:0 1 auto !important;
  min-width:0 !important;
  max-width:300px !important;
  min-height:38px !important;
  margin:0 !important;
  padding:0 13px !important;
  overflow:hidden !important;
  border:0 !important;
  border-radius:999px !important;
  color:#c9c4d4 !important;
  background:#201d2b !important;
  font-size:.72rem !important;
  font-weight:750 !important;
  line-height:1 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.motion-studio-page .studio-model-chip:hover,
body.motion-studio-page .studio-model-chip:focus-visible { color:#f1edf8 !important; background:#302a43 !important; outline:2px solid rgba(139,124,255,.45) !important; outline-offset:2px; }
body.motion-studio-page .studio-visual-popover {
  right:0 !important;
  left:auto !important;
  width:min(500px,100%) !important;
  max-width:100% !important;
  max-height:min(66vh,520px) !important;
  overflow:auto !important;
  box-sizing:border-box !important;
}
body.motion-studio-page .studio-visual-popover.is-open { display:grid !important; }
body.motion-studio-page .studio-visual-popover .studio-format-switch { width:100% !important; }
body.motion-studio-page .studio-visual-popover .studio-format-switch button { min-width:0 !important; }

:root[data-theme="light"] body.motion-studio-page { --studio-composer-bg:#eef1ee; }
:root[data-theme="light"] body.motion-studio-page .studio-composer { border-color:rgba(55,70,58,.16) !important; box-shadow:0 18px 48px rgba(34,50,38,.18), inset 0 1px 0 rgba(255,255,255,.72) !important; }
:root[data-theme="light"] body.motion-studio-page .studio-prompt-field textarea { color:#263129 !important; caret-color:#263129 !important; }
:root[data-theme="light"] body.motion-studio-page .studio-prompt-field textarea::placeholder { color:#778178 !important; }
:root[data-theme="light"] body.motion-studio-page .studio-upload-trigger,
:root[data-theme="light"] body.motion-studio-page .studio-submit,
:root[data-theme="light"] body.motion-studio-page .studio-model-chip { color:#445248 !important; background:#dfe7e0 !important; }
:root[data-theme="light"] body.motion-studio-page .studio-submit span { color:#445248 !important; }

@media(max-width:1100px) and (min-width:761px) {
  body.motion-studio-page .studio-composer {
    width:calc(100vw - var(--studio-sidebar-width) - 32px) !important;
    max-width:calc(100vw - var(--studio-sidebar-width) - 32px) !important;
    padding-inline:13px !important;
  }
  body.motion-studio-page .studio-model-chip { max-width:260px !important; }
}
@media(max-width:760px) {
  body.motion-studio-page .content { padding-bottom:165px !important; }
  body.motion-studio-page .studio-composer {
    left:50% !important;
    bottom:max(10px, env(safe-area-inset-bottom)) !important;
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    max-height:calc(100vh - 90px) !important;
    padding:13px 12px 11px !important;
    border-radius:22px !important;
  }
  body.motion-studio-page .studio-prompt-field textarea { min-height:46px !important; max-height:82px !important; font-size:.86rem !important; }
  body.motion-studio-page .studio-visual-popover {
    right:auto !important;
    left:50% !important;
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    transform:translateX(-50%) !important;
  }
  /* Keep the mobile capsule content-sized like desktop instead of stretching
     across the entire composer row. */
  body.motion-studio-page .studio-model-chip { flex:0 1 auto !important; width:auto !important; max-width:260px !important; font-size:.68rem !important; }
  body.motion-studio-page .studio-upload-trigger,
  body.motion-studio-page .studio-submit { flex-basis:36px !important; width:36px !important; min-width:36px !important; height:36px !important; min-height:36px !important; }
  body.motion-studio-page .studio-visual-popover { padding:9px !important; gap:7px !important; border-radius:17px !important; }
  body.motion-studio-page .studio-visual-popover .studio-format-switch { padding:2px !important; margin-bottom:0 !important; }
  body.motion-studio-page .studio-visual-popover .studio-format-switch button { min-height:27px !important; padding:4px 7px !important; font-size:.59rem !important; }
  body.motion-studio-page .studio-visual-popover .studio-form-grid-options { gap:6px !important; }
  body.motion-studio-page .studio-visual-popover .studio-form-grid-options select { min-height:32px !important; padding:6px 23px 6px 8px !important; font-size:.61rem !important; }
  body.motion-studio-page .studio-visual-popover .studio-input-mode-switch { gap:6px !important; }
  body.motion-studio-page .studio-visual-popover .studio-input-mode { min-height:54px !important; padding:7px !important; border-radius:10px !important; }
  body.motion-studio-page .studio-visual-popover .studio-reference-control { gap:7px !important; padding:8px !important; }
  body.motion-studio-page .studio-visual-popover .studio-reference-button { min-height:29px !important; padding:5px 8px !important; font-size:.59rem !important; }
  }
@media(max-width:420px) {
  body.motion-studio-page .content { padding-bottom:150px !important; }
  body.motion-studio-page .studio-composer { width:calc(100vw - 14px) !important; max-width:calc(100vw - 14px) !important; padding:11px 9px 9px !important; border-radius:19px !important; }
  body.motion-studio-page .studio-prompt-field textarea { min-height:42px !important; font-size:.8rem !important; padding-inline:4px !important; }
  body.motion-studio-page .studio-upload-trigger,
  body.motion-studio-page .studio-submit { flex-basis:34px !important; width:34px !important; min-width:34px !important; height:34px !important; min-height:34px !important; }
  body.motion-studio-page .studio-model-chip { flex:0 1 auto !important; width:auto !important; min-height:34px !important; max-width:220px !important; padding-inline:9px !important; font-size:.62rem !important; }
  body.motion-studio-page .studio-source-control { flex-wrap:wrap !important; align-items:flex-start !important; }
  body.motion-studio-page .studio-source-control .studio-reference-button { flex-basis:auto !important; margin-left:42px !important; }
}
@media(max-width:340px) {
  body.motion-studio-page .studio-composer { width:calc(100vw - 10px) !important; max-width:calc(100vw - 10px) !important; }
  body.motion-studio-page .studio-submit-row { gap:5px !important; }
  body.motion-studio-page .studio-model-chip { max-width:190px !important; padding-inline:7px !important; font-size:.58rem !important; }
}
body.motion-studio-page .app-shell.sidebar-open .studio-composer { z-index:18 !important; }

/* Account-wide capacity indicator. It is intentionally a compact band so it
   remains useful on Studio, Gallery, and billing screens without becoming a
   nested card or pushing the primary workflow below the fold. */
.app-capacity-strip { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin:0 0 18px; padding:10px 14px; border:1px solid rgba(167,156,255,.22); border-radius:11px; color:#bcb6d3; background:rgba(139,124,255,.07); font-size:.72rem; }
.app-capacity-label { color:#a79cff; font-size:.62rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.app-capacity-kind { display:inline-flex; align-items:baseline; gap:7px; min-width:0; }
.app-capacity-kind b { color:#f0edff; font-size:.7rem; }
.app-capacity-kind span { color:#938ca8; white-space:normal; }
.app-capacity-kind strong { color:#e2ddff; font-variant-numeric:tabular-nums; }
.app-capacity-link { margin-left:auto; color:#b3a8ff; font-size:.68rem; font-weight:750; white-space:nowrap; }
.app-capacity-link:hover { color:#fff; }
:root[data-theme="light"] .app-capacity-strip { border-color:#ddd6ff; color:#6e6a80; background:#f7f5ff; }
:root[data-theme="light"] .app-capacity-kind b { color:#302a50; }
:root[data-theme="light"] .app-capacity-kind span { color:#767188; }
:root[data-theme="light"] .app-capacity-kind strong { color:#4c3ec2; }
:root[data-theme="light"] .app-capacity-link { color:#5b4bd4; }
@media(max-width:760px) {
  .app-capacity-strip { align-items:flex-start; gap:7px 12px; margin-bottom:14px; padding:9px 11px; }
  .app-capacity-label { flex-basis:100%; }
  .app-capacity-link { margin-left:0; }
  .app-capacity-kind { font-size:.66rem; }
}

/* Approved add-on packs mirror Today's capacity and remain independently
   trackable until their 24-hour expiry. */
.active-addons-panel { grid-column:2; min-width:0; }
.active-addons-panel[hidden] { display:none; }
.active-addons-kicker { display:block; margin-bottom:6px; color:var(--violet); font-size:.62rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.active-addons-manage { color:var(--violet); font-size:.72rem; font-weight:750; white-space:nowrap; }
.active-addons-manage:hover { color:var(--violet-dark); }
.active-addons-list { display:grid; gap:16px; }
.active-addon-row { display:grid; gap:8px; padding-bottom:14px; border-bottom:1px solid var(--line); }
.active-addon-row:last-child { padding-bottom:0; border-bottom:0; }
.active-addon-line { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; font-size:.82rem; }
.active-addon-line > span { min-width:0; }
.active-addon-line small { display:block; margin-top:4px; color:var(--muted); font-size:.68rem; }
.active-addon-line > strong { color:var(--ink); font-variant-numeric:tabular-nums; white-space:nowrap; }
.active-addon-expiry { color:var(--muted); font-size:.7rem; }
.active-addons-empty { margin:0; color:var(--muted); font-size:.78rem; }
:root[data-theme="dark"] .active-addon-line > strong { color:#f3f0ff; }
:root[data-theme="light"] .active-addon-line > strong { color:#151915; }
@media(max-width:1050px) { .active-addons-panel { grid-column:1; } }
@media(max-width:520px) {
  .active-addon-line { flex-wrap:wrap; }
  .active-addon-line > strong { margin-left:auto; }
}

/* Dashboard capacity is a self-sizing column. Add-on packs are an inner
   subsection so the recent-creations panel cannot stretch this surface. */
.dashboard-overview-grid { align-items:start; }
.dashboard-capacity-panel { align-self:start; }
.active-addons-panel {
  grid-column:auto;
  min-width:0;
  margin-top:20px;
  padding:19px 0 0;
  border-top:1px solid var(--line);
  background:transparent;
  box-shadow:none;
}
.active-addons-panel[hidden] { display:none; }
.active-addons-head { margin-bottom:14px; }
.active-addons-head h3 { margin:0; }
.active-addon-row .progress>i { transition:width .35s ease; }
.dashboard-capacity-note { margin:16px 0 0; font-size:.77rem; }

@media(max-width:1050px) {
  .active-addons-panel { grid-column:auto; }
}

/* Studio mobile layout: every surface stays inside the viewport and all
   attachment controls remain large enough for touch interaction. */
.motion-studio-page .studio-workspace,
.motion-studio-page .studio-output-panel,
.motion-studio-page .studio-output-grid,
.motion-studio-page .studio-upgrade-surface,
.motion-studio-page .studio-plan-choices,
.motion-studio-page .studio-plan-choice { width:100%; max-width:100%; min-width:0; box-sizing:border-box; }
.motion-studio-page .studio-reference-file-input { pointer-events:auto; }

@media(max-width:760px) {
  html,body,body.app-body { width:100%; max-width:100%; overflow-x:hidden; }
  body.motion-studio-page .app-shell,
  body.motion-studio-page .app-main,
  body.motion-studio-page .content { width:100%; max-width:100%; min-width:0; overflow-x:hidden; }
  body.motion-studio-page .app-main { margin-left:0; }
  body.motion-studio-page .content { padding:16px 12px 170px!important; }
  body.motion-studio-page .topbar { width:100%; min-width:0; padding:13px 12px; gap:9px; }
  body.motion-studio-page .topbar>div { min-width:0; }
  body.motion-studio-page .topbar h1 { overflow:hidden; font-size:1.05rem; text-overflow:ellipsis; white-space:nowrap; }
  body.motion-studio-page .top-actions { flex:0 0 auto; gap:7px; }
  body.motion-studio-page .top-actions .avatar { width:32px; height:32px; }
  body.motion-studio-page .studio-page-intro { width:100%; min-width:0; margin-bottom:18px; }
  body.motion-studio-page .studio-page-intro p { max-width:100%; }
  body.motion-studio-page .studio-intro-actions { margin-top:12px; }
  body.motion-studio-page .studio-upgrade-surface { margin:0; padding:17px 14px; overflow:hidden; border-radius:18px; }
  body.motion-studio-page .studio-upgrade-header { display:grid; grid-template-columns:36px minmax(0,1fr); gap:11px; }
  body.motion-studio-page .studio-upgrade-icon { width:36px; height:36px; }
  body.motion-studio-page .studio-upgrade-copy h3 { font-size:1.05rem; }
  body.motion-studio-page .studio-upgrade-copy p { font-size:.73rem; }
  body.motion-studio-page .studio-upgrade-note { display:none; }
  body.motion-studio-page .studio-plan-choices { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; margin-top:15px; }
  body.motion-studio-page .studio-plan-choice { padding:20px 17px; border-radius:18px; }
  body.motion-studio-page .studio-plan-choice-price { flex-wrap:wrap; margin:18px 0; }
  body.motion-studio-page .studio-plan-choice-price strong { max-width:100%; font-size:clamp(2rem,11vw,2.55rem); }
  body.motion-studio-page .studio-plan-capacity { gap:11px; }
  body.motion-studio-page .studio-plan-capacity-item { min-width:0; font-size:.79rem; }
  body.motion-studio-page .studio-plan-capacity-item>span { min-width:0; overflow-wrap:anywhere; }
  body.motion-studio-page .studio-plan-choice .button { width:100%; min-width:0; }
  body.motion-studio-page .studio-output-head { align-items:flex-start; flex-direction:column; gap:12px; }
  body.motion-studio-page .studio-output-head-actions { width:100%; max-width:100%; flex-wrap:wrap; gap:7px; }
  body.motion-studio-page .studio-output-head-actions .button,
  body.motion-studio-page .studio-output-head-actions form { flex:0 1 auto; min-width:0; }
  body.motion-studio-page .studio-output-grid { grid-template-columns:minmax(0,1fr); }
  body.motion-studio-page .studio-empty { min-height:280px; padding:42px 16px; }
  body.motion-studio-page .studio-composer { left:50%!important; bottom:max(8px,env(safe-area-inset-bottom))!important; width:calc(100dvw - 16px)!important; max-width:calc(100dvw - 16px)!important; max-height:calc(100dvh - 82px)!important; padding:12px 10px 10px!important; border-radius:20px!important; }
  body.motion-studio-page .studio-submit-row { width:100%; max-width:100%; gap:7px!important; }
  body.motion-studio-page .studio-model-chip { flex:1 1 auto!important; width:auto!important; max-width:calc(100% - 86px)!important; min-width:0!important; }
  body.motion-studio-page .studio-visual-popover { right:auto!important; left:50%!important; width:calc(100dvw - 16px)!important; max-width:calc(100dvw - 16px)!important; max-height:calc(100dvh - 150px)!important; padding:11px!important; overflow-x:hidden!important; transform:translateX(-50%)!important; }
  body.motion-studio-page .studio-visual-popover .studio-form-grid-options { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:7px!important; }
  body.motion-studio-page .studio-visual-popover .studio-model-field { grid-column:1/-1; }
  body.motion-studio-page .studio-visual-popover .field,
  body.motion-studio-page .studio-visual-popover label,
  body.motion-studio-page .studio-visual-popover select { width:100%; max-width:100%; min-width:0; }
  body.motion-studio-page .studio-input-mode-switch { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  body.motion-studio-page .studio-input-mode { min-width:0; }
  body.motion-studio-page .studio-reference-control,
  body.motion-studio-page .studio-source-control { display:grid!important; grid-template-columns:34px minmax(0,1fr)!important; align-items:center!important; width:100%; max-width:100%; min-width:0; gap:8px!important; }
  body.motion-studio-page .studio-reference-copy { min-width:0; }
  body.motion-studio-page .studio-reference-copy span,
  body.motion-studio-page .studio-reference-copy small { white-space:normal!important; overflow-wrap:anywhere; }
  body.motion-studio-page .studio-reference-button { grid-column:2; width:fit-content; max-width:100%; min-height:42px!important; margin:0!important; padding:9px 12px!important; white-space:normal; touch-action:manipulation; }
  body.motion-studio-page .studio-attachment-preview,
  body.motion-studio-page .studio-attachment-tokens { grid-column:1/-1; width:100%; max-width:100%; min-width:0; }
  body.motion-studio-page .studio-attachment-item { max-width:100%; }
  body.motion-studio-page .studio-attachment-item img { max-width:100%; height:auto; }
}

@media(max-width:420px) {
  body.motion-studio-page .content { padding-inline:9px!important; }
  body.motion-studio-page .studio-upgrade-surface { padding:15px 11px; }
  body.motion-studio-page .studio-plan-choice { padding:18px 14px; }
  body.motion-studio-page .studio-composer { width:calc(100dvw - 10px)!important; max-width:calc(100dvw - 10px)!important; padding:10px 8px 9px!important; }
  body.motion-studio-page .studio-model-chip { max-width:calc(100% - 78px)!important; padding-inline:8px!important; }
  body.motion-studio-page .studio-visual-popover { width:calc(100dvw - 10px)!important; max-width:calc(100dvw - 10px)!important; }
  body.motion-studio-page .studio-visual-popover .studio-form-grid-options { grid-template-columns:minmax(0,1fr)!important; }
  body.motion-studio-page .studio-visual-popover .studio-model-field { grid-column:auto; }
  body.motion-studio-page .studio-input-mode-switch { grid-template-columns:minmax(0,1fr)!important; }
}

/* Source-image row: keep the description, action and preview in dedicated
   grid areas so an attached image can never overlap the settings copy. */
body.motion-studio-page .studio-visual-popover .studio-source-control {
  display:grid!important;
  grid-template-columns:32px minmax(0,1fr) 60px!important;
  grid-template-rows:auto auto;
  align-items:center!important;
  width:100%;
  max-width:100%;
  min-width:0;
  gap:6px 10px!important;
  padding:10px 11px!important;
  overflow:hidden;
}
body.motion-studio-page .studio-visual-popover .studio-source-control[hidden] { display:none!important; }
body.motion-studio-page .studio-visual-popover .studio-source-control>.studio-reference-icon {
  grid-column:1;
  grid-row:1/3;
  align-self:center;
}
body.motion-studio-page .studio-visual-popover .studio-source-control>.studio-reference-copy {
  grid-column:2;
  grid-row:1;
  min-width:0;
  overflow:hidden;
}
body.motion-studio-page .studio-visual-popover .studio-source-control>.studio-reference-copy strong,
body.motion-studio-page .studio-visual-popover .studio-source-control>.studio-reference-copy span {
  display:block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap!important;
}
body.motion-studio-page .studio-visual-popover .studio-source-control>.studio-reference-copy small { display:none; }
body.motion-studio-page .studio-visual-popover .studio-source-control>.studio-reference-button {
  grid-column:2;
  grid-row:2;
  justify-self:start;
  width:auto!important;
  min-height:28px!important;
  margin:0!important;
  padding:5px 9px!important;
  border-radius:999px;
  font-size:.59rem!important;
  white-space:nowrap;
}
body.motion-studio-page .studio-visual-popover .studio-source-control>.studio-attachment-preview {
  grid-column:3;
  grid-row:1/3;
  align-self:center;
  justify-self:end;
  display:flex;
  width:60px;
  max-width:60px;
  min-width:0;
  flex-wrap:nowrap;
  justify-content:flex-end;
  padding:0;
  overflow:hidden;
}
body.motion-studio-page .studio-visual-popover .studio-source-control>.studio-attachment-preview[hidden] { display:none!important; }
body.motion-studio-page .studio-visual-popover .studio-source-control .studio-attachment-item {
  flex:0 0 56px;
  width:56px;
  max-width:56px;
}
body.motion-studio-page .studio-visual-popover .studio-source-control .studio-attachment-item img {
  width:52px;
  height:42px;
  max-width:52px;
  object-fit:cover;
}
@media(max-width:420px) {
  body.motion-studio-page .studio-visual-popover .studio-source-control {
    grid-template-columns:30px minmax(0,1fr) 54px!important;
    padding:9px!important;
    gap:5px 8px!important;
  }
  body.motion-studio-page .studio-visual-popover .studio-source-control>.studio-attachment-preview { width:54px; max-width:54px; }
  body.motion-studio-page .studio-visual-popover .studio-source-control .studio-attachment-item { flex-basis:50px; width:50px; max-width:50px; }
  body.motion-studio-page .studio-visual-popover .studio-source-control .studio-attachment-item img { width:48px; height:38px; }
}
.plan-cycle-toggle{display:inline-flex;align-items:center;gap:4px;margin-top:16px;padding:4px;border:1px solid rgba(139,124,255,.32);border-radius:999px;background:rgba(139,124,255,.08)}
.plan-cycle-toggle a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 15px;border-radius:999px;color:var(--muted);font-size:.78rem;font-weight:800;text-decoration:none;transition:background .18s ease,color .18s ease,transform .18s ease}
.plan-cycle-toggle a:hover{color:var(--text);transform:translateY(-1px)}
.plan-cycle-toggle a.active{color:#151021;background:var(--violet)}
@media(max-width:700px){.plan-cycle-toggle{margin-top:12px}.plan-cycle-toggle a{min-height:32px;padding:0 11px;font-size:.72rem}}

/* Scheduled subscription allotments */
.allotment-admin-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.8fr);gap:18px;align-items:start;margin-bottom:18px}
.allotment-editor{position:sticky;top:82px}
.allotment-actions form{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.allotment-history{margin-top:18px}
.allotment-history .panel-head form{display:flex;gap:8px;align-items:center}
.allotment-history .panel-head input{min-width:260px}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;word-break:break-all}
.stat-card.accent{border-color:rgba(139,124,255,.55);background:linear-gradient(145deg,rgba(139,124,255,.18),rgba(16,15,27,.96))}
.stat-card>a{display:inline-flex;margin-top:6px;color:var(--violet);font-size:.76rem;font-weight:800;text-decoration:none}
.credit-summary-panel{display:grid;align-content:start;gap:12px}
.credit-balance-display{font-size:clamp(2.4rem,6vw,4.6rem);line-height:.95;color:var(--violet)}
.credit-summary-panel .button{justify-self:start;margin-top:8px}
.allotment-user-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.credit-timezone{font-size:clamp(1rem,2vw,1.35rem)!important;word-break:break-word}
.allotment-user-history{margin-top:18px}
.allotment-history-tabs{display:flex;gap:8px;flex-wrap:wrap}
.credit-delta.positive{color:var(--teal)}
.credit-delta.negative{color:var(--orange,#ffb65c)}
:root[data-theme="light"] .stat-card.accent{background:linear-gradient(145deg,rgba(111,91,255,.13),#fff)}
@media(max-width:1050px){.allotment-admin-grid{grid-template-columns:1fr}.allotment-editor{position:static}.allotment-user-stats{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.allotment-user-stats{grid-template-columns:1fr}.allotment-history .panel-head,.allotment-user-history .panel-head{align-items:flex-start;flex-direction:column}.allotment-history .panel-head form{width:100%;flex-wrap:wrap}.allotment-history .panel-head input{min-width:0;flex:1 1 180px}.allotment-history-tabs{width:100%}.allotment-history-tabs .button{flex:1 1 auto}}

/* Simple manual subscription-day grants */
.subscription-day-tool{display:grid;gap:22px;max-width:980px}
.subscription-day-steps{display:flex;gap:8px;flex-wrap:wrap}
.subscription-day-steps span{padding:8px 12px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.72rem;font-weight:800}
.subscription-day-steps span.active{border-color:rgba(139,124,255,.52);background:rgba(139,124,255,.13);color:var(--violet)}
.subscription-day-check{display:flex;align-items:end;gap:14px;flex-wrap:wrap}
.subscription-day-check .form-grid{flex:1 1 520px;margin:0}
.subscription-day-result{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;border:1px solid rgba(139,124,255,.35);border-radius:18px;background:linear-gradient(135deg,rgba(139,124,255,.13),rgba(18,17,29,.78))}
.subscription-day-result>div:first-child{display:grid;gap:5px}
.subscription-day-result small{color:var(--muted)}
.subscription-day-result>div:first-child strong{font-size:1.1rem}
.subscription-day-count{display:flex;align-items:baseline;gap:8px;color:var(--violet)}
.subscription-day-count strong{font-size:clamp(2.4rem,7vw,4.8rem);line-height:.85}
.subscription-day-count span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.subscription-day-action{display:flex;align-items:end;gap:14px;flex-wrap:wrap;padding:18px;border:1px solid rgba(66,211,146,.3);border-radius:16px;background:rgba(66,211,146,.06)}
.subscription-day-action .field{flex:1 1 320px}
.subscription-day-action .field label{margin:0}
.subscription-day-preview{margin-top:18px}
.subscription-day-empty{padding:18px}
:root[data-theme="light"] .subscription-day-result{background:linear-gradient(135deg,rgba(111,91,255,.11),#fff)}
@media(max-width:700px){.subscription-day-check>.button,.subscription-day-action>.button{width:100%}.subscription-day-result{align-items:flex-start;flex-direction:column}.subscription-day-count strong{font-size:3rem}}
