@layer legacy {
:root{--bg:#050522;--bg2:#0b0b32;--panel:#10103d;--line:#27275d;--text:#f7f8ff;--muted:#9a9bbd;--blue:#127cf5;--green:#74d960;--yellow:#fdca49;--danger:#ff6f7b;--radius:20px;--shadow:0 24px 70px rgba(0,0,0,.25)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"SomarSans",Arial,sans-serif;background:var(--bg);color:var(--text)}body{min-height:100vh;background:radial-gradient(circle at 20% 0,rgba(18,124,245,.14),transparent 34%),radial-gradient(circle at 90% 100%,rgba(116,217,96,.09),transparent 30%),var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none}.eyebrow{font-size:11px;letter-spacing:.16em;color:#8587b7;font-weight:800}.brand-mark{width:74px;height:74px;border-radius:23px;display:grid;place-items:center;background:linear-gradient(145deg,var(--blue),#3d8dff 52%,var(--green));box-shadow:0 18px 50px rgba(18,124,245,.28);transform:rotate(-8deg)}.brand-mark span{font-weight:950;font-size:43px;font-style:normal;transform:rotate(8deg)}.brand-mark.small{width:40px;height:40px;border-radius:13px}.brand-mark.small span{font-size:23px}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);padding:28px}.brand-panel{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:32px;padding:7vw;background:linear-gradient(145deg,rgba(18,124,245,.13),rgba(2,2,56,.2)),#09092c}.brand-panel:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(116,217,96,.15);border-radius:50%;right:-190px;bottom:-220px;box-shadow:0 0 0 58px rgba(18,124,245,.04),0 0 0 116px rgba(253,202,73,.025)}.brand-copy{max-width:740px;margin-top:12vh;position:relative;z-index:2}.brand-copy h1{font-size:clamp(42px,5vw,82px);line-height:.98;letter-spacing:-.055em;margin:14px 0 26px}.brand-copy p{font-size:18px;color:#b8b9d2;max-width:620px;line-height:1.7}.signal-grid{position:absolute;left:7vw;bottom:7vw;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;z-index:2}.signal-grid div{padding:16px 20px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.035);min-width:145px}.signal-grid b,.signal-grid span{display:block}.signal-grid span{font-size:12px;color:var(--muted);margin-top:5px}.auth-card{margin:auto;width:min(470px,88%);padding:38px;border:1px solid rgba(255,255,255,.08);border-radius:28px;background:rgba(15,15,55,.78);box-shadow:var(--shadow);backdrop-filter:blur(20px)}.mobile-brand{display:none;align-items:center;gap:12px;margin-bottom:25px}.tabs{display:flex;gap:6px;background:#09092c;padding:5px;border-radius:13px}.tab{flex:1;border:0;background:transparent;color:var(--muted);padding:12px;border-radius:10px;font-weight:700}.tab.active{background:#171749;color:white}.auth-form,.stack-form{display:grid;gap:16px;margin-top:24px}label{display:grid;gap:8px;font-size:12px;font-weight:750;color:#b5b6d0}input,select,textarea{width:100%;border:1px solid var(--line);background:#08082b;color:white;border-radius:12px;padding:13px 14px;outline:none;transition:.2s}input:focus,select:focus,textarea:focus{border-color:#3c8cff;box-shadow:0 0 0 3px rgba(18,124,245,.12)}textarea{resize:vertical}.primary,.ghost{border:0;border-radius:12px;padding:12px 16px;font-weight:800}.primary{background:linear-gradient(135deg,var(--blue),#318fff);color:white;box-shadow:0 10px 26px rgba(18,124,245,.22)}.ghost{border:1px solid var(--line);background:#0c0c32;color:#d6d6e8}.wide{width:100%}.auth-foot{font-size:11px;color:#76789e;line-height:1.6;margin-top:22px}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:24px 16px;border-right:1px solid #181843;background:#070725;display:flex;flex-direction:column}.side-brand{display:flex;align-items:center;gap:12px;padding:0 10px 28px}.side-brand b,.side-brand small{display:block}.side-brand small{color:#7779a6;font-size:11px}nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 13px;border:0;border-radius:12px;background:transparent;color:#8f91b7;text-align:left;font-weight:700}.nav-item span{width:24px;color:#6f72a5}.nav-item.active,.nav-item:hover{background:#11113d;color:white}.nav-item.active span{color:var(--green)}.sidebar-bottom{margin-top:auto;display:grid;gap:14px}.workspace-chip{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid #1d1e4b;border-radius:14px}.workspace-chip .dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 16px var(--green)}.workspace-chip small,.workspace-chip b{display:block;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-chip small{font-size:10px;color:#7679a7}.workspace-chip b{font-size:12px;margin-top:2px}.main{padding:0 38px 60px;min-width:0}.topbar{height:112px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #181843;margin-bottom:30px}.topbar h2{margin:5px 0 0;font-size:27px;letter-spacing:-.03em}.top-actions{display:flex;align-items:center;gap:10px}.pill{font-size:11px;padding:8px 11px;border-radius:999px;background:rgba(116,217,96,.1);border:1px solid rgba(116,217,96,.2);color:#9ff08c;font-weight:800;text-transform:capitalize}.view{display:none}.view.active{display:block}.hero-card{min-height:230px;padding:40px;border:1px solid rgba(255,255,255,.07);border-radius:24px;background:linear-gradient(120deg,rgba(18,124,245,.15),rgba(116,217,96,.035)),#0b0b31;display:flex;align-items:center;justify-content:space-between;gap:40px;overflow:hidden}.hero-card h3{font-size:35px;letter-spacing:-.04em;margin:8px 0 12px}.hero-card p{max-width:680px;color:var(--muted);line-height:1.7}.queue-visual{display:flex;align-items:center;gap:9px}.queue-visual div{width:44px;height:44px;border-radius:13px;border:1px solid #2d2f68;display:grid;place-items:center;color:#a5a8cf;font-weight:900}.queue-visual i{width:22px;height:1px;background:linear-gradient(90deg,#2f67a7,var(--green))}.queue-visual strong{margin-left:5px;background:linear-gradient(135deg,var(--blue),var(--green));padding:15px;border-radius:15px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.stats article{padding:22px;border:1px solid #1c1d4b;border-radius:18px;background:#0b0b30}.stats span,.stats small,.panel small{color:#7779a4;font-size:11px}.stats b{display:block;font-size:34px;margin:10px 0 2px}.split,.settings-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.settings-grid{grid-template-columns:1fr 1fr}.panel{border:1px solid #1d1e4b;border-radius:20px;background:#0b0b30;padding:22px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.panel h3{margin:4px 0 0}.link{border:0;background:transparent;color:#6fb1ff;font-weight:700}.list{display:grid;gap:9px}.list.empty{padding:25px 0;color:#676a94}.list-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px;border-radius:13px;background:#0f0f3a;border:1px solid #1a1b4c}.list-row b,.list-row small{display:block}.list-row small{margin-top:4px}.status{display:inline-flex;align-items:center;gap:6px;font-size:10px;padding:6px 8px;border-radius:999px;text-transform:uppercase;font-weight:850;letter-spacing:.04em}.status.completed,.status.connected{background:rgba(116,217,96,.1);color:#9eeb8d}.status.running,.status.submitted,.status.polling{background:rgba(18,124,245,.12);color:#77b4ff}.status.pending{background:rgba(253,202,73,.1);color:#ffe18a}.status.failed,.status.cancelled{background:rgba(255,111,123,.1);color:#ff98a1}.provider-summary{padding:18px;border:1px dashed #292a5d;border-radius:14px}.provider-summary b,.provider-summary small{display:block}.provider-summary small{margin-top:7px;color:var(--muted)}.section-actions{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-actions p,.muted{color:var(--muted);line-height:1.6}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.project-card{position:relative;padding:20px;border:1px solid #20214f;border-radius:18px;background:linear-gradient(150deg,#0e0e38,#090929);min-height:180px;display:flex;flex-direction:column}.project-card:hover{border-color:#323471;transform:translateY(-1px)}.project-card .project-type{font-size:10px;color:#7b7da9;text-transform:uppercase;letter-spacing:.08em}.project-card h3{margin:16px 0 8px}.project-card p{color:#8587aa;font-size:12px;line-height:1.5}.project-card footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#7779a3}.project-card button{position:absolute;inset:0;border:0;background:transparent}.table-wrap{overflow:auto;padding:0}table{border-collapse:collapse;width:100%;min-width:780px}th,td{text-align:left;padding:15px 18px;border-bottom:1px solid #1a1b46;font-size:12px}th{color:#7476a0;font-size:10px;text-transform:uppercase;letter-spacing:.08em}td{color:#b8b9d2}.form-panel{padding:26px}.provider-logo{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,#127cf5,#74d960);font-weight:950}.secret-box{margin-top:18px;padding:14px;border:1px solid rgba(253,202,73,.25);background:rgba(253,202,73,.05);border-radius:13px}.secret-box code{display:block;word-break:break-all;color:#ffe087;margin:10px 0;font-size:11px}.api-info{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.api-info code{display:block;color:#8fbfff;margin-top:8px;word-break:break-all}.subscription-card{max-width:700px;padding:34px}.subscription-card h3{font-size:42px;margin:10px 0}.plan-status{display:flex;gap:10px;margin:18px 0}.plan-status span{padding:7px 10px;border-radius:999px;background:rgba(116,217,96,.1);color:#9be987;text-transform:capitalize}.feature-list{display:grid;gap:10px;margin-top:25px;color:#b8bad3}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}dialog{border:0;padding:0;background:transparent;color:white;width:min(620px,92vw)}dialog::backdrop{background:rgba(1,1,20,.75);backdrop-filter:blur(7px)}.dialog-card{background:#0d0d34;border:1px solid #292a61;border-radius:22px;padding:24px;box-shadow:var(--shadow);display:grid;gap:16px}.dialog-card.large{width:min(900px,92vw);max-height:85vh;overflow:auto}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h3{margin:4px 0}.icon-btn{width:36px;height:36px;border:1px solid #2b2c61;background:#12123e;color:#aaaed2;border-radius:11px;font-size:22px}.toast{position:fixed;right:24px;bottom:24px;z-index:100;padding:13px 16px;background:#171746;border:1px solid #30316c;border-radius:13px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(10px);transition:.2s;max-width:380px;font-size:12px}.toast.show{opacity:1;transform:none}.toast.error{border-color:rgba(255,111,123,.4);color:#ffb0b7}.project-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mini-form{padding:16px;border:1px solid #202153;border-radius:16px;background:#09092c}.mini-form h4{margin:0 0 12px}.mini-form form{display:grid;gap:10px}.scene-list{display:grid;gap:8px;margin-top:12px}.scene-row{padding:11px;border:1px solid #1e1f4e;border-radius:12px;font-size:11px;color:#aaaaca}.asset-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #1a1b45;font-size:11px}.action-cell button{padding:6px 9px;font-size:10px}.danger{color:#ff939d}@media(max-width:1000px){.auth-shell{grid-template-columns:1fr}.brand-panel{display:none}.mobile-brand{display:flex}.app-shell{grid-template-columns:80px 1fr}.sidebar{padding:20px 10px}.side-brand>div:last-child,.nav-item:not(.active){font-size:0}.nav-item{justify-content:center}.nav-item span{font-size:18px;width:auto}.workspace-chip,.sidebar-bottom .ghost{display:none}.main{padding:0 20px 40px}.project-grid{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.split,.settings-grid{grid-template-columns:1fr}.queue-visual{display:none}}@media(max-width:650px){.app-shell{display:block}.sidebar{position:fixed;z-index:20;bottom:0;top:auto;width:100%;height:auto;border-right:0;border-top:1px solid #20214d;padding:8px}.side-brand,.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow:auto}.nav-item{flex:1;min-width:54px;padding:10px}.nav-item span{font-size:17px}.main{padding:0 14px 90px}.topbar{height:auto;padding:20px 0;align-items:flex-start}.top-actions .pill,.top-actions .ghost{display:none}.topbar h2{font-size:22px}.hero-card{padding:26px}.hero-card h3{font-size:28px}.stats{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr}.project-detail-grid,.api-info,.two{grid-template-columns:1fr}.auth-shell{padding:14px}.auth-card{width:100%;padding:25px}}

/* v2.0 Production Control Plane */
.control-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px 30px;margin-bottom:16px;background:linear-gradient(120deg,rgba(18,124,245,.12),rgba(116,217,96,.035)),#0b0b30}.control-hero h3{margin:6px 0 8px;font-size:28px;letter-spacing:-.035em}.control-kpis{display:grid;grid-template-columns:repeat(4,minmax(78px,1fr));gap:9px;min-width:390px}.control-kpis div{padding:14px;border:1px solid #23245a;border-radius:14px;background:#09092d;text-align:center}.control-kpis b{display:block;font-size:25px}.control-kpis span{display:block;margin-top:4px;color:#777aa6;font-size:10px}.production-list{display:grid;gap:12px}.production-card{cursor:pointer;padding:20px 22px;border:1px solid #202153;border-radius:18px;background:linear-gradient(150deg,#0d0d37,#090929);transition:.2s}.production-card:hover{border-color:#353778;transform:translateY(-1px)}.production-card.has-issue{border-color:rgba(253,202,73,.28)}.production-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.production-card h3{font-size:19px;margin:5px 0}.production-card small{color:#797ba3}.progress-track{height:7px;border-radius:999px;background:#161743;overflow:hidden;margin:18px 0 12px}.progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#127cf5,#74d960);transition:width .35s}.progress-track.large{height:10px;margin:12px 0 0}.production-metrics{display:flex;flex-wrap:wrap;gap:18px;font-size:11px;color:#7f81aa}.production-metrics b{color:#d8d9ed;margin-right:3px}.production-error{margin-top:13px;padding:10px 12px;border-radius:10px;background:rgba(255,111,123,.07);border:1px solid rgba(255,111,123,.16);color:#ffadb5;font-size:11px}.status.receiving,.status.ready{background:rgba(253,202,73,.1);color:#ffe18a}.status.assembling{background:rgba(116,217,96,.1);color:#a3ee93}.status.waiting{background:rgba(255,255,255,.06);color:#999bc0}.status.generating,.status.in_progress,.status.queued,.status.submitting,.status.downloading{background:rgba(18,124,245,.12);color:#77b4ff}.production-dialog{width:min(1120px,95vw);max-height:91vh;overflow:auto;background:#0b0b31;border:1px solid #292a61;border-radius:23px;padding:24px;box-shadow:var(--shadow)}.control-summary{display:grid;grid-template-columns:minmax(0,1fr) 420px;align-items:end;gap:25px;padding:12px 2px 18px}.control-title-row{display:flex;align-items:center;gap:12px;margin-top:10px}.control-title-row>b{font-size:28px}.stage-line{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:4px 0 20px}.stage{position:relative;text-align:center;color:#65688f;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.stage:before{content:"";position:absolute;left:-50%;right:50%;top:6px;height:2px;background:#20214f}.stage:first-child:before{display:none}.stage i{position:relative;z-index:1;display:block;width:13px;height:13px;border:2px solid #313363;background:#0b0b31;border-radius:50%;margin:0 auto 8px}.stage.completed{color:#9adf8d}.stage.completed i{border-color:#74d960;background:#74d960}.stage.completed:before,.stage.active:before{background:linear-gradient(90deg,#74d960,#127cf5)}.stage.active{color:#8dbfff}.stage.active i{border-color:#127cf5;box-shadow:0 0 0 4px rgba(18,124,245,.12)}.stage.failed{color:#ff9ca5}.stage.failed i{border-color:#ff6f7b}.control-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}.panel.compact{padding:16px}.panel.compact h3{font-size:25px;margin:6px 0}.control-alert{display:grid;gap:6px;padding:14px 16px;margin-bottom:16px;border:1px solid rgba(253,202,73,.26);background:rgba(253,202,73,.06);border-radius:14px;color:#f6d981;font-size:11px}.control-alert b{color:#fff1bd}.control-section{border:1px solid #1d1e4b;border-radius:18px;background:#09092d;padding:18px;margin-bottom:14px}.scene-timeline{display:grid;gap:8px}.scene-control{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid #1a1b4a;border-radius:13px;background:#0d0d36}.scene-number{font-size:12px;font-weight:900;color:#77b4ff}.scene-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.scene-head b{font-size:12px}.scene-main>small{color:#70739e;font-size:10px}.scene-progress{height:4px;margin:7px 0;background:#181946;border-radius:999px;overflow:hidden}.scene-progress i{display:block;height:100%;background:linear-gradient(90deg,#127cf5,#74d960)}.scene-error{font-size:10px;color:#ff9da6;margin-top:6px}.scene-actions{display:flex;gap:6px}.scene-actions .ghost{padding:7px 10px;font-size:10px}.control-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.asset-state-list,.event-list{display:grid;gap:7px;max-height:320px;overflow:auto}.asset-state-list>div,.event-list>div{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center;padding:9px 10px;border-radius:10px;background:#0d0d36}.asset-state-list b,.asset-state-list small,.event-list b,.event-list small{display:block}.asset-state-list b,.event-list b{font-size:10px}.asset-state-list small,.event-list small{font-size:9px;color:#74769d;margin-top:2px}.asset-state{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:10px}.asset-state.ok{background:rgba(116,217,96,.12);color:#9be88c}.asset-state.missing{background:rgba(255,111,123,.12);color:#ff9ca5}.event-dot{width:7px;height:7px;border-radius:50%;background:#127cf5;box-shadow:0 0 12px rgba(18,124,245,.5)}.production-footer-actions{display:flex;justify-content:flex-end;gap:9px;position:sticky;bottom:-24px;padding:16px 0 2px;background:linear-gradient(transparent,#0b0b31 35%)}
@media(max-width:900px){.control-hero,.control-summary{grid-template-columns:1fr;display:grid}.control-kpis{min-width:0;grid-template-columns:repeat(2,1fr)}.control-grid{grid-template-columns:repeat(2,1fr)}.control-bottom-grid{grid-template-columns:1fr}.stage span{display:none}.scene-control{grid-template-columns:42px minmax(0,1fr)}.scene-actions{grid-column:2}}
@media(max-width:600px){.control-grid{grid-template-columns:1fr 1fr}.production-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px}.production-dialog{width:96vw;padding:16px}.control-summary{gap:10px}.stage-line{margin-bottom:12px}.scene-control{padding:10px}.control-kpis{grid-template-columns:repeat(2,1fr)}}

/* v2.1 Billing, Plans & Usage */
.billing-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:16px;margin-bottom:18px}.billing-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.billing-title-row h3{margin-bottom:4px}.billing-note{padding:28px}.usage-list{display:grid;gap:14px;margin-top:26px;padding-top:20px;border-top:1px solid #1d1e4b}.usage-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:7px}.usage-row span{font-size:11px;color:#8b8daf}.usage-row b{font-size:11px;color:#e8e9f6}.usage-row b small{font-size:10px;color:#686b94;font-weight:600}.usage-track{height:7px;border-radius:999px;background:#171844;overflow:hidden}.usage-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#127cf5,#74d960);transition:width .25s}.usage-track.danger i{background:linear-gradient(90deg,#fdca49,#ff8f70)}.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.plan-card{display:flex;flex-direction:column;min-height:390px;padding:24px;border:1px solid #202153;border-radius:20px;background:linear-gradient(150deg,#0d0d37,#090929)}.plan-card.current{border-color:rgba(116,217,96,.34);box-shadow:inset 0 0 0 1px rgba(116,217,96,.05)}.plan-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.plan-card-head small{font-size:9px;color:#6d70a0;letter-spacing:.1em}.plan-card h3{margin:5px 0 11px;font-size:25px}.plan-card>p{min-height:48px;color:#8587aa;font-size:11px;line-height:1.6}.plan-limit-list{display:grid;gap:9px;margin:18px 0;padding:15px;border:1px solid #1b1c49;border-radius:14px;background:#09092d}.plan-limit-list span{display:flex;align-items:center;justify-content:space-between;color:#777aa2;font-size:10px}.plan-limit-list b{color:#d6d8ed;font-size:11px}.plan-card .feature-list{margin:0 0 20px;font-size:10px}.plan-card button{margin-top:auto}.plan-card button:disabled{opacity:.62;cursor:not-allowed}@media(max-width:1000px){.billing-grid{grid-template-columns:1fr}.plans-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.plans-grid{grid-template-columns:1fr}.billing-title-row{display:block}.billing-title-row .pill{display:inline-flex;margin-top:10px}.subscription-card{padding:24px}.subscription-card h3{font-size:32px}}
.billing-actions{display:flex;gap:10px;margin-top:18px}.toggle-line{display:flex;align-items:center;gap:10px}.toggle-line input{width:auto}.admin-plan-list{display:grid;gap:12px}.admin-plan-row{border:1px solid var(--line,#263249);border-radius:14px;padding:14px;display:grid;gap:10px}.admin-plan-row .head{display:flex;justify-content:space-between;align-items:center;gap:12px}.admin-plan-row .fields{display:grid;grid-template-columns:1fr 110px;gap:8px}.admin-plan-row .actions{display:flex;gap:8px;flex-wrap:wrap}.admin-plan-row code{font-size:11px;overflow-wrap:anywhere}.price{font-size:24px;font-weight:800}.plan-card .price{margin:8px 0 14px}.stripe-mode-pill{font-size:11px;text-transform:uppercase;letter-spacing:.08em}.hidden{display:none}
@media(max-width:720px){.admin-plan-row .fields{grid-template-columns:1fr}.billing-actions{flex-direction:column}}
.admin-kpis{grid-template-columns:repeat(3,minmax(90px,1fr));min-width:min(580px,50vw)}.admin-money-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}.money-summary{display:grid;gap:8px}.money-line{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid #202153;border-radius:13px;background:#09092d}.money-line b{font-size:20px}.money-line span{font-size:10px;color:#8587aa;text-transform:uppercase;letter-spacing:.06em}.admin-customer-panel{margin-bottom:16px}.admin-search{display:flex;gap:8px;align-items:center}.admin-search input{min-width:300px}.admin-table{min-width:980px}.admin-table td b,.admin-table td small{display:block}.admin-table td small{margin-top:4px;color:#7779a4}.compact{padding:7px 10px;font-size:10px}.stripe-inline{display:inline-block;margin:5px 0 0;color:#8dbbff}.admin-table-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 4px 0}.admin-activity-grid{margin-top:16px}.admin-event-list{display:grid;gap:9px;max-height:430px;overflow:auto}.admin-event{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:12px;border:1px solid #1d1e4b;border-radius:13px;background:#09092d}.admin-event b,.admin-event small{display:block}.admin-event small{color:#7779a4;font-size:10px;margin-top:4px}.admin-event p{grid-column:1/-1;margin:2px 0 0;color:#ff9ea7;font-size:10px}.event-right{text-align:right}.customer-admin-head,.workspace-admin-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.customer-admin-head{padding:16px;border:1px solid #202153;border-radius:15px;background:#09092d}.customer-admin-head b,.customer-admin-head small{display:block}.customer-admin-head small{margin-top:5px;color:#7779a4}.customer-admin-actions{display:flex;justify-content:flex-end;margin:12px 0}.danger-btn{border:1px solid rgba(255,111,123,.4);background:rgba(255,111,123,.09);color:#ff9ea7;padding:10px 14px;border-radius:12px;font-weight:800}.warning-box{padding:11px 13px;margin-top:10px;border:1px solid rgba(253,202,73,.3);background:rgba(253,202,73,.06);color:#ffe08a;border-radius:12px;font-size:11px}.workspace-admin-list{display:grid;gap:13px}.workspace-admin-title h4{margin:4px 0 0}.admin-workspace-stats{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.admin-workspace-stats span{padding:7px 9px;background:#11113c;border:1px solid #222353;border-radius:999px;font-size:9px;color:#9295ba}.provider-ids{display:grid;gap:5px;margin:10px 0}.provider-ids small{color:#7679a2}.provider-ids code{color:#91baff;overflow-wrap:anywhere}.mini-form .actions{display:flex;gap:8px;flex-wrap:wrap}.admin-customer-dialog{width:min(980px,94vw)}
@media(max-width:1000px){.admin-money-grid{grid-template-columns:1fr}.admin-kpis{min-width:0;grid-template-columns:repeat(3,1fr)}.admin-search{width:100%}.admin-search input{min-width:0;flex:1}.admin-customer-panel .panel-head{align-items:stretch;flex-direction:column}.admin-settings-grid,.admin-activity-grid{grid-template-columns:1fr}}
@media(max-width:650px){.admin-kpis{grid-template-columns:repeat(2,1fr)}.customer-admin-head,.workspace-admin-title{align-items:flex-start;flex-direction:column}.admin-search{flex-direction:column}.admin-search button,.admin-search input{width:100%}}


/* v2.3.2 — Wide detail dialogs.
   The generic dialog is intentionally compact for create/auth forms, but the
   production/customer/project detail surfaces need a real control-plane canvas. */
#productionDetailDialog{
  width:min(1600px,calc(100vw - 56px));
  max-width:none;
  max-height:calc(100vh - 32px);
  overflow:visible;
}
#productionDetailDialog .production-dialog{
  width:100%;
  max-width:none;
  max-height:calc(100vh - 32px);
  overflow:auto;
}
#adminCustomerDialog{
  width:min(1440px,calc(100vw - 56px));
  max-width:none;
  max-height:calc(100vh - 32px);
  overflow:visible;
}
#adminCustomerDialog .admin-customer-dialog{
  width:100%;
  max-width:none;
  max-height:calc(100vh - 32px);
  overflow:auto;
}
#projectDetailDialog{
  width:min(1320px,calc(100vw - 56px));
  max-width:none;
  max-height:calc(100vh - 32px);
  overflow:visible;
}
#projectDetailDialog .dialog-card.large{
  width:100%;
  max-width:none;
  max-height:calc(100vh - 32px);
  overflow:auto;
}
/* Prevent wide content from forcing a nested horizontal viewport. */
#productionDetailContent,#adminCustomerDetail,#projectDetailContent{min-width:0;max-width:100%}
#productionDetailDialog .table-wrap,#adminCustomerDialog .table-wrap,#projectDetailDialog .table-wrap{max-width:100%}
@media(max-width:1100px){
  #productionDetailDialog,#adminCustomerDialog,#projectDetailDialog{width:calc(100vw - 28px);max-height:calc(100vh - 20px)}
  #productionDetailDialog .production-dialog,#adminCustomerDialog .admin-customer-dialog,#projectDetailDialog .dialog-card.large{max-height:calc(100vh - 20px)}
  #productionDetailDialog .control-summary{grid-template-columns:1fr}
  #productionDetailDialog .control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  #productionDetailDialog,#adminCustomerDialog,#projectDetailDialog{width:calc(100vw - 12px);max-height:calc(100vh - 12px)}
  #productionDetailDialog .production-dialog,#adminCustomerDialog .admin-customer-dialog,#projectDetailDialog .dialog-card.large{padding:15px;border-radius:16px;max-height:calc(100vh - 12px)}
  #productionDetailDialog .control-grid{grid-template-columns:1fr}
  #productionDetailDialog .stage-line{overflow-x:auto;padding-bottom:8px}
}


/* v2.5.5 provider diagnostics + stop controls */
.provider-diagnostic{margin-top:16px;padding:18px;border:1px solid #2b2d68;border-radius:16px;background:#09092e}.diagnostic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.diagnostic-grid>div{padding:12px;border:1px solid #202153;border-radius:12px;background:#0d0d35}.diagnostic-grid small,.diagnostic-grid b{display:block}.diagnostic-grid b{margin-top:7px}.status.valid{background:rgba(116,217,96,.1);color:#9eeb8d}.status.invalid,.status.inconclusive,.status.stopped{background:rgba(255,111,123,.1);color:#ff98a1}.action-cell{display:flex;gap:8px;align-items:center;flex-wrap:wrap}@media(max-width:900px){.diagnostic-grid{grid-template-columns:1fr 1fr}}

/* v2.6.0 — Reparo Vio visual system + Light/Dark dashboard */
:root,
html[data-theme="light"]{
  --blue:#1a7cf7;
  --green:#72d961;
  --navy:#010135;
  --yellow:#fdca49;
  --danger:#e85863;
  --bg:#f7f9fc;
  --bg2:#f3f8ff;
  --panel:#ffffff;
  --panel-soft:#fbfcff;
  --panel-alt:#f7f9fc;
  --line:#e6eaf1;
  --line-strong:#d9e0ea;
  --text:#10112c;
  --muted:#60667a;
  --muted-2:#7a8194;
  --sidebar-bg:rgba(255,255,255,.94);
  --topbar-bg:rgba(247,249,252,.86);
  --input-bg:#ffffff;
  --nav-hover:#f3f8ff;
  --nav-active:#edf5ff;
  --shadow:0 22px 60px rgba(1,1,53,.10);
  --shadow-soft:0 10px 32px rgba(1,1,53,.08);
  --card-shadow:0 12px 32px rgba(1,1,53,.045);
  --radius:24px;
  color-scheme:light;
}
html[data-theme="dark"]{
  --bg:#050522;
  --bg2:#0b0b32;
  --panel:#0b0b30;
  --panel-soft:#0f0f3a;
  --panel-alt:#09092d;
  --line:#202153;
  --line-strong:#2c2e68;
  --text:#f7f8ff;
  --muted:#9a9bbd;
  --muted-2:#7779a4;
  --sidebar-bg:rgba(7,7,37,.95);
  --topbar-bg:rgba(5,5,34,.86);
  --input-bg:#08082b;
  --nav-hover:#11113d;
  --nav-active:#11113d;
  --shadow:0 24px 70px rgba(0,0,0,.28);
  --shadow-soft:0 14px 36px rgba(0,0,0,.22);
  --card-shadow:0 12px 32px rgba(0,0,0,.12);
  color-scheme:dark;
}

html,body{
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  background:var(--bg);
  color:var(--text);
}
body{
  background:
    radial-gradient(circle at 88% 0%,rgba(26,124,247,.075),transparent 28%),
    radial-gradient(circle at 14% 100%,rgba(114,217,97,.06),transparent 25%),
    var(--bg);
  transition:background-color .2s ease,color .2s ease;
}
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 20% 0,rgba(26,124,247,.14),transparent 34%),
    radial-gradient(circle at 90% 100%,rgba(114,217,96,.09),transparent 30%),
    var(--bg);
}

/* Shared Reparo Vio surface language */
.eyebrow{
  color:var(--blue);
  letter-spacing:.10em;
  font-size:11px;
  font-weight:900;
}
.eyebrow::before{
  content:"";
  display:inline-block;
  width:20px;
  height:2px;
  margin-right:8px;
  vertical-align:middle;
  border-radius:4px;
  background:linear-gradient(90deg,var(--blue),var(--green));
}
.brand-mark{
  background:linear-gradient(145deg,var(--blue),#0461cd 58%,#22b7ff);
  box-shadow:0 14px 34px rgba(26,124,247,.24);
  color:#fff;
}
.brand-mark.small{border-radius:11px}
.primary,.ghost,.theme-toggle{min-height:44px;border-radius:12px;font-weight:800;transition:.2s ease}
.primary{
  background:var(--blue);
  color:#fff;
  box-shadow:0 12px 30px rgba(26,124,247,.22);
}
.primary:hover{transform:translateY(-1px);box-shadow:0 15px 34px rgba(26,124,247,.30)}
.ghost{
  background:var(--panel);
  border:1px solid var(--line);
  color:var(--text);
  box-shadow:none;
}
.ghost:hover{border-color:#c9ddfb;background:var(--nav-hover)}
.theme-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 13px;
  border:1px solid var(--line);
  background:var(--panel);
  color:var(--text);
  box-shadow:0 7px 20px rgba(1,1,53,.04);
}
.theme-toggle:hover{border-color:#c9ddfb;transform:translateY(-1px)}
.theme-icon{font-size:15px;line-height:1}.theme-label{font-size:11px}
.auth-theme-toggle{position:fixed;right:28px;top:28px;z-index:20}
html[data-theme="dark"] .ghost,
html[data-theme="dark"] .theme-toggle{background:#0c0c32;border-color:#25265a;color:#e8e9f6}
html[data-theme="dark"] .ghost:hover,
html[data-theme="dark"] .theme-toggle:hover{background:#11113d;border-color:#343671}

/* Authentication */
.auth-shell{background:var(--bg);position:relative}
.brand-panel{
  border:1px solid rgba(1,1,53,.08);
  background:
    radial-gradient(circle at 80% 20%,rgba(114,217,97,.16),transparent 28%),
    radial-gradient(circle at 60% 42%,rgba(26,124,247,.24),transparent 32%),
    linear-gradient(135deg,#010135 0%,#02033c 62%,#001c48 100%);
  box-shadow:0 22px 60px rgba(1,1,53,.12);
}
.brand-copy h1,.brand-copy p,.brand-panel .eyebrow{color:#fff}
.brand-panel .eyebrow{opacity:.9}.brand-copy p{color:#d7dcf1}
.signal-grid div{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.12);backdrop-filter:blur(12px)}
.signal-grid span{color:#c7cce3}
.auth-card{
  background:rgba(255,255,255,.94);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  color:var(--text);
}
html[data-theme="dark"] .auth-card{background:rgba(15,15,55,.84);border-color:rgba(255,255,255,.08)}
.tabs{background:var(--panel-alt);border:1px solid var(--line)}
.tab{color:var(--muted)}
.tab.active{background:var(--panel);color:var(--navy);box-shadow:0 5px 16px rgba(1,1,53,.06)}
html[data-theme="dark"] .tab.active{background:#171749;color:#fff}
label{color:var(--muted);font-weight:800}
input,select,textarea{
  background:var(--input-bg);
  border:1px solid var(--line);
  color:var(--text);
}
input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,124,247,.11)}
.auth-foot{color:var(--muted-2)}

/* Shell / navigation */
.app-shell{background:transparent;grid-template-columns:262px 1fr}
.sidebar{
  background:var(--sidebar-bg);
  border-right:1px solid var(--line);
  box-shadow:8px 0 28px rgba(1,1,53,.025);
  backdrop-filter:blur(18px);
  padding:24px 17px;
}
.side-brand{padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:17px}
.side-brand b{font-size:17px;color:var(--navy)}
.side-brand small{color:var(--muted-2);letter-spacing:.10em;text-transform:uppercase;font-weight:800}
html[data-theme="dark"] .side-brand b{color:#fff}
.nav-item{
  color:var(--muted);
  border:1px solid transparent;
  border-radius:13px;
  font-size:13px;
  padding:11px 12px;
}
.nav-item span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:10px;
  color:var(--blue);
  background:#edf5ff;
  font-size:14px;
  font-weight:900;
}
.nav-item:hover{background:var(--nav-hover);color:var(--text)}
.nav-item.active{
  background:var(--nav-active);
  border-color:#dceafb;
  color:var(--navy);
  box-shadow:inset 3px 0 0 var(--blue);
}
.nav-item.active span{background:var(--blue);color:#fff}
html[data-theme="dark"] .nav-item span{background:rgba(26,124,247,.12);color:#78b4ff}
html[data-theme="dark"] .nav-item.active{color:#fff;border-color:#24265c}
.workspace-chip{
  background:var(--panel);
  border:1px solid var(--line);
  box-shadow:var(--card-shadow);
}
.workspace-chip small{color:var(--muted-2)}
.main{padding:0 38px 60px}
.topbar{
  position:sticky;
  top:0;
  z-index:15;
  height:96px;
  margin-bottom:28px;
  background:var(--topbar-bg);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(18px);
}
.topbar h2{color:var(--text);font-size:28px}
.pill{
  background:#eef9eb;
  border:1px solid #d8efcf;
  color:#218b43;
}
html[data-theme="dark"] .pill{background:rgba(114,217,96,.1);border-color:rgba(114,217,96,.2);color:#9ff08c}

/* Hero + bento cards */
.hero-card,.control-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 90% 10%,rgba(114,217,97,.14),transparent 24%),
    radial-gradient(circle at 72% 70%,rgba(26,124,247,.10),transparent 28%),
    linear-gradient(145deg,#fff,#f4f9ff);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
}
.hero-card::after,.control-hero::after{
  content:"";
  position:absolute;
  width:180px;height:180px;border-radius:50%;
  right:-65px;top:-70px;
  background:rgba(26,124,247,.05);
  pointer-events:none;
}
html[data-theme="dark"] .hero-card,
html[data-theme="dark"] .control-hero{
  background:linear-gradient(120deg,rgba(26,124,247,.15),rgba(114,217,96,.035)),#0b0b31;
  border-color:#202153;
}
.hero-card h3,.control-hero h3{color:var(--navy)}
html[data-theme="dark"] .hero-card h3,
html[data-theme="dark"] .control-hero h3{color:#fff}
.hero-card p{color:var(--muted)}
.queue-visual div{
  background:#fff;
  border:1px solid #dce8f7;
  color:var(--blue);
  box-shadow:0 8px 24px rgba(1,1,53,.05);
}
html[data-theme="dark"] .queue-visual div{background:#10103d;border-color:#2d2f68;color:#a5a8cf}
.queue-visual strong{color:#fff;box-shadow:0 12px 28px rgba(26,124,247,.18)}

.stats{gap:16px;margin:20px 0}
.stats article{
  position:relative;
  overflow:hidden;
  padding:24px;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:20px;
  box-shadow:var(--card-shadow);
  transition:.22s ease;
}
.stats article:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft)}
.stats article::after{content:"";position:absolute;width:92px;height:92px;border-radius:50%;right:-36px;top:-38px;background:rgba(26,124,247,.07)}
.stats article:nth-child(2)::after{background:rgba(114,217,97,.12)}
.stats article:nth-child(3)::after{background:rgba(253,202,73,.14)}
.stats article:nth-child(4)::after{background:rgba(1,1,53,.07)}
.stats span,.stats small,.panel small{color:var(--muted-2)}
.stats b{color:var(--navy);font-size:36px;letter-spacing:-.04em}
html[data-theme="dark"] .stats b{color:#fff}

.panel,.project-card,.production-card,.plan-card,.mini-form,.control-section,
.diagnostic-grid>div,.money-line,.admin-event,.customer-admin-head{
  background:var(--panel);
  border-color:var(--line);
  box-shadow:var(--card-shadow);
}
.panel{border:1px solid var(--line);border-radius:20px}
.panel h3,.project-card h3,.production-card h3,.plan-card h3,.mini-form h4{color:var(--text)}
.list.empty{color:var(--muted-2)}
.list-row,.scene-control,.asset-state-list>div,.event-list>div,.plan-limit-list,.admin-workspace-stats span{
  background:var(--panel-alt);
  border-color:var(--line);
}
.list-row{border:1px solid var(--line)}
.link{color:var(--blue)}
.provider-summary{border-color:var(--line-strong);background:linear-gradient(145deg,var(--panel),var(--panel-alt))}
.provider-summary small,.section-actions p,.muted,.project-card p,.project-card footer,.production-card small,
.production-metrics,.scene-main>small,.asset-state-list small,.event-list small,.plan-card>p,.usage-row span,
.admin-event small,.customer-admin-head small{color:var(--muted)}

/* Project / production / plan cards */
.project-card,.production-card,.plan-card{
  border:1px solid var(--line);
  border-radius:20px;
  transition:.24s ease;
}
.project-card{min-height:190px;background:linear-gradient(145deg,#fff,#fbfdff)}
html[data-theme="dark"] .project-card,
html[data-theme="dark"] .production-card,
html[data-theme="dark"] .plan-card{background:linear-gradient(150deg,#0d0d37,#090929)}
.project-card:hover,.production-card:hover,.plan-card:hover{
  transform:translateY(-3px);
  border-color:#cfe2ff;
  box-shadow:var(--shadow-soft);
}
.project-card .project-type{color:var(--blue);font-weight:900}
.production-card.has-issue{border-color:rgba(253,202,73,.55)}
.production-metrics b{color:var(--text)}
.progress-track,.usage-track,.scene-progress{background:#edf1f7}
html[data-theme="dark"] .progress-track,
html[data-theme="dark"] .usage-track,
html[data-theme="dark"] .scene-progress{background:#171844}
.progress-track i,.usage-track i,.scene-progress i{background:linear-gradient(90deg,var(--blue),var(--green))}

/* Light status chips */
.status.completed,.status.connected,.status.assembling,.status.valid{background:#edf9e9;color:#238347}
.status.running,.status.submitted,.status.polling,.status.generating,.status.in_progress,.status.queued,.status.submitting,.status.downloading{background:#eaf3ff;color:#0c67d0}
.status.pending,.status.receiving,.status.ready{background:#fff6d8;color:#9b7600}
.status.waiting{background:#f0f2f6;color:#6f7484}
.status.failed,.status.cancelled,.status.invalid,.status.inconclusive,.status.stopped{background:#fff0f1;color:#c83c49}
html[data-theme="dark"] .status.completed,
html[data-theme="dark"] .status.connected,
html[data-theme="dark"] .status.assembling,
html[data-theme="dark"] .status.valid{background:rgba(114,217,96,.1);color:#9eeb8d}
html[data-theme="dark"] .status.running,
html[data-theme="dark"] .status.submitted,
html[data-theme="dark"] .status.polling,
html[data-theme="dark"] .status.generating,
html[data-theme="dark"] .status.in_progress,
html[data-theme="dark"] .status.queued,
html[data-theme="dark"] .status.submitting,
html[data-theme="dark"] .status.downloading{background:rgba(26,124,247,.12);color:#77b4ff}
html[data-theme="dark"] .status.pending,
html[data-theme="dark"] .status.receiving,
html[data-theme="dark"] .status.ready{background:rgba(253,202,73,.1);color:#ffe18a}
html[data-theme="dark"] .status.waiting{background:rgba(255,255,255,.06);color:#999bc0}
html[data-theme="dark"] .status.failed,
html[data-theme="dark"] .status.cancelled,
html[data-theme="dark"] .status.invalid,
html[data-theme="dark"] .status.inconclusive,
html[data-theme="dark"] .status.stopped{background:rgba(255,111,123,.1);color:#ff98a1}

/* Tables */
.table-wrap{background:var(--panel)}
table{background:transparent}
th,td{border-bottom:1px solid var(--line)}
th{color:var(--muted-2);background:var(--panel-alt)}
td{color:var(--text)}

/* Production control plane */
.control-kpis div{background:var(--panel);border-color:var(--line);box-shadow:0 8px 24px rgba(1,1,53,.035)}
.control-kpis b{color:var(--navy)}
.control-kpis span{color:var(--muted-2)}
html[data-theme="dark"] .control-kpis div{background:#09092d;border-color:#23245a}
html[data-theme="dark"] .control-kpis b{color:#fff}
.production-dialog,.dialog-card{
  background:var(--panel);
  border:1px solid var(--line);
  color:var(--text);
  box-shadow:0 28px 80px rgba(1,1,53,.16);
}
dialog::backdrop{background:rgba(1,1,32,.48);backdrop-filter:blur(6px)}
.icon-btn{background:var(--panel-alt);border-color:var(--line);color:var(--text)}
.control-section{border:1px solid var(--line)}
.stage{color:var(--muted-2)}
.stage:before{background:var(--line)}
.stage i{background:var(--panel);border-color:var(--line-strong)}
.stage.completed{color:#318d48}.stage.active{color:var(--blue)}.stage.failed{color:#cf4b56}
.scene-control{border:1px solid var(--line)}
.scene-number{color:var(--blue)}
.control-alert{color:#886900;background:#fff9e5;border-color:#f0df9e}
.control-alert b{color:#6f5600}
html[data-theme="dark"] .control-alert{color:#f6d981;background:rgba(253,202,73,.06);border-color:rgba(253,202,73,.26)}
html[data-theme="dark"] .control-alert b{color:#fff1bd}
.production-footer-actions{background:linear-gradient(transparent,var(--panel) 35%)}

/* Billing, admin and provider diagnostics */
.provider-logo{background:linear-gradient(145deg,#edf5ff,#f3fbff);color:var(--blue);border:1px solid #dceafb}
html[data-theme="dark"] .provider-logo{background:linear-gradient(135deg,var(--blue),var(--green));color:#fff;border:0}
.secret-box{background:#fffaf0;border-color:#f2dea9}
.secret-box code{color:#9b7600}
html[data-theme="dark"] .secret-box{background:rgba(253,202,73,.05);border-color:rgba(253,202,73,.25)}
html[data-theme="dark"] .secret-box code{color:#ffe087}
.api-info code,.provider-ids code,.stripe-inline{color:var(--blue)}
.plan-status span{background:#edf9e9;color:#238347}
.feature-list{color:var(--muted)}
.plan-card.current{border-color:#bde8b1;box-shadow:0 12px 32px rgba(114,217,97,.11)}
.plan-card-head small{color:var(--muted-2)}
.plan-limit-list{border:1px solid var(--line)}
.plan-limit-list span{color:var(--muted-2)}
.plan-limit-list b{color:var(--text)}
.usage-list{border-top-color:var(--line)}
.usage-row b{color:var(--text)}
.usage-row b small{color:var(--muted-2)}
.admin-plan-row{border-color:var(--line);background:var(--panel)}
.money-line{border:1px solid var(--line)}
.money-line span{color:var(--muted-2)}
.admin-event{border:1px solid var(--line)}
.admin-event p,.scene-error{color:#cf4b56}
.customer-admin-head{border:1px solid var(--line)}
.warning-box{background:#fff9e5;color:#8b6b00;border-color:#f0df9e}
html[data-theme="dark"] .warning-box{background:rgba(253,202,73,.06);color:#ffe08a;border-color:rgba(253,202,73,.3)}
.provider-diagnostic{background:var(--panel-alt);border-color:var(--line)}
.diagnostic-grid>div{border:1px solid var(--line)}

/* Toast */
.toast{background:var(--navy);border-color:#24255c;color:#fff;box-shadow:0 18px 48px rgba(1,1,53,.20)}
.toast.error{background:#35131a;border-color:#7e2f39;color:#ffd6d9}

/* Small details */
::selection{background:rgba(26,124,247,.18)}
*{scrollbar-color:#c7d2e1 transparent}
html[data-theme="dark"] *{scrollbar-color:#37396c transparent}

@media(max-width:1000px){
  .app-shell{grid-template-columns:82px 1fr}
  .sidebar{padding:18px 10px}
  .nav-item.active{box-shadow:none}
  .nav-item span{width:34px;height:34px}
  .main{padding:0 22px 42px}
}
@media(max-width:650px){
  .auth-theme-toggle{right:16px;top:16px}
  .theme-toggle .theme-label{display:none}
  .theme-toggle{width:44px;padding:0}
  .sidebar{background:var(--sidebar-bg);border-top:1px solid var(--line)}
  .topbar{padding:17px 0;height:auto}
  .top-actions #themeToggleBtn{display:inline-flex}
  .top-actions .pill,.top-actions .ghost:not(.theme-toggle){display:none}
  .main{padding:0 14px 92px}
  .hero-card{border-radius:20px}
}

/* v2.6.1 — SomarSans + Reparo Vio spectrum UI refinement */
@font-face{
  font-family:"SomarSans";
  src:url("https://engine.reparo.dev/SomarSans-Regular.woff2") format("woff2");
  font-style:normal;
  font-weight:400;
  font-display:swap;
}

:root,
html[data-theme="light"]{
  --violet:#8d5cf6;
  --red:#ff6178;
  --turquoise:#43d7d1;
  --cyan:#22b7ff;
  --vio-blue:#1a7cf7;
  --vio-green:#72d961;
  --vio-yellow:#fdca49;
  --vio-navy:#010135;
  --bg:#f6f8fc;
  --bg2:#f3f7fd;
  --panel:#ffffff;
  --panel-alt:#f8faff;
  --line:#e2e8f1;
  --line-strong:#d5deeb;
  --text:#11132f;
  --muted:#5d6479;
  --muted-2:#747c91;
  --sidebar-bg:rgba(255,255,255,.96);
  --topbar-bg:rgba(246,248,252,.88);
  --nav-hover:rgba(26,124,247,.055);
  --nav-active:linear-gradient(100deg,rgba(26,124,247,.115),rgba(141,92,246,.075) 58%,rgba(67,215,209,.025));
}
html[data-theme="dark"]{
  --violet:#a679ff;
  --red:#ff7186;
  --turquoise:#50e1dc;
  --cyan:#32c0ff;
  --bg:#050522;
  --bg2:#09092f;
  --panel:#0b0c32;
  --panel-alt:#10113b;
  --line:#232454;
  --line-strong:#30326a;
  --text:#f8f9ff;
  --muted:#aeb1cb;
  --muted-2:#878aab;
  --nav-hover:rgba(26,124,247,.09);
  --nav-active:linear-gradient(100deg,rgba(26,124,247,.18),rgba(141,92,246,.12) 58%,rgba(67,215,209,.045));
}

html{font-size:16px}
html,body,button,input,select,textarea{
  font-family:"SomarSans",Arial,sans-serif;
}
body{font-size:16px;line-height:1.62}
button,input,select,textarea{font-size:15px}
h1,h2,h3,h4,b,strong,.primary,.ghost,.tab,.nav-item{font-family:"SomarSans",Arial,sans-serif}

/* Vio ambient page backgrounds */
body{
  background:
    radial-gradient(circle at 92% 3%,rgba(141,92,246,.075),transparent 24%),
    radial-gradient(circle at 78% 28%,rgba(67,215,209,.055),transparent 24%),
    radial-gradient(circle at 10% 96%,rgba(114,217,97,.065),transparent 24%),
    radial-gradient(rgba(1,1,53,.035) .72px,transparent .72px),
    var(--bg);
  background-size:auto,auto,auto,24px 24px,auto;
}
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 84% 8%,rgba(141,92,246,.17),transparent 25%),
    radial-gradient(circle at 67% 32%,rgba(26,124,247,.17),transparent 27%),
    radial-gradient(circle at 10% 96%,rgba(114,217,97,.075),transparent 23%),
    radial-gradient(rgba(255,255,255,.035) .7px,transparent .7px),
    linear-gradient(150deg,#050522,#07072b 58%,#06102f);
  background-size:auto,auto,auto,24px 24px,auto;
}

/* Global typography enlargement */
.eyebrow{font-size:12px;letter-spacing:.105em;line-height:1.25}
.eyebrow::before{width:24px;height:2px;margin-right:9px}
.topbar h2{font-size:32px;line-height:1.15;margin-top:7px}
.panel h3,.project-card h3,.production-card h3,.plan-card h3,.control-section h3{font-size:21px;line-height:1.25}
.panel p,.project-card p,.production-card p,.section-actions p,.muted{font-size:15px;line-height:1.68}
.panel small,.stats span,.stats small{font-size:12px}
label{font-size:14px;gap:9px}
input,select,textarea{padding:14px 15px;min-height:48px;border-radius:13px}
.primary,.ghost,.theme-toggle{font-size:15px;min-height:46px;padding:12px 17px}
.theme-label{font-size:13px}
.status{font-size:11px;padding:7px 10px}

/* One bundled Vio icon file, used across dashboard navigation and visual cards */
.vio-icon{width:19px;height:19px;display:block;overflow:visible;color:inherit}
.nav-iconbox .vio-icon{width:18px;height:18px}
.mini-icon .vio-icon,.provider-logo .vio-icon{width:20px;height:20px}

/* Authentication hero — same visual language as the Vio landing hero, no text/card collisions */
.auth-shell{
  grid-template-columns:minmax(0,1.12fr) minmax(440px,.88fr);
  gap:22px;
  padding:24px;
  align-items:stretch;
}
.brand-panel{
  min-height:calc(100vh - 48px);
  display:flex;
  flex-direction:column;
  padding:clamp(48px,6vw,92px);
  background:
    radial-gradient(circle at 82% 22%,rgba(114,217,97,.18),transparent 26%),
    radial-gradient(circle at 66% 34%,rgba(26,124,247,.26),transparent 30%),
    radial-gradient(circle at 26% 82%,rgba(141,92,246,.15),transparent 28%),
    linear-gradient(130deg,#010135 0%,#02033c 62%,#001c48 100%);
}
.brand-panel::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.16;
  background-image:radial-gradient(rgba(255,255,255,.72) 1px,transparent 1px);
  background-size:22px 22px;
  -webkit-mask-image:linear-gradient(to bottom,#000,transparent 82%);
  mask-image:linear-gradient(to bottom,#000,transparent 82%);
  pointer-events:none;
}
.brand-panel:after{
  width:560px;height:560px;right:-210px;bottom:-260px;
  border-color:rgba(67,215,209,.16);
  box-shadow:0 0 0 64px rgba(26,124,247,.045),0 0 0 128px rgba(141,92,246,.025);
}
.brand-mark{background:linear-gradient(145deg,var(--cyan),var(--blue) 52%,var(--violet));box-shadow:0 18px 45px rgba(26,124,247,.28)}
.brand-copy{
  position:relative;
  z-index:2;
  margin-top:clamp(44px,6vh,84px);
  max-width:780px;
}
.brand-copy h1{
  font-size:clamp(52px,4.55vw,78px);
  line-height:1.02;
  letter-spacing:-.035em;
  margin:15px 0 24px;
  max-width:760px;
}
.brand-copy p{font-size:19px;line-height:1.62;max-width:700px;margin-bottom:0}
.signal-grid{
  position:relative;
  left:auto;
  bottom:auto;
  margin-top:auto;
  padding-top:40px;
  width:min(680px,100%);
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.signal-grid div{
  min-width:0;
  padding:18px 19px;
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  border-color:rgba(255,255,255,.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.signal-grid div:nth-child(1){border-top:2px solid var(--green)}
.signal-grid div:nth-child(2){border-top:2px solid var(--violet)}
.signal-grid div:nth-child(3){border-top:2px solid var(--turquoise)}
.signal-grid b{font-size:15px;color:#fff}.signal-grid span{font-size:13px;line-height:1.4}
.auth-card{width:min(500px,90%);padding:40px;border-radius:28px}
.auth-tabs .tab{font-size:15px;padding:13px}
.auth-form,.stack-form{gap:18px;margin-top:26px}
.auth-foot{font-size:13px;line-height:1.55;margin-top:23px}

/* Sidebar / active-navigation treatment */
.app-shell{grid-template-columns:286px 1fr}
.sidebar{
  padding:25px 18px;
  background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(249,252,255,.96) 68%,rgba(244,249,255,.96));
}
html[data-theme="dark"] .sidebar{background:linear-gradient(180deg,rgba(7,7,37,.97),rgba(8,8,43,.97) 68%,rgba(7,12,43,.97))}
.side-brand{gap:13px;padding:0 10px 25px;margin-bottom:20px}
.side-brand b{font-size:19px}.side-brand small{font-size:12px;margin-top:1px}
nav{gap:7px}
.nav-item{
  min-height:52px;
  position:relative;
  gap:13px;
  padding:9px 12px;
  border-radius:16px;
  font-size:15px;
  font-weight:700;
  letter-spacing:0;
}
.nav-item span.nav-iconbox{
  width:36px;height:36px;min-width:36px;
  border-radius:12px;
  color:var(--blue);
  background:#edf5ff;
  transition:.22s ease;
}
.nav-item:nth-child(2) span.nav-iconbox{color:var(--violet);background:#f3eeff}
.nav-item:nth-child(3) span.nav-iconbox{color:var(--turquoise);background:#eafbf9}
.nav-item:nth-child(4) span.nav-iconbox{color:var(--green);background:#effbea}
.nav-item:nth-child(5) span.nav-iconbox{color:#e0a000;background:#fff8df}
.nav-item:nth-child(6) span.nav-iconbox{color:var(--red);background:#fff0f3}
.nav-item:nth-child(7) span.nav-iconbox{color:var(--blue);background:#edf5ff}
.nav-item:nth-child(8) span.nav-iconbox{color:var(--violet);background:#f3eeff}
.nav-item:hover{background:linear-gradient(100deg,rgba(26,124,247,.055),rgba(141,92,246,.025));transform:translateX(2px)}
.nav-item.active{
  background:var(--nav-active);
  border-color:rgba(26,124,247,.16);
  color:var(--navy);
  box-shadow:0 10px 24px rgba(26,124,247,.075);
}
.nav-item.active::before{
  content:"";
  position:absolute;
  left:-1px;top:14px;
  width:3px;height:24px;border-radius:8px;
  background:linear-gradient(180deg,var(--green),var(--blue),var(--violet));
}
.nav-item.active::after{
  content:"";
  width:18px;height:2px;border-radius:4px;
  margin-left:auto;
  background:linear-gradient(90deg,var(--blue),var(--green));
  opacity:.9;
}
.nav-item.active span.nav-iconbox{
  color:#fff;
  background:linear-gradient(145deg,var(--blue),var(--violet));
  box-shadow:0 9px 22px rgba(26,124,247,.20);
}
html[data-theme="dark"] .nav-item span.nav-iconbox{background:rgba(255,255,255,.055)}
html[data-theme="dark"] .nav-item.active{color:#fff;border-color:rgba(85,145,255,.24);box-shadow:0 12px 28px rgba(0,0,0,.15)}
.workspace-chip{padding:14px;border-radius:16px}.workspace-chip small{font-size:11px}.workspace-chip b{font-size:14px}

/* Dashboard canvas and top bar */
.main{padding:0 42px 66px}
.topbar{height:108px;margin-bottom:32px}
.top-actions{gap:11px;flex-wrap:wrap}
.pill{font-size:12px;padding:8px 12px}

/* Hero card: true Vio midnight hero inside Light dashboard */
.hero-card{
  min-height:268px;
  padding:46px 48px;
  color:#fff;
  border-color:rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 84% 20%,rgba(114,217,97,.18),transparent 24%),
    radial-gradient(circle at 68% 38%,rgba(26,124,247,.28),transparent 30%),
    radial-gradient(circle at 24% 100%,rgba(141,92,246,.15),transparent 27%),
    linear-gradient(130deg,#010135 0%,#02033c 62%,#001c48 100%);
  box-shadow:0 24px 62px rgba(1,1,53,.16);
}
.hero-card::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.14;
  background-image:radial-gradient(rgba(255,255,255,.7) 1px,transparent 1px);
  background-size:22px 22px;
  -webkit-mask-image:linear-gradient(to bottom,#000,transparent 84%);
  mask-image:linear-gradient(to bottom,#000,transparent 84%);
  pointer-events:none;
}
.hero-card::after{width:260px;height:260px;right:-70px;top:-85px;background:rgba(67,215,209,.055);box-shadow:0 0 0 65px rgba(26,124,247,.035),0 0 0 130px rgba(141,92,246,.018)}
.hero-card>div{position:relative;z-index:2}
.hero-card h3,.hero-card p,.hero-card .eyebrow{color:#fff}
.hero-card h3{font-size:42px;line-height:1.08;letter-spacing:-.025em;margin:10px 0 14px}
.hero-card p{font-size:17px;color:#c9cee8;max-width:760px}
.hero-card .eyebrow{opacity:.92}.hero-card .eyebrow::before{background:linear-gradient(90deg,var(--green),var(--turquoise))}
.queue-visual{position:relative;z-index:2;gap:10px}
.queue-visual div{width:50px;height:50px;background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.14);color:#fff;box-shadow:none;backdrop-filter:blur(8px)}
.queue-visual i{width:26px;background:linear-gradient(90deg,var(--turquoise),var(--green))}
.queue-visual strong{padding:17px 18px;background:linear-gradient(145deg,var(--blue),var(--violet));font-size:15px}

/* Bento stats with the full Vio spectrum */
.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin:20px 0 18px}
.stats article.stat-card{padding:25px 25px 23px;min-height:158px;border-radius:21px}
.stats article.stat-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--accent),transparent 80%)}
.stats article.stat-card::after{width:120px;height:120px;right:-50px;top:-50px;background:var(--tint)}
.stat-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.stat-head>span:first-child{font-size:14px;font-weight:800;color:var(--muted)}
.mini-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;color:var(--accent);background:var(--tint);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent)}
.stats b{font-size:43px;margin:16px 0 1px}
.stats small{font-size:13px;color:var(--muted)}
.accent-blue{--accent:var(--blue);--tint:rgba(26,124,247,.095)}
.accent-purple{--accent:var(--violet);--tint:rgba(141,92,246,.105)}
.accent-green{--accent:var(--green);--tint:rgba(114,217,97,.13)}
.accent-yellow{--accent:#dba500;--tint:rgba(253,202,73,.16)}
.accent-red{--accent:var(--red);--tint:rgba(255,97,120,.105)}
.accent-turquoise{--accent:#18aaa4;--tint:rgba(67,215,209,.14)}

/* General Vio cards / panels */
.panel,.project-card,.production-card,.plan-card,.mini-form,.control-section{
  border-radius:22px;
  box-shadow:0 12px 34px rgba(1,1,53,.05);
}
.panel{padding:27px}
.panel-head{margin-bottom:20px}
.panel-head small{font-size:12px;letter-spacing:.055em;font-weight:800}
.split,.settings-grid{gap:18px}
.settings-grid>.panel:nth-child(1),.billing-grid>.panel:nth-child(1),.admin-money-grid>.panel:nth-child(1){border-top:3px solid rgba(26,124,247,.72)}
.settings-grid>.panel:nth-child(2),.billing-grid>.panel:nth-child(2){border-top:3px solid rgba(141,92,246,.62)}
.admin-money-grid>.panel:nth-child(1){border-top-color:rgba(114,217,97,.82)}
.admin-money-grid>.panel:nth-child(2){border-top-color:rgba(67,215,209,.82)}
.admin-customer-panel{border-top:3px solid rgba(141,92,246,.62)}
.admin-activity-grid>.panel:nth-child(1){border-top:3px solid rgba(253,202,73,.82)}
.admin-activity-grid>.panel:nth-child(2){border-top:3px solid rgba(255,97,120,.72)}
.list{gap:10px}.list-row{padding:15px 16px;border-radius:15px}.list-row b{font-size:15px}.list-row small{font-size:12px}
.provider-summary{padding:20px;border-radius:16px}.provider-summary b{font-size:17px}.provider-summary small{font-size:13px}

/* Project cards rotate through the Vio landing colors */
.project-grid{gap:17px}
.project-card{padding:24px;min-height:205px;overflow:hidden}
.project-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--card-accent,var(--blue));opacity:.8}
.project-card::after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-48px;top:-54px;background:var(--card-tint,rgba(26,124,247,.07));pointer-events:none}
.project-card:nth-child(7n+1){--card-accent:var(--blue);--card-tint:rgba(26,124,247,.085)}
.project-card:nth-child(7n+2){--card-accent:var(--violet);--card-tint:rgba(141,92,246,.09)}
.project-card:nth-child(7n+3){--card-accent:var(--turquoise);--card-tint:rgba(67,215,209,.11)}
.project-card:nth-child(7n+4){--card-accent:var(--green);--card-tint:rgba(114,217,97,.12)}
.project-card:nth-child(7n+5){--card-accent:var(--yellow);--card-tint:rgba(253,202,73,.14)}
.project-card:nth-child(7n+6){--card-accent:var(--red);--card-tint:rgba(255,97,120,.09)}
.project-card:nth-child(7n+7){--card-accent:var(--navy);--card-tint:rgba(1,1,53,.065)}
.project-card h3{font-size:22px;margin:18px 0 9px}.project-card p{font-size:14px}.project-card footer{font-size:13px}

/* Production & plans */
.production-card,.plan-card{padding:25px}
.production-card{border-left:3px solid rgba(26,124,247,.65)}
.production-card.has-issue{border-left-color:var(--yellow);border-color:rgba(253,202,73,.55)}
.plan-card:nth-child(4n+1){border-top:3px solid rgba(26,124,247,.72)}
.plan-card:nth-child(4n+2){border-top:3px solid rgba(114,217,97,.78)}
.plan-card:nth-child(4n+3){border-top:3px solid rgba(141,92,246,.72)}
.plan-card:nth-child(4n+4){border-top:3px solid rgba(253,202,73,.78)}

/* Production control plane and admin hero */
.control-hero{
  min-height:220px;
  padding:34px 36px;
  background:
    radial-gradient(circle at 94% 16%,rgba(141,92,246,.10),transparent 22%),
    radial-gradient(circle at 80% 80%,rgba(67,215,209,.075),transparent 24%),
    linear-gradient(145deg,#fff,#f7faff);
}
html[data-theme="dark"] .control-hero{
  background:
    radial-gradient(circle at 94% 16%,rgba(141,92,246,.14),transparent 22%),
    radial-gradient(circle at 80% 80%,rgba(67,215,209,.09),transparent 24%),
    linear-gradient(145deg,#0b0b31,#0a1035);
}
.control-hero h3{font-size:31px;line-height:1.12;margin:9px 0 11px}.control-hero p{font-size:15px;max-width:760px}
.control-kpis{gap:10px}.control-kpis div{min-width:106px;padding:17px 15px;border-radius:16px;position:relative;overflow:hidden}
.control-kpis div::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--kpi-accent,var(--blue))}
.control-kpis div:nth-child(1){--kpi-accent:var(--green)}
.control-kpis div:nth-child(2){--kpi-accent:var(--blue)}
.control-kpis div:nth-child(3){--kpi-accent:var(--red)}
.control-kpis div:nth-child(4){--kpi-accent:var(--yellow)}
.control-kpis div:nth-child(5){--kpi-accent:var(--violet)}
.control-kpis div:nth-child(6){--kpi-accent:var(--turquoise)}
.control-kpis b{font-size:28px}.control-kpis span{font-size:12px;margin-top:3px}

/* Provider / API iconboxes now use the same reusable Vio icon system */
.provider-logo{width:48px;height:48px;border-radius:15px;color:var(--accent,var(--blue));background:var(--tint,rgba(26,124,247,.09));border:1px solid color-mix(in srgb,var(--accent,var(--blue)) 18%,transparent)}
html[data-theme="dark"] .provider-logo{background:var(--tint,rgba(26,124,247,.13));color:var(--accent,var(--cyan));border:1px solid color-mix(in srgb,var(--accent,var(--cyan)) 22%,transparent)}
.provider-diagnostic{padding:21px;border-radius:18px}.diagnostic-grid{gap:12px}.diagnostic-grid>div{padding:15px;border-radius:14px}.diagnostic-grid b{font-size:15px}.diagnostic-grid small{font-size:12px}

/* Tables — larger, more legible, less compressed */
.table-wrap{border-radius:18px}
table{min-width:850px}
th,td{padding:17px 18px;font-size:14px;line-height:1.45}
th{font-size:11px;letter-spacing:.07em;font-weight:800}
.admin-table th,.admin-table td{padding:17px 16px}
.admin-search input{min-width:290px}
.money-summary{font-size:18px}
.money-line{padding:16px 18px;border-radius:14px}.money-line b{font-size:18px}
.admin-event{padding:16px;border-radius:14px}.admin-event b{font-size:14px}.admin-event small{font-size:12px}

/* Dialogs */
.dialog-card{padding:29px;border-radius:24px}.dialog-head h3{font-size:24px}.dialog-head small{font-size:12px}.icon-btn{width:42px;height:42px;border-radius:13px;font-size:22px}

/* Dark mode colorful surfaces */
html[data-theme="dark"] .stats article.stat-card,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .project-card,
html[data-theme="dark"] .production-card,
html[data-theme="dark"] .plan-card{
  box-shadow:0 14px 36px rgba(0,0,0,.16);
}
html[data-theme="dark"] .mini-icon{background:color-mix(in srgb,var(--accent) 13%,#0b0c32);border-color:color-mix(in srgb,var(--accent) 22%,transparent)}

@media(max-width:1200px){
  .app-shell{grid-template-columns:250px 1fr}
  .main{padding:0 28px 54px}
  .stats{grid-template-columns:1fr 1fr}
  .control-hero{align-items:flex-start}
  .control-kpis{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:1000px){
  .app-shell{grid-template-columns:88px 1fr}
  .sidebar{padding:18px 10px}
  .side-brand>div:last-child,.nav-item{font-size:0}
  .nav-item{justify-content:center;padding:8px}
  .nav-item span.nav-iconbox{width:40px;height:40px}
  .nav-item.active::after{display:none}
  .main{padding:0 22px 46px}
  .auth-shell{grid-template-columns:1fr;min-height:100vh}
  .brand-panel{min-height:680px}
  .auth-card{margin:24px auto 60px}
}
@media(max-width:760px){
  html{font-size:15px}
  .main{padding:0 14px 94px}
  .topbar{gap:14px}.topbar h2{font-size:25px}
  .hero-card{padding:32px 27px;min-height:0;display:grid}.hero-card h3{font-size:34px}.queue-visual{overflow:auto;padding-bottom:3px}
  .stats{grid-template-columns:1fr}.stats article.stat-card{min-height:140px}
  .split,.settings-grid,.billing-grid,.admin-money-grid{grid-template-columns:1fr}
  .control-hero{padding:28px 24px}.control-kpis{grid-template-columns:repeat(2,1fr)}
  .brand-panel{padding:42px 30px;min-height:620px}.brand-copy h1{font-size:48px}.brand-copy p{font-size:17px}.signal-grid{grid-template-columns:1fr}
}

/* v2.6.2 — legacy reference bridge + Production Bible / scene reference production UI */
.production-bible-section{margin:22px 0 26px;padding:22px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--navy) 94%,var(--blue) 6%),color-mix(in srgb,var(--navy) 90%,var(--violet) 10%));color:#fff;box-shadow:0 22px 55px rgba(1,1,53,.12);position:relative;overflow:hidden}
.production-bible-section:before,.production-bible-section:after{content:"";position:absolute;border-radius:999px;filter:blur(0);pointer-events:none}.production-bible-section:before{width:320px;height:320px;right:-150px;top:-180px;background:radial-gradient(circle,rgba(26,124,247,.22),transparent 68%)}.production-bible-section:after{width:280px;height:280px;left:-150px;bottom:-180px;background:radial-gradient(circle,rgba(114,217,97,.16),transparent 68%)}
.production-bible-section .panel-head{position:relative;z-index:1}.production-bible-section .panel-head small{color:#72d961}.production-bible-section .panel-head h3{color:#fff;font-size:24px}.production-bible-section .panel-head>span{color:#abb5df;font-size:14px}
.production-bible-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.production-bible-card{min-height:132px;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:17px 18px;background:rgba(255,255,255,.045);box-shadow:inset 0 1px 0 rgba(255,255,255,.04);overflow:auto}.production-bible-card>small{display:block;font-weight:800;letter-spacing:.09em;text-transform:uppercase;margin-bottom:10px}.production-bible-card p{font-size:15px;line-height:1.7;margin:0;color:#eef1ff;white-space:pre-wrap}.production-bible-card ul{padding-left:19px;margin:0;color:#eef1ff;font-size:14px;line-height:1.6}.production-bible-card li+li{margin-top:5px}.bible-kv{display:grid;gap:8px}.bible-kv>div{display:grid;grid-template-columns:minmax(100px,.34fr) 1fr;gap:10px;font-size:13px}.bible-kv b{color:#fff}.bible-kv span{color:#ccd3f5;white-space:pre-wrap;overflow-wrap:anywhere}
.production-bible-card.accent-green{border-color:rgba(114,217,97,.35)}.production-bible-card.accent-green>small{color:#72d961}.production-bible-card.accent-blue{border-color:rgba(26,124,247,.42)}.production-bible-card.accent-blue>small{color:#55a0ff}.production-bible-card.accent-violet{border-color:rgba(141,92,246,.5)}.production-bible-card.accent-violet>small{color:#ae83ff}.production-bible-card.accent-yellow{border-color:rgba(253,202,73,.42)}.production-bible-card.accent-yellow>small{color:#fdca49}.production-bible-card.accent-red{border-color:rgba(255,97,120,.42)}.production-bible-card.accent-red>small{color:#ff7c90}.production-bible-card.accent-turquoise{border-color:rgba(67,215,209,.42)}.production-bible-card.accent-turquoise>small{color:#43d7d1}.production-bible-card.accent-navy{border-color:rgba(159,167,255,.35)}.production-bible-card.accent-navy>small{color:#b0b8ff}.production-bible-card.accent-cyan{border-color:rgba(58,207,255,.4)}.production-bible-card.accent-cyan>small{color:#58d9ff}
.scene-reference-block{margin-top:15px;padding:13px;border:1px solid var(--line);border-radius:17px;background:color-mix(in srgb,var(--surface) 92%,var(--blue) 8%)}.scene-reference-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.scene-reference-head b{font-size:15px}.scene-reference-head small{font-size:12px;color:var(--muted)}.scene-reference-strip{display:flex;gap:10px;overflow-x:auto;padding-bottom:3px}.scene-ref{flex:0 0 154px;margin:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card);box-shadow:0 8px 20px rgba(1,1,53,.06)}.scene-ref img{display:block;width:100%;height:92px;object-fit:cover;background:#05051f}.scene-ref figcaption{display:flex;align-items:center;gap:8px;padding:8px}.scene-ref figcaption b{display:grid;place-items:center;min-width:28px;height:28px;border-radius:9px;background:linear-gradient(145deg,var(--yellow),#ffad2d);color:#08112e;font-size:12px}.scene-ref figcaption span{font-size:11px;line-height:1.25;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-ref.missing{height:128px;display:grid;place-items:center;text-align:center;padding:8px;border-style:dashed}.scene-ref.missing span{font-weight:900;color:var(--red)}.scene-ref.missing small{font-size:10px;overflow-wrap:anywhere}
.scene-ref.continuity-picture{border:2px solid var(--green);box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 18%,transparent)}.scene-ref.continuity-picture figcaption b{background:linear-gradient(145deg,var(--green),var(--turquoise));color:#06152b}.output-profile-summary{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.output-profile-summary span{font-size:12px;color:var(--muted)}
.frame-plan{margin-top:11px;border:1px solid var(--line);border-radius:15px;background:var(--card);overflow:hidden}.frame-plan summary{cursor:pointer;padding:11px 13px;font-weight:800;font-size:13px;color:var(--ink)}.frame-plan-grid{display:grid;gap:7px;padding:0 12px 12px}.frame-plan-grid>div{display:grid;grid-template-columns:42px 1fr;gap:10px;padding:8px 9px;border-radius:10px;background:var(--surface);font-size:11px}.frame-plan-grid b{color:var(--blue)}.frame-plan-grid span{overflow-wrap:anywhere;color:var(--muted)}
.scene-control{align-items:flex-start}.scene-main{min-width:0}.scene-main>small{font-size:13px}.scene-head>b{font-size:17px}.asset-state-list>div{min-height:48px}
[data-theme="dark"] .scene-reference-block{background:rgba(255,255,255,.035)}[data-theme="dark"] .scene-ref,[data-theme="dark"] .frame-plan{background:#10143d}[data-theme="dark"] .frame-plan-grid>div{background:#151a49}
@media(max-width:900px){.production-bible-grid{grid-template-columns:1fr}.production-bible-section{padding:16px}.scene-reference-head{align-items:flex-start;flex-direction:column}.scene-ref{flex-basis:132px}}


/* v2.7.2 — Structured Production Bible v2 */

.production-bible-v2-head{
  align-items:flex-start;
}

.production-bible-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:10px;
}

.production-bible-meta span{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 9px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(255,255,255,.055);
  color:#cfd6f8;
  font-size:10px;
  font-weight:700;
  letter-spacing:.03em;
}

.production-bible-schema{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 11px;
  border:1px solid rgba(116,217,96,.26);
  border-radius:999px;
  background:rgba(116,217,96,.08);
  color:#9cf18c;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
}

.production-bible-v2-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
}

.production-bible-v2-card{
  position:relative;
  min-height:148px;
}

.production-bible-card-head{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:12px;
}

.production-bible-card-head>small{
  margin:0;
}

.bible-card-index{
  display:grid;
  place-items:center;
  min-width:29px;
  width:29px;
  height:29px;
  border-radius:9px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.1);
  color:#fff;
  font-size:10px;
  font-weight:900;
}

.production-bible-v2-card[data-bible-key="format"],
.production-bible-v2-card[data-bible-key="core_idea"],
.production-bible-v2-card[data-bible-key="character_lock"],
.production-bible-v2-card[data-bible-key="motion_camera_rules"],
.production-bible-v2-card[data-bible-key="film_direction"]{
  grid-column:1/-1;
}

.production-bible-v2-card[data-bible-key="format"]{
  min-height:112px;
}

.production-bible-v2-card[data-bible-key="core_idea"]{
  min-height:125px;
}

.production-bible-v2-card[data-bible-key="character_lock"],
.production-bible-v2-card[data-bible-key="motion_camera_rules"]{
  min-height:165px;
}

.production-bible-v2-card[data-bible-key="film_direction"]{
  min-height:125px;
}

.production-bible-extensions{
  position:relative;
  z-index:1;
  margin-top:15px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.11);
  border-radius:16px;
  background:rgba(255,255,255,.035);
}

.production-bible-extensions summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:13px 15px;
  cursor:pointer;
  color:#fff;
  font-size:12px;
  font-weight:800;
}

.production-bible-extensions summary span{
  color:#9da9d4;
  font-size:10px;
  font-weight:600;
}

.production-bible-extensions-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:0 12px 12px;
}

.production-bible-extensions-grid article{
  padding:14px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:13px;
  background:rgba(255,255,255,.035);
}

.production-bible-extensions-grid article>small{
  display:block;
  margin-bottom:9px;
  color:#72d961;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.production-bible-extensions-grid p,
.production-bible-extensions-grid li,
.production-bible-extensions-grid span{
  color:#dce1fa;
}

@media(max-width:900px){
  .production-bible-v2-grid,
  .production-bible-extensions-grid{
    grid-template-columns:1fr;
  }

  .production-bible-v2-card{
    grid-column:auto;
  }

  .production-bible-v2-head{
    flex-direction:column;
    gap:12px;
  }
}

/* v2.8.0 — Reparo Studio cinematic operations redesign */
:root,
html[data-theme="light"]{
  --bg:#f3f6fb;
  --bg2:#eaf0f8;
  --panel:#ffffff;
  --surface:#f7f9fd;
  --surface-strong:#edf2f9;
  --card:#ffffff;
  --line:#e1e7f0;
  --line-strong:#d2dbe8;
  --text:#101733;
  --ink:#101733;
  --muted:#69728d;
  --muted-strong:#515c79;
  --blue:#1a7cf7;
  --green:#72d961;
  --navy:#010135;
  --yellow:#fdca49;
  --violet:#8d5cf6;
  --red:#ff6178;
  --turquoise:#43d7d1;
  --danger:#e7485f;
  --radius:20px;
  --shadow-sm:0 8px 24px rgba(20,35,75,.055);
  --shadow:0 20px 55px rgba(18,33,72,.09);
  --shadow-lg:0 34px 90px rgba(1,1,53,.18);
}

html[data-theme="dark"]{
  --bg:#050622;
  --bg2:#080a2a;
  --panel:#0d1033;
  --surface:#090b2a;
  --surface-strong:#12163d;
  --card:#10133a;
  --line:#252951;
  --line-strong:#343966;
  --text:#f5f7ff;
  --ink:#f5f7ff;
  --muted:#9ba4c2;
  --muted-strong:#bac1d8;
  --shadow-sm:0 10px 28px rgba(0,0,0,.16);
  --shadow:0 22px 60px rgba(0,0,0,.24);
  --shadow-lg:0 38px 100px rgba(0,0,0,.34);
}

*{scrollbar-width:thin;scrollbar-color:rgba(104,116,157,.38) transparent}
html{font-size:16px;scroll-behavior:smooth}
html,body{background:var(--bg);color:var(--text)}
body{
  min-width:320px;
  background:
    radial-gradient(circle at 92% 2%,rgba(26,124,247,.075),transparent 24rem),
    radial-gradient(circle at 24% 100%,rgba(114,217,97,.055),transparent 26rem),
    var(--bg);
  color:var(--text);
  line-height:1.5;
}
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 92% 0,rgba(26,124,247,.13),transparent 28rem),
    radial-gradient(circle at 16% 100%,rgba(141,92,246,.09),transparent 30rem),
    var(--bg);
}
button,input,select,textarea{font:inherit}
button{transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid rgba(26,124,247,.25);outline-offset:2px}
h1,h2,h3,h4,p{overflow-wrap:anywhere}
.skip-link{position:fixed;z-index:999;left:18px;top:12px;padding:10px 14px;border-radius:10px;background:var(--blue);color:#fff;transform:translateY(-160%);transition:transform .2s;text-decoration:none;font-weight:800}
.skip-link:focus{transform:none}
.vio-icon,.button-icon{width:1.25em;height:1.25em;display:block;fill:none}
.button-icon{flex:0 0 auto}
.eyebrow{display:flex;align-items:center;gap:8px;color:#7d88a8;font-size:.71rem;line-height:1.1;letter-spacing:.12em;font-weight:900}
.eyebrow>i{width:19px;height:3px;border-radius:10px;background:linear-gradient(90deg,var(--blue),var(--green))}

/* Brand */
.brand-mark{
  position:relative;
  width:66px;height:66px;
  border-radius:21px;
  background:linear-gradient(145deg,#2186ff 5%,#1667e8 60%,#774ce7 100%);
  box-shadow:0 18px 46px rgba(26,124,247,.28),inset 0 1px 0 rgba(255,255,255,.25);
  transform:none;
  isolation:isolate;
}
.brand-mark::before{content:"";position:absolute;inset:7px;border:1px solid rgba(255,255,255,.22);border-radius:15px;z-index:-1}
.brand-mark::after{content:"";position:absolute;width:13px;height:13px;right:-3px;top:-3px;border:4px solid #050622;border-radius:50%;background:var(--green);box-shadow:0 0 18px rgba(114,217,97,.7)}
.brand-mark span{font-family:"SomarSans",Arial,sans-serif;font-size:38px;font-weight:950;font-style:normal;letter-spacing:-.08em;color:#fff;transform:none}
.brand-mark.small{width:43px;height:43px;border-radius:14px;box-shadow:0 12px 30px rgba(26,124,247,.22)}
.brand-mark.small::before{inset:5px;border-radius:10px}.brand-mark.small::after{width:9px;height:9px;border-width:3px;right:-2px;top:-2px}
.brand-mark.small span{font-size:25px}
.brand-wordmark{display:grid;line-height:1}
.brand-wordmark b{font-size:1.18rem;color:inherit;letter-spacing:-.02em}
.brand-wordmark small{margin-top:4px;color:#8d96bb;font-size:.69rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}

/* Authentication */
.auth-shell{position:relative;min-height:100vh;display:grid;grid-template-columns:minmax(0,1.24fr) minmax(430px,.76fr);padding:18px;background:var(--bg)}
.auth-theme-toggle{position:fixed;z-index:20;top:31px;right:31px}
.brand-panel{
  position:relative;
  min-height:calc(100vh - 36px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  padding:clamp(36px,4.2vw,74px);
  border:1px solid rgba(255,255,255,.08);
  border-radius:30px;
  background:
    radial-gradient(circle at 80% 26%,rgba(26,124,247,.30),transparent 25%),
    radial-gradient(circle at 21% 87%,rgba(141,92,246,.20),transparent 27%),
    linear-gradient(138deg,#010135 0%,#030641 53%,#001a48 100%);
  color:#fff;
  box-shadow:0 30px 80px rgba(1,1,53,.20);
}
.brand-panel::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.58) .7px,transparent .7px);background-size:25px 25px;opacity:.14;mask-image:linear-gradient(to bottom,#000 20%,transparent 92%);pointer-events:none}
.brand-panel::after{content:"";position:absolute;width:530px;height:530px;right:-220px;bottom:-260px;border:1px solid rgba(114,217,97,.22);border-radius:50%;box-shadow:0 0 0 70px rgba(26,124,247,.05),0 0 0 140px rgba(141,92,246,.03);pointer-events:none}
.auth-brand-row{position:relative;z-index:2;display:flex;align-items:center;gap:17px}
.brand-panel .brand-wordmark b{font-size:1.32rem}.brand-panel .brand-wordmark small{color:#b9c3e4}
.brand-copy{position:relative;z-index:2;max-width:820px;margin:clamp(72px,10vh,130px) 0 0}
.brand-copy .eyebrow{color:#a7f097}
.brand-copy h1{margin:19px 0 22px;color:#fff;font-size:clamp(3.15rem,5.2vw,6.15rem);font-weight:850;line-height:.87;letter-spacing:-.055em}
.brand-copy p{max-width:630px;margin:0;color:#c5cce6;font-size:clamp(1rem,1.2vw,1.22rem);line-height:1.65}
.auth-production-map{position:relative;z-index:2;display:grid;grid-template-columns:minmax(130px,1fr) 54px minmax(130px,1fr) 54px minmax(130px,1fr);align-items:center;gap:0;max-width:730px;margin:clamp(44px,7vh,86px) 0 30px}
.auth-production-map>i{height:1px;background:linear-gradient(90deg,rgba(67,215,209,.2),rgba(114,217,97,.85));position:relative}
.auth-production-map>i::after{content:"";position:absolute;width:6px;height:6px;right:-1px;top:-2.5px;border-radius:50%;background:var(--green);box-shadow:0 0 13px var(--green)}
.map-step{min-width:0;padding:16px;border:1px solid rgba(255,255,255,.11);border-radius:17px;background:rgba(255,255,255,.055);backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 rgba(255,255,255,.055)}
.map-step>span{width:35px;height:35px;display:grid;place-items:center;margin-bottom:12px;border-radius:11px;background:rgba(26,124,247,.18);color:#78b6ff}
.map-step.active>span{background:rgba(114,217,97,.15);color:#9df38d}.map-step:last-child>span{background:rgba(141,92,246,.18);color:#c3a8ff}
.map-step b,.map-step small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-step b{font-size:.9rem}.map-step small{margin-top:3px;color:#98a4cb;font-size:.72rem}
.signal-grid{position:relative;left:auto;bottom:auto;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:auto}
.signal-grid>div{min-width:0;display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid rgba(255,255,255,.085);border-radius:14px;background:rgba(255,255,255,.035)}
.signal-grid .signal-icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.07);color:#8abfff}
.signal-grid p{min-width:0;margin:0}.signal-grid b,.signal-grid small{display:block}.signal-grid b{font-size:.8rem}.signal-grid small{margin-top:2px;color:#8f9bc3;font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.auth-card{position:relative;margin:auto;width:min(465px,86%);padding:42px 40px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.92);box-shadow:var(--shadow-lg);backdrop-filter:blur(22px)}
html[data-theme="dark"] .auth-card{background:rgba(13,16,51,.90);border-color:rgba(255,255,255,.09)}
.mobile-brand{display:none;align-items:center;gap:13px;margin-bottom:32px}
.auth-heading{margin-bottom:25px}.auth-kicker{color:var(--blue);font-size:.68rem;font-weight:900;letter-spacing:.1em}.auth-heading h2{margin:8px 0 5px;font-size:2rem;letter-spacing:-.035em}.auth-heading p{margin:0;color:var(--muted);font-size:.92rem}
.tabs{gap:5px;padding:5px;border:1px solid var(--line);border-radius:14px;background:var(--surface-strong)}
.tab{min-height:42px;border-radius:10px;color:var(--muted);font-size:.88rem}.tab.active{background:var(--panel);color:var(--ink);box-shadow:0 4px 14px rgba(20,35,75,.07)}
html[data-theme="dark"] .tab.active{background:#171a46;color:#fff}
.auth-form,.stack-form{gap:17px;margin-top:25px}
label{gap:8px;color:var(--muted-strong);font-size:.78rem;font-weight:800}
input,select,textarea{min-height:46px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink)}
input:hover,select:hover,textarea:hover{border-color:var(--line-strong)}
input:focus,select:focus,textarea:focus{border-color:rgba(26,124,247,.72);box-shadow:0 0 0 4px rgba(26,124,247,.10)}
input::placeholder,textarea::placeholder{color:#9ba5bb}
.auth-foot{display:flex;align-items:flex-start;gap:8px;margin:22px 0 0;color:var(--muted);font-size:.72rem;line-height:1.55}.auth-foot .vio-icon{flex:0 0 17px;margin-top:1px;color:var(--green)}

/* Buttons and controls */
.primary,.ghost,.theme-toggle,.sidebar-signout,.hero-secondary,.link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 15px;border-radius:12px;font-weight:850}
.primary{border:1px solid #1873e5;background:linear-gradient(135deg,#2387ff,#176ee8);color:#fff;box-shadow:0 9px 24px rgba(26,124,247,.21),inset 0 1px 0 rgba(255,255,255,.2)}
.primary:hover{transform:translateY(-1px);box-shadow:0 13px 30px rgba(26,124,247,.27),inset 0 1px 0 rgba(255,255,255,.2)}
.ghost,.theme-toggle{border:1px solid var(--line);background:var(--panel);color:var(--muted-strong);box-shadow:var(--shadow-sm)}
.ghost:hover,.theme-toggle:hover{border-color:var(--line-strong);background:var(--surface);color:var(--ink)}
.theme-toggle{min-width:88px}.theme-icon{display:grid;place-items:center}.theme-icon .vio-icon{width:18px;height:18px}
.icon-action{white-space:nowrap}.link{min-height:auto;padding:4px 2px;border:0;background:transparent;color:var(--blue);box-shadow:none;font-size:.79rem}.link:hover{gap:11px;color:#0e64cf}
.sidebar-signout{width:100%;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);color:#9fa8cb}.sidebar-signout:hover{border-color:rgba(255,97,120,.25);background:rgba(255,97,120,.08);color:#ff93a3}
.sidebar-signout .vio-icon{width:18px;height:18px}

/* Main application shell */
.app-shell{min-height:100vh;grid-template-columns:278px minmax(0,1fr);background:transparent}
.sidebar{position:sticky;top:0;z-index:30;height:100vh;padding:25px 17px 18px;border:0;background:linear-gradient(180deg,#05052b 0%,#07082f 62%,#050826 100%);box-shadow:18px 0 46px rgba(10,18,55,.08)}
.sidebar::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 6%,rgba(26,124,247,.16),transparent 30%),radial-gradient(circle at 90% 82%,rgba(141,92,246,.10),transparent 32%);pointer-events:none}
.side-brand{position:relative;z-index:1;display:flex;align-items:center;gap:12px;padding:0 9px 30px;border-bottom:1px solid rgba(255,255,255,.07)}
.side-brand .brand-wordmark b{color:#fff;font-size:1.12rem}.side-brand .brand-wordmark small{color:#7580ad}
.brand-version{margin-left:auto;padding:4px 7px;border:1px solid rgba(255,255,255,.09);border-radius:7px;color:#7f89b3;font-size:.61rem;font-weight:900}
#nav{position:relative;z-index:1;display:grid;gap:5px;margin-top:22px}
.nav-section-label{padding:0 12px 6px;color:#5f6a96;font-size:.61rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.nav-section-label.system-label{margin-top:16px}
.nav-item{position:relative;display:flex;justify-content:flex-start;align-items:center;gap:12px;min-height:47px;padding:6px 9px;border:1px solid transparent;border-radius:13px;background:transparent;color:#8993ba;font-size:.87rem;font-weight:800;text-align:left}
.nav-item span{width:auto}.nav-item .nav-label{flex:1}
.nav-iconbox{width:35px;height:35px;flex:0 0 35px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.035);color:#7f8bb8}
.nav-iconbox .vio-icon{width:19px;height:19px}
.nav-item:hover{border-color:rgba(255,255,255,.07);background:rgba(255,255,255,.045);color:#fff}
.nav-item.active{border-color:rgba(77,148,255,.18);background:linear-gradient(90deg,rgba(26,124,247,.19),rgba(26,124,247,.065));color:#fff;box-shadow:0 12px 28px rgba(0,0,0,.12)}
.nav-item.active::after{content:"";position:absolute;right:-9px;width:3px;height:24px;border-radius:5px;background:linear-gradient(var(--blue),var(--green));box-shadow:0 0 17px rgba(26,124,247,.65)}
.nav-item.active .nav-iconbox{background:linear-gradient(145deg,#2487ff,#146add);color:#fff;box-shadow:0 8px 18px rgba(26,124,247,.24)}
.sidebar-bottom{position:relative;z-index:1;gap:10px}
.workspace-chip{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.075);border-radius:14px;background:rgba(255,255,255,.035)}
.workspace-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,rgba(26,124,247,.25),rgba(141,92,246,.20));color:#fff;font-size:.86rem;font-weight:950}
.workspace-chip small,.workspace-chip b,.workspace-chip div>span{display:block;max-width:152px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-chip small{color:#68739f;font-size:.59rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.workspace-chip b{margin-top:2px;color:#f5f7ff;font-size:.78rem}.workspace-chip div>span{margin-top:1px;color:#7781a9;font-size:.62rem}
.main{min-width:0;max-width:1900px;padding:0 42px 72px;margin:0 auto;width:100%}
.topbar{position:sticky;top:0;z-index:24;min-height:112px;height:auto;margin:0 0 30px;padding:23px 0 20px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:space-between;gap:28px}
.page-heading h2{margin:5px 0 1px;color:var(--ink);font-size:1.82rem;line-height:1.12;letter-spacing:-.035em}.page-heading p{margin:5px 0 0;color:var(--muted);font-size:.8rem}
.top-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.top-actions .pill{margin-right:2px}
.pill{display:inline-flex;align-items:center;gap:7px;min-height:31px;padding:6px 10px;border:1px solid rgba(114,217,97,.28);border-radius:999px;background:rgba(114,217,97,.11);color:#308c31;font-size:.68rem;font-weight:900;letter-spacing:.025em;text-transform:capitalize}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(114,217,97,.12)}
html[data-theme="dark"] .pill{color:#a3f292}
.view{animation:view-in .28s ease both}.view:not(.active){animation:none}@keyframes view-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

/* Overview hero */
.hero-card{position:relative;min-height:300px;padding:42px 44px;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr);align-items:center;gap:44px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:27px;background:radial-gradient(circle at 83% 15%,rgba(114,217,97,.17),transparent 23%),radial-gradient(circle at 64% 70%,rgba(26,124,247,.26),transparent 30%),linear-gradient(130deg,#010135 0%,#030743 55%,#001d4b 100%);box-shadow:0 28px 68px rgba(1,1,53,.18);color:#fff}
.hero-card::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.75) .65px,transparent .65px);background-size:23px 23px;opacity:.13;mask-image:linear-gradient(110deg,#000,transparent 76%)}
.hero-card::after{content:"";position:absolute;width:330px;height:330px;right:-180px;bottom:-200px;border:1px solid rgba(114,217,97,.18);border-radius:50%;box-shadow:0 0 0 62px rgba(26,124,247,.045),0 0 0 124px rgba(141,92,246,.025)}
.hero-copy,.queue-visual{position:relative;z-index:2}
.hero-card .eyebrow{color:#a5f195}.hero-card h3{margin:14px 0 15px;color:#fff;font-size:clamp(2.15rem,3.25vw,3.5rem);font-weight:850;line-height:.98;letter-spacing:-.045em}.hero-card h3 span{color:#9ec7ff}.hero-card p{max-width:720px;margin:0;color:#bdc7e4;font-size:.94rem;line-height:1.7}
.hero-actions{display:flex;align-items:center;gap:10px;margin-top:25px}.hero-primary{background:linear-gradient(135deg,#2488ff,#1c72eb);border-color:rgba(255,255,255,.14)}.hero-secondary{border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.065);color:#e9edff}.hero-secondary:hover{background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.2);transform:translateY(-1px)}
.queue-visual{display:grid;grid-template-columns:1fr 26px 1fr 26px 1fr 26px 1fr;align-items:center;gap:0;padding:18px;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:rgba(5,8,43,.42);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.queue-visual>i{width:100%;height:1px;background:linear-gradient(90deg,rgba(126,175,255,.25),var(--green));position:relative}.queue-visual>i::after{content:"";position:absolute;right:-1px;top:-2.5px;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(114,217,97,.7)}
.queue-node{min-width:0;width:auto;height:auto;display:grid;place-items:center;gap:7px;padding:13px 6px;border:0;border-radius:14px;background:transparent;color:#aab5d8}
.queue-node>span{width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.06);color:#8fc0ff}.queue-node small{font-size:.64rem;color:#929fc9}.queue-node.active>span{background:rgba(26,124,247,.22);border-color:rgba(93,159,255,.32);color:#fff;box-shadow:0 0 0 5px rgba(26,124,247,.07)}.queue-node.final>span{background:linear-gradient(145deg,rgba(114,217,97,.25),rgba(26,124,247,.22));color:#b5f4a9}

/* Dashboard cards */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:19px 0}
.stats article.stat-card{position:relative;min-height:158px;padding:22px 23px;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:var(--shadow-sm)}
.stats article.stat-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--accent),transparent 80%)}
.stats article.stat-card::after{content:"";position:absolute;width:110px;height:110px;right:-48px;top:-48px;border-radius:50%;background:var(--tint);pointer-events:none}
.stat-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.stat-head>span:first-child{color:var(--muted);font-size:.82rem;font-weight:850}.mini-icon{position:relative;z-index:1;width:39px;height:39px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 19%,transparent);border-radius:12px;background:var(--tint);color:var(--accent)}.mini-icon .vio-icon{width:19px;height:19px}
.stats b{position:relative;z-index:1;margin:14px 0 0;color:var(--ink);font-size:2.48rem;line-height:1;letter-spacing:-.04em}.stats small{position:relative;z-index:1;color:var(--muted);font-size:.73rem}.accent-blue{--accent:var(--blue);--tint:rgba(26,124,247,.10)}.accent-purple{--accent:var(--violet);--tint:rgba(141,92,246,.11)}.accent-green{--accent:#45af3e;--tint:rgba(114,217,97,.14)}.accent-yellow{--accent:#d39a00;--tint:rgba(253,202,73,.16)}.accent-red{--accent:var(--red);--tint:rgba(255,97,120,.11)}.accent-turquoise{--accent:#16aaa5;--tint:rgba(67,215,209,.13)}
.split,.settings-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:16px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.panel,.project-card,.production-card,.plan-card,.mini-form,.control-section{border:1px solid var(--line);background:var(--panel);color:var(--ink);box-shadow:var(--shadow-sm)}
.panel{padding:25px;border-radius:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:19px}.panel-head small{color:#7b86a4;font-size:.67rem;font-weight:900;letter-spacing:.085em}.panel h3{margin:4px 0 0;color:var(--ink);font-size:1.16rem;letter-spacing:-.02em}.provider-panel{background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel) 94%,var(--blue) 6%))}
.list{gap:9px}.list.empty{min-height:82px;display:grid;place-items:center;padding:20px;color:var(--muted);border:1px dashed var(--line);border-radius:14px;background:var(--surface);font-size:.82rem}.list-row{padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.list-row:hover{border-color:var(--line-strong);background:var(--surface-strong)}.list-row b{color:var(--ink);font-size:.84rem}.list-row small{color:var(--muted);font-size:.7rem}.provider-summary{position:relative;min-height:110px;padding:20px 19px 20px 60px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.provider-summary::before{content:"";position:absolute;left:19px;top:21px;width:25px;height:25px;border-radius:50%;background:var(--green);box-shadow:0 0 0 7px rgba(114,217,97,.13)}.provider-summary::after{content:"";position:absolute;left:28px;top:30px;width:7px;height:4px;border-left:2px solid #123113;border-bottom:2px solid #123113;transform:rotate(-45deg)}.provider-summary b{color:var(--ink);font-size:.94rem}.provider-summary small{color:var(--muted);font-size:.72rem}
.status{font-size:.61rem;letter-spacing:.045em;padding:6px 8px;border:1px solid transparent}.status.completed,.status.connected,.status.assembling,.status.valid{border-color:rgba(91,181,80,.16);background:rgba(114,217,97,.13);color:#368e35}.status.running,.status.submitted,.status.polling,.status.generating,.status.in_progress,.status.queued,.status.submitting,.status.downloading{border-color:rgba(26,124,247,.14);background:rgba(26,124,247,.11);color:#1769cc}.status.pending,.status.receiving,.status.ready{border-color:rgba(211,154,0,.16);background:rgba(253,202,73,.16);color:#9f7600}.status.failed,.status.cancelled,.status.invalid,.status.inconclusive,.status.stopped{border-color:rgba(231,72,95,.16);background:rgba(255,97,120,.11);color:#c43a50}.status.waiting{background:var(--surface-strong);color:var(--muted)}
html[data-theme="dark"] .status.completed,html[data-theme="dark"] .status.connected,html[data-theme="dark"] .status.assembling,html[data-theme="dark"] .status.valid{color:#a1f092}html[data-theme="dark"] .status.running,html[data-theme="dark"] .status.submitted,html[data-theme="dark"] .status.polling,html[data-theme="dark"] .status.generating,html[data-theme="dark"] .status.in_progress,html[data-theme="dark"] .status.queued,html[data-theme="dark"] .status.submitting,html[data-theme="dark"] .status.downloading{color:#86bdff}html[data-theme="dark"] .status.pending,html[data-theme="dark"] .status.receiving,html[data-theme="dark"] .status.ready{color:#ffe18a}html[data-theme="dark"] .status.failed,html[data-theme="dark"] .status.cancelled,html[data-theme="dark"] .status.invalid,html[data-theme="dark"] .status.inconclusive,html[data-theme="dark"] .status.stopped{color:#ff9cac}

/* Secondary views */
.section-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:4px 2px}.section-actions p{margin:0;color:var(--muted);font-size:.84rem}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.project-card{min-height:215px;padding:23px;border-radius:20px;background:var(--panel);box-shadow:var(--shadow-sm)}.project-card::before{height:3px}.project-card::after{opacity:.85}.project-card:hover{border-color:color-mix(in srgb,var(--card-accent,var(--blue)) 28%,var(--line));transform:translateY(-3px);box-shadow:var(--shadow)}.project-card .project-type{color:var(--muted);font-size:.65rem;font-weight:900}.project-card h3{color:var(--ink);font-size:1.28rem}.project-card p{color:var(--muted);font-size:.81rem}.project-card footer{color:var(--muted);font-size:.72rem}
.control-hero{min-height:220px;padding:31px 33px;border-radius:22px;background:radial-gradient(circle at 88% 16%,rgba(141,92,246,.10),transparent 25%),linear-gradient(145deg,var(--panel),var(--surface))}.control-hero h3{color:var(--ink);font-size:1.84rem}.control-hero p{max-width:720px;color:var(--muted)}.control-kpis{min-width:410px;gap:9px}.control-kpis div{min-width:90px;padding:16px 12px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:var(--shadow-sm)}.control-kpis b{color:var(--ink);font-size:1.65rem}.control-kpis span{color:var(--muted);font-size:.67rem}.production-list{gap:11px}.production-card{padding:22px 23px;border-radius:18px;background:var(--panel);border-left:3px solid rgba(26,124,247,.72)}.production-card:hover{border-color:color-mix(in srgb,var(--blue) 32%,var(--line));transform:translateY(-2px);box-shadow:var(--shadow)}.production-card h3{color:var(--ink)}.production-card small,.production-metrics{color:var(--muted)}.production-metrics b{color:var(--ink)}.progress-track,.usage-track,.scene-progress{background:var(--surface-strong)}
.progress-track i,.usage-track i,.scene-progress i{background:linear-gradient(90deg,var(--blue),var(--turquoise),var(--green))}
.table-wrap{overflow:auto;padding:0;border-radius:18px}.table-wrap table{min-width:820px}.table-wrap th{padding:15px 18px;background:var(--surface);color:#7a86a4;font-size:.65rem;position:sticky;top:0}.table-wrap td{padding:16px 18px;border-color:var(--line);color:var(--muted-strong);font-size:.8rem}.table-wrap tbody tr:hover{background:var(--surface)}
.provider-logo{width:46px;height:46px;border-radius:14px;background:var(--tint);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent)}.provider-logo .vio-icon{width:22px;height:22px}.form-panel{padding:27px}.muted{color:var(--muted)}code{color:var(--blue);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82em}
.api-info{gap:13px}.api-info>div{padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.api-info small{font-weight:900;letter-spacing:.08em}.api-info code{font-size:.74rem}.secret-box{background:rgba(253,202,73,.09);border-color:rgba(211,154,0,.22)}
.billing-grid{gap:16px}.subscription-card{max-width:none;padding:31px}.subscription-card h3{color:var(--ink);font-size:2.4rem}.subscription-card>p{color:var(--muted);font-size:.84rem}.plan-status{align-items:center}.plan-status span{background:rgba(114,217,97,.13);color:#388d36}.plan-status b{color:var(--muted);font-size:.76rem}.usage-list{border-color:var(--line)}.usage-row span,.usage-row b small{color:var(--muted)}.usage-row b{color:var(--ink)}.plans-grid{gap:16px}.plan-card{min-height:410px;padding:24px;border-radius:20px;background:var(--panel)}.plan-card.current{border-color:rgba(80,176,70,.34);box-shadow:0 18px 45px rgba(65,154,57,.08)}.plan-card h3,.plan-limit-list b{color:var(--ink)}.plan-card>p,.plan-limit-list span{color:var(--muted)}.plan-limit-list{border-color:var(--line);background:var(--surface)}

/* Administration */
.admin-money-grid{gap:16px}.money-line,.admin-event,.customer-admin-head{border-color:var(--line);background:var(--surface)}.money-line b,.admin-event b,.customer-admin-head b{color:var(--ink)}.money-line span,.admin-event small,.customer-admin-head small{color:var(--muted)}.admin-plan-row{border-color:var(--line);background:var(--surface)}.admin-workspace-stats span{border-color:var(--line);background:var(--surface-strong);color:var(--muted)}.warning-box{background:rgba(253,202,73,.12);color:#8b6800}.danger-btn{border-color:rgba(231,72,95,.25);background:rgba(255,97,120,.09);color:#c83d53}

/* Dialogs and production detail */
dialog{color:var(--text)}dialog::backdrop{background:rgba(1,4,27,.70);backdrop-filter:blur(9px)}
.dialog-card,.production-dialog{border:1px solid var(--line);border-radius:24px;background:var(--panel);color:var(--text);box-shadow:var(--shadow-lg)}.dialog-card{padding:27px}.dialog-head{padding-bottom:16px;border-bottom:1px solid var(--line)}.dialog-head h3{color:var(--ink)}.dialog-head small{color:var(--muted);font-weight:900;letter-spacing:.08em}.icon-btn{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--muted);font-size:1.35rem}.icon-btn:hover{background:rgba(255,97,120,.09);border-color:rgba(231,72,95,.22);color:var(--danger)}
.mini-form{padding:18px;border-radius:16px;background:var(--surface)}.mini-form h4{color:var(--ink)}.scene-row{border-color:var(--line);background:var(--panel);color:var(--muted)}.asset-row{border-color:var(--line);color:var(--muted)}
.control-summary{color:var(--ink)}.control-title-row>b{color:var(--ink)}.stage{color:var(--muted)}.stage::before{background:var(--line)}.stage i{border-color:var(--line-strong);background:var(--panel)}.control-grid .panel{background:var(--surface)}.control-section{border-radius:18px;background:var(--surface)}.scene-control,.asset-state-list>div,.event-list>div{border-color:var(--line);background:var(--panel)}.scene-head b,.asset-state-list b,.event-list b{color:var(--ink)}.scene-main>small,.asset-state-list small,.event-list small{color:var(--muted)}.production-footer-actions{background:linear-gradient(transparent,var(--panel) 35%)}
.scene-reference-block{border-color:var(--line);background:var(--surface)}.scene-ref,.frame-plan{border-color:var(--line);background:var(--panel)}.scene-ref figcaption span,.frame-plan-grid span{color:var(--muted)}.frame-plan-grid>div{background:var(--surface)}
.production-bible-section{border-radius:23px;background:radial-gradient(circle at 90% 0,rgba(26,124,247,.25),transparent 28%),linear-gradient(140deg,#010135,#07094a 60%,#101145);box-shadow:0 24px 60px rgba(1,1,53,.17)}
.production-bible-card{border-radius:16px;background:rgba(255,255,255,.055)}

/* Toast */
.toast{right:26px;bottom:24px;max-width:420px;padding:13px 16px;border:1px solid rgba(26,124,247,.22);border-radius:13px;background:#080a30;color:#eef3ff;box-shadow:0 20px 55px rgba(1,1,35,.28);font-size:.77rem}.toast.show{transform:none}.toast.error{border-color:rgba(255,97,120,.35);color:#ffc0c9}

@media(max-width:1320px){
  .app-shell{grid-template-columns:248px minmax(0,1fr)}
  .main{padding:0 28px 60px}
  .hero-card{grid-template-columns:minmax(0,1fr) 390px;padding:38px 36px;gap:30px}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .control-hero{align-items:flex-start}.control-kpis{grid-template-columns:repeat(2,1fr);min-width:330px}
}

@media(max-width:1040px){
  .auth-shell{grid-template-columns:1fr;padding:12px}.brand-panel{display:none}.auth-card{width:min(480px,calc(100% - 24px));margin:72px auto}.mobile-brand{display:flex}
  .app-shell{grid-template-columns:86px minmax(0,1fr)}
  .sidebar{padding:20px 11px}.side-brand{justify-content:center;padding:0 0 22px}.side-brand .brand-wordmark,.brand-version,.nav-section-label,.nav-label{display:none}
  #nav{gap:7px;margin-top:17px}.nav-item{justify-content:center;padding:5px}.nav-item.active::after{right:-11px}.nav-iconbox{width:40px;height:40px;flex-basis:40px}
  .workspace-chip{display:flex;justify-content:center;padding:8px}.workspace-chip>div{display:none}.sidebar-signout{padding:10px}.sidebar-signout span{display:none}
  .main{padding:0 22px 50px}.topbar{align-items:flex-start}.page-heading p{max-width:430px}
  .hero-card{grid-template-columns:1fr}.queue-visual{max-width:600px}.split,.settings-grid,.billing-grid{grid-template-columns:1fr}
}

@media(max-width:760px){
  .app-shell{display:block}.sidebar{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:50;width:100%;height:auto;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.09);box-shadow:0 -15px 40px rgba(1,1,35,.20)}
  .sidebar::before,.side-brand,.sidebar-bottom,.nav-section-label{display:none}#nav{display:flex;gap:3px;margin:0;overflow-x:auto;scrollbar-width:none}.nav-item{flex:0 0 58px;min-height:50px;padding:4px;border-radius:11px}.nav-item.active::after{left:50%;right:auto;top:-7px;width:22px;height:3px;transform:translateX(-50%)}.nav-iconbox{width:40px;height:40px;flex-basis:40px}
  .main{padding:0 14px 94px}.topbar{position:relative;min-height:0;padding:20px 0 17px;margin-bottom:20px;align-items:flex-start}.page-heading h2{font-size:1.45rem}.page-heading p{display:none}.top-actions{gap:6px}.top-actions .pill,.top-actions .theme-label,.top-actions .ghost span{display:none}.top-actions .theme-toggle,.top-actions .ghost{min-width:42px;width:42px;padding:9px}.top-actions .primary span{display:none}.top-actions .primary{width:42px;padding:9px}
  .hero-card{min-height:0;padding:30px 24px;border-radius:22px}.hero-card h3{font-size:2.35rem}.hero-card p{font-size:.84rem}.hero-actions{align-items:stretch;flex-direction:column}.queue-visual{grid-template-columns:1fr 15px 1fr 15px 1fr 15px 1fr;padding:12px}.queue-node{padding:9px 2px}.queue-node>span{width:34px;height:34px}.queue-node small{font-size:.56rem}
  .stats{grid-template-columns:1fr 1fr;gap:10px}.stats article.stat-card{min-height:138px;padding:18px}.stats b{font-size:2rem}.split,.settings-grid,.billing-grid,.admin-money-grid{grid-template-columns:1fr}.panel{padding:20px}.project-grid,.plans-grid{grid-template-columns:1fr}.section-actions{align-items:flex-start}.section-actions p{max-width:60%}.control-hero{padding:23px 20px}.control-kpis{min-width:0;width:100%;grid-template-columns:1fr 1fr}.control-grid{grid-template-columns:1fr 1fr}.project-detail-grid,.api-info,.two{grid-template-columns:1fr}.dialog-card{padding:20px}.auth-card{padding:32px 24px}
}

@media(max-width:440px){
  .hero-card h3{font-size:2rem}.queue-visual{display:none}.stats{grid-template-columns:1fr}.section-actions{display:grid}.section-actions p{max-width:none}.section-actions .primary{width:100%}.control-grid{grid-template-columns:1fr}.top-actions .theme-toggle{display:none}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto;animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms}}


/* v3.1.0-alpha.1 Hotfix 5 — customer-facing UI polish */
html,body,button,input,select,textarea,dialog,table,h1,h2,h3,h4,h5,h6,p,span,small,label,a,b,strong,th,td{font-family:"SomarSans",Arial,sans-serif;font-style:normal}
.status{white-space:nowrap}
.status.assembly_queued,.status.assembling,.status.storage_sync,.status.sync_store{background:rgba(18,124,245,.12);color:#77b4ff}
.status.review_result,.status.ready{background:rgba(116,217,96,.10);color:#78bd62}
.status.receiving,.status.postproduction{background:rgba(253,202,73,.12);color:#bb8d12}

.scene-reference-strip{min-width:0;max-width:100%}
.scene-ref{min-width:0;max-width:154px}
.scene-ref figcaption{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-width:0;max-width:100%;overflow:hidden}
.scene-ref figcaption b{display:inline-flex;align-items:center;justify-content:center;min-width:0;width:auto;max-width:82px;padding:0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scene-ref figcaption span{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.scene-ref.missing small{display:block;width:100%;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.asset-row{min-width:0;overflow:hidden}
.asset-row>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.scene-ref{max-width:132px}}

/* Hotfix 5: restore the Reparo dashboard typography without shipping font binaries. */
:root{--reparo-font:"SomarSans",Arial,sans-serif}
html,body,button,input,select,textarea,dialog,table{font-family:var(--reparo-font);font-style:normal}
/* Reparo / cinematic operations. Shared across workspace and public pages. */
/* Production UI release 2026.09.05. No mock data or preview actions. */
:root,html[data-theme="light"]{--blue:#1a7cf7;--green:#72d961;--yellow:#fdca49;--navy:#010135;--bg:#f2f5fb;--panel:#fff;--surface:#f7f9fd;--surface-strong:#edf1f8;--line:#e0e6f0;--ink:#08092c;--text:#08092c;--muted:#68728a;--muted-strong:#48516b}
html[data-theme="dark"]{--bg:#06061d;--panel:#10112e;--surface:#141532;--surface-strong:#1b1e3e;--line:#282c49;--ink:#f4f6ff;--text:#f4f6ff;--muted:#9da6bf;--muted-strong:#c1c9dd}
body,html[data-theme="dark"] body{background:radial-gradient(ellipse at 90% 0,rgba(26,124,247,.11),transparent 42%),var(--bg)}
.app-shell{grid-template-columns:250px minmax(0,1fr)}.main{padding:0 34px 70px;max-width:1850px}
.sidebar,html[data-theme="dark"] .sidebar{background:radial-gradient(ellipse at 0 70%,#1a7cf71b,transparent 60%),#01012b;border-right:1px solid #ffffff0b;box-shadow:none}
.sidebar::before{display:none}.brand-mark{background:linear-gradient(145deg,#1a7cf7 35%,#72d961);box-shadow:none;transform:none}.brand-mark span{transform:none}
.nav-item{font-size:14px;font-weight:600}.nav-item .nav-label{background:transparent;color:inherit;justify-content:start}.nav-item:nth-child(n) span.nav-iconbox{background:transparent;color:#9daccc;box-shadow:none}.nav-item.active span.nav-iconbox{color:#72d961;background:transparent;box-shadow:none}
.nav-item.active,.nav-item:hover,html[data-theme="dark"] .nav-item.active{background:#ffffff09;border-color:#ffffff12;box-shadow:none;transform:none}.nav-item::before,.nav-item::after{display:none}
.nav-section-label{font-size:12px}.topbar{min-height:104px;background:transparent;position:relative;border:0;margin-bottom:12px}
.page-heading h2{font-size:30px;letter-spacing:-.025em}.page-heading p{font-size:14px}.eyebrow{font-size:12px;letter-spacing:.1em}.eyebrow::before{display:none}
.preview-ribbon{border:0;background:transparent;border-bottom:1px solid var(--line);border-radius:0;padding:9px 0;margin:0}.preview-ribbon span,.preview-ribbon p{font-size:12px}.preview-ribbon span i{display:none}
.primary,.primary:hover{background:linear-gradient(110deg,#1879f3,#1964d8);border:1px solid #1a7cf7;box-shadow:0 6px 16px #1a7cf719;transform:none;font-size:14px;border-radius:10px}
.ghost,.theme-toggle{font-size:14px;box-shadow:none;border-radius:10px}.link{font-size:14px}
.panel,.project-card,.production-card,.plan-card,.mini-form,.control-section,.control-hero,.stats article.stat-card{border:1px solid var(--line);box-shadow:0 4px 22px #01013503;border-radius:18px}
.project-card::before,.project-card::after,.stats article::before,.stats article::after,.control-hero::after{display:none}
.production-card{border-left:1px solid var(--line)}.project-card:hover,.production-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px #0101350a}
.status{font-size:12px;text-transform:capitalize;letter-spacing:0}.panel small,.panel-head small{font-size:12px}.list-row b{font-size:15px}.list-row small{font-size:13px}.table-wrap td{font-size:14px}.table-wrap th{font-size:12px}
.r-overview{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr);gap:20px;margin-bottom:20px}
.r-spotlight{position:relative;isolation:isolate;border-radius:22px;overflow:hidden;padding:32px;background:radial-gradient(ellipse at 0 100%,#1a7cf742,transparent 58%),radial-gradient(ellipse at 100% 0,#72d96112,transparent 60%),#01012b;color:white;display:grid;grid-template-columns:1fr 42%;gap:20px;align-items:center}
.r-spotlight::before{content:"PRODUCTION";position:absolute;z-index:-1;font-size:100px;font-weight:900;letter-spacing:-.04em;bottom:-24px;left:16px;color:#ffffff04}
.r-spotlight small{color:#72d961;font-size:12px;font-weight:700;letter-spacing:.12em}.r-spotlight h3{font-size:32px;line-height:1.15;margin:15px 0}.r-spotlight h3 span{background:linear-gradient(100deg,#58a7ff,#72d961 65%,#fdca49);background-clip:text;-webkit-text-fill-color:transparent}
.r-spotlight p{color:#9faacb;font-size:14px;line-height:1.65}.r-spotlight .primary{margin-top:12px}.r-shot{margin:0;transform:rotate(3deg);border:6px solid #ffffff0b;border-radius:12px;overflow:hidden;box-shadow:0 16px 50px #0005}.r-shot img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.r-shot figcaption{background:#ffffff09;padding:12px;color:#cad4ec;font-size:12px}
.r-health{padding:26px;border:1px solid var(--line);border-radius:22px;background:var(--panel)}.r-health>small{font-size:12px;color:var(--muted)}.r-health h3{font-size:23px;margin:12px 0 20px}.r-health-row{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line);font-size:14px}.r-health-row b{font-weight:600}
.r-six{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0 30px}
.r-metric{position:relative;overflow:hidden;text-align:left;min-height:162px;padding:23px;border:1px solid var(--line);border-radius:18px;background:var(--panel);color:var(--ink);transition:transform .22s,box-shadow .22s}.r-metric:hover{transform:translateY(-3px);box-shadow:0 15px 30px #0101350a}
.r-metric::after{content:"";position:absolute;width:150px;height:150px;right:-55px;bottom:-75px;border-radius:50%;background:radial-gradient(circle,var(--glow),transparent 65%);pointer-events:none}.r-metric:nth-child(3n+1){--glow:#1a7cf72e}.r-metric:nth-child(3n+2){--glow:#72d96133}.r-metric:nth-child(3n){--glow:#fdca4938}
.r-metric header{display:flex;justify-content:space-between;color:var(--muted);font-size:14px}.r-metric header svg{width:20px;height:20px;color:var(--blue)}.r-metric:nth-child(3n+2) header svg{color:#56b744}.r-metric:nth-child(3n) header svg{color:#c59719}
.r-metric strong{display:block;font-size:34px;line-height:1.15;margin:15px 0 4px}.r-metric small{font-size:13px;color:var(--muted)}
.r-heading{display:flex;justify-content:space-between;align-items:center;margin:26px 0 17px}.r-heading h3{font-size:21px;margin:0}.r-heading p{font-size:14px;color:var(--muted);margin:4px 0 0}
.r-films{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.r-film{border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:0;text-align:left;overflow:hidden;color:var(--ink)}.r-film img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.r-film>div{padding:18px}.r-film b{font-size:17px}.r-film small{display:block;font-size:13px;color:var(--muted);margin-top:7px}.r-film-placeholder{height:150px;display:grid;place-items:center;background:var(--surface)}.r-film-placeholder svg{width:40px;height:40px;color:var(--muted)}
.review-pages{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:16px 0;margin-top:26px;border-top:1px solid var(--line)}.review-pages a{font-size:14px;text-decoration:none;color:var(--blue)}.review-pages small{font-size:12px;color:var(--muted);margin-right:auto}
.auth-shell{background:var(--bg);padding:24px;grid-template-columns:1.1fr .9fr}.brand-panel{background:radial-gradient(ellipse at 0 100%,#1a7cf730,transparent 60%),radial-gradient(ellipse at 95% 20%,#fdca4911,transparent 50%),#01012b;border:0}.brand-copy h1{font-size:clamp(40px,4.6vw,78px);line-height:1.02}.brand-copy h1::first-line{color:#fff}.brand-copy p{font-size:17px}.auth-card{box-shadow:0 20px 60px #0101350a}.auth-form label,.stack-form label{font-size:14px}
.r-auth-links{margin-top:22px;text-align:center;color:var(--muted);font-size:13px}.r-auth-links a{color:var(--blue);margin:0 6px}.r-preview-back{position:fixed;left:38px;bottom:24px;z-index:40;color:#99baec;font-size:14px}
.r-detail-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 20px}.r-detail-tabs button{padding:10px 16px;background:var(--surface);border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:14px}.r-detail-tabs button.active{background:#1a7cf7;color:#fff;border-color:#1a7cf7}.r-detail-pane[hidden]{display:none}
.production-bible-section{background:radial-gradient(ellipse at 100% 0,#1a7cf730,transparent 50%),#01012b;border:0;padding:28px;margin:0;border-radius:20px;color:#fff}
.production-bible-section::before,.production-bible-section::after{display:none}.production-bible-section .panel-head h3{font-size:30px;background:linear-gradient(90deg,#fff,#96bfff);background-clip:text;-webkit-text-fill-color:transparent}.production-bible-section .panel-head small{color:#72d961}
.production-bible-v2-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.production-bible-v2-card,.production-bible-card.accent-green,.production-bible-card.accent-blue,.production-bible-card.accent-violet,.production-bible-card.accent-yellow,.production-bible-card.accent-red,.production-bible-card.accent-turquoise,.production-bible-card.accent-cyan,.production-bible-card.accent-navy{grid-column:auto;min-height:190px;border:1px solid #ffffff14;background:#ffffff05;border-radius:14px;padding:20px;box-shadow:none}
.production-bible-card:nth-child(3n+1){background:radial-gradient(ellipse at 100% 100%,#1a7cf714,transparent 70%),#ffffff05}.production-bible-card:nth-child(3n+2){background:radial-gradient(ellipse at 100% 100%,#72d9610d,transparent 70%),#ffffff05}.production-bible-card:nth-child(3n){background:radial-gradient(ellipse at 100% 100%,#fdca4910,transparent 70%),#ffffff05}
.production-bible-card-head{align-items:center}.production-bible-card-head small{color:#d5ddf4;font-size:12px}.bible-card-index{background:transparent;border:0;color:#72d961;font-size:15px}
.production-bible-card p,.production-bible-card li{font-size:15px;color:#c6cde6;line-height:1.65}.production-bible-schema,.production-bible-meta span{font-size:12px}
.r-reference-strip{display:flex;gap:10px;overflow:auto;padding:10px 0}.r-reference-strip figure{margin:0;flex:0 0 175px}.r-reference-strip img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:9px}.r-reference-strip figcaption{font-size:12px;color:var(--muted);padding:7px 0}
.r-scene{border:1px solid var(--line);padding:20px;margin-bottom:12px;border-radius:14px}.r-scene>header{display:flex;justify-content:space-between;gap:12px}.r-scene h4{margin:0;font-size:17px}.r-scene p{font-size:14px;line-height:1.65;color:var(--muted)}.r-scene summary{font-size:14px;cursor:pointer}.r-scene small{font-size:12px;color:var(--muted)}
.r-keygrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.r-keygrid>div{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.r-keygrid small,.r-keygrid b{display:block}.r-keygrid small{font-size:12px;color:var(--muted);margin-bottom:8px}.r-keygrid b{font-size:16px}
.legal-body{background:radial-gradient(ellipse at 20% 0,#1a7cf71a,transparent 50%),#06061d;color:#eef2ff;min-height:100vh}.legal-body .wrap{max-width:1000px;margin:auto;padding:42px 24px 90px}.legal-body h1{font-size:52px;line-height:1.1;margin:30px 0 18px;background:linear-gradient(100deg,#fff,#7db7ff 65%,#72d961);background-clip:text;-webkit-text-fill-color:transparent}.legal-body .card{background:#ffffff04;border:1px solid #ffffff12;border-radius:20px;padding:36px;color:#bcc6df;line-height:1.8}.legal-body h2{color:#fff;font-size:24px;margin-top:30px}.legal-body a{color:#72d961}.legal-body .muted{color:#a8b2cc}.legal-body .review-pages{border-color:#ffffff12}.legal-body .review-pages a{color:#93bdff}
.oauth-preview{max-width:520px;padding:32px;margin:70px auto;border:1px solid #ffffff15;border-radius:24px;background:#11122e;color:#fff}.oauth-preview h1{font-size:32px}.oauth-preview p{font-size:16px;color:#b7bfd9;line-height:1.7}.oauth-preview label{margin:18px 0;font-size:14px;color:#c0c8df}.oauth-preview input{background:#090b23;color:#fff;border:1px solid #343853}.oauth-scopes{background:#1a7cf70b;border:1px solid #ffffff12;border-radius:12px;padding:18px}.oauth-scopes code{color:#96bfff;font-size:13px;overflow-wrap:anywhere}.oauth-preview .primary{width:100%}
@media(max-width:1150px){.r-overview{grid-template-columns:1fr}.r-health{display:none}.production-bible-v2-grid{grid-template-columns:repeat(2,1fr)}.app-shell{grid-template-columns:82px minmax(0,1fr)}.sidebar .brand-wordmark,.sidebar .brand-version,.nav-label,.nav-section-label{display:none}.sidebar .nav-item{justify-content:center}.workspace-chip>div{display:none}.sidebar-signout span{display:none}}
@media(max-width:760px){.app-shell{display:block}.main{padding:0 16px 110px}.sidebar{height:auto;top:auto;bottom:0;padding:7px}.r-six{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.r-metric{padding:18px;min-height:148px}.r-spotlight{grid-template-columns:1fr;padding:26px}.r-shot{display:none}.r-films{grid-template-columns:1fr}.production-bible-v2-grid,.r-keygrid{grid-template-columns:1fr}.production-bible-section{padding:18px}.r-preview-back{position:static;display:block;padding:15px;text-align:center}.oauth-preview{margin:25px 15px;padding:24px}.legal-body h1{font-size:38px}.legal-body .card{padding:24px}.review-pages small{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none;transition:none;scroll-behavior:auto}}

/* Live application adapters and the supplied, unmodified logo. */
.reparo-logo{display:block;object-fit:contain;width:52px;height:52px;flex:0 0 52px;transform:none;box-shadow:none;background:transparent;border:0}
.auth-brand-row .reparo-logo{width:70px;height:70px;flex-basis:70px}.side-brand .reparo-logo{width:43px;height:43px;flex-basis:43px}
.r-workflow{display:grid;gap:12px}.r-workflow>div{display:flex;gap:12px;align-items:center;padding:16px;border:1px solid #ffffff15;border-radius:12px;background:#ffffff05;color:#cbd6ed;font-size:14px}.r-workflow .vio-icon{color:#72d961;width:25px;height:25px}.r-workflow>div:nth-child(2) .vio-icon{color:#74b4ff}.r-workflow>div:nth-child(3) .vio-icon{color:#fdca49}
.stats.r-six-live{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0 30px}
.stats.r-six-live article{position:relative;overflow:hidden;min-height:160px;padding:24px;border:1px solid var(--line);border-radius:18px;background:radial-gradient(ellipse at 100% 100%,var(--r-tint),transparent 62%),var(--panel);box-shadow:0 4px 22px #01013503}
.stats.r-six-live article:nth-child(3n+1){--r-tint:#1a7cf70e}.stats.r-six-live article:nth-child(3n+2){--r-tint:#72d96112}.stats.r-six-live article:nth-child(3n){--r-tint:#fdca4918}
.stats.r-six-live .mini-icon{background:transparent;border:0;box-shadow:none}.stats.r-six-live article:nth-child(3n+1) .mini-icon{color:#1a7cf7}.stats.r-six-live article:nth-child(3n+2) .mini-icon{color:#5cbd4d}.stats.r-six-live article:nth-child(3n) .mini-icon{color:#c99d22}
.stats.r-six-live .stat-head>span:first-child{font-size:14px}.stats.r-six-live small{font-size:13px}.stats.r-six-live b{font-size:34px}
.production-legal-links{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;padding:20px 0;font-size:14px}.production-legal-links a{color:var(--blue);text-decoration:none}.production-legal-links a:hover{text-decoration:underline}
.legal-body>.wrap>.reparo-logo{width:60px;height:60px}.legal-body .production-legal-links a{color:#94beff}
body.reparo-oauth{display:grid;place-items:center;min-height:100vh;margin:0;background:radial-gradient(ellipse at 10% 90%,#1a7cf726,transparent 50%),radial-gradient(ellipse at 95% 0,#fdca490b,transparent 55%),#06061d;color:#fff;font-family:var(--reparo-font)}
.reparo-oauth .card{box-sizing:border-box;width:min(530px,calc(100% - 32px));margin:35px 0;background:#11122e;border:1px solid #ffffff15;border-radius:24px;padding:34px;box-shadow:0 25px 70px #0003}
.reparo-oauth .brand{display:flex;align-items:center;gap:16px;color:#72d961;font-size:14px;margin-bottom:24px}.reparo-oauth h1{font-size:32px;background:linear-gradient(100deg,#fff,#91bdff);background-clip:text;-webkit-text-fill-color:transparent}
.reparo-oauth p{font-size:16px;color:#b4bfd9;line-height:1.7}.reparo-oauth .scope{background:#1a7cf70b;border:1px solid #ffffff12;border-radius:12px;padding:18px}.reparo-oauth .scope span{font-size:14px;overflow-wrap:anywhere;color:#93bbf5}
.reparo-oauth label{font-size:14px;color:#c6cfe3}.reparo-oauth input{background:#080b21;border:1px solid #343957;color:#fff;border-radius:10px;min-height:45px;box-sizing:border-box}.reparo-oauth button{background:linear-gradient(110deg,#1a7cf7,#1768d8);color:#fff;border:0;border-radius:10px;font:600 16px var(--reparo-font);padding:14px;width:100%}
.reparo-oauth button:focus-visible,.reparo-oauth a:focus-visible{outline:3px solid #fdca49;outline-offset:3px}
@media(max-width:760px){.stats.r-six-live{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stats.r-six-live article{padding:18px;min-height:146px}.r-workflow{display:none}.reparo-oauth .card{padding:25px}.side-brand .reparo-logo{width:40px;height:40px}}

/* Reparo Manual-Parity UI extension — 2026-09-06
   Visual base remains Reparo_UI_2026_09_05. */

.manual-parity-scene-prompt{
  margin-top:14px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:17px;
  background:color-mix(in srgb,var(--surface) 94%,var(--blue) 6%);
}

.manual-parity-prompt-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:9px;
}

.manual-parity-prompt-head>div{
  display:grid;
  gap:3px;
}

.manual-parity-prompt-head small{
  color:var(--muted);
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
}

.manual-parity-prompt-head b{
  font-size:14px;
}

.manual-parity-prompt-count{
  flex:0 0 auto;
  padding:5px 8px;
  border:1px solid color-mix(in srgb,var(--green) 42%,var(--line));
  border-radius:999px;
  color:var(--green);
  font-size:11px;
  font-weight:800;
}

.manual-parity-prompt-count.over{
  color:#ff7c90;
  border-color:rgba(255,124,144,.45);
}

.manual-parity-prompt-text{
  display:block;
  width:100%;
  min-height:150px;
  max-height:300px;
  resize:vertical;
  box-sizing:border-box;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:13px;
  background:color-mix(in srgb,var(--card) 94%,var(--navy) 6%);
  color:var(--text);
  font:12px/1.65 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;
  white-space:pre-wrap;
}

.manual-parity-prompt-meta{
  margin-top:8px;
  color:var(--muted);
  font-size:11px;
  line-height:1.5;
  overflow-wrap:anywhere;
}

#agnesModel{
  cursor:pointer;
}

@media(max-width:900px){
  .manual-parity-prompt-head{
    align-items:flex-start;
  }

  .manual-parity-prompt-text{
    min-height:130px;
  }
}

[data-theme="dark"] .manual-parity-scene-prompt{
  background:#0f1239;
}

[data-theme="dark"] .manual-parity-prompt-text{
  background:#0a0d2e;
}

/* Hotfix 11 — manual multi-scene production parity */
.manual-film-scene-list{
  display:grid;
  gap:9px;
  margin:12px 0 14px;
}
.manual-film-scene{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(120px,160px) minmax(150px,220px);
  gap:10px;
  align-items:end;
  padding:11px 12px;
}
.manual-film-scene>div{
  display:grid;
  gap:3px;
  min-width:0;
}
.manual-film-scene>div b,
.manual-film-scene>div small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.manual-film-scene label{
  display:grid;
  gap:4px;
  font-size:11px;
  color:var(--muted);
}
.manual-film-scene select{
  width:100%;
  min-width:0;
}
@media(max-width:760px){
  .manual-film-scene{
    grid-template-columns:1fr;
    align-items:stretch;
  }
}

/* Reparo Studio v2.9.1 — responsive shell and compact visual scale.
   Tailwind-inspired spacing, surfaces and interaction states without a runtime CDN. */

:root{
  --ui-radius-sm:10px;
  --ui-radius:16px;
  --ui-radius-lg:22px;
  --ui-ring:0 0 0 4px rgba(26,124,247,.11);
  --ui-card-shadow:0 8px 28px rgba(16,24,60,.055);
  --ui-card-shadow-hover:0 16px 42px rgba(16,24,60,.10);
}

html{font-size:14px}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button{-webkit-tap-highlight-color:transparent}

/* Compact desktop scale: equivalent to the comfortable density seen near 80% browser zoom. */
.app-shell{grid-template-columns:238px minmax(0,1fr)}
.main{width:100%;max-width:1800px;padding:0 clamp(24px,2.25vw,38px) 58px}
.topbar{min-height:88px;margin-bottom:22px;padding:16px 0 15px;gap:20px}
.page-heading h2{font-size:1.6rem}
.page-heading p{font-size:.78rem}
.top-actions{gap:7px}
.primary,.ghost,.theme-toggle,.sidebar-signout{min-height:38px;padding:8px 13px;border-radius:10px;font-size:.86rem}
.theme-toggle{min-width:76px}

/* The desktop menu owns its vertical scroll instead of clipping lower navigation items. */
.sidebar{
  display:flex;
  flex-direction:column;
  height:100dvh;
  min-height:0;
  overflow:hidden;
  padding:19px 13px 13px;
}
.side-brand{flex:0 0 auto;padding:0 8px 20px}
.side-brand .reparo-logo{width:39px;height:39px;flex-basis:39px}
.side-brand .brand-wordmark b{font-size:1rem}
#nav{
  flex:1 1 auto;
  min-height:0;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  margin:14px -3px 10px 0;
  padding:0 6px 10px 0;
  scrollbar-gutter:stable;
}
#nav::-webkit-scrollbar{width:5px}
#nav::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(130,142,188,.28)}
.nav-section-label{font-size:.58rem;padding:0 10px 4px}
.nav-section-label.system-label{margin-top:10px}
.nav-item{min-height:42px;gap:10px;padding:4px 7px;border-radius:11px;font-size:.8rem}
.nav-iconbox{width:32px;height:32px;flex-basis:32px;border-radius:9px}
.nav-iconbox .vio-icon{width:17px;height:17px}
.sidebar-bottom{flex:0 0 auto;margin-top:0;padding-top:10px;border-top:1px solid rgba(255,255,255,.06)}
.workspace-chip{grid-template-columns:34px minmax(0,1fr);padding:9px;border-radius:12px}
.workspace-avatar{width:34px;height:34px;border-radius:10px}

.mobile-menu-btn,.mobile-menu-close,.mobile-nav-backdrop{display:none}

/* More refined, utility-like dashboard surfaces. */
.panel,.project-card,.production-card,.plan-card,.mini-form,.control-section,.stats article.stat-card,.r-health{
  border-color:color-mix(in srgb,var(--line) 90%,var(--blue) 10%);
  background:
    linear-gradient(145deg,color-mix(in srgb,var(--panel) 98%,var(--blue) 2%),var(--panel));
  box-shadow:var(--ui-card-shadow);
}
html[data-theme="dark"] .panel,
html[data-theme="dark"] .project-card,
html[data-theme="dark"] .production-card,
html[data-theme="dark"] .plan-card,
html[data-theme="dark"] .mini-form,
html[data-theme="dark"] .control-section,
html[data-theme="dark"] .stats article.stat-card,
html[data-theme="dark"] .r-health{
  background:linear-gradient(145deg,rgba(20,22,58,.97),rgba(13,15,45,.98));
  box-shadow:0 12px 34px rgba(0,0,20,.16);
}
.project-card,.production-card,.plan-card,.stats article.stat-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.project-card:hover,.production-card:hover,.plan-card:hover,.stats article.stat-card:hover{transform:translateY(-2px);box-shadow:var(--ui-card-shadow-hover)}
.panel{padding:21px;border-radius:17px}
.panel-head{margin-bottom:15px}
.panel h3{font-size:1.05rem}
.r-overview{gap:16px;margin-bottom:16px}
.r-spotlight{padding:26px;border-radius:19px;grid-template-columns:minmax(0,1fr) 39%;box-shadow:0 18px 48px rgba(1,1,53,.17)}
.r-spotlight::before{font-size:76px}
.r-spotlight h3{margin:11px 0;font-size:clamp(1.75rem,2.15vw,2.45rem)}
.r-spotlight p{font-size:.83rem;line-height:1.55}
.r-workflow{gap:8px}
.r-workflow>div{padding:12px;border-radius:10px;font-size:.82rem}
.r-workflow .vio-icon{width:21px;height:21px}
.r-health{padding:21px;border-radius:19px}
.r-health h3{margin:9px 0 15px;font-size:1.45rem}
.r-health-row{padding:9px 0;font-size:.85rem}
.stats.r-six-live{gap:13px;margin:17px 0 23px}
.stats.r-six-live article{min-height:136px;padding:19px;border-radius:16px}
.stats.r-six-live .stat-head>span:first-child{font-size:.82rem}
.stats.r-six-live b{font-size:2.2rem}
.stats.r-six-live small{font-size:.74rem}
.mini-icon{width:34px;height:34px;border-radius:10px}
.section-actions{margin-bottom:14px}
.project-grid{gap:13px}
.project-card{min-height:186px;padding:19px;border-radius:17px}
.production-card{padding:18px 19px;border-radius:15px}
.control-hero{min-height:188px;padding:25px 27px;border-radius:18px}
.control-hero h3{font-size:1.55rem}
.control-kpis div{padding:12px 9px}
.subscription-card{padding:25px}
.subscription-card h3{font-size:2rem}
.plan-card{min-height:370px;padding:20px}
.table-wrap th{padding:12px 14px}
.table-wrap td{padding:13px 14px}

/* Authentication and registration polish. */
.auth-shell{
  padding:14px;
  grid-template-columns:minmax(0,1.22fr) minmax(390px,.78fr);
  background:
    radial-gradient(circle at 90% 8%,rgba(26,124,247,.09),transparent 23rem),
    radial-gradient(circle at 12% 92%,rgba(114,217,97,.07),transparent 25rem),
    var(--bg);
}
.brand-panel{min-height:calc(100vh - 28px);padding:clamp(32px,3.6vw,62px);border-radius:26px}
.brand-copy{margin-top:clamp(58px,8vh,104px)}
.brand-copy h1{font-size:clamp(3rem,4.65vw,5.2rem)}
.brand-copy p{font-size:1rem}
.auth-production-map{margin:clamp(34px,5.5vh,64px) 0 22px}
.map-step{padding:13px;border-radius:14px}
.signal-grid>div{padding:10px 11px}
.auth-card{
  isolation:isolate;
  width:min(440px,88%);
  padding:35px 34px 30px;
  overflow:hidden;
  border-radius:22px;
  box-shadow:0 24px 70px rgba(19,31,76,.13);
}
.auth-card::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:0;right:0;top:0;
  height:4px;
  background:linear-gradient(90deg,var(--blue),var(--turquoise),var(--green),var(--yellow));
}
.auth-card::after{
  content:"";
  position:absolute;
  z-index:-2;
  width:190px;height:190px;
  right:-105px;top:-105px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(26,124,247,.12),transparent 68%);
}
.auth-card[data-auth-mode="register"]::after{background:radial-gradient(circle,rgba(114,217,97,.15),transparent 68%)}
.auth-heading{margin-bottom:20px}
.auth-heading h2{font-size:1.75rem}
.auth-tabs{padding:4px;border-radius:12px}
.tab{min-height:38px;font-size:.82rem}
.auth-form{gap:13px;margin-top:19px}
.auth-form input{min-height:43px;background:color-mix(in srgb,var(--surface) 97%,var(--blue) 3%)}
.auth-form .primary{margin-top:2px;min-height:44px}
.auth-assurance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:18px}
.auth-assurance span{min-width:0;display:flex;align-items:center;justify-content:center;gap:5px;padding:8px 5px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);font-size:.61rem;font-weight:800;text-align:center}
.auth-assurance .vio-icon{width:13px;height:13px;flex:0 0 13px;color:var(--blue)}
.auth-assurance span:nth-child(2) .vio-icon{color:var(--green)}
.auth-assurance span:nth-child(3) .vio-icon{color:var(--violet)}
.auth-card .production-legal-links{padding:15px 0 4px;font-size:.72rem}
.auth-foot{margin-top:11px}

@media(min-width:961px){
  .sidebar .brand-wordmark{display:grid}
  .sidebar .brand-version{display:block}
  .sidebar .nav-label{display:inline}
  .sidebar .nav-section-label{display:block}
  .sidebar .nav-item{justify-content:flex-start}
  .workspace-chip{display:grid}
  .workspace-chip>div{display:block}
  .sidebar-signout span{display:inline}
}

@media(max-width:1180px){
  .main{padding-inline:22px}
  .r-overview{grid-template-columns:1fr}
  .r-health{display:none}
  .stats.r-six-live{grid-template-columns:repeat(2,minmax(0,1fr))}
  .r-spotlight{grid-template-columns:minmax(0,1fr) 42%}
}

@media(max-width:960px) and (min-width:761px){
  html{font-size:14.5px}
  .app-shell{grid-template-columns:76px minmax(0,1fr)}
  .sidebar{padding-inline:9px}
  .side-brand{justify-content:center;padding-inline:0}
  .side-brand .brand-wordmark,.nav-section-label,.nav-label,.workspace-chip>div,.sidebar-signout span{display:none}
  #nav{padding-right:0;margin-right:0}
  .nav-item{justify-content:center;padding-inline:3px}
  .nav-iconbox{width:39px;height:39px;flex-basis:39px}
  .workspace-chip{display:flex;justify-content:center;padding:7px}
  .sidebar-signout{padding:8px}
  .r-spotlight{grid-template-columns:1fr}
  .r-workflow{grid-template-columns:repeat(3,1fr)}
}

/* Mobile: real off-canvas menu, no content-covering bottom navigation. */
@media(max-width:760px){
  html{font-size:15px}
  body.mobile-nav-open{overflow:hidden;touch-action:none}
  .app-shell{display:block}
  .main{max-width:none;padding:0 14px 40px}

  .sidebar{
    position:fixed;
    z-index:80;
    left:0;top:0;bottom:0;right:auto;
    width:min(86vw,310px);
    height:100dvh;
    padding:18px 14px max(14px,env(safe-area-inset-bottom));
    border:0;
    border-right:1px solid rgba(255,255,255,.09);
    border-radius:0 20px 20px 0;
    box-shadow:28px 0 80px rgba(1,1,28,.38);
    transform:translate3d(-105%,0,0);
    visibility:hidden;
    transition:transform .26s cubic-bezier(.22,1,.36,1),visibility .26s;
  }
  .sidebar.is-open{transform:translate3d(0,0,0);visibility:visible}
  .sidebar::before{display:block}
  .side-brand{display:flex;justify-content:flex-start;padding:0 5px 16px}
  .side-brand .reparo-logo{width:40px;height:40px;flex-basis:40px}
  .side-brand .brand-wordmark{display:grid}
  .mobile-menu-close{display:grid;place-items:center;width:36px;height:36px;margin-left:auto;padding:0;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.05);color:#b8c0df;font-size:24px;line-height:1}
  #nav{display:grid;flex:1;gap:4px;margin:12px -3px 9px 0;padding:0 7px 12px 0;overflow-y:auto;overflow-x:hidden}
  .nav-section-label{display:block;padding:7px 10px 3px;font-size:.63rem}
  .nav-section-label.system-label{margin-top:7px}
  .nav-item{display:flex;flex:0 0 auto;justify-content:flex-start;width:100%;min-height:45px;padding:5px 8px;border-radius:11px;font-size:.9rem}
  .nav-item .nav-label{display:inline;flex:1}
  .nav-item.active::after{left:auto;right:-8px;top:50%;width:3px;height:22px;transform:translateY(-50%)}
  .nav-iconbox{width:34px;height:34px;flex-basis:34px}
  .sidebar-bottom{display:grid;padding-top:10px}
  .workspace-chip{display:grid;grid-template-columns:34px minmax(0,1fr);justify-content:stretch;padding:9px}
  .workspace-chip>div{display:block}
  .sidebar-signout{display:inline-flex;width:100%}
  .sidebar-signout span{display:inline}

  .mobile-nav-backdrop{display:block;position:fixed;z-index:70;inset:0;border:0;background:rgba(1,3,25,.64);backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s}
  .mobile-nav-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}
  .mobile-menu-btn{display:inline-grid;place-content:center;gap:4px;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:11px;background:var(--panel);box-shadow:var(--shadow-sm)}
  .mobile-menu-btn span{display:block;width:17px;height:2px;border-radius:10px;background:var(--ink)}

  .topbar{position:sticky;top:0;z-index:35;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-height:68px;margin:0 -2px 16px;padding:9px 2px;border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:color-mix(in srgb,var(--bg) 91%,transparent);backdrop-filter:blur(18px)}
  .page-heading{min-width:0}
  .page-heading .eyebrow,.page-heading p{display:none}
  .page-heading h2{margin:0;font-size:1.22rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .top-actions{flex-wrap:nowrap;gap:5px}
  .top-actions .pill,#refreshBtn,.top-actions .theme-label,.top-actions .primary span{display:none}
  .top-actions .theme-toggle,.top-actions .primary{display:inline-grid;place-items:center;min-width:40px;width:40px;height:40px;padding:0}

  .r-overview{display:grid;grid-template-columns:1fr;gap:11px}
  .r-spotlight{grid-template-columns:1fr;padding:21px 18px;border-radius:17px}
  .r-spotlight::before{font-size:48px;bottom:-8px}
  .r-spotlight h3{font-size:1.75rem;line-height:1.08}
  .r-workflow{display:none}
  .stats.r-six-live{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:13px 0 18px}
  .stats.r-six-live article{min-height:124px;padding:16px}
  .stats.r-six-live b{font-size:1.85rem}
  .panel{padding:17px;border-radius:15px}
  .split,.settings-grid,.billing-grid,.admin-money-grid,.project-grid,.plans-grid,.project-detail-grid,.api-info,.two,.control-bottom-grid{grid-template-columns:minmax(0,1fr)}
  .section-actions{align-items:stretch;gap:10px}
  .section-actions p{max-width:none}
  .control-hero{display:grid;grid-template-columns:1fr;padding:19px 17px}
  .control-kpis{min-width:0;width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}
  .subscription-card{padding:19px}
  .subscription-card h3{font-size:1.75rem}
  .plan-status{align-items:flex-start;flex-direction:column}
  .plan-card{min-height:0}
  .table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .dialog-card,.dialog-card.large,.production-dialog{width:min(100%,calc(100vw - 20px));max-height:calc(100dvh - 20px);padding:17px;border-radius:17px}
  dialog{max-width:100vw}
  .toast{left:12px;right:12px;bottom:12px;max-width:none}

  .auth-shell{display:grid;min-height:100dvh;padding:12px;background:radial-gradient(circle at 90% 0,rgba(26,124,247,.14),transparent 18rem),radial-gradient(circle at 5% 100%,rgba(114,217,97,.10),transparent 18rem),var(--bg)}
  .auth-theme-toggle{top:16px;right:16px;min-width:40px;width:40px;padding:0}
  .auth-theme-toggle .theme-label{display:none}
  .brand-panel{display:none}
  .auth-card{width:100%;max-width:440px;margin:58px auto 20px;padding:28px 21px 23px;border-radius:19px}
  .mobile-brand{display:flex;margin-bottom:24px}
  .mobile-brand .reparo-logo{width:44px;height:44px;flex-basis:44px}
  .auth-heading h2{font-size:1.65rem}
  .auth-assurance{grid-template-columns:1fr}
  .auth-assurance span{justify-content:flex-start;padding:8px 10px;font-size:.72rem}
}

@media(max-width:420px){
  .main{padding-inline:11px}
  .topbar{grid-template-columns:auto minmax(0,1fr) auto}
  .top-actions .theme-toggle{display:none}
  .stats.r-six-live{grid-template-columns:1fr}
  .stats.r-six-live article{min-height:112px}
  .section-actions{display:grid}
  .section-actions .primary,.section-actions .ghost{width:100%}
  .control-grid{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  .sidebar,.mobile-nav-backdrop{transition:none}
}


/* Reparo Studio UI Hotfix 5.2 — desktop density calibrated to the visual scale
   the dashboard previously reached near 80% browser zoom. This is real layout
   sizing, not CSS zoom/transform, so hit areas and fixed/sticky behavior remain sane. */
@media (min-width:961px){
  html.dashboard-density{font-size:11.2px}

  html.dashboard-density .app-shell{grid-template-columns:190px minmax(0,1fr)}
  html.dashboard-density .main{max-width:none;padding:0 clamp(19px,1.8vw,30px) 46px}
  html.dashboard-density .topbar{min-height:70px;margin-bottom:18px;padding:13px 0 12px;gap:16px}
  html.dashboard-density .top-actions{gap:6px}
  html.dashboard-density .primary,
  html.dashboard-density .ghost,
  html.dashboard-density .theme-toggle,
  html.dashboard-density .sidebar-signout{min-height:31px;padding:6px 10px;border-radius:8px}
  html.dashboard-density .theme-toggle{min-width:61px}

  html.dashboard-density .sidebar{padding:15px 10px 10px}
  html.dashboard-density .side-brand{padding:0 6px 16px;gap:9px}
  html.dashboard-density .side-brand .reparo-logo{width:31px;height:31px;flex-basis:31px}
  html.dashboard-density #nav{margin:11px -2px 8px 0;padding:0 5px 8px 0;gap:4px}
  html.dashboard-density .nav-section-label{padding:0 8px 3px}
  html.dashboard-density .nav-section-label.system-label{margin-top:8px}
  html.dashboard-density .nav-item{min-height:34px;gap:8px;padding:3px 6px;border-radius:9px}
  html.dashboard-density .nav-iconbox{width:26px;height:26px;flex-basis:26px;border-radius:7px}
  html.dashboard-density .nav-iconbox .vio-icon{width:14px;height:14px}
  html.dashboard-density .sidebar-bottom{padding-top:8px;gap:8px}
  html.dashboard-density .workspace-chip{grid-template-columns:27px minmax(0,1fr);padding:7px;border-radius:10px}
  html.dashboard-density .workspace-avatar{width:27px;height:27px;border-radius:8px}

  html.dashboard-density .panel{padding:17px;border-radius:14px}
  html.dashboard-density .panel-head{margin-bottom:12px}
  html.dashboard-density .r-overview{gap:13px;margin-bottom:13px}
  html.dashboard-density .r-spotlight{padding:21px;border-radius:15px;gap:16px}
  html.dashboard-density .r-spotlight::before{font-size:61px;bottom:-19px;left:13px}
  html.dashboard-density .r-spotlight h3{margin:9px 0}
  html.dashboard-density .r-workflow{gap:6px}
  html.dashboard-density .r-workflow>div{padding:10px;border-radius:8px}
  html.dashboard-density .r-workflow .vio-icon{width:17px;height:17px}
  html.dashboard-density .r-health{padding:17px;border-radius:15px}
  html.dashboard-density .r-health h3{margin:7px 0 12px}
  html.dashboard-density .r-health-row{padding:7px 0}

  html.dashboard-density .stats.r-six-live{gap:10px;margin:14px 0 18px}
  html.dashboard-density .stats.r-six-live article{min-height:109px;padding:15px;border-radius:13px}
  html.dashboard-density .mini-icon{width:27px;height:27px;border-radius:8px}
  html.dashboard-density .section-actions{margin-bottom:11px}
  html.dashboard-density .project-grid{gap:10px}
  html.dashboard-density .project-card{min-height:149px;padding:15px;border-radius:14px}
  html.dashboard-density .production-card{padding:14px 15px;border-radius:12px}
  html.dashboard-density .control-hero{min-height:150px;padding:20px 22px;border-radius:14px}
  html.dashboard-density .control-kpis div{padding:10px 7px}
  html.dashboard-density .subscription-card{padding:20px}
  html.dashboard-density .plan-card{min-height:296px;padding:16px}
  html.dashboard-density .table-wrap th{padding:10px 11px}
  html.dashboard-density .table-wrap td{padding:10px 11px}

  /* A few legacy pixel-sized text rules pre-date the rem-based responsive layer. */
  html.dashboard-density .status{font-size:9.6px}
  html.dashboard-density .panel small,
  html.dashboard-density .panel-head small{font-size:9.6px}
  html.dashboard-density .list-row b{font-size:12px}
  html.dashboard-density .list-row small{font-size:10.4px}
  html.dashboard-density .table-wrap td{font-size:11.2px}
  html.dashboard-density .table-wrap th{font-size:9.6px}
  html.dashboard-density .production-bible-card p,
  html.dashboard-density .production-bible-card li{font-size:12px}
  html.dashboard-density .r-scene h4{font-size:13.6px}
  html.dashboard-density .r-scene p,
  html.dashboard-density .r-scene summary{font-size:11.2px}
  html.dashboard-density .r-scene small{font-size:9.6px}
}

/* =========================================================
   Reparo Studio — Assets Library
   ========================================================= */

.assets-library-shell {
  display: grid;
  gap: 18px;
  position: relative;
}

.assets-library-shell.is-loading::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 20;
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--bg, #f7f9fc) 45%, transparent),
      transparent 220px
    );
  pointer-events: none;
}

.assets-overview-grid {
  display: grid;
  grid-template-columns:
    repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.assets-stat-card {
  min-width: 0;
}

.assets-stat-card .stat-head {
  align-items: center;
}

.assets-stat-card > b {
  display: block;
  margin-top: 7px;
}

.assets-storage-panel {
  display: grid;
  grid-template-columns:
    minmax(0, 1.45fr)
    minmax(220px, .55fr);
  gap: 24px;
  align-items: center;
}

.assets-storage-main {
  min-width: 0;
}

.assets-storage-title {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 18px;
  margin-bottom: 12px;
}

.assets-storage-title small {
  display: block;
  margin-bottom: 3px;
}

.assets-storage-title b {
  font-size: 19px;
}

.assets-storage-percent {
  font-size: 13px;
  opacity: .7;
  white-space: nowrap;
}

.assets-storage-track {
  width: 100%;
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background:
    color-mix(
      in srgb,
      currentColor 9%,
      transparent
    );
}

.assets-storage-track > i {
  display: block;
  height: 100%;
  width: 0;
  border-radius: inherit;
  background:
    linear-gradient(
      90deg,
      #1a7cf7,
      #72d961
    );
  transition: width .25s ease;
}

.assets-storage-track > i.danger {
  background:
    linear-gradient(
      90deg,
      #fdca49,
      #ef5555
    );
}

.assets-storage-numbers {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.assets-storage-number {
  padding: 12px 14px;
  border-radius: 14px;
  background:
    color-mix(
      in srgb,
      currentColor 4%,
      transparent
    );
}

.assets-storage-number span {
  display: block;
  font-size: 12px;
  opacity: .65;
  margin-bottom: 3px;
}

.assets-storage-number b {
  font-size: 16px;
}

.assets-toolbar {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  padding: 12px;
}

.assets-toolbar select,
.assets-toolbar input {
  min-height: 40px;
}

.assets-filter-select {
  min-width: 142px;
}

.assets-search-wrap {
  flex: 1 1 260px;
  position: relative;
}

.assets-search-wrap input {
  width: 100%;
}

.assets-view-toggle {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px;
  margin-left: auto;
  border-radius: 12px;
  background:
    color-mix(
      in srgb,
      currentColor 5%,
      transparent
    );
}

.assets-view-toggle button {
  width: 36px;
  height: 34px;
  min-width: 36px;
  padding: 0;
  display: grid;
  place-items: center;
  border-radius: 9px;
}

.assets-view-toggle button.active {
  background: #1a7cf7;
  color: #fff;
  border-color: #1a7cf7;
}

.assets-view-glyph {
  display: grid;
  grid-template-columns:
    repeat(2, 5px);
  grid-template-rows:
    repeat(2, 5px);
  gap: 2px;
}

.assets-view-glyph i {
  display: block;
  width: 5px;
  height: 5px;
  background: currentColor;
  border-radius: 1px;
}

.assets-view-glyph.list {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.assets-view-glyph.list i {
  width: 15px;
  height: 2px;
  border-radius: 5px;
}

.assets-library-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.assets-library-meta > span {
  font-size: 13px;
  opacity: .65;
}

.asset-date-group {
  display: grid;
  gap: 12px;
  margin-top: 4px;
}

.asset-date-heading {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 0 3px;
}

.asset-date-heading h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
}

.asset-date-heading span {
  font-size: 13px;
  opacity: .58;
}

.asset-grid {
  display: grid;
  grid-template-columns:
    repeat(
      auto-fill,
      minmax(245px, 1fr)
    );
  gap: 12px;
}

.asset-library-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid
    color-mix(
      in srgb,
      currentColor 11%,
      transparent
    );
  border-radius: 15px;
  background:
    var(
      --panel,
      rgba(255,255,255,.88)
    );
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    border-color .16s ease;
}

.asset-library-card:hover {
  transform: translateY(-2px);
  border-color:
    color-mix(
      in srgb,
      #1a7cf7 45%,
      transparent
    );
  box-shadow:
    0 12px 35px
    rgba(15, 28, 55, .08);
}

.asset-preview-button,
.asset-row-preview {
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
  width: 100%;
  cursor: pointer;
  color: inherit;
}

.asset-preview-frame {
  height: 160px;
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(
      145deg,
      #0e1630,
      #050819
    );
}

.asset-media-preview {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;
}

.asset-kind-badge {
  position: absolute;
  left: 10px;
  bottom: 10px;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background:
    rgba(5, 8, 20, .74);
  color: #fff;
  backdrop-filter: blur(8px);
}

.asset-kind-badge .vio-icon {
  width: 17px;
  height: 17px;
}

.asset-video-badge {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 9px;
  border-radius: 999px;
  background:
    rgba(5, 8, 20, .74);
  color: #fff;
  font-size: 11px;
  backdrop-filter: blur(8px);
}

.asset-audio-preview {
  height: 100%;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 18px;
  color: #dbeafe;
}

.asset-audio-icon .vio-icon {
  width: 30px;
  height: 30px;
}

.asset-wave {
  height: 28px;
  display: flex;
  align-items: center;
  gap: 3px;
}

.asset-wave i {
  display: block;
  width: 3px;
  height: 9px;
  border-radius: 999px;
  background: currentColor;
}

.asset-wave i:nth-child(2n) {
  height: 18px;
}

.asset-wave i:nth-child(3n) {
  height: 25px;
}

.asset-card-body {
  padding: 12px;
}

.asset-card-name-row {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  justify-content: space-between;
}

.asset-card-name-row > div {
  min-width: 0;
}

.asset-card-name-row h4,
.asset-row-main h4 {
  margin: 0;
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.asset-card-name-row p,
.asset-row-main p {
  margin: 4px 0 0;
  font-size: 12px;
  opacity: .58;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.asset-file-type {
  flex: 0 0 auto;
  font-size: 10px;
  padding: 4px 7px;
  border-radius: 999px;
  background:
    color-mix(
      in srgb,
      #1a7cf7 10%,
      transparent
    );
  color: #1a7cf7;
  font-weight: 700;
}

.asset-card-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 11px;
  font-size: 11px;
  opacity: .62;
}

.asset-card-actions {
  display: grid;
  grid-template-columns:
    repeat(3, minmax(0,1fr));
  gap: 6px;
  margin-top: 11px;
}

.asset-mini-btn {
  min-height: 32px;
  padding: 6px 8px;
  font-size: 11px;
}

.asset-list {
  display: grid;
  gap: 7px;
}

.asset-library-row {
  display: grid;
  grid-template-columns:
    94px
    minmax(180px, 1fr)
    90px
    90px
    minmax(120px, .6fr)
    auto;
  gap: 14px;
  align-items: center;
  min-height: 72px;
  padding: 7px 10px;
  border: 1px solid
    color-mix(
      in srgb,
      currentColor 10%,
      transparent
    );
  border-radius: 12px;
  background:
    var(
      --panel,
      rgba(255,255,255,.88)
    );
}

.asset-row-preview {
  height: 58px;
  overflow: hidden;
  border-radius: 9px;
  position: relative;
  background: #081126;
}

.asset-row-preview .asset-video-badge,
.asset-row-preview .asset-kind-badge {
  display: none;
}

.asset-row-kind,
.asset-row-size,
.asset-row-date {
  font-size: 12px;
  opacity: .67;
}

.asset-row-actions {
  display: flex;
  gap: 5px;
}

.assets-empty {
  text-align: center;
  padding: 50px 20px;
}

.assets-empty .vio-icon {
  width: 34px;
  height: 34px;
  margin-bottom: 10px;
  opacity: .55;
}

.assets-empty h3 {
  margin: 0 0 5px;
}

.assets-empty p {
  margin: 0;
  opacity: .62;
}

.assets-load-more-wrap {
  display: flex;
  justify-content: center;
  padding: 10px 0 5px;
}

#assetsLoadMoreBtn {
  min-width: 170px;
}


/* dark mode */

[data-theme="dark"]
.asset-library-card,
[data-theme="dark"]
.asset-library-row {
  background:
    color-mix(
      in srgb,
      #10172c 92%,
      transparent
    );
}


/* Tablet */

@media (max-width: 1050px) {
  .assets-overview-grid {
    grid-template-columns:
      repeat(2, minmax(0,1fr));
  }

  .assets-storage-panel {
    grid-template-columns: 1fr;
  }

  .asset-library-row {
    grid-template-columns:
      82px
      minmax(160px, 1fr)
      70px
      85px
      auto;
  }

  .asset-row-date {
    display: none;
  }
}


/* Mobile */

@media (max-width: 700px) {
  .assets-overview-grid {
    grid-template-columns:
      repeat(2, minmax(0,1fr));
    gap: 8px;
  }

  .assets-storage-numbers {
    grid-template-columns: 1fr 1fr;
  }

  .assets-toolbar {
    display: grid;
    grid-template-columns:
      1fr 1fr;
  }

  .assets-search-wrap {
    grid-column: 1 / -1;
  }

  .assets-view-toggle {
    margin-left: 0;
    justify-self: start;
  }

  .asset-grid {
    grid-template-columns:
      repeat(2, minmax(0,1fr));
    gap: 8px;
  }

  .asset-preview-frame {
    height: 125px;
  }

  .asset-card-body {
    padding: 9px;
  }

  .asset-card-actions {
    grid-template-columns: 1fr;
  }

  .asset-card-meta {
    display: grid;
  }

  .asset-library-row {
    grid-template-columns:
      68px
      minmax(0,1fr)
      auto;
    gap: 9px;
  }

  .asset-row-preview {
    height: 52px;
  }

  .asset-row-kind,
  .asset-row-size,
  .asset-row-date {
    display: none;
  }

  .asset-row-actions {
    display: grid;
  }
}


@media (max-width: 440px) {
  .asset-grid {
    grid-template-columns: 1fr;
  }

  .asset-preview-frame {
    height: 190px;
  }
}


/* =========================================================
   Reparo Studio UI Polish v1.1.0
   Assets Library + Responsive Authentication
   Visual-only override. No API/auth/production logic changes.
   ========================================================= */

:root {
  --rp-blue: #1a7cf7;
  --rp-green: #72d961;
  --rp-yellow: #fdca49;
  --rp-navy: #010135;
  --rp-ink: #10152b;
  --rp-radius-xl: 22px;
  --rp-radius-lg: 17px;
  --rp-radius-md: 13px;
  --rp-soft-shadow: 0 18px 46px rgba(18, 35, 66, .08);
  --rp-card-shadow: 0 10px 28px rgba(16, 34, 68, .065);
}

/* ---------------------------------------------------------
   ASSETS: page surface / hero
   --------------------------------------------------------- */

#view-assets {
  --asset-border: color-mix(in srgb, currentColor 9%, transparent);
  --asset-soft: color-mix(in srgb, currentColor 4%, transparent);
}

#view-assets .assets-library-shell {
  gap: 20px;
}

#view-assets .assets-library-shell::before {
  content: "";
  display: block;
  height: 4px;
  border-radius: 999px;
  background:
    linear-gradient(
      90deg,
      var(--rp-blue) 0 46%,
      var(--rp-green) 46% 72%,
      var(--rp-yellow) 72% 88%,
      var(--rp-navy) 88% 100%
    );
  box-shadow: 0 7px 22px rgba(26, 124, 247, .16);
}

/* stats become premium compact metric cards */
#view-assets .assets-overview-grid {
  gap: 14px;
}

#view-assets .assets-stat-card {
  position: relative;
  overflow: hidden;
  min-height: 132px;
  padding: 17px 18px 16px;
  border-radius: var(--rp-radius-lg);
  border: 1px solid var(--asset-border);
  box-shadow: var(--rp-card-shadow);
  isolation: isolate;
}

#view-assets .assets-stat-card::after {
  content: "";
  position: absolute;
  width: 110px;
  height: 110px;
  right: -48px;
  top: -50px;
  border-radius: 999px;
  opacity: .11;
  background: currentColor;
  z-index: -1;
}

#view-assets .assets-stat-card .stat-head {
  margin-bottom: 10px;
}

#view-assets .assets-stat-card .stat-head > span:first-child {
  font-size: 12px;
  letter-spacing: .02em;
  font-weight: 650;
  opacity: .68;
}

#view-assets .assets-stat-card > b {
  font-size: clamp(26px, 2.4vw, 34px);
  line-height: 1;
  letter-spacing: -.035em;
  margin: 4px 0 8px;
}

#view-assets .assets-stat-card > small {
  font-size: 11px;
  opacity: .56;
}

#view-assets .assets-stat-card .mini-icon {
  width: 36px;
  height: 36px;
  border-radius: 12px;
}

/* storage panel */
#view-assets .assets-storage-panel {
  position: relative;
  overflow: hidden;
  padding: 20px 22px;
  border-radius: var(--rp-radius-xl);
  border: 1px solid var(--asset-border);
  box-shadow: var(--rp-soft-shadow);
  background:
    linear-gradient(
      135deg,
      color-mix(in srgb, var(--rp-blue) 5%, transparent),
      color-mix(in srgb, var(--rp-green) 4%, transparent) 54%,
      transparent
    ),
    var(--panel, #fff);
}

#view-assets .assets-storage-panel::before {
  content: "";
  position: absolute;
  inset: auto -60px -90px auto;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(114, 217, 97, .13), transparent 68%);
  pointer-events: none;
}

#view-assets .assets-storage-title small {
  letter-spacing: .13em;
  font-weight: 750;
  color: var(--rp-blue);
}

#view-assets .assets-storage-title b {
  letter-spacing: -.015em;
}

#view-assets .assets-storage-track {
  height: 12px;
  padding: 2px;
  border: 1px solid var(--asset-border);
  background: color-mix(in srgb, currentColor 5%, transparent);
}

#view-assets .assets-storage-track > i {
  box-shadow: 0 3px 14px rgba(26, 124, 247, .22);
}

#view-assets .assets-storage-number {
  border: 1px solid var(--asset-border);
  background:
    color-mix(in srgb, var(--panel, #fff) 80%, transparent);
  backdrop-filter: blur(10px);
}

#view-assets .assets-storage-number span {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

#view-assets .assets-storage-number b {
  letter-spacing: -.015em;
}

/* toolbar: cleaner command bar */
#view-assets .assets-toolbar {
  position: sticky;
  top: 8px;
  z-index: 12;
  padding: 10px;
  border-radius: 16px;
  border: 1px solid var(--asset-border);
  box-shadow: 0 8px 24px rgba(18, 36, 68, .06);
  backdrop-filter: blur(15px);
  background:
    color-mix(in srgb, var(--panel, #fff) 90%, transparent);
}

#view-assets .assets-toolbar select,
#view-assets .assets-toolbar input {
  height: 42px;
  border-radius: 11px;
  border: 1px solid var(--asset-border);
  background: color-mix(in srgb, var(--panel, #fff) 96%, currentColor 4%);
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

#view-assets .assets-toolbar select:focus,
#view-assets .assets-toolbar input:focus {
  outline: 0;
  border-color: color-mix(in srgb, var(--rp-blue) 65%, transparent);
  box-shadow: 0 0 0 3px rgba(26, 124, 247, .11);
}

#view-assets .assets-search-wrap {
  position: relative;
}

#view-assets .assets-search-wrap::before {
  content: "⌕";
  position: absolute;
  left: 13px;
  top: 50%;
  transform: translateY(-52%);
  z-index: 2;
  font-size: 20px;
  opacity: .48;
  pointer-events: none;
}

#view-assets .assets-search-wrap input {
  padding-left: 37px;
}

#view-assets .assets-view-toggle {
  border: 1px solid var(--asset-border);
}

#view-assets #refreshAssetsBtn {
  min-height: 42px;
  border-radius: 11px;
}

#view-assets .assets-library-meta {
  padding: 1px 3px;
}

#view-assets .assets-library-meta b {
  font-size: 16px;
  letter-spacing: -.012em;
}

#view-assets .asset-date-heading {
  margin-top: 5px;
  padding-bottom: 7px;
  border-bottom: 1px solid var(--asset-border);
}

/* cards */
#view-assets .asset-grid {
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 15px;
}

#view-assets .asset-library-card {
  border-radius: 18px;
  border: 1px solid var(--asset-border);
  box-shadow: 0 7px 22px rgba(15, 34, 68, .05);
  background: var(--panel, #fff);
  transform: translateZ(0);
}

#view-assets .asset-library-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 44px rgba(14, 35, 72, .11);
  border-color: color-mix(in srgb, var(--rp-blue) 38%, transparent);
}

#view-assets .asset-preview-frame {
  height: 182px;
  background:
    linear-gradient(145deg, #101a39 0%, #060918 68%, #010135 100%);
}

#view-assets .asset-preview-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, transparent 64%, rgba(3, 8, 24, .34));
  pointer-events: none;
}

#view-assets .asset-media-preview {
  transition: transform .28s ease, filter .28s ease;
}

#view-assets .asset-library-card:hover .asset-media-preview {
  transform: scale(1.025);
}

#view-assets .asset-kind-badge {
  z-index: 3;
  left: 11px;
  bottom: 11px;
  width: 32px;
  height: 32px;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 5px 16px rgba(0,0,0,.15);
}

#view-assets .asset-video-badge {
  z-index: 3;
  border: 1px solid rgba(255,255,255,.16);
}

#view-assets .asset-card-body {
  padding: 14px 14px 13px;
}

#view-assets .asset-card-name-row h4 {
  font-size: 14px;
  line-height: 1.35;
}

#view-assets .asset-card-name-row p {
  margin-top: 5px;
}

#view-assets .asset-file-type {
  font-size: 9px;
  letter-spacing: .05em;
  text-transform: uppercase;
}

#view-assets .asset-card-meta {
  padding-top: 10px;
  border-top: 1px solid var(--asset-border);
}

#view-assets .asset-card-actions {
  gap: 7px;
  margin-top: 10px;
}

#view-assets .asset-mini-btn {
  border-radius: 9px;
  font-weight: 650;
  transition: transform .12s ease, border-color .12s ease, background .12s ease;
}

#view-assets .asset-mini-btn:hover {
  transform: translateY(-1px);
}

#view-assets .asset-card-actions .asset-mini-btn:nth-child(2) {
  border-color: color-mix(in srgb, var(--rp-blue) 30%, transparent);
  color: var(--rp-blue);
}

#view-assets .asset-card-actions .asset-mini-btn:nth-child(3) {
  border-color: color-mix(in srgb, var(--rp-green) 38%, transparent);
}

/* list mode */
#view-assets .asset-library-row {
  min-height: 78px;
  padding: 9px 11px;
  border-radius: 14px;
  border: 1px solid var(--asset-border);
  box-shadow: 0 3px 12px rgba(16, 35, 70, .035);
  transition: border-color .14s ease, box-shadow .14s ease, transform .14s ease;
}

#view-assets .asset-library-row:hover {
  border-color: color-mix(in srgb, var(--rp-blue) 34%, transparent);
  box-shadow: 0 9px 23px rgba(16, 35, 70, .07);
  transform: translateY(-1px);
}

#view-assets .asset-row-preview {
  height: 62px;
}

#view-assets #assetsLoadMoreBtn {
  min-width: 190px;
  min-height: 42px;
  border-radius: 12px;
}

/* skeleton-ish loading feedback */
#view-assets .assets-library-shell.is-loading #assetsLibrary {
  opacity: .54;
  filter: saturate(.75);
  pointer-events: none;
  transition: opacity .15s ease;
}

#view-assets .assets-library-shell.is-loading .assets-toolbar::after {
  content: "";
  width: 17px;
  height: 17px;
  border-radius: 50%;
  border: 2px solid color-mix(in srgb, var(--rp-blue) 25%, transparent);
  border-top-color: var(--rp-blue);
  animation: rp-spin .7s linear infinite;
}

@keyframes rp-spin { to { transform: rotate(360deg); } }


/* ---------------------------------------------------------
   AUTH: desktop refinement
   --------------------------------------------------------- */

#authView.auth-shell {
  min-height: 100dvh;
  overflow-x: hidden;
}

#authView .auth-card {
  position: relative;
  overflow: hidden;
}

#authView .auth-card::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 4px;
  background:
    linear-gradient(
      90deg,
      var(--rp-blue) 0 48%,
      var(--rp-green) 48% 72%,
      var(--rp-yellow) 72% 88%,
      var(--rp-navy) 88%
    );
}

#authView .auth-heading h2 {
  letter-spacing: -.032em;
}

#authView .auth-kicker {
  letter-spacing: .11em;
}

#authView .auth-tabs {
  border-radius: 13px;
  padding: 4px;
}

#authView .auth-tabs .tab {
  min-height: 41px;
  border-radius: 10px;
}

#authView .auth-form label {
  display: grid;
  gap: 7px;
}

#authView .auth-form input {
  width: 100%;
  box-sizing: border-box;
  min-height: 47px;
  border-radius: 12px;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

#authView .auth-form input:focus {
  outline: 0;
  border-color: color-mix(in srgb, var(--rp-blue) 65%, transparent);
  box-shadow: 0 0 0 4px rgba(26, 124, 247, .1);
}

#authView .auth-form .primary.wide {
  min-height: 48px;
  border-radius: 12px;
  margin-top: 3px;
  box-shadow: 0 9px 24px rgba(26, 124, 247, .2);
}

#authView .auth-assurance {
  row-gap: 8px;
}

#authView .production-legal-links {
  flex-wrap: wrap;
}


/* ---------------------------------------------------------
   AUTH: mobile / tablet responsive rebuild
   --------------------------------------------------------- */

@media (max-width: 900px) {
  #authView.auth-shell {
    display: grid ;
    grid-template-columns: 1fr ;
    min-height: 100dvh;
    align-content: start;
    background:
      radial-gradient(circle at 15% 0%, rgba(26,124,247,.12), transparent 34%),
      radial-gradient(circle at 95% 12%, rgba(114,217,97,.09), transparent 30%),
      var(--bg, #f7f9fc);
  }

  #authView .brand-panel {
    display: none ;
  }

  #authView .auth-card {
    width: min(100%, 560px) ;
    max-width: calc(100vw - 36px) ;
    margin: clamp(56px, 10vh, 92px) auto 30px ;
    padding: 26px ;
    box-sizing: border-box;
    border-radius: 22px ;
    box-shadow: 0 22px 55px rgba(15, 30, 64, .11);
    align-self: start;
  }

  #authView .mobile-brand {
    display: flex ;
    align-items: center;
    gap: 10px;
    margin-bottom: 22px;
  }

  #authView .mobile-brand .reparo-logo {
    width: 44px;
    height: 44px;
  }

  #authView .auth-theme-toggle {
    position: fixed ;
    top: max(14px, env(safe-area-inset-top)) ;
    right: max(14px, env(safe-area-inset-right)) ;
    z-index: 30;
  }

  #authView .auth-heading {
    margin-bottom: 18px;
  }

  #authView .auth-heading h2 {
    font-size: clamp(26px, 6.4vw, 34px) ;
    line-height: 1.08;
    margin-bottom: 8px;
  }

  #authView .auth-heading p {
    font-size: 14px;
    line-height: 1.55;
    max-width: 46ch;
  }

  #authView .auth-tabs {
    display: grid ;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    margin-bottom: 18px;
  }

  #authView .auth-tabs .tab {
    width: 100%;
    min-width: 0;
  }

  #authView .auth-form {
    width: 100%;
  }

  #authView .auth-form input,
  #authView .auth-form select,
  #authView .auth-form textarea {
    font-size: 16px ; /* prevents iOS input zoom */
  }

  #authView .auth-assurance {
    display: grid ;
    grid-template-columns: 1fr;
    margin-top: 18px;
  }

  #authView .auth-assurance > span {
    justify-content: flex-start;
  }

  #authView .production-legal-links {
    justify-content: center;
    gap: 14px;
    margin-top: 20px;
  }

  #authView .auth-foot {
    max-width: 100%;
    text-align: center;
    line-height: 1.45;
  }
}


@media (max-width: 560px) {
  #authView.auth-shell {
    padding:
      env(safe-area-inset-top)
      0
      env(safe-area-inset-bottom);
  }

  #authView .auth-card {
    max-width: calc(100vw - 24px) ;
    margin: 62px auto 16px ;
    padding: 21px 18px 18px ;
    border-radius: 18px ;
  }

  #authView .mobile-brand {
    margin-bottom: 18px;
  }

  #authView .mobile-brand .reparo-logo {
    width: 40px;
    height: 40px;
  }

  #authView .brand-wordmark b {
    font-size: 17px;
  }

  #authView .brand-wordmark small {
    font-size: 10px;
  }

  #authView .auth-kicker {
    font-size: 10px;
  }

  #authView .auth-heading h2 {
    font-size: 28px ;
  }

  #authView .auth-heading p {
    font-size: 13.5px;
  }

  #authView .auth-form {
    gap: 13px;
  }

  #authView .auth-form input {
    min-height: 48px;
    padding-left: 13px;
    padding-right: 13px;
  }

  #authView .auth-form .primary.wide {
    min-height: 50px;
  }

  #authView .auth-assurance {
    font-size: 11px;
  }

  #authView .auth-foot {
    font-size: 10.5px;
  }
}


@media (max-width: 360px) {
  #authView .auth-card {
    max-width: calc(100vw - 16px) ;
    padding: 18px 14px 16px ;
  }

  #authView .auth-heading h2 {
    font-size: 25px ;
  }

  #authView .auth-tabs .tab {
    font-size: 12px;
  }
}


/* ---------------------------------------------------------
   ASSETS: responsive polish
   --------------------------------------------------------- */

@media (max-width: 1050px) {
  #view-assets .assets-toolbar {
    position: static;
  }

  #view-assets .asset-grid {
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  }
}

@media (max-width: 700px) {
  #view-assets .assets-library-shell {
    gap: 14px;
  }

  #view-assets .assets-library-shell::before {
    height: 3px;
  }

  #view-assets .assets-overview-grid {
    gap: 9px;
  }

  #view-assets .assets-stat-card {
    min-height: 112px;
    padding: 14px;
  }

  #view-assets .assets-stat-card > b {
    font-size: 26px;
  }

  #view-assets .assets-storage-panel {
    padding: 16px;
    gap: 15px;
  }

  #view-assets .assets-storage-title {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  #view-assets .assets-toolbar {
    gap: 8px;
    padding: 9px;
  }

  #view-assets .assets-toolbar select {
    min-width: 0;
    width: 100%;
  }

  #view-assets #refreshAssetsBtn {
    width: 100%;
  }

  #view-assets .assets-view-toggle {
    width: max-content;
  }

  #view-assets .asset-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }

  #view-assets .asset-preview-frame {
    height: 145px;
  }

  #view-assets .asset-library-card {
    border-radius: 15px;
  }

  #view-assets .asset-card-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #view-assets .asset-mini-btn {
    padding: 5px 4px;
    font-size: 10px;
  }
}

@media (max-width: 480px) {
  #view-assets .assets-overview-grid {
    grid-template-columns: 1fr 1fr;
  }

  #view-assets .assets-stat-card {
    min-height: 104px;
  }

  #view-assets .assets-stat-card .mini-icon {
    width: 31px;
    height: 31px;
  }

  #view-assets .assets-stat-card > b {
    font-size: 24px;
  }

  #view-assets .asset-grid {
    grid-template-columns: 1fr;
  }

  #view-assets .asset-preview-frame {
    height: min(58vw, 230px);
  }

  #view-assets .assets-storage-numbers {
    grid-template-columns: 1fr 1fr;
  }

  #view-assets .asset-card-actions {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* accessibility / motion */
@media (prefers-reduced-motion: reduce) {
  #view-assets *,
  #authView * {
    animation-duration: .001ms ;
    transition-duration: .001ms ;
    scroll-behavior: auto ;
  }
}

:root{
  --ac-blue:#1a7cf7;
  --ac-green:#72d961;
  --ac-yellow:#fdca49;
  --ac-navy:#010135;
}
.ac-admin-nav-label{margin-top:14px}
.ac-admin-view{padding-bottom:40px}
.ac-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0 0 18px}
.ac-page-head h2{margin:5px 0 7px;font-size:clamp(26px,3vw,38px);letter-spacing:-.03em}
.ac-page-head p{margin:0;color:var(--muted);max-width:760px;line-height:1.65;font-size:13px}
.ac-range,.ac-segment{display:flex;gap:6px;padding:5px;border:1px solid var(--line);background:var(--panel);border-radius:14px;box-shadow:var(--card-shadow)}
.ac-range button,.ac-segment button{border:0;background:transparent;color:var(--muted);padding:8px 11px;border-radius:10px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.ac-range button.active,.ac-segment button.active{background:var(--nav-active);color:var(--blue);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--blue) 20%,transparent)}
.ac-loading-card{padding:42px;border:1px solid var(--line);border-radius:20px;background:var(--panel);color:var(--muted);text-align:center}
.ac-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.ac-kpi{position:relative;overflow:hidden;min-height:132px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:var(--card-shadow)}
.ac-kpi:before{content:"";position:absolute;inset:0 auto auto 0;width:54px;height:4px;background:linear-gradient(90deg,var(--ac-blue),var(--ac-green));border-radius:0 999px 999px 0}
.ac-kpi:nth-child(3n):before{background:linear-gradient(90deg,var(--ac-yellow),var(--ac-blue))}
.ac-kpi span{display:block;color:var(--muted);font-size:11px;font-weight:700}
.ac-kpi>b{display:block;margin:12px 0 8px;color:var(--text);font-size:26px;line-height:1.15}
.ac-kpi small{display:block;color:var(--muted-2);font-size:10px;line-height:1.45}
.ac-kpi-money>b{font-size:19px}
.ac-money-line{display:flex;align-items:baseline;gap:7px;color:var(--text)}
.ac-money-line small{display:inline;font-size:9px}
.ac-empty-value{color:var(--text)}
.ac-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ac-chart-card{min-height:265px}
.ac-mini-bars{height:155px;display:flex;align-items:flex-end;gap:4px;padding-top:16px}
.ac-bar-col{height:100%;flex:1;min-width:3px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}
.ac-bar-col i{display:block;width:100%;min-height:4px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,var(--ac-blue),color-mix(in srgb,var(--ac-green) 78%,var(--ac-blue)));opacity:.9}
.ac-bar-col small{height:14px;font-size:8px;color:var(--muted-2);white-space:nowrap}
.ac-chart-empty{height:150px;display:grid;place-items:center;color:var(--muted)}
.ac-plan-bars{display:grid;gap:14px;margin-top:16px}
.ac-plan-bars>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:12px;align-items:center}
.ac-plan-bars span b,.ac-plan-bars span small{display:block}
.ac-plan-bars span b{font-size:12px}.ac-plan-bars span small{font-size:9px;color:var(--muted);margin-top:2px}
.ac-plan-bars i{height:9px;background:var(--panel-alt);border-radius:999px;overflow:hidden;border:1px solid var(--line)}
.ac-plan-bars em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--ac-blue),var(--ac-green))}
.ac-users-stats,.ac-stripe-health{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}
.ac-users-stats article,.ac-stripe-health article{padding:14px 16px;border:1px solid var(--line);border-radius:15px;background:var(--panel);box-shadow:var(--card-shadow)}
.ac-users-stats span,.ac-stripe-health span{display:block;color:var(--muted);font-size:10px;font-weight:700}
.ac-users-stats b,.ac-stripe-health b{display:block;margin-top:8px;font-size:20px;color:var(--text)}
.ac-stripe-health small{display:block;margin-top:5px;color:var(--muted-2);font-size:9px;line-height:1.4}
.ac-stripe-health{grid-template-columns:repeat(3,minmax(0,1fr))}
.ac-users-panel{padding:0;overflow:hidden}
.ac-filter-row{display:grid;grid-template-columns:minmax(220px,1fr) 170px 170px auto;gap:8px;padding:14px;border-bottom:1px solid var(--line);background:var(--panel-soft)}
.ac-filter-row input,.ac-filter-row select{min-width:0}
.ac-users-table{min-width:1100px}
.ac-users-table td{vertical-align:middle}
.ac-users-table td small{display:block;color:var(--muted-2);font-size:9px;margin-top:4px}
.ac-user-cell b,.ac-user-cell small{display:block}
.ac-status{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--panel-soft);font-size:9px;font-weight:800;white-space:nowrap}
.ac-status i{width:6px;height:6px;border-radius:50%;background:#8791a6}
.ac-status-active i,.ac-status-processed i,.ac-status-trialing i{background:var(--ac-green)}
.ac-status-past_due i,.ac-status-unpaid i,.ac-status-failed i{background:#e85863}
.ac-status-suspended i,.ac-status-canceled i,.ac-status-inactive i{background:#9499aa}
.ac-table-footer{padding:12px 14px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
.ac-dialog{width:min(1180px,calc(100vw - 34px));max-width:none;max-height:calc(100vh - 26px);border:0;padding:0;background:transparent}
.ac-dialog::backdrop{background:rgba(1,1,20,.68);backdrop-filter:blur(8px)}
.ac-dialog-card{width:100%;max-height:calc(100vh - 26px);overflow:auto;padding:22px;border:1px solid var(--line);border-radius:22px;background:var(--panel);box-shadow:0 30px 100px rgba(1,1,53,.32);color:var(--text)}
.ac-user-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:10px 0 14px}
.ac-user-summary>div{padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft)}
.ac-user-summary span,.ac-user-summary b{display:block}.ac-user-summary span{color:var(--muted);font-size:9px}.ac-user-summary b{margin-top:6px;font-size:13px}
.ac-user-summary-small{grid-template-columns:repeat(6,minmax(0,1fr))}
.ac-user-actions{display:flex;justify-content:flex-end;margin:0 0 12px}
.ac-workspaces{display:grid;gap:12px}.ac-workspace-card{margin:0}.ac-workspace-card .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.ac-payment-history{margin-top:14px}
.ac-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ac-plan-card{display:flex;flex-direction:column;min-height:470px;padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:var(--card-shadow)}
.ac-plan-card.is-inactive{opacity:.68}
.ac-plan-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ac-plan-card-head h3{margin:6px 0 2px;font-size:22px}.ac-plan-card-head small{color:var(--muted-2)}
.ac-plan-type,.ac-live-dot,.ac-muted-pill{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:800}
.ac-plan-type{background:color-mix(in srgb,var(--ac-blue) 10%,transparent);color:var(--ac-blue);border:1px solid color-mix(in srgb,var(--ac-blue) 24%,transparent)}
.ac-live-dot{background:color-mix(in srgb,var(--ac-green) 12%,transparent);color:#3e9d30;border:1px solid color-mix(in srgb,var(--ac-green) 28%,transparent)}
.ac-muted-pill{background:var(--panel-alt);color:var(--muted);border:1px solid var(--line)}
.ac-plan-price{margin:18px 0 8px;font-size:22px;font-weight:900;color:var(--text)}
.ac-plan-card>p{min-height:46px;margin:0 0 12px;color:var(--muted);font-size:11px;line-height:1.55}
.ac-plan-limit-list{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft)}
.ac-plan-limit-list>div{display:flex;justify-content:space-between;gap:12px;font-size:10px}.ac-plan-limit-list span{color:var(--muted)}.ac-plan-limit-list b{color:var(--text)}
.ac-feature-chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.ac-feature-chips span{padding:5px 7px;border:1px solid var(--line);border-radius:9px;background:var(--panel-alt);font-size:9px;color:var(--muted)}
.ac-trial-days{padding:8px 10px;margin-bottom:10px;border-radius:10px;background:color-mix(in srgb,var(--ac-yellow) 12%,transparent);border:1px solid color-mix(in srgb,var(--ac-yellow) 35%,transparent);font-size:10px}
.ac-plan-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.ac-plan-dialog-card{max-width:980px;margin:auto}
.ac-plan-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ac-plan-form-grid .ac-wide{grid-column:1/-1}
.ac-form-section{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.ac-form-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px}.ac-form-title h4{margin:3px 0 0}.ac-form-title>small{color:var(--muted);font-size:9px}
.ac-limit-editor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.ac-feature-editor{width:100%;resize:vertical}
.ac-active-toggle{margin-top:16px}
.ac-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.ac-stripe-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:14px}
.ac-stripe-form{display:grid;gap:11px}.ac-stripe-form .api-info{margin-top:3px}
.ac-stripe-events{display:grid;gap:8px;max-height:520px;overflow:auto}
.ac-stripe-event{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}
.ac-stripe-event>span:last-child{text-align:right}.ac-stripe-event b,.ac-stripe-event small{display:block}.ac-stripe-event small{margin-top:4px;font-size:9px;color:var(--muted)}
html[data-theme="dark"] .ac-live-dot{color:#a4ed94}
@media(max-width:1180px){
  .ac-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ac-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ac-user-summary-small{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ac-stripe-layout{grid-template-columns:1fr}
}
@media(max-width:820px){
  .ac-chart-grid{grid-template-columns:1fr}
  .ac-filter-row{grid-template-columns:1fr 1fr}.ac-filter-row input{grid-column:1/-1}
  .ac-users-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ac-plan-form-grid,.ac-limit-editor{grid-template-columns:1fr 1fr}
  .ac-page-head{flex-direction:column}.ac-range{align-self:stretch;overflow:auto}
}
@media(max-width:620px){
  .ac-admin-view{padding-bottom:24px}
  .ac-kpi-grid,.ac-plan-grid,.ac-users-stats,.ac-stripe-health,.ac-user-summary,.ac-user-summary-small{grid-template-columns:1fr}
  .ac-filter-row,.ac-plan-form-grid,.ac-limit-editor{grid-template-columns:1fr}.ac-filter-row input{grid-column:auto}
  .ac-plan-bars>div{grid-template-columns:105px minmax(0,1fr)}
  .ac-dialog{width:calc(100vw - 10px);max-height:calc(100vh - 10px)}
  .ac-dialog-card{padding:14px;border-radius:16px;max-height:calc(100vh - 10px)}
  .ac-page-head h2{font-size:28px}
}

}