/* Visual-only control center theme. Visibility, authentication and data states stay intact. */
:root{--bg:#07101e;--panel:#101f34;--panel2:#132840;--text:#f0f6ff;--muted:#a1b3c9;--line:rgba(126,178,224,.2);--yellow:#ffda66;--blue:#48adff}
body{background:radial-gradient(ellipse at 12% 0,rgba(24,119,242,.12),transparent 48%),#07101e;color:#f0f6ff}
body>.topbar,body>.top,header.topbar{background:#091627;border-bottom-color:rgba(126,178,224,.2);box-shadow:0 8px 32px #0002}
.panel,.card,.editor,.side,.provider,.control-center{border-color:rgba(126,178,224,.18);background:linear-gradient(150deg,rgba(19,39,62,.96),rgba(9,23,40,.98));box-shadow:0 14px 40px #0002,inset 0 1px #ffffff08}
.panel{border-radius:20px}.card{border-radius:27px}.eyebrow{color:#85d7ff}.muted,.tiny,.note{color:#a0b3ca}
button,a,input,select,textarea{transition:background-color .18s,border-color .18s,box-shadow .18s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8edfff;outline-offset:3px}
input:not([type=checkbox]):not([type=range]):not([type=radio]),select,textarea{border-color:#365374;background-color:#071628;color:#eff6ff;border-radius:10px}
button.yellow,a.yellow{background:linear-gradient(150deg,#ffe794,#ffd05a);color:#142138;box-shadow:0 7px 20px #ffd45a12,inset 0 1px #fff8}
.ghost,.btn.secondary{background:#142c47;border-color:#42678e;color:#d9eaff}.control-tool{border-color:#2f5376;background:linear-gradient(140deg,#193b60,#0d243e)}.control-tool:hover{background:#1b436d;border-color:#75d6ff}
.badge,.pill{letter-spacing:.02em}.table-wrap{overflow:auto}th{color:#a9c4df}td{border-color:#1e3550}.topbar a,.session-bar a{min-height:36px}.field{min-width:0}.panel h2{letter-spacing:-.025em}
@media(max-width:760px){.panel{border-radius:16px}.topbar{height:auto;min-height:64px;flex-wrap:wrap;gap:12px;padding-top:15px;padding-bottom:15px}.topbar .links{flex-wrap:wrap;gap:8px}.crumbs{min-width:0;flex-wrap:wrap}.shell{max-width:calc(100% - 28px)}input,select,textarea{font-size:16px!important}.button-row{flex-wrap:wrap}.topbar .brand{white-space:nowrap}.card{border-radius:20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media(max-width:760px){
 .workspace,.grid,.two-col,.slots{grid-template-columns:minmax(0,1fr)!important;min-width:0}
 .shell,.workspace,.side,.editor,.panel,.card,.hero,.settings-grid,.grid>*{min-width:0;max-width:100%}
 .shell{width:calc(100% - 28px);padding-left:0;padding-right:0}
 .tabs,.button-row,.inline,.panel-head,.session-actions,.topbar .right{flex-wrap:wrap;min-width:0}
 .tabs button{min-width:0;flex:1 1 42%;padding:12px 8px}
 .field input,.field select,.field textarea,.inline input{min-width:0;max-width:100%}
 h1{font-size:clamp(28px,9vw,44px)!important;overflow-wrap:anywhere}
 .panel h2,.editor h2,.side h2{overflow-wrap:anywhere}
 .topbar>*{max-width:100%;min-width:0}.topbar{align-items:flex-start}
 .characters,.difficulty-options{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .topbar .actions{flex-wrap:wrap;justify-content:flex-start}
}
@media(max-width:760px){.admin-topbar{position:relative;display:flex;flex-wrap:wrap;height:auto;min-height:90px;padding:16px;gap:14px;align-items:center}.admin-brand{white-space:nowrap;flex:1 0 100%;width:auto}.admin-title{position:static;transform:none;display:none}.portal-session{position:static!important;display:flex;flex-wrap:wrap;gap:7px;width:100%;max-width:100%;transform:none!important}.portal-session a,.portal-session button{min-height:36px;display:inline-flex;align-items:center}.portal-session .user-chip{max-width:100%;overflow-wrap:anywhere}}
