/* 令牌接入层：本页历史变量名保留，取值全部来自 app/tokens.css（权威见 docs/design/DESIGN.md）。
   浅色 / 深色由 tokens.css 决定：默认跟随系统偏好，data-theme 显式覆盖。 */
:root{--bg:var(--c-bg);--side:var(--c-raised);--panel:var(--c-panel);--raised:var(--c-raised);--line:var(--c-line);--text:var(--c-ink);--muted:var(--c-muted);--dim:var(--c-dim);--accent:var(--c-brand);--accent-ink:var(--c-brand-ink);--on-accent:var(--c-on-brand);--soft:var(--c-brand-tint);--warm:var(--c-warning);--bad:var(--c-danger);--shadow:var(--sh-2);--border:var(--c-line)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:var(--fs-md)/var(--lh-base) var(--font-sans)}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{transition:background .14s,border-color .14s}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}button{border:1px solid var(--line);background:var(--raised);color:var(--text);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-4)}button:hover:not(:disabled),a.btn:hover{background:var(--soft);border-color:var(--dim)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--raised);white-space:nowrap}.btn.primary,button.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:var(--fw-strong)}.textbtn{padding:0;border:0;background:none;color:var(--accent-ink)}.textbtn:hover:not(:disabled){background:none;text-decoration:underline}.muted,small{color:var(--muted)}small{font-size:var(--fs-xs)}p{margin:var(--sp-2) 0 var(--sp-4)}h1,h2,h3{line-height:1.3}h1{font-size:var(--fs-2xl);letter-spacing:-1px;font-weight:var(--fw-strong);margin:0 0 var(--sp-3)}h2{font-size:var(--fs-lg);margin:0;font-weight:var(--fw-strong)}h3{font-size:var(--fs-md);margin:0 0 var(--sp-2)}.eyebrow{font-size:var(--fs-xs);font-weight:var(--fw-strong);letter-spacing:.16em;color:var(--dim);text-transform:uppercase}.badge{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2);border:1px solid var(--line);border-radius:var(--r-xs);color:var(--accent-ink);font-size:var(--fs-xs);white-space:nowrap}.badge.warning{color:var(--warm)}.badge.danger{color:var(--bad)}.dot{width:6px;height:6px;background:currentColor;border-radius:50%}.row{display:flex;align-items:center;gap:var(--sp-3)}.between{justify-content:space-between}.wrap{flex-wrap:wrap}
.review{background:var(--raised);border-bottom:1px solid var(--line);min-height:44px;padding:var(--sp-2) var(--sp-5);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);font-size:var(--fs-xs)}.review strong{color:var(--accent-ink);margin-right:var(--sp-3)}.review-controls{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap}.review label{color:var(--muted);display:flex;gap:var(--sp-2);align-items:center}.review select{padding:var(--sp-1) var(--sp-2);font-size:var(--fs-xs);width:auto;background:var(--bg);border:1px solid var(--line);color:var(--text);border-radius:var(--r-xs)}.review button{padding:var(--sp-0) var(--sp-2);font-size:var(--fs-xs)}.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:calc(100vh - 44px)}aside{background:var(--side);border-right:1px solid var(--line);padding:var(--sp-5) var(--sp-4) var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-6)}.brand{display:flex;gap:var(--sp-3);align-items:center;padding:0 var(--sp-2)}.mark{width:33px;height:33px;display:grid;place-items:center;background:var(--accent);color:var(--on-accent);font-size:var(--fs-lg);font-weight:var(--fw-strong);border-radius:var(--r-md);flex-shrink:0}.product-mark{background:var(--warm);color:var(--bg)}.brand b{font-size:var(--fs-md);display:block}.brand small{font-size:var(--fs-xs);letter-spacing:.05em}.scope{border:1px solid var(--line);background:var(--panel);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-3)}.scope b{display:block;font-size:var(--fs-xs);margin-top:var(--sp-1)}.scope small{font-size:var(--fs-xs)}.nav{display:grid;gap:var(--sp-1)}.nav a{padding:var(--sp-3) var(--sp-3);color:var(--muted);border-radius:var(--r-xs);display:flex;align-items:center;gap:var(--sp-3);font-size:var(--fs-sm);border:1px solid transparent}.nav a[aria-current=page]{background:var(--soft);color:var(--text);border-color:var(--line)}.nav a:hover{background:var(--raised)}svg.icon{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sidefoot{margin-top:auto;border-top:1px solid var(--line);padding-top:var(--sp-4)}.identity{display:flex;align-items:center;gap:var(--sp-2)}.avatar{width:31px;height:31px;border-radius:50%;background:var(--soft);color:var(--accent-ink);display:grid;place-items:center;font-size:var(--fs-xs)}.identity b{display:block;font-size:var(--fs-xs)}.identity small{font-size:var(--fs-xs)}.sidefoot p{font-size:var(--fs-xs);color:var(--dim);margin:var(--sp-3) 0 0}.main{min-width:0}.topbar{height:68px;border-bottom:1px solid var(--line);padding:0 var(--sp-6);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);font-size:var(--fs-xs)}.breadcrumb{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap}.breadcrumb .slash{color:var(--dim)}.topbar .btn{font-size:var(--fs-xs);padding:var(--sp-2) var(--sp-3)}main{max-width:1450px;margin:auto;padding:var(--sp-6) var(--sp-6) var(--sp-8)}.heading{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-5);margin-bottom:var(--sp-6)}.heading .eyebrow{margin-bottom:var(--sp-2)}.heading p{max-width:600px;color:var(--muted);margin-bottom:0}
.panel{background:var(--panel);border:var(--border);border-radius:var(--r-md);padding:var(--sp-5)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-5)}.panel-header p{margin:var(--sp-2) 0 0;font-size:var(--fs-xs);color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-4);margin-bottom:var(--sp-5)}.stat{position:relative;padding:var(--sp-5);background:var(--panel);border:var(--border);border-radius:var(--r-md)}.stat small{display:block;color:var(--muted);font-size:var(--fs-xs)}
.stat-icon{position:absolute;top:var(--sp-4);right:var(--sp-4);width:34px;height:34px;display:grid;place-items:center;border:var(--border);border-radius:var(--r-sm);background:var(--raised);color:var(--muted)}
.stat-icon .icon{width:18px;height:18px}
.stat footer{color:var(--dim);font-size:var(--fs-xs)}
.num{display:block;text-align:right;font-variant-numeric:tabular-nums}
.ellipsis{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.empty-actions{margin-top:var(--sp-4);display:flex;justify-content:center}
tbody tr:hover td{background:var(--raised)}.stat strong{font-size:var(--fs-2xl);line-height:1.2;font-weight:var(--fw-strong);display:block;margin:var(--sp-3) 0 var(--sp-2);letter-spacing:-1px;font-variant-numeric:tabular-nums}.stat strong em{font-size:var(--fs-md);font-style:normal;font-weight:var(--fw-base);color:var(--muted);margin-left:var(--sp-2);letter-spacing:0}.stat footer{font-size:var(--fs-xs);color:var(--dim);display:flex;justify-content:space-between;align-items:center}.split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:var(--sp-4);margin-bottom:var(--sp-5)}.stack{display:grid;gap:var(--sp-5)}.product-card{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--bg)}.product-body{padding:var(--sp-5)}.product-body .mark{height:44px;width:44px;border-radius:var(--r-lg);font-size:var(--fs-xl)}.product-body h3{font-size:var(--fs-xl)}.product-body .row{align-items:flex-start}.product-meta{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);margin-top:var(--sp-5)}.product-meta small{display:block;font-size:var(--fs-xs);margin-bottom:var(--sp-1)}.product-meta b{font-size:var(--fs-xs);font-weight:var(--fw-medium)}.product-footer{padding:var(--sp-4) var(--sp-5);background:var(--raised);display:flex;gap:var(--sp-3);align-items:center;justify-content:space-between;border-top:1px solid var(--line)}.product-footer p{font-size:var(--fs-xs);margin:0;color:var(--muted)}.product-footer .btn,.product-footer button{font-size:var(--fs-xs)}.insight{background:linear-gradient(130deg,var(--soft),var(--panel));border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-5)}.insight p{font-size:var(--fs-sm);margin:var(--sp-4) 0;color:var(--text);line-height:1.85}.insight small{display:block;font-size:var(--fs-xs);margin-bottom:var(--sp-4)}.insight .eyebrow{color:var(--accent-ink)}.service{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) 0;border-bottom:1px solid var(--line)}.service:last-child{border-bottom:0}.service b{font-size:var(--fs-xs);font-weight:var(--fw-strong)}.service small{display:block;font-size:var(--fs-xs);margin-top:var(--sp-1)}.mini-flow{display:flex;align-items:center;gap:var(--sp-2);margin:var(--sp-5) 0;flex-wrap:wrap}.mini-flow span{font-size:var(--fs-xs);border:1px solid var(--line);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-xs)}.mini-flow i{font-style:normal;color:var(--dim)}.note{font-size:var(--fs-xs);color:var(--muted);border-left:2px solid var(--accent);padding:var(--sp-2) var(--sp-4);margin:var(--sp-5) 0}.table-wrap{overflow:auto}.table-wrap:focus-visible{outline:var(--focus-ring)}table{border-collapse:collapse;width:100%;font-size:var(--fs-xs);text-align:left;white-space:nowrap}th{font-size:var(--fs-xs);letter-spacing:.03em;color:var(--muted);font-weight:var(--fw-medium);height:var(--row-h);padding:0 var(--sp-4);background:var(--raised)}td{border-bottom:var(--border);height:var(--row-h);padding:0 var(--sp-4);font-size:var(--fs-sm);line-height:var(--lh-snug)}td small{display:block;font-size:var(--fs-xs);margin-top:var(--sp-1)}tbody tr:last-child td{border-bottom:0}td .textbtn{font-size:var(--fs-xs)}.filters{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4)}.filters input{max-width:310px}.filters small{margin-left:auto}input,select{width:100%;border:1px solid var(--line);border-radius:var(--r-xs);background:var(--bg);color:var(--text);padding:var(--sp-2) var(--sp-3);font:inherit}label{display:block;margin:var(--sp-4) 0 var(--sp-1);color:var(--muted);font-size:var(--fs-xs)}.review label{margin:0}.no-access{max-width:660px;text-align:center;margin:var(--sp-8) auto;padding:var(--sp-7) var(--sp-6)}.no-access .symbol{width:60px;height:60px;border:1px solid var(--line);background:var(--raised);color:var(--warm);border-radius:var(--r-lg);display:grid;place-items:center;margin:0 auto var(--sp-5)}.symbol svg{width:26px;height:26px}.no-access h1{font-size:var(--fs-2xl)}.no-access p{color:var(--muted)}.no-access .row{justify-content:center}.empty{padding:var(--sp-7);text-align:center;color:var(--muted)}.path-step{padding:var(--sp-4) 0;display:flex;gap:var(--sp-4);align-items:flex-start;border-bottom:1px solid var(--line)}.path-step:last-child{border-bottom:0}.step-number{font-size:var(--fs-xs);color:var(--accent-ink);border:1px solid var(--line);border-radius:50%;width:var(--sp-5);height:var(--sp-5);display:grid;place-items:center;flex-shrink:0}.path-step p{font-size:var(--fs-xs);color:var(--muted);margin:var(--sp-2) 0 0}.table-panel{padding:0;overflow:hidden}.table-panel .panel-header{padding:var(--sp-5) var(--sp-5) 0}.dialog{max-width:620px;width:calc(100% - 28px);max-height:88vh;overflow:auto;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--shadow)}dialog::backdrop{background:var(--c-scrim);backdrop-filter:blur(4px)}.dialog h2{font-size:var(--fs-xl)}.dialog .close{border:0;background:transparent;padding:var(--sp-0) var(--sp-2);font-size:var(--fs-xl)}.dialog-footer{display:flex;justify-content:flex-end;gap:var(--sp-3);margin-top:var(--sp-5)}.error{color:var(--bad);font-size:var(--fs-xs);min-height:20px;margin:var(--sp-3) 0}.kv{padding:var(--sp-3) 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:var(--sp-5);font-size:var(--fs-xs)}.kv span{color:var(--muted)}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--accent);color:var(--on-accent);padding:var(--sp-3) var(--sp-5);border-radius:var(--r-sm);box-shadow:var(--shadow);z-index:10;max-width:90vw;font-size:var(--fs-xs)}.page-foot{color:var(--dim);font-size:var(--fs-xs);margin:var(--sp-5) 0 0;text-align:right}.mobile-menu{display:none}[hidden]{display:none!important}.access-count{color:var(--muted);font-size:var(--fs-xs)}
@media(min-width:1280px){main{padding:var(--sp-7) var(--sp-7) var(--sp-8)}.topbar{padding:0 var(--sp-7)}}@media(max-width:1050px){.shell{grid-template-columns:205px minmax(0,1fr)}main{padding:var(--sp-6) var(--sp-5)}.topbar{padding:0 var(--sp-5)}.split{grid-template-columns:1fr}.stats{gap:var(--sp-3)}.stat{padding:var(--sp-4)}.brand{padding:0}.brand b{font-size:var(--fs-sm)}.heading{align-items:flex-start}.review{flex-wrap:wrap}.review-controls{gap:var(--sp-2)}}@media(max-width:720px){.shell{grid-template-columns:1fr}aside{display:none;border-right:0;border-bottom:1px solid var(--line);padding:var(--sp-4)}.shell.menu-open aside{display:flex}.sidefoot,.scope{display:none}.nav{grid-template-columns:1fr 1fr}.brand{margin-bottom:0}.mobile-menu{display:inline-flex;padding:var(--sp-1) var(--sp-2);margin-right:var(--sp-1)}.topbar{min-height:60px;height:auto;padding:var(--sp-3) var(--sp-4);flex-wrap:wrap;gap:var(--sp-2)}main{padding:var(--sp-6) var(--sp-4)}.heading{display:block}.heading .btn,.heading>button{margin-top:var(--sp-4)}h1{font-size:var(--fs-2xl)}.stats{grid-template-columns:1fr 1fr}.stats .stat:last-child{grid-column:1/-1}.stat strong{font-size:var(--fs-2xl)}.review{padding:var(--sp-2) var(--sp-3);gap:var(--sp-2)}.review-controls{width:100%;gap:var(--sp-2)}.review-controls label{font-size:var(--fs-xs)}.review select{max-width:175px}.review span.muted{display:none}.panel{padding:var(--sp-4)}.table-panel{padding:0}.table-panel .panel-header{padding:var(--sp-4) var(--sp-4) 0}.product-meta{grid-template-columns:1fr 1fr}.product-footer{flex-wrap:wrap;padding:var(--sp-4) var(--sp-4)}.filters{flex-wrap:wrap}.filters small{margin-left:0}.no-access{margin:var(--sp-5) auto}.dialog{padding:var(--sp-5)}.page-foot{text-align:left}.topbar .badge{font-size:var(--fs-xs)}.heading p{font-size:var(--fs-sm)}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Formal management surfaces reuse the approved console visual system. */
.shell{min-height:100vh;height:auto}.shell>aside{position:sticky;top:0;height:100vh}.main{width:100%}.topbar{height:auto;min-height:74px;padding-block:14px;background:var(--bg)}
.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.stat strong{font-variant-numeric:tabular-nums;font-size:var(--fs-2xl)}.stat .subvalue{font-size:var(--fs-lg);letter-spacing:0;overflow-wrap:anywhere}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5)}.product-card{background:var(--panel)}.section-gap{margin-top:var(--sp-5)}.scope{margin-top:var(--sp-2)}.nav{gap:var(--sp-2)}.nav a{padding:var(--sp-3)}.brand small{font-size:var(--fs-xs);letter-spacing:.12em}.topbar #identity{max-width:230px;overflow-wrap:anywhere}.end{justify-content:flex-end}.table-wrap{max-width:100%;border-radius:var(--r-md)}td{max-width:380px}td.wrap-cell{white-space:normal;overflow-wrap:anywhere;min-width:160px}.table-wrap td .btn{font-size:var(--fs-xs)}.pill-list{display:flex;gap:var(--sp-2);flex-wrap:wrap}.filters{align-items:end;flex-wrap:wrap}.filters label{margin:0;min-width:130px;flex:1}.filters input,.filters select{max-width:none;min-width:0;display:block;margin-top:var(--sp-2)}.filters button{flex-shrink:0}.section-title{margin:var(--sp-5) 0 var(--sp-4)}.service small{max-width:500px}.loading{display:grid;place-items:center;min-height:70vh;color:var(--muted)}.loading-inline{padding:var(--sp-8) var(--sp-5);text-align:center;color:var(--muted)}.error-banner{border:1px solid var(--bad);color:var(--bad);border-radius:var(--r-md);padding:var(--sp-4);margin-bottom:var(--sp-5);overflow-wrap:anywhere}.notice{background:var(--soft);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-4);color:var(--text);font-size:var(--fs-xs)}.empty{padding:var(--sp-7) var(--sp-5)}.login-layout{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh}.login-intro{background:var(--side);border-right:1px solid var(--line);padding:var(--sp-7) var(--sp-8);display:flex;flex-direction:column;justify-content:space-between;gap:var(--sp-8)}.login-intro h1{font-size:var(--fs-display);letter-spacing:-2px;line-height:1.35;margin:var(--sp-5) 0}.login-intro p{color:var(--muted);line-height:1.9}.login-intro .brand{padding:0}.login-panel{display:grid;place-items:center;padding:var(--sp-7)}.login-panel>div{width:100%;max-width:400px}.login-panel h1{font-size:var(--fs-2xl);margin:var(--sp-5) 0 var(--sp-3)}.login-panel label{margin-top:var(--sp-5)}.login-panel input{padding:var(--sp-3)}.code-row{display:flex;gap:var(--sp-3)}.code-row input{min-width:0;flex:1}.code-row button{white-space:nowrap;flex-shrink:0}.full{width:100%;padding:var(--sp-3)}.login-panel #loginHint{font-size:var(--fs-xs);margin:var(--sp-3) 0}.auth-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-5);font-size:var(--fs-xs)}.login-panel .error{overflow-wrap:anywhere}.login-panel .note{font-size:var(--fs-xs);margin-top:var(--sp-6)}.login-panel .badge{padding:var(--sp-1) var(--sp-3)}.empty h2{margin-bottom:var(--sp-3)}.page-foot{overflow-wrap:anywhere}.product-scope .mark{background:var(--warm)}.product-scope .scope{border-color:var(--warm)}dialog{width:min(540px,calc(100% - var(--sp-6)));max-height:90vh;overflow:auto;padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);color:var(--text);box-shadow:var(--shadow)}dialog::backdrop{background:var(--c-scrim);backdrop-filter:blur(3px)}dialog select{margin-top:var(--sp-2)}.nowrap{white-space:nowrap}.mobile-menu{display:none}.form-actions{margin-top:var(--sp-5)}.audit-result{font-size:var(--fs-xs)}#toast{max-width:calc(100vw - 30px);overflow-wrap:anywhere}.mini-id{font-size:var(--fs-xs);color:var(--muted);overflow-wrap:anywhere}button:disabled{opacity:.55}main{max-width:1600px}
@media(min-width:1450px){main{padding-top:var(--sp-7)}.stat{padding:var(--sp-5)}.heading{margin-bottom:var(--sp-6)}}
@media(max-width:1150px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{align-items:flex-start}.login-intro{padding:var(--sp-6)}.login-intro h1{font-size:var(--fs-2xl)}.login-panel{padding:var(--sp-6)}.product-grid{grid-template-columns:1fr}.topbar .row{gap:var(--sp-2)}}
@media(max-width:720px){.shell>aside{position:static;height:auto}.shell{min-height:100vh}.mobile-menu{display:inline-flex}.topbar{padding:var(--sp-3) var(--sp-4)}.topbar .row{width:100%;justify-content:flex-end}.topbar #identity{margin-right:auto;font-size:var(--fs-xs);max-width:170px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats .stat:last-child{grid-column:auto}.stat{padding:var(--sp-4)}.stat strong{font-size:var(--fs-2xl)}.login-layout{display:block}.login-intro{padding:var(--sp-5);gap:0}.login-intro>div,.login-intro>small{display:none}.login-panel{padding:var(--sp-6) var(--sp-5)}.login-panel h1{font-size:var(--fs-2xl)}.login-panel .note{margin-bottom:0}.filters label{min-width:130px}.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-header{flex-wrap:wrap}.heading{margin-bottom:var(--sp-5)}.brand{min-width:0}.product-meta{gap:var(--sp-3)}.stat .subvalue{font-size:var(--fs-sm)}.row{gap:var(--sp-2)}.notice{font-size:var(--fs-xs)}dialog{padding:var(--sp-5)}}
.iam-tabs{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin:0 0 var(--sp-5);border-bottom:1px solid var(--line);padding-bottom:var(--sp-3)}.iam-tabs button{border:1px solid transparent;background:transparent;color:var(--muted);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-md);font-weight:var(--fw-strong)}.iam-tabs button[aria-selected=true]{background:var(--soft);border-color:var(--line);color:var(--text)}.iam-tabs button:focus-visible,.iam-role-list article:focus-within{outline:var(--focus-ring);outline-offset:2px}.iam-role-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--sp-3);margin:var(--sp-4) 0}.iam-role-list article{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-4);background:var(--raised)}.iam-role-list article b,.iam-role-list article small{display:block}.iam-role-list article p{margin:var(--sp-3) 0 0}.iam-role-list .badge{margin:var(--sp-1) var(--sp-1) 0 0}.table-wrap td small{display:block;line-height:var(--lh-snug)}
.table-wrap td .badge{padding:var(--sp-0) var(--sp-2)}.table-wrap td .badge{margin:var(--sp-0)}.table-wrap input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}#roleMenuChecks{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:var(--sp-2)}#roleMenuChecks .check{padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-sm)}#adminDetail{scroll-margin-top:var(--sp-5)}@media(max-width:720px){.iam-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.iam-tabs button{text-align:center}.iam-role-list{grid-template-columns:1fr}}
.iam-tabs ~ .panel table{white-space:normal}.iam-tabs ~ .panel td{vertical-align:top}.iam-tabs ~ .panel td button{margin:var(--sp-0) var(--sp-1) var(--sp-0) 0}
#roleMenuChecks .check{display:flex;align-items:center;gap:var(--sp-2);min-height:42px}#roleMenuChecks .check input{display:inline-block;width:18px;height:18px;margin:0;flex:none;accent-color:var(--accent)}

/* IAM and navigation refinement */
.shell>aside{gap:var(--sp-4);padding-bottom:var(--sp-4)}.nav{min-height:0;overflow-y:auto;align-content:start;gap:var(--sp-4);scrollbar-width:thin}.nav-group{display:grid;gap:var(--sp-1)}.nav-group>p{font-size:var(--fs-xs);color:var(--dim);letter-spacing:.08em;margin:0 var(--sp-3) var(--sp-1);text-transform:uppercase}.nav a{padding:var(--sp-2) var(--sp-3);min-height:38px}.nav a span{min-width:0}.sidefoot{flex:none;margin-top:auto;padding-top:var(--sp-4)}.account-summary{display:flex;align-items:center;gap:var(--sp-3);min-width:0}.account-avatar{flex:none;width:35px;height:35px;border-radius:var(--r-md);background:var(--soft);color:var(--accent-ink);display:grid;place-items:center;font-weight:var(--fw-strong)}.account-summary #identity{display:grid;min-width:0;line-height:1.35}.account-summary #identity b,.account-summary #identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-summary #identity b{font-size:var(--fs-xs)}.account-summary #identity small{font-size:var(--fs-xs)}.side-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-top:var(--sp-3)}.side-actions button{font-size:var(--fs-xs)}.topbar #identity{display:none}
.iam-account-panel>.panel-header{margin-bottom:var(--sp-5);padding-bottom:var(--sp-4);border-bottom:1px solid var(--line)}.iam-account-panel>.panel-header h2{margin-bottom:var(--sp-1)}.iam-bulk{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3)}.iam-bulk button{padding:var(--sp-2) var(--sp-3);font-size:var(--fs-xs)}.iam-account-panel table{table-layout:fixed}.iam-account-panel th:first-child,.iam-account-panel td:first-child{width:58px}.iam-account-panel th:nth-child(2),.iam-account-panel td:nth-child(2){width:25%}.iam-account-panel th:nth-child(3),.iam-account-panel td:nth-child(3){width:27%}.iam-account-panel th:nth-child(4),.iam-account-panel td:nth-child(4){width:14%}.iam-account-panel td{overflow-wrap:anywhere}.iam-actions{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.iam-actions>button{white-space:nowrap}.action-more{font-size:var(--fs-xs);color:var(--accent-ink)}.action-more summary{cursor:pointer;list-style:none;white-space:nowrap}.action-more summary::-webkit-details-marker{display:none}.action-more summary::after{content:'⌄';margin-left:var(--sp-1)}.action-more[open] summary::after{content:'⌃'}.action-more>div{display:grid;justify-items:start;gap:var(--sp-2);padding:var(--sp-2) 0 0}.action-more button{padding:var(--sp-1) 0;border:0;background:none;color:var(--accent-ink);font-size:var(--fs-xs);white-space:normal;text-align:left}.action-more button:hover:not(:disabled){background:none;text-decoration:underline}
#changeDialog.wide{width:min(1080px,calc(100vw - var(--sp-6)));max-height:min(90vh,900px)}#changeDialog.wide #changeForm{display:flex;flex-direction:column;min-height:0}#changeDialog.wide #changeFields{min-height:0;max-height:55vh;overflow-y:auto;padding-right:var(--sp-1)}#changeDialog.wide .table-wrap{overflow-x:auto}#changeDialog.wide table{white-space:normal;min-width:720px}#changeDialog.wide td{padding:var(--sp-3) var(--sp-4);vertical-align:top}#changeDialog.wide td small{white-space:normal}#changeDialog.wide #changeForm>.row.end{position:sticky;bottom:-26px;background:var(--panel);padding:var(--sp-4) 0 var(--sp-1);border-top:1px solid var(--line);z-index:1}
.permission-scope{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-4);margin:var(--sp-3) 0;background:var(--bg)}.permission-scope-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-4)}.permission-scope-head h3{margin:0}.role-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}.role-choice{display:flex;align-items:flex-start;gap:var(--sp-3);border:1px solid var(--line);background:var(--panel);border-radius:var(--r-sm);padding:var(--sp-3);margin:0;cursor:pointer;color:var(--text)}.role-choice input{width:18px;min-width:18px;height:18px;margin:var(--sp-0) 0 0;accent-color:var(--accent)}.role-choice span{min-width:0}.role-choice b,.role-choice small{display:block;line-height:1.45}.role-choice small{margin-top:var(--sp-1)}.direct-permissions{margin-top:var(--sp-4);border-top:1px solid var(--line);padding-top:var(--sp-3)}.direct-permissions summary{cursor:pointer;color:var(--accent-ink);font-weight:var(--fw-strong)}.direct-permissions>p{margin:var(--sp-2) 0 var(--sp-3)}.permission-grid{display:grid;gap:0;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;margin-top:var(--sp-3)}.permission-row{display:grid;grid-template-columns:minmax(170px,1fr) auto;gap:var(--sp-4);align-items:center;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--line);background:var(--panel)}.permission-row:last-child{border-bottom:0}.permission-row>b,.permission-row b{font-size:var(--fs-xs)}.permission-row small{display:block;font-size:var(--fs-xs)}.permission-actions{display:flex;gap:var(--sp-2);align-items:center}.permission-check{display:flex;align-items:center;gap:var(--sp-2);margin:0;border:1px solid var(--line);border-radius:var(--r-xs);padding:var(--sp-1) var(--sp-2);color:var(--text);cursor:pointer;white-space:nowrap}.permission-check input{width:var(--sp-4);height:var(--sp-4);margin:0;accent-color:var(--accent)}.permission-check:has(input:checked){background:var(--soft);border-color:var(--accent)}.permission-check:has(input:disabled){opacity:.7;cursor:default}.account-context,.detail-identity{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--raised);margin:var(--sp-2) 0 var(--sp-4)}.account-context b,.account-context span,.account-context small,.detail-identity b,.detail-identity span,.detail-identity small{display:block}.account-context small,.detail-identity small{overflow-wrap:anywhere}#addAdminDialog,#infoDialog{width:min(760px,calc(100vw - var(--sp-6)));max-height:88vh;overflow:auto}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.dialog-heading button{padding:var(--sp-1) var(--sp-3);font-size:var(--fs-xl)}.search-inline{margin:var(--sp-5) 0}.search-inline label{margin-bottom:var(--sp-2)}.search-inline .row input{flex:1}.candidate-list{display:grid;gap:var(--sp-2)}.candidate-list button{display:grid;grid-template-columns:minmax(0,1fr) auto;text-align:left;gap:var(--sp-0) var(--sp-3);padding:var(--sp-3) var(--sp-4)}.candidate-list button b{grid-column:1}.candidate-list button small{grid-column:1}.candidate-list button span{grid-column:2;grid-row:1/3;align-self:center;color:var(--accent-ink)}#infoDialog table{white-space:normal}#infoDialog td{vertical-align:top}
@media(max-width:720px){.shell.menu-open>aside{position:fixed;display:flex;top:0;bottom:0;left:0;width:min(310px,88vw);height:100dvh;z-index:20;box-shadow:var(--shadow)}.shell.menu-open .sidefoot{display:block}.nav{grid-template-columns:1fr;overflow-y:auto}.iam-account-panel table{min-width:680px}.role-choices{grid-template-columns:1fr}.permission-row{grid-template-columns:1fr;gap:var(--sp-2)}.permission-actions{justify-content:flex-start}.account-context,.detail-identity{display:block}.search-inline .row{align-items:stretch}.search-inline button{white-space:nowrap}}
.device-list{display:grid;gap:var(--sp-3)}.device-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg);padding:var(--sp-4)}.device-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4)}.device-head b,.device-head small{display:block}.device-head small{margin-top:var(--sp-1)}.device-head button{white-space:nowrap}.device-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-3);margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--line);font-size:var(--fs-xs);color:var(--muted)}.device-meta b{display:block;color:var(--text);font-size:var(--fs-xs);font-weight:var(--fw-medium)}.device-card details{margin-top:var(--sp-3);border-top:1px solid var(--line);padding-top:var(--sp-3)}.device-card summary{cursor:pointer;color:var(--accent-ink);font-size:var(--fs-xs)}.device-history{display:grid;margin-top:var(--sp-2)}.device-history>div{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-2) 0;border-bottom:1px solid var(--line);font-size:var(--fs-xs)}.device-history>div:last-child{border-bottom:0}.device-history small{display:block}@media(max-width:720px){.device-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.device-head{flex-wrap:wrap}}
#roleMenuChecks{display:block}#roleMenuChecks .permission-grid{width:100%}

/* Keep tariff details compact and readable within the existing management form. */
#commercialForm .tariff-schedule{width:100%;flex-basis:100%}
#commercialForm .tariff-schedule summary{cursor:pointer;color:var(--accent-ink)}
#commercialForm .tariff-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3)}
#commercialForm .tariff-fields label{display:flex;flex-direction:column;gap:var(--sp-2);margin:0}
#commercialForm .tariff-fields input{max-width:none}
#commercialForm .tariff-dates{grid-column:1/-1}
#commercialForm textarea{width:100%;border:1px solid var(--line);border-radius:var(--r-xs);background:var(--bg);color:var(--text);padding:var(--sp-2) var(--sp-3);font:inherit;resize:vertical}
@media(max-width:720px){#commercialForm .tariff-fields{grid-template-columns:1fr}}

/* Model center: task tabs, progressive editing, and bounded tariff details. */
.model-center{min-width:0}.model-tabs{display:flex;gap:var(--sp-2);border-bottom:1px solid var(--line);margin-bottom:var(--sp-5);padding-bottom:var(--sp-2)}.model-tabs button{background:transparent;border-color:transparent;color:var(--muted);padding:var(--sp-3) var(--sp-4)}.model-tabs button[aria-selected=true]{background:var(--soft);border-color:var(--line);color:var(--accent-ink);font-weight:var(--fw-strong)}.model-tabs button:focus-visible,.model-center summary:focus-visible{outline:var(--focus-ring);outline-offset:3px}.model-center [role=tabpanel]:focus{outline:none}.model-center .panel-header{align-items:center;gap:var(--sp-4)}.model-center .panel-header h2{margin-bottom:var(--sp-1)}.model-center .panel-header small{display:block;line-height:1.6}.model-center table{white-space:normal;table-layout:fixed}.model-center th,.model-center td{overflow-wrap:anywhere;vertical-align:top;max-width:none}.model-center .badge{white-space:normal;overflow-wrap:anywhere}.model-center .panel,.model-center article{min-width:0;overflow-wrap:anywhere}.model-center small{line-height:1.6}
.model-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-5);padding:var(--sp-4) 0 var(--sp-5)}.model-summary small{display:block;margin-bottom:var(--sp-2)}.model-summary strong{font-size:var(--fs-xl);line-height:1.4;font-weight:var(--fw-strong);overflow-wrap:anywhere}.tariff-rates caption{text-align:left;color:var(--muted);font-size:var(--fs-xs);padding:var(--sp-1) 0 var(--sp-3)}.model-center .tariff-rates th,.model-center .tariff-rates td{padding:var(--sp-3) var(--sp-4);font-variant-numeric:tabular-nums}.tariff-rates tbody th{color:var(--text);background:transparent;border-bottom:1px solid var(--line);font-size:var(--fs-xs)}.tariff-rates tbody tr:last-child th{border-bottom:0}.model-details{border-top:1px solid var(--line);padding-top:var(--sp-4);margin-top:var(--sp-4);font-size:var(--fs-xs);color:var(--muted)}.model-center summary{cursor:pointer;color:var(--accent-ink);font-size:var(--fs-xs);font-weight:var(--fw-strong)}.model-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);margin:var(--sp-5) 0}.model-meta dt{font-size:var(--fs-xs);color:var(--muted);margin-bottom:var(--sp-2)}.model-meta dd{margin:0;font-size:var(--fs-xs);color:var(--text);overflow-wrap:anywhere}.calendar-dates{line-height:1.9;overflow-wrap:anywhere}.tariff-list{display:grid;gap:var(--sp-4)}.tariff-card{padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg)}.tariff-card header,.tariff-card footer{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4)}.tariff-card h3{font-size:var(--fs-lg);margin:0 0 var(--sp-1)}.tariff-card footer{padding-top:var(--sp-4);margin-top:var(--sp-4);border-top:1px solid var(--line)}.tariff-card footer button{flex-shrink:0}.tariff-terms{display:flex;gap:var(--sp-3) var(--sp-5);flex-wrap:wrap;font-size:var(--fs-xs);margin:var(--sp-4) 0}.tariff-terms b{color:var(--accent-ink)}.model-standard{display:flex;gap:var(--sp-3) var(--sp-5);flex-wrap:wrap;padding:var(--sp-5) var(--sp-0);font-size:var(--fs-xs);color:var(--muted)}.model-standard b{color:var(--text)}.model-history summary{font-size:var(--fs-md)}.model-history>.tariff-list{margin-top:var(--sp-4)}
#tariffEditor{scroll-margin-top:var(--sp-5)}#commercialForm fieldset{border:0;border-top:1px solid var(--line);padding:var(--sp-5) 0;margin:var(--sp-5) 0 0;min-width:0}#commercialForm legend{font-weight:var(--fw-strong);font-size:var(--fs-md);padding-right:var(--sp-4)}.model-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4)}.model-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.model-fields label{display:flex;flex-direction:column;gap:var(--sp-2);margin:0;min-width:0}.model-fields input,.model-fields select{min-width:0;width:100%}.model-center input[readonly]{color:var(--muted);background:var(--raised)}.field-hint{font-size:var(--fs-xs);color:var(--muted);margin:var(--sp-4) 0 var(--sp-3);line-height:1.7}.model-form-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);border-top:1px solid var(--line);padding-top:var(--sp-5);margin-top:var(--sp-5)}.model-form-actions button{flex-shrink:0}#commercialResult:empty,#commercialError:empty{display:none}#commercialResult:not(:empty){background:var(--soft);border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--sp-4);font-size:var(--fs-xs);margin:var(--sp-4) 0}#commercialResult:focus{outline:var(--focus-ring);outline-offset:2px}
@media(max-width:900px){.model-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.model-fields,.model-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.model-tabs{gap:0}.model-tabs button{flex:1;padding:var(--sp-3) var(--sp-1);font-size:var(--fs-xs)}.model-summary{gap:var(--sp-4)}.model-summary>div:first-child{grid-column:1/-1}.model-summary strong{font-size:var(--fs-lg)}.model-fields,.model-fields.two,.model-meta{grid-template-columns:1fr}.tariff-card{padding:var(--sp-4)}.tariff-card header,.tariff-card footer,.model-form-actions{flex-wrap:wrap}.model-center .tariff-rates th,.model-center .tariff-rates td{padding:var(--sp-3) var(--sp-1);font-size:var(--fs-xs)}.model-standard{display:grid;gap:var(--sp-2)}.model-center .panel-header>button{width:100%}.model-center .panel-header{align-items:flex-start}}
/* 登录设备（2026-09-30）：在线/离线徽章与操作区，与账户中心同一口径。 */
.device-chip{flex:none;border:1px solid var(--line);border-radius:var(--r-full);padding:var(--sp-0) var(--sp-2);font-size:var(--fs-xs);color:var(--muted);white-space:nowrap}
.device-chip.online{border-color:var(--accent);color:var(--accent-ink);background:var(--soft)}
.device-actions{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--line);display:flex;justify-content:flex-end}

/* Audited financial preview stays readable on desktop and narrow screens. */
.reconcile-record{padding:var(--sp-4) 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.reconcile-record>summary{cursor:pointer;font-weight:var(--fw-strong);line-height:1.6}
.reconciliationForm{margin-top:var(--sp-4)}.reconciliationPreview{margin-top:var(--sp-3);padding:var(--sp-3);background:var(--bg);border-radius:var(--r-sm)}
.reconciliationPreview:empty{display:none}.reconcile-record code{overflow-wrap:anywhere;white-space:normal}
#modelValidationForm{display:grid;gap:var(--sp-3);max-width:720px}.stat .subvalue{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}

/* Task-oriented admin UI: concise primary surfaces, native edit dialogs and safe overflow. */
input[type=checkbox],input[type=radio]{width:var(--sp-4);height:var(--sp-4);padding:0;margin:0;flex:none;accent-color:var(--accent)}
.checkbox-row{display:flex;align-items:center;gap:var(--sp-2);color:var(--text)}
.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:var(--sp-3)}
.filters label{margin:0;min-width:0;display:grid;gap:var(--sp-1)}.filters input{max-width:none;min-width:0}
.filter-actions{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end}
.filters>button{width:auto;justify-self:start;white-space:nowrap}button{min-height:36px;white-space:nowrap}button.textbtn{min-height:28px}.help-button{padding:0;width:18px;min-height:18px;border-radius:50%;font-size:var(--fs-xs);line-height:1;vertical-align:middle;display:inline-flex;align-items:center;justify-content:center}
.workflow-dialog{width:min(800px,calc(100vw - var(--sp-6)));max-height:88dvh;overflow:auto;border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-5);background:var(--panel);color:var(--text);box-shadow:var(--shadow)}
.workflow-dialog> .dialog-heading,.workflow-dialog> .panel-header{position:sticky;top:-var(--sp-5);z-index:2;padding:var(--sp-4) 0;background:var(--panel);border-bottom:1px solid var(--line);margin:-8px 0 var(--sp-5)}
.workflow-dialog .close{padding:0 var(--sp-2);min-width:36px;font-size:var(--fs-xl);border:0;background:transparent}
.workflow-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);margin-top:var(--sp-5)}.workflow-form>label{margin:0;min-width:0;display:flex;flex-direction:column;gap:var(--sp-2)}.workflow-form>.checkbox-row{flex-direction:row;grid-column:1/-1}.workflow-form>.model-fields,.workflow-form>p,.workflow-form>div,.workflow-form>.reconciliationPreview{grid-column:1/-1}.workflow-form>button[type=submit]{grid-column:1/-1;justify-self:end;width:auto}.workflow-dialog .error{white-space:normal}.workflow-dialog .note{margin:var(--sp-2) 0}.workflow-dialog .model-summary{gap:var(--sp-3)}.workflow-dialog code{white-space:normal;overflow-wrap:anywhere}
#modelValidationForm{max-width:none;display:grid;grid-template-columns:1fr}.workflow-dialog #modelDefaultForm,.workflow-dialog #modelBudgetForm,.workflow-dialog #newApiRotate{display:block}.workflow-dialog #modelDefaultForm>button{margin-top:var(--sp-4)}
.setup-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4)}.setup-steps>div{padding:var(--sp-4);border-radius:var(--r-md);background:var(--bg);border:1px solid var(--line)}.setup-steps span{display:block;color:var(--accent-ink);font-weight:var(--fw-strong);margin-bottom:var(--sp-2)}.setup-steps p{font-size:var(--fs-xs);color:var(--muted);margin:var(--sp-2) 0 0}.model-summary .small-value{font-size:var(--fs-md)}
.usage-section{margin-top:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--line)}.usage-section .table-wrap{border:1px solid var(--line);border-radius:var(--r-md)}.usage-section table{min-width:1000px;font-variant-numeric:tabular-nums}.usage-section th,.usage-section td{padding:var(--sp-3) var(--sp-3);vertical-align:middle}.usage-section td .badge{white-space:normal;max-width:150px}.usage-section .textbtn{padding:var(--sp-1) var(--sp-2)}.usage-section .panel-header{margin-bottom:var(--sp-3)}
#model-panel-catalog>.panel:first-child .model-summary{padding-bottom:var(--sp-3)}#model-panel-catalog>.panel:first-child p{max-width:760px}
@media(max-width:720px){.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-actions{justify-content:flex-start}.workflow-form,.setup-steps{grid-template-columns:1fr}.workflow-dialog{padding:var(--sp-4);width:calc(100vw - 20px)}.workflow-dialog>.dialog-heading,.workflow-dialog>.panel-header{top:-18px}.workflow-dialog .model-summary{grid-template-columns:1fr}.workflow-dialog .model-summary>div:first-child{grid-column:auto}.model-tabs{overflow-x:auto}.model-tabs button{flex:none;padding:var(--sp-2) var(--sp-3)}.workflow-dialog .model-fields.two{grid-template-columns:1fr}.usage-section .panel-header{display:block}.usage-section .panel-header small{display:block;margin-top:var(--sp-1)}}

/* Keep the close action beside its title even when model panels stack on mobile. */
.workflow-dialog>.dialog-heading,.workflow-dialog>.panel-header{display:flex;flex-wrap:nowrap;align-items:flex-start;justify-content:space-between;gap:var(--sp-4)}
.workflow-dialog>.panel-header>div{min-width:0}
.workflow-dialog>.dialog-heading>.close,.workflow-dialog>.panel-header>.close{width:36px;flex:0 0 36px;height:36px;margin:0}
.usage-records table{table-layout:fixed;min-width:1510px}.usage-records th:first-child{width:145px}.usage-records th:nth-child(2){width:300px}.usage-records th:nth-child(3){width:155px}.usage-records th:nth-child(4){width:105px}.usage-records th:nth-child(5){width:110px}.usage-records th:nth-child(6){width:125px}.usage-records th:nth-child(7){width:115px}.usage-records th:nth-child(8){width:100px}.usage-records th:nth-child(9){width:95px}.usage-records th:nth-child(10){width:95px}.usage-records th:last-child{width:65px}.usage-records td{white-space:normal;overflow-wrap:anywhere;max-width:none}.usage-records td .badge{white-space:normal;max-width:100%;overflow-wrap:anywhere}.usage-message{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.6}.usage-message-detail{white-space:pre-wrap;overflow-wrap:anywhere}.usage-pagination{display:flex;justify-content:flex-end;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.usage-pagination [data-usage-page-label]{margin-right:auto;color:var(--muted)}.usage-pagination button{white-space:nowrap}

/* Compact credit issue form: consistent controls and field-local feedback. */
.credit-grant-dialog{width:min(620px,calc(100vw - var(--sp-6)));padding:var(--sp-5)}
#grantForm.workflow-form{grid-template-columns:1fr 1fr;gap:var(--sp-4) var(--sp-5);margin:0}
#grantForm>label,#grantForm>.recipient-field{grid-column:auto;align-self:start;display:flex;flex-direction:column;gap:var(--sp-2);margin:0;min-width:0}
#grantForm input,#grantForm select{height:42px;margin:0;padding:var(--sp-2) var(--sp-3);line-height:22px;max-width:none;min-width:0;box-sizing:border-box}
#grantForm .recipient-field{grid-column:1/-1;position:relative}
#grantForm .recipient-field>label{margin:0;font-size:var(--fs-xs)}
#grantForm>label:first-child{grid-column:1/-1;max-width:220px;width:100%}
#grantForm .error{font-size:var(--fs-xs);margin:0;min-height:0;line-height:1.5}
#grantForm .grant-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--line);margin-top:var(--sp-1)}
#grantForm .grant-actions>.error{margin-right:auto}
#grantForm [aria-invalid=true]{border-color:var(--bad)}
[data-mc-inventory] .badge.success{color:var(--c-success);background:var(--c-success-tint);border-color:transparent}
[data-mc-inventory] .badge.info{color:var(--c-info);background:var(--c-info-tint);border-color:transparent}
[data-mc-inventory] .badge.neutral{color:var(--c-muted);background:var(--c-raised);border-color:transparent}
[data-mc-inventory] table{min-width:960px;font-variant-numeric:tabular-nums}
[data-mc-inventory] td,[data-mc-inventory] th{overflow-wrap:anywhere;vertical-align:top;white-space:normal}
[data-mc-products] .permission-scope{margin-top:var(--sp-4);padding:var(--sp-4);border:var(--border);border-radius:var(--r-md)}
[data-mc-products] .check-row,[data-mc-config-form] .check-row{display:flex;align-items:center;gap:var(--sp-2)}
[data-mc-products] input[type=checkbox],[data-mc-config-form] input[type=checkbox]{width:auto;flex:none}
[data-mc-config-form] [aria-invalid=true],[data-mc-product-form] [aria-invalid=true]{border-color:var(--c-danger)}
[data-mc-config-form],[data-mc-product-form]{display:grid;gap:var(--sp-3);font-variant-numeric:tabular-nums}
[data-mc-config-form],[data-mc-product-form]{grid-template-columns:1fr}
[data-mc-config-form] .error:empty,[data-mc-product-form] .error:empty,[data-mc-inventory] .error:empty{display:none}
[data-mc-config-form] details,[data-mc-product-form] details{grid-column:1/-1}
[data-mc-config-form] details>label,[data-mc-text-capacity]>label{display:flex;flex-direction:column;gap:var(--sp-2);margin:var(--sp-3) 0}
[data-mc-config-form] [hidden]{display:none}
[data-mc-overview] .permission-scope{margin-top:var(--sp-4);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md)}
[data-mc-inventory] .notice a{text-decoration:underline}
.model-tabs{flex-wrap:wrap}
#grantTargetHint{font-size:var(--fs-xs);overflow-wrap:anywhere}
.recipient-options{position:absolute;top:69px;left:0;right:0;max-height:240px;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-1);box-shadow:var(--sh-2);z-index:5}
.recipient-options button{width:100%;border:0;background:transparent;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);white-space:normal;box-shadow:none}
.recipient-options strong,.recipient-options span>small{display:block;overflow-wrap:anywhere}
.recipient-options strong{font-size:var(--fs-sm);font-weight:var(--fw-strong)}.recipient-options small{font-size:var(--fs-xs)}.recipient-options p{font-size:var(--fs-xs);padding:var(--sp-3);margin:0}
.recipient-options button:focus{background:var(--soft);outline:var(--focus-ring);outline-offset:-2px}
@media(max-width:520px){#grantForm.workflow-form{grid-template-columns:1fr}.credit-grant-dialog{padding:var(--sp-5)}#grantForm>label:first-child{max-width:none}}

#grantForm .grant-quote{grid-column:1/-1;line-height:1.65;padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--r-md);font-size:var(--fs-sm);background:var(--bg);overflow-wrap:anywhere}

#grantForm .grant-quote small{display:block;color:var(--muted)}
#grantForm .grant-quote strong{display:block;margin:var(--sp-1) 0;font-size:var(--fs-md)}

/* 窄屏表格行高（设计系统：表格 36px，≤720px 自动 44px） */
@media(max-width:720px){th,td{height:var(--row-h-narrow)}}

.case-evidence{white-space:pre-wrap;overflow-wrap:anywhere;max-height:55vh;overflow:auto}

.metric-help{position:fixed;inset:auto;margin:0;width:max-content;max-width:min(360px,calc(100vw - var(--sp-6)));padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel);color:var(--ink);font-size:var(--fs-sm);line-height:var(--lh-base);box-shadow:var(--sh-2)}
.organization-admin-card{overflow-wrap:anywhere}
.organization-admin-card>.row{flex-wrap:wrap}
.organization-admin-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-4);margin:var(--sp-5) 0}
.organization-admin-facts dt{font-size:var(--fs-xs);color:var(--c-muted)}
.organization-admin-facts dd{margin:var(--sp-1) 0 0;font-variant-numeric:tabular-nums}
.organization-objections{padding:var(--sp-4);border:var(--border);border-radius:var(--r-sm);background:var(--c-warning-tint);margin:var(--sp-4) 0}
.organization-objections h3{font-size:var(--fs-md);margin:0}
@media(max-width:1050px){.organization-admin-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.organization-admin-facts{grid-template-columns:minmax(0,1fr)}}

/* Workbench product operations: one product, clear tasks, precise account data. */
.workbench-ops .brand small{letter-spacing:0;font-size:var(--fs-sm)}
.workbench-ops .mark{background:var(--c-brand);color:var(--c-on-brand)}
.workbench-ops .scope{border:0;border-bottom:1px solid var(--c-line);border-radius:0;background:transparent;padding:0 var(--sp-2) var(--sp-5)}
.workbench-ops .scope b{font-size:var(--fs-sm)}
.workbench-ops main{max-width:1240px;margin:0 auto;padding:var(--sp-6)}
.workbench-ops .heading{align-items:center;margin-bottom:var(--sp-5)}
.workbench-ops .heading .eyebrow{letter-spacing:0;color:var(--c-muted);margin-bottom:var(--sp-2)}
.workbench-ops .heading h1{margin-bottom:var(--sp-2)}
.workbench-ops .heading p{font-size:var(--fs-md);line-height:var(--lh-base)}
.workbench-ops .nav a[aria-current=page]{color:var(--c-brand-ink);background:var(--c-brand-tint);border-color:transparent}
.workbench-ops .panel{box-shadow:none;padding:var(--sp-5)}
.workbench-ops .panel-header{align-items:center;margin-bottom:var(--sp-4)}
.workbench-ops .panel-header small{font-size:var(--fs-sm)}
.workbench-ops .ops-caption{margin:var(--sp-1) 0 0;font-size:var(--fs-sm);color:var(--c-muted);line-height:var(--lh-base)}
.workbench-ops .badge{color:var(--c-muted);background:var(--c-raised);border-color:transparent}
.workbench-ops .ops-status.success{color:var(--c-success);background:var(--c-success-tint)}
.workbench-ops .ops-status.warning{color:var(--c-warning);background:var(--c-warning-tint)}
.workbench-ops .ops-status.neutral{color:var(--c-muted);background:var(--c-raised)}
.workbench-ops .stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-4)}
.workbench-ops .stat{padding:var(--sp-5);box-shadow:none;min-width:0}
.workbench-ops .stat strong.subvalue{font-size:var(--fs-2xl);line-height:var(--lh-tight);margin:var(--sp-3) 0;overflow-wrap:anywhere}
.workbench-ops .stat footer{display:block;font-size:var(--fs-sm);line-height:var(--lh-base)}
.ops-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}
.ops-entry{padding:var(--sp-5);border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-panel);display:flex;flex-direction:column;align-items:flex-start}
.ops-entry-title{display:flex;align-items:center;gap:var(--sp-3)}
.ops-entry-title .icon{width:20px;height:20px;color:var(--c-muted)}
.ops-entry h2{font-size:var(--fs-xl);line-height:var(--lh-snug)}
.ops-entry p{margin:var(--sp-3) 0 var(--sp-5);color:var(--c-muted);line-height:var(--lh-base)}
.ops-entry .btn{margin-top:auto}
.workbench-ops .ops-grant{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-5)}
.workbench-ops .ops-grant .panel-header{margin:0}
.workbench-ops .ops-grant>button{flex:none}
.ops-scope{border-top:1px solid var(--c-line);padding:var(--sp-4) 0;color:var(--c-muted);font-size:var(--fs-sm)}
.ops-scope summary{cursor:pointer;width:fit-content;max-width:100%;line-height:var(--lh-base);color:var(--c-ink)}
.ops-scope summary:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset);border-radius:var(--r-xs)}
.ops-scope p{margin:var(--sp-3) 0;max-width:850px;line-height:var(--lh-base)}
.ops-scope .table-wrap{margin-top:var(--sp-4)}
.ops-lookup{display:grid;grid-template-columns:minmax(200px,1fr) 180px auto;gap:var(--sp-4);align-items:end;margin-bottom:var(--sp-5)}
.ops-lookup label{margin:0;display:grid;gap:var(--sp-2);font-size:var(--fs-sm)}
.ops-lookup input,.ops-lookup select{width:100%;max-width:none;margin:0;font-size:var(--fs-md);height:var(--h-base)}
.ops-result{font-size:var(--fs-sm);color:var(--c-muted);padding:var(--sp-2) 0;font-variant-numeric:tabular-nums}
.ops-no-match{padding:var(--sp-5) 0;margin:0;color:var(--c-muted);line-height:var(--lh-base)}
.workbench-ops table{font-size:var(--fs-sm);font-variant-numeric:tabular-nums}
.workbench-ops td{height:auto;min-height:var(--row-h);padding:var(--sp-3);vertical-align:middle}
.workbench-ops td small{margin-top:var(--sp-1);line-height:var(--lh-base)}
.workbench-ops .ops-id{max-width:270px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--c-dim);font-family:var(--font-mono);font-size:var(--fs-xs)}
.workbench-ops .ops-accounts table{min-width:800px}
.workbench-ops .ops-accounts th:nth-child(n+3),.workbench-ops .ops-accounts td:nth-child(n+3){text-align:right}
.ops-number{font-variant-numeric:tabular-nums;white-space:nowrap}
.workbench-ops .ops-policies td:first-child{min-width:220px}
.workbench-ops .ops-policies th:last-child,.workbench-ops .ops-policies td:last-child{text-align:right}
.workbench-ops .ops-policies .modelPolicyForm+button{font-size:var(--fs-sm)}
.workbench-ops button,.workbench-ops .btn{transition:transform var(--dur-1) var(--ease-1),background var(--dur-1) var(--ease-1);}
.workbench-ops button:active:not(:disabled),.workbench-ops .btn:active{transform:translateY(1px)}
.workbench-ops #shell{animation:ops-arrive var(--dur-2) var(--ease-1)}
@keyframes ops-arrive{from{opacity:0;transform:translateY(var(--sp-1))}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.workbench-ops main{padding:var(--sp-5)}.workbench-ops .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-lookup{grid-template-columns:minmax(0,1fr) 160px}.ops-result{grid-column:1/-1;padding:0}}
@media(max-width:720px){.workbench-ops main{padding:var(--sp-5) var(--sp-4)}.ops-entry-grid{grid-template-columns:1fr}.workbench-ops .heading{align-items:flex-start;gap:var(--sp-3)}.workbench-ops .heading>button{flex:none;font-size:var(--fs-sm)}.workbench-ops .ops-grant{align-items:flex-start;flex-wrap:wrap}.workbench-ops .panel{padding:var(--sp-4)}.workbench-ops .ops-grant>button{min-height:var(--h-touch)}.workbench-ops .ops-lookup{grid-template-columns:minmax(0,1fr)}.workbench-ops .stat{padding:var(--sp-4)}.ops-entry h2{font-size:var(--fs-lg)}.ops-entry .btn{min-height:var(--h-touch)}.ops-lookup input,.ops-lookup select{min-height:var(--h-touch)}}
@media(prefers-reduced-motion:reduce){.workbench-ops #shell{animation:none}.workbench-ops button,.workbench-ops .btn{transition:none}.workbench-ops button:active:not(:disabled),.workbench-ops .btn:active{transform:none}}

/* Keep status, balances and actions visible before any narrow-screen scrolling. */
.ops-scroll-hint{display:none}
.workbench-ops .panel .empty{padding:var(--sp-5) 0;min-height:0}
@media(max-width:720px){
 .workbench-ops .stats{grid-template-columns:minmax(0,1fr)}
 .workbench-ops .stat{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-2) var(--sp-4);align-items:center}
 .workbench-ops .stat strong.subvalue{grid-column:2;grid-row:1/3;margin:0;max-width:180px;text-align:right}
 .workbench-ops .stat footer{grid-column:1;margin:0}
 .ops-scroll-hint{display:block;color:var(--c-muted);font-size:var(--fs-sm);margin:0 0 var(--sp-3)}
 .workbench-ops :is(.ops-accounts,.ops-policies,.ops-routes) table{min-width:0;width:100%;display:block}
 .workbench-ops :is(.ops-accounts,.ops-policies,.ops-routes) thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .workbench-ops :is(.ops-accounts,.ops-policies,.ops-routes) tbody{display:block}
 .workbench-ops :is(.ops-accounts,.ops-policies,.ops-routes) tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);padding:var(--sp-4) 0;border-bottom:1px solid var(--c-line)}
 .workbench-ops :is(.ops-accounts,.ops-policies,.ops-routes) td{display:block;text-align:left;border:0;padding:0;min-width:0;min-height:0;white-space:normal;overflow-wrap:anywhere}
 .workbench-ops :is(.ops-accounts,.ops-policies,.ops-routes) td:first-child{grid-column:1/-1;max-width:none}
 .workbench-ops :is(.ops-accounts,.ops-policies,.ops-routes) td:not(:first-child)::before{content:attr(data-label);display:block;margin-bottom:var(--sp-1);color:var(--c-muted);font-size:var(--fs-xs)}
 .workbench-ops .ops-accounts td:nth-child(4),.workbench-ops .ops-policies td:last-child{grid-column:1/-1;text-align:left}
 .workbench-ops .ops-policies td:last-child>button{min-height:var(--h-touch)}
 .workbench-ops .ops-accounts .ops-number{white-space:normal;overflow-wrap:anywhere}
 .workbench-ops .ops-id{white-space:normal;overflow-wrap:anywhere;max-width:none}
 .workbench-ops .ops-routes code{white-space:normal;overflow-wrap:anywhere}
 .workbench-ops .ops-routes td:nth-child(2){grid-column:1/-1}
}
/* Operations notifications use the shared design scale in both themes. */
.notice-policy{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-5);padding:var(--sp-5)}
.notice-admin-list{display:grid;gap:var(--sp-4);margin-top:var(--sp-5)}
.notice-admin-card{padding:var(--sp-5)}
.notice-admin-dialog{max-width:calc(100vw - var(--sp-6));width:960px;max-height:90vh;overflow:auto}
.notice-editor{display:grid;gap:var(--sp-4)}
.notice-editor fieldset{border:1px solid var(--c-line);border-radius:var(--r-md);padding:var(--sp-4)}
.notice-editor legend{font-weight:var(--fw-strong)}
.notice-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}
.notice-editor textarea{width:100%;resize:vertical}
.notice-editor output{display:block;color:var(--c-muted);padding:var(--sp-2) 0}
.notice-real-preview{padding:var(--sp-5);border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-panel)}
.notice-real-preview img{display:block;max-width:100%;max-height:50vh;object-fit:contain;margin:var(--sp-4) auto}
.notice-body{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:720px){.notice-field-grid{grid-template-columns:1fr}.notice-policy{align-items:flex-start;flex-direction:column}.notice-admin-card .row{flex-wrap:wrap}}


/* Payment configuration follows the platform form tokens. */
.payment-options label{display:inline-flex;align-items:center;gap:var(--sp-2);margin:var(--sp-3) 0;color:var(--text)}
.payment-options input{width:var(--sp-4);height:var(--sp-4);margin:0;flex:none;accent-color:var(--accent)}
[data-payment-channel] textarea{width:100%;border:var(--border);border-radius:var(--r-xs);background:var(--bg);color:var(--text);padding:var(--sp-2) var(--sp-3);font:var(--fs-sm)/var(--lh-base) var(--font-mono);resize:vertical}
[data-payment-channel] textarea:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}

/* Shared account authentication embedded in the existing management login panel. */
#adminAuth .auth-layout.auth-compact{display:block;min-height:0;background:transparent}
#adminAuth .auth-card{min-height:0;padding:0;align-items:stretch;background:transparent;border:0}
#adminAuth .auth-pane{width:100%;max-width:none;padding:0}
#adminAuth .auth-pane-header{margin:0}
#adminAuth .auth-form{margin-top:var(--sp-4)}
#adminAuth .input-row,#adminAuth .challenge-row{display:flex;align-items:center;gap:var(--sp-2)}
#adminAuth .input-row input{flex:1;min-width:0}
#adminAuth .input-row button{flex:none;white-space:nowrap}
#adminAuth .form-submit{margin-top:var(--sp-4)}
#adminAuth #auth-back{margin-top:var(--sp-3)}

.wechat-config form{margin-top:var(--sp-4)}
.wechat-config input,.wechat-config select{max-width:100%}
.wechat-facts{display:grid;gap:var(--sp-3)}
.wechat-facts div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:var(--sp-4)}
.wechat-facts dd{margin:0;overflow-wrap:anywhere}
.wechat-facts dt{color:var(--c-muted)}
.wechat-config details>summary{cursor:pointer;font-weight:var(--fw-strong)}
.wechat-product-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:var(--sp-4);align-items:end}
.wechatProductForm{padding-block:var(--sp-4);border-top:1px solid var(--c-line)}
@media(max-width:720px){
 .wechat-product-row,.wechat-facts div{grid-template-columns:minmax(0,1fr)}
 .wechat-config .field-grid{grid-template-columns:minmax(0,1fr)}
}
.wechat-config summary:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset);border-radius:var(--r-xs)}
.wechat-config .wechat-ready{color:var(--c-success);background:var(--c-success-tint);border-color:var(--c-success)}
.wechat-config .wechat-empty{color:var(--c-muted);background:var(--c-raised);border-color:var(--c-line)}
.payment-section{margin-block-start:var(--sp-5)}

[data-mc-inventory] .badge.warning{color:var(--c-warning);background:var(--c-warning-tint);border-color:transparent}
[data-mc-inventory] .badge.danger{color:var(--c-danger);background:var(--c-danger-tint);border-color:transparent}

.new-api-credentials .badge.success{color:var(--c-success);background:var(--c-success-tint);border-color:transparent}
.new-api-credentials .badge.neutral{color:var(--c-muted);background:var(--c-raised);border-color:transparent}
/* Shared voice prices use existing tokens and remain read-only in product administration. */
[data-voice-published] dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);margin:var(--sp-4) 0}[data-voice-published] dt{color:var(--muted);font-size:var(--fs-xs)}[data-voice-published] dd{margin:var(--sp-2) 0 0;line-height:1.7;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}[data-voice-pricing] .toolbar{display:flex;flex-wrap:wrap;gap:var(--sp-3)}[data-voice-pricing-load-error]:empty,[data-voice-pricing-result]:empty,[data-voice-pricing-form] .error:empty{display:none}
@media(max-width:720px){[data-voice-published] dl{grid-template-columns:1fr}}

[data-voice-pricing] input,[data-voice-pricing] select,[data-mc-products] select{border-color:var(--c-line-strong)}[data-voice-published] .badge.success,[data-voice-readiness] .badge.success{color:var(--c-success);background:var(--c-success-tint);border-color:transparent}[data-mc-products] .workflow-form{margin-top:var(--sp-3);gap:var(--sp-3)}[data-mc-products] .required-marker{display:inline}[data-mc-products] .workflow-form>.field-hint{margin:0}[data-mc-products] .model-details{grid-column:1/-1;margin-top:var(--sp-2)}[data-voice-pricing-form]>label[name]{min-width:0}
@media(max-width:1050px){[data-voice-pricing-form]{grid-template-columns:1fr}}
/* Platform console refinement: one continuous reading surface, scoped from product consoles. */
.skip-link{position:fixed;top:var(--sp-2);left:var(--sp-4);z-index:100;transform:translateY(-200%);padding:var(--sp-3) var(--sp-4);background:var(--c-panel);border:1px solid var(--c-line-strong);border-radius:var(--r-sm)}
.skip-link:focus{transform:translateY(0);outline:var(--focus-ring)}
:is(.platform-console,.voice-ops){font-variant-numeric:tabular-nums}
:is(.platform-console,.voice-ops) .shell{grid-template-columns:248px minmax(0,1fr);min-height:100dvh}
:is(.platform-console,.voice-ops) #sidebar{position:sticky;top:0;height:100dvh;min-height:0;overflow:hidden;gap:var(--sp-4);padding:var(--sp-5) var(--sp-3) var(--sp-3);background:var(--c-panel)}
:is(.platform-console,.voice-ops) .brand{padding:0 var(--sp-3);gap:var(--sp-3);flex:none}
:is(.platform-console,.voice-ops) .brand small{letter-spacing:0;font-size:var(--fs-xs)}
:is(.platform-console,.voice-ops) .scope{padding:var(--sp-3);border:0;border-radius:0;background:transparent;border-bottom:1px solid var(--c-line)}
:is(.platform-console,.voice-ops) .scope small{font-size:var(--fs-xs)}
:is(.platform-console,.voice-ops) .scope b{font-size:var(--fs-md);font-weight:var(--fw-medium)}
:is(.platform-console,.voice-ops) .nav{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;gap:var(--sp-4);padding:var(--sp-0)}
:is(.platform-console,.voice-ops) .nav-group{display:grid;gap:var(--sp-1)}
:is(.platform-console,.voice-ops) .nav-group>p{margin:0 0 var(--sp-1);padding:0 var(--sp-3);font-size:var(--fs-xs);color:var(--c-dim)}
:is(.platform-console,.voice-ops) .nav a{min-height:40px;padding:var(--sp-2) var(--sp-3);gap:var(--sp-3);font-size:var(--fs-sm);border:0;border-radius:var(--r-sm)}
:is(.platform-console,.voice-ops) .nav a:hover{background:var(--c-raised);color:var(--c-ink)}
:is(.platform-console,.voice-ops) .nav a[aria-current=page]{background:var(--c-brand-tint);color:var(--c-brand-ink);font-weight:var(--fw-medium)}
:is(.platform-console,.voice-ops) .sidefoot{flex:none;margin:0;padding:var(--sp-3) var(--sp-2) 0;min-width:0}
:is(.platform-console,.voice-ops) .account-summary{gap:var(--sp-2)}
:is(.platform-console,.voice-ops) #identity{min-width:0;overflow:hidden}
:is(.platform-console,.voice-ops) #identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-search{flex:none;padding:0 var(--sp-2)}
.nav-search label{margin:0 0 var(--sp-1);font-size:var(--fs-xs)}
.nav-search input{width:100%;height:var(--h-base);font-size:var(--fs-sm);background:var(--c-bg);border:1px solid var(--c-line-strong);border-radius:var(--r-sm)}
.nav-search p{font-size:var(--fs-sm);margin:var(--sp-2) 0 0;color:var(--c-muted)}
:is(.platform-console,.voice-ops) .topbar{min-height:60px;height:auto;padding:var(--sp-3) var(--sp-6);background:var(--c-bg)}
:is(.platform-console,.voice-ops) .topbar>.row{width:auto;flex:none;gap:var(--sp-3)}
:is(.platform-console,.voice-ops) .topbar .theme-control{height:var(--h-base);width:var(--h-base);padding:0;font-size:var(--fs-lg)}
:is(.platform-console,.voice-ops) .topbar .badge{border:0;background:transparent;padding:0;color:var(--c-muted)}
.read-status{font-size:var(--fs-xs);color:var(--c-muted)}
.read-status:empty{display:none}
:is(.platform-console,.voice-ops) main{max-width:1600px;padding:var(--sp-6) var(--sp-6) var(--sp-7)}
:is(.platform-console,.voice-ops) #view:focus{outline:none}
:is(.platform-console,.voice-ops) .heading{align-items:flex-start;gap:var(--sp-5);margin-bottom:var(--sp-6)}
:is(.platform-console,.voice-ops) h1{letter-spacing:0;line-height:var(--lh-tight);margin-bottom:var(--sp-2)}
:is(.platform-console,.voice-ops) .heading p{max-width:850px;font-size:var(--fs-md);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .heading>button{flex:none;font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .panel,:is(.platform-console,.voice-ops) .stat{box-shadow:none;min-width:0}
:is(.platform-console,.voice-ops) .panel{padding:var(--sp-6)}
:is(.platform-console,.voice-ops) .section-gap{margin-top:var(--sp-6)}
:is(.platform-console,.voice-ops) .stack{gap:var(--sp-6)}
:is(.platform-console,.voice-ops) .panel-header{align-items:flex-start;gap:var(--sp-4);margin-bottom:var(--sp-5);flex-wrap:wrap}
:is(.platform-console,.voice-ops) .panel-header>div{min-width:0}
:is(.platform-console,.voice-ops) .panel-header p{font-size:var(--fs-sm);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .panel-header>small{font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .stats{gap:var(--sp-5);margin-bottom:var(--sp-6)}
:is(.platform-console,.voice-ops) .stat strong{line-height:var(--lh-tight);letter-spacing:0}
:is(.platform-console,.voice-ops) .stat-icon{border:0;background:transparent;color:var(--c-dim);width:20px;height:20px;top:var(--sp-5);right:var(--sp-4)}
:is(.platform-console,.voice-ops) .stat small{padding-right:var(--sp-5)}
:is(.platform-console,.voice-ops) .stat footer{font-size:var(--fs-sm);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .split>.panel{display:flex;flex-direction:column}
:is(.platform-console,.voice-ops) .split .empty{padding:var(--sp-5);margin:auto 0}
:is(.platform-console,.voice-ops) .split .stat{border:0;padding:var(--sp-4) 0;background:transparent}
:is(.platform-console,.voice-ops) .split .stat small{padding:0}
:is(.platform-console,.voice-ops) .service{padding:var(--sp-4) 0;align-items:center}
:is(.platform-console,.voice-ops) .service b{font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .service small{font-size:var(--fs-sm);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .note{border:0;padding:0;margin:var(--sp-4) 0 0;font-size:var(--fs-sm);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .notice{font-size:var(--fs-sm);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .badge{color:var(--c-muted);background:var(--c-raised);border-color:transparent;line-height:var(--lh-base);padding:var(--sp-0) var(--sp-2);border-radius:var(--r-xs);white-space:nowrap}
:is(.platform-console,.voice-ops) .badge.success{color:var(--c-success);background:var(--c-success-tint)}
:is(.platform-console,.voice-ops) .badge.warning{color:var(--c-warning);background:var(--c-warning-tint)}
:is(.platform-console,.voice-ops) .badge.danger{color:var(--c-danger);background:var(--c-danger-tint)}
:is(.platform-console,.voice-ops) .badge.info{color:var(--c-info);background:var(--c-info-tint)}
:is(.platform-console,.voice-ops) .badge.neutral{color:var(--c-muted);background:var(--c-raised);white-space:normal;overflow-wrap:anywhere}
:is(.platform-console,.voice-ops) .device-chip.online{color:var(--c-success);background:var(--c-success-tint);border-color:var(--c-success)}
:is(.platform-console,.voice-ops) button,:is(.platform-console,.voice-ops) .btn{min-height:var(--h-base);box-shadow:none;transition:transform var(--dur-1) var(--ease-1),background var(--dur-1) var(--ease-1)}
:is(.platform-console,.voice-ops) button:active:not(:disabled),:is(.platform-console,.voice-ops) .btn:active{transform:translateY(1px)}
:is(.platform-console,.voice-ops) button.textbtn{min-height:var(--h-compact);white-space:normal;text-align:left}
:is(.platform-console,.voice-ops) .help-button{min-height:20px;width:20px;padding:0}
:is(.platform-console,.voice-ops) :is(button,a,input,select,textarea,summary):focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}
:is(.platform-console,.voice-ops) :is(input,select,textarea){border:1px solid var(--c-line-strong);border-radius:var(--r-sm);font-size:var(--fs-md);min-width:0;max-width:100%}
:is(.platform-console,.voice-ops) :is(input,select):not([type=checkbox]):not([type=radio]){min-height:var(--h-base)}
:is(.platform-console,.voice-ops) textarea{font:inherit;line-height:var(--lh-base);background:var(--c-bg);color:var(--c-ink);padding:var(--sp-2) var(--sp-3);width:100%;resize:vertical}
:is(.platform-console,.voice-ops) label{font-size:var(--fs-md);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) :is(fieldset,.model-fields>*,.workflow-form>*,.field-grid>*){min-width:0}
:is(.platform-console,.voice-ops) :is(.model-fields,.workflow-form,.field-grid){gap:var(--sp-5);align-items:start}
:is(.platform-console,.voice-ops) :is(.model-fields,.field-grid)>label{display:grid;margin:0;gap:var(--sp-2)}
:is(.platform-console,.voice-ops) .model-summary strong{overflow-wrap:anywhere}
:is(.platform-console,.voice-ops) form>.model-fields+button{margin-top:var(--sp-5)}
:is(.platform-console,.voice-ops) .error:empty{display:none}
:is(.platform-console,.voice-ops) .model-form-actions{gap:var(--sp-4);margin-top:var(--sp-5)}
:is(.platform-console,.voice-ops) .form-section{margin-top:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--c-line)}
:is(.platform-console,.voice-ops) .form-section>h3{font-size:var(--fs-lg);margin-bottom:var(--sp-4)}
:is(.platform-console,.voice-ops) .form-section .checkbox-row{min-height:var(--h-touch);margin:var(--sp-2) 0}
:is(.platform-console,.voice-ops) .filters{padding-bottom:var(--sp-4);border-bottom:1px solid var(--c-line);gap:var(--sp-4)}
:is(.platform-console,.voice-ops) .filters>button{justify-self:stretch}
:is(.platform-console,.voice-ops) .field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5);align-items:start}
:is(.platform-console,.voice-ops) .workflow-form>label{font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .form-actions{flex-wrap:wrap;gap:var(--sp-3);align-items:center}
:is(.platform-console,.voice-ops) .error-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);font-size:var(--fs-md);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .error-banner button{flex:none}
:is(.platform-console,.voice-ops) .field-error{display:block;margin-top:var(--sp-1);color:var(--c-danger);font-size:var(--fs-sm);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) [aria-invalid=true]{border-color:var(--c-danger)}
:is(.platform-console,.voice-ops) .table-wrap{max-width:100%;scrollbar-width:thin;overscroll-behavior-x:contain;border-radius:var(--r-sm);scroll-margin:var(--sp-4)}
:is(.platform-console,.voice-ops) th{height:var(--h-touch);white-space:nowrap;letter-spacing:0;padding:var(--sp-3) var(--sp-4)}
:is(.platform-console,.voice-ops) td{height:var(--sp-7);padding:var(--sp-3) var(--sp-4);line-height:var(--lh-base);vertical-align:middle;max-width:440px}
:is(.platform-console,.voice-ops) td small{line-height:var(--lh-snug);max-width:440px;overflow:hidden;text-overflow:ellipsis}
:is(.platform-console,.voice-ops) td .badge{margin:0 0 0 var(--sp-1);line-height:var(--lh-snug)}
:is(.platform-console,.voice-ops) td:first-child .badge:first-child{margin:0}
.table-scroll-hint{font-size:var(--fs-xs);color:var(--c-muted);margin:0 0 var(--sp-2)}
.record-search{display:flex;align-items:flex-end;gap:var(--sp-4);justify-content:space-between;margin-bottom:var(--sp-4)}
.record-search label{margin:0;display:grid;gap:var(--sp-1);width:min(100%,360px)}
.record-search [role=status]{font-size:var(--fs-sm);color:var(--c-muted);flex:none}
:is(.platform-console,.voice-ops) .local-no-match{padding:var(--sp-5)}
:is(.platform-console,.voice-ops) .empty{font-size:var(--fs-md);line-height:var(--lh-base);padding:var(--sp-6) var(--sp-4)}
:is(.platform-console,.voice-ops) .product-card{background:var(--c-panel)}
:is(.platform-console,.voice-ops) .product-footer{background:transparent;align-items:center}
:is(.platform-console,.voice-ops) .product-footer .primary{background:var(--c-raised);color:var(--c-ink);border-color:var(--c-line-strong)}
:is(.platform-console,.voice-ops) .product-meta b{font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .product-meta .textbtn{display:block;margin-top:var(--sp-1)}
:is(.platform-console,.voice-ops) :is(.iam-tabs,.model-tabs){gap:var(--sp-2);flex-wrap:wrap;overflow:visible;margin-bottom:var(--sp-6)}
:is(.platform-console,.voice-ops) :is(.iam-tabs,.model-tabs)>button{flex:none;font-size:var(--fs-md);padding:var(--sp-2) var(--sp-4)}
:is(.platform-console,.voice-ops) .model-directory{table-layout:fixed;white-space:normal;min-width:680px}
:is(.platform-console,.voice-ops) .model-directory th:nth-child(1){width:28%}
:is(.platform-console,.voice-ops) .model-directory th:nth-child(2){width:23%}
:is(.platform-console,.voice-ops) .model-directory th:nth-child(3){width:29%}
:is(.platform-console,.voice-ops) .model-directory th:nth-child(4){width:20%}
:is(.platform-console,.voice-ops) .model-directory :is(td,td small){white-space:normal;overflow-wrap:anywhere}
:is(.platform-console,.voice-ops) .model-directory .model-row-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:flex-start}
:is(.platform-console,.voice-ops) .model-directory .model-row-actions>button{margin:0;min-width:0;width:auto;white-space:normal}
:is(.platform-console,.voice-ops) .model-directory .model-row-actions>.row{display:contents}
:is(.platform-console,.voice-ops) .model-directory td:last-child{position:sticky;right:0;background:var(--c-panel);border-left:1px solid var(--c-line);z-index:1}
:is(.platform-console,.voice-ops) .model-directory .model-details{margin-top:var(--sp-3)}
:is(.platform-console,.voice-ops) .model-directory .notice{margin:var(--sp-3) 0 0;padding:var(--sp-3)}
:is(.platform-console,.voice-ops) .mc-directory-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--sp-4)}
:is(.platform-console,.voice-ops) .mc-directory-filters label{display:grid;gap:var(--sp-2);margin:0;flex:1;min-width:160px}
:is(.platform-console,.voice-ops) .mc-directory-filters label:first-child{flex:2}
:is(.platform-console,.voice-ops) .mc-directory-filters [role=status]{padding-bottom:var(--sp-2);white-space:nowrap}
:is(.platform-console,.voice-ops) .mc-model-detail .mc-detail-section{border-top:1px solid var(--c-line);padding-top:var(--sp-4);margin-top:var(--sp-5)}
:is(.platform-console,.voice-ops) .mc-model-detail h3{font-size:var(--fs-lg);margin:0 0 var(--sp-3)}
:is(.platform-console,.voice-ops) .mc-detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);margin:var(--sp-3) 0}
:is(.platform-console,.voice-ops) .mc-detail-facts dt{color:var(--c-muted);font-size:var(--fs-sm);margin-bottom:var(--sp-1)}
:is(.platform-console,.voice-ops) .mc-detail-facts dd{margin:0;overflow-wrap:anywhere}
@media(max-width:640px){:is(.platform-console,.voice-ops) .mc-detail-facts{grid-template-columns:minmax(0,1fr)}}
:is(.platform-console,.voice-ops) [data-mc-overview="validation"] .mc-overview-list{gap:0}
:is(.platform-console,.voice-ops) [data-mc-overview="validation"] .mc-overview-record{padding:var(--sp-4) 0}
:is(.platform-console,.voice-ops) [data-mc-overview="validation"] .mc-record-header{align-items:center;margin:0;gap:var(--sp-4)}
:is(.platform-console,.voice-ops) [data-mc-overview="validation"] .mc-record-header>div:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--sp-4);align-items:center;flex:1}
:is(.platform-console,.voice-ops) [data-mc-overview="validation"] .mc-record-header h3{font-size:var(--fs-md);margin:0;grid-column:1}
:is(.platform-console,.voice-ops) [data-mc-overview="validation"] .mc-record-header .mini-id{grid-column:1}
:is(.platform-console,.voice-ops) [data-mc-overview="validation"] .mc-record-state{grid-column:2;grid-row:1 / 3;margin:0}
:is(.platform-console,.voice-ops) [data-mc-overview="validation"] .mc-overview-record>small{display:block;color:var(--c-muted);margin-top:var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-model-detail .mc-check-list{grid-template-columns:minmax(0,1fr)}
:is(.platform-console,.voice-ops) .mc-model-detail .mc-dialog-foot{position:sticky;bottom:0;background:var(--c-panel);padding-top:var(--sp-3)}
@media(max-width:640px){:is(.platform-console,.voice-ops) [data-mc-overview="validation"] .mc-record-header{align-items:stretch;flex-direction:column}:is(.platform-console,.voice-ops) [data-mc-overview="validation"] .mc-record-header>div:first-child{width:100%}}
:is(.platform-console,.voice-ops) .model-directory .mc-mobile-label{display:none}
@media(max-width:640px){
 :is(.platform-console,.voice-ops) .model-directory{display:block;min-width:0}
 :is(.platform-console,.voice-ops) .model-directory thead{display:none}
 :is(.platform-console,.voice-ops) .model-directory tbody{display:block}
 :is(.platform-console,.voice-ops) .model-directory tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-3);padding:var(--sp-4) 0;border-bottom:1px solid var(--c-line)}
 :is(.platform-console,.voice-ops) .model-directory td{display:block;padding:0;border:0;height:auto;min-width:0}
 :is(.platform-console,.voice-ops) .model-directory td:first-child,:is(.platform-console,.voice-ops) .model-directory td:last-child{grid-column:1 / -1}
 :is(.platform-console,.voice-ops) .model-directory td:last-child{position:static;border:0}
 :is(.platform-console,.voice-ops) .model-directory .mc-mobile-label{display:block;color:var(--c-muted);margin:0 0 var(--sp-1)}
 :is(.platform-console,.voice-ops) .model-directory .model-row-actions{align-items:center}
 :is(.platform-console,.voice-ops) .model-directory .model-action-more{width:auto;margin:0}
}
:is(.platform-console,.voice-ops) .mc-check-list>div:has(.mc-check-reason){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-check-list .mc-check-reason{grid-column:1 / -1;text-align:left}
:is(.platform-console,.voice-ops) .mc-check-list .mc-check-reason small{margin:0}
:is(.platform-console,.voice-ops) [data-mc-inventory]>.panel-header{margin-bottom:var(--sp-3)}
:is(.platform-console,.voice-ops) [data-mc-inventory]>.mc-sync-meta{font-size:var(--fs-sm);margin:0 0 var(--sp-3)}
:is(.platform-console,.voice-ops) [data-mc-inventory-error]:empty,:is(.platform-console,.voice-ops) [data-mc-model-error]:empty{display:none}
@media(max-width:640px){
 :is(.platform-console,.voice-ops) [data-mc-inventory].panel{padding:var(--sp-4)}
 :is(.platform-console,.voice-ops) [data-mc-inventory]>.panel-header{gap:var(--sp-2)}
 :is(.platform-console,.voice-ops) .mc-directory-filters{gap:var(--sp-2)}
}
:is(.platform-console,.voice-ops) .payment-section{margin:var(--sp-6) 0}
:is(.platform-console,.voice-ops) .payment-section>h2{margin-bottom:var(--sp-5)}
:is(.platform-console,.voice-ops) .payment-section~.panel{margin-top:var(--sp-6)}
:is(.platform-console,.voice-ops) .payment-product-settings{margin-top:var(--sp-5)}
:is(.platform-console,.voice-ops) .payment-product-settings[open]>summary{margin-bottom:var(--sp-4)}
:is(.platform-console,.voice-ops) .credential-editor{margin-top:var(--sp-6)}
:is(.platform-console,.voice-ops) .credential-editor>summary{font-size:var(--fs-lg);font-weight:var(--fw-medium)}
:is(.platform-console,.voice-ops) .credential-editor[open]>summary{margin-bottom:var(--sp-5)}
:is(.platform-console,.voice-ops) .credential-context{font-size:var(--fs-md);margin:0 0 var(--sp-5);color:var(--c-muted)}
:is(.platform-console,.voice-ops) .model-config-dialog[open]{display:flex;flex-direction:column;overflow:hidden;gap:var(--sp-4)}
:is(.platform-console,.voice-ops) .model-config-dialog>.dialog-heading{position:static;padding:0 0 var(--sp-4);margin:0;flex:none}
:is(.platform-console,.voice-ops) .model-config-dialog>.dialog-heading>h2{min-width:0;overflow-wrap:anywhere}
:is(.platform-console,.voice-ops) .model-config-dialog>p{margin:0;flex:none}
:is(.platform-console,.voice-ops) .model-config-dialog [data-mc-config-form]{display:flex;flex-direction:column;align-items:stretch;gap:0;flex:1;min-height:0;margin:0;overflow:hidden}
:is(.platform-console,.voice-ops) .model-dialog-fields{min-height:0;overflow-y:auto;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-5);padding:0 var(--sp-2) var(--sp-5) 0}
:is(.platform-console,.voice-ops) .model-dialog-fields>*{min-width:0}
:is(.platform-console,.voice-ops) .model-dialog-fields>label{margin:0;display:grid;gap:var(--sp-2)}
:is(.platform-console,.voice-ops) .model-dialog-actions{flex:none;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--sp-3);border-top:1px solid var(--c-line);padding-top:var(--sp-4)}
:is(.platform-console,.voice-ops) .model-dialog-actions .error{width:100%;margin:0}
:is(.platform-console,.voice-ops) .model-center .panel,:is(.platform-console,.voice-ops) .model-center article{overflow-wrap:break-word}
:is(.platform-console,.voice-ops) .model-center .permission-scope{border:0;border-top:1px solid var(--c-line);border-radius:0;padding:var(--sp-4) 0 0}
:is(.platform-console,.voice-ops) .tariff-card{border:0;border-bottom:1px solid var(--c-line);border-radius:0;padding:var(--sp-4) 0;background:transparent}
:is(.platform-console,.voice-ops) .tariff-card:last-child{border-bottom:0}
:is(.platform-console,.voice-ops) dialog{max-height:calc(100dvh - var(--sp-6));width:min(760px,calc(100vw - var(--sp-6)));padding:var(--sp-5);border:1px solid var(--c-line);background:var(--c-panel);color:var(--c-ink);border-radius:var(--r-lg);box-shadow:var(--sh-2)}
:is(.platform-console,.voice-ops) dialog h2{font-size:var(--fs-xl);line-height:var(--lh-snug)}
:is(.platform-console,.voice-ops) .dialog-heading{align-items:flex-start;gap:var(--sp-4)}
:is(.platform-console,.voice-ops) .dialog-heading>button,:is(.platform-console,.voice-ops) #cancelDialog{width:var(--h-base);height:var(--h-base);padding:0;flex:none;font-size:var(--fs-xl)}
:is(.platform-console,.voice-ops) .page-foot{margin:var(--sp-5) 0 0;color:var(--c-dim);font-size:var(--fs-xs);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) #shell{animation:admin-arrive var(--dur-2) var(--ease-1)}
:is(.platform-console,.voice-ops) dialog[open]{animation:admin-arrive var(--dur-2) var(--ease-1)}
@keyframes admin-arrive{from{opacity:0;transform:translateY(var(--sp-1))}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){
 :is(.platform-console,.voice-ops) .payment-channels,:is(.platform-console,.voice-ops) .payment-section>.model-fields{grid-template-columns:minmax(0,1fr)}
 :is(.platform-console,.voice-ops) .shell{grid-template-columns:220px minmax(0,1fr)}
 :is(.platform-console,.voice-ops) main{padding:var(--sp-5)}
 :is(.platform-console,.voice-ops) .topbar{padding:var(--sp-3) var(--sp-5)}
 :is(.platform-console,.voice-ops) .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 :is(.platform-console,.voice-ops) .heading p{font-size:var(--fs-sm)}
}
@media(max-width:720px){
 :is(.platform-console,.voice-ops) .shell{grid-template-columns:minmax(0,1fr)}
 :is(.platform-console,.voice-ops) #sidebar{display:none;position:fixed;top:0;left:0;bottom:0;z-index:51;width:min(310px,calc(100vw - var(--sp-7)));height:100dvh;padding:var(--sp-4) var(--sp-3);border-right:1px solid var(--c-line)}
 :is(.platform-console,.voice-ops) .shell.menu-open #sidebar{display:flex;animation:admin-arrive var(--dur-2) var(--ease-1)}
 :is(.platform-console,.voice-ops) .nav{grid-template-columns:1fr}
 :is(.platform-console,.voice-ops) .scope,:is(.platform-console,.voice-ops) .sidefoot{display:block}
 :is(.platform-console,.voice-ops) .nav a{min-height:var(--h-touch)}
 :is(.platform-console,.voice-ops) .nav-backdrop{position:fixed;inset:0;z-index:50;display:block;width:100%;height:100dvh;min-height:0;border:0;border-radius:0;padding:0;background:var(--c-scrim)}
 .admin-nav-open{overflow:hidden}
 :is(.platform-console,.voice-ops) .topbar{flex-wrap:nowrap;padding:var(--sp-2) var(--sp-4);gap:var(--sp-2)}
 :is(.platform-console,.voice-ops) .breadcrumb{flex:1;min-width:0;flex-wrap:nowrap;gap:var(--sp-2);font-size:var(--fs-sm)}
 :is(.platform-console,.voice-ops) .breadcrumb>span{display:none}
 :is(.platform-console,.voice-ops) #breadcrumbPage{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 :is(.platform-console,.voice-ops) #environment,:is(.platform-console,.voice-ops) .read-status{display:none}
 :is(.platform-console,.voice-ops) .topbar .theme-control,:is(.platform-console,.voice-ops) .mobile-menu{min-width:var(--h-touch);min-height:var(--h-touch);height:var(--h-touch);margin:0;font-size:var(--fs-sm)}
 :is(.platform-console,.voice-ops) main{padding:var(--sp-5) var(--sp-4) var(--sp-6)}
 :is(.platform-console,.voice-ops) .heading{display:flex;gap:var(--sp-3);align-items:flex-start}
 :is(.platform-console,.voice-ops) .heading>div{flex:1;min-width:0}
 :is(.platform-console,.voice-ops) .heading>button{margin:0;padding:var(--sp-2);font-size:var(--fs-xs);min-height:var(--h-touch)}
 :is(.platform-console,.voice-ops) h1{font-size:var(--fs-xl);line-height:var(--lh-snug)}
 :is(.platform-console,.voice-ops) .panel{padding:var(--sp-5)}
 :is(.platform-console,.voice-ops) .stats .stat:last-child{grid-column:auto}
 :is(.platform-console,.voice-ops) .stat{padding:var(--sp-4)}
 :is(.platform-console,.voice-ops) .stat-icon{display:none}
 :is(.platform-console,.voice-ops) .stat small{padding:0}
 :is(.platform-console,.voice-ops) .stat strong{font-size:var(--fs-2xl);overflow-wrap:anywhere}
 :is(.platform-console,.voice-ops) .stat footer{font-size:var(--fs-xs)}
 :is(.platform-console,.voice-ops) .panel-header{gap:var(--sp-3)}
 :is(.platform-console,.voice-ops) .panel-header h2{font-size:var(--fs-lg)}
 :is(.platform-console,.voice-ops) .filters{grid-template-columns:minmax(0,1fr)}
 :is(.platform-console,.voice-ops) .record-search{align-items:flex-start;flex-direction:column;gap:var(--sp-2)}
 :is(.platform-console,.voice-ops) .record-search label{width:100%}
 :is(.platform-console,.voice-ops) .error-banner{align-items:flex-start;flex-direction:column}
 :is(.platform-console,.voice-ops) .field-grid,:is(.platform-console,.voice-ops) .wechat-product-row{grid-template-columns:minmax(0,1fr)}
 :is(.platform-console,.voice-ops) :is(button,.btn){min-height:var(--h-touch)}
 :is(.platform-console,.voice-ops) .help-button{min-height:var(--h-compact);width:var(--h-compact)}
 :is(.platform-console,.voice-ops) :is(input,select):not([type=checkbox]):not([type=radio]){min-height:var(--h-touch);font-size:var(--fs-lg)}
 :is(.platform-console,.voice-ops) .product-footer{padding:var(--sp-4);gap:var(--sp-3)}
 :is(.platform-console,.voice-ops) .product-footer p{width:100%}
 :is(.platform-console,.voice-ops) dialog{padding:var(--sp-4);width:calc(100vw - var(--sp-5));max-height:calc(100dvh - var(--sp-5))}
 :is(.platform-console,.voice-ops) #changeForm>.row.end{position:sticky;bottom:-var(--sp-4);background:var(--c-panel);border-top:1px solid var(--c-line);padding:var(--sp-3) 0;margin-top:var(--sp-4)}
 :is(.platform-console,.voice-ops) :is(.iam-tabs,.model-tabs){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}
 :is(.platform-console,.voice-ops) :is(.iam-tabs,.model-tabs)>button{width:100%;white-space:normal;padding:var(--sp-3) var(--sp-2);font-size:var(--fs-sm)}
 :is(.platform-console,.voice-ops) [data-mobile-layout=records] table,:is(.platform-console,.voice-ops) [data-mobile-layout=records] tbody{display:block;min-width:0;width:100%;white-space:normal}
 :is(.platform-console,.voice-ops) [data-mobile-layout=records] thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 :is(.platform-console,.voice-ops) [data-mobile-layout=records] tr{display:grid;gap:var(--sp-4);padding:var(--sp-5) 0;border-bottom:1px solid var(--c-line)}
 :is(.platform-console,.voice-ops) [data-mobile-layout=records] tr:last-child{border-bottom:0}
 :is(.platform-console,.voice-ops) [data-mobile-layout=records] tr:hover td{background:transparent}
 :is(.platform-console,.voice-ops) [data-mobile-layout=records] td{display:grid;grid-template-columns:84px minmax(0,1fr);gap:var(--sp-4);width:100%;max-width:none;min-height:0;height:auto;padding:0;border:0;position:static;white-space:normal;overflow-wrap:anywhere}
 :is(.platform-console,.voice-ops) [data-mobile-layout=records] td::before{content:attr(data-label);color:var(--c-muted);font-size:var(--fs-sm);font-weight:var(--fw-base)}
 :is(.platform-console,.voice-ops) .record-cell-value{min-width:0}
 :is(.platform-console,.voice-ops) .record-cell-value :is(small,b,code){white-space:normal;overflow-wrap:anywhere}
 :is(.platform-console,.voice-ops) .record-cell-value .row{flex-wrap:wrap;gap:var(--sp-2)}
 :is(.platform-console,.voice-ops) [data-mobile-layout=records] .badge{white-space:nowrap}
 :is(.platform-console,.voice-ops) [data-mobile-layout=records] .badge.neutral{white-space:normal}
 :is(.platform-console,.voice-ops) [data-mobile-layout=records] td:last-child{position:static;border-left:0}
 :is(.platform-console,.voice-ops) .model-directory th:nth-child(n){width:auto}
}
@media(prefers-reduced-motion:reduce){:is(.platform-console,.voice-ops) #shell,:is(.platform-console,.voice-ops) dialog[open],:is(.platform-console,.voice-ops) .shell.menu-open #sidebar{animation:none}:is(.platform-console,.voice-ops) button,:is(.platform-console,.voice-ops) .btn{transition:none}:is(.platform-console,.voice-ops) button:active:not(:disabled),:is(.platform-console,.voice-ops) .btn:active{transform:none}}

.close-nav{display:none}
@media(max-width:720px){:is(.platform-console,.voice-ops) .close-nav{display:grid;place-items:center;position:absolute;right:var(--sp-2);top:var(--sp-2);width:var(--h-touch);height:var(--h-touch);padding:0;font-size:var(--fs-xl);background:transparent;border:0}:is(.platform-console,.voice-ops) .brand{padding-right:var(--sp-6)}}

:is(.platform-console,.voice-ops) .pending-count{font-size:var(--fs-sm);color:var(--c-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
:is(.platform-console,.voice-ops) .payment-options{display:flex;flex-wrap:wrap;gap:var(--sp-4);align-items:center;margin:var(--sp-3) 0}
:is(.platform-console,.voice-ops) .payment-options label{display:flex;flex-direction:row;align-items:center;gap:var(--sp-2);margin:0;line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) [data-mc-inventory]>.empty{padding:var(--sp-4) 0}
@media(max-width:720px){:is(.platform-console,.voice-ops) .payment-options{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-2)}:is(.platform-console,.voice-ops) .payment-options label{min-height:var(--h-touch)}}

:is(.platform-console,.voice-ops) .model-action-more{width:100%;font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .model-action-more>summary{padding:var(--sp-2) 0;color:var(--c-brand-ink)}
:is(.platform-console,.voice-ops) .model-action-more>div{display:grid;gap:var(--sp-2);margin-top:var(--sp-2)}
:is(.platform-console,.voice-ops) .model-action-more button{width:100%;white-space:normal}
:is(.platform-console,.voice-ops) .governance-readiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-5);margin:var(--sp-5) 0}
:is(.platform-console,.voice-ops) .governance-readiness dt{color:var(--c-muted);font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .governance-readiness dd{margin:var(--sp-2) 0 0}
:is(.platform-console,.voice-ops) .wechat-product-heading{margin-bottom:var(--sp-4)}
:is(.platform-console,.voice-ops) .wechat-product-heading p{margin:var(--sp-2) 0 0}
:is(.platform-console,.voice-ops) .wechat-product-settings[open]>summary{margin-bottom:var(--sp-5)}
:is(.platform-console,.voice-ops) .wechat-product-settings .wechat-product-row{grid-template-columns:minmax(0,1fr) auto auto}
@media(max-width:720px){:is(.platform-console,.voice-ops) .governance-readiness,:is(.platform-console,.voice-ops) .wechat-product-settings .wechat-product-row{grid-template-columns:minmax(0,1fr)}}

:is(.platform-console,.voice-ops) .model-directory .next-action{border-color:var(--c-ink);font-weight:var(--fw-strong)}
.skip-link:not(:focus){clip-path:inset(50%);pointer-events:none}

/* Every model and IAM tab uses object records, grouped facts and explicit actions. */
:is(.platform-console,.voice-ops) .mc-overview-list{display:grid;gap:var(--sp-5)}
:is(.platform-console,.voice-ops) .mc-overview-record,:is(.platform-console,.voice-ops) .mc-product-record{padding:var(--sp-5) 0;border-top:1px solid var(--c-line);min-width:0;background:transparent}
:is(.platform-console,.voice-ops) .mc-record-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-5);margin-bottom:var(--sp-5)}
:is(.platform-console,.voice-ops) .mc-record-header>div{min-width:0}
:is(.platform-console,.voice-ops) .mc-record-header>button{flex:none;max-width:100%;white-space:normal}
:is(.platform-console,.voice-ops) .mc-record-header h3,:is(.platform-console,.voice-ops) .mc-product-record h3{font-size:var(--fs-lg);font-weight:var(--fw-strong);line-height:var(--lh-base);margin:0 0 var(--sp-2);overflow-wrap:anywhere}
:is(.platform-console,.voice-ops) .mc-record-state{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-3)}
:is(.platform-console,.voice-ops) .mc-metrics,:is(.platform-console,.voice-ops) .mc-product-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-5);margin:0}
:is(.platform-console,.voice-ops) .mc-metrics dt,:is(.platform-console,.voice-ops) .mc-product-facts dt,:is(.platform-console,.voice-ops) .iam-profile dt{font-size:var(--fs-sm);color:var(--c-muted);margin-bottom:var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-metrics dd,:is(.platform-console,.voice-ops) .mc-product-facts dd{margin:0;line-height:var(--lh-base);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
:is(.platform-console,.voice-ops) .mc-metrics dd strong{font-size:var(--fs-lg);font-weight:var(--fw-medium)}
:is(.platform-console,.voice-ops) .mc-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3) var(--sp-5);margin:var(--sp-4) 0}
:is(.platform-console,.voice-ops) .mc-check-list>div{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4);padding-bottom:var(--sp-3);border-bottom:1px solid var(--c-line);min-width:0}
:is(.platform-console,.voice-ops) .mc-check-list dt{font-size:var(--fs-md);min-width:0;overflow-wrap:anywhere}
:is(.platform-console,.voice-ops) .mc-check-list dd{margin:0;min-width:0;text-align:right}
:is(.platform-console,.voice-ops) .mc-check-list dd small{display:block;margin-top:var(--sp-2);text-align:left;overflow-wrap:anywhere;line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .model-directory .mc-check-list{grid-template-columns:minmax(0,1fr)}
:is(.platform-console,.voice-ops) .mc-check-cost{margin:var(--sp-4) 0 0;font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .mc-product-facts{grid-template-columns:minmax(0,2fr) minmax(0,1fr);margin:var(--sp-4) 0}
:is(.platform-console,.voice-ops) .mc-product-editor{margin-top:var(--sp-5)}
:is(.platform-console,.voice-ops) .mc-product-editor[open]>summary{margin-bottom:var(--sp-5)}
:is(.platform-console,.voice-ops) .mc-product-editor form{max-width:900px}
:is(.platform-console,.voice-ops) .mc-product-editor .check-row{display:flex;align-items:flex-start;gap:var(--sp-3);margin:var(--sp-4) 0;line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .mc-product-editor .check-row input{flex:none;margin-top:var(--sp-1)}
:is(.platform-console,.voice-ops) .mc-product-editor .check-row span{min-width:0;overflow-wrap:anywhere}
:is(.platform-console,.voice-ops) .mc-product-editor .check-row small{display:block}
:is(.platform-console,.voice-ops) .iam-profile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--sp-6);margin:0}
:is(.platform-console,.voice-ops) .iam-profile dd{margin:0;line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .iam-profile dd>strong{font-size:var(--fs-xl);font-weight:var(--fw-medium)}
:is(.platform-console,.voice-ops) .iam-profile dd small{display:block;margin-top:var(--sp-2);overflow-wrap:anywhere}
:is(.platform-console,.voice-ops) .iam-role-tags{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--sp-2)}
:is(.platform-console,.voice-ops) .iam-menu-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3) var(--sp-5);list-style:none;margin:0;padding:0;color:var(--c-muted)}
:is(.platform-console,.voice-ops) .iam-menu-list li{min-width:0;overflow-wrap:anywhere;line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .permission-matrix{min-width:880px;table-layout:fixed;white-space:normal}
:is(.platform-console,.voice-ops) .permission-matrix :is(th,td){width:210px;max-width:none;overflow-wrap:anywhere}
:is(.platform-console,.voice-ops) .permission-matrix :is(th,td):first-child{position:sticky;left:0;z-index:1;background:var(--c-panel);border-right:1px solid var(--c-line);width:180px}
:is(.platform-console,.voice-ops) .permission-matrix th:first-child{background:var(--c-raised)}
:is(.platform-console,.voice-ops) .permission-matrix td small{overflow:visible;margin-top:var(--sp-2);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .voice-pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-6);margin-top:var(--sp-6)}
:is(.platform-console,.voice-ops) .pricing-fieldset{display:grid;align-content:start;gap:var(--sp-4);border:0;padding:0;margin:0;min-width:0}
:is(.platform-console,.voice-ops) .pricing-fieldset legend{font-size:var(--fs-lg);font-weight:var(--fw-strong);padding:0 0 var(--sp-4)}
:is(.platform-console,.voice-ops) .pricing-fieldset>label{display:grid;gap:var(--sp-2);margin:0}
:is(.platform-console,.voice-ops) .voice-pricing-grid>.pricing-budget{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--c-line);padding-top:var(--sp-5)}
:is(.platform-console,.voice-ops) .voice-pricing-grid>.pricing-budget legend{padding-top:var(--sp-5)}
:is(.platform-console,.voice-ops) .voice-pricing-grid>:is(p,.toolbar){grid-column:1/-1;margin:0}
:is(.platform-console,.voice-ops) [data-voice-published]{margin-top:var(--sp-6)}
:is(.platform-console,.voice-ops) [data-voice-published] .detail-grid{gap:var(--sp-5);margin:var(--sp-5) 0}
:is(.platform-console,.voice-ops) [data-voice-published] .detail-grid dd{margin:var(--sp-2) 0 0;line-height:var(--lh-base)}
@media(max-width:1050px){:is(.platform-console,.voice-ops) .mc-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}:is(.platform-console,.voice-ops) .iam-menu-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){:is(.platform-console,.voice-ops) .mc-record-header{flex-direction:column;gap:var(--sp-4)}:is(.platform-console,.voice-ops) .mc-metrics,:is(.platform-console,.voice-ops) .mc-check-list,:is(.platform-console,.voice-ops) .mc-product-facts,:is(.platform-console,.voice-ops) .iam-profile,:is(.platform-console,.voice-ops) .voice-pricing-grid,:is(.platform-console,.voice-ops) .voice-pricing-grid>.pricing-budget{grid-template-columns:minmax(0,1fr)}:is(.platform-console,.voice-ops) .iam-menu-list{grid-template-columns:repeat(2,minmax(0,1fr))}:is(.platform-console,.voice-ops) .iam-profile-panel .panel-header{align-items:flex-start}}

@media(max-width:720px){:is(.platform-console,.voice-ops) [data-mobile-layout=records] .tariff-rates caption{display:block;width:100%;white-space:normal;line-height:var(--lh-base);padding:0 0 var(--sp-4)}:is(.platform-console,.voice-ops) [data-mobile-layout=records] .tariff-rates tbody th[scope=row]{display:block;height:auto;padding:0 0 var(--sp-3);text-align:left;font-size:var(--fs-md)}}

:is(.platform-console,.voice-ops) .iam-role-table{table-layout:fixed;white-space:normal}
:is(.platform-console,.voice-ops) .iam-role-table th:nth-child(1){width:26%}:is(.platform-console,.voice-ops) .iam-role-table th:nth-child(2){width:36%}:is(.platform-console,.voice-ops) .iam-role-table th:nth-child(3){width:18%}:is(.platform-console,.voice-ops) .iam-role-table th:nth-child(4){width:20%}
:is(.platform-console,.voice-ops) .iam-role-table td{overflow-wrap:anywhere;vertical-align:top}
:is(.platform-console,.voice-ops) .iam-role-table td:first-child .badge{display:inline-block;margin-top:var(--sp-2)}
:is(.platform-console,.voice-ops) .iam-coverage{margin-top:var(--sp-3)}
:is(.platform-console,.voice-ops) .iam-coverage>summary{font-size:var(--fs-sm);color:var(--c-brand-ink);cursor:pointer}
:is(.platform-console,.voice-ops) .iam-coverage-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2) var(--sp-4);list-style:none;margin:var(--sp-4) 0 0;padding:0;font-size:var(--fs-sm);line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .permission-matrix .iam-coverage-list{grid-template-columns:minmax(0,1fr)}
:is(.platform-console,.voice-ops) #changeFields>label{display:grid;gap:var(--sp-2);margin-bottom:var(--sp-4)}
:is(.platform-console,.voice-ops) #changeDialog:has(#roleMenuChecks) #changeForm>.row:first-child{position:sticky;top:0;z-index:2;background:var(--c-panel);padding-bottom:var(--sp-4)}
:is(.platform-console,.voice-ops) #changeDialog:has(#roleMenuChecks) #changeForm>.row:last-child{position:sticky;bottom:0;z-index:2;background:var(--c-panel);padding-top:var(--sp-4);border-top:1px solid var(--c-line)}
:is(.platform-console,.voice-ops) .permission-row{gap:var(--sp-4);padding:var(--sp-4) 0}
:is(.platform-console,.voice-ops) .permission-actions{flex-wrap:wrap}
:is(.platform-console,.voice-ops) .mc-check-list dt{flex:0 0 45%}
@media(max-width:720px){:is(.platform-console,.voice-ops) .iam-coverage-list{grid-template-columns:minmax(0,1fr)}}

:is(.platform-console,.voice-ops) .model-center [role=tabpanel]>.panel+.panel{margin-top:var(--sp-6)}

/* Voice operations use the same console surfaces and interaction primitives. */
.voice-ops .brand .mark{background:var(--c-brand);color:var(--c-on-brand)}
.voice-ops .brand small{letter-spacing:0}
.voice-ops .voice-workspace-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5)}
.voice-ops .voice-workspace-actions .panel{display:flex;flex-direction:column;align-items:flex-start;margin:0}
.voice-ops .voice-workspace-actions p{margin:var(--sp-3) 0 var(--sp-5);flex:1}
.voice-ops .voice-capabilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5)}
.voice-ops .voice-capabilities article{min-width:0;border-top:1px solid var(--c-line);padding-top:var(--sp-5)}
.voice-ops .voice-capabilities h3{font-size:var(--fs-lg);margin:0}
.voice-ops .voice-capabilities .detail-grid{grid-template-columns:minmax(0,1fr);margin-bottom:0}
.voice-ops .detail-grid dd{margin:var(--sp-2) 0 0;overflow-wrap:anywhere;line-height:var(--lh-base)}
.voice-ops .voice-scope-note{font-size:var(--fs-sm);color:var(--c-muted);margin:var(--sp-5) 0 0}
.voice-ops .voice-empty{padding:var(--sp-5) 0}
.voice-ops .voice-model-sections>:is(.panel,[data-mc-products]){margin-top:0}
.voice-ops [data-voice-published] .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.voice-ops .voice-policy form{max-width:760px}
.voice-ops .voice-policy .checkbox-row{display:flex;align-items:center;gap:var(--sp-3);margin:0;font-size:var(--fs-md)}
.voice-ops .voice-policy .field-hint{margin:var(--sp-3) 0 var(--sp-5)}
.voice-ops .voice-reconciliations>summary{display:flex;flex-wrap:wrap;gap:var(--sp-3);align-items:center;cursor:pointer;font-size:var(--fs-lg);font-weight:var(--fw-medium);list-style:none}
.voice-ops .voice-reconciliations>summary::before{content:'▸';color:var(--c-muted)}
.voice-ops .voice-reconciliations[open]>summary::before{content:'▾'}
.voice-ops .voice-reconciliation-body{padding-top:var(--sp-5)}
.voice-ops .voice-pending{font-size:var(--fs-sm);color:var(--c-warning)}
.voice-ops .ops-lookup{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:var(--sp-4);align-items:end;margin-bottom:var(--sp-5)}
.voice-ops .ops-lookup label{display:grid;gap:var(--sp-2);margin:0}
.voice-ops .ops-result,.voice-ops .ops-caption{font-size:var(--fs-sm);color:var(--c-muted)}
.voice-ops .ops-result{padding-bottom:var(--sp-2)}
.voice-ops .ops-no-match{padding:var(--sp-5) 0;margin:0;color:var(--c-muted)}
.voice-ops .ops-scope{padding-top:var(--sp-5);margin-top:var(--sp-5);border-top:1px solid var(--c-line)}
.voice-ops .ops-id{overflow-wrap:anywhere;color:var(--c-muted)}
.voice-ops .table-wrap small{overflow-wrap:anywhere}
.voice-ops .voice-reconciliation-body .record-cell-value button{white-space:normal;margin:var(--sp-1) var(--sp-1) var(--sp-1) 0}
@media(max-width:1050px){.voice-ops .ops-lookup{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.voice-ops .ops-result{grid-column:1/-1;padding:0}}
@media(max-width:720px){.voice-ops .voice-workspace-actions,.voice-ops .voice-capabilities,.voice-ops [data-voice-published] .detail-grid,.voice-ops .ops-lookup{grid-template-columns:minmax(0,1fr)}.voice-ops .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.voice-ops .voice-capabilities .panel-header{align-items:center}.voice-ops .voice-policy .checkbox-row{align-items:flex-start}.voice-ops .voice-policy input[type=checkbox]{margin-top:var(--sp-1)}}

.voice-ops .voice-managed-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--sp-6);align-items:start}
.voice-ops .voice-managed-summary>.panel{margin-top:0}
.voice-ops .stats{padding:var(--sp-5);background:var(--c-panel);border:1px solid var(--c-line);border-radius:var(--r-md)}
.voice-ops .stats .stat{padding:0;border:0;background:transparent}
.voice-ops .stats .stat small{padding:0}
.voice-ops .stats .stat strong{font-size:var(--fs-xl);overflow-wrap:anywhere}
@media(max-width:1050px){.voice-ops .voice-managed-summary{grid-template-columns:minmax(0,1fr)}}

.voice-ops [data-mc-products] .empty{padding:var(--sp-3) 0;text-align:left}
@media(min-width:721px){.voice-ops .ops-accounts :is(th,td):nth-child(n+3),.voice-ops .voice-topups :is(th,td):nth-child(2),.voice-ops .voice-topups :is(th,td):nth-child(3),.voice-ops .voice-batches :is(th,td):nth-child(4){text-align:right;font-variant-numeric:tabular-nums}}
@media(max-width:720px){.voice-ops .ops-accounts tbody tr:first-child{padding-top:var(--sp-3)}.voice-ops .ops-accounts tbody tr:last-child{padding-bottom:0}}

/* New API: group, current default, then credentials and their actions. */
.platform-console .new-api-page{display:grid;gap:var(--sp-5)}
.platform-console .new-api-page .panel{margin:0;padding:var(--sp-5)}
.platform-console .new-api-page p{overflow-wrap:anywhere}
.platform-console .new-api-overview .panel-header{margin-bottom:var(--sp-4)}
.platform-console .new-api-overview .panel-header p{margin:var(--sp-2) 0 0}
.platform-console .new-api-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0;gap:var(--sp-5)}
.platform-console .new-api-steps li{display:grid;gap:var(--sp-1);padding-left:0}
.platform-console .new-api-steps span,.platform-console .new-api-key-meta,.platform-console .new-api-group-caption{color:var(--c-muted);font-size:var(--fs-sm)}
.platform-console .new-api-help{margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--c-line)}
.platform-console .new-api-help .new-api-steps{margin-top:var(--sp-4)}
.platform-console .new-api-help p{margin:var(--sp-3) 0 0;max-width:80ch}
.platform-console .new-api-section-heading,.platform-console .new-api-model-entry{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-5)}
.platform-console .new-api-section-heading h2,.platform-console .new-api-model-entry h2{margin:0;font-size:var(--fs-lg)}
.platform-console .new-api-section-heading p,.platform-console .new-api-model-entry p{margin:var(--sp-1) 0 0}
.platform-console .new-api-section-heading>button,.platform-console .new-api-model-entry>.btn{flex-shrink:0}
.platform-console .new-api-group .panel-header{margin-bottom:var(--sp-4)}
.platform-console .new-api-group-default{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--sp-4);padding:0 0 var(--sp-4);border-bottom:1px solid var(--c-line)}
.platform-console .new-api-group-default>div{display:grid;gap:var(--sp-1);min-width:0;overflow-wrap:anywhere}
.platform-console .new-api-group-default strong{font-weight:var(--fw-medium)}
.platform-console .new-api-group-settings{max-width:620px;min-width:0}
.platform-console .new-api-group-settings summary{color:var(--c-brand-ink)}
.platform-console .new-api-group-settings[open]{width:100%}
.platform-console .new-api-group-settings form{padding-top:var(--sp-4);max-width:none;margin:0}
.platform-console .new-api-group-hint{margin:var(--sp-4) 0;color:var(--c-warning)}
.platform-console .new-api-key{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-5);padding:var(--sp-4) 0;border-bottom:1px solid var(--c-line)}
.platform-console .new-api-key:last-child{border-bottom:0;padding-bottom:0}
.platform-console .new-api-key-main{min-width:0}
.platform-console .new-api-key h3{font-size:var(--fs-md);margin:0;overflow-wrap:anywhere}
.platform-console .new-api-key-meta{margin:var(--sp-2) 0 0}
.platform-console .new-api-default-label{font-size:var(--fs-xs);color:var(--c-muted)}
.platform-console .new-api-key-details{margin-top:var(--sp-3);color:var(--c-muted);font-size:var(--fs-sm)}
.platform-console .new-api-key-details p{margin:var(--sp-3) 0 0}
.platform-console .new-api-model-list{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-5);padding-left:var(--sp-4);margin:var(--sp-3) 0;max-height:240px;overflow:auto;overflow-wrap:anywhere}
.platform-console .new-api-key-actions{display:flex;align-items:flex-start;gap:var(--sp-3)}
.platform-console .new-api-key-more{max-width:230px}
.platform-console .new-api-key-more summary{min-height:36px;display:flex;align-items:center;padding:0 var(--sp-2);cursor:pointer;text-decoration:underline;text-underline-offset:var(--sp-1)}
.platform-console .new-api-key-more[open]>div{display:grid;gap:var(--sp-3);padding-top:var(--sp-3)}
.platform-console .new-api-key-more p{font-size:var(--fs-sm);color:var(--c-muted);margin:0}
.platform-console .new-api-key-result{margin:var(--sp-3) 0 0;font-size:var(--fs-sm)}
.platform-console .new-api-key-result:empty{display:none}
.platform-console .new-api-group-footer{margin-top:var(--sp-5)}
.platform-console .new-api-model-entry{padding:var(--sp-4) 0 var(--sp-5)}
.platform-console .new-api-model-entry p{color:var(--c-muted);max-width:65ch}
.platform-console .new-api-next{margin:0;display:grid;gap:var(--sp-3)}
.platform-console .new-api-editor{width:min(580px,calc(100vw - var(--sp-6)));max-height:calc(100dvh - var(--sp-6));overflow:auto}
.platform-console .new-api-editor form{max-width:none;margin:0}
.platform-console .new-api-editor-fields{display:grid;gap:var(--sp-4)}
.platform-console .new-api-editor-fields label{margin:0}
.platform-console .new-api-editor-fields .field-hint{margin:calc(-1 * var(--sp-2)) 0 0}
.platform-console .new-api-editor .credential-context{margin:0 0 var(--sp-5)}
.platform-console .new-api-editor .model-form-actions{position:sticky;bottom:calc(-1 * var(--sp-5));background:var(--c-panel);padding:var(--sp-4) 0 0;margin-top:var(--sp-5);border-top:1px solid var(--c-line)}
.platform-console #newApiConfirmText{white-space:normal;overflow-wrap:anywhere}
.platform-console #newApiConfirm .model-form-actions{margin-top:var(--sp-5)}
@media(max-width:1050px){
 .platform-console .new-api-key-actions{flex-direction:column;align-items:stretch}
 .platform-console .new-api-steps{gap:var(--sp-4)}
}
@media(max-width:720px){
 .platform-console .new-api-steps{grid-template-columns:1fr;gap:var(--sp-4)}
 .platform-console .new-api-section-heading{align-items:center;flex-direction:row;gap:var(--sp-3)}
 .platform-console .new-api-model-entry{align-items:flex-start;flex-direction:column;gap:var(--sp-4)}
 .platform-console .new-api-overview{padding:var(--sp-4)}
 .platform-console .new-api-key{grid-template-columns:minmax(0,1fr);gap:var(--sp-4)}
 .platform-console .new-api-key-actions{flex-direction:row;flex-wrap:wrap;gap:var(--sp-3)}
 .platform-console .new-api-key-more summary{min-height:44px}
 .platform-console .new-api-group-default{flex-direction:column;align-items:stretch}
 .platform-console .new-api-editor{max-height:calc(100dvh - var(--sp-6))}
}

/* Model onboarding reuses the existing workflow dialog and semantic tokens. */
.platform-console .mc-onboarding-dialog{width:min(100% - var(--sp-6),800px)}
.platform-console .mc-onboarding-dialog .dialog-heading p{margin:var(--sp-2) 0}
.platform-console .mc-onboarding-dialog>.dialog-heading{top:0}
.platform-console .mc-onboarding-dialog>.dialog-heading::before{content:"";position:absolute;inset:calc(-1 * var(--sp-5)) 0 0;background:var(--c-panel);z-index:-1}
.platform-console .mc-onboarding-position{color:var(--c-info);font-size:var(--fs-sm)}
.platform-console .mc-onboarding{list-style:none;padding:0;margin:0 0 var(--sp-6)}
.platform-console .mc-onboarding-step{display:grid;grid-template-columns:var(--sp-6) minmax(0,1fr);gap:var(--sp-4);padding:var(--sp-5) 0;border-top:1px solid var(--c-line)}
.platform-console .mc-onboarding-number{display:grid;place-items:center;align-self:start;width:var(--sp-6);height:var(--sp-6);border:var(--border);border-radius:var(--r-full);font-variant-numeric:tabular-nums;color:var(--c-muted)}
.platform-console .mc-onboarding-step.is-current .mc-onboarding-number{color:var(--c-info);border-color:var(--c-info)}
.platform-console .mc-onboarding-heading{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-3)}
.platform-console .mc-onboarding-heading h3{margin:0;font-size:var(--fs-lg)}
.platform-console .mc-onboarding-copy{margin:var(--sp-3) 0 var(--sp-4);line-height:var(--lh-base);color:var(--c-muted);overflow-wrap:anywhere}
.platform-console .mc-onboarding-copy .mc-check-list{grid-template-columns:minmax(0,1fr)}
.platform-console .mc-onboarding-copy .mc-check-list>div{display:block}
.platform-console .mc-onboarding-copy .mc-check-list dd{display:block;text-align:left;margin:var(--sp-2) 0 0}
.platform-console .mc-onboarding-copy .mc-check-list small{font-size:var(--fs-sm)}
.platform-console .mc-onboarding-step .row{gap:var(--sp-3)}
.platform-console .mc-onboarding-step.is-current .row>button:first-child,.platform-console .mc-onboarding-step.is-current>div>button{background:var(--c-brand);border-color:var(--c-brand);color:var(--c-on-brand)}
@media(max-width:720px){.platform-console .mc-onboarding-step{gap:var(--sp-3)}.platform-console .mc-onboarding-heading{align-items:flex-start}}

/* Procurement policies share the existing model records and native modal. */
:is(.platform-console,.voice-ops) .procurement-dialog .workflow-form{grid-template-columns:minmax(0,1fr)}
:is(.platform-console,.voice-ops) .procurement-dialog fieldset{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-4);min-width:0;margin:0;padding:0;border:0}
:is(.platform-console,.voice-ops) .procurement-dialog label{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}
:is(.platform-console,.voice-ops) .procurement-dialog [data-procurement-confirm],:is(.platform-console,.voice-ops) .procurement-dialog [data-procurement-discard]{padding-top:var(--sp-5);border-top:1px solid var(--c-line);margin-top:var(--sp-5)}
:is(.platform-console,.voice-ops) .procurement-reference{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin:var(--sp-4) 0}
:is(.platform-console,.voice-ops) [data-procurement-panel] .mc-overview-record .row{margin-top:var(--sp-4)}

:is(.platform-console,.voice-ops) .procurement-dialog[open]{display:flex;flex-direction:column;overflow:hidden}
:is(.platform-console,.voice-ops) .procurement-dialog>.dialog-heading,:is(.platform-console,.voice-ops) .procurement-dialog>p{flex:none}
:is(.platform-console,.voice-ops) .procurement-dialog .workflow-form,:is(.platform-console,.voice-ops) .procurement-dialog [data-procurement-confirm]{flex:1;min-height:0;overflow-y:auto}
:is(.platform-console,.voice-ops) .procurement-dialog .workflow-form>.row,:is(.platform-console,.voice-ops) .procurement-dialog [data-procurement-confirm]>.row{position:sticky;bottom:0;z-index:2;background:var(--c-panel);padding-top:var(--sp-4);border-top:1px solid var(--c-line)}

/* Product > capability > model. Draft controls share the existing save contract. */
:is(.platform-console,.voice-ops) [data-mc-products]>.panel-header{margin-bottom:var(--sp-5)}
:is(.platform-console,.voice-ops) .mc-product-layout{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,4fr);gap:var(--sp-6);border-top:1px solid var(--c-line);padding-top:var(--sp-5)}
:is(.platform-console,.voice-ops) .mc-product-layout.mc-single-product{grid-template-columns:minmax(0,1fr)}
:is(.platform-console,.voice-ops) .mc-product-nav{border-right:1px solid var(--c-line);padding-right:var(--sp-5);min-width:0}
:is(.platform-console,.voice-ops) .mc-product-nav label{display:grid;gap:var(--sp-2);margin:0 0 var(--sp-4);font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .mc-product-nav nav{display:grid;gap:var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-product-nav nav button{display:grid;gap:var(--sp-1);width:100%;text-align:left;white-space:normal;padding:var(--sp-3);box-shadow:none;border-color:transparent;background:transparent}
:is(.platform-console,.voice-ops) .mc-product-nav button small{font-size:var(--fs-sm);font-weight:var(--fw-base);color:var(--c-muted)}
:is(.platform-console,.voice-ops) .mc-product-nav button[aria-pressed=true]{background:var(--c-brand-tint);color:var(--c-brand-ink);border-color:var(--c-line)}
:is(.platform-console,.voice-ops) .mc-product-main{min-width:0}
:is(.platform-console,.voice-ops) .mc-capability-nav{display:flex;flex-wrap:wrap;gap:var(--sp-2);border-bottom:1px solid var(--c-line);padding-bottom:var(--sp-4)}
:is(.platform-console,.voice-ops) .mc-capability-nav button{background:transparent;box-shadow:none;border-color:transparent;padding:var(--sp-2) var(--sp-4)}
:is(.platform-console,.voice-ops) .mc-capability-nav button[aria-pressed=true]{background:var(--c-raised);border-color:var(--c-line-strong);font-weight:var(--fw-strong)}
:is(.platform-console,.voice-ops) [data-mc-product-panel]{border:0;padding:var(--sp-5) 0 0}
:is(.platform-console,.voice-ops) .mc-product-form{gap:var(--sp-5)}
:is(.platform-console,.voice-ops) .mc-capability-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-5)}
:is(.platform-console,.voice-ops) .mc-capability-heading>div{min-width:0}
:is(.platform-console,.voice-ops) .mc-capability-heading>button{flex:none}
:is(.platform-console,.voice-ops) .mc-context{color:var(--c-muted);font-size:var(--fs-sm);margin:0 0 var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-capability-heading .field-hint{margin:0}
:is(.platform-console,.voice-ops) .mc-live-summary{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4);background:var(--c-raised);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .mc-live-summary>span,:is(.platform-console,.voice-ops) .mc-live-summary>small{color:var(--c-muted)}
:is(.platform-console,.voice-ops) .mc-live-summary>strong{overflow-wrap:anywhere;font-weight:var(--fw-medium)}
:is(.platform-console,.voice-ops) .mc-selected-models table{table-layout:fixed;white-space:normal;min-width:0}
:is(.platform-console,.voice-ops) .mc-selected-models th:nth-child(1){width:32%}
:is(.platform-console,.voice-ops) .mc-selected-models th:nth-child(2){width:18%}
:is(.platform-console,.voice-ops) .mc-selected-models th:nth-child(3){width:24%}
:is(.platform-console,.voice-ops) .mc-selected-models th:nth-child(4){width:26%}
:is(.platform-console,.voice-ops) .mc-selected-models :is(td,th){overflow-wrap:anywhere;white-space:normal;max-width:none;padding:var(--sp-4) var(--sp-3)}
:is(.platform-console,.voice-ops) .mc-selected-models td small{display:block;margin-top:var(--sp-2);white-space:normal;overflow:visible;line-height:var(--lh-base)}
:is(.platform-console,.voice-ops) .mc-model-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-model-actions button{font-size:var(--fs-sm);padding:var(--sp-2);box-shadow:none;white-space:normal}
:is(.platform-console,.voice-ops) .mc-entry-name{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-5);align-items:end}
:is(.platform-console,.voice-ops) .mc-entry-name label{display:grid;gap:var(--sp-2);margin:0}
:is(.platform-console,.voice-ops) .mc-entry-name .field-hint{margin:0;padding-bottom:var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-product-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--c-line)}
:is(.platform-console,.voice-ops) .mc-product-footer>[role=status]{font-size:var(--fs-sm);color:var(--c-muted)}
:is(.platform-console,.voice-ops) [data-mc-product-error]:empty,:is(.platform-console,.voice-ops) [data-mc-products-error]:empty{display:none}
:is(.platform-console,.voice-ops) .mc-product-drawer{margin:0 0 0 auto;width:min(560px,100%);height:100dvh;max-height:100dvh;max-width:100%;border-radius:0;border:0;border-left:1px solid var(--c-line);padding:var(--sp-6);box-shadow:var(--sh-3);box-sizing:border-box}
:is(.platform-console,.voice-ops) .mc-product-drawer[open]{display:flex;flex-direction:column;gap:var(--sp-5)}
:is(.platform-console,.voice-ops) .mc-product-drawer>.dialog-heading{flex:none;margin:0;align-items:flex-start}
:is(.platform-console,.voice-ops) .mc-product-drawer-body{flex:1;overflow:auto;min-height:0;padding:var(--sp-1)}
:is(.platform-console,.voice-ops) .mc-product-drawer-body label{display:grid;gap:var(--sp-2);margin:var(--sp-5) 0 var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-drawer-footer{flex:none;border-top:1px solid var(--c-line);padding-top:var(--sp-4)}
:is(.platform-console,.voice-ops) .mc-picker-row{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-4) 0;border-bottom:1px solid var(--c-line)}
:is(.platform-console,.voice-ops) .mc-picker-row>div{min-width:0;overflow-wrap:anywhere}
:is(.platform-console,.voice-ops) .mc-picker-row small{display:block;color:var(--c-muted);margin-top:var(--sp-1);font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .mc-picker-row button{flex:none;white-space:normal;max-width:40%}
:is(.platform-console,.voice-ops) #mc-confirm-description{white-space:pre-line;overflow-wrap:anywhere;line-height:var(--lh-base)}
@media(max-width:1050px){:is(.platform-console,.voice-ops) .mc-product-layout{grid-template-columns:minmax(0,1fr);gap:var(--sp-5)}:is(.platform-console,.voice-ops) .mc-product-nav{border:0;padding:0}:is(.platform-console,.voice-ops) .mc-product-nav nav{display:flex;flex-wrap:wrap}:is(.platform-console,.voice-ops) .mc-product-nav nav button{width:auto;flex:1}:is(.platform-console,.voice-ops) .mc-product-nav label{max-width:440px}}
@media(max-width:720px){:is(.platform-console,.voice-ops) .mc-entry-name{grid-template-columns:minmax(0,1fr);gap:var(--sp-2)}:is(.platform-console,.voice-ops) .mc-capability-heading{flex-wrap:wrap;gap:var(--sp-3)}:is(.platform-console,.voice-ops) .mc-product-drawer{padding:var(--sp-5)}:is(.platform-console,.voice-ops) .mc-selected-models [data-label]{width:auto}:is(.platform-console,.voice-ops) .mc-product-footer>.row{width:100%;justify-content:flex-end}:is(.platform-console,.voice-ops) .mc-product-nav nav button{min-width:0}}
/* Cost tasks keep prices, procurement and the owning product in one workspace. */
.platform-console .cost-task-tabs,.platform-console .cost-product-tabs{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-5)}
.platform-console .cost-task-tabs{border-bottom:var(--border);padding-bottom:var(--sp-3)}
.platform-console .cost-task-tabs button,.platform-console .cost-product-tabs button{background:transparent;border-color:transparent;color:var(--c-muted)}
.platform-console .cost-task-tabs button[aria-selected=true]{color:var(--c-brand-ink);border-color:var(--c-line);background:var(--c-panel);font-weight:var(--fw-strong)}
.platform-console .cost-product-tabs button[aria-selected=true]{color:var(--c-brand-ink);background:var(--c-brand-tint);font-weight:var(--fw-strong)}
.platform-console .cost-workspace{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--sp-4)}
.platform-console .cost-task-tabs{grid-column:1;grid-row:1;border-bottom:0;padding-bottom:0}
.platform-console [data-cost-view=sales]{display:contents}
.platform-console .cost-product-tabs{grid-column:2;grid-row:1;align-items:center}
.platform-console [data-price-panel],.platform-console [data-cost-view=procurement]{grid-column:1/-1}
.platform-console #model-legacy-pricing .model-summary{display:flex;gap:var(--sp-6);flex-wrap:wrap}
.platform-console .cost-workspace caption.sr-only{position:absolute;display:block;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.platform-console .cost-model-record,.platform-console .cost-budget-record{padding:var(--sp-5) 0;border-bottom:var(--border)}
.platform-console .cost-model-record:last-of-type,.platform-console .cost-budget-record:last-of-type{border-bottom:0}
.platform-console .cost-model-record h3,.platform-console .cost-budget-record h3{margin:0}
.platform-console .cost-margin,.platform-console .cost-budget-scope{margin:var(--sp-2) 0;color:var(--c-muted);font-size:var(--fs-sm)}
.platform-console .cost-rate-table{font-variant-numeric:tabular-nums}
.platform-console .cost-rate-table :is(td,th):not(:first-child){text-align:right}
.platform-console .cost-draft-actions,.platform-console .cost-budget-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-3);margin-top:var(--sp-4)}
.platform-console .cost-draft-actions>span,.platform-console .cost-budget-footer>p{color:var(--c-muted);font-size:var(--fs-sm);margin:0}
.platform-console .cost-budget-group+.cost-budget-group{border-top:var(--border);padding-top:var(--sp-5);margin-top:var(--sp-5)}
.platform-console .cost-budget-group>h3{font-size:var(--fs-lg)}
.platform-console .cost-purchase{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-2) var(--sp-4);align-items:center;margin:var(--sp-4) 0}
.platform-console .cost-purchase>span{font-size:var(--fs-sm);color:var(--c-muted)}
.platform-console .cost-purchase>strong{grid-column:1;font-weight:var(--fw-medium);overflow-wrap:anywhere}
.platform-console .cost-purchase>button{grid-column:2;grid-row:1/3}
.platform-console .cost-budget-record .mc-metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:var(--sp-4)}
.platform-console .voice-pricing-summary dd strong,.platform-console .voice-pricing-summary dd small{display:block;overflow-wrap:anywhere}
.platform-console .voice-pricing-summary dd small{margin-top:var(--sp-2);font-size:var(--fs-sm);font-weight:var(--fw-base)}
.platform-console .voice-pricing-summary .detail-grid{grid-template-columns:minmax(0,1fr)}
.platform-console .voice-pricing-summary .detail-grid>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-4);padding:var(--sp-3) 0;border-bottom:var(--border)}
.platform-console .voice-pricing-summary dd{margin:0}
.platform-console .voice-pricing-draft{margin-bottom:var(--sp-4)}
.platform-console .voice-pricing-costs{margin:var(--sp-5) 0}
.platform-console .voice-pricing-costs>div{padding:var(--sp-3) 0}
.platform-console .voice-pricing-editor{border-top:var(--border);padding-top:var(--sp-4)}
.platform-console .voice-pricing-editor>summary{color:var(--c-brand-ink);font-weight:var(--fw-strong);cursor:pointer;padding:var(--sp-2) 0}
.platform-console .voice-pricing-editor .pricing-save{grid-column:1/-1}
@media(max-width:720px){.platform-console .cost-workspace{display:block}.platform-console [data-cost-view=sales]{display:block}.platform-console .model-tabs{flex-wrap:wrap}.platform-console .model-tabs button{flex:1 1 auto;padding:var(--sp-2) var(--sp-3)}.platform-console .cost-task-tabs button,.platform-console .cost-product-tabs button{flex:1}.platform-console .cost-purchase{grid-template-columns:minmax(0,1fr)}.platform-console .cost-purchase>button{grid-column:1;grid-row:auto;justify-self:start}.platform-console .cost-budget-record .mc-metrics,.platform-console .voice-pricing-summary .detail-grid>div{grid-template-columns:minmax(0,1fr)}.platform-console .cost-rate-table :is(td,th):not(:first-child){text-align:left}.platform-console .cost-budget-record .mc-metrics{gap:var(--sp-3)}}

/* Product-level model fault protection. Shares the console's controls and tokens. */
.mf-section{border-top:var(--border);margin-top:var(--sp-5);padding-top:var(--sp-5)}
.mf-section h3{font-size:var(--fs-lg);font-weight:var(--fw-strong);margin:0}
.mf-summary{display:grid;grid-template-columns:1fr 2fr;gap:var(--sp-4);margin:var(--sp-4) 0}
.mf-summary>div{display:grid;gap:var(--sp-1);min-width:0}
.mf-summary span,.mf-budget dt{font-size:var(--fs-sm);color:var(--c-muted)}
.mf-summary strong{font-weight:var(--fw-medium);overflow-wrap:anywhere}
.mf-billing{padding:var(--sp-3) var(--sp-4);border:var(--border);border-radius:var(--r-sm);line-height:var(--lh-base)}
.mf-budget{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4);margin:var(--sp-4) 0}
.mf-budget dd{margin:var(--sp-1) 0 0;font-size:var(--fs-lg);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.mf-form{margin-top:var(--sp-4);border-top:var(--border);padding-top:var(--sp-4)}
.mf-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--sp-4)}
.mf-fields label,.mf-dialog label{display:grid;gap:var(--sp-2);min-width:0}
.platform-console .mf-form label.mf-check{display:flex;flex-direction:row;align-items:flex-start;gap:var(--sp-2);line-height:var(--lh-base);max-width:none}
.mf-check input{flex:none;margin-top:var(--sp-1);width:14px;height:14px}
.mf-section small{display:block;color:var(--c-muted);font-size:var(--fs-xs);line-height:var(--lh-base)}
.mf-records{margin-top:var(--sp-5);border-top:var(--border);padding-top:var(--sp-4)}
.mf-records>summary{cursor:pointer;font-weight:var(--fw-medium)}
.mf-record-content>h4{font-size:var(--fs-md);margin:var(--sp-5) 0 var(--sp-2)}
.mf-notices{list-style:none;padding:0;margin:0}
.mf-notices li{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) 0;border-bottom:var(--border)}
.mf-notices strong{font-size:var(--fs-md);font-weight:var(--fw-medium)}
.mf-identifiers{max-width:310px;font-size:var(--fs-xs)}
.mf-identifiers dd{font-family:var(--font-mono);overflow-wrap:anywhere;margin:var(--sp-1) 0 var(--sp-3)}
.mf-dialog{width:600px;max-width:calc(100vw - var(--sp-6));padding:var(--sp-5);border:var(--border);border-radius:var(--r-lg)}
.mf-dialog form{display:grid;gap:var(--sp-4)}
.mf-dialog fieldset{border:0;padding:0;margin:0;display:grid;gap:var(--sp-4);min-width:0}
.mf-dialog textarea{resize:vertical;width:100%;box-sizing:border-box}
.mf-dialog [data-mf-cost-preview]{line-height:var(--lh-base);font-variant-numeric:tabular-nums}
.mf-backups{display:grid;gap:var(--sp-3)}
.mf-backup-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:var(--sp-3)}
.mf-backup-row label{min-width:0}
.mf-backup-row select{width:100%}
.mf-drag{cursor:grab}
.mf-drag:active{cursor:grabbing}
.mf-move{display:flex;gap:var(--sp-2)}
@media(max-width:720px){.mf-backup-row{grid-template-columns:minmax(0,1fr) auto}.mf-drag{display:none}.mf-move button{min-height:var(--h-touch)}}
@media(max-width:720px){.mf-summary,.mf-fields{grid-template-columns:1fr}.mf-budget{grid-template-columns:1fr;gap:var(--sp-3)}.mf-budget>div{display:flex;justify-content:space-between;gap:var(--sp-3)}.mf-budget dd{margin:0}.mf-notices li{align-items:flex-start;flex-direction:column}.mf-dialog{padding:var(--sp-4)}}

/* 2026-10-30 模型接入进度与模型配置弹窗整理：统一骨架、分组、勾选网格与主次动作。
   只复用现有 token 与组件形态；不改业务语义。 */
:is(.platform-console,.voice-ops) .mc-dialog-head{position:static;padding:0 0 var(--sp-3);border-bottom:1px solid var(--line);margin:0 0 var(--sp-4)}
:is(.platform-console,.voice-ops) .mc-dialog-sub{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-2) var(--sp-3);margin:var(--sp-1) 0 0;color:var(--muted);font-size:var(--fs-xs)}
:is(.platform-console,.voice-ops) .mc-onboarding-position{display:flex;align-items:center;gap:var(--sp-2);margin:var(--sp-3) 0 0;color:var(--text);font-size:var(--fs-xs)}
:is(.platform-console,.voice-ops) .mc-step-pill{padding:var(--sp-0) var(--sp-2);border:1px solid var(--line);border-radius:var(--r-xs);background:var(--soft);font-variant-numeric:tabular-nums}
:is(.platform-console,.voice-ops) .mc-onboarding{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-onboarding-step{display:grid;grid-template-columns:30px minmax(0,1fr);gap:var(--sp-4);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel)}
:is(.platform-console,.voice-ops) .mc-onboarding-step.is-current{border-color:var(--accent);background:var(--soft)}
:is(.platform-console,.voice-ops) .mc-onboarding-number{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:var(--bg);color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}
:is(.platform-console,.voice-ops) .is-current .mc-onboarding-number{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:var(--fw-strong)}
:is(.platform-console,.voice-ops) .mc-onboarding-body{min-width:0}
:is(.platform-console,.voice-ops) .mc-onboarding-heading{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3);margin:0 0 var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-onboarding-heading h3{font-size:var(--fs-md);margin:0}
:is(.platform-console,.voice-ops) p.mc-onboarding-copy{margin:0;color:var(--muted);font-size:var(--fs-sm);line-height:var(--lh-base);max-width:62ch}
:is(.platform-console,.voice-ops) .mc-step-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-3)}
:is(.platform-console,.voice-ops) .mc-step-actions .row{display:contents}
:is(.platform-console,.voice-ops) .mc-dialog-foot{display:flex;justify-content:flex-end;gap:var(--sp-3);padding-top:var(--sp-4);margin-top:var(--sp-4);border-top:1px solid var(--line)}
:is(.platform-console,.voice-ops) .mc-dialog-foot button{min-width:96px}
:is(.platform-console,.voice-ops) .mc-onboarding-dialog .error:empty{display:none}
/* 模型配置：两列字段网格 + 分组标题 + 勾选卡片 */
:is(.platform-console,.voice-ops) .model-config-dialog .model-dialog-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4) var(--sp-5)}
:is(.platform-console,.voice-ops) .model-config-dialog .model-dialog-fields>label{margin:0;display:grid;gap:var(--sp-2)}
:is(.platform-console,.voice-ops) .model-config-dialog .model-dialog-fields>div{grid-column:1/-1}
:is(.platform-console,.voice-ops) .mc-field-group{display:grid;gap:var(--sp-3);padding-top:var(--sp-4);border-top:1px solid var(--line)}
:is(.platform-console,.voice-ops) .mc-field-group:first-child{padding-top:0;border-top:0}
:is(.platform-console,.voice-ops) .mc-group-label{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-2);font-size:var(--fs-sm);font-weight:var(--fw-strong);color:var(--text)}
:is(.platform-console,.voice-ops) .mc-group-label>span{font-size:var(--fs-xs);font-weight:var(--fw-base);color:var(--muted)}
:is(.platform-console,.voice-ops) .mc-capacity{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}
:is(.platform-console,.voice-ops) .mc-capacity>label{display:grid;gap:var(--sp-2);margin:0;min-width:0}
:is(.platform-console,.voice-ops) .mc-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}
:is(.platform-console,.voice-ops) .mc-check-grid .check-row{display:flex;align-items:center;gap:var(--sp-2);margin:0;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel);color:var(--text);font-size:var(--fs-sm);cursor:pointer;line-height:1.4}
:is(.platform-console,.voice-ops) .mc-check-grid .check-row:hover{border-color:var(--dim)}
:is(.platform-console,.voice-ops) .mc-check-grid .check-row:has(input:checked){border-color:var(--accent);background:var(--soft)}
:is(.platform-console,.voice-ops) .mc-check-grid .check-row:has(input:disabled){cursor:default}
:is(.platform-console,.voice-ops) .mc-check-grid input[type=checkbox]{width:18px;height:18px;margin:0;flex:none;accent-color:var(--accent)}
:is(.platform-console,.voice-ops) [data-mc-config-form] details>label.mc-override-toggle{display:flex;flex-direction:row;align-items:center;gap:var(--sp-3);margin:0 0 var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--raised);color:var(--text);font-size:var(--fs-sm);cursor:pointer;line-height:1.5}
:is(.platform-console,.voice-ops) [data-mc-config-form] details>label.mc-override-toggle:hover{border-color:var(--dim)}
:is(.platform-console,.voice-ops) [data-mc-config-form] details>label.mc-override-toggle input[type=checkbox]{width:18px;height:18px;margin:0;flex:none;accent-color:var(--accent)}
@media(max-width:720px){
 :is(.platform-console,.voice-ops) .model-config-dialog .model-dialog-fields{grid-template-columns:minmax(0,1fr)}
 :is(.platform-console,.voice-ops) .mc-capacity,:is(.platform-console,.voice-ops) .mc-check-grid{grid-template-columns:minmax(0,1fr)}
 :is(.platform-console,.voice-ops) .mc-onboarding-step{grid-template-columns:var(--sp-5) minmax(0,1fr);gap:var(--sp-3);padding:var(--sp-3)}
 :is(.platform-console,.voice-ops) .mc-onboarding-number{width:var(--sp-5);height:var(--sp-5)}
 :is(.platform-console,.voice-ops) .mc-dialog-foot{flex-direction:column-reverse}
 :is(.platform-console,.voice-ops) .mc-dialog-foot button{width:100%}
}
/* 折叠区展开后与两列字段网格对齐：摘要与分组占满整行，内部字段沿用两列 */
:is(.platform-console,.voice-ops) .model-config-dialog .model-details{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4) var(--sp-5);border-top:1px solid var(--line);padding-top:var(--sp-4);margin-top:0}
:is(.platform-console,.voice-ops) .model-config-dialog .model-details>summary,
:is(.platform-console,.voice-ops) .model-config-dialog .model-details>.mc-field-group,
:is(.platform-console,.voice-ops) .model-config-dialog .model-details>.mc-override-toggle,
:is(.platform-console,.voice-ops) .model-config-dialog .model-details>.notice{grid-column:1/-1}
:is(.platform-console,.voice-ops) .model-config-dialog .model-details>label{margin:0;display:grid;gap:var(--sp-2);min-width:0}
:is(.platform-console,.voice-ops) .model-config-dialog .model-details[open]>summary{margin-bottom:var(--sp-1)}
@media(max-width:720px){
 :is(.platform-console,.voice-ops) .model-config-dialog .model-details{grid-template-columns:minmax(0,1fr)}
}
/* 折叠区内的确定两列容器（靠结构而非继承） */
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4) var(--sp-5);align-items:start}
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-grid>label{margin:0;display:grid;gap:var(--sp-2);min-width:0}
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-grid>.mc-field-group,
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-grid>.mc-override-toggle,
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-grid>.notice{grid-column:1/-1}
:is(.platform-console,.voice-ops) .model-config-dialog .model-dialog-fields>label:first-child{grid-column:1/-1}
@media(max-width:720px){:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-grid{grid-template-columns:minmax(0,1fr)}}
/* 覆盖开关：不依赖父级（可位于折叠区或两列容器内），始终整行、勾选框与文案同行 */
:is(.platform-console,.voice-ops) [data-mc-config-form] label.mc-override-toggle{display:flex;flex-direction:row;align-items:flex-start;gap:var(--sp-3);margin:0 0 var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--raised);color:var(--text);font-size:var(--fs-sm);line-height:1.5;cursor:pointer;grid-column:1/-1}
:is(.platform-console,.voice-ops) [data-mc-config-form] label.mc-override-toggle:hover{border-color:var(--dim)}
:is(.platform-console,.voice-ops) [data-mc-config-form] label.mc-override-toggle>span{min-width:0;flex:1}
:is(.platform-console,.voice-ops) [data-mc-config-form] label.mc-override-toggle input[type=checkbox]{width:18px;height:18px;margin:var(--sp-1) 0 0;flex:none;accent-color:var(--accent)}
/* 能力卡片：自适应列宽 + 文字不换行（修复窄列导致的逐字竖排） */
:is(.platform-console,.voice-ops) .mc-check-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
:is(.platform-console,.voice-ops) .mc-check-grid .check-row{white-space:nowrap;overflow:hidden}
:is(.platform-console,.voice-ops) .mc-check-grid .check-row>span{overflow:hidden;text-overflow:ellipsis}
/* 取消主栅格两列：能力/容量等分组已自带两列，主栅格单列可避免窄列挤压 */
:is(.platform-console,.voice-ops) .model-config-dialog .model-dialog-fields{grid-template-columns:minmax(0,1fr)}
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}
:is(.platform-console,.voice-ops) .model-config-dialog .mc-capacity{grid-template-columns:repeat(2,minmax(260px,1fr))}
@media(max-width:900px){
 :is(.platform-console,.voice-ops) .model-config-dialog .mc-field-grid,
 :is(.platform-console,.voice-ops) .model-config-dialog .mc-capacity{grid-template-columns:minmax(0,1fr)}
}
/* 摘要提示弱化：不再是一整块大面积底色，改为一行低对比说明 */
:is(.platform-console,.voice-ops) .model-config-dialog [data-mc-config-summary]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3);margin:0;padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--raised);color:var(--muted);font-size:var(--fs-xs)}
:is(.platform-console,.voice-ops) .model-config-dialog [data-mc-config-summary] [data-mc-margin]{color:var(--text);font-weight:var(--fw-strong)}
/* 底部操作条：主按钮与次按钮右对齐、等高 */
:is(.platform-console,.voice-ops) .model-config-dialog .model-dialog-actions{align-items:center;justify-content:flex-end}
:is(.platform-console,.voice-ops) .model-config-dialog .model-dialog-actions button{min-width:104px}
/* 分区内部：两列字段网格，长内容跨列（避免倍率/毛利/来源各占整行） */
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-group{display:grid;grid-template-columns:repeat(2,minmax(240px,1fr));gap:var(--sp-4) var(--sp-5);align-items:start}
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-group>.mc-group-label,
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-group>.mc-check-grid,
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-group>.model-fields,
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-group>[data-mc-pricing-preview],
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-group>.error,
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-group>p,
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-grid>.mc-span-2{grid-column:1/-1}
:is(.platform-console,.voice-ops) .model-config-dialog .mc-field-group>label{margin:0;display:grid;gap:var(--sp-2);min-width:0}
:is(.platform-console,.voice-ops) .model-config-dialog .mc-config-section{border-top:1px solid var(--line);padding-top:var(--sp-4);margin-top:var(--sp-4);display:block}
:is(.platform-console,.voice-ops) .model-config-dialog .mc-config-section>.mc-field-grid{margin-top:var(--sp-3)}
:is(.platform-console,.voice-ops) .model-config-dialog .mc-config-section:not([open])>.mc-field-grid{display:none}
:is(.platform-console,.voice-ops) .model-config-dialog .mc-config-section:not([open])>.field-hint{display:none}
:is(.platform-console,.voice-ops) .mc-capability-summary{padding:0}
:is(.platform-console,.voice-ops) .mc-capability-summary h3{margin:0 0 var(--sp-2);font-size:var(--fs-sm)}
:is(.platform-console,.voice-ops) .mc-capability-summary p{margin:var(--sp-2) 0}
:is(.platform-console,.voice-ops) .mc-capability-summary .badge{margin:0 var(--sp-1) var(--sp-1) 0}
@media(max-width:900px){
 :is(.platform-console,.voice-ops) .model-config-dialog .mc-field-group{grid-template-columns:minmax(0,1fr)}
}
