/* OneMoney Liquid UI, adapted to WindAdmin's teal and navy identity. */
body.om-theme {
  color-scheme: light;
  --om-ink: #13243c;
  --om-muted: #52657f;
  --om-blue: #2369c8;
  --om-blue-dark: #123f7c;
  --om-bg: #edf5ff;
  --om-positive: #087e5b;
  --om-negative: #bb4356;
  --om-line: rgba(126, 157, 198, .28);
  --om-surface: linear-gradient(145deg, rgba(255,255,255,.82), rgba(239,247,255,.66));
  --om-shadow: 0 15px 40px rgba(48,88,145,.11), inset 0 1px rgba(255,255,255,.9);
  --bg: var(--om-bg);
  --white: rgba(255,255,255,.78);
  --ink: var(--om-ink);
  --muted: var(--om-muted);
  --border: var(--om-line);
  --teal: #087e83;
  --teal-dark: #07676c;
  --light-teal: #e7f4f3;
  --nav: #123f52;
  --shadow: var(--om-shadow);
  --radius: 22px;
  min-height: 100vh;
  min-height: 100svh;
  color: var(--om-ink);
  background:
    radial-gradient(circle at 4% 0, rgba(91,174,255,.26), transparent 29rem),
    radial-gradient(circle at 96% 7%, rgba(207,163,255,.22), transparent 31rem),
    linear-gradient(180deg, #edf5ff, #f8fbff 50%, #edf4ff);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 14px;
  line-height: 1.45;
}

body.om-theme,
body.om-theme * { box-sizing: border-box; }
body.om-theme :where(button, input, textarea, select) { font-family: inherit; }
body.om-theme :is(a, button, input, textarea, select, summary):focus-visible {
  outline: 3px solid #3986df;
  outline-offset: 3px;
}
body.om-theme input:not([type="radio"]),
body.om-theme textarea,
body.om-theme select {
  border-color: rgba(124,153,191,.43);
  border-radius: 12px;
  background: rgba(255,255,255,.82);
  color: var(--om-ink);
  box-shadow: inset 0 1px rgba(255,255,255,.95);
}
body.om-theme input:focus,
body.om-theme textarea:focus,
body.om-theme select:focus {
  border-color: #4388d5;
  box-shadow: 0 0 0 3px rgba(35,105,200,.14);
}
body.om-theme input::placeholder,
body.om-theme textarea::placeholder { color: #7789a1; }
body.om-theme input[type="radio"],
body.om-theme input[type="checkbox"] { accent-color: var(--teal); }

body.om-theme .sidebar {
  background:
    radial-gradient(circle at 10% 0, rgba(63,151,181,.24), transparent 20rem),
    linear-gradient(165deg, rgba(18,63,82,.97), rgba(16,46,54,.98));
  border-right: 1px solid rgba(255,255,255,.12);
  box-shadow: 12px 0 38px rgba(28,69,112,.08);
  -webkit-backdrop-filter: blur(22px) saturate(145%);
  backdrop-filter: blur(22px) saturate(145%);
}
body.om-theme .workspace {
  border-color: rgba(255,255,255,.16);
  border-radius: 14px;
  background: rgba(255,255,255,.07);
}
body.om-theme .sidebar nav { gap: 5px; }
body.om-theme .sidebar nav a {
  min-height: 42px;
  border-radius: 12px;
  transition: background .16s ease, color .16s ease, transform .16s ease;
}
body.om-theme .sidebar nav a.active {
  color: #e9fffb;
  background: linear-gradient(120deg, rgba(22,133,139,.45), rgba(67,116,191,.25));
  box-shadow: inset 0 0 0 1px rgba(177,238,232,.13);
}
body.om-theme .sidebar nav a.active svg { color: #a9eee1; }
body.om-theme .sidebar nav a:hover { background-color: rgba(255,255,255,.1); }

body.om-theme .main-shell { min-width: 0; }
body.om-theme .topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  border-bottom-color: rgba(126,157,198,.24);
  background: rgba(248,251,255,.72);
  -webkit-backdrop-filter: blur(22px) saturate(150%);
  backdrop-filter: blur(22px) saturate(150%);
}
body.om-theme main { max-width: 1540px; }
body.om-theme footer { border-top-color: rgba(126,157,198,.26); }
body.om-theme .breadcrumb,
body.om-theme .topbar-domain { color: #52657f; }
body.om-theme .host-status { color: #087e5b; }

body.om-theme h1 {
  color: #13243c;
  font-weight: 760;
  letter-spacing: -.045em;
}
body.om-theme h2 { color: #183653; font-weight: 720; }
body.om-theme .eyebrow { color: #087e83; }
body.om-theme .page-heading { margin-bottom: 25px; }
body.om-theme .page-heading p,
body.om-theme .muted { color: #52657f; }
body.om-theme .heading-dot { color: #087e83; }

body.om-theme .panel,
body.om-theme .stat-card,
body.om-theme .setup-banner,
body.om-theme .server-mini,
body.om-theme .creation-summary,
body.om-theme .aside-help,
body.om-theme .auth-card,
body.om-theme .deploy-file,
body.om-theme .identity-preview,
body.om-theme .assigned-developer,
body.om-theme .quota-overview {
  border: 1px solid rgba(255,255,255,.88);
  border-radius: var(--radius);
  background: var(--om-surface);
  box-shadow: var(--om-shadow);
  -webkit-backdrop-filter: blur(22px) saturate(150%);
  backdrop-filter: blur(22px) saturate(150%);
}
body.om-theme .panel { overflow: hidden; }
body.om-theme .panel-heading {
  border-bottom-color: rgba(126,157,198,.18);
}
body.om-theme .panel-heading h2 > svg { color: #397da9; }
body.om-theme .panel-foot { background: rgba(232,242,255,.48); }
body.om-theme .stat-card { transition: transform .16s ease, box-shadow .16s ease; }
body.om-theme .stat-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 19px 42px rgba(48,88,145,.15), inset 0 1px rgba(255,255,255,.95);
}
body.om-theme .stat-card > strong { color: #173f70; font-variant-numeric: tabular-nums; }
body.om-theme .stat-card > small,
body.om-theme .panel-heading p,
body.om-theme .cell-note,
body.om-theme .flow-list p,
body.om-theme .server-mini > small,
body.om-theme .help-text { color: #5b7087; }
body.om-theme .stat-icon.teal { background: rgba(211,242,237,.8); color: #087e83; }
body.om-theme .stat-icon.green { background: rgba(212,240,226,.84); color: #087e5b; }
body.om-theme .stat-icon.blue { background: rgba(218,232,250,.82); color: #2369c8; }
body.om-theme .stat-icon.sand { background: rgba(248,235,212,.84); color: #8e681e; }
body.om-theme .setup-banner {
  color: var(--om-ink);
  background: linear-gradient(125deg, rgba(226,243,250,.86), rgba(235,231,255,.72));
}
body.om-theme .banner-icon { background: rgba(255,255,255,.64); color: #087e83; }
body.om-theme .banner-cta { color: #075b83; }
body.om-theme .server-mini {
  background: linear-gradient(145deg, rgba(230,242,253,.82), rgba(245,239,255,.68));
}
body.om-theme .server-mini p { color: #52657f; }
body.om-theme .server-load { border-top-color: var(--om-line); }

body.om-theme .button {
  min-height: 42px;
  border-radius: 12px;
  font-size: 12px;
  transition: transform .16s ease, background .16s ease, box-shadow .16s ease, border-color .16s ease;
}
body.om-theme .button.primary {
  border-color: rgba(8,126,131,.4);
  background: linear-gradient(135deg, #087e83, #2369c8);
  box-shadow: 0 7px 18px rgba(35,105,200,.18), inset 0 1px rgba(255,255,255,.23);
}
body.om-theme .button.primary:hover:not(:disabled) {
  background: linear-gradient(135deg, #07676c, #194f9c);
  box-shadow: 0 9px 22px rgba(35,105,200,.24);
  transform: translateY(-1px);
}
body.om-theme .button.secondary {
  border-color: rgba(126,157,198,.34);
  background: rgba(255,255,255,.72);
  color: #234568;
  box-shadow: 0 5px 15px rgba(48,88,145,.07), inset 0 1px rgba(255,255,255,.95);
}
body.om-theme .button.secondary:hover:not(:disabled) {
  border-color: rgba(67,136,213,.46);
  background: rgba(255,255,255,.94);
}
body.om-theme .button.danger {
  border-color: rgba(187,67,86,.23);
  background: rgba(255,245,246,.86);
  color: #a33b50;
}
body.om-theme .button.tiny { min-height: 34px; }
body.om-theme .button:disabled { cursor: not-allowed; }
body.om-theme .icon-button { border-radius: 10px; }
body.om-theme .icon-button:hover { background: rgba(35,105,200,.09); }
body.om-theme .avatar { background: #dceafb; color: #194f83; }
body.om-theme .sidebar .avatar { background: #36606a; color: #d4e7ea; }

body.om-theme .status {
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 10px;
  font-weight: 650;
}
body.om-theme .status.done,
body.om-theme .status.success { background: rgba(212,240,226,.82); color: #146448; }
body.om-theme .status.running,
body.om-theme .status.queued { background: rgba(218,232,250,.84); color: #245b98; }
body.om-theme .status.error { background: rgba(255,230,229,.86); color: #a33b50; }
body.om-theme .status.waiting_dns { background: rgba(250,239,214,.9); color: #805b1c; }
body.om-theme .status.neutral { background: rgba(230,238,247,.8); color: #52657f; }
body.om-theme .count { border-radius: 999px; background: rgba(218,232,250,.75); color: #315d8c; }

body.om-theme th {
  border-top-color: rgba(126,157,198,.15);
  border-bottom-color: rgba(126,157,198,.22);
  background: rgba(232,242,255,.42);
  color: #52657f;
  font-size: 10px;
}
body.om-theme td { border-bottom-color: rgba(126,157,198,.18); }
body.om-theme tbody tr { transition: background .14s ease; }
body.om-theme tbody tr:hover { background: rgba(223,237,255,.34); }
body.om-theme .app-avatar { border-radius: 13px; background: rgba(218,232,250,.84); color: #315c94; }
body.om-theme .app-avatar.purple { background: rgba(235,226,251,.86); color: #7055a3; }
body.om-theme .app-avatar.blue { background: rgba(218,232,250,.84); color: #315c94; }
body.om-theme .domain-link,
body.om-theme .back-link,
body.om-theme .recovery-link { color: #2369a5; }
body.om-theme .panel-foot { border-top-color: rgba(126,157,198,.19); }

body.om-theme .notice,
body.om-theme .key-callout,
body.om-theme .domain-box,
body.om-theme .resource-box,
body.om-theme .code-box,
body.om-theme .log-box,
body.om-theme .recovery-grid,
body.om-theme .qr-row {
  border-radius: 16px;
}
body.om-theme .notice.subtle {
  border-color: rgba(126,157,198,.28);
  background: rgba(229,240,253,.62);
  color: #3c5878;
}
body.om-theme .notice.success { background: rgba(223,244,234,.78); }
body.om-theme .notice.error { background: rgba(255,233,232,.84); }
body.om-theme .empty-icon,
body.om-theme .auth-icon,
body.om-theme .section-number {
  border-radius: 16px;
  background: rgba(218,238,247,.75);
  color: #237f8e;
}
body.om-theme .flow-list li > span { background: rgba(213,239,239,.84); color: #087e83; }
body.om-theme .flow-list li:not(:last-child)::after { background: rgba(126,157,198,.28); }
body.om-theme .flow-footer { color: #087e5b; }
body.om-theme .advanced > summary { min-height: 42px; }
body.om-theme .advanced[open] { border-color: rgba(126,157,198,.3); }
body.om-theme .toast {
  border: 1px solid rgba(255,255,255,.75);
  border-radius: 16px;
  background: rgba(18,63,82,.94);
  box-shadow: 0 16px 40px rgba(22,54,92,.23);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

body.om-theme .auth-layout {
  width: min(1240px, calc(100% - 40px));
  min-height: calc(100svh - 40px);
  margin: 20px auto;
  padding: 12px;
  gap: 12px;
  border: 1px solid rgba(255,255,255,.9);
  border-radius: 30px;
  background: rgba(255,255,255,.42);
  box-shadow: var(--om-shadow);
  -webkit-backdrop-filter: blur(22px) saturate(150%);
  backdrop-filter: blur(22px) saturate(150%);
}
body.om-theme .auth-story {
  border-radius: 23px;
  background: linear-gradient(145deg, #123f7c, #3f55a8 58%, #087e83);
}
body.om-theme .auth-story .brand-mark { color: #b7f1e5; }
body.om-theme .auth-story .eyebrow { color: #b9eae5; }
body.om-theme .auth-story .auth-intro h1 { color: #f2f7ff; }
body.om-theme .auth-story .auth-intro > p { color: #d4e2f4; }
body.om-theme .auth-story .auth-promises,
body.om-theme .auth-story .auth-footer { color: #d4e2f4; }
body.om-theme .auth-visual { margin: 48px 0 34px; }
body.om-theme .visual-node {
  border-color: rgba(255,255,255,.22);
  border-radius: 16px;
  background: rgba(255,255,255,.13);
  color: #f0f7ff;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
body.om-theme .visual-apps > span {
  border-color: rgba(255,255,255,.2);
  border-radius: 12px;
  background: rgba(255,255,255,.1);
  color: #e2edff;
}
body.om-theme .auth-side { border-radius: 22px; background: transparent; }
body.om-theme .auth-card { padding: 30px; }
body.om-theme .auth-card h2 { color: #173c65; }
body.om-theme .auth-card .eyebrow { color: #087e83; }
body.om-theme .auth-card input { min-height: 46px; }
body.om-theme .auth-tip { border-top-color: rgba(126,157,198,.25); color: #52657f; }
body.om-theme .auth-under,
body.om-theme .auth-footer { color: #52657f; }

body.om-theme .project-heading { align-items: flex-start; }
body.om-theme .project-identity > div { min-width: 0; }
body.om-theme .project-identity p { flex-wrap: wrap; row-gap: 8px; }
body.om-theme .project-heading .button-row { max-width: 760px; justify-content: flex-end; gap: 9px; }
body.om-theme .project-disk-summary {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 4px 9px;
  border: 1px solid rgba(98,145,178,.2);
  border-radius: 999px;
  background: rgba(231,241,250,.72);
  color: #52657f;
  font-size: 10px;
  text-decoration: none;
}
body.om-theme .project-disk-summary svg { color: #658eae; }
body.om-theme .project-disk-summary strong { color: #315c82; font-weight: 700; }
body.om-theme .project-disk-summary.disk-warning { background: rgba(250,239,214,.9); border-color: rgba(214,174,97,.35); color: #805b1c; }
body.om-theme .project-disk-summary.disk-critical,
body.om-theme .project-disk-summary.disk-full,
body.om-theme .project-disk-summary.disk-unavailable { background: rgba(255,230,229,.9); border-color: rgba(214,126,126,.35); color: #a33b50; }
body.om-theme .project-disk-summary:hover { filter: brightness(.97); }
body.om-theme .deploy-panel { scroll-margin-top: 18px; }
body.om-theme .danger-zone { scroll-margin-top: 18px; }
body.om-theme details.collapsible-panel { overflow: hidden; }
body.om-theme details.collapsible-panel > summary.collapsible-summary {
  display: flex;
  list-style: none;
  cursor: pointer;
  user-select: none;
  gap: 14px;
}
body.om-theme details.collapsible-panel > summary.collapsible-summary::-webkit-details-marker { display: none; }
body.om-theme details.collapsible-panel:not([open]) > summary.panel-heading.unpadded { padding-bottom: 0; }
body.om-theme details.collapsible-panel > summary.collapsible-summary:focus-visible {
  outline: 3px solid rgba(41,132,161,.45);
  outline-offset: -4px;
  border-radius: 12px;
}
body.om-theme .collapse-indicator {
  margin-left: auto;
  flex: 0 0 auto;
  color: #7892a5;
  font-size: 22px;
  line-height: 1;
  transition: transform .18s ease;
}
body.om-theme details.collapsible-panel[open] > summary .collapse-indicator { transform: rotate(180deg); }
body.om-theme .collapsible-actions {
  display: flex;
  justify-content: flex-end;
  padding: 0 24px 16px;
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  body.om-theme .panel,
  body.om-theme .stat-card,
  body.om-theme .server-mini,
  body.om-theme .creation-summary,
  body.om-theme .auth-layout,
  body.om-theme .auth-card { background: rgba(248,251,255,.97); }
}

@media (max-width: 1050px) {
  body.om-theme main { padding-top: 28px; }
}
@media (max-width: 760px) {
  body.om-theme .sidebar {
    background:
      radial-gradient(circle at 10% 0, rgba(63,151,181,.25), transparent 20rem),
      linear-gradient(165deg, rgba(18,63,82,.99), rgba(16,46,54,.99));
  }
  body.om-theme .topbar { background: rgba(248,251,255,.84); }
  body.om-theme main { padding-top: 23px; }
  body.om-theme .page-heading { flex-direction: column; align-items: stretch; }
  body.om-theme .page-heading > .button,
  body.om-theme .page-heading > .status { align-self: flex-start; }
  body.om-theme .project-heading .button-row { margin-left: 0; }
  body.om-theme .project-heading .button-row { justify-content: flex-start; width: 100%; }
  body.om-theme .project-heading .button-row .button { white-space: normal; text-align: center; }
  body.om-theme .project-identity p { align-items: flex-start; }
  body.om-theme .project-disk-summary { max-width: 100%; font-size: 9px; }
  body.om-theme details.collapsible-panel > summary.collapsible-summary { gap: 10px; }
  body.om-theme .collapsible-actions { justify-content: flex-start; padding: 0 20px 16px; }
  body.om-theme .button { min-height: 44px; }
  body.om-theme .button.tiny { min-height: 38px; }
  body.om-theme input:not([type="radio"]),
  body.om-theme textarea,
  body.om-theme select { min-height: 44px; font-size: 16px; }
  body.om-theme .panel,
  body.om-theme .stat-card,
  body.om-theme .creation-summary { border-radius: 20px; }
  body.om-theme .auth-layout {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    width: calc(100% - 20px);
    min-height: calc(100svh - 20px);
    margin: 10px auto;
    padding: 8px;
    border-radius: 24px;
  }
  body.om-theme .auth-story { border-radius: 18px; padding: 19px 20px; }
  body.om-theme .auth-side { padding: 20px 10px 12px; }
  body.om-theme .auth-card { padding: 22px 18px; border-radius: 20px; }
  body.om-theme .auth-card input,
  body.om-theme .auth-card .button { min-height: 46px; }
}
@media (prefers-reduced-motion: reduce) {
  body.om-theme *, body.om-theme *::before, body.om-theme *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    transition-duration: .01ms !important;
  }
}
