:root{--bg: #f2f3f7;--bg-2: #ffffff;--bg-3: #eceef4;--border: #dfe2ea;--text: #2a2d3a;--text-dim: #8a8fa3;--accent: #7c5cff;--accent-2: #ff9d2e;--green: #2fbf8f;--red: #f0564f;--radius: 10px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif;font-size:14px}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:224px;flex-shrink:0;background:var(--bg-2);border-right:1px solid var(--border);display:flex;flex-direction:column;box-shadow:2px 0 12px #3c3c5a0a}.brand{padding:22px 18px 14px;display:flex;flex-direction:column;gap:2px}.brand-logo{font-size:26px}.brand-name{font-size:19px;font-weight:800;letter-spacing:1px;background:linear-gradient(135deg,var(--accent),#b06cff);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-sub{font-size:11px;color:var(--text-dim);letter-spacing:2px}.nav{flex:1;padding:8px;display:flex;flex-direction:column;gap:4px}.nav-item{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:10px;color:var(--text-dim);text-decoration:none;transition:all .15s;font-size:14px}.nav-ico{font-size:16px;width:22px;text-align:center}.nav-item:hover{background:var(--bg-3);color:var(--text)}.nav-item.active{background:linear-gradient(135deg,var(--accent),#9b6cff);color:#fff;font-weight:600;box-shadow:0 4px 12px #7c5cff40}.notice-nav{width:100%;border:0;background:transparent;cursor:pointer;position:relative;text-align:left}.notice-nav.open{background:var(--bg-3);color:var(--text)}.notice-badge{margin-left:auto;min-width:20px;height:20px;border-radius:10px;padding:0 5px;display:flex;align-items:center;justify-content:center;background:var(--red);color:#fff;font-size:10px}.notice-dismiss{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#1e1e321f}.notice-panel{position:fixed;z-index:81;left:216px;top:94px;width:min(410px,calc(100vw - 230px));max-height:70vh;display:flex;flex-direction:column;background:var(--bg-2);border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 50px #1e1e3c33;overflow:hidden}.notice-panel header{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.notice-panel header div{display:flex;flex-direction:column;gap:2px}.notice-panel header span{font-size:11px;color:var(--text-dim)}.notice-list{overflow:auto}.notice-item{width:100%;border:0;border-bottom:1px solid var(--border);background:var(--bg-2);color:var(--text);padding:12px 14px;display:grid;grid-template-columns:24px 1fr;gap:8px;text-align:left;cursor:pointer}.notice-item:hover{background:var(--bg-3)}.notice-item.read{opacity:.58}.notice-item i{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;background:#48a6ff1f;color:#48a6ff}.notice-item.warning i{background:#ff9d2e24;color:var(--accent-2)}.notice-item.error i{background:#f0564f24;color:var(--red)}.notice-item.success i{background:#2fbf8f24;color:var(--green)}.notice-item>span{display:flex;min-width:0;flex-direction:column;gap:3px}.notice-item b{font-size:13px}.notice-item em{font-size:12px;color:var(--text-dim);font-style:normal;line-height:1.5}.notice-item small{font-size:10px;color:var(--text-dim)}.sidebar-user{padding:14px;border-top:1px solid var(--border);display:flex;gap:10px;align-items:center}.service-health{margin-top:auto;padding:10px 14px;border-top:1px solid var(--border);font-size:11px}.service-health-title{color:var(--text-dim);font-weight:700;margin-bottom:6px}.service-health-item{display:flex;align-items:center;gap:6px;min-width:0;line-height:1.7}.service-health-item em{margin-left:auto;max-width:105px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim);font-style:normal}.health-dot{width:7px;height:7px;border-radius:50%;flex:none}.health-dot.ok{background:var(--green);box-shadow:0 0 0 3px #3ddc971f}.health-dot.off{background:#ff7b72;box-shadow:0 0 0 3px #ff7b721f}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#9b6cff);display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0;color:#fff}.user-meta{min-width:0}.user-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.link-btn{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:0;font-size:12px}.link-btn:hover{color:var(--accent)}.main{flex:1;overflow-y:auto}.route-loading{min-height:100vh;display:grid;place-items:center;background:var(--bg);color:var(--text-dim)}.workspace-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:2px 12px 14px;padding:4px;background:var(--bg-3);border-radius:10px}.workspace-switch a{font-size:11px;text-align:center;padding:7px 3px;border-radius:7px;color:var(--text-dim);text-decoration:none;white-space:nowrap}.workspace-switch a.active{background:var(--accent);color:#fff}.role-label{font-size:10px;color:var(--accent);margin-right:8px}.mode-app .sidebar{background:linear-gradient(180deg,rgba(124,92,255,.08),var(--bg-2) 32%)}.mode-admin .sidebar{background:linear-gradient(180deg,rgba(46,186,160,.08),var(--bg-2) 32%)}.portal-project-link{color:inherit;text-decoration:none}.portal-project-link:hover article{border-color:var(--accent);transform:translateY(-1px)}.portal-project-link article{height:100%;border:1px solid transparent;transition:.16s}.portal-page{max-width:1280px}.portal-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px;border:1px solid rgba(124,92,255,.3);border-radius:18px;background:linear-gradient(135deg,#7c5cff21,#4ecdc40d)}.portal-hero h1{font-size:30px;margin:7px 0 9px}.portal-hero p{color:var(--text-dim);margin:0}.eyebrow{font-size:12px;color:var(--accent);font-weight:700;letter-spacing:.08em}.portal-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}.portal-summary>div{background:var(--bg-2);border:1px solid var(--border);border-radius:13px;padding:18px;display:flex;flex-direction:column;gap:5px}.portal-summary b{font-size:26px}.portal-summary span{font-size:12px;color:var(--text-dim)}.portal-section{margin-top:18px;background:var(--bg-2);border:1px solid var(--border);border-radius:14px;padding:18px}.portal-section>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.portal-section h2{font-size:17px;margin:0}.portal-section p{font-size:12px;color:var(--text-dim);margin:4px 0}.portal-section header>a{color:var(--accent);font-size:12px}.portal-projects{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.portal-projects article{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;background:var(--bg-3);border-radius:10px;padding:10px}.project-cover{width:42px;height:52px;border-radius:6px;background:linear-gradient(145deg,var(--accent),#9b6cff);display:grid;place-items:center;font-weight:700}.portal-projects article>div:nth-child(2){display:flex;flex-direction:column;gap:5px}.portal-projects article span{font-size:11px;color:var(--text-dim)}.project-state{color:var(--accent)!important}.portal-flow{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.portal-flow div{position:relative;display:flex;align-items:center;gap:6px;padding:9px 7px;background:var(--bg-3);border-radius:8px;font-size:11px}.portal-flow i{width:19px;height:19px;border-radius:50%;background:#7c5cff33;color:var(--accent);display:grid;place-items:center;font-style:normal;font-size:10px}.customer-project-list{display:flex;flex-direction:column;gap:10px}.customer-project-list article{display:grid;grid-template-columns:1fr 100px 120px auto;align-items:center;gap:18px;background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:16px}.customer-project-list h3,.customer-project-list p{margin:0}.customer-project-list p{color:var(--text-dim);font-size:12px;margin-top:5px}.customer-project-meta{display:flex;flex-direction:column;gap:3px}.customer-project-meta span{font-size:10px;color:var(--text-dim)}.onboarding-card{margin-top:18px;padding:20px;background:var(--bg-2);border:1px solid rgba(124,92,255,.35);border-radius:15px;box-shadow:0 8px 24px #3c2d780f}.onboarding-card.complete{border-color:#2fbf8f73}.onboarding-card>header{display:flex;align-items:center;justify-content:space-between;gap:24px}.onboarding-card h2{margin:4px 0;font-size:20px}.onboarding-card p{margin:0;color:var(--text-dim);font-size:12px}.onboarding-action{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:2px 8px;min-width:205px}.onboarding-action>b{font-size:25px;color:var(--accent)}.onboarding-card.complete .onboarding-action>b{color:var(--green)}.onboarding-action>span{font-size:11px;color:var(--text-dim)}.onboarding-action>a{grid-column:1/-1;margin-top:7px;text-align:center;text-decoration:none}.onboarding-progress{height:7px;margin:16px 0 13px;border-radius:999px;overflow:hidden;background:var(--bg-3)}.onboarding-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#a76cff);transition:width .3s}.onboarding-card.complete .onboarding-progress i{background:var(--green)}.onboarding-steps{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px}.onboarding-step{min-width:0;display:flex;align-items:flex-start;gap:7px;padding:9px 8px;border:1px solid transparent;border-radius:9px;background:var(--bg-3)}.onboarding-step>i{flex:none;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;font-style:normal;font-size:10px;background:#d7dae3;color:var(--text-dim)}.onboarding-step>span{display:flex;flex-direction:column;min-width:0;gap:3px}.onboarding-step b{font-size:11px;white-space:nowrap}.onboarding-step small{font-size:9px;line-height:1.35;color:var(--text-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.onboarding-step.done>i{background:var(--green);color:#fff}.onboarding-step.current{border-color:#7c5cff73;background:#7c5cff14}.onboarding-step.current>i{background:var(--accent);color:#fff}.onboarding-step.locked{opacity:.58}.portal-empty{grid-column:1/-1;display:grid;grid-template-columns:46px 1fr auto;gap:13px;align-items:center;padding:18px;border:1px dashed var(--border);border-radius:11px;background:var(--bg-3)}.portal-empty>span{font-size:30px}.portal-empty>div{display:flex;flex-direction:column;gap:3px}.portal-empty p{margin:0;color:var(--text-dim);font-size:11px}.portal-empty>a{text-decoration:none}.tag.licensed{background:#3ddc971f;color:var(--green)}.tag.pending-license{background:#ffbe551f;color:#e0a339}.request-modal label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--text-dim);margin:10px 0}.request-modal label input{width:100%}.request-modal .authorization-check{flex-direction:row;align-items:flex-start;color:var(--text);line-height:1.5}.request-modal .authorization-check input{width:auto;margin-top:3px}.request-list{display:flex;flex-direction:column;gap:9px}.request-list article{display:flex;justify-content:space-between;gap:18px;align-items:center;background:var(--bg-2);border:1px solid var(--border);border-radius:11px;padding:15px}.request-list article>div{display:flex;flex-direction:column;gap:5px}.request-list span,.request-list p{font-size:12px;color:var(--text-dim);margin:0}.admin-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-shortcuts a{padding:12px;border-radius:9px;background:var(--bg-3);color:var(--text);text-decoration:none;font-size:12px}.admin-shortcuts a:hover{color:var(--accent)}.user-role-list{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;overflow:hidden}.user-role-list>div{display:grid;grid-template-columns:1.4fr 1fr 1fr 150px;gap:14px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--border);font-size:13px}.user-role-list>div:last-child{border-bottom:none}.user-role-list .user-role-head{color:var(--text-dim);font-size:11px;background:var(--bg-3)}.user-role-list span:first-child{display:flex;flex-direction:column;gap:3px}.user-role-list small{color:var(--text-dim)}@media (max-width:1050px){.portal-flow{grid-template-columns:repeat(4,1fr)}.portal-summary{grid-template-columns:repeat(2,1fr)}.onboarding-steps{grid-template-columns:repeat(4,1fr)}}@media (max-width:700px){.portal-hero,.onboarding-card>header{align-items:flex-start;flex-direction:column}.portal-projects{grid-template-columns:1fr}.customer-project-list article{grid-template-columns:1fr 70px}.portal-flow,.onboarding-steps{grid-template-columns:repeat(2,1fr)}.onboarding-action{width:100%}.portal-empty{grid-template-columns:38px 1fr}.portal-empty>a{grid-column:1/-1;text-align:center}}.page{padding:14px 18px 60px;max-width:1680px;margin:0 auto}.page h2{margin:0 0 4px;font-size:22px}.page-desc{color:var(--text-dim);margin:4px 0 18px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}.page-head h2{margin:0}.loading{color:var(--text-dim);padding:40px;text-align:center}.empty{color:var(--text-dim);text-align:center;padding:32px}.empty.full{grid-column:1 / -1}.error-banner{background:#ff6b6b1f;border:1px solid var(--red);color:var(--red);padding:10px 14px;border-radius:8px;margin:12px 0}.success-banner{background:#2fbf8f1a;border:1px solid rgba(47,191,143,.55);color:var(--green);padding:10px 14px;border-radius:8px;margin:12px 0}.chapter-review-gate{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin:10px 0}.chapter-review-gate>div:first-child{display:flex;flex-direction:column;gap:2px}.chapter-review-gate>div:first-child span{font-size:11px;color:var(--text-dim)}.review-state-list{display:flex;gap:6px;flex-wrap:wrap}.review-state{border:1px solid rgba(255,190,70,.5);background:#ffbe461a;color:#a46a00;border-radius:14px;padding:5px 9px;cursor:pointer}.review-state.approved{border-color:#2fbf8f73;background:#2fbf8f1a;color:var(--green);cursor:default}.postprod-overview{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#7c5cff0f;border:1px solid rgba(124,92,255,.25);border-radius:10px;padding:9px 12px;margin:10px 0}.postprod-overview span{padding:4px 8px;border-radius:12px;background:var(--bg-3);font-size:12px}.postprod-overview small{color:var(--text-dim)}.asset-source-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:10px 0;padding:11px 14px;border:1px solid var(--border);border-radius:10px;background:var(--bg-2);font-size:12px}.asset-source-bar.personal{border-color:#7c5cff59}.asset-source-bar.internal{border-color:#f3b95f;background:#fffaf0}.asset-source-bar span{color:var(--text-dim)}.asset-source-bar b{color:var(--text)}.audio-assets-page{max-width:1180px}.asset-rights-notice{padding:16px 18px;border-radius:12px;margin:14px 0;border:1px solid rgba(124,92,255,.35);background:#7c5cff12}.asset-rights-notice.internal{border-color:#f3b95f;background:#fff8e8}.asset-rights-notice b{font-size:15px}.asset-rights-notice p{margin:6px 0 0;color:var(--text-dim);font-size:12px;line-height:1.7}.asset-upload-card,.asset-list-card{background:var(--bg-2);border:1px solid var(--border);border-radius:14px;padding:18px;margin-top:14px}.asset-upload-card h3,.asset-list-card h3{margin:0 0 14px}.asset-upload-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.asset-upload-card label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--text-dim)}.asset-upload-card input,.asset-upload-card select,.asset-upload-card textarea{width:100%}.asset-upload-card textarea{min-height:70px;resize:vertical}.asset-upload-card>.check.asset-confirm{flex-direction:row;align-items:flex-start;margin:12px 0;color:var(--text)}.asset-upload-card>.check.asset-confirm input{width:auto;margin-top:3px}.asset-upload-card .btn-primary{margin-top:12px}.asset-list-card>header{display:flex;align-items:center;justify-content:space-between}.asset-list-card>header h3{margin:0}.asset-list-card>header p{margin:4px 0;color:var(--text-dim);font-size:12px}.asset-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px}.asset-grid article{border:1px solid var(--border);border-radius:12px;padding:14px;background:var(--bg-3);min-width:0}.asset-title{display:flex;align-items:center;gap:10px}.asset-title>span{font-size:24px}.asset-title>div{display:flex;flex-direction:column;gap:3px;min-width:0}.asset-title b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-title small{color:var(--text-dim)}.asset-grid audio{width:100%;height:34px;margin:12px 0}.asset-tags{display:flex;gap:6px;flex-wrap:wrap}.asset-tags span{font-size:10px;padding:3px 7px;border-radius:999px;background:#7c5cff1f;color:var(--accent)}.asset-tags span.ok{background:#e8f8ef;color:#188653}.asset-tags span.warn{background:#fff1db;color:#a55a00}.asset-grid article>p{font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-grid .danger{margin-top:5px}.asset-summary-numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.asset-summary-numbers span{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:10px;background:var(--bg-3);color:var(--text-dim);font-size:12px}.asset-summary-numbers b{font-size:22px;color:var(--text)}.internal-library-summary details{color:var(--text-dim);font-size:12px}.internal-library-summary summary{cursor:pointer}.asset-category-list{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.asset-category-list span{display:flex;justify-content:space-between;gap:8px;padding:7px 9px;border-radius:8px;background:var(--bg-3)}.asset-category-list b{color:var(--text)}.asset-library-filters{display:grid;grid-template-columns:2fr 1fr 2fr;gap:10px;margin:14px 0}.asset-library-filters input,.asset-library-filters select{width:100%}.internal-asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.internal-asset-grid article{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-3)}.internal-asset-grid article>div{display:flex;flex-direction:column;gap:4px;min-width:0}.internal-asset-grid b,.internal-asset-grid small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.internal-asset-grid small{color:var(--text-dim)}.internal-asset-grid audio{width:100%;height:32px}.asset-library-pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:14px}.asset-library-pager button{padding:7px 14px;border:1px solid var(--border);border-radius:8px;background:var(--bg-3);color:var(--text);cursor:pointer}.asset-library-pager button:disabled{opacity:.4;cursor:not-allowed}.asset-review-summary{display:flex;gap:18px;flex-wrap:wrap;margin:10px 0;color:var(--text-dim)}.asset-review-summary b{color:var(--text)}.internal-asset-grid article.review-verified{border-color:#31b879}.internal-asset-grid article.review-disabled{opacity:.55;border-color:#ef7777}.internal-asset-grid .asset-review-controls{display:grid;grid-template-columns:2fr 1fr;gap:8px;grid-column:1/-1}.internal-asset-grid .asset-review-controls select{width:100%;min-width:0}.internal-asset-grid .asset-review-actions{display:flex;flex-direction:row;gap:7px;grid-column:1/-1;flex-wrap:wrap}.asset-review-actions button{padding:6px 9px;border:1px solid var(--border);border-radius:8px;background:var(--bg-2);color:var(--text);cursor:pointer}.asset-review-actions button.active{border-color:#7c5cff;background:#7c5cff21;color:#6a48ef}.asset-review-actions button.danger{color:#df4c4c}.asset-review-actions button:disabled{opacity:.45;cursor:wait}@media (max-width:760px){.asset-upload-grid,.asset-grid{grid-template-columns:1fr}.asset-source-bar{align-items:flex-start;flex-direction:column}}.ops-head .page-desc{margin:4px 0 0}.ops-health{display:flex;gap:6px;flex-wrap:wrap}.ops-health span{padding:5px 9px;border-radius:12px;font-size:11px;background:var(--bg-3);color:var(--text-dim)}.ops-health .ok{color:var(--green);background:#2fbf8f1a}.ops-health .bad{color:var(--red);background:#f0564f1a}.ops-cards{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin:12px 0}.ops-cards>div{background:var(--bg-2);border:1px solid var(--border);border-radius:11px;padding:13px;display:flex;flex-direction:column;gap:5px}.ops-cards span,.ops-cards small{color:var(--text-dim);font-size:11px}.ops-cards b{font-size:22px}.ops-cards b em{font-size:15px;color:var(--text-dim);font-style:normal}.ops-cards a{color:var(--accent)}.ops-cards .warn{border-color:#f0564f73;background:#f0564f0b}.ops-cards .warn b{color:var(--red)}.ops-cards .muted b{font-size:17px;color:var(--text-dim)}.ops-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ops-panel{background:var(--bg-2);border:1px solid var(--border);border-radius:11px;padding:13px;min-height:140px}.ops-panel header{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px}.ops-panel header a,.ops-panel header span{font-size:11px;color:var(--accent)}.review-funnel{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.review-funnel div{background:var(--bg-3);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:4px}.review-funnel b{font-size:19px}.review-funnel span{font-size:11px;color:var(--text-dim)}.failure-list>div{display:flex;justify-content:space-between;border-bottom:1px solid var(--border);padding:7px 2px;font-size:12px}.failure-list b{color:var(--red)}.ops-trend{display:flex;align-items:flex-end;height:95px;gap:8px}.ops-trend>div{flex:1;min-width:0;text-align:center;display:flex;flex-direction:column;gap:3px}.ops-trend>div>span{height:60px;display:flex;align-items:flex-end;justify-content:center}.ops-trend i{display:block;width:min(28px,80%);background:linear-gradient(var(--accent),#9b6cff);border-radius:5px 5px 2px 2px}.ops-trend b,.ops-trend small{font-size:9px;color:var(--text-dim)}.book-cost-list{display:flex;flex-direction:column;gap:8px}.book-cost-list>div{display:grid;grid-template-columns:110px 1fr 55px;align-items:center;gap:7px;font-size:11px}.book-cost-list>div>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-cost-list>div>i{height:7px;background:var(--bg-3);border-radius:4px;overflow:hidden}.book-cost-list>div>i>em{display:block;height:100%;background:var(--accent);border-radius:4px}.book-cost-list b{text-align:right}.split-section-head{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}@media (max-width:1000px){.ops-cards{grid-template-columns:1fr 1fr}.ops-grid{grid-template-columns:1fr}}@media (max-width:600px){.ops-cards{grid-template-columns:1fr}.review-funnel{grid-template-columns:1fr 1fr}}button{font-family:inherit}.btn-primary,.btn-ghost,.btn-sm,.btn-xs{border:none;border-radius:10px;cursor:pointer;transition:all .18s;color:var(--text)}.btn-primary{background:linear-gradient(135deg,var(--accent),#9b6cff);color:#fff;padding:10px 20px;font-weight:600;box-shadow:0 4px 14px #7c5cff40}.btn-primary:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-ghost{background:var(--bg-3);padding:8px 16px;color:var(--text);text-decoration:none;display:inline-block;border:1px solid var(--border)}.btn-ghost:hover{background:var(--border)}.btn-sm{background:var(--bg-3);padding:6px 12px;font-size:13px;text-decoration:none;color:var(--text);display:inline-block;border:1px solid var(--border)}.btn-sm:hover{background:var(--border)}.btn-sm.danger,.btn-xs.danger{background:#ff6b6b26;color:var(--red);border-color:transparent}.btn-sm.playing{background:var(--green);color:#000}.btn-xs{background:var(--bg-3);padding:3px 8px;font-size:12px;border:1px solid var(--border)}.btn-xs:hover{background:var(--border)}.btn-xs.danger{background:transparent;border-color:transparent}.btn-xs.danger:hover{background:#ff6b6b26}.link-btn{background:none;border:none;color:var(--text-dim);cursor:pointer}input,select,textarea{background:var(--bg-2);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:8px 12px;font-size:14px;outline:none;font-family:inherit;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #7c5cff1f}input::placeholder,textarea::placeholder{color:var(--text-dim)}.wide-input{width:100%}.num-input{width:70px}textarea{resize:vertical}.login-page{height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(1200px 700px at 70% -10%,rgba(124,92,255,.18) 0%,var(--bg) 55%)}.login-card{width:400px;background:var(--bg-2);border:1px solid var(--border);border-radius:20px;padding:36px;box-shadow:0 24px 60px #3c3c641f}.login-logo{font-size:26px;font-weight:800;text-align:center;background:linear-gradient(135deg,var(--accent),#b06cff);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.login-sub{color:var(--text-dim);text-align:center;font-size:12px;margin:6px 0 22px}.login-tabs{display:flex;gap:4px;background:var(--bg-3);border-radius:12px;padding:4px;margin-bottom:18px}.login-tabs button{flex:1;background:none;border:none;color:var(--text-dim);padding:8px;border-radius:10px;cursor:pointer;font-size:13px}.login-tabs button.active{background:var(--accent);color:#fff;font-weight:600}.login-form{display:flex;flex-direction:column;gap:12px}.login-form input{width:100%}.login-hint{color:var(--text-dim);font-size:12px;text-align:center}.login-error{color:var(--red);margin-top:12px;text-align:center;font-size:13px}.login-success{padding:9px 11px;border-radius:9px;background:#2fbf8f1c;color:#237958;font-size:12px;line-height:1.5}.reset-step{display:flex;flex-direction:column;gap:3px}.reset-step small{color:var(--text-dim);line-height:1.5}.reset-divider{height:1px;background:var(--border);margin:3px 0}.consent-row{display:flex;align-items:flex-start;gap:8px;color:var(--text-dim);font-size:12px;line-height:1.55;cursor:pointer}.consent-row input{width:16px!important;height:16px;margin:2px 0 0;flex:none}.consent-row a,.login-public-links a{color:var(--accent);text-decoration:none}.login-public-links{display:flex;justify-content:center;gap:15px;margin-top:18px;padding-top:15px;border-top:1px solid var(--border);font-size:11px}.login-form .btn-primary:disabled{opacity:.5;cursor:not-allowed}.pilot-register-note{padding:10px 12px;border:1px solid rgba(124,92,255,.35);border-radius:9px;background:#7c5cff12;color:var(--text-dim);font-size:12px;line-height:1.55}.pilot-register-note.closed{border-color:#f0564f59;background:#f0564f12;color:var(--red)}.invitation-code-input{border-color:#7c5cff8c!important;font-weight:700;letter-spacing:.04em}.public-info-page{min-height:100vh;background:linear-gradient(180deg,rgba(124,92,255,.08),transparent 280px),var(--bg);display:flex;flex-direction:column}.public-info-head{height:68px;padding:0 max(24px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px;background:#ffffffeb;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.public-brand{font-size:19px;font-weight:800;color:var(--accent);text-decoration:none;white-space:nowrap}.public-info-head nav{display:flex;align-items:center;gap:20px}.public-info-head nav a{color:var(--text-dim);text-decoration:none;font-size:13px}.public-info-head nav a:hover{color:var(--accent)}.public-info-head .public-login{padding:8px 13px;border-radius:9px;background:var(--accent);color:#fff}.legal-shell{width:min(920px,calc(100% - 32px));margin:38px auto;flex:1}.legal-content{padding:44px 54px;background:var(--bg-2);border:1px solid var(--border);border-radius:18px;box-shadow:0 18px 45px #32325a14;line-height:1.85}.legal-content h1{font-size:28px;margin:0 0 5px}.legal-content h2{font-size:18px;margin:30px 0 8px;padding-top:4px}.legal-content p{margin:8px 0;color:#4c5061}.legal-content strong{color:#282c3b}.legal-content ol{padding-left:24px;color:#4c5061}.legal-content li{margin:8px 0}.legal-meta{color:var(--text-dim)!important;font-size:12px}.legal-notice{margin:22px 0;padding:13px 16px;border:1px solid #e7cc82;border-radius:10px;background:#fff9e7;color:#7c611a;font-size:13px}.public-footer{text-align:center;padding:18px 20px 28px;color:var(--text-dim);font-size:11px}@media (max-width:700px){.public-info-head{height:auto;padding:14px 16px;align-items:flex-start}.public-info-head nav{justify-content:flex-end;gap:10px;flex-wrap:wrap}.public-info-head nav a{font-size:11px}.legal-shell{margin:18px auto}.legal-content{padding:28px 22px}.legal-content h1{font-size:23px}}.split-toolbar{display:flex;gap:20px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.split-toolbar label{color:var(--text-dim);display:flex;align-items:center;gap:8px}.dropzone{border:2px dashed var(--border);border-radius:16px;padding:46px 20px;text-align:center;cursor:pointer;transition:all .2s;color:var(--text-dim);background:var(--bg-2)}.dropzone:hover,.dropzone.dragover{border-color:var(--accent);background:#7c5cff0f;color:var(--text)}.dropzone.has-result{padding:30px;border-color:var(--green)}.drop-icon{font-size:40px;margin-bottom:10px}.drop-hint{font-size:12px;margin-top:6px;opacity:.7}.split-result{margin-top:22px}.split-result h3{margin:0 0 10px}.chapter-preview-list{display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto}.chapter-preview{display:flex;gap:12px;align-items:baseline;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:8px 12px}.cp-title{font-weight:600;min-width:130px}.cp-chars{color:var(--accent-2);font-size:12px;white-space:nowrap}.cp-snippet{color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.cp-warning{color:#e58a19;font-size:12px;white-space:nowrap;cursor:help}.cp-more{color:var(--text-dim);text-align:center;padding:8px}.import-box{margin-top:18px;background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:12px}.import-box h3{margin:0}.usage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.usage-grid div{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:4px}.usage-grid b{color:var(--accent-2);font-size:18px}.usage-grid span{color:var(--text-dim);font-size:12px}.import-mode{display:flex;gap:20px}.tabs{display:flex;gap:6px;margin-bottom:14px}.tabs button{background:var(--bg-2);border:1px solid var(--border);color:var(--text-dim);padding:7px 16px;border-radius:20px;cursor:pointer}.tabs button.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.batch-bar{display:flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--text-dim);flex-wrap:wrap}.batch-book-select{min-width:180px;padding:7px 10px;font-size:13px}.data-table{width:100%;border-collapse:collapse;background:var(--bg-2);border-radius:14px;overflow:hidden;border:1px solid var(--border);box-shadow:0 2px 8px #3c3c5a0a}.data-table th,.data-table td{padding:7px 10px;text-align:left;border-bottom:1px solid var(--border);font-size:13px}.data-table th{color:var(--text-dim);font-weight:600;font-size:12px;background:var(--bg-3);letter-spacing:.3px}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:#7c5cff0d}.td-remark{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim)}.td-time{color:var(--text-dim);font-size:12px;white-space:nowrap}.td-ops{display:flex;gap:6px}.book-name{color:var(--accent);text-decoration:none;font-weight:600}.book-name:hover{text-decoration:underline}.badge{padding:3px 10px;border-radius:12px;background:var(--bg-3);font-size:12px}.badge.done{background:#3ddc9726;color:var(--green)}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e1e3273;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{background:var(--bg-2);border:1px solid var(--border);border-radius:18px;padding:26px;width:460px;max-width:92vw;max-height:86vh;overflow-y:auto;display:flex;flex-direction:column;gap:12px;box-shadow:0 24px 60px #1e1e3c2e}.modal h3{margin:0 0 4px}.modal h4{margin:8px 0 0;color:var(--text-dim);font-size:13px}.modal-hint{color:var(--text-dim);font-size:12px;margin:0}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.silence-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.silence-grid label{display:flex;flex-direction:column;gap:4px;color:var(--text-dim);font-size:13px}.sb-topbar{display:flex;align-items:center;gap:10px;padding:10px 0 14px;border-bottom:1px solid var(--border);margin-bottom:14px;flex-wrap:wrap}.chapter-jump{min-width:180px}.chapter-nav-btn:disabled{opacity:.42;cursor:not-allowed}.chapter-footer-nav{display:flex;justify-content:space-between;gap:12px;margin:18px 0 4px}.chapter-footer-nav button{max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-footer-nav button:disabled{opacity:.42;cursor:not-allowed}.sb-progress{flex:1;display:flex;align-items:center;gap:10px;min-width:200px}.sb-stats{color:var(--text-dim);font-size:13px}.sb-actions{display:flex;gap:8px;flex-wrap:wrap}.sb-body{display:flex;gap:16px;align-items:flex-start}.sb-roles{width:250px;flex-shrink:0}.sb-content{flex:1;min-width:0}.sb-panel-title{display:flex;align-items:center;justify-content:space-between;color:var(--text-dim);font-size:13px;margin-bottom:8px;font-weight:600}.role-list{display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 220px);overflow-y:auto}.role-card{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:9px;transition:box-shadow .15s}.role-card:hover{box-shadow:0 4px 14px #3c3c5a14}.role-head{display:flex;align-items:center;gap:6px;margin-bottom:8px}.role-name{flex:1;font-weight:600;background:transparent;border:1px solid transparent;padding:4px 6px}.role-name:hover,.role-name:focus{background:var(--bg-3);border-color:var(--border)}.role-fields{display:flex;gap:6px;margin-bottom:8px}.role-fields select{flex:1;padding:5px 6px;font-size:12px;min-width:0}.role-voice{width:100%;font-size:12px}.role-desc{color:var(--text-dim);font-size:12px;margin-top:6px;line-height:1.5}.sentence-list{display:flex;flex-direction:column;gap:8px}.sentence-row{display:flex;gap:10px;background:var(--bg-2);border:1px solid var(--border);border-left:4px solid var(--border);border-radius:12px;padding:10px 12px;align-items:flex-start;transition:box-shadow .15s,border-color .15s}.role-color-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:6px}.sentence-row:hover{box-shadow:0 3px 12px #3c3c5a12;border-color:#c9cfe0}.sentence-row.is-title{border-color:var(--accent);background:linear-gradient(135deg,#7c5cff14,#7c5cff05)}.sent-left{width:96px;flex-shrink:0}.sent-role{width:100%;font-size:12px;padding:6px}.sent-main{flex:1;min-width:0}.sent-main textarea{width:100%;background:transparent;border:1px solid transparent;padding:4px 6px;font-size:14px;line-height:1.7;color:var(--text);resize:none;overflow:hidden;min-height:40px;display:block}.sent-main textarea:hover,.sent-main textarea:focus{background:var(--bg-3);border-color:var(--border)}.sent-meta{display:flex;gap:8px;align-items:center;padding-left:6px}.sent-chars{color:var(--text-dim);font-size:12px}.sent-localized{margin-top:8px;padding:8px;border-radius:9px;border:1px solid rgba(124,92,255,.35);background:#7c5cff0f}.sent-localized-head{display:flex;justify-content:space-between;gap:8px;margin-bottom:5px}.sent-localized-head b{color:var(--accent);font-size:12px}.sent-localized-head span{color:var(--text-dim);font-size:11px}.sent-localized textarea{background:var(--bg-2);border-color:var(--border);min-height:44px}.sent-right{width:200px;flex-shrink:0;display:flex;flex-direction:column;gap:6px;align-items:stretch}.sent-voice{font-size:12px;padding:6px}.role-voice-link{display:block;text-decoration:none;border:1px solid var(--border);border-radius:8px;background:var(--bg-3);color:var(--text);text-align:center}.role-voice-link:hover{border-color:var(--accent);color:var(--accent)}.role-voice-link.missing{color:var(--red);border-color:#f0564f59}.sent-speed,.sent-emotion{display:flex;align-items:center;gap:6px}.sent-emotion select{min-width:72px;padding:4px 6px;font-size:12px}.sent-emotion label{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-dim)}.sent-emotion input{width:70px}.sent-emotion b{min-width:30px;font-size:11px}.speed-label{font-size:11px;color:var(--text-dim);flex-shrink:0}.speed-range{width:84px;accent-color:var(--accent);height:16px}.speed-val{font-size:10px;color:var(--accent-2);width:36px;text-align:right;flex-shrink:0;font-weight:600}.sent-audio{width:100%;height:32px}.sent-ops{display:flex;gap:6px;align-items:center}.sent-ops .btn-xs{flex-shrink:0}.sent-error{color:var(--red);font-size:11px}.tag{padding:2px 8px;border-radius:10px;font-size:11px;background:var(--bg-3)}.tag.narrator{background:#7c5cff1f;color:var(--accent)}.tag.dialogue{background:#ff9d2e26;color:#c9760a}.tag.custom{background:#2fbf8f26;color:var(--green)}.st{font-size:12px;padding:2px 8px;border-radius:10px;text-align:center}.st-pending{background:var(--bg-3);color:var(--text-dim)}.st-generating{background:#ffb45426;color:var(--accent-2)}.st-done{background:#3ddc9726;color:var(--green)}.st-failed{background:#ff6b6b26;color:var(--red)}.st-cancelled{background:var(--bg-3);color:var(--text-dim);text-decoration:line-through}.sb-footer-hint{color:var(--text-dim);font-size:12px;margin-top:18px;padding-top:12px;border-top:1px solid var(--border)}.voice-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;align-items:center}.voice-filters select,.voice-filters input{padding:7px 10px;font-size:13px}.voice-filters .check{color:var(--text-dim);display:flex;align-items:center;gap:6px;font-size:13px}.voice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.voice-card{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;transition:all .15s}.voice-card:hover{border-color:var(--accent);transform:translateY(-2px)}.voice-card.custom{border-color:#3ddc9780}.vc-top{display:flex;align-items:center;gap:8px}.vc-name{font-weight:700;flex:1}.fav{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-dim)}.fav.on{color:var(--accent-2)}.vc-tags{display:flex;gap:6px;flex-wrap:wrap}.vc-desc{color:var(--text-dim);font-size:12px;flex:1}.vc-actions{display:flex;gap:8px}.hidden-audio{display:none}.pipeline-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:16px 0}.pipeline-card{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:5px}.pipeline-card strong{font-size:20px}.pipeline-card span{color:var(--text-dim);font-size:12px}.pipeline-card .pc-ok{color:var(--green)}.pipeline-card .pc-bad{color:var(--red)}.workflow-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:16px;margin:16px 0}.workflow-range{margin-top:14px}.range-row,.replace-row,.review-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.range-row input{width:100px}.replace-row{margin:12px 0}.replace-row input{flex:1;min-width:110px}.review-actions{margin-top:14px}.impact-box,.estimate-box,.gate-status{margin-top:12px;padding:10px;background:#ffbe461a;border:1px solid rgba(255,190,70,.35);border-radius:8px}.estimate-box{display:flex;flex-direction:column;gap:5px;background:#48a6ff14;border-color:#48a6ff4d}.pilot-review{margin-top:14px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-3)}.pilot-review-head,.pilot-audio,.template-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pilot-review-head{justify-content:space-between;margin-bottom:8px}.pilot-status{font-size:12px;padding:3px 8px;border-radius:10px;background:#48a6ff26}.pilot-status.done{color:#38c989;background:#38c9891f}.pilot-status.failed,.pilot-status.partial_failed{color:#f77;background:#ff5a5a1f}.pilot-audio audio{width:min(100%,360px);height:36px}.pilot-chapters{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.pilot-chapters a{padding:5px 8px;border:1px solid var(--border);border-radius:6px;font-size:12px}.pilot-chapters a.ready{color:#38c989;border-color:#38c98973}.pilot-chapters a.bad{color:#f77;border-color:#ff5a5a73}.template-summary{margin:10px 0;padding:10px;border-radius:8px;background:#38c98914}.template-summary span{font-size:12px;color:var(--text-dim)}.failed-items{margin:10px 0 0;padding:8px 10px;border:1px solid rgba(255,90,90,.3);border-radius:8px}.failed-items summary{cursor:pointer;color:#ff8b8b}.failed-item{display:grid;grid-template-columns:70px minmax(160px,1fr) minmax(160px,1fr);gap:10px;padding:7px 0;border-bottom:1px solid var(--border);font-size:12px}.failed-item em{color:#ff8b8b;font-style:normal}.gate-status.ok{color:var(--green);border-color:var(--green)}.issue-mini{max-height:180px;overflow:auto;margin-top:10px;font-size:13px}.issue-table>div{display:grid;grid-template-columns:80px 180px 1fr;gap:12px;padding:8px;border-bottom:1px solid var(--border);font-size:13px}.success-banner{padding:10px 14px;margin:10px 0;border-radius:8px;background:#41be781f;color:var(--green)}.proofread-results{margin-top:12px;border:1px solid var(--border);border-radius:8px;overflow:hidden}.proofread-chapter+.proofread-chapter{border-top:1px solid var(--border)}.proofread-head{width:100%;border:0;background:var(--bg-3);padding:10px 12px;display:grid;grid-template-columns:1fr auto auto;gap:14px;text-align:left;color:var(--text);cursor:pointer}.proofread-head b{color:var(--red)}.proofread-details{padding:8px 12px}.proofread-issue{padding:10px 0;border-bottom:1px dashed var(--border)}.proofread-issue:last-child{border-bottom:0}.proofread-issue>div:first-child{display:flex;gap:10px;align-items:center}.proofread-issue small{color:var(--text-dim)}.proofread-issue code{display:block;margin:8px 0;padding:8px;white-space:pre-wrap;background:#fff5e8;color:#8a4c00;border-radius:6px}.issue-kind{font-weight:700;color:var(--red)}.issue-actions{display:flex;gap:8px}.no-issues{padding:12px;color:var(--green)}.chapter-text-modal{width:min(900px,92vw)}.chapter-text-modal textarea{width:100%;min-height:55vh;resize:vertical;line-height:1.8;font-size:15px}.sentence-row.has-anomaly{background:#f0564f0e}.sentence-anomalies{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:5px}.sentence-anomalies span{font-size:11px;color:var(--red);border:1px solid rgba(240,86,79,.35);border-radius:10px;padding:2px 6px;background:#fff}.sentence-row.target-sentence{outline:3px solid rgba(124,92,255,.55);background:#7c5cff17;animation:target-pulse 1.2s ease-out 2}@keyframes target-pulse{50%{outline-color:#f0564fbf}}@media (max-width:700px){.workflow-grid{grid-template-columns:1fr}.issue-table>div{grid-template-columns:70px 1fr}.issue-table span{grid-column:1/-1}}.clone-drop{border:2px dashed var(--border);border-radius:10px;padding:22px;text-align:center;cursor:pointer;color:var(--text-dim);font-size:13px}.clone-drop:hover{border-color:var(--accent)}.clone-fields{display:flex;gap:8px;flex-wrap:wrap}.clone-fields select{flex:1;min-width:80px}.task-summary{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin:0 0 12px}.task-summary button{border:1px solid var(--border);border-radius:10px;background:var(--bg-2);color:var(--text);padding:12px;text-align:left;display:flex;flex-direction:column;gap:3px;cursor:pointer}.task-summary button b{font-size:21px}.task-summary button span{color:var(--text-dim);font-size:12px}.task-summary button.active{border-color:var(--accent);background:#7c5cff14}.task-summary button.attention b{color:var(--red)}.task-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:12px}.task-toolbar .tabs{flex:1}.task-toolbar select{min-width:150px}.task-toolbar input{min-width:240px;flex:0 1 340px}.task-list{display:flex;flex-direction:column;gap:10px}.task-card{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:12px 16px}.task-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.task-type{background:var(--bg-3);padding:3px 10px;border-radius:10px;font-size:12px;color:var(--accent)}.task-title{font-weight:600;flex:1;min-width:160px}.task-time{color:var(--text-dim);font-size:12px}.progress{position:relative;margin-top:10px;height:8px;background:var(--bg-3);border-radius:6px;overflow:visible}.progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),#9b6cff);border-radius:6px;transition:width .4s}.progress-text{position:absolute;right:0;top:-16px;font-size:11px;color:var(--text-dim)}.task-msg{color:var(--text-dim);font-size:12px;margin-top:8px}.task-msg.error{color:var(--red)}.task-metrics{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.task-metrics span{padding:5px 8px;border:1px solid var(--border);border-radius:7px;color:var(--text-dim);font-size:11px;background:var(--bg-3)}.task-metrics b{color:var(--text);font-size:12px}.quality-report{margin-top:9px;padding:10px 12px;border-radius:9px;border:1px solid var(--border);background:var(--bg-3)}.quality-report.passed{border-color:#3ddc9766;background:#3ddc970f}.quality-report.failed{border-color:#ff5a5a66;background:#ff5a5a0f}.quality-head{display:flex;justify-content:space-between;gap:12px;font-size:12px}.quality-head span{color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quality-grid{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.quality-grid span{padding:4px 7px;border-radius:6px;background:var(--bg-2);color:var(--text-dim);font-size:11px}.quality-grid b{color:var(--text)}@media (max-width:700px){.task-summary{grid-template-columns:1fr 1fr}.task-toolbar input,.task-toolbar select{width:100%;min-width:0}.failed-item{grid-template-columns:1fr}.failed-item span,.failed-item em{grid-column:1}}.quality-issues{margin-top:7px;color:#ff7b72;font-size:12px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.settings-card{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:12px}.settings-card h3{margin:0}.settings-card select{width:100%}.settings-hint{color:var(--text-dim);font-size:12px;line-height:1.7;margin:0}.settings-hint code{background:var(--bg-3);padding:1px 6px;border-radius:4px;color:var(--accent-2)}.backup-actions{display:flex;flex-wrap:wrap;gap:8px}.backup-file-button{cursor:pointer;display:inline-flex;align-items:center}.backup-file-button input{display:none}.backup-history{border-top:1px solid var(--border);display:flex;flex-direction:column}.backup-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--border)}.backup-row span{display:flex;min-width:0;flex-direction:column;gap:2px}.backup-row b{font-size:13px}.backup-row small{color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.restore-counts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.restore-counts span{padding:10px;border-radius:8px;background:var(--bg-3);display:flex;justify-content:space-between}.engine-row{display:flex;flex-direction:column;gap:4px;border-bottom:1px solid var(--border);padding:8px 0}.engine-label{color:var(--text-dim);font-size:12px}.engine-value{font-size:13px}.howto{margin:0;padding-left:20px;color:var(--text-dim);line-height:2}@media (max-width: 900px){.sb-body{flex-direction:column}.sb-roles{width:100%}.settings-grid{grid-template-columns:1fr}}.role-voice-status{margin-top:6px;font-size:12px;color:var(--green);display:flex;align-items:center;gap:4px}.role-voice-status.unassigned{color:var(--red);font-weight:600}.sent-role-voice{font-size:11px;margin-top:4px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:96px}.sent-role-voice.unassigned{color:var(--red);font-weight:600}.unassigned-text{color:var(--red);font-size:11px;margin-left:6px;font-weight:600}.mix-player{background:var(--bg-2);border:1px solid var(--green);border-radius:12px;padding:12px 16px;margin-bottom:14px}.mix-player.failed{border-color:var(--red)}.mix-player-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-weight:600}.mix-audio{width:100%;height:40px}.role-name-inline{width:90px;padding:5px 8px;font-size:13px;font-weight:600}.merge-select{min-width:90px;padding:5px 6px;font-size:12px}.appearance{display:flex;flex-direction:column;gap:4px}.appearance-count{color:var(--accent-2);font-size:12px}.chapter-chips{display:flex;gap:4px;flex-wrap:wrap}.chip{background:var(--bg-3);color:var(--text-dim);text-decoration:none;padding:1px 8px;border-radius:10px;font-size:12px}.chip:hover{background:var(--accent);color:#fff}.chip.more{color:var(--text-dim)}.is-narrator-row td{background:#6c8cff0d}.merged-aliases{margin-top:18px;display:flex;flex-direction:column;gap:8px}.merged-aliases h4{margin:0;color:var(--text-dim);font-size:13px}.alias-tag{display:inline-flex;align-items:center;gap:8px;background:var(--bg-2);border:1px dashed var(--border);border-radius:8px;padding:6px 10px;font-size:13px}.cfg-grid{display:grid;grid-template-columns:1fr;gap:10px}.cfg-grid label{display:flex;flex-direction:column;gap:4px;color:var(--text-dim);font-size:13px}.cfg-divider{color:var(--text-dim);font-size:12px;margin:8px 0 4px;border-top:1px solid var(--border);padding-top:10px}.cfg-card h3{margin-bottom:2px}.gsv-check{display:flex;align-items:center;gap:10px}.gsv-status{font-size:12px}.gsv-status.ok{color:var(--green)}.gsv-status.fail{color:var(--red)}.pager{position:sticky;bottom:0;z-index:20;display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px;padding:10px 12px;color:var(--text-dim);font-size:13px;background:var(--bg);border:1px solid var(--border);border-radius:10px;box-shadow:0 -4px 16px #00000040}.tag.cue{background:#ffc1542e;color:#c08a12}.export-row{display:flex;align-items:center;gap:14px;margin:10px 0;flex-wrap:wrap}.export-row label{display:inline-flex;align-items:center;gap:4px;font-size:13px}.export-label{color:var(--text-dim);font-size:13px}.export-hint{color:var(--text-dim);font-size:12px;margin:6px 0}.pagination{position:sticky;bottom:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:10px;box-shadow:0 -4px 16px #00000040}.pagination-info{color:var(--text-dim);font-size:13px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pagination-info b{color:var(--text)}.pagination-size{display:inline-flex;align-items:center;gap:6px;margin-left:10px}.pagination-size select{background:var(--bg-3);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:5px 8px;font-size:13px;outline:none}.pagination-btns{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pg-btn{background:var(--bg-3);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer;min-width:34px}.pg-btn:hover:not(:disabled){background:var(--border)}.pg-btn:disabled{opacity:.4;cursor:not-allowed}.pg-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.pg-dots{color:var(--text-dim);padding:0 2px}.clone-slot{margin-bottom:8px}.clone-slot-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.clone-slot-badge{font-size:11px;padding:2px 8px;border-radius:8px;background:var(--bg-3);color:var(--text-dim)}.clone-slot-badge.req{background:#7c5cff2e;color:var(--accent-2)}.clone-slot-tip{font-size:11px;color:var(--text-dim)}.clone-slot-row{display:flex;gap:8px;align-items:stretch}.clone-drop.small{flex:1;min-height:38px}.clone-ref-text{flex:1.2;min-height:38px;font-size:12px;padding:8px}.tr-box{position:relative}.tr-btn{background:var(--bg-3);border:1px dashed var(--border);color:var(--text)}.tr-btn:hover{background:#7c5cff26;border-color:var(--accent);color:var(--accent-2)}.tr-btn:disabled{opacity:.5;cursor:wait}.tr-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:60;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #00000059;padding:4px;width:120px;display:flex;flex-direction:column}.tr-menu button{background:transparent;border:none;border-radius:6px;padding:7px 10px;font-size:12px;color:var(--text);cursor:pointer;text-align:left}.tr-menu button:hover{background:#7c5cff1f}.assign-create{margin-bottom:16px}.assign-create-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.assign-create-row select{flex:1;min-width:140px;background:var(--bg-3);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:13px}.task-sub{font-size:11px;color:var(--text-dim);margin-top:2px}.task-range{font-weight:600;color:var(--accent-2);margin-bottom:4px}.add-role-box{position:relative}.add-role-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:60;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #00000059;padding:4px;width:150px;display:flex;flex-direction:column}.add-role-menu button{background:transparent;border:none;border-radius:6px;padding:7px 10px;font-size:12px;color:var(--text);cursor:pointer;text-align:left}.add-role-menu button:hover{background:#7c5cff1f}.existing-role-list{max-height:380px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.existing-role-item{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--bg-3);border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:13px;color:var(--text);text-align:left}.existing-role-item:hover{background:#7c5cff1f;border-color:var(--accent)}.existing-role-item .er-name{font-weight:600}.existing-role-item .er-meta{color:var(--text-dim);font-size:12px;flex:1}.existing-role-item .er-add{color:var(--accent-2);font-weight:700}.role-filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}.role-needs-review{background:#fff7ed}.role-needs-review .role-name-inline{border-color:#fb923c}.rhythm-presets{margin:12px 0;padding:11px;border:1px solid var(--border);border-radius:10px;background:var(--bg-2)}.rhythm-presets>div{display:flex;gap:8px;flex-wrap:wrap;margin:9px 0}.rhythm-preset{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:145px;padding:9px 11px;border:1px solid var(--border);border-radius:9px;background:var(--bg-3);color:var(--text);cursor:pointer}.rhythm-preset small,.rhythm-current{color:var(--text-dim)}.rhythm-preset.active{border-color:var(--accent);box-shadow:0 0 0 2px #7c5cff1a}.billing-notice{padding:11px 14px;border:1px solid #e9ce86;background:#fff9e8;color:#8a6500;border-radius:10px;margin-bottom:14px}.gpu-config-card{grid-column:1/-1}.gpu-readiness{margin:10px 0;padding:10px 12px;border-radius:9px}.gpu-readiness.ready{color:#237958;background:#3dbe821a;border:1px solid rgba(61,190,130,.25)}.gpu-readiness.pending{color:#8a6500;background:#fff8df;border:1px solid #ead18a}.gpu-config-card>label{display:flex;flex-direction:column;gap:6px;margin:11px 0;color:var(--text-dim);font-size:12px}.gpu-config-card textarea{width:100%;resize:vertical}.gpu-config-actions{display:flex;gap:9px;align-items:center}.gpu-advanced{margin:11px 0;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--bg-3)}.gpu-advanced summary{cursor:pointer;color:var(--text-dim)}.gpu-advanced .cfg-grid{margin-top:10px}.gpu-session-list{margin-top:15px;border-top:1px solid var(--border);padding-top:12px}.gpu-session-list h4{margin:0 0 7px}.gpu-session-list>div{display:grid;grid-template-columns:1fr 110px 100px;gap:12px;align-items:center;padding:8px 4px;border-top:1px dashed var(--border)}.gpu-session-list span:first-child{display:flex;flex-direction:column}.gpu-session-list small{color:var(--text-dim)}.billing-header-actions{display:flex;gap:9px;align-items:center}.recharge-modal{width:min(680px,92vw);max-height:88vh;overflow:auto}.recharge-modal>header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.recharge-modal header p{margin:4px 0 0;color:var(--text-dim)}.modal-close{border:0;background:transparent;color:var(--text-dim);font-size:26px;cursor:pointer}.wechat-contact{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:12px;background:linear-gradient(135deg,#3dbe821f,#7453ff14);border:1px solid rgba(61,190,130,.25);margin:15px 0}.wechat-contact span,.wechat-contact small{color:var(--text-dim)}.wechat-contact b{font-size:21px}.wechat-contact strong{font-size:15px;color:#237958}.recharge-create{display:flex;flex-direction:column;gap:12px}.recharge-create label{display:flex;flex-direction:column;gap:6px}.amount-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.amount-options button{padding:10px;border:1px solid var(--border);border-radius:9px;background:var(--bg-3);cursor:pointer}.amount-options button.active{border-color:var(--accent);color:var(--accent);background:#7453ff14}.active-recharge{display:flex;flex-direction:column;gap:13px}.recharge-order-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.recharge-order-head span{color:var(--text-dim)}.recharge-total{font-size:23px;color:var(--accent)}.active-recharge ol{margin:0;padding-left:22px;line-height:1.9}.recharge-waiting{padding:12px;border-radius:9px;background:#3dbe821a;color:#237958}.recharge-history{margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}.recharge-history>div{display:grid;grid-template-columns:1fr 90px 110px;gap:10px;align-items:center;padding:8px 0;border-top:1px dashed var(--border)}.recharge-history span{display:flex;flex-direction:column}.recharge-history small{color:var(--text-dim)}.recharge-status{font-style:normal;padding:3px 8px;border-radius:999px;background:var(--bg-3);white-space:nowrap}.recharge-status.payment_submitted{color:#8a6500;background:#fff4cf}.recharge-status.paid{color:#237958;background:#3dbe821f}.recharge-status.rejected{color:#c34343;background:#dc46461a}.recharge-table{border:1px solid var(--border);border-radius:10px;overflow:hidden}.recharge-row{display:grid;grid-template-columns:1.5fr .55fr .75fr 1.1fr 1.1fr;gap:12px;align-items:center;padding:11px 12px;border-top:1px solid var(--border)}.recharge-row:first-child{border-top:0}.recharge-row.head{font-weight:600;background:var(--bg-3);color:var(--text-dim)}.recharge-row>span:first-child,.recharge-row>span:nth-child(4){display:flex;flex-direction:column;gap:3px}.recharge-row small{color:var(--text-dim)}.recharge-actions{display:flex!important;flex-direction:row!important;gap:7px;flex-wrap:wrap}.recharge-actions button{padding:7px 10px}.wallet-card{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.wallet-card>div{padding:18px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(145deg,var(--bg-2),rgba(124,92,255,.06));display:flex;flex-direction:column;gap:7px}.wallet-card span,.wallet-card small{color:var(--text-dim)}.wallet-card b{font-size:26px;color:var(--accent)}.admin-credit>div{display:flex;gap:10px;align-items:center}.admin-credit input{max-width:220px}.order-table,.fund-table{border:1px solid var(--border);border-radius:10px;overflow:hidden}.order-row,.fund-row{display:grid;gap:12px;padding:10px 12px;align-items:center;border-top:1px solid var(--border)}.order-row{grid-template-columns:1.55fr 1.2fr .65fr .65fr .65fr .9fr}.fund-row{grid-template-columns:150px 90px 90px 90px 90px 1fr}.order-row:first-child,.fund-row:first-child{border-top:0}.order-row.head,.fund-row.head{font-weight:600;background:var(--bg-3);color:var(--text-dim)}.order-row>span:first-child{display:flex;flex-direction:column;gap:2px}.order-row small{color:var(--text-dim)}.order-status{font-style:normal;padding:3px 8px;border-radius:999px;background:var(--bg-3)}.order-status.settled{color:#237958;background:#3dbe821f}.order-status.reserved{color:#8a6500;background:#fff4cf}.order-status.released{color:var(--text-dim)}.fund-row .positive{color:#237958}.fund-row .negative{color:#cf4e4e}.billing-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.billing-summary article{padding:18px;border:1px solid var(--border);border-radius:13px;background:var(--bg-2);display:flex;flex-direction:column;gap:8px}.billing-summary span{color:var(--text-dim)}.billing-summary b{font-size:25px}.billing-card{padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--bg-2);margin-bottom:16px}.billing-card>header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.billing-card h3{margin:0 0 5px}.billing-card header p{margin:0;color:var(--text-dim)}.billing-book-bars{display:grid;gap:8px}.billing-book-bars button{display:grid;grid-template-columns:minmax(200px,1fr) 2fr;align-items:center;gap:16px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--bg-3);color:var(--text);text-align:left;cursor:pointer}.billing-book-bars button.active{border-color:var(--accent)}.billing-book-bars span{display:flex;justify-content:space-between;gap:10px}.billing-book-bars em{font-style:normal;color:var(--text-dim)}.billing-book-bars i{height:8px;background:var(--border);border-radius:999px;overflow:hidden}.billing-book-bars u{display:block;height:100%;background:var(--accent);border-radius:999px}.billing-filters{display:flex;gap:8px}.billing-filters select,.billing-filters button{padding:7px 10px}.billing-table{border:1px solid var(--border);border-radius:10px;overflow:hidden}.billing-row{display:grid;grid-template-columns:180px minmax(220px,1.4fr) 130px 110px 120px;gap:12px;padding:10px 12px;align-items:center;border-top:1px solid var(--border)}.billing-row:first-child{border-top:0}.billing-row.head{font-weight:600;background:var(--bg-3);color:var(--text-dim)}.billing-row span:nth-child(2){display:flex;flex-direction:column;gap:2px}.billing-row small{color:var(--text-dim)}.retry-tag{font-style:normal;color:#d16c00;background:#fff1dc;border-radius:999px;padding:2px 6px;margin-left:6px;font-size:11px}.pricing-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.pricing-plans article{position:relative;padding:18px;border:1px solid var(--border);border-radius:13px;background:var(--bg-3);display:flex;flex-direction:column;gap:7px}.pricing-plans article.recommended{border:2px solid var(--accent);box-shadow:0 8px 24px #7453ff1f}.pricing-plans article>em{position:absolute;right:12px;top:12px;font-style:normal;font-size:12px;color:#fff;background:var(--accent);border-radius:999px;padding:3px 8px}.pricing-plans h4{margin:0;font-size:17px}.pricing-plans article>b{font-size:29px;color:var(--accent)}.pricing-plans article>b small{font-size:14px;color:var(--text-dim)}.pricing-plans article>strong{font-size:14px}.pricing-plans article>p{margin:0;color:var(--text-dim);font-size:13px}.billing-rules{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:14px}.billing-rules span{padding:9px 11px;border-radius:9px;background:#3dbe8217;color:#237958}.price-compare-table{border:1px solid var(--border);border-radius:11px;overflow:hidden}.price-compare-row{display:grid;grid-template-columns:1.3fr .7fr .7fr 1.5fr;gap:12px;padding:11px 13px;border-top:1px solid var(--border);align-items:center}.price-compare-row:first-child{border-top:0}.price-compare-row.head{background:var(--bg-3);font-weight:600;color:var(--text-dim)}.price-compare-row.ours{background:#7453ff12}.price-compare-row.ours span:first-child,.price-compare-row.ours b{color:var(--accent);font-weight:700}@media (max-width:1000px){.wallet-card,.billing-summary{grid-template-columns:repeat(2,1fr)}.billing-row{grid-template-columns:140px 1fr 100px}.billing-row span:nth-child(4),.billing-row span:nth-child(5),.billing-row.head span:nth-child(4),.billing-row.head span:nth-child(5){display:none}.order-row{grid-template-columns:1.4fr 1fr .7fr .8fr}.order-row span:nth-child(4),.order-row span:nth-child(5){display:none}.fund-row{grid-template-columns:130px 80px 80px 90px 1fr}.fund-row span:nth-child(5){display:none}.recharge-row{grid-template-columns:1.4fr .6fr .8fr 1fr}.recharge-row>span:nth-child(4){display:none}}@media (max-width:800px){.pricing-plans,.billing-rules{grid-template-columns:1fr}.price-compare-row{grid-template-columns:1.2fr .7fr .8fr}.price-compare-row span:last-child{display:none}.recharge-row{grid-template-columns:1fr .65fr .9fr}.recharge-row>span:nth-child(3){display:none}.amount-options{grid-template-columns:repeat(2,1fr)}}.customer-admin-tools{display:flex;gap:8px;align-items:center}.customer-admin-tools input{min-width:280px}.customer-summary-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:14px 0}.customer-summary-strip span{padding:13px 15px;border:1px solid var(--border);border-radius:11px;background:var(--bg-2);color:var(--text-dim);display:flex;justify-content:space-between}.customer-summary-strip b{color:var(--accent);font-size:18px}.customer-table{background:var(--bg-2);border:1px solid var(--border);border-radius:13px;overflow:hidden}.customer-row{display:grid;grid-template-columns:1.35fr .75fr 1.15fr .75fr 1.15fr .65fr .62fr 90px;gap:12px;align-items:center;padding:12px 14px;border-top:1px solid var(--border);font-size:12px}.customer-row:first-child{border-top:0}.customer-row.head{background:var(--bg-3);color:var(--text-dim);font-weight:600}.customer-row>span{min-width:0}.customer-row>span:first-child,.customer-row>span:nth-child(3),.customer-row>span:nth-child(4),.customer-row>span:nth-child(5){display:flex;flex-direction:column;gap:3px}.customer-row small{color:var(--text-dim);white-space:normal}.danger-text{color:var(--red)!important}.account-state{font-style:normal;padding:3px 8px;border-radius:999px}.account-state.active{color:#237958;background:#3dbe821f}.account-state.disabled{color:var(--red);background:#e14d4d1a}.customer-detail-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#19192d85;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:120;display:flex;justify-content:flex-end}.customer-detail{width:min(1080px,92vw);height:100vh;background:var(--bg);box-shadow:-20px 0 60px #14142840;padding:24px;overflow:auto}.customer-detail>header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--border);padding-bottom:14px}.customer-detail h3{margin:0 0 6px;font-size:21px}.customer-detail header p{margin:0;color:var(--text-dim);font-size:12px}.detail-close{font-size:27px;border:0;background:none;color:var(--text-dim);cursor:pointer}.customer-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin:15px 0}.customer-kpis article{padding:13px;border:1px solid var(--border);border-radius:10px;background:var(--bg-2);display:flex;flex-direction:column;gap:5px}.customer-kpis span{color:var(--text-dim);font-size:11px}.customer-kpis b{font-size:20px;color:var(--accent)}.customer-actions{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;padding:13px;background:var(--bg-2);border:1px solid var(--border);border-radius:11px}.customer-actions label{display:flex;flex-direction:column;gap:5px;color:var(--text-dim);font-size:11px}.customer-actions label:nth-child(3){display:grid;grid-template-columns:120px auto;align-items:end}.customer-actions label:nth-child(3) input{grid-row:2}.customer-actions label:nth-child(3) button{grid-column:2;grid-row:2}.btn-danger{background:#e14d4d1a;border:1px solid rgba(225,77,77,.35);color:var(--red);border-radius:8px;padding:8px 13px;cursor:pointer}.customer-detail-tabs{display:flex;gap:6px;margin:15px 0 10px;border-bottom:1px solid var(--border)}.customer-detail-tabs button{border:0;background:none;color:var(--text-dim);padding:9px 15px;cursor:pointer;border-bottom:2px solid transparent}.customer-detail-tabs button.active{color:var(--accent);border-color:var(--accent);font-weight:700}.customer-overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.customer-overview-grid section{padding:16px;border:1px solid var(--border);border-radius:11px;background:var(--bg-2)}.customer-overview-grid h4,.customer-detail-body>h4{margin:0 0 10px}.customer-overview-grid p{margin:7px 0;color:var(--text-dim)}.detail-list{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--bg-2);margin-bottom:15px}.detail-list>div{display:grid;grid-template-columns:1.6fr .55fr .75fr .65fr 1fr;gap:12px;padding:10px 12px;border-top:1px solid var(--border);align-items:center;font-size:12px}.detail-list>div:first-child{border-top:0}.detail-list .detail-list-head{background:var(--bg-3);color:var(--text-dim);font-weight:600}.detail-list.tasks>div{grid-template-columns:2fr .6fr .5fr 1fr}.detail-list.audit>div{grid-template-columns:.8fr .6fr 2.5fr 1fr}.detail-list span:first-child{display:flex;flex-direction:column;gap:3px}.detail-list small{color:var(--text-dim)}.detail-list code{white-space:normal;word-break:break-all;font-size:10px;color:var(--text-dim)}@media (max-width:1200px){.customer-summary-strip{grid-template-columns:repeat(3,1fr)}.customer-row{grid-template-columns:1.3fr 1fr 1fr .7fr 90px}.customer-row>span:nth-child(2),.customer-row>span:nth-child(5),.customer-row>span:nth-child(6){display:none}.customer-kpis{grid-template-columns:repeat(3,1fr)}}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.account-card,.request-card{background:var(--bg-2);border:1px solid var(--border);border-radius:14px;padding:19px}.account-card h3,.request-card h3{margin:0 0 10px}.account-card>p{color:var(--text-dim);line-height:1.6}.account-card>label{display:flex;flex-direction:column;gap:6px;margin:11px 0;color:var(--text-dim);font-size:12px}.account-profile{display:flex;align-items:center;gap:12px;margin:14px 0}.account-profile>div:last-child{display:flex;flex-direction:column;gap:4px}.account-profile span,.account-card small{color:var(--text-dim);font-size:12px}.account-legal{display:flex;gap:12px;margin:12px 0}.account-legal a{color:var(--accent);text-decoration:none;font-size:12px}.danger-zone{border-color:#f0564f47;background:linear-gradient(145deg,rgba(240,86,79,.05),var(--bg-2))}.request-card{margin-bottom:14px}.request-table{border:1px solid var(--border);border-radius:10px;overflow:hidden}.request-row{display:grid;grid-template-columns:1.15fr 1fr 1.35fr .85fr 1fr;gap:10px;align-items:center;padding:11px 12px;border-top:1px solid var(--border);font-size:12px}.request-row:first-child{border-top:0}.request-row.head{font-weight:600;color:var(--text-dim);background:var(--bg-3)}.request-row>span{display:flex;flex-direction:column;gap:3px;min-width:0;overflow-wrap:anywhere}.request-row>span:last-child{flex-direction:row;gap:6px;flex-wrap:wrap}.request-row small{color:var(--text-dim)}.request-row em{font-style:normal}.reset-code-panel{padding:17px;margin:0 0 14px;border:2px solid var(--accent);border-radius:13px;background:#7c5cff14;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.reset-code-panel code{padding:10px 12px;border-radius:8px;background:#fff;border:1px solid var(--border);font-size:14px;word-break:break-all}.reset-code-panel small{color:var(--text-dim)}@media (max-width:900px){.account-grid{grid-template-columns:1fr}.request-row{grid-template-columns:1.1fr 1fr 1fr}.request-row>span:nth-child(2),.request-row.head>span:nth-child(2){display:none}}.readiness-head{align-items:center}.readiness-overview{display:grid;grid-template-columns:1fr 1fr .72fr;gap:12px;margin:16px 0}.readiness-overview article{padding:20px;border-radius:14px;border:1px solid var(--border);background:var(--bg-2);display:flex;flex-direction:column;gap:7px}.readiness-overview article.ready{border-color:#2fbf8f66;background:linear-gradient(145deg,rgba(47,191,143,.1),var(--bg-2))}.readiness-overview article.blocked{border-color:#f0564f52;background:linear-gradient(145deg,rgba(240,86,79,.08),var(--bg-2))}.readiness-overview span,.readiness-overview small{color:var(--text-dim)}.readiness-overview b{font-size:23px}.readiness-overview .ready b{color:#218266}.readiness-overview .blocked b{color:#c94a45}.readiness-overview .score b{color:var(--accent);font-size:30px}.readiness-legend{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:11px 14px;border:1px solid var(--border);border-radius:11px;background:var(--bg-2);color:var(--text-dim);font-size:12px}.readiness-legend span{display:flex;align-items:center;gap:6px}.readiness-legend i{width:9px;height:9px;border-radius:50%}.readiness-legend i.pass{background:var(--green)}.readiness-legend i.warn{background:var(--accent-2)}.readiness-legend i.block{background:var(--red)}.readiness-legend em{margin-left:auto;font-style:normal;color:var(--accent)}.readiness-groups{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.readiness-group{background:var(--bg-2);border:1px solid var(--border);border-radius:14px;overflow:hidden}.readiness-group>header{display:flex;justify-content:space-between;align-items:center;padding:15px 17px;background:var(--bg-3);border-bottom:1px solid var(--border)}.readiness-group h3{margin:0;font-size:16px}.readiness-group header span{font-size:12px;color:var(--text-dim)}.readiness-item{display:grid;grid-template-columns:28px 1fr auto;gap:10px;padding:14px 16px;border-top:1px solid var(--border);align-items:start}.readiness-item:first-child{border-top:0}.readiness-status{font-style:normal;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800}.readiness-item.pass .readiness-status{background:var(--green)}.readiness-item.warn .readiness-status{background:var(--accent-2)}.readiness-item.block .readiness-status{background:var(--red)}.readiness-item-title{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.readiness-item-title span,.readiness-item-title em{font-size:10px;font-style:normal;border-radius:999px;padding:2px 7px;background:var(--bg-3);color:var(--text-dim)}.readiness-item-title em{color:var(--accent);background:#7c5cff1a}.readiness-item p{margin:5px 0 0;color:var(--text-dim);font-size:12px;line-height:1.55}.readiness-item>a{font-size:12px;color:var(--accent);text-decoration:none;white-space:nowrap;margin-top:3px}.readiness-note{text-align:center;color:var(--text-dim);font-size:11px;margin:15px}.readiness-page .error-banner{margin:12px 0}@media (max-width:1050px){.readiness-groups{grid-template-columns:1fr}.readiness-overview{grid-template-columns:1fr 1fr}.readiness-overview .score{grid-column:1/-1}}@media (max-width:700px){.readiness-overview{grid-template-columns:1fr}.readiness-overview .score{grid-column:auto}.readiness-item{grid-template-columns:25px 1fr}.readiness-item>a{grid-column:2}.readiness-legend em{margin-left:0}}.support-head-actions{display:flex;gap:8px;align-items:center}.support-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.support-summary span{padding:13px 15px;border:1px solid var(--border);border-radius:10px;background:var(--bg-2);color:var(--text-dim);display:flex;justify-content:space-between}.support-summary b{color:var(--accent);font-size:18px}.ticket-table{border:1px solid var(--border);border-radius:13px;overflow:hidden;background:var(--bg-2)}.ticket-row{width:100%;display:grid;grid-template-columns:1.6fr 1fr 1fr .8fr .9fr;gap:12px;align-items:center;padding:12px 14px;border:0;border-top:1px solid var(--border);background:var(--bg-2);color:var(--text);text-align:left;font-family:inherit;font-size:12px;cursor:pointer}.mode-admin .ticket-row{grid-template-columns:1.5fr .85fr .8fr .8fr .75fr .9fr}.ticket-row:first-child{border-top:0}.ticket-row:hover:not(.head){background:#7c5cff0d}.ticket-row.head{background:var(--bg-3);color:var(--text-dim);font-weight:600;cursor:default}.ticket-row>span{display:flex;flex-direction:column;gap:3px;min-width:0}.ticket-row small{color:var(--text-dim)}.ticket-status{font-style:normal;padding:3px 8px;border-radius:999px;background:var(--bg-3);width:max-content}.ticket-status.open{color:#b26b00;background:#fff1d7}.ticket-status.in_progress,.ticket-status.waiting_user{color:var(--accent);background:#7c5cff1a}.ticket-status.resolved,.ticket-status.closed{color:#237958;background:#2fbf8f1f}.support-create label{display:flex;flex-direction:column;gap:6px}.support-detail{width:min(880px,92vw)}.ticket-admin-bar{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin:14px 0;padding:12px;border-radius:10px;background:var(--bg-3)}.ticket-admin-bar label{display:flex;flex-direction:column;gap:4px;color:var(--text-dim);font-size:11px}.ticket-admin-bar span{margin-left:auto;color:var(--text-dim)}.ticket-origin{margin:14px 0;padding:15px;border:1px solid var(--border);border-radius:10px}.ticket-origin p{margin:8px 0 0;white-space:pre-wrap;line-height:1.65}.ticket-conversation{display:flex;flex-direction:column;gap:9px}.ticket-conversation article{max-width:84%;padding:11px 13px;border-radius:11px;background:var(--bg-3)}.ticket-conversation article.staff{align-self:flex-end;background:#7c5cff1a;border:1px solid rgba(124,92,255,.2)}.ticket-conversation article header{padding:0;border:0;display:flex;justify-content:space-between;gap:14px}.ticket-conversation article p{margin:7px 0 0;white-space:pre-wrap;line-height:1.65}.ticket-conversation small{color:var(--text-dim)}.ticket-reply{display:flex;gap:8px;align-items:flex-end;margin-top:15px;padding-top:14px;border-top:1px solid var(--border)}.ticket-reply textarea{flex:1}@media (max-width:900px){.support-summary{grid-template-columns:repeat(2,1fr)}.ticket-row,.mode-admin .ticket-row{grid-template-columns:1.6fr .8fr .8fr}.ticket-row>span:nth-child(3),.ticket-row.head>span:nth-child(3),.ticket-row>span:nth-child(4),.ticket-row.head>span:nth-child(4){display:none}}.invitations-page{max-width:1250px}.registration-policy-card,.invitation-create-card,.invitation-list-card{margin-top:14px;padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--bg-2)}.registration-policy-card header,.invitation-create-card header,.invitation-list-card header{display:flex;align-items:center;justify-content:space-between;gap:16px}.registration-policy-card h3,.invitation-create-card h3,.invitation-list-card h3{margin:0}.registration-policy-card p,.invitation-create-card p,.invitation-list-card p{margin:5px 0 0;color:var(--text-dim);font-size:12px}.registration-mode{padding:6px 11px;border-radius:999px;font-size:12px;background:var(--bg-3)}.registration-mode.invite{color:var(--accent);background:#7c5cff1f}.registration-mode.closed{color:var(--red);background:#f0564f1a}.registration-mode.open{color:#a66a00;background:#fff3dc}.registration-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.registration-options button{display:flex;flex-direction:column;gap:5px;padding:14px;text-align:left;border:1px solid var(--border);border-radius:11px;background:var(--bg-3);color:var(--text);cursor:pointer}.registration-options button span{font-size:11px;line-height:1.5;color:var(--text-dim)}.registration-options button.active{border-color:var(--accent);background:#7c5cff14;box-shadow:0 0 0 2px #7c5cff17}.invitation-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.invitation-form label{display:flex;flex-direction:column;gap:6px;color:var(--text-dim);font-size:12px}.invitation-form input,.invitation-form select{width:100%}.created-invitation{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:10px;margin-top:16px;padding:15px;border-radius:11px;border:1px solid rgba(47,191,143,.4);background:#2fbf8f12}.created-invitation>span{font-size:12px;color:var(--text-dim)}.created-invitation code{padding:9px 12px;border-radius:8px;background:var(--bg-2);font-size:17px;font-weight:800;color:var(--accent);word-break:break-all}.created-invitation small{grid-column:1/-1;color:var(--text-dim)}.invitation-table{margin-top:14px;border:1px solid var(--border);border-radius:11px;overflow:hidden}.invitation-table>div{display:grid;grid-template-columns:1.4fr .6fr 1.3fr 1fr .65fr;gap:12px;align-items:center;padding:12px 14px;border-top:1px solid var(--border);font-size:12px}.invitation-table>div:first-child{border-top:0}.invitation-table-head{background:var(--bg-3);color:var(--text-dim);font-size:11px!important;font-weight:700}.invitation-table>div>span{display:flex;flex-direction:column;gap:4px}.invitation-table small{color:var(--text-dim)}.invitation-table em{width:max-content;padding:3px 8px;border-radius:999px;font-style:normal}.invitation-table em.active{background:#2fbf8f1f;color:var(--green)}.invitation-table em.inactive{background:var(--bg-3);color:var(--text-dim)}.danger-text{color:var(--red);width:max-content}@media (max-width:800px){.registration-options,.invitation-form,.created-invitation{grid-template-columns:1fr}.created-invitation small{grid-column:auto}.invitation-table{overflow:auto}.invitation-table>div{min-width:850px}}
