/* Radyan OS — canonical interface layer (Week 33) */
:root {
  color-scheme: dark;
  --r-bg: #090908;
  --r-surface: #11110f;
  --r-surface-raised: #181712;
  --r-surface-soft: #14130f;
  --r-border: #302d25;
  --r-border-strong: #51452e;
  --r-text: #f5f2e9;
  --r-muted: #9d998f;
  --r-gold: #d8b55f;
  --r-gold-bright: #f1d28b;
  --r-positive: #72c68d;
  --r-warning: #e1b75e;
  --r-danger: #e38279;
  --r-info: #83b5d9;
  --r-radius-sm: 10px;
  --r-radius: 16px;
  --r-radius-lg: 24px;
  --r-shadow: 0 24px 72px rgba(0, 0, 0, .34);
  --r-content: 1280px;
  --r-touch: 44px;
}

*, *::before, *::after { box-sizing: border-box; }
html { background: var(--r-bg); scroll-behavior: smooth; }
body {
  min-width: 320px;
  background: radial-gradient(circle at 82% -8%, rgba(216,181,95,.08), transparent 30%), var(--r-bg);
  color: var(--r-text);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
::selection { background: rgba(216,181,95,.32); color: #fff; }
:focus-visible { outline: 2px solid var(--r-gold-bright) !important; outline-offset: 3px; }
[hidden] { display: none !important; }

body[data-radyan-surface="operations"] { --r-content: 1440px; }
body[data-radyan-surface="public"] { --r-content: 1240px; }
body[data-radyan-surface="account"] { --r-content: 1320px; }

button, input, select, textarea { font: inherit; }
button, [role="button"], a { -webkit-tap-highlight-color: transparent; }
button:not(:disabled), [role="button"]:not([aria-disabled="true"]), summary { cursor: pointer; }
button:disabled, input:disabled, select:disabled, textarea:disabled, [aria-disabled="true"] { cursor: not-allowed; opacity: .55; }
input, select, textarea {
  max-width: 100%;
  min-height: var(--r-touch);
  border-color: var(--r-border) !important;
  border-radius: var(--r-radius-sm) !important;
  background: #0e0e0c !important;
  color: var(--r-text) !important;
}
textarea { min-height: 110px; resize: vertical; }
input::placeholder, textarea::placeholder { color: #716d64; opacity: 1; }
label { line-height: 1.45; }
label > input, label > select, label > textarea { margin-top: .4rem; }
input[type="checkbox"], input[type="radio"] { min-height: auto; accent-color: var(--r-gold); }

.primary, .intent, .button-primary, [data-variant="primary"] {
  min-height: var(--r-touch);
  border-radius: var(--r-radius-sm) !important;
  background: linear-gradient(135deg, var(--r-gold-bright), #bd8c35) !important;
  color: #171107 !important;
  box-shadow: 0 10px 28px rgba(171,120,31,.14);
  font-weight: 800;
}
.secondary, .details, .quiet, .button-secondary, [data-variant="secondary"] {
  min-height: var(--r-touch);
  border-color: var(--r-border) !important;
  border-radius: var(--r-radius-sm) !important;
  background: var(--r-surface-soft) !important;
  color: var(--r-text) !important;
}
.danger, .destructive, [data-variant="danger"] { border-color: rgba(227,130,121,.48) !important; color: #f0a49d !important; }
.primary:hover, .intent:hover, .secondary:hover, .details:hover, .quiet:hover { filter: brightness(1.08); }

h1, h2, h3 { text-wrap: balance; }
p, li { text-wrap: pretty; }
.eyebrow {
  color: var(--r-gold) !important;
  font-size: clamp(8px, .72rem, 11px) !important;
  font-weight: 850 !important;
  letter-spacing: .15em !important;
}

.panel, .admin-panel, .portal-panel, .card, .metric, .metric-card, .finance-card,
.beat-card, .store-card, .service-card, .product-card, .workspace-card {
  border-color: var(--r-border) !important;
  border-radius: var(--r-radius) !important;
  background: linear-gradient(155deg, rgba(24,23,18,.97), rgba(15,15,13,.98)) !important;
}
.panel, .admin-panel, .portal-panel, .card { box-shadow: 0 16px 48px rgba(0,0,0,.12); }

.radyan-page-state {
  display: grid;
  place-items: center;
  gap: 10px;
  min-height: 150px;
  padding: clamp(24px, 5vw, 54px);
  border: 1px dashed var(--r-border-strong) !important;
  border-radius: var(--r-radius) !important;
  background: rgba(17,17,15,.62) !important;
  color: var(--r-muted) !important;
  text-align: center;
}
.radyan-page-state[data-state="error"] { border-color: rgba(227,130,121,.48) !important; color: #efaaa4 !important; }
.radyan-page-state[data-state="loading"]::before {
  content: "";
  width: 24px;
  height: 24px;
  border: 2px solid var(--r-border-strong);
  border-top-color: var(--r-gold);
  border-radius: 50%;
  animation: radyan-spin .8s linear infinite;
}
@keyframes radyan-spin { to { transform: rotate(360deg); } }

.radyan-status, .status-pill, .badge, .tag, .access-badge, .pill, .chip {
  border-radius: 999px !important;
  font-weight: 750;
}
[data-status-tone="positive"] { color: var(--r-positive) !important; border-color: rgba(114,198,141,.42) !important; }
[data-status-tone="warning"] { color: var(--r-warning) !important; border-color: rgba(225,183,94,.44) !important; }
[data-status-tone="danger"] { color: var(--r-danger) !important; border-color: rgba(227,130,121,.44) !important; }
[data-status-tone="info"] { color: var(--r-info) !important; border-color: rgba(131,181,217,.4) !important; }

.radyan-table-region, .table-wrap {
  max-width: 100%;
  overflow: auto;
  border: 1px solid var(--r-border) !important;
  border-radius: var(--r-radius) !important;
  background: #0f0f0d;
  scrollbar-color: #55482e #11110f;
}
.radyan-table-region table, .table-wrap table { width: 100%; border-collapse: collapse; }
.radyan-table-region th, .table-wrap th {
  background: #15140f;
  color: #aaa59b;
  font-size: 10px;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.radyan-table-region th, .radyan-table-region td, .table-wrap th, .table-wrap td { border-color: var(--r-border) !important; }
.radyan-table-region tbody tr:hover, .table-wrap tbody tr:hover { background: rgba(216,181,95,.035); }

dialog {
  width: min(760px, calc(100vw - 28px));
  max-width: calc(100vw - 28px);
  max-height: min(90vh, 900px);
  overflow: auto;
  border: 1px solid var(--r-border-strong) !important;
  border-radius: var(--r-radius-lg) !important;
  background: var(--r-surface) !important;
  color: var(--r-text) !important;
  box-shadow: var(--r-shadow) !important;
}
dialog::backdrop { background: rgba(0,0,0,.78); backdrop-filter: blur(8px); }
body.has-universal-navigation .language-switch { top: 70px !important; }

.radyan-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (max-width: 720px) {
  :root { --r-radius: 14px; --r-radius-lg: 18px; }
  body { overflow-wrap: anywhere; }
  main { max-width: 100%; }
  .radyan-table-region, .table-wrap { border-radius: 12px !important; }
  .radyan-table-region table, .table-wrap table { min-width: 640px; }
  dialog { width: calc(100vw - 20px); max-width: calc(100vw - 20px); padding: 18px !important; }
  .primary, .intent, .secondary, .details, .quiet { min-height: 46px; }
  body.has-universal-navigation .language-switch { top: auto !important; right: 10px !important; bottom: 82px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (forced-colors: active) {
  :focus-visible { outline: 3px solid CanvasText !important; }
  .primary, .intent { border: 1px solid ButtonText !important; }
}
