/* Radix dashboard starter v0.2. Brand values from uploaded V3 website.
   Dashboard sizes, input border and status colors are recommendations. */
@font-face{font-family:Geist;src:url('../fonts/geist-latin-wght-normal.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Martian Mono';src:url('../fonts/martian-mono-latin-wght-normal.woff2') format('woff2');font-weight:100 800;font-display:swap}
:root{
  --radix-green:#008F5A;
  --radix-green-text:#005C3A;
  --radix-green-tint:#F0F7F4;
  --radix-ink:#0E1116;
  --radix-white:#FFFFFF;
  --radix-soft:#F3F5F7;
  --radix-panel:#FAFBFB;
  --radix-rule:#D7DDE3;
  --radix-muted:#626B75;
  --radix-body-muted:#606863;
  --radix-font-sans:Geist,Arial,sans-serif;
  --radix-font-mono:'Martian Mono',monospace;
  --radix-control-border:#7A8580;
  --radix-denied:#8F3434;
  --radix-denied-bg:#FBF1F1;
  --radix-space-1:4px;--radix-space-2:8px;--radix-space-3:12px;
  --radix-space-4:16px;--radix-space-6:24px;--radix-space-8:32px;
}
.radix-app{font-family:var(--radix-font-sans);color:var(--radix-ink);background:var(--radix-white);font-size:15px;line-height:1.5}
.radix-app *{box-sizing:border-box}
.radix-app :focus-visible{outline:2px solid var(--radix-green-text);outline-offset:3px}
.radix-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border:2px solid var(--radix-green);border-radius:0;font:600 14px/1.4 var(--radix-font-sans);text-decoration:none;cursor:pointer}
.radix-button--primary{background:var(--radix-green);color:var(--radix-ink)}
.radix-button--secondary,.radix-button--secondary:hover,.radix-button--secondary:active{background:white;color:var(--radix-green-text)}
.radix-button:hover{text-decoration:underline;text-underline-offset:3px}
.radix-button:disabled{opacity:.45;cursor:not-allowed;text-decoration:none}
.radix-input{display:block;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--radix-control-border);border-radius:0;background:white;color:var(--radix-ink);font:inherit}
.radix-panel{padding:24px;background:var(--radix-panel);border:1px solid var(--radix-rule)}
.radix-eyebrow{font:400 11px/1.5 var(--radix-font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--radix-green-text)}
.radix-status{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;font-size:13px;font-weight:500}
.radix-status--approved{background:var(--radix-green-tint);color:var(--radix-green-text)}
.radix-status--pending{background:var(--radix-soft);color:var(--radix-ink)}
.radix-status--denied{background:var(--radix-denied-bg);color:var(--radix-denied)}
/* Always include status text. Never communicate state through color alone. */
.radix-table{width:100%;border-collapse:collapse;font-size:14px}
.radix-table th,.radix-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--radix-rule)}
.radix-table th{font-weight:500;background:var(--radix-soft)}
.radix-table .numeric{text-align:right;font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:reduce){.radix-app *{scroll-behavior:auto}}

/* v0.2: proposed dashboard defaults; see IMPLEMENTATION-SPEC.md. */
:root{
  --radix-space-12:48px;
  --radix-radius:0px;
  --radix-border-width:1px;
  --radix-button-border-width:2px;
  --radix-control-min-height:44px;
  --radix-motion-duration:150ms;
  --radix-motion-easing:ease-out;
  --radix-page-title-size:32px;
  --radix-page-title-line:38px;
  --radix-page-padding:32px;
  --radix-panel-padding:24px;
}
.radix-app{line-height:24px}
.radix-page{padding:var(--radix-page-padding)}
.radix-page-title{margin:0;font:500 var(--radix-page-title-size)/var(--radix-page-title-line) var(--radix-font-sans);letter-spacing:-.03em}
.radix-section-title{margin:0;font:500 20px/28px var(--radix-font-sans);letter-spacing:-.02em}
.radix-card-title{margin:0;font:500 16px/24px var(--radix-font-sans)}
.radix-panel{padding:var(--radix-panel-padding)}
.radix-button{line-height:20px;transition:border-color var(--radix-motion-duration) var(--radix-motion-easing)}
.radix-button:not(:disabled):not([aria-disabled="true"]):active{box-shadow:inset 0 0 0 1px currentColor}
.radix-button--destructive,.radix-button--destructive:hover,.radix-button--destructive:active{background:white;border-color:var(--radix-denied);color:var(--radix-denied)}
.radix-button:disabled,.radix-button[aria-disabled="true"]{opacity:.45;cursor:not-allowed;text-decoration:none;box-shadow:none}
.radix-button[aria-busy="true"]{cursor:progress}
/* aria-disabled / aria-busy do not prevent activation: the application must do that. */
.radix-input{font:400 14px/20px var(--radix-font-sans)}
.radix-input:not(:disabled):not([readonly]):hover{border-color:var(--radix-ink)}
.radix-input[readonly]{background:var(--radix-soft)}
.radix-input:disabled{opacity:.6;cursor:not-allowed}
.radix-input[aria-invalid="true"],.radix-input[aria-invalid="true"]:hover{border-color:var(--radix-denied)}
.radix-field-label{display:block;margin-bottom:8px;font:500 14px/20px var(--radix-font-sans)}
.radix-help,.radix-error{margin:8px 0 0;font:400 13px/20px var(--radix-font-sans)}
.radix-help{color:var(--radix-muted)}
.radix-error{color:var(--radix-denied)}
.radix-status{line-height:20px}
.radix-status--failed{color:var(--radix-denied);background:var(--radix-denied-bg)}
.radix-status--processing,.radix-status--unknown{color:var(--radix-ink);background:var(--radix-soft)}
.radix-table{line-height:20px}
.radix-table tr[aria-selected="true"]{background:var(--radix-green-tint)}
.radix-table-region{max-width:100%;overflow-x:auto}
.radix-identifier{font:400 12px/20px var(--radix-font-mono)}
.radix-nav-link{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 12px;border-inline-start:2px solid transparent;color:var(--radix-ink);text-decoration:none;font:500 14px/20px var(--radix-font-sans)}
.radix-nav-link:hover{background:var(--radix-soft)}
.radix-nav-link[aria-current="page"]{background:var(--radix-green-tint);color:var(--radix-green-text);border-inline-start-color:var(--radix-green)}
.radix-link{color:var(--radix-green-text);text-underline-offset:3px}
.radix-link:hover,.radix-link:focus-visible{text-decoration:underline}
@media(min-width:768px) and (max-width:1199px){.radix-app{--radix-page-padding:24px}}
@media(max-width:767px){.radix-app{--radix-page-padding:16px;--radix-panel-padding:16px;--radix-page-title-size:28px;--radix-page-title-line:34px}}
@media(prefers-reduced-motion:reduce){.radix-button{transition:none}}
