/* DVS theme layer: sharp corners, flat surfaces, condensed type. Loaded last on every page. */
:root{
  --paper:#050505; --surface:#0d0d0d; --surface-2:#151515; --surface-3:#1e1e1e;
  --border:#232323; --ink:#f4f4f1; --ink-soft:#a3a3a0; --ink-faint:#6a6a67;
  --shadow:none; --r:2px;
}
body{ font-family:'Barlow',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }

/* Corners: square everything, keep true dots round. */
*,*::before,*::after{ border-radius:var(--r) !important; }
.dot,.assignee-dot,.qual-dot,.stage i,.spin,.day-nav button{ border-radius:50% !important; }
.bar,.bar span,.qbar,.qbar span,.q-bar,.q-bar span,.qrow .bar,.qrow .bar span{ border-radius:0 !important; }

/* Flat: no drop shadows, thin rules. */
*{ box-shadow:none; }
:focus-visible{ outline:none; box-shadow:0 0 0 2px var(--accent) !important; }
.q-bar span,.q-bar.hit span{ background:var(--green); }
.q-bar.hit span{ background:var(--accent); }

/* Type */
h1,h2,.login h2,header h1,header.page h1{ font-family:'Barlow Condensed','Barlow',sans-serif !important; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
header h1, header.page h1{ font-size:1.9rem; line-height:1; }
.section-title,.filter-label,.split .title,.q-top,.stat .l,.field label,.steps div,.kpi .l,.team-head .section-title{
  font-family:'Barlow Condensed','Barlow',sans-serif; font-weight:600; letter-spacing:.12em; font-size:.74rem; }

/* Chips and buttons: squared, tight, uppercase. */
.chip,.btn,.pill,.sync-pill,.signout,.day-filter button,.qual-btn,.assign-go,.assign-no,.login button,.stage{
  font-family:'Barlow Condensed','Barlow',sans-serif; text-transform:uppercase; letter-spacing:.08em; font-weight:600; }
.chip{ padding:6px 12px; font-size:.8rem; }
.chip[aria-pressed="true"]{ box-shadow:inset 0 -2px 0 rgba(0,0,0,.25); }
.btn,.qual-btn{ font-size:.8rem; }
.btn svg{ opacity:.9; }

/* Cards: flat panel with a hairline, lift the border on hover. */
.card{ border:1px solid var(--border); transition:border-color .15s; }
.card:hover{ border-color:#3a3a3a; }
.card .company, .card .co, .card h3{ letter-spacing:.01em; }
.stat,.quota,.quota-card,.split,.totals,.kpi,.rep,.attention,.cal-wrap{ border-color:var(--border); }
.stat .n,.q-num b{ font-family:'JetBrains Mono',monospace; letter-spacing:-.02em; }

/* Inputs */
input,select,textarea,.search{ font-family:inherit; }
.search{ background:var(--surface); }

/* Contact buttons keep real casing (emails, phone numbers). */
.actions .btn,.contact a{ text-transform:none; letter-spacing:.02em; font-family:'Barlow',sans-serif; font-weight:600; }

/* App feel on phones */
html{ -webkit-text-size-adjust:100%; text-size-adjust:100%; touch-action:pan-x pan-y; }
html,body{ overflow-x:clip; overscroll-behavior:none; max-width:100%; }
body{ -webkit-tap-highlight-color:transparent; }
button,.chip,.btn,.pill,.rep,summary,.day-head{ -webkit-user-select:none; user-select:none; touch-action:manipulation; }
@media (max-width:760px){
  input,select,textarea,.search,.head-right .controls .search{ font-size:16px !important; }
}

/* Phones: refresh + sign out pinned to the top-right corner, on the logo row. */
@media (max-width:760px){
  header, header.page{ position:relative; }
  header .head-meta, header .head-actions{ position:absolute; top:0; right:0; margin:0; }
  header .head-meta .sync-pill, header .head-meta .signout, header .head-actions .pill{ padding:5px 9px; font-size:.72rem; }
}
