/* Underridge design layer, 2027.
   Loaded last; changes presentation only. Rules:
   1. Data is set in the sans with tabular figures; the serif is for headlines.
   2. Nothing users must read is under 11px or under ~65% contrast.
   3. Hairlines, soft depth and one accent (gold) for state and focus. */

:root{
  --ur-sans:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --ur-serif:'Cormorant Garamond',Georgia,serif;
  --ur-ink:#EEF0EA;
  --ur-ink-2:rgba(238,240,234,.78);
  --ur-ink-3:rgba(238,240,234,.62);
  --ur-gold:#D2B06E;
  --ur-hair:rgba(238,240,234,.09);
  --ur-hair-2:rgba(238,240,234,.16);
  --ur-ring:0 0 0 2px rgba(210,176,110,.55),0 0 0 6px rgba(210,176,110,.14);
  --ur-ok:#7FD3A0; --ur-warn:#E6C46E; --ur-bad:#EE8F7C;
}
body:not(.dark){
  --ur-ink:#141A16; --ur-ink-2:rgba(20,26,22,.78); --ur-ink-3:rgba(20,26,22,.6);
  --ur-hair:rgba(20,26,22,.1); --ur-hair-2:rgba(20,26,22,.18); --ur-gold:#9A7536;
}
/* The rail stays dark green in both themes, so it keeps the dark-surface tokens.
   Without this, light mode painted deal names and search text near-black on green. */
.rail{
  --ur-ink:#EEF0EA; --ur-ink-2:rgba(238,240,234,.78); --ur-ink-3:rgba(238,240,234,.62);
  --ur-hair:rgba(238,240,234,.09); --ur-hair-2:rgba(238,240,234,.16); --ur-gold:#D2B06E;
}

/* Base readability */
body{font-family:var(--ur-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"ss01","cv11"}
::selection{background:rgba(210,176,110,.32)}
:focus-visible{outline:none!important;box-shadow:var(--ur-ring)!important;border-radius:8px}
button,a{transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s}

/* 1. Data in the sans, tabular */
.mc-v,.uv4-stat .v,.uv4-num,.uv4-table td,.pp-tbl td,.rail-dt,.mc-src,.oi-num,.oc-badge{
  font-variant-numeric:tabular-nums lining-nums;
}
.mc-v{font-family:var(--ur-sans)!important;font-weight:600!important;font-size:22px!important;letter-spacing:-.015em;color:var(--ur-ink)!important;line-height:1.15}
.uv4-stat .v{font-family:var(--ur-sans)!important;font-weight:600!important;letter-spacing:-.02em;color:var(--ur-ink)!important}
.uv4-num{font-weight:500;color:var(--ur-ink)}

/* Deal names: the sans, medium weight, readable size */
.rail-nm,.uv4-deal,.uv4-table td.uv4-deal{font-family:var(--ur-sans)!important;font-weight:500!important;letter-spacing:-.005em}
.rail-nm{font-size:14px!important;color:var(--ur-ink)!important}
.uv4-deal,.uv4-table td.uv4-deal{font-size:14px!important;color:var(--ur-ink)!important}

/* 2. Labels and meta: legible size and contrast */
.mc-l,.uv4-eyebrow,.rail-eyebrow,.side-h,.wi-h,.uv4-stat .k,.uv4-table th,.pp-tbl th,.hero-g{
  font-size:11px!important;letter-spacing:.11em!important;color:var(--ur-ink-3)!important;font-weight:600!important;
}
.uv4-eyebrow,.rail-eyebrow,.hero-g{color:var(--ur-gold)!important}
.rail-dt{font-family:var(--ur-sans)!important;font-size:11px!important;color:var(--ur-ink-3)!important;opacity:1!important}
.uv4-stat .d{font-size:12px!important;color:var(--ur-ink-3)!important}
.mc-src,.oc-badge{font-size:10.5px!important;letter-spacing:.06em}
.oi-num{font-size:11px!important;color:var(--ur-ink-3)!important}
.pp-rgn{font-size:11.5px!important;color:var(--ur-ink-3)!important;opacity:1!important}
.uv4-lede{color:var(--ur-ink-2)!important;font-size:15.5px!important;line-height:1.6!important;max-width:64ch}

/* Verdict and grounding: the two things people read first */
.uv4-vtxt{font-size:15.5px!important;line-height:1.65!important;color:var(--ur-ink)!important;max-width:78ch}
.grounding{font-size:13px!important;letter-spacing:.005em}

/* 3. Surfaces: hairline borders, inner light, soft depth */
.mc,.uv4-stat,.uv4-tblwrap,.uv4-gtable,.res-side,.out-item,.rail-item{
  border-color:var(--ur-hair-2)!important;
}
.mc,.uv4-stat{
  background:linear-gradient(180deg,rgba(238,240,234,.045),rgba(238,240,234,.015))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 30px -18px rgba(0,0,0,.6);
  border-radius:14px!important;
}
body:not(.dark) .mc,body:not(.dark) .uv4-stat{background:linear-gradient(180deg,#fff,rgba(255,255,255,.7))!important;box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 10px 28px -18px rgba(20,26,22,.25)}
.mc:hover,.uv4-stat:hover{border-color:rgba(210,176,110,.35)!important}
.uv4-table tr.uv4-row{transition:background-color .12s}
.uv4-table tr.uv4-row:hover{background:rgba(210,176,110,.06)!important}
.uv4-table td{padding-top:13px!important;padding-bottom:13px!important}

/* Sidebar: denser, calmer list */
.rail-item{border-radius:12px!important}
.rail-item.pinned,.rail-item:hover{background:rgba(238,240,234,.055)!important}

/* Server batch status pills in the pipeline */
.pp-job{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:99px;border:1px solid var(--ur-hair-2);color:var(--ur-ink-2);white-space:nowrap}
.pp-job i{width:7px;height:7px;border-radius:9px;background:currentColor;display:inline-block}
.pp-job.q{color:var(--ur-ink-3)}
.pp-job.r{color:var(--ur-gold);border-color:rgba(210,176,110,.4);background:rgba(210,176,110,.08)}
.pp-job.r i{animation:urPulse 1.4s ease-in-out infinite;box-shadow:0 0 0 0 rgba(210,176,110,.6)}
.pp-job.f{color:var(--ur-bad);border-color:rgba(238,143,124,.4)}
@keyframes urPulse{0%{box-shadow:0 0 0 0 rgba(210,176,110,.55)}70%{box-shadow:0 0 0 7px rgba(210,176,110,0)}100%{box-shadow:0 0 0 0 rgba(210,176,110,0)}}
@media (prefers-reduced-motion:reduce){.pp-job.r i{animation:none}}

/* Buttons: crisper, consistent */
.uv4-btng{border-color:var(--ur-hair-2)!important;color:var(--ur-ink-2)!important;font-weight:500!important}
.uv4-btng:hover{border-color:rgba(210,176,110,.45)!important;color:var(--ur-ink)!important;transform:translateY(-1px)}

/* Phones: keep data legible */
@media (max-width:640px){
  .mc-v{font-size:19px!important}
  .uv4-vtxt{font-size:15px!important}
}

/* Deal options menu (deal-menu.js): every sidebar row and the Home
   "Not underwritten yet" table. Above the Desk view, which covers the content area. */
.ur-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
#rail-ctx{z-index:2147483000;min-width:196px}
#rl-toast{z-index:2147483001}
.rail-toast.ok{border-left-color:var(--ur-gold)}
.rail-kebab[aria-expanded="true"]{opacity:1;background:rgba(238,240,234,.08);color:var(--ur-ink)}
.pp-rgl{overflow-x:hidden;padding:2px 3px 0 0}
.pp-actc{width:48px;text-align:right;white-space:nowrap}
.pp-kebab{display:inline-grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid transparent;border-radius:10px;background:none;color:var(--ur-ink-3);font-size:16px;line-height:1;cursor:pointer}
.pp-kebab:hover,.pp-kebab[aria-expanded="true"]{color:var(--ur-ink);border-color:var(--ur-hair-2);background:rgba(210,176,110,.08)}
.rail-ctx .ctx-note{font-size:11.5px;line-height:1.45;color:var(--cream-d);padding:0 .65rem .45rem;max-width:230px}
.rail-ctx [aria-disabled="true"]{opacity:.55;cursor:not-allowed}
.rail-ctx .ctx-form{display:flex;flex-direction:column;gap:6px;padding:.25rem .35rem .35rem;width:240px;max-width:calc(100vw - 32px)}
.rail-ctx .ctx-form .ctx-confirm{padding:.25rem .3rem 0}
.rail-ctx .ctx-input{font:inherit;font-size:13.5px;color:var(--cream);background:var(--d1);border:1px solid var(--gold);border-radius:8px;padding:.5rem .6rem;outline:none;min-width:0}
.rail-ctx .ctx-acts{display:flex;gap:6px}
.rail-ctx .ctx-acts button{flex:1;text-align:center}
.rail-ctx .ctx-primary,.rail-ctx .ctx-primary:hover{background:var(--forest);color:#fff}
.rail-ctx .ctx-primary:disabled,.rail-ctx .ctx-danger:disabled{opacity:.6;cursor:default}
