:root {
  --bg: #080a08;
  --panel: #11140f;
  --panel-soft: #171b14;
  --line: rgba(237, 241, 222, 0.14);
  --line-strong: rgba(201, 244, 91, 0.42);
  --ink: #f0f2e8;
  --muted: #91998c;
  --acid: #c9f45b;
  --orange: #ff8b61;
  --mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  --sans: "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }

html { min-width: 320px; background: var(--bg); }

body.login-page {
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  color: var(--ink);
  background:
    radial-gradient(circle at 82% 10%, rgba(201, 244, 91, 0.12), transparent 28rem),
    radial-gradient(circle at 9% 91%, rgba(255, 139, 97, 0.08), transparent 24rem),
    var(--bg);
  font-family: var(--sans);
}

.login-page::before {
  position: fixed;
  inset: 0;
  pointer-events: none;
  content: "";
  background-image:
    linear-gradient(rgba(237, 241, 222, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(237, 241, 222, 0.035) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, #000 45%, transparent 100%);
}

.auth-noise {
  position: fixed;
  inset: 0;
  z-index: 4;
  pointer-events: none;
  opacity: 0.025;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}

.auth-header {
  position: relative;
  z-index: 2;
  display: flex;
  width: min(1380px, calc(100% - 64px));
  min-height: 82px;
  margin: 0 auto;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--line);
}

.auth-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--ink);
  font: 700 0.68rem var(--mono);
  letter-spacing: 0.13em;
  text-decoration: none;
}

.auth-brand-mark {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  color: var(--bg);
  background: var(--acid);
  font-size: 0.78rem;
  letter-spacing: -0.08em;
}

.secure-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--muted);
  font: 0.58rem var(--mono);
  letter-spacing: 0.1em;
}

.secure-label i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--acid);
  box-shadow: 0 0 0 4px rgba(201, 244, 91, 0.1);
}

.auth-layout {
  position: relative;
  z-index: 1;
  display: grid;
  width: min(1260px, calc(100% - 64px));
  min-height: calc(100vh - 82px);
  margin: 0 auto;
  padding: clamp(58px, 9vh, 110px) 0 80px;
  grid-template-columns: minmax(0, 1.2fr) minmax(370px, 0.8fr);
  align-items: center;
  gap: clamp(52px, 9vw, 140px);
}

.auth-manifesto { max-width: 720px; }
.auth-index { margin: 0 0 24px; color: var(--orange); font: 0.64rem var(--mono); letter-spacing: 0.14em; }

.auth-manifesto h1 {
  margin: 0;
  font-size: clamp(3.6rem, 7.2vw, 7.6rem);
  font-weight: 400;
  letter-spacing: -0.085em;
  line-height: 0.88;
}

.auth-copy {
  max-width: 520px;
  margin: 34px 0 0;
  color: var(--muted);
  font-size: clamp(0.92rem, 1.3vw, 1.08rem);
  line-height: 1.8;
}

.auth-facts {
  display: grid;
  margin-top: 64px;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--line);
}

.auth-facts div { min-width: 0; padding: 18px 15px 0 0; }
.auth-facts span { display: block; margin-bottom: 24px; color: var(--orange); font: 0.56rem var(--mono); }
.auth-facts strong { display: block; overflow: hidden; color: var(--ink); font: 0.6rem var(--mono); letter-spacing: 0.07em; text-overflow: ellipsis; }
.auth-facts small { display: block; margin-top: 9px; color: var(--muted); font-size: 0.7rem; line-height: 1.45; }

.auth-card {
  position: relative;
  width: 100%;
  padding: clamp(26px, 4vw, 42px);
  border: 1px solid var(--line);
  background: linear-gradient(150deg, rgba(201, 244, 91, 0.055), transparent 48%), rgba(17, 20, 15, 0.94);
  box-shadow: 0 32px 100px rgba(0, 0, 0, 0.34);
  backdrop-filter: blur(18px);
}

.auth-card::after {
  position: absolute;
  top: -1px;
  right: -1px;
  width: 58px;
  height: 58px;
  border-top: 1px solid var(--acid);
  border-right: 1px solid var(--acid);
  content: "";
}

.auth-card-head { display: flex; align-items: center; gap: 17px; }
.auth-symbol { display: grid; width: 48px; height: 48px; flex: 0 0 auto; place-items: center; border: 1px solid var(--line-strong); color: var(--acid); background: rgba(201, 244, 91, 0.05); }
.auth-symbol svg { width: 24px; fill: currentColor; }
.auth-card-head p { margin: 0 0 6px; color: var(--orange); font: 0.55rem var(--mono); letter-spacing: 0.1em; }
.auth-card-head h2 { margin: 0; font-size: 1.34rem; font-weight: 400; letter-spacing: -0.035em; }
.auth-message { min-height: 44px; margin: 30px 0 22px; padding-bottom: 20px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 0.82rem; line-height: 1.65; }
.auth-message.error { color: #ff9a79; }
.auth-message.success { color: var(--acid); }
.auth-panel[hidden] { display: none; }

.primary-action {
  display: flex;
  width: 100%;
  min-height: 56px;
  padding: 0 18px;
  border: 1px solid var(--acid);
  align-items: center;
  justify-content: space-between;
  color: var(--bg);
  background: var(--acid);
  cursor: pointer;
  font: 700 0.75rem var(--mono);
  letter-spacing: 0.035em;
  transition: transform 160ms ease, background 160ms ease;
}

.primary-action:hover { transform: translateY(-2px); background: #d6ff70; }
.primary-action:disabled { cursor: wait; opacity: 0.6; transform: none; }
.primary-action b { font-size: 1.1rem; font-weight: 400; }
.action-note { margin: 14px 0 0; color: var(--muted); font-size: 0.68rem; line-height: 1.55; }

.setup-intro { margin: 0 0 22px; color: var(--muted); font-size: 0.79rem; line-height: 1.65; }
.setup-form, .recovery-form { display: grid; gap: 9px; }
.setup-form label, .recovery-form label { margin-top: 7px; color: var(--muted); font: 0.58rem var(--mono); letter-spacing: 0.08em; }
.setup-form input, .recovery-form input {
  width: 100%;
  height: 48px;
  padding: 0 13px;
  border: 1px solid var(--line);
  border-radius: 0;
  outline: 0;
  color: var(--ink);
  background: var(--panel-soft);
  font: 0.8rem var(--mono);
}
.setup-form input:focus, .recovery-form input:focus { border-color: var(--acid); box-shadow: 0 0 0 2px rgba(201, 244, 91, 0.08); }
.setup-form .primary-action { margin-top: 15px; }

.recovery-box { margin-top: 24px; border-top: 1px solid var(--line); }
.recovery-box summary { padding: 18px 0 0; color: var(--muted); cursor: pointer; font-size: 0.72rem; }
.recovery-form { margin-top: 17px; }
.recovery-form button, .recovery-code-row button {
  min-height: 42px;
  border: 1px solid var(--line);
  color: var(--ink);
  background: transparent;
  cursor: pointer;
  font: 0.66rem var(--mono);
}
.recovery-form button:hover, .recovery-code-row button:hover { border-color: var(--acid); color: var(--acid); }

.success-kicker { margin: 0 0 10px; color: var(--acid); font: 0.58rem var(--mono); letter-spacing: 0.12em; }
.recovery-result h3 { margin: 0; font-size: 1.3rem; font-weight: 400; }
.recovery-result > p:not(.success-kicker) { color: var(--muted); font-size: 0.76rem; line-height: 1.65; }
.recovery-code-row { display: grid; margin: 22px 0; grid-template-columns: 1fr auto; }
.recovery-code-row code { display: flex; min-width: 0; padding: 0 13px; border: 1px solid var(--line); align-items: center; overflow: auto; color: var(--acid); background: var(--panel-soft); font: 0.76rem var(--mono); white-space: nowrap; }
.recovery-code-row button { padding: 0 14px; border-left: 0; }

.auth-card-foot { display: flex; margin-top: 34px; padding-top: 15px; border-top: 1px solid var(--line); justify-content: space-between; color: #666d63; font: 0.5rem var(--mono); letter-spacing: 0.07em; }
.auth-error { color: var(--orange); }

@media (max-width: 900px) {
  .auth-layout { grid-template-columns: 1fr; align-items: start; gap: 56px; }
  .auth-manifesto { max-width: 650px; }
  .auth-manifesto h1 { font-size: clamp(3.6rem, 12vw, 6.8rem); }
  .auth-card { width: min(100%, 560px); }
}

@media (max-width: 620px) {
  .auth-header, .auth-layout { width: min(100% - 30px, 560px); }
  .auth-header { min-height: 70px; }
  .secure-label { display: none; }
  .auth-layout { min-height: calc(100vh - 70px); padding-top: 46px; }
  .auth-manifesto h1 { font-size: clamp(3.1rem, 17vw, 5rem); }
  .auth-copy { margin-top: 26px; }
  .auth-facts { margin-top: 42px; grid-template-columns: 1fr; }
  .auth-facts div { display: grid; padding: 13px 0; border-bottom: 1px solid var(--line); grid-template-columns: 34px 120px 1fr; align-items: center; gap: 8px; }
  .auth-facts span, .auth-facts strong, .auth-facts small { margin: 0; }
  .auth-facts small { font-size: 0.63rem; }
  .auth-card { padding: 25px 20px; }
  .auth-card-foot { gap: 9px; flex-wrap: wrap; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}

/* RUOYE_RUNTIME_LIGHT_V1 */
:root {
  color-scheme: light;
  --bg: #f3f0e8;
  --panel: rgba(252, 250, 245, .82);
  --panel-soft: #ece8df;
  --line: rgba(21, 24, 29, .15);
  --line-strong: rgba(217, 75, 48, .45);
  --ink: #15181d;
  --muted: rgba(21, 24, 29, .58);
  --acid: #148b86;
  --orange: #d94b30;
}

html { background: var(--bg); }
body.login-page { color: var(--ink); background: var(--bg); isolation: isolate; }
.login-page::before {
  z-index: -2;
  background-image:
    radial-gradient(rgba(21, 24, 29, .22) .55px, transparent .75px),
    radial-gradient(rgba(217, 75, 48, .34) .55px, transparent .75px),
    repeating-linear-gradient(to bottom, transparent 0 3px, rgba(21, 24, 29, .025) 4px);
  background-position: 0 0, 37px 29px, 0 0;
  background-size: 46px 46px, 83px 83px, 100% 4px;
  mask-image: linear-gradient(to bottom, #000, rgba(0, 0, 0, .55) 68%, transparent);
}
.auth-noise { z-index: -1; opacity: 1; background: radial-gradient(circle at 64% 44%, rgba(217, 75, 48, .11), transparent 27rem); }
.auth-noise::before,
.auth-noise::after { position: absolute; top: 47%; left: 62%; display: block; border-radius: 50%; content: ""; translate: -50% -50%; }
.auth-noise::before {
  width: min(66vw, 830px);
  aspect-ratio: 1;
  background: conic-gradient(from 18deg, transparent 0 9%, rgba(88, 102, 212, .52) 13%, transparent 20% 31%, rgba(217, 75, 48, .62) 35%, transparent 42% 58%, rgba(20, 139, 134, .54) 62%, transparent 69% 84%, rgba(217, 75, 48, .4) 88%, transparent 94%);
  -webkit-mask: radial-gradient(circle, transparent 0 57%, #000 57.4% 58%, transparent 58.4% 70%, #000 70.4% 71.2%, transparent 71.6%);
  mask: radial-gradient(circle, transparent 0 57%, #000 57.4% 58%, transparent 58.4% 70%, #000 70.4% 71.2%, transparent 71.6%);
  mix-blend-mode: multiply;
  opacity: .62;
  animation: auth-spectrum-spin 21s linear infinite;
}
.auth-noise::after {
  width: min(15vw, 175px);
  aspect-ratio: 1;
  background: conic-gradient(from 80deg, rgba(217, 75, 48, .84), rgba(88, 102, 212, .68), rgba(20, 139, 134, .72), rgba(217, 75, 48, .84));
  -webkit-mask: radial-gradient(circle, transparent 0 52%, #000 54%);
  mask: radial-gradient(circle, transparent 0 52%, #000 54%);
  mix-blend-mode: multiply;
  opacity: .64;
  animation: auth-spectrum-spin 8s linear infinite reverse;
}
@keyframes auth-spectrum-spin { to { rotate: 360deg; } }

.auth-header { border-color: var(--line); }
.auth-brand-mark { width: 38px; height: 38px; border: 1px solid var(--line); color: var(--ink); background: rgba(252, 250, 245, .74); }
.secure-label i { background: var(--acid); box-shadow: 0 0 0 4px rgba(20, 139, 134, .1); }
.auth-manifesto h1 { font-family: Arial, Helvetica, sans-serif; font-weight: 800; letter-spacing: -.09em; }
.auth-card { border-color: var(--line); background: var(--panel); box-shadow: 0 30px 90px rgba(21, 24, 29, .13); }
.auth-card::after { border-color: var(--orange); }
.auth-symbol { color: var(--orange); background: rgba(217, 75, 48, .05); }
.auth-card-head p, .auth-index { color: var(--orange); }
.primary-action { border-color: var(--ink); color: var(--bg); background: var(--ink); }
.primary-action:hover { border-color: var(--orange); background: var(--orange); }
.setup-form input, .recovery-form input, .recovery-code-row code { background: var(--panel-soft); }
.setup-form input:focus, .recovery-form input:focus { border-color: var(--orange); box-shadow: 0 0 0 2px rgba(217, 75, 48, .08); }
.auth-card-foot { color: rgba(21, 24, 29, .36); }

@media (max-width: 620px) {
  .auth-noise::before { top: 35%; left: 58%; width: 150vw; opacity: .38; }
  .auth-noise::after { top: 35%; left: 58%; width: 36vw; }
}

@media (prefers-reduced-motion: reduce) {
  .auth-noise::before, .auth-noise::after { animation: none; }
}

/* RUOYE_RUNTIME_PARTICLES_V2 */
.runtime-particle-field {
  position: fixed;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: .88;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.login-page .runtime-particle-field { opacity: .82; }
.console-page > :not(.runtime-particle-field):not(.ambient-grid) { position: relative; z-index: 1; }
.login-page > :not(.runtime-particle-field):not(.auth-noise) { position: relative; z-index: 1; }

@media (max-width: 620px) {
  .runtime-particle-field { opacity: .68; }
}

@media (prefers-reduced-motion: reduce) {
  .runtime-particle-field { opacity: .58; }
}

/* RUOYE_DESK_THEME_BEGIN */
/* Shared with the homepage's desk palette and the Console theme. */
:root {
  --desk-bg: #edf4f5;
  --desk-paper: #fffdf7;
  --desk-surface: #f7faf6;
  --desk-mint: #dcebe1;
  --desk-green: #47776b;
  --desk-ink: #294542;
  --desk-muted: #627a73;
  --desk-line: #d3e0d9;
  --desk-orange: #b66b42;
  --desk-peach: #fae5d4;
  --desk-font: 'Trebuchet MS', Arial, 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --desk-shadow: 0 4px 0 #d8e4dc, 0 16px 36px #45645309;
  --desk-radius: 20px;
}
/* RUOYE_DESK_CONSOLE_V1 */
:root {
  color-scheme:light;
  --console-bg:var(--desk-bg); --console-panel:var(--desk-paper); --console-panel-2:#e4eee6;
  --console-line:var(--desk-line); --console-ink:var(--desk-ink); --console-muted:var(--desk-muted);
  --console-acid:var(--desk-green); --console-orange:var(--desk-orange); --console-sans:var(--desk-font);
  --bg:var(--desk-bg); --panel:var(--desk-paper); --panel-soft:#e6efe6; --surface:var(--desk-paper); --surface-solid:var(--desk-paper);
  --line:var(--desk-line); --line-strong:#b8cdbf; --ink:var(--desk-ink); --muted:var(--desk-muted);
  --acid:var(--desk-green); --orange:var(--desk-orange); --accent:var(--desk-green); --accent-soft:var(--desk-mint);
  --blue:#729ba8; --mint:#638d76; --danger:#a74132; --sans:var(--desk-font); --shadow:var(--desk-shadow);
  font-family:var(--desk-font);
}
html{background:var(--desk-bg)}body.console-page,body.login-page,body{color:var(--desk-ink);background:radial-gradient(ellipse at 68% 0,#fffaf0 0,transparent 650px),var(--desk-bg);font-family:var(--desk-font)}
.console-page::before,.login-page::before,body::after,.ambient-grid,.auth-noise,.runtime-particle-field{display:none!important}
[hidden]{display:none!important}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--desk-orange);outline-offset:3px}
.shell-wide{width:min(1220px,calc(100% - 64px))}.console-header,.auth-header,.tokenbar-console-header{background:transparent;backdrop-filter:none;min-height:94px;border-color:var(--desk-line)}
.brand,.auth-brand,.runtime-console-brand{font:700 13px var(--desk-font);letter-spacing:1px;gap:15px}.brand-mark,.auth-brand-mark,.runtime-console-mark,.brand-mark.small{display:block;width:auto;height:auto;padding-right:7px;border:0;border-radius:0;background:transparent;color:var(--desk-ink);font:800 40px/.95 var(--desk-font);letter-spacing:-6px;text-transform:lowercase;box-shadow:none}.brand-mark>span,.auth-brand-mark>span{color:#e57d50}
.console-nav a,.runtime-console-nav a{font:14px var(--desk-font);letter-spacing:0;border-radius:9px;padding:10px 13px}.console-nav a.active,.console-nav a:hover,.runtime-console-nav a.active{color:var(--desk-green);border-color:#bcd2c3;background:#dcebe1}.console-actions{gap:9px;flex-wrap:wrap}.viewer-pill{background:#fffdf7;border-radius:10px;font:12px var(--desk-font);letter-spacing:0;padding:10px}
.refresh-button,.secondary-button,.logout-button,.filter,.primary-action,.recovery-form button,.recovery-code-row button,.primary-button,.quiet-button,.icon-button,.scope-tab{min-height:42px;border-radius:10px;font-family:var(--desk-font);font-size:13px;letter-spacing:0}
.refresh-button,.primary-action,.primary-button{color:#fffdf7;border:1px solid var(--desk-green);background:var(--desk-green);box-shadow:0 3px 0 #30594f}.refresh-button:hover,.primary-action:hover,.primary-button:hover{background:#365e54;border-color:#365e54;transform:translateY(-1px)}.secondary-button,.logout-button,.quiet-button,.icon-button{background:var(--desk-paper);border-color:#c5d6ca;color:var(--desk-muted)}.logout-button:hover{color:#a74731;border-color:#c78364}.filter.active,.filter:hover{background:var(--desk-mint);color:var(--desk-green);border-color:#a6c5b2}
.console-main{padding:44px 0 80px}.console-intro{margin-bottom:28px;gap:25px}.console-intro h1,.auth-manifesto h1,.intro h1,.login h1{font:650 clamp(32px,4vw,47px)/1.45 var(--desk-font);letter-spacing:0}.kicker,.auth-index,.eyebrow{font:12px var(--console-mono,Consolas,monospace);letter-spacing:1px;color:var(--desk-orange)}.updated-at{font:12px var(--desk-font);line-height:1.7;letter-spacing:0}
.metric-grid{gap:17px;margin-bottom:48px}.metric-card,.status-card,.agent-card,.card,.device-card,.login-card{border-radius:19px;border:1px solid var(--desk-line);background:var(--desk-paper);box-shadow:var(--desk-shadow);backdrop-filter:none}.metric-card{min-height:164px;padding:23px}.metric-card p{font-size:15px;margin-bottom:22px}.metric-card strong{font:600 clamp(29px,3.5vw,43px)/1.1 var(--desk-font);letter-spacing:-1px}.metric-card>span,.chart-title span,.bar-label{font:12px var(--desk-font);letter-spacing:0}.primary-metric{color:var(--desk-ink);border-color:#bed5c5;background:#dcebe1}.primary-metric strong{color:#365f50}.primary-metric p,.primary-metric>span{color:var(--desk-muted)}.metric-card:nth-child(3){background:#faeada}.metric-card:hover,.status-card:hover{transform:translateY(-2px);border-color:#a6c7b0;box-shadow:var(--desk-shadow)}
.bar,.chart-bar{border-radius:5px 5px 0 0;background:#81aa91}.chart-bar-wrap:last-child .chart-bar{background:#dca276}.console-section{margin-top:42px}.section-heading{margin-bottom:19px;border-color:var(--desk-line)}.section-heading h2{font:600 22px/1.5 var(--desk-font);letter-spacing:0}.section-index,.section-heading>span{font:12px var(--desk-font);letter-spacing:.5px}.status-card{padding:21px}.status-card h3{font:600 18px var(--desk-font)}.status-card p,.status-card dl,.status-card span{font-size:13px}.health-dot.online,.live-dot{background:#6e9a7e;box-shadow:0 0 0 4px #dcebdc}.table-wrap{border:1px solid var(--desk-line);border-radius:17px;background:var(--desk-paper);box-shadow:var(--desk-shadow);overflow:auto}table{font-family:var(--desk-font)}th{font-size:12px;color:#667e71;background:#e5eee6}td{font-size:13px;line-height:1.7}tbody tr:hover td{background:#edf3e9}.event-service{color:var(--desk-green)}.visitor-code{color:var(--desk-orange)}.identity-note,.empty-state{font:13px/1.8 var(--desk-font)}
.passkey-dialog{border-radius:22px;border:1px solid var(--desk-line);background:var(--desk-paper);padding:28px;box-shadow:0 20px 70px #29454230}.passkey-dialog::backdrop{background:#29454255}.dialog-head h2{font:600 24px var(--desk-font)}.dialog-copy,.passkey-status,.passkey-dialog label{font-size:14px;line-height:1.8}.passkey-dialog input{border-radius:10px;background:#edf3e9;font-size:15px}.dialog-close{border-radius:50%}
/* Login uses the same drawer and material colors as the desk. */
.auth-header{width:min(1200px,calc(100% - 64px))}.secure-label{font:12px var(--desk-font);letter-spacing:.5px}.secure-label i{background:#6e9a7e;box-shadow:0 0 0 4px #dcebdc}.auth-layout{width:min(1120px,calc(100% - 64px));grid-template-columns:1fr 1fr;gap:80px;min-height:calc(100vh - 94px);padding:50px 0 75px}.auth-index{margin-bottom:18px}.auth-manifesto h1{margin:0 0 20px;font-size:44px}.auth-copy{font-size:16px;line-height:1.9;margin:22px 0 0;max-width:470px}.auth-facts{margin-top:30px;border-color:var(--desk-line);gap:16px}.auth-facts div{padding:16px 0 0}.auth-facts span{font-size:12px;margin-bottom:12px}.auth-facts strong{font:600 12px var(--desk-font);letter-spacing:0}.auth-facts small{font-size:13px;line-height:1.7}.auth-card{padding:32px;border-radius:25px;border:1px solid #cbdcd0;background:var(--desk-paper);box-shadow:0 6px 0 #d4e2d8,0 25px 60px #365d4e0c;backdrop-filter:none}.auth-card::after{display:none}.auth-symbol{border-radius:14px;width:54px;height:54px;border-color:#dec5a4;color:#b47747;background:#fae7cd;box-shadow:0 3px 0 #ead2ae}.auth-card-head h2{font:600 23px/1.5 var(--desk-font);letter-spacing:0}.auth-card-head p{font:12px var(--desk-font);letter-spacing:0;color:var(--desk-orange)}.auth-message{font-size:15px;line-height:1.8;margin:24px 0}.auth-message.error,.auth-error{color:#a34231}.auth-message.success{color:#3c7457}.auth-card .primary-action{min-height:52px;font-size:15px;padding:0 18px}.action-note,.setup-intro,.recovery-result>p:not(.success-kicker){font-size:14px;line-height:1.8}.setup-form label,.recovery-form label{font:13px var(--desk-font);letter-spacing:0}.setup-form input,.recovery-form input{min-height:46px;font:16px var(--desk-font);border-radius:11px;background:#edf3e9;border-color:#c9d9ce}.setup-form input:focus,.recovery-form input:focus{border-color:#79a58a;box-shadow:0 0 0 3px #dcebdc}.recovery-box summary{font-size:14px}.recovery-code-row code{border-radius:9px;background:#edf3e9;font-size:14px}.auth-card-foot{font:11px var(--desk-font);color:#84968d;letter-spacing:.5px}.auth-card-foot span{font-size:11px}
.desk-console-object{position:relative;width:160px;height:130px;margin:0 0 28px 15px;border:9px solid #82aa99;border-top-width:14px;border-radius:11px;background:#97baaa;box-shadow:7px 9px 0 #668e7c,15px 19px 20px #456b5820;transform:rotate(-6deg)}.desk-console-object i{position:relative;display:block;height:27px;margin:4px 0 7px;border:1px solid #ccbca0;border-radius:4px;background:#f4e2bb;box-shadow:0 2px 0 #b6a27e}.desk-console-object i::after{content:'';position:absolute;left:50%;top:10px;transform:translateX(-50%);width:30px;height:5px;border-radius:4px;background:#bda06c}.desk-console-object b{position:absolute;right:-26px;top:-35px;width:58px;height:43px;border:2px solid #dfd2b6;border-radius:5px;background:linear-gradient(145deg,transparent 49%,#d4c4a7 50%,transparent 52%),linear-gradient(215deg,#fff7e1 49%,#e4d7bb 50%,#fff7e1 52%);transform:rotate(14deg);box-shadow:0 4px 0 #dfcfb1}
/* The remaining Console views share the same readable components. */
.control-strip{padding:19px;border:1px solid var(--desk-line);border-radius:16px;background:var(--desk-paper);backdrop-filter:none}.control-strip label span,.control-strip p{font:13px var(--desk-font);letter-spacing:0}.control-strip select{min-height:44px;border-radius:10px;font:14px var(--desk-font);background:#edf3e9}.selection-caption,.source-details-copy{font:14px/1.9 var(--desk-font)}.host-group-header h2{font:600 25px/1.5 var(--desk-font)}.host-group-header code,.agent-id{font-size:12px}.metric-directions small{font-size:12px;letter-spacing:0}.metric-directions b{font-size:13px}.agent-card::after{width:4px;border-radius:0 16px 16px 0}.agent-head h3{font-size:17px}.agent-state,.agent-meta{font-size:12px}.chart-legend{font-size:13px;border-radius:0 0 14px 14px;background:var(--desk-paper)}.traffic-chart{border-radius:14px 14px 0 0;background:var(--desk-paper)}.host-empty{border-radius:15px;background:var(--desk-paper)}.page-error{border-radius:12px;background:#fff0e4;color:#8c4834;font:14px/1.7 var(--desk-font);box-shadow:var(--desk-shadow)}
.tokenbar-console-header{background:transparent;backdrop-filter:none}.topbar{background:transparent;border-color:var(--desk-line)}.intro h1{font-size:42px}.scope-tabs{border-radius:12px;background:#e6eee7}.scope-tab.active{color:var(--desk-green);background:#cedfcf}.metric,.notice{border-radius:12px}.os-icon{border-radius:10px;color:var(--desk-green);background:var(--desk-mint)}input,select{border-radius:10px;color:var(--desk-ink);background:var(--desk-paper)}
@media(prefers-color-scheme:dark){:root{color-scheme:light;--bg:var(--desk-bg);--surface:var(--desk-paper);--surface-solid:var(--desk-paper);--ink:var(--desk-ink);--muted:var(--desk-muted);--line:var(--desk-line);--accent:var(--desk-green);--accent-soft:var(--desk-mint);--shadow:var(--desk-shadow)}body{background:radial-gradient(ellipse at 68% 0,#fffaf0 0,transparent 650px),var(--desk-bg)}.topbar{background:transparent}input,select,.icon-button,.quiet-button,.device-card{background:var(--desk-paper)}.scope-tabs{background:#e6eee7}}
@media(max-width:950px){.console-header{flex-wrap:wrap;gap:16px;padding:20px 0}.console-nav{margin-left:15px}.console-actions{margin-left:auto}.auth-layout{gap:35px;grid-template-columns:1fr 1fr}.auth-manifesto h1{font-size:37px}.auth-card{padding:25px}.metric-grid{gap:13px}.metric-card{padding:19px}.auth-card-head h2{font-size:21px}}
@media(max-width:680px){.shell-wide,.auth-header,.auth-layout,.tokenbar-console-header{width:calc(100% - 32px)}.console-header{min-height:80px;gap:13px}.brand-mark,.auth-brand-mark,.runtime-console-mark{font-size:35px}.console-nav{margin:0 0 0 auto;gap:2px}.console-nav a,.runtime-console-nav a{font-size:13px;padding:9px}.console-actions{width:100%;gap:8px;justify-content:flex-start}.console-actions button{padding:9px 11px;font-size:12px}.viewer-pill{font-size:11px;padding:9px}.console-main{padding-top:30px}.console-intro{align-items:flex-start;flex-direction:column;gap:12px}.console-intro h1{font-size:33px}.updated-at{font-size:12px}.metric-grid{grid-template-columns:1fr 1fr;gap:13px}.metric-card{min-height:155px;padding:17px}.metric-card p{font-size:14px}.metric-card strong{font-size:30px}.metric-card>span{font-size:11px}.status-grid{grid-template-columns:1fr}.section-heading h2{font-size:20px}.table-wrap th,.table-wrap td{font-size:12px}.auth-header{min-height:80px}.auth-brand{font-size:11px;gap:12px}.secure-label{font-size:10px}.auth-layout{display:flex;flex-direction:column;align-items:stretch;gap:27px;padding:28px 0 50px}.auth-manifesto h1{font-size:34px}.auth-copy{font-size:15px}.desk-console-object{float:right;transform:scale(.63) rotate(-6deg);transform-origin:top right;margin:0;width:150px;height:127px;margin-bottom:-36px}.auth-facts{display:none}.auth-card{padding:24px;border-radius:21px}.auth-card-head h2{font-size:21px}.auth-symbol{width:45px;height:45px}.auth-card-foot{font-size:10px}.control-strip{gap:13px}.control-strip select{width:100%}.metric-directions b{font-size:12px}.traffic-metrics .metric-card{min-height:185px}.host-group-header h2{font-size:23px}.runtime-console-nav{gap:3px}.tokenbar-console-header{min-height:80px}.intro h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){.metric-card,.status-card,.primary-action,.refresh-button{transition:none;transform:none}}
@media(max-width:680px){.desk-console-object{margin-right:16px}.auth-manifesto{min-width:0}}
/* RUOYE_DESK_THEME_END */
