:root{
  color-scheme:dark;
  --bg:#20272e;
  --panel:#2b343d;
  --panel2:#37434e;
  --field:#242d35;
  --line:#57636f;
  --line-soft:#45515d;
  --text:#dfe5ea;
  --muted:#b9c3cd;
  --accent:#afcedf;
  --accent-strong:#557d98;
  --accent-fill:#3d5b70;
  --warm:#dfba82;
  --danger:#edae9e;
  --external:#76899a;
  --shadow:0 10px 30px rgba(10,25,38,.18);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
body{
  margin:0;min-height:100vh;color:var(--text);
  background:var(--bg)
}
button,input,select,textarea{font:inherit}
button,.button{
  border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:8px;
  padding:.58rem .82rem;text-decoration:none;cursor:pointer;transition:.15s ease
}
button:hover,.button:hover{border-color:#5a7890;background:#294255}
button:disabled{opacity:.42;cursor:not-allowed}
button.primary,.primary{background:var(--accent-fill);border-color:#4d7894;color:#edf6fb;font-weight:720}
button.primary:hover,.primary:hover{background:#3a6782;border-color:#668ea7}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#app{width:min(1320px,calc(100% - 48px));margin:0 auto;padding:20px 0 34px}
.loading{padding:20vh 0;text-align:center;color:var(--muted)}
.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:16px}
.title-block h1,.login-card h1{font-size:clamp(2rem,3vw,2.8rem);letter-spacing:-.05em;margin:.1rem 0 .15rem}
.title-block p{margin:0;color:var(--muted);font-size:.84rem}
.top-actions,.actions,.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.eyebrow{font-size:.64rem;letter-spacing:.19em;font-weight:800;color:var(--accent);text-transform:uppercase}
.timestamp,.table-summary,.open-work{font-size:.72rem;color:var(--muted)}
.panel,.login-card,.dialog-card{
  background:var(--panel);
  border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)
}
.metric-strip{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);
  background:rgba(24,41,54,.78);border-radius:10px;margin-bottom:12px;overflow:hidden
}
.metric-strip>div{padding:13px 16px;border-right:1px solid var(--line-soft);display:grid;grid-template-columns:1fr auto;align-items:end;gap:1px 12px}
.metric-strip>div:last-child{border-right:0}
.metric-strip span{color:var(--muted);font-size:.74rem;grid-column:1}
.metric-strip strong{font-size:1.65rem;line-height:1;letter-spacing:-.04em;grid-column:2;grid-row:1/3}
.metric-strip small{color:#7893a6;font-size:.68rem;grid-column:1}
.command-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.75fr);gap:12px}
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.panel{padding:17px}
.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px}
.panel-heading h2{margin:.2rem 0 .18rem;font-size:1.12rem;letter-spacing:-.025em}
.panel-heading p{margin:.25rem 0 0;color:var(--muted);font-size:.78rem;line-height:1.45;max-width:760px}
.portfolio-visual{display:grid;grid-template-columns:160px 1fr;gap:22px;align-items:center;min-height:175px}
.readiness-ring{
  --ready:0%;--attention-end:0%;width:132px;height:132px;margin:auto;border-radius:50%;
  background:conic-gradient(var(--accent) 0 var(--ready),var(--warm) var(--ready) var(--attention-end),#526776 var(--attention-end) 100%);
  display:grid;place-items:center;position:relative
}
.readiness-ring:after{content:"";position:absolute;inset:13px;border-radius:50%;background:var(--panel)}
.readiness-ring>div{position:relative;z-index:1;text-align:center;display:grid}
.readiness-ring strong{font-size:2rem;line-height:1;letter-spacing:-.05em}
.readiness-ring span,.readiness-ring small{font-size:.65rem;color:var(--muted)}
.portfolio-bars,.activity-bars{display:grid;gap:10px}
.portfolio-row,.activity-row{display:grid;grid-template-columns:120px minmax(90px,1fr) 28px;align-items:center;gap:10px;font-size:.72rem}
.portfolio-row span,.activity-row span{color:var(--muted)}
.portfolio-row strong,.activity-row strong{text-align:right;font-size:.72rem}
.track{height:7px;background:#112433;border:1px solid #294457;border-radius:999px;overflow:hidden}
.track i{display:block;height:100%;background:linear-gradient(90deg,#4c7590,#7ea8bf);border-radius:999px}
.owner-actions .panel-heading{margin-bottom:10px}
.control-list{display:grid;border-top:1px solid var(--line-soft)}
.control-row{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;
  background:transparent;border:0;border-bottom:1px solid var(--line-soft);border-radius:0;padding:12px 2px;color:var(--text);text-decoration:none
}
.control-row:hover{background:transparent;color:var(--accent)}
.control-row span{display:grid;gap:2px}.control-row strong{font-size:.82rem}.control-row small{font-size:.68rem;color:var(--muted);font-weight:450}
.control-row b{font-size:.7rem;color:var(--accent);font-weight:700}
.app-control{margin-top:12px}
.legend{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.68rem}
.legend span{display:flex;align-items:center;gap:5px}
.app-group{margin-top:15px}.app-group:first-of-type{margin-top:5px}
.group-title{display:flex;align-items:center;justify-content:space-between;padding:0 2px 7px;border-bottom:1px solid var(--line-soft)}
.group-title span{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:#c2d3df;font-weight:750}
.group-title small{font-size:.66rem;color:var(--muted)}
.app-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px}
.app-card{
  min-width:0;background:#152634;border:1px solid var(--line-soft);border-radius:8px;padding:12px;display:flex;flex-direction:column;min-height:142px
}
.app-card[data-state=attention]{border-color:#655b48}.app-card[data-state=external]{border-color:#425667}
.app-card-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.app-card h3{margin:.15rem 0 0;font-size:.9rem;letter-spacing:-.015em}
.app-section{font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;color:#7894a7;font-weight:800}
.app-card p{margin:9px 0 12px;color:var(--muted);font-size:.7rem;line-height:1.45;flex:1}
.app-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #2b4353;padding-top:8px}
.app-card-foot>span{font-size:.62rem;color:#8199aa}
.quiet-button{padding:.35rem .55rem;font-size:.67rem;background:transparent}
.state-chip{display:inline-flex;align-items:center;gap:5px;font-size:.59rem;color:var(--muted);white-space:nowrap}
.state-chip i,.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:#61788a}
.state-chip.ready i,.status-dot.ready{background:var(--accent);box-shadow:0 0 8px rgba(147,200,230,.2)}
.state-chip.attention i,.status-dot.attention{background:var(--warm)}
.state-chip.external i,.status-dot.external{background:var(--external)}
.service-list{display:grid}
.service-row{display:grid;grid-template-columns:170px 1fr;align-items:center;gap:12px;padding:9px 2px;border-bottom:1px solid var(--line-soft)}
.service-row:last-child{border-bottom:0}
.service-name{font-size:.75rem;display:flex;align-items:center;gap:8px}
.service-row small{font-size:.68rem;color:var(--muted)}
.activity-bars{padding-top:3px}
.activity-row{grid-template-columns:135px minmax(90px,1fr) 35px}
.compact-onboarding{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);gap:20px;align-items:end}
.compact-onboarding h2{margin:.22rem 0;font-size:1.06rem}
.compact-onboarding p{margin:.35rem 0;color:var(--muted);font-size:.72rem;line-height:1.45}
label{display:grid;gap:6px;color:#c6d4de;font-size:.72rem;font-weight:650}
input,select,textarea{width:100%;border:1px solid var(--line);background:var(--field);color:var(--text);border-radius:7px;padding:.62rem .72rem;outline:none}
input:focus,select:focus,textarea:focus{border-color:#6287a0;box-shadow:0 0 0 2px rgba(147,200,230,.08)}
#create-practice{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}
#create-practice .state{grid-column:1/-1}
.state{min-height:1em;color:var(--muted);margin:0!important;font-size:.68rem}.error{color:var(--danger)}
.timeline{display:grid}
.timeline-row{display:grid;grid-template-columns:8px 1fr auto;gap:10px;align-items:center;padding:8px 2px;border-bottom:1px solid var(--line-soft)}
.timeline-row:last-child{border-bottom:0}
.timeline-row>i{width:6px;height:24px;border-radius:4px;background:#48677c}.timeline-row>i.workflow{background:var(--warm)}.timeline-row>i.odin{background:#7395ac}
.timeline-row div{display:grid;gap:2px}.timeline-row strong{font-size:.74rem;font-weight:650}.timeline-row small,.timeline-row time{font-size:.63rem;color:var(--muted)}
.empty-small{padding:18px 0;color:var(--muted);font-size:.72rem}
.practices-panel{margin-top:12px}
.table-wrap{overflow:auto;border:1px solid var(--line-soft);border-radius:8px}
table{width:100%;border-collapse:collapse;min-width:790px}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line-soft)}
th{color:#829aaa;font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;background:#132432}
tbody tr:last-child td{border-bottom:0}
td{font-size:.75rem}td strong{display:block;font-size:.76rem}td small{display:block;color:var(--muted);font-size:.62rem;margin-top:2px}
.tag{display:inline-flex;padding:.2rem .38rem;border-radius:999px;font-size:.58rem;letter-spacing:.07em;font-weight:800;border:1px solid}
.tag.active{color:#b8d9eb;border-color:#476b82;background:#1e3b4d}.tag.test{color:#d0c7f2;border-color:#554d77;background:#2a2542}.tag.suspended{color:#f0c0b9;border-color:#7b5350;background:#422624}
footer{display:flex;justify-content:space-between;gap:20px;color:#7890a1;font-size:.66rem;padding:16px 2px}
.login-shell{min-height:calc(100vh - 54px);display:grid;place-items:center;position:relative}
.brand-mark{position:absolute;top:4vh;left:0;font-weight:900;letter-spacing:.22em;color:var(--accent)}
.login-card{width:min(420px,100%);padding:28px}
.login-card p{color:var(--muted);line-height:1.5;font-size:.78rem}.login-card form{display:grid;gap:12px;margin-top:20px}.login-card input{font-size:1rem;letter-spacing:normal;text-align:left}.login-card input[autocomplete="one-time-code"]{letter-spacing:.18em;text-align:center}
dialog{border:0;padding:0;background:transparent;color:inherit;width:min(620px,calc(100% - 28px))}
dialog::backdrop{background:rgba(4,12,18,.74);backdrop-filter:blur(4px)}
.dialog-card{padding:22px}.dialog-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.dialog-card h2{margin:.25rem 0;font-size:1.15rem}.dialog-card p{color:var(--muted);font-size:.76rem;line-height:1.45}.icon-button{font-size:1.3rem;padding:.2rem .55rem}
#invite-link{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;resize:none;margin-top:3px}.dialog-card label{margin:16px 0 12px}
@media(max-width:1200px){.app-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.command-grid{grid-template-columns:1.25fr .75fr}}
@media(max-width:900px){
  .metric-strip{grid-template-columns:1fr 1fr}.metric-strip>div:nth-child(2){border-right:0}.metric-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line-soft)}
  .command-grid,.split-grid{grid-template-columns:1fr}.app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-onboarding{grid-template-columns:1fr}
}
@media(max-width:640px){
  #app{width:min(100% - 20px,1540px);padding-top:14px}.topbar{align-items:flex-start;flex-direction:column}.top-actions{width:100%}
  .metric-strip{grid-template-columns:1fr}.metric-strip>div{border-right:0;border-bottom:1px solid var(--line-soft)}.metric-strip>div:last-child{border-bottom:0}
  .portfolio-visual{grid-template-columns:1fr}.readiness-ring{width:118px;height:118px}.app-grid{grid-template-columns:1fr}
  .panel{padding:14px}.panel-heading{display:block}.legend{margin-top:10px}.service-row{grid-template-columns:1fr;gap:4px}
  #create-practice{grid-template-columns:1fr}.top-actions .button,.top-actions button{flex:1;text-align:center}footer{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}


/* Super Admin platform boundary */
.platform-boundary{
  display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;margin:0 0 12px;
  padding:12px 15px;border:1px solid #3e6076;border-radius:9px;background:rgba(29,56,73,.72)
}
.platform-boundary strong{color:#d7ebf6;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.platform-boundary span{color:var(--muted);font-size:.72rem;line-height:1.5}
.platform-boundary b{color:var(--text);font-weight:700}
.access-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.access-summary>div{padding:14px;border:1px solid var(--line-soft);border-radius:8px;background:#142633;display:grid;gap:3px}
.access-summary strong{font-size:1.55rem;letter-spacing:-.04em}
.access-summary span{font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.access-chip{display:inline-flex;padding:.22rem .4rem;border-radius:999px;font-size:.57rem;letter-spacing:.07em;font-weight:800;border:1px solid;margin-bottom:3px}
.access-chip.approved{color:#c7e5f5;border-color:#476f88;background:#1b3c50}
.access-chip.pending{color:#efd2a3;border-color:#735f43;background:#382f24}
.access-chip.hold{color:#efb9ad;border-color:#795149;background:#412a28}
.view-as-link{
  display:inline-flex;margin:4px 0 1px;padding:0;border:0;background:transparent;color:var(--accent);
  font-size:.66rem;font-weight:750;text-decoration:none
}
.view-as-link:hover{background:transparent;border:0;text-decoration:underline}
.platform-only{color:#6f8da1!important;font-size:.59rem!important;text-transform:uppercase;letter-spacing:.08em}
.action-flash{
  margin:0 0 12px;padding:10px 14px;border:1px solid #477089;border-radius:8px;
  color:#d9ecf6;background:#173246;font-size:.73rem
}
.audit-panel{margin-top:12px}
.timeline-row>i.admin{background:var(--accent)}
.onboarding h2{margin:.22rem 0;font-size:1.06rem}
.onboarding p{margin:.35rem 0 12px;color:var(--muted);font-size:.72rem;line-height:1.45}
@media(max-width:640px){
  .platform-boundary{grid-template-columns:1fr}
  .access-summary{grid-template-columns:1fr}
}


.billing-panel{margin-top:12px}
.billing-alert{
  display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);gap:14px;margin:0 0 12px;padding:13px 14px;
  border:1px solid #786247;border-radius:9px;background:linear-gradient(135deg,rgba(71,53,31,.72),rgba(35,43,48,.84))
}
.billing-alert>div:first-child{display:grid;gap:4px}
.billing-alert strong{font-size:.78rem;color:#f0d3a4}.billing-alert span{font-size:.65rem;color:#c4b59e;line-height:1.4}
.billing-alert-list{display:grid;align-content:center;gap:3px;padding-left:14px;border-left:1px solid #65543e}
.billing-alert-list span{overflow-wrap:anywhere}
.triage-bar{
  display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,auto) auto;gap:9px;align-items:end;
  padding:0 0 10px
}
.triage-control{gap:4px;font-size:.61rem;color:#88a2b4;font-weight:700;text-transform:uppercase;letter-spacing:.07em}
.triage-control input,.triage-control select{min-height:36px;padding:.48rem .62rem;font-size:.72rem;text-transform:none;letter-spacing:0}
.triage-bar>.table-summary{align-self:center;justify-self:end;white-space:nowrap}
.billing-list{display:grid;gap:8px}
.billing-row{
  display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(180px,.85fr) minmax(150px,.65fr);
  gap:16px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:9px;background:#122330
}
.billing-row-attention{border-color:#765f43;background:linear-gradient(90deg,rgba(62,47,29,.72),#122330 54%)}
.billing-main,.billing-evidence{display:grid;gap:3px;min-width:0}
.billing-main strong{font-size:.78rem;overflow-wrap:anywhere}
.billing-main small,.billing-evidence small{font-size:.63rem;color:var(--muted);overflow-wrap:anywhere}
.billing-state{width:max-content;max-width:100%;padding:.2rem .38rem;border:1px solid;border-radius:999px;font-size:.56rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.billing-state.ready{color:#c9e7f7;border-color:#49758e;background:#173b50}
.billing-state.attention{color:#e9c99a;border-color:#735f43;background:#382f24}
.billing-action{display:flex;justify-content:flex-end}
.billing-action button{font-size:.64rem;padding:7px 10px}
.billing-imported{font-size:.63rem;color:#abc2d0;text-align:right}
.billing-empty{padding:18px;border:1px dashed #40586a;border-radius:9px;background:#10202b;display:grid;gap:4px}
.billing-empty strong{font-size:.76rem}
.billing-empty span{font-size:.66rem;color:var(--muted)}
.billing-updated{margin-top:9px;color:#718c9e;font-size:.58rem;text-align:right}
@media(max-width:900px){
  .billing-alert{grid-template-columns:1fr}.billing-alert-list{padding:9px 0 0;border-left:0;border-top:1px solid #65543e}
  .triage-bar{grid-template-columns:1fr 1fr}.triage-bar>.table-summary{grid-column:1/-1;justify-self:start}
  .billing-row{grid-template-columns:1fr}
  .billing-action{justify-content:flex-start}
  .billing-imported{text-align:left}
}
@media(max-width:640px){.triage-bar{grid-template-columns:1fr}}


/* Billing console: drillable records */
.billing-row{cursor:pointer;transition:border-color .14s ease,background .14s ease,transform .14s ease}
.billing-row:hover,.billing-row:focus-visible{border-color:#52758b;background:#152a38;outline:none}
.billing-row:focus-visible{box-shadow:0 0 0 2px #213f52}
.billing-main .billing-sub-id{color:#6f899a;font-size:.58rem}
.billing-action{display:grid;justify-items:end;gap:5px}
.billing-row-buttons{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.billing-state.state-active,.billing-state.state-trialing{color:#cce9f8;border-color:#4c7890;background:#183d51}
.billing-state.state-paused{color:#efd2a3;border-color:#786346;background:#3b3022}
.billing-state.state-delinquent{color:#f0c3ad;border-color:#80584a;background:#422d27}
.billing-state.state-cancelled{color:#d5a9a9;border-color:#72494d;background:#382629}
.billing-state.state-unknown{color:#a9bdc9;border-color:#455d6b;background:#1a2a34}

#billing-dialog{width:min(980px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);padding:0;border:0;border-radius:12px;background:#0d1922;color:var(--text);box-shadow:0 26px 80px #0009}
#billing-dialog::backdrop{background:#061018c9;backdrop-filter:blur(4px)}
.billing-dialog-card{display:grid;grid-template-rows:auto minmax(0,1fr);max-height:calc(100vh - 32px)}
.billing-dialog-card>.dialog-head{padding:16px 18px;border-bottom:1px solid var(--line);background:#10212c;position:sticky;top:0;z-index:2}
.billing-dialog-card>.dialog-head h2{margin:.2rem 0 0;font-size:1.15rem}
.billing-dialog-body{padding:14px;overflow:auto;display:grid;gap:12px}
.billing-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px;border:1px solid #36576b;border-radius:10px;background:linear-gradient(120deg,#142b39,#111f29)}
.billing-detail-hero h3{margin:6px 0 3px;font-size:1.2rem;letter-spacing:-.02em}
.billing-detail-hero p{margin:0;color:var(--muted);font-size:.68rem}
.billing-detail-status{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.billing-detail-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap;max-width:420px}
.billing-detail-actions button{font-size:.65rem;padding:7px 10px}
.billing-detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.billing-detail-summary>div{padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:#11232e;display:grid;gap:3px}
.billing-detail-summary span{color:#7f9aac;font-size:.57rem;text-transform:uppercase;letter-spacing:.08em}
.billing-detail-summary strong{font-size:.85rem;text-transform:capitalize}
.billing-detail-summary small{color:var(--muted);font-size:.6rem;line-height:1.35}
.billing-detail-section{display:grid;gap:8px}
.billing-detail-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:0 2px}
.billing-detail-heading h3{margin:.18rem 0 0;font-size:.9rem}
.billing-detail-heading>span{font-size:.6rem;color:var(--muted)}
.billing-subscriptions{display:grid;gap:8px}
.billing-subscription{padding:12px;border:1px solid var(--line);border-radius:9px;background:#11232e;display:grid;gap:9px}
.billing-subscription-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.billing-subscription-head>div{display:grid;gap:2px}
.billing-subscription-head strong{font-size:.77rem}.billing-subscription-head small{font-size:.6rem;color:var(--muted)}
.billing-id-line{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:8px;align-items:center;padding:6px 8px;border:1px solid #273f4d;border-radius:7px;background:#0d1b24}
.billing-id-line span{font-size:.57rem;color:#8199a8;text-transform:uppercase;letter-spacing:.06em}
.billing-id-line code{font:600 .65rem/1.25 ui-monospace,SFMono-Regular,Menlo,monospace;color:#c9deea;overflow-wrap:anywhere}
.billing-id-line button{padding:5px 7px;font-size:.58rem}
.billing-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.billing-facts>div{display:grid;gap:2px;padding:7px 8px;border-left:2px solid #31576d;background:#0f202a}
.billing-facts span{font-size:.53rem;color:#718d9f;text-transform:uppercase;letter-spacing:.06em}
.billing-facts strong{font-size:.68rem}
.billing-subscription-foot{display:flex;gap:12px;flex-wrap:wrap;color:#748e9e;font-size:.57rem}
.billing-transactions{display:grid;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.billing-transaction{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 11px;background:#10212c;border-bottom:1px solid var(--line-soft)}
.billing-transaction:last-child{border-bottom:0}
.transaction-type{text-transform:capitalize;color:#a7c2d1;font-size:.61rem;font-weight:750}
.billing-transaction>div{display:grid;gap:2px}.billing-transaction strong{font-size:.69rem}.billing-transaction small{font-size:.57rem;color:var(--muted)}
.billing-transaction button{padding:5px 7px;font-size:.57rem}
.billing-empty.compact{padding:12px}
.billing-detail-note{padding:10px 12px;border:1px solid #2d4d60;border-radius:8px;background:#10232e;display:grid;gap:3px}
.billing-detail-note strong{font-size:.68rem}.billing-detail-note span{font-size:.61rem;color:var(--muted);line-height:1.4}
@media(max-width:760px){
  #billing-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}
  .billing-dialog-card{max-height:calc(100vh - 16px)}
  .billing-detail-hero{display:grid}.billing-detail-actions{justify-content:flex-start}
  .billing-detail-summary{grid-template-columns:1fr}
  .billing-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .billing-id-line{grid-template-columns:1fr}.billing-transaction{grid-template-columns:1fr}
}


/* Doctor Intelligence question library */
.doctor-library-panel{
  position:relative;isolation:isolate;overflow:hidden;margin-top:12px;
  background:
    radial-gradient(circle at 86% -25%,rgba(116,185,222,.2),transparent 31rem),
    linear-gradient(145deg,rgba(25,45,60,.99),rgba(17,34,46,.99))
}
.doctor-library-panel:before{
  content:"";position:absolute;inset:0;z-index:-1;opacity:.22;pointer-events:none;
  background-image:radial-gradient(circle,#6b91a9 1px,transparent 1px);background-size:29px 29px;
  mask-image:linear-gradient(105deg,transparent 12%,#000 80%,transparent)
}
.doctor-library-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:15px}
.doctor-library-heading h2{margin:.2rem 0 .2rem;font-size:1.28rem;letter-spacing:-.035em}
.doctor-library-heading p{max-width:780px;margin:.25rem 0 0;color:var(--muted);font-size:.77rem;line-height:1.5}
.doctor-role-legend{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap;max-width:420px}
.doctor-role-legend span{display:inline-flex;align-items:center;gap:6px;padding:.34rem .55rem;border:1px solid #385669;border-radius:999px;background:#142937;color:#91aaba;font-size:.59rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.doctor-role-legend .active{border-color:#4f819e;color:#d2eaf6;background:#19394c}.doctor-role-legend .active i{width:6px;height:6px;border-radius:50%;background:#86d4fa;box-shadow:0 0 9px #78c6ed80}
.doctor-role-legend .planned{border-style:dashed}
.doctor-specialty-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.doctor-specialty-card{
  --doctor-accent:#93c8e6;position:relative;min-width:0;min-height:194px;padding:14px;overflow:hidden;text-align:left;
  display:flex;flex-direction:column;justify-content:space-between;gap:16px;border:1px solid #304b5d;border-radius:10px;
  background:linear-gradient(145deg,rgba(18,39,52,.96),rgba(17,31,42,.97));color:var(--text);box-shadow:none
}
.doctor-specialty-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,var(--doctor-accent),transparent);opacity:.65}
.doctor-specialty-card:hover,.doctor-specialty-card:focus-visible{transform:translateY(-2px);border-color:color-mix(in srgb,var(--doctor-accent) 58%,#334b5d);background:linear-gradient(145deg,#173143,#142a38)}
.doctor-card-orbit{position:absolute;right:-27px;top:-35px;width:116px;height:116px;border:1px solid color-mix(in srgb,var(--doctor-accent) 35%,transparent);border-radius:50%;opacity:.8;transform:rotate(-18deg)}
.doctor-card-orbit:before,.doctor-card-orbit:after{content:"";position:absolute;border:1px solid color-mix(in srgb,var(--doctor-accent) 22%,transparent);border-radius:50%}
.doctor-card-orbit:before{inset:15px}.doctor-card-orbit:after{inset:31px}
.doctor-card-orbit i{position:absolute;left:9px;top:24px;width:6px;height:6px;border-radius:50%;background:var(--doctor-accent);box-shadow:0 0 10px var(--doctor-accent)}
.doctor-card-copy{position:relative;z-index:1;display:grid;gap:4px;padding-right:30px}
.doctor-card-kicker{font-size:.52rem;letter-spacing:.16em;color:color-mix(in srgb,var(--doctor-accent) 82%,white);font-weight:850}
.doctor-card-copy strong{font-size:.92rem;line-height:1.18;letter-spacing:-.015em}.doctor-card-copy small{color:#8da7b8;font-size:.64rem;line-height:1.42}
.doctor-card-foot{position:relative;z-index:1;display:flex;gap:5px;align-items:center;flex-wrap:wrap;padding-top:10px;border-top:1px solid #294351}
.doctor-card-foot>span{display:inline-flex}.doctor-card-foot>b{display:flex;align-items:center;justify-content:space-between;gap:9px;width:100%;margin-top:3px;color:#bcd0db;font-size:.62rem;font-weight:650}.doctor-card-foot>b i{font-style:normal;color:var(--doctor-accent);font-size:.86rem}
.doctor-pack-chip{display:inline-flex;align-items:center;padding:.21rem .38rem;border:1px solid #426579;border-radius:999px;background:#183446;color:#bbd9e8;font-size:.52rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}
.doctor-pack-chip.draft{border-color:#7a6545;background:#3a3022;color:#e8c78f}.doctor-pack-chip.empty{border-color:#485560;background:#212d35;color:#8da0ad}
.doctor-library-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:11px;color:#7893a4;font-size:.61rem;line-height:1.4}
.doctor-library-foot span:first-child{display:flex;align-items:center;gap:7px;color:#93adbc}.doctor-library-foot i{width:6px;height:6px;border-radius:50%;background:#72c7f1;box-shadow:0 0 7px #72c7f166}
.doctor-empty{padding:24px;border:1px dashed #40586a;border-radius:9px;color:var(--muted);font-size:.72rem}

#doctor-dialog{width:min(1480px,calc(100vw - 24px));max-width:none;height:min(940px,calc(100vh - 24px));max-height:none;padding:0;border:0;border-radius:13px;background:#0c1720;color:var(--text);box-shadow:0 28px 100px #000b;overflow:hidden}
#doctor-dialog::backdrop{background:#061018dc;backdrop-filter:blur(7px)}
.doctor-dialog-card{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);background:#0c1922}
.doctor-dialog-head{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 17px;border-bottom:1px solid #304958;background:linear-gradient(90deg,#112633,#10202b);box-shadow:0 5px 20px #0710184d}
.doctor-dialog-head h2{margin:.15rem 0 0;font-size:1.14rem;letter-spacing:-.025em}.doctor-dialog-head p{margin:2px 0 0;color:#7f9bac;font-size:.62rem}
.doctor-dialog-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.doctor-save-state{min-width:115px;text-align:right;color:#7993a4;font-size:.63rem}.doctor-save-state.success{color:#9ed7bd}.doctor-save-state.error{color:var(--danger)}
.doctor-editor-body{min-height:0;overflow:auto;overscroll-behavior:contain;background:radial-gradient(circle at 85% 0,rgba(65,115,148,.1),transparent 32rem),#0d1a23}
.doctor-loading,.doctor-load-error{min-height:100%;display:grid;place-content:center;justify-items:center;gap:11px;text-align:center;color:#9fb5c4}
.doctor-loading i{width:28px;height:28px;border:2px solid #29495c;border-top-color:#8dc8e8;border-radius:50%;animation:doctor-spin .8s linear infinite}.doctor-loading strong{font-size:.72rem}
.doctor-load-error strong{font-size:1rem}.doctor-load-error span{font-size:.72rem;color:var(--muted)}
@keyframes doctor-spin{to{transform:rotate(360deg)}}
.doctor-editor-shell{min-height:100%;display:grid;grid-template-columns:270px minmax(0,1fr)}
.doctor-editor-rail{position:sticky;top:0;align-self:start;min-height:100%;height:calc(min(940px,100vh - 24px) - 75px);padding:20px 16px;border-right:1px solid #2a4352;background:linear-gradient(180deg,#102430,#0d1c25);overflow:auto}
.doctor-rail-specialty{display:grid;grid-template-columns:38px 1fr;gap:11px;padding-bottom:18px;border-bottom:1px solid #29414e}
.doctor-rail-orbit{position:relative;width:36px;height:36px;border:1px solid color-mix(in srgb,var(--doctor-accent) 50%,#2e5063);border-radius:50%}.doctor-rail-orbit:after{content:"";position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--doctor-accent) 36%,transparent);border-radius:50%}.doctor-rail-orbit i{position:absolute;right:1px;top:4px;width:5px;height:5px;border-radius:50%;background:var(--doctor-accent);box-shadow:0 0 8px var(--doctor-accent)}
.doctor-rail-specialty small,.doctor-rail-section>span{display:block;color:#7894a5;font-size:.52rem;letter-spacing:.14em;font-weight:850}.doctor-rail-specialty strong{display:block;margin-top:3px;font-size:.76rem;line-height:1.25}.doctor-rail-specialty p{margin:5px 0 0;color:#7892a3;font-size:.59rem;line-height:1.45}
.doctor-rail-section{margin-top:18px}.doctor-rail-section ol{list-style:none;margin:9px 0 0;padding:0;display:grid}
.doctor-rail-section li{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:8px 1px;border-bottom:1px solid #223946;color:#728b9b}
.doctor-rail-section li>span{display:flex;align-items:center;gap:7px;font-size:.64rem}.doctor-rail-section li>span i{width:5px;height:5px;border-radius:50%;background:#506b7b}.doctor-rail-section li strong{font-size:.54rem;letter-spacing:.07em;text-transform:uppercase}.doctor-rail-section li small{grid-column:1/-1;padding-left:12px;font-size:.53rem;color:#607988}.doctor-rail-section li.current{color:#c3dae5}.doctor-rail-section li.current>span i{background:var(--doctor-accent);box-shadow:0 0 7px color-mix(in srgb,var(--doctor-accent) 50%,transparent)}.doctor-rail-section li.draft strong{color:#e1bf88}
.doctor-safety-note{padding:11px;border:1px solid #2c4b5c;border-radius:8px;background:#102631}.doctor-safety-note p{margin:7px 0 0;color:#8ca6b6;font-size:.59rem;line-height:1.5}
.doctor-editor-main{min-width:0;padding:20px clamp(15px,2.2vw,30px) 38px;display:grid;align-content:start;gap:12px}
.doctor-pack-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding:18px;border:1px solid #315165;border-radius:11px;background:linear-gradient(130deg,#173142,#102530);box-shadow:0 10px 25px #07121a33}
.doctor-pack-hero h3{margin:.45rem 0 .25rem;font-size:clamp(1.25rem,2vw,1.75rem);letter-spacing:-.04em}.doctor-pack-hero p{max-width:720px;margin:0;color:#96adbb;font-size:.72rem;line-height:1.5}
.doctor-pack-status{display:flex;gap:5px;flex-wrap:wrap}.doctor-pack-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:max-content}
.doctor-view-switch{display:flex;padding:3px;border:1px solid #35566a;border-radius:8px;background:#10212c}.doctor-view-switch button{padding:.43rem .58rem;border:0;background:transparent;color:#7792a4;font-size:.62rem}.doctor-view-switch button:hover{background:#193344}.doctor-view-switch button.active{background:#284b61;color:#e1edf3;box-shadow:0 2px 7px #07131b66}
.doctor-publish{border-color:#8d7045;background:linear-gradient(180deg,#725834,#594328);color:#fff0ce;font-weight:800}.doctor-publish:hover{border-color:#b28b52;background:#7a5d35}
.doctor-pack-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #2d4757;border-radius:9px;background:#10212b;overflow:hidden}
.doctor-pack-facts>div{display:grid;gap:3px;padding:10px 13px;border-right:1px solid #29414f}.doctor-pack-facts>div:last-child{border:0}.doctor-pack-facts span{color:#6f8999;font-size:.52rem;letter-spacing:.1em;text-transform:uppercase}.doctor-pack-facts strong{font-size:.71rem;overflow-wrap:anywhere}
.doctor-metadata{border:1px solid #2c4656;border-radius:9px;background:#10212b;overflow:hidden}.doctor-metadata>summary,.doctor-question>summary{list-style:none}.doctor-metadata>summary::-webkit-details-marker,.doctor-question>summary::-webkit-details-marker{display:none}
.doctor-metadata>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 13px;cursor:pointer}.doctor-metadata>summary span{display:grid;gap:2px}.doctor-metadata>summary small{color:#718e9f;font-size:.52rem;letter-spacing:.12em;font-weight:850}.doctor-metadata>summary strong{font-size:.69rem}
.doctor-chevron{width:8px;height:8px;border-right:1px solid #8da7b6;border-bottom:1px solid #8da7b6;transform:rotate(45deg);transition:transform .15s}.doctor-metadata[open]>summary .doctor-chevron,.doctor-question[open]>summary .doctor-chevron{transform:rotate(225deg)}
#doctor-metadata-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 13px 13px;border-top:1px solid #29414f;padding-top:12px}.doctor-span-2{grid-column:1/-1}.doctor-form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.doctor-form-actions span{color:#748f9f;font-size:.6rem}
.doctor-metadata-readonly{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 13px;border-top:1px solid #29414f}.doctor-metadata-readonly>div{display:grid;gap:2px}.doctor-metadata-readonly span{font-size:.54rem;color:#718b9b;text-transform:uppercase;letter-spacing:.08em}.doctor-metadata-readonly strong{font-size:.68rem}.doctor-metadata-readonly p{grid-column:1/-1;margin:3px 0 0;color:#91a7b5;font-size:.66rem;line-height:1.5}
.doctor-question-library{display:grid;gap:9px}.doctor-question-toolbar{position:sticky;top:-1px;z-index:5;display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(165px,.8fr) minmax(145px,.6fr) auto;gap:8px;align-items:end;padding:10px;border:1px solid #315063;border-radius:9px;background:#102430f2;box-shadow:0 8px 18px #08141c80;backdrop-filter:blur(8px)}
.doctor-question-toolbar label{gap:4px;color:#819baa;font-size:.54rem;letter-spacing:.07em;text-transform:uppercase}.doctor-question-toolbar input,.doctor-question-toolbar select{min-height:35px;padding:.46rem .58rem;font-size:.67rem;text-transform:none;letter-spacing:0}
.doctor-toolbar-count{display:flex;align-items:center;justify-content:flex-end;gap:7px;height:35px}.doctor-toolbar-count span{color:#7e98a8;font-size:.58rem;white-space:nowrap}.doctor-toolbar-count button{height:35px;padding:.42rem .57rem;color:#d4e9f4;font-size:.62rem;white-space:nowrap}
.doctor-add-form{padding:14px;border:1px solid #49738a;border-radius:9px;background:linear-gradient(145deg,#173444,#112631)}.doctor-add-form[hidden]{display:none}.doctor-add-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:11px}.doctor-add-head>div{display:grid;gap:2px}.doctor-add-head small{color:#7ea2b6;font-size:.52rem;letter-spacing:.12em}.doctor-add-head strong{font-size:.81rem}.doctor-add-head button{padding:.15rem .5rem;font-size:1.1rem}
.doctor-question-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}.doctor-question-fields label{gap:5px;color:#9eb3c0;font-size:.59rem}.doctor-question-fields input,.doctor-question-fields textarea,.doctor-question-fields select{padding:.53rem .62rem;font-size:.68rem;line-height:1.45}.doctor-question-fields textarea{resize:vertical}
.doctor-add-form .doctor-form-actions{margin-top:11px;padding-top:10px;border-top:1px solid #2b4b5d}
.doctor-question-list{display:grid;gap:7px}.doctor-question{border:1px solid #2c4555;border-radius:9px;background:#10212b;overflow:hidden}.doctor-question[hidden]{display:none}.doctor-question.archived{border-style:dashed;opacity:.77}
.doctor-question>summary{display:grid;grid-template-columns:42px minmax(0,1fr) 12px;gap:10px;align-items:center;padding:11px 13px;cursor:pointer;transition:background .14s}.doctor-question>summary:hover{background:#142b38}.doctor-question[open]>summary{background:#142b38;border-bottom:1px solid #294553}
.doctor-question-number{font:750 .61rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:color-mix(in srgb,var(--doctor-accent) 76%,#9bb1bd);letter-spacing:.05em}.doctor-question-summary{min-width:0;display:grid;gap:3px}.doctor-question-summary small{color:#718e9e;font-size:.53rem;overflow-wrap:anywhere}.doctor-question-summary strong{font-size:.7rem;line-height:1.42;font-weight:650}.doctor-question-summary>span{color:#668292;font-size:.54rem}
.doctor-question-body{padding:13px;background:#0f202a}.doctor-question-form{display:grid;gap:11px}.doctor-question-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:10px;border-top:1px solid #29414f}.doctor-question-actions>div{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.doctor-question-actions button{padding:.42rem .58rem;font-size:.6rem}.doctor-concept{font:600 .56rem/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;color:#6f8998;overflow-wrap:anywhere}.doctor-readonly{color:#6f8998;font-size:.58rem;text-transform:uppercase;letter-spacing:.07em}
.doctor-filter-empty{padding:28px;text-align:center;border:1px dashed #385466;border-radius:9px;color:#718d9e;font-size:.68rem}
.doctor-filter-empty[hidden]{display:none}
.doctor-oracle{position:relative;overflow:hidden;margin-top:4px;padding:17px;border:1px solid #4f527c;border-radius:11px;background:radial-gradient(circle at 0 0,rgba(139,120,216,.14),transparent 24rem),linear-gradient(145deg,#192638,#112331)}
.doctor-oracle:focus{outline:2px solid #9992e8;outline-offset:2px}
.doctor-oracle:after{content:"";position:absolute;right:-70px;top:-80px;width:230px;height:230px;border:1px solid #7772b32e;border-radius:50%;box-shadow:inset 0 0 0 32px #7772b309,inset 0 0 0 64px #7772b309;pointer-events:none}
.doctor-oracle-head{position:relative;z-index:1;display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:center}.doctor-oracle-head h3{margin:.12rem 0 .18rem;font-size:.94rem}.doctor-oracle-head p{max-width:780px;margin:0;color:#92a4b4;font-size:.66rem;line-height:1.5}
.doctor-oracle-mark{position:relative;width:42px;height:42px;border:1px solid #817dcc;border-radius:50%;box-shadow:0 0 25px #736ed133}.doctor-oracle-mark:before,.doctor-oracle-mark:after{content:"";position:absolute;border-radius:50%;border:1px solid #7773b9}.doctor-oracle-mark:before{inset:8px}.doctor-oracle-mark:after{inset:15px}.doctor-oracle-mark span{position:absolute;z-index:1;right:2px;top:4px;width:5px;height:5px;border-radius:50%;background:#b0a8ff;box-shadow:0 0 8px #b0a8ff}.doctor-oracle-mark i{position:absolute;left:7px;bottom:5px;width:3px;height:3px;border-radius:50%;background:#75d1f8}
.doctor-oracle-form{position:relative;z-index:1;display:grid;gap:9px;margin-top:14px;padding-top:13px;border-top:1px solid #414966}.doctor-oracle-form>div:last-child{display:flex;align-items:center;justify-content:space-between;gap:14px}.doctor-oracle-form small{color:#778c9e;font-size:.57rem}.doctor-oracle-button{border-color:#6965a7;background:#37365e;color:#eceaff;font-weight:750}.doctor-oracle-button:hover{border-color:#928de0;background:#464478}
.doctor-oracle-context{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:8px 9px;border:1px solid #414d70;border-radius:7px;background:#172637}.doctor-oracle-context span{color:#928fb6;font-size:.54rem;text-transform:uppercase;letter-spacing:.08em}.doctor-oracle-context strong{font-size:.63rem;line-height:1.4}.doctor-oracle-context button{padding:.3rem .45rem;font-size:.57rem}
.doctor-oracle-locked{position:relative;z-index:1;display:grid;gap:3px;margin-top:13px;padding:11px;border:1px dashed #4a4f71;border-radius:8px}.doctor-oracle-locked strong{font-size:.69rem}.doctor-oracle-locked span{color:#8193a2;font-size:.61rem}
.doctor-oracle-results{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.doctor-oracle-summary{grid-column:1/-1;padding:10px 11px;border-left:2px solid #9992e8;background:#17273a}.doctor-oracle-summary span{color:#9995c8;font-size:.53rem;letter-spacing:.08em;text-transform:uppercase}.doctor-oracle-summary p{margin:4px 0 0;color:#c1cdd6;font-size:.66rem;line-height:1.45}
.doctor-suggestion{display:grid;align-content:start;gap:8px;padding:11px;border:1px solid #3d4c66;border-radius:8px;background:#132431}.doctor-suggestion-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.doctor-suggestion-head>span{padding:.21rem .38rem;border:1px solid #65709b;border-radius:999px;color:#c8c5f2;font-size:.51rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.doctor-suggestion-head>span.add{border-color:#477b6b;color:#aee2cc}.doctor-suggestion-head>span.archive{border-color:#7d5a50;color:#e9b8aa}.doctor-suggestion-head small{color:#7890a0;font-size:.54rem}
.doctor-suggestion-before,.doctor-suggestion-after{display:grid;gap:3px;padding:7px 8px;border-radius:6px;background:#10202b}.doctor-suggestion-after{border-left:2px solid #8d88d1}.doctor-suggestion-before span,.doctor-suggestion-after span{color:#777fa1;font-size:.5rem;text-transform:uppercase;letter-spacing:.08em}.doctor-suggestion-before p,.doctor-suggestion-after p{margin:0;color:#b7c6d0;font-size:.63rem;line-height:1.45}.doctor-suggestion-rationale{margin:0;color:#7f95a4;font-size:.59rem;line-height:1.45}.doctor-suggestion-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:auto;padding-top:2px}.doctor-suggestion-actions button{padding:.38rem .52rem;font-size:.58rem}.doctor-oracle-empty{grid-column:1/-1;padding:14px;border:1px dashed #434d68;border-radius:8px;text-align:center;color:#8192a1;font-size:.64rem}

@media(max-width:1180px){
  .doctor-specialty-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .doctor-editor-shell{grid-template-columns:220px minmax(0,1fr)}
  .doctor-question-toolbar{grid-template-columns:1fr 1fr 1fr}.doctor-toolbar-count{grid-column:1/-1;justify-content:space-between}
}
@media(max-width:900px){
  .doctor-library-heading{display:grid}.doctor-role-legend{justify-content:flex-start;max-width:none}
  .doctor-specialty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .doctor-editor-shell{display:block}.doctor-editor-rail{position:relative;height:auto;min-height:0;border:0;border-bottom:1px solid #2a4352;padding:13px 15px}.doctor-rail-specialty{padding:0;border:0}.doctor-rail-section{display:none}.doctor-editor-main{padding-top:14px}
  .doctor-pack-hero{display:grid}.doctor-pack-actions{justify-content:flex-start;min-width:0}.doctor-oracle-results{grid-template-columns:1fr}
}
@media(max-width:640px){
  .doctor-specialty-grid{grid-template-columns:1fr}.doctor-specialty-card{min-height:170px}.doctor-library-foot{display:grid}
  #doctor-dialog{width:calc(100vw - 10px);height:calc(100vh - 10px)}.doctor-dialog-head{padding:11px 12px}.doctor-dialog-head .eyebrow{font-size:.53rem}.doctor-dialog-head h2{font-size:.92rem}.doctor-dialog-head-actions{gap:5px}.doctor-save-state{min-width:0;max-width:110px;font-size:.54rem;line-height:1.25}
  .doctor-editor-main{padding:11px 9px 26px}.doctor-pack-hero{padding:13px;gap:14px}.doctor-pack-actions{display:grid;width:100%}.doctor-view-switch{display:grid;grid-template-columns:1fr 1fr}.doctor-pack-actions>button{width:100%}
  .doctor-pack-facts{grid-template-columns:1fr 1fr}.doctor-pack-facts>div:nth-child(2){border-right:0}.doctor-pack-facts>div:nth-child(-n+2){border-bottom:1px solid #29414f}
  #doctor-metadata-form,.doctor-question-fields{grid-template-columns:1fr}.doctor-span-2{grid-column:auto}.doctor-form-actions,.doctor-question-actions,.doctor-oracle-form>div:last-child{align-items:stretch;flex-direction:column}.doctor-question-actions>div{justify-content:flex-start}
  .doctor-question-toolbar{position:relative;grid-template-columns:1fr}.doctor-toolbar-count{grid-column:auto}.doctor-question>summary{grid-template-columns:34px minmax(0,1fr) 10px;padding:10px 9px}.doctor-question-summary strong{font-size:.66rem}
  .doctor-oracle-context{grid-template-columns:1fr}.doctor-metadata-readonly{grid-template-columns:1fr}.doctor-metadata-readonly p{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){.doctor-loading i{animation:none}.doctor-specialty-card:hover{transform:none}}


/* Vault-owned knowledge control plane. Separate from member practice Repository data. */
.vault-knowledge-panel{position:relative;overflow:hidden;background:linear-gradient(145deg,#10232e,#0f1c26 58%,#131f2a)}
.vault-knowledge-panel:after{content:"";position:absolute;right:-120px;top:-150px;width:410px;height:410px;border:1px solid #4d76902b;border-radius:50%;box-shadow:inset 0 0 0 62px #4d769009,inset 0 0 0 126px #4d769008;pointer-events:none}
.vault-knowledge-heading{position:relative;z-index:1}.vault-knowledge-heading p{max-width:780px}
.vault-knowledge-boundary{position:relative;z-index:1;display:flex;align-items:center;gap:11px;margin:0 0 16px;padding:10px 12px;border:1px solid #37566a;border-radius:9px;background:#132733}.vault-knowledge-boundary strong{white-space:nowrap;color:#b9e0ef;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.vault-knowledge-boundary span{color:#829dac;font-size:.64rem;line-height:1.45}
.vault-knowledge-connections{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.vault-knowledge-connections>div{display:grid;align-content:start;gap:4px;min-height:92px;padding:12px;border:1px solid #294653;border-radius:9px;background:#10212b}.vault-knowledge-connections>div.ready{border-color:#386c5d}.vault-knowledge-connections>div.attention{border-color:#67543b}.vault-knowledge-connections span{color:#73909f;font-size:.53rem;text-transform:uppercase;letter-spacing:.08em}.vault-knowledge-connections strong{font-size:.76rem}.vault-knowledge-connections small{color:#6f8998;font-size:.56rem;line-height:1.35}
.vault-knowledge-status{position:relative;z-index:1;display:flex;align-items:center;gap:8px;margin:12px 0;color:#8ca3b0;font-size:.63rem}.vault-knowledge-init{position:relative;z-index:1;margin-top:2px}
.vault-knowledge-workspace{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid #294653}
.vault-kb-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;align-content:start}.vault-kb-card{display:grid;gap:9px;padding:13px;border:1px solid #294653;border-radius:10px;background:#0f202a}.vault-kb-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.vault-kb-card-head>div>span{color:#6f8b9b;font-size:.49rem;letter-spacing:.08em}.vault-kb-card h3{margin:3px 0 0;font-size:.78rem}.vault-kb-card p{margin:0;color:#7f98a7;font-size:.61rem;line-height:1.45}.vault-kb-card>small{color:#617d8d;font:500 .52rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}
.vault-kb-stats{display:flex;gap:10px;flex-wrap:wrap;color:#6f8998;font-size:.54rem}.vault-kb-stats strong{color:#c0d1da}.vault-kb-empty{grid-column:1/-1;display:grid;gap:4px;padding:24px;border:1px dashed #385463;border-radius:10px;color:#7e99a8}.vault-kb-empty strong{color:#bdccd4;font-size:.73rem}.vault-kb-empty span{font-size:.61rem;line-height:1.45}
.vault-kb-create{display:grid;gap:10px;align-content:start;padding:14px;border:1px solid #365466;border-radius:10px;background:#132631}.vault-kb-create h3{margin:.15rem 0 .22rem;font-size:.86rem}.vault-kb-create p{margin:0;color:#8099a7;font-size:.61rem;line-height:1.45}.vault-kb-create label{display:grid;gap:5px;color:#87a1af;font-size:.57rem}.vault-kb-create input,.vault-kb-create textarea{width:100%;border:1px solid #35505f;border-radius:7px;background:#0d1e27;color:#d7e1e6;padding:.58rem .64rem;font:inherit}.vault-kb-create textarea{resize:vertical}.vault-kb-create label small{color:#617b89;font-size:.5rem}.vault-kb-create .state{min-height:16px}
@media(max-width:980px){.vault-knowledge-connections{grid-template-columns:repeat(2,minmax(0,1fr))}.vault-knowledge-workspace{grid-template-columns:1fr}.vault-kb-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.vault-knowledge-boundary{align-items:flex-start;flex-direction:column}.vault-knowledge-connections,.vault-kb-list{grid-template-columns:1fr}.vault-knowledge-heading{display:grid;gap:12px}}


/* Console readability: calm surfaces, clear sections and persistent orientation. */
.section-nav{position:sticky;top:0;z-index:20;display:flex;gap:5px;align-items:center;overflow-x:auto;padding:10px 0;margin:0 0 20px;background:var(--bg);border-bottom:1px solid var(--line);scrollbar-width:thin}
.section-nav a{flex:0 0 auto;padding:9px 13px;border:1px solid transparent;border-radius:7px;color:var(--muted);font-size:.86rem;font-weight:650;text-decoration:none}
.section-nav a:hover{background:var(--panel);color:var(--text)}
.section-nav a[aria-current="location"]{background:var(--panel2);border-color:var(--line);color:var(--text);box-shadow:inset 0 -3px var(--accent)}
#app>section[id]{scroll-margin-top:88px}
#app>.panel,#app>.split-grid{margin-top:24px}
.command-grid,.split-grid{gap:20px}
.panel{padding:24px}
.panel-heading{margin-bottom:20px}
.panel-heading h2,.doctor-library-heading h2{font-size:1.3rem;letter-spacing:-.02em}
.panel-heading p,.doctor-library-heading p,.title-block p,.onboarding p{font-size:.88rem;line-height:1.6}
.eyebrow{font-size:.7rem;letter-spacing:.1em;color:var(--muted)}
.platform-boundary{margin-bottom:20px;padding:16px 18px;background:var(--panel);border-color:var(--line-soft)}
.platform-boundary strong,.platform-boundary span{font-size:.8rem;color:var(--muted)}
.metric-strip{margin-bottom:20px;background:var(--panel)}
.metric-strip>div{padding:18px}
.metric-strip span{font-size:.86rem}.metric-strip small{font-size:.78rem;color:var(--muted)}
.access-summary{gap:12px;margin-top:18px}.access-summary>div{background:var(--panel2);padding:18px}
.access-summary span{font-size:.75rem;letter-spacing:.04em}
.control-row{padding:16px 2px}.control-row strong{font-size:.94rem}.control-row small{font-size:.8rem;line-height:1.5}.control-row b{font-size:.8rem}
.timestamp,.table-summary,.open-work,.legend,.group-title small,.service-row small,.empty-small,.state{font-size:.8rem}
.service-name{font-size:.9rem}.service-row{padding:13px 2px}
label,.triage-control{font-size:.8rem;color:var(--muted)}
.triage-control input,.triage-control select{font-size:.9rem;min-height:42px}
.app-grid,.doctor-specialty-grid{gap:12px}
.app-card,.doctor-specialty-card,.vault-knowledge-connections>div,.vault-kb-card,.vault-kb-create,.billing-row{background:var(--panel2);border-color:var(--line-soft)}
.app-card{padding:16px}.app-card h3{font-size:1rem}.app-card p{font-size:.85rem;line-height:1.55}
.app-section,.app-card-foot>span,.state-chip,.quiet-button{font-size:.75rem;color:var(--muted)}
.app-section{letter-spacing:.05em}.app-card-head{flex-wrap:wrap}
.doctor-library-panel,.vault-knowledge-panel{background:var(--panel)}
.doctor-library-panel:before,.vault-knowledge-panel:after,.doctor-specialty-card:before,.doctor-card-orbit{display:none}
.doctor-specialty-card:hover,.doctor-specialty-card:focus-visible{background:#414f5c;transform:none}
.doctor-card-copy{padding-right:0}.doctor-card-copy strong{font-size:1rem;line-height:1.4}
.doctor-card-copy small,.doctor-card-foot>b,.doctor-library-foot,.doctor-library-foot span:first-child{font-size:.8rem;color:var(--muted)}
.doctor-card-kicker,.doctor-pack-chip,.doctor-role-legend span{font-size:.69rem;letter-spacing:.04em}
.vault-knowledge-boundary{background:var(--field);border-color:var(--line-soft)}
.vault-knowledge-boundary strong,.vault-knowledge-boundary span,.vault-knowledge-status{font-size:.8rem;color:var(--muted)}
.vault-knowledge-connections span,.vault-knowledge-connections small,.vault-kb-stats,.vault-kb-card>small,.vault-kb-card-head>div>span{font-size:.75rem;color:var(--muted)}
.vault-knowledge-connections strong,.vault-kb-card h3{font-size:.95rem}
.vault-kb-card p,.vault-kb-empty span,.vault-kb-create p,.vault-kb-create label,.vault-kb-create label small{font-size:.8rem;color:var(--muted)}
.billing-main strong{font-size:.95rem}.billing-main small,.billing-evidence small,.billing-main .billing-sub-id,.billing-updated,.billing-imported{font-size:.8rem;color:var(--muted)}
.billing-action button,.billing-state{font-size:.75rem}
.billing-row:hover,.billing-row:focus-visible{background:#414f5c;border-color:var(--accent)}
.billing-row-attention{border-left:3px solid var(--warm)}
.billing-alert{background:#3c3831}.billing-alert strong{font-size:.9rem}.billing-alert span{font-size:.8rem;color:#d0c6b6}
.billing-empty{background:var(--field)}.billing-empty strong{font-size:.9rem}.billing-empty span{font-size:.8rem}
.timeline-row{padding:12px 2px}.timeline-row strong{font-size:.9rem}.timeline-row small,.timeline-row time{font-size:.78rem}
th{background:var(--field);color:var(--muted);font-size:.75rem;letter-spacing:.06em}td,td strong{font-size:.88rem}td small{font-size:.77rem}
.tag,.access-chip,.view-as-link{font-size:.72rem}.platform-only{font-size:.7rem!important;color:var(--muted)!important}
footer{font-size:.78rem;color:var(--muted);padding-top:24px}
.login-card{width:min(460px,100%)}.login-card p{font-size:.9rem}.login-card label{font-size:.85rem}
@media(max-width:900px){.doctor-library-heading{flex-direction:column}.doctor-role-legend{justify-content:flex-start}}
@media(max-width:640px){
  #app{width:calc(100% - 24px)}.panel{padding:18px}#app>.panel,#app>.split-grid{margin-top:20px}
  .section-nav{margin-bottom:16px}.section-nav a{padding:10px;font-size:.8rem}
  .timeline-row{grid-template-columns:8px minmax(0,1fr)}.timeline-row time{grid-column:2}
  .doctor-library-foot{align-items:flex-start;flex-direction:column;gap:8px}
}

/* Professional dark console: neutral depth, crisp text and restrained section accents. */
body{background:#0c1119;color-scheme:dark}
#app{
  --bg:#0c1119;--panel:#151d29;--panel2:#233044;--field:#101824;
  --line:#506079;--line-soft:#39495f;--text:#f0f4fa;--muted:#b8c6d8;
  --accent:#69b4ff;--accent-fill:#2069d5;--warm:#efba63;--danger:#ffb0a5;--external:#a6b4c7;
  --shadow:0 6px 20px #00000020;color:var(--text);color-scheme:dark
}
#app>.section-nav{background:var(--bg)}
.section-nav a[aria-current="location"]{background:#203b60;border-color:#4d91df;color:#f5f8ff;box-shadow:inset 0 -3px #69b4ff}
#app>.panel,#app>.command-grid>.panel,#app>.split-grid>.panel{border:1px solid #36465c;border-top:3px solid var(--section-accent,#6786aa);border-radius:10px;background:var(--panel)}
.command-grid .panel{--section-accent:#6786aa}
#vault-knowledge-panel{--section-accent:#57adff}
#question-library{--section-accent:#ad92ff;--panel2:#252d42}
#billing{--section-accent:#54d5c0}
#readiness{--section-accent:#77d59d}
#setup>.panel{--section-accent:#57adff}
#practices{--section-accent:#54d5c0}
#activity{--section-accent:#91a3c5}
.panel-heading h2,.doctor-library-heading h2{font-size:1.4rem;font-weight:700;color:#f4f7fc}
.panel-heading .eyebrow,.doctor-library-heading .eyebrow{color:var(--section-accent,#97b9df)}
#app>.panel,#app>.split-grid{margin-top:32px}
.platform-boundary{background:#141f2e;border-color:#3c526c}
.metric-strip{background:#192434}
.access-summary>div{background:#233044}
#app button:hover,#app .button:hover{background:#30435d;border-color:#6d92bd}
#app button.primary,#app .primary{background:#2069d5;color:#fff;border-color:#438bee;box-shadow:none}
#app button.primary:hover,#app .primary:hover{background:#2773df;color:#fff}
#app .control-row:hover{background:transparent;color:#79bdff}
#app .group-title span{color:#cbd9e9}
#app .doctor-card-kicker{color:#c3b2ff;letter-spacing:.08em}
#app .doctor-specialty-card{border-color:#52607a;padding:18px;min-height:210px}
#app .doctor-specialty-card:hover,#app .doctor-specialty-card:focus-visible{background:#343d59;border-color:#ad92ff;box-shadow:0 0 0 1px #ad92ff}
#app .doctor-card-copy strong{font-size:1.02rem;color:#f4f6ff}
#app .doctor-role-legend span{color:#d1c5f6;background:#302b46;border-color:#71628e}
#app .doctor-role-legend .active{color:#b6daff;background:#203b58;border-color:#4f7ca8}
#app .doctor-pack-chip{color:#a7ebcb;background:#173d31;border-color:#3d8668}
#app .doctor-pack-chip.draft{color:#ffda98;background:#44351f;border-color:#947440}
#app .doctor-pack-chip.empty{color:#c0cede;background:#293647;border-color:#596c83}
#app .doctor-card-foot{border-color:#4d5a74}
#app .doctor-card-foot>b{color:#d3def0}#app .doctor-card-foot>b i{color:#c3b2ff;font-size:1rem}
#app .vault-knowledge-boundary{background:#14283c;border-color:#3f6588}
#app .vault-knowledge-connections>div{background:#233044}
#app .vault-kb-empty{color:var(--muted);border-color:var(--line)}
#app .vault-kb-empty strong{color:var(--text)}
#app .vault-kb-create input,#app .vault-kb-create textarea{background:var(--field);color:var(--text);border-color:var(--line)}
#app .billing-row{background:#233044;border-color:#465a73;padding:16px 18px}
#app .billing-row:nth-child(even){background:#1c293b}
#app .billing-row:hover,#app .billing-row:focus-visible{background:#30445e;border-color:#73b9ff}
#app .billing-main strong{color:#f2f6fc;font-size:1rem}
#app .billing-state,#app .tag,#app .access-chip{color:#a7ebcb;background:#173d31;border-color:#3d8668}
#app .billing-state.attention,#app .billing-state.state-paused,#app .access-chip.pending{color:#ffda98;background:#44351f;border-color:#947440}
#app .billing-state.state-delinquent,#app .billing-state.state-cancelled,#app .tag.suspended,#app .access-chip.hold{color:#ffc1b7;background:#482c2b;border-color:#995e55}
#app .tag.test{color:#d6c6ff;background:#352b4f;border-color:#79649d}
#app .billing-alert{background:#352c20;border-color:#92713e}
#app .billing-alert strong{color:#ffda98}#app .billing-alert span{color:#dfcfb3}
#app .billing-alert-list{border-color:#80683f}
#app .billing-empty{background:#192434;border-color:#506079}
#app .action-flash{background:#16392e;color:#b5f0d4;border-color:#4b9276}
#app .login-card{background:#192434}
#app .login-card a{color:#79bdff}
#app input::placeholder,#app textarea::placeholder{color:#a8bad0;opacity:1}
#app footer{color:#a8bad0}
@media(max-width:640px){#app>.panel,#app>.split-grid{margin-top:24px}}
dialog{color-scheme:dark;color:var(--text)}
