:root{color-scheme:dark;--bg:#0b1417;--panel:#142125;--line:#26383d;--text:#e5efec;--muted:#8b9d9f;--green:#55e2b5;--soft:#183b34;--red:#f68e90}*{box-sizing:border-box}body{margin:0;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;font-size:14px;color:var(--text);background:var(--bg)}button,input,textarea,select{font:inherit}button{cursor:pointer;transition:background .15s,transform .15s;border-radius:9px;border:1px solid transparent;min-height:37px;padding:8px 14px;color:var(--text);background:#223238;white-space:nowrap}button:hover{filter:brightness(1.12)}button:active{transform:translateY(1px)}button:disabled{opacity:.4;cursor:default}input,textarea,select{width:100%;background:#0e1a1e;border:1px solid #2b3f45;border-radius:8px;color:var(--text);padding:10px 12px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--green)}input[type=checkbox]{width:16px;accent-color:var(--green)}input[type=range]{padding:5px 0;border:none;accent-color:var(--green)}label{display:block;color:#bacac8;font-size:13px;line-height:1.6;margin:14px 0}label input,label textarea,label select{display:block;margin-top:6px}textarea{resize:vertical;line-height:1.7}h1,h2,h3,p{margin-top:0}h2{font-size:23px;font-weight:600;margin-bottom:0}h3{font-size:15px;font-weight:600;margin-bottom:14px}p{line-height:1.8}.primary{background:var(--green);color:#0a2921;font-weight:600}.outline{border-color:#355048;background:#182b2b}.danger{color:var(--red);background:#39282c;border-color:#553139}.quiet{background:transparent;color:var(--muted);padding:5px 8px}.icon-button{background:#203336;width:32px;min-height:32px;padding:2px;font-size:22px}.large{min-height:45px;padding:12px 23px}.full{width:100%}.muted{color:var(--muted)}.small{font-size:12px}.hidden{display:none!important}.row{display:flex;gap:10px;align-items:center}.row>*{min-width:0}.row.end{justify-content:flex-end}.row.between{justify-content:space-between}.wrap{flex-wrap:wrap}.badge{font-size:11px;background:#1c3235;color:#a8c3c2;padding:6px 9px;border:1px solid #2a4548;border-radius:6px;white-space:nowrap}.badge.ready{color:var(--green);background:#14362e;border-color:#265847}.eyebrow{font-size:10px;letter-spacing:2px;color:#6dbfa8;font-weight:600;margin-bottom:10px}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;max-width:1250px;margin:auto;padding:60px 90px;gap:100px}.login-intro img{width:58px;margin-bottom:32px}.login-intro h1{font-size:46px;line-height:1.45;letter-spacing:1px;margin-bottom:24px}.login-intro p{color:var(--muted)}.login-card{padding:38px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(150deg,#1a2a2d,#111d21);box-shadow:0 30px 90px #0003}.login-card h2{margin-bottom:25px}.login-card label{margin-top:18px}.login-card .primary{width:100%;margin-top:17px}.error{color:var(--red);font-size:12px;min-height:18px;margin:12px 0 0}.version{color:#566e70;font-size:11px}.wave{height:90px;display:flex;align-items:center;gap:8px;margin:20px 0 35px}.wave i{height:15px;width:5px;border-radius:4px;background:#52cea5}.wave i:nth-child(3n){height:46px}.wave i:nth-child(3n+1){height:28px}.wave i:nth-child(5n){height:70px}.small-wave{height:55px;justify-content:center;margin:14px 0}.small-wave i:nth-child(5n){height:45px}.small-wave.playing i{animation:pulse .8s ease-in-out infinite alternate}.small-wave.playing i:nth-child(2n){animation-delay:.4s}.small-wave.playing i:nth-child(3n){animation-delay:.2s}@keyframes pulse{to{transform:scaleY(.35);opacity:.45}}.app{display:flex;min-height:100vh}.sidebar{width:208px;position:fixed;top:0;bottom:0;background:#101c20;border-right:1px solid #213236;padding:25px 15px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;text-decoration:none;color:var(--text);align-items:center;margin:0 8px 38px}.brand img{width:39px}.brand span{font-size:18px;font-weight:600}.brand small{display:block;font-size:10px;letter-spacing:3px;color:var(--muted);margin-top:5px}.nav-label{font-size:10px;color:#5d797d;letter-spacing:2px;padding:0 13px 13px}nav button{width:100%;display:flex;gap:12px;align-items:center;text-align:left;background:transparent;color:#9eb3b5;margin:4px 0;padding:12px 14px}nav button span{font-size:19px;width:20px;text-align:center}nav button.active{background:#193a32;color:#77edc7}nav button:hover{background:#203035}.sidebar-bottom{margin-top:auto;padding:15px 8px 0;border-top:1px solid var(--line);line-height:2}.sidebar-bottom .quiet{font-size:11px;padding-left:0}main{margin-left:208px;flex:1;min-width:0}header{height:102px;display:flex;align-items:center;justify-content:space-between;padding:22px 30px;border-bottom:1px solid #223338;background:#0e191c}.page{padding:24px 28px}.studio-grid{display:grid;grid-template-columns:215px minmax(330px,1fr) 300px;gap:17px;align-items:start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:20px;min-width:0}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}.panel-title h2,.panel-title h3{margin:0}.product-panel{padding:17px;position:sticky;top:24px}.product-list{min-height:310px;max-height:58vh;overflow:auto;margin:12px -4px}.product-item{padding:13px 10px;margin:5px 0;border:1px solid transparent;border-radius:9px;cursor:pointer;line-height:1.5}.product-item:hover{background:#1d3034}.product-item.active{background:#193b33;border-color:#2c6856}.product-item strong{font-size:13px;font-weight:500;display:block;margin-bottom:6px}.product-item small{color:var(--muted);font-size:11px}.center-stack{display:flex;flex-direction:column;gap:17px}.broadcast{text-align:center}.broadcast .panel-title{text-align:left}.broadcast h3{font-size:19px;margin-top:11px}.status-dot{font-size:11px;color:#8da5a7}.status-dot::before{content:'';display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:6px}#now-speaking{color:#b8cfca;min-height:58px;margin-bottom:18px;font-size:14px;line-height:1.9;overflow-wrap:anywhere}.transport{display:flex;justify-content:center;align-items:center;gap:10px}.output-row{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);margin-top:21px;padding-top:5px}.output-row label{text-align:left;flex:1}.output-row label:last-child{max-width:90px}.output-row select{font-size:11px}.output-row .quiet{padding:0;font-size:11px}.broadcast .small{margin-bottom:0}.empty{text-align:center;padding:35px 10px;color:#6e898d;line-height:1.9;font-size:12px}.queue-list{max-height:190px;overflow:auto}.queue-item{display:flex;align-items:flex-start;gap:10px;border-bottom:1px solid #23373a;padding:10px 0;line-height:1.7;font-size:12px}.queue-item span{flex:1}.queue-item small{font-size:10px;color:#78c5b0}.failure{background:#38282b;border-radius:8px;margin-top:10px;padding:12px;line-height:1.7;font-size:12px;color:var(--red)}.failure button{font-size:11px;margin-top:8px}.event-panel{padding:17px}.event-list{min-height:380px;max-height:53vh;overflow:auto;margin:15px 0}.event-item{padding:11px 0;border-bottom:1px solid #23363a;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.event-item .meta{display:flex;justify-content:space-between;gap:10px;color:#8ca9a9;font-size:10px;margin-bottom:5px}.event-item .result{font-size:10px;color:#5cc7a8}#event-form input,#event-form select{font-size:12px;margin-bottom:10px}#event-kind{width:80px}.section-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-bar h3{margin:0}.section-bar p{margin:6px 0}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.product-card .product-price{color:var(--green);font-size:22px;margin-bottom:10px}.product-card .muted{font-size:12px;min-height:40px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-panel{margin-top:20px;max-width:650px}.check{display:flex;align-items:center;gap:10px}.check input{margin:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-weight:500;color:var(--muted);padding:15px;border-bottom:1px solid #355054}td{padding:14px 15px;border-bottom:1px solid #24393c}details{border:1px solid #2b4044;border-radius:8px;padding:12px;margin:16px 0;color:var(--muted)}summary{cursor:pointer;font-size:12px}#provider-form label{margin:17px 0}.compact-list{margin-top:14px;max-height:230px;overflow:auto}.compact-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px;gap:10px}.compact-item button{font-size:11px;min-height:29px;padding:4px 9px}.token-output{overflow-wrap:anywhere;background:#0b1a1c;padding:12px;line-height:1.8;font-family:monospace;font-size:11px;margin-top:15px;border:1px solid #376258;border-radius:8px}dialog{background:#142125;color:var(--text);border:1px solid #3a5756;border-radius:16px;width:min(800px,92vw);padding:26px;max-height:92vh;overflow:auto;box-shadow:0 25px 100px #0008}dialog::backdrop{background:#03090cd9;backdrop-filter:blur(5px)}dialog .two-col{gap:0 18px}dialog h2{font-size:21px}#password-dialog{max-width:420px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#234137;border:1px solid #3d7961;color:#d9f7eb;padding:13px 22px;border-radius:10px;z-index:100;max-width:80vw;box-shadow:0 8px 30px #0005}.toast.error{background:#40292d;border-color:#73474b;color:#f5c6c9}@media(max-width:1250px){.sidebar{width:178px}main{margin-left:178px}.page{padding:20px}.studio-grid{grid-template-columns:185px minmax(300px,1fr) 255px;gap:12px}.panel{padding:15px}header{padding:20px}.login-shell{gap:55px;padding:50px}}@media(max-width:1000px){.studio-grid{grid-template-columns:190px 1fr}.event-panel{grid-column:1/-1}.event-list{min-height:100px;max-height:200px}.two-col{grid-template-columns:1fr}.login-shell{gap:35px;padding:35px}.login-intro h1{font-size:36px}}@media(max-width:700px){.sidebar{position:static;width:100%;padding:15px}.sidebar .brand,.nav-label,.sidebar-bottom{display:none}.app{display:block}nav{display:flex;overflow:auto}nav button{width:auto;padding:8px}nav button span{display:none}main{margin:0}header{height:auto;gap:12px;flex-wrap:wrap}.studio-grid{display:flex;flex-direction:column}.studio-grid>*{width:100%}.product-panel{position:static}.product-list{min-height:0;max-height:140px}.login-shell{display:block;padding:25px}.login-intro{display:none}.login-card{padding:25px}.output-row{flex-wrap:wrap}.page{padding:15px}.two-col{display:block}.two-col>.panel{margin-bottom:15px}dialog .two-col{display:block}}

.auth-home{display:block;color:var(--muted);font-size:12px;text-decoration:none;margin-bottom:22px}.auth-links{display:flex;justify-content:space-between;margin-top:16px}.login-card form h2{margin-bottom:20px}.login-card .row input{flex:1;min-width:0}.login-card .row button{flex-shrink:0}.admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.admin-tabs button{background:transparent;border-color:var(--line);color:var(--muted)}.admin-tabs button.active{background:var(--soft);color:var(--green);border-color:#38745f}.admin-section{display:grid;gap:18px}.models-section{max-width:760px}.filter-bar{margin:22px 0 14px}.invite-grid{display:grid;grid-template-columns:100px 170px minmax(160px,1fr);gap:14px;align-items:end}.row.wrap>input{flex:1;min-width:140px}.row.wrap>select{width:auto;max-width:200px}#user-list{font-size:12px}#user-list strong{font-weight:500}#user-list td{vertical-align:top}#generated-invites{margin-top:20px}#generated-invites button{margin-top:10px}#registration-config-status{margin-left:15px}#registration-settings .two-col{gap:32px}#user-edit-dialog{max-width:480px}#registration-form label{margin:12px 0}#registration-form h2{margin-bottom:10px}#registration-form .primary{margin-top:6px}@media(max-width:700px){.invite-grid{grid-template-columns:1fr 1fr}.login-shell{padding:18px}.login-card{padding:24px}.admin-tabs{gap:5px}.admin-tabs button{font-size:12px;padding:7px 10px}#registration-config-status{display:block;margin:10px 0 0}}
