/* Console refinement layer — keeps WarmPix's pixel identity with calmer hierarchy. */
:root { --text-muted:#aaaec1; --bg:#10131c; --bg-card:#191e2b; --border:#30384b; --cyan:#50d9d0; --green:#67dab0; --purple:#b69cfa; --pink:#f7a5bf; }
:root[data-theme="light"] { --text-muted:#566077; --bg:#f1f4f9; --bg-card:#fff; --border:#d8dfeb; --cyan:#096f79; --green:#18774d; --purple:#714db4; --pink:#af4267; }
body { margin:0; line-height:1.55; -webkit-font-smoothing:antialiased; }
button,input,a { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
button:disabled { cursor:wait; opacity:.62; }
button:focus-visible,a:focus-visible,input:focus-visible { outline:3px solid var(--cyan); outline-offset:4px; }
.boot-screen { min-height:100svh; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:18px; padding:28px; text-align:center; }
.boot-screen h1 { font-size:24px; letter-spacing:.24em; margin:0; }
.boot-screen p { color:var(--text-muted); max-width:450px; }
.boot-mark { display:grid; place-items:center; width:68px; height:68px; background:var(--cyan); color:var(--bg); font-weight:900; font-size:36px; box-shadow:6px 6px 0 var(--border); }
.login-page { min-height:100svh; max-width:1440px; margin:auto; padding:110px 7vw 64px; position:relative; gap:8vw; align-items:center; grid-template-columns:minmax(0,1.05fr) minmax(320px,.85fr); }
.auth-toolbar { position:absolute; top:30px; left:7vw; right:7vw; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.console-label { font-size:11px; letter-spacing:.2em; font-weight:700; color:var(--text-muted); }
.auth-toolbar>div { display:flex; gap:8px; }
.auth-toolbar button { border:1px solid var(--border); color:var(--text); background:var(--bg-card); padding:9px 13px; min-width:44px; min-height:44px; font:inherit; }
.login-left { min-width:0; text-align:left; align-items:flex-start; padding:32px 0; }
.login-shield { margin:0 0 36px; filter:none; }
.login-brand { font-size:clamp(28px,4vw,50px); line-height:1.35; letter-spacing:.035em; text-shadow:none; }
.login-tagline { color:var(--text); font-size:clamp(20px,2.4vw,31px); line-height:1.5; margin-top:22px; }
.login-chips { justify-content:flex-start; gap:9px; margin-top:26px; flex-wrap:wrap; }
.login-chips .px-chip { font-family:inherit; font-size:11px; padding:7px 11px; color:var(--text-muted); border-color:var(--border); background:var(--bg-card); letter-spacing:.035em; }
.auth-context { border-top:1px solid var(--border); margin-top:38px; padding-top:24px; max-width:430px; }
.auth-context span { font-size:10px; letter-spacing:.12em; font-weight:700; color:var(--cyan); }
.auth-context p { font-size:14px; color:var(--text-muted); line-height:1.9; margin:14px 0 0; }
.login-right { min-width:0; width:100%; padding:0; }
.login-card { width:100%; max-width:470px; margin:auto; padding:36px; background:var(--bg-card); border:1px solid var(--border); box-shadow:8px 8px 0 color-mix(in srgb,var(--border) 50%,transparent); }
.login-card-header h2 { font-family:inherit; font-size:25px; letter-spacing:.015em; line-height:1.4; }
.login-card-sub { color:var(--text-muted); line-height:1.6; margin-bottom:27px; }
.login-form .input { height:52px; min-width:0; width:100%; font-size:16px; border:1px solid var(--border); border-radius:3px; }
.login-form .form-group label { display:block; margin-bottom:8px; color:var(--text); font-size:13px; font-weight:600; }
.login-form .form-group { margin-bottom:20px; }
.login-form .icon-eye { border:0; background:transparent; height:44px; min-width:40px; color:var(--text-muted); font-size:20px; padding:5px; }
.login-form .login-submit { min-height:52px; font-family:inherit; font-weight:700; font-size:15px; letter-spacing:.06em; margin-top:12px; }
.px-check input[type="checkbox"] { display:inline-block!important; opacity:1!important; position:static!important; width:17px; height:17px; appearance:auto; accent-color:var(--cyan); margin:0 9px 0 0; }
.px-check .px-box { display:none!important; }
.auth-feedback { color:var(--red); font-size:13px; line-height:1.6; margin:0; min-height:0; }
.auth-feedback:not(:empty) { padding:12px; border:1px solid color-mix(in srgb,var(--red) 40%,var(--border)); background:color-mix(in srgb,var(--red) 7%,transparent); margin:12px 0; }
.auth-security { display:flex; align-items:center; justify-content:center; gap:8px; color:var(--text-muted); font-size:12px; margin-top:22px; padding-top:20px; border-top:1px solid var(--border); }
.text-action { color:var(--cyan); background:none; border:none; padding:9px 0; font:inherit; }
.topbar { max-width:1440px; margin:auto; padding:16px 28px; gap:24px; }
.topbar .nav { min-width:0; }
.topbar .nav button { min-height:42px; }
.page { max-width:1280px; margin:0 auto; padding:34px 28px 60px; }
.dash-head { position:relative; margin-bottom:25px; }
.dash-title { font-size:25px; line-height:1.5; }
.dash-sub { line-height:1.7; color:var(--text-muted); }
.data-status { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 16px; margin-top:18px; border:1px solid var(--border); background:var(--bg-card); color:var(--text-muted); font-size:12px; }
.data-status span::before { content:""; width:6px; height:6px; display:inline-block; margin-right:9px; background:var(--green); }
.data-status.warning { border-color:var(--yellow); }
.data-status.warning span::before { background:var(--yellow); }
.data-status button { color:var(--cyan); background:none; border:0; padding:5px 9px; min-height:32px; white-space:nowrap; font:inherit; }
.stats-grid { gap:20px; align-items:stretch; }
.card { min-width:0; border-color:var(--border); padding:24px; }
.card-title { letter-spacing:.04em; line-height:1.6; margin-bottom:22px; }
.sub-info-row { gap:15px; padding:10px 0; }
.sub-info-value { min-width:0; overflow-wrap:anywhere; }
.quota-pct { font-size:34px; line-height:1.25; }
.cd-num { font-size:28px; font-variant-numeric:tabular-nums; }
.node-row { min-height:56px; }
.measurement-note { margin:18px 0 0; color:var(--text-muted); font-size:11px; line-height:1.8; }
.user-menu.is-open .dropdown,.user-menu:focus-within .dropdown { display:block; opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); }
#wp-notifications { position:fixed; z-index:10000; left:20px; right:20px; bottom:max(24px,env(safe-area-inset-bottom)); pointer-events:none; display:flex; justify-content:center; }
#wp-notifications .toast { position:static; transform:none; max-width:580px; padding:14px 20px; font-size:14px; line-height:1.6; background:var(--bg-card); color:var(--text); border:1px solid var(--border); box-shadow:4px 4px 0 var(--border); overflow-wrap:anywhere; }
@media(max-width:900px) { .login-page{gap:5vw;padding-left:5vw;padding-right:5vw}.auth-toolbar{left:5vw;right:5vw}.login-card{padding:28px}.topbar{gap:12px;padding:15px 20px}.topbar .brand{font-size:14px}.stats-grid{gap:14px}.card{padding:19px}.page{padding:25px 20px 50px} }
@media(max-width:680px) {
  .login-page{display:block;padding:100px 22px 40px;min-height:100svh}.auth-toolbar{left:22px;right:22px;top:22px}.login-left{padding:0 0 32px;text-align:left;align-items:flex-start}.login-shield{display:none}.login-brand{font-size:27px}.login-tagline{font-size:19px;margin-top:14px}.auth-context{display:none}.login-chips{margin-top:16px}.login-card{padding:25px;max-width:none}.login-card-header h2{font-size:23px}.login-right{width:100%}
  .topbar{flex-wrap:wrap;position:relative;gap:12px;padding:16px}.topbar .brand{order:0}.topbar .actions{order:1;margin-left:auto}.topbar .nav{order:2;width:100%;overflow-x:auto;justify-content:space-between;scrollbar-width:none}.topbar .nav button{padding:12px 11px;white-space:nowrap}.topbar .nav .tab-tx{font-size:12px}.page{padding:22px 16px 38px}.stats-grid{grid-template-columns:1fr;gap:16px}.dash-title{font-size:23px}.data-status{gap:8px;font-size:11px;padding:10px}.data-status span{overflow-wrap:anywhere}.card{padding:22px}.card-title{margin-bottom:20px}.dash-sub{font-size:12px}.acct-em{max-width:80px}.dropdown{right:0;max-width:calc(100vw - 32px)}
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.blink{opacity:1} }
