
:root{
  --gv-u:4px;

  --gv-bg:#F3F4F5;
  --gv-bg-deep:#ECEEF0;
  --gv-surface:#FCFCFD;
  --gv-surface-soft:#F7F8F9;
  --gv-surface-quiet:#F0F2F4;

  --gv-ink:#23272C;
  --gv-text:#3D444C;
  --gv-muted:#65707A;
  --gv-faint:#8C959E;

  --gv-line:#DEE2E5;
  --gv-line-soft:#E9EBED;
  --gv-line-strong:#D1D6DB;

  --gv-accent:#5A6996;
  --gv-accent-soft:#EFF2F8;
  --gv-success:#506B5A;
  --gv-success-soft:#EEF4F0;
  --gv-warning:#79684C;
  --gv-warning-soft:#F5F1E9;
  --gv-danger:#965454;
  --gv-danger-soft:#F8EFEF;

  /* Canonical workspace geometry. Page CSS must not own these values. */
  --sidebar-expanded-width:240px;
  --sidebar-collapsed-width:84px;
  --sidebar-width:var(--sidebar-expanded-width);
  --header-height:72px;
  --workspace-gutter-balanced:clamp(48px,10%,320px);
  --workspace-gutter-wide:clamp(32px,5%,176px);
  --workspace-gutter-full:clamp(18px,1.5%,56px);
  --workspace-gutter:var(--workspace-gutter-wide);
  --gv-sidebar:var(--sidebar-width);
  --gv-topbar:var(--header-height);
  --gv-radius:8px;

  --gv-gap:16px;
  --gv-content-x:var(--workspace-gutter);

  --gv-body-size:16px;
  --gv-caption:11px;
  --gv-small:12px;
  --gv-ui:13px;
  --gv-heading:15px;
  --gv-page-title:17px;
  --gv-display:36px;
  --gv-row-scale:1;

  font-family:"SUIT Variable","SUIT","Noto Sans KR","Segoe UI",sans-serif;
  font-optical-sizing:auto;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;color:var(--gv-text)}
html{background:var(--gv-bg)}
body{
  background:var(--gv-bg);
  font-family:inherit;
  font-size:var(--gv-body-size);
  line-height:1.62;
  letter-spacing:-.008em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1;
  font-synthesis:none;
}
button,input,select,textarea{font:inherit;color:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit}
svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
:focus-visible{outline:2px solid #6676A5;outline-offset:2px}

/* ---------- Shell ---------- */
.gv-app{min-height:100vh}
.gv-sidebar{
  position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);z-index:60;
  background:#F8F9FA;border-right:1px solid var(--gv-line);
  display:flex;flex-direction:column;
}
.gv-brand{
  height:var(--header-height);display:flex;align-items:center;
  padding:0 24px;border-bottom:1px solid transparent;
}
.gv-brand-word{font-size:15px;letter-spacing:.145em;font-weight:770;color:#1D2126}
.gv-brand-mark{display:none}
.gv-nav{padding:20px 12px;display:flex;flex-direction:column;gap:4px;overflow:auto}
.gv-nav-label{
  font-size:10px;font-weight:760;letter-spacing:.135em;color:#929AA3;
  padding:8px 12px 8px;
}
.gv-nav-label-bottom{margin-top:20px}
.gv-nav-item{
  position:relative;height:44px;padding:0 12px;border-radius:8px;
  display:flex;align-items:center;gap:12px;text-decoration:none;
  color:#5E6872;font-size:14px;font-weight:590;
  transition:background .12s,color .12s;
}
.gv-nav-item:hover{background:#EDF0F2;color:#272C31}
.gv-nav-item.active{background:#E8ECEF;color:#22272C;font-weight:690}
.gv-nav-item.active:before{
  content:"";position:absolute;left:-12px;width:2px;height:24px;
  background:#41484F;border-radius:0 2px 2px 0;
}
.gv-nav-icon{width:20px;height:20px;color:#78828C;display:grid;place-items:center}
.gv-nav-item.active .gv-nav-icon{color:#444C54}
.gv-sidebar-foot{margin-top:auto;padding:16px 24px 22px}
.gv-sidebar-caption{font-size:9px;letter-spacing:.12em;color:#98A0A8}

.gv-shell{margin-left:var(--sidebar-width);min-height:100vh}
.gv-topbar{
  height:var(--header-height);position:sticky;top:0;z-index:45;
  background:rgba(242,244,246,.94);backdrop-filter:blur(16px);
  border-bottom:1px solid var(--gv-line);
  display:flex;align-items:center;justify-content:space-between;
  padding:0 var(--workspace-gutter);
}
.gv-topbar-left,.gv-topbar-right{display:flex;align-items:center}
.gv-topbar-left{gap:14px}.gv-topbar-right{gap:12px}
.gv-page-title{font-size:var(--gv-page-title);font-weight:720;color:#252A2F;letter-spacing:-.02em}
.gv-page-description{font-size:12px;color:#68727C;margin-top:1px}
.gv-icon-btn{
  position:relative;width:40px;height:40px;display:grid;place-items:center;
  border:1px solid transparent;background:transparent;border-radius:8px;
  color:#606A74;cursor:pointer;
}
.gv-icon-btn:hover{background:#E9EDF0;color:#2A3036}
.gv-dot{position:absolute;right:8px;top:8px;width:5px;height:5px;border-radius:50%;background:#6676A5}
.gv-mobile-menu{display:none}
.gv-user{display:flex;align-items:center;gap:10px}
.gv-user-avatar{
  width:36px;height:36px;border-radius:50%;display:grid;place-items:center;
  background:#E4E8EB;color:#3F474F;font-size:12.5px;font-weight:760;
}
.gv-user-meta{display:flex;flex-direction:column;line-height:1.28}
.gv-user-meta strong{font-size:12px;color:#343A40}
.gv-user-meta span{font-size:10px;color:#7A848D;margin-top:2px}
.gv-logout{
  margin-left:4px;height:40px;padding:0 13px;border:1px solid var(--gv-line-strong);
  border-radius:7px;text-decoration:none;display:flex;align-items:center;
  font-size:12px;color:#59636D;background:#F9FAFB;
}
.gv-logout:hover{background:#FFF;color:#282D32}

/* ---------- Layout ---------- */
.gv-main{
  width:100%;max-width:none;margin:0;
  padding:40px var(--workspace-gutter) 64px;
}
.gv-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gv-gap)}
.gv-col-3{grid-column:span 3}.gv-col-4{grid-column:span 4}.gv-col-8{grid-column:span 8}

.gv-hero{
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:32px;margin:8px 0 28px;
}
.gv-hero-compact{margin-bottom:24px}
.gv-eyebrow{
  font-size:10.5px;letter-spacing:.145em;font-weight:760;
  color:#818B95;margin-bottom:12px;
}
.gv-hero h1{
  font-size:var(--gv-display);line-height:1.16;letter-spacing:-.04em;
  color:#20252A;font-weight:665;margin:0;
}
.gv-hero p{margin:10px 0 0;font-size:14px;color:#626D77}
.gv-hero-actions{display:flex;gap:8px}

/* Thin context strip creates a stronger baseline before the dashboard. */
.gv-context-strip{
  height:48px;border-top:1px solid var(--gv-line);border-bottom:1px solid var(--gv-line);
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:center;margin-bottom:24px;
}
.gv-context-strip>div{
  height:100%;display:flex;align-items:center;gap:10px;padding:0 16px;
  border-right:1px solid var(--gv-line-soft);
}
.gv-context-strip>div:first-child{padding-left:0}
.gv-context-strip>div:last-child{border-right:0}
.gv-context-strip span{font-size:9px;letter-spacing:.105em;color:#8A949D;font-weight:720}
.gv-context-strip strong{font-size:11px;color:#515B65;font-weight:650}

/* ---------- Controls ---------- */
.gv-btn{
  height:44px;border-radius:7px;padding:0 15px;border:1px solid transparent;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-size:13px;font-weight:660;cursor:pointer;
  transition:background .12s,border-color .12s,color .12s,transform .06s;
}
.gv-btn:active{transform:translateY(1px)}
.gv-btn-icon{display:grid;place-items:center}
.gv-btn-icon svg{width:16px;height:16px}
.gv-btn-primary{background:#292F35;color:#FFF;border-color:#292F35}
.gv-btn-primary:hover{background:#3A4148;border-color:#3A4148}
.gv-btn-secondary{background:#FBFCFD;border-color:var(--gv-line-strong);color:#46505A}
.gv-btn-secondary:hover{border-color:#C5CBD1;background:#FFF}
.gv-btn-ghost{background:transparent;color:#5B6670}
.gv-btn-ghost:hover{background:#EEF1F3}
.gv-btn-danger{background:#FBFCFD;border-color:#E7D7D7;color:var(--gv-danger)}
.gv-btn-danger:hover{background:var(--gv-danger-soft)}

/* ---------- Metrics ---------- */
.gv-metric-grid{
  margin-bottom:var(--gv-gap);
  gap:0;background:var(--gv-surface);border:1px solid var(--gv-line);
  border-radius:var(--gv-radius);overflow:hidden;
}
.gv-metric{
  background:transparent;border:0;border-right:1px solid var(--gv-line-soft);
  border-radius:0;padding:22px 24px 20px;min-height:148px;
  display:flex;flex-direction:column;
}
.gv-metric:last-child{border-right:0}
.gv-metric-label{font-size:12px;font-weight:650;color:#626C76}
.gv-metric-value{
  font-size:35px;line-height:1;margin-top:20px;color:#272C31;
  font-weight:645;letter-spacing:-.04em;
}
.gv-metric-foot{
  margin-top:auto;padding-top:14px;display:flex;gap:8px;align-items:center;
  font-size:11px;color:#727C85;
}
.gv-trend{font-size:11px;font-weight:730}
.gv-trend.up{color:#536F5E}

/* ---------- Panels ---------- */
.gv-dashboard-grid{margin-top:var(--gv-gap);align-items:stretch}
.gv-panel{
  background:var(--gv-surface);border:1px solid var(--gv-line);
  border-radius:var(--gv-radius);overflow:hidden;
}
.gv-panel-head{
  height:72px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;
  gap:16px;border-bottom:1px solid var(--gv-line-soft);
}
.gv-panel-title{font-size:14px;font-weight:720;color:#30363C}
.gv-panel-subtitle{font-size:11px;color:#69737D;margin-top:3px}
.gv-text-btn{
  height:40px;display:flex;align-items:center;gap:6px;border:0;background:none;
  color:#626C76;font-size:11.5px;cursor:pointer;padding:0 8px;
}
.gv-text-btn svg{width:14px;height:14px}
.gv-text-btn:hover{color:#30363C}
.gv-count{
  min-width:28px;height:28px;border-radius:999px;background:#EEF1F3;
  display:grid;place-items:center;color:#5F6973;font-size:11px;font-weight:700;
}
.gv-kebab{width:40px;height:40px;border:0;background:none;color:#7A848E;letter-spacing:.1em;cursor:pointer}

/* ---------- Project rows ---------- */
.gv-project-list{padding:0 6px}
.gv-project-row{
  min-height:92px;display:grid;grid-template-columns:60px minmax(0,1fr) 152px;
  align-items:center;gap:16px;padding:0 14px;text-decoration:none;
  border-bottom:1px solid var(--gv-line-soft);
}
.gv-project-row:last-child{border-bottom:0}
.gv-project-row:hover{background:#F5F7F8}
.gv-project-date{
  width:52px;text-align:center;padding-right:14px;border-right:1px solid var(--gv-line);
}
.gv-project-date strong{display:block;font-size:21px;line-height:1;color:#2A3036;font-weight:650}
.gv-project-date span{display:block;font-size:9px;letter-spacing:.11em;color:#7B858F;margin-top:6px}
.gv-project-main{min-width:0}
.gv-project-main strong{
  display:block;font-size:13.5px;color:#30363C;font-weight:690;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.gv-project-main span{
  display:block;font-size:11.5px;color:#66717B;margin-top:5px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.gv-project-status{display:flex;flex-direction:column;align-items:flex-end;gap:7px}
.gv-project-status small{font-size:10.5px;color:#747E88}

.gv-status{
  display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;
  background:#EEF1F3;color:#626C76;font-size:10.5px;font-weight:680;white-space:nowrap;
  border:1px solid transparent;
}
.gv-status-quote{background:var(--gv-warning-soft);color:var(--gv-warning)}
.gv-status-ready{background:var(--gv-accent-soft);color:#56638A}
.gv-status-fixed{background:var(--gv-success-soft);color:var(--gv-success)}

/* ---------- Attention ---------- */
.gv-attention-list{padding:6px 16px 12px}
.gv-attention-item{
  width:100%;min-height:78px;border:0;border-bottom:1px solid var(--gv-line-soft);
  background:transparent;display:grid;grid-template-columns:34px minmax(0,1fr) 14px;
  align-items:center;gap:11px;text-align:left;cursor:pointer;padding:9px 2px;
}
.gv-attention-item:last-child{border-bottom:0}
.gv-attention-item:hover .gv-attention-copy strong{color:#20252A}
.gv-attention-index{font-size:10px;color:#7A848E}
.gv-attention-copy strong{display:block;font-size:12.5px;color:#41484F;font-weight:670}
.gv-attention-copy small{display:block;font-size:10.5px;color:#69737D;margin-top:5px}
.gv-attention-arrow{color:#8B959E}

/* ---------- Flow ---------- */
.gv-flow-grid{
  display:grid;grid-template-columns:1fr 32px 1fr 32px 1fr 32px 1fr;
  align-items:center;padding:34px 30px 37px;
}
.gv-flow-cell{text-align:center}
.gv-flow-cell span{display:block;font-size:11px;color:#69737D}
.gv-flow-cell strong{display:block;font-size:29px;color:#2A3036;margin-top:7px;font-weight:645}
.gv-flow-cell small{display:block;font-size:10px;color:#747E88;margin-top:7px}
.gv-flow-line{height:1px;background:var(--gv-line)}

/* ---------- Year to date ---------- */
.gv-ytd{padding:30px 24px 32px}
.gv-ytd>div:not(.gv-ytd-bar){
  display:flex;align-items:center;justify-content:space-between;
  font-size:11.5px;color:#66717B;margin:0 1px 7px;
}
.gv-ytd strong{font-size:12.5px;color:#46505A}
.gv-ytd-bar{height:10px;background:#ECEFF2;border-radius:99px;overflow:hidden;margin-bottom:20px}
.gv-ytd-bar i{display:block;height:100%;background:#BBC2C8;border-radius:inherit}
.gv-ytd-bar:last-child i{background:#69747E}

/* ---------- Preview note ---------- */
.gv-preview-note{
  margin-top:24px;border:1px dashed #CBD1D6;border-radius:8px;padding:16px;
  display:flex;gap:14px;align-items:center;color:#626C76;background:#F7F9FA;
}
.gv-preview-note strong{font-size:9.5px;letter-spacing:.1em;color:#59636D;white-space:nowrap}
.gv-preview-note span{font-size:11px}

/* ---------- Design system ---------- */
.gv-ds-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gv-gap)}
.gv-ds-section{grid-column:span 6;min-height:250px}
.gv-ds-wide{grid-column:1/-1}
.gv-type-samples{padding:20px 22px;display:grid;gap:20px}
.gv-type-samples>div{display:grid;grid-template-columns:90px 1fr;align-items:center}
.gv-type-samples>div>span{font-size:11px;color:#69737D}
.gv-type-samples p{margin:0;font-size:14px;color:#545E68}
.sample-display{font-size:30px;font-weight:660;letter-spacing:-.035em;color:#22272C}
.sample-heading{font-size:19px;font-weight:700;color:#2A3036}
.gv-type-samples small{font-size:10.5px;color:#6A747E;letter-spacing:.07em}

.gv-component-row{padding:26px 22px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.gv-form-demo{padding:22px;display:grid;gap:15px}
.gv-field{display:grid;gap:7px}
.gv-field>span{font-size:11.5px;color:#59636D;font-weight:650}
.gv-field input,.gv-field select{
  height:44px;border:1px solid var(--gv-line-strong);border-radius:7px;
  background:#FCFDFE;padding:0 12px;outline:none;font-size:13px;
}
.gv-field input:focus,.gv-field select:focus{border-color:#8997BE;box-shadow:0 0 0 3px #EEF1F7}
.gv-input-icon{position:relative}
.gv-input-icon svg{position:absolute;left:12px;top:13px;width:17px;height:17px;color:#747E88}
.gv-input-icon input{width:100%;padding-left:38px}

.gv-table-wrap{overflow:auto}
.gv-table{width:100%;border-collapse:collapse;min-width:780px}
.gv-table th{
  height:44px;background:#F5F7F8;border-bottom:1px solid var(--gv-line);
  text-align:left;padding:0 18px;color:#626C76;font-size:11px;font-weight:700;
}
.gv-table td{
  height:60px;border-bottom:1px solid var(--gv-line-soft);padding:0 18px;
  color:#545E68;font-size:12px;
}
.gv-table tbody tr:last-child td{border-bottom:0}
.gv-table td strong{color:#343A40;font-size:12.5px}

.gv-token-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:22px}
.gv-token{border:1px solid var(--gv-line);border-radius:8px;background:#F8FAFB;padding:13px}
.gv-token-swatch{height:52px;border-radius:6px;border:1px solid rgba(0,0,0,.04);margin-bottom:11px}
.gv-token strong{display:block;font-size:11px;color:#4E5862}
.gv-token span{display:block;font-size:10px;color:#6A747E;margin-top:3px}

.gv-principle-list{padding:20px 22px;display:grid;gap:12px}
.gv-principle{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start}
.gv-principle-index{font-size:10.5px;color:#7A848E;padding-top:2px}
.gv-principle strong{display:block;font-size:12.5px;color:#3F464D}
.gv-principle p{margin:4px 0 0;font-size:11px;color:#626C76}

.gv-breakpoints{display:grid;grid-template-columns:repeat(4,1fr);padding:22px;gap:10px}
.gv-breakpoints>div{border:1px solid var(--gv-line);border-radius:8px;padding:17px;background:#F8FAFB}
.gv-breakpoints strong{display:block;font-size:17px;color:#333A40}
.gv-breakpoints span{display:block;font-size:11px;color:#545E68;margin-top:6px;font-weight:650}
.gv-breakpoints small{display:block;font-size:10px;color:#626C76;margin-top:7px;line-height:1.55}

.gv-geometry-demo{padding:22px}
.gv-geometry-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:8px}
.gv-geometry-grid span{
  height:96px;border:1px solid #D4D9DE;background:#F4F6F8;border-radius:4px;
  display:flex;align-items:flex-end;justify-content:center;padding-bottom:8px;
  font-size:10px;color:#69737D;
}
.gv-geometry-notes{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}
.gv-geometry-notes>div{border-top:1px solid var(--gv-line);padding-top:11px}
.gv-geometry-notes strong{display:block;font-size:15px;color:#343A40}
.gv-geometry-notes span{display:block;font-size:10.5px;color:#626C76;margin-top:3px}

.gv-ratio-system{padding:22px}
.gv-ratio-scale{display:grid;gap:12px}
.gv-ratio-scale>div{
  display:grid;grid-template-columns:38px minmax(0,1fr) 70px;
  align-items:center;gap:12px;
}
.gv-ratio-scale span{font-size:10px;color:#7A848E}
.gv-ratio-scale i{display:block;height:4px;background:#68747E;border-radius:99px;max-width:100%}
.gv-ratio-scale small{font-size:10px;color:#69737D}
.gv-ratio-notes{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px}
.gv-ratio-notes>div{border-top:1px solid var(--gv-line);padding-top:12px}
.gv-ratio-notes strong{display:block;font-size:16px;color:#343A40}
.gv-ratio-notes span{display:block;font-size:10.5px;color:#626C76;margin-top:3px}

.gv-backdrop{display:none}


/* ---------- Personal view scale ---------- */
.gv-view-control{position:relative}
.gv-type-btn span{
  font-size:13px;font-weight:720;letter-spacing:-.03em;color:#59636D;
}
.gv-view-menu{
  position:absolute;top:48px;right:0;width:286px;z-index:80;
  background:#FCFCFD;border:1px solid var(--gv-line-strong);
  border-radius:10px;padding:8px;display:none;
  box-shadow:0 14px 36px rgba(34,40,46,.09);
}
.gv-view-menu.open{display:block}
.gv-view-menu-head{padding:10px 10px 11px;border-bottom:1px solid var(--gv-line-soft);margin-bottom:4px}
.gv-view-menu-head strong{display:block;font-size:13px;color:#30363C}
.gv-view-menu-head span{display:block;font-size:10.5px;color:#747E88;margin-top:3px}
.gv-view-menu button{
  width:100%;min-height:52px;padding:8px 10px;border:0;background:transparent;
  border-radius:7px;display:grid;grid-template-columns:72px 1fr;align-items:center;
  text-align:left;cursor:pointer;
}
.gv-view-menu button:hover{background:#F3F5F6}
.gv-view-menu button.active{background:#EDF1F3}
.gv-view-menu button span{font-size:12px;font-weight:690;color:#3B4249}
.gv-view-menu button small{font-size:10.5px;color:#69737D}
.gv-view-menu button.active span:after{
  content:" ·";color:#6676A5;
}

/* Standard = denser, Comfort = default, Large = extra readable. */
html[data-view="standard"]{
  --gv-body-size:15px;
  --gv-display:34px;
  --gv-row-scale:.96;
}
html[data-view="comfort"]{
  --gv-body-size:16px;
  --gv-display:36px;
  --gv-row-scale:1;
}
html[data-view="large"]{
  --gv-body-size:17.5px;
  --gv-display:39px;
  --gv-row-scale:1.08;
}
html[data-view="large"] .gv-nav-item{font-size:15px;height:48px}
html[data-view="large"] .gv-page-title{font-size:18px}
html[data-view="large"] .gv-page-description{font-size:13px}
html[data-view="large"] .gv-project-main strong{font-size:14.5px}
html[data-view="large"] .gv-project-main span{font-size:12.5px}
html[data-view="large"] .gv-project-row{min-height:99px}
html[data-view="large"] .gv-attention-item{min-height:84px}
html[data-view="large"] .gv-metric-label{font-size:13px}
html[data-view="large"] .gv-metric-foot{font-size:12px}
html[data-view="large"] .gv-panel-title{font-size:15px}
html[data-view="large"] .gv-panel-subtitle{font-size:12px}

/* ---------- Optical finishing ---------- */
.gv-panel,.gv-metric-grid{isolation:isolate}
.gv-panel-title,.gv-page-title,.gv-project-main strong{
  text-wrap:balance;
}
.gv-panel-head>*:first-child{transform:translateY(-.5px)}
.gv-project-date strong,.gv-metric-value,.gv-flow-cell strong,.gv-ytd strong{
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1;
}
.gv-project-row,.gv-attention-item,.gv-nav-item,.gv-btn{
  transition:background-color 120ms ease,border-color 120ms ease,color 120ms ease;
}
.gv-project-row:active,.gv-attention-item:active{background:#F0F3F5}

/* ---------- Comfort system samples ---------- */
.gv-comfort-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
}
.gv-comfort-card{
  min-height:174px;padding:22px;border-right:1px solid var(--gv-line-soft);
}
.gv-comfort-card:last-child{border-right:0}
.gv-comfort-card>span{display:block;font-size:9px;color:#8A949D;letter-spacing:.08em}
.gv-comfort-card strong{display:block;font-size:24px;line-height:1.05;color:#30363C;margin-top:18px;font-weight:650}
.gv-comfort-card small{display:block;font-size:10.5px;color:#69737D;margin-top:7px}
.gv-comfort-card p{margin:16px 0 0;font-size:11px;color:#626C76;line-height:1.55}

.gv-micro-demo{padding:8px 18px 12px}
.gv-micro-row{
  width:100%;min-height:66px;border:0;border-bottom:1px solid var(--gv-line-soft);
  background:transparent;display:grid;grid-template-columns:24px minmax(0,1fr) 70px;
  align-items:center;gap:10px;text-align:left;padding:6px 4px;cursor:default;
}
.gv-micro-row:last-child{border-bottom:0}
.gv-micro-dot{width:7px;height:7px;border-radius:50%;background:#89939C}
.gv-micro-row strong{display:block;font-size:12.5px;color:#3F464D}
.gv-micro-row small{display:block;font-size:10.5px;color:#69737D;margin-top:3px}
.gv-micro-row em{text-align:right;font-style:normal;font-size:10px;color:#7A848E}

/* ---------- Responsive ---------- */
@media (min-width:1600px){
  :root{--gv-content-x:44px}
  html[data-view="comfort"]{--gv-body-size:16.5px;--gv-display:38px}
  html[data-view="large"]{--gv-body-size:18px;--gv-display:41px}
}
@media (min-width:2000px){
  :root{--sidebar-expanded-width:248px;--gv-content-x:52px}
  html[data-view="comfort"]{--gv-body-size:17px;--gv-display:40px}
  html[data-view="large"]{--gv-body-size:18.5px;--gv-display:43px}
}
@media (max-width:1439px){
  :root{--sidebar-expanded-width:232px;--gv-content-x:32px}
  html[data-view="standard"]{--gv-body-size:14.75px;--gv-display:32px}
  html[data-view="comfort"]{--gv-body-size:15.75px;--gv-display:35px}
  html[data-view="large"]{--gv-body-size:17px;--gv-display:38px}
  .gv-project-row{min-height:88px}
}
@media (max-width:1199px){
  :root{--sidebar-collapsed-width:84px}
  .gv-brand{justify-content:center;padding:0}
  .gv-brand-word{display:none}
  .gv-brand-mark{display:block;font-size:11px;letter-spacing:.08em;font-weight:800;color:#30363C}
  .gv-nav{padding:16px 10px}
  .gv-nav-label,.gv-nav-text,.gv-sidebar-caption{display:none}
  .gv-nav-item{justify-content:center;padding:0;height:48px}
  .gv-nav-item.active:before{left:-10px}
  .gv-dashboard-grid>.gv-col-8,.gv-dashboard-grid>.gv-col-4{grid-column:1/-1}
  .gv-attention-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px}
  .gv-attention-item{
    border:1px solid var(--gv-line);border-radius:8px;padding:13px;
    grid-template-columns:26px minmax(0,1fr) 10px;
  }
}
@media (max-width:959px){
  :root{--gv-content-x:20px}
  .gv-page-description{display:none}
  .gv-metric-grid>.gv-col-3{grid-column:span 6}
  .gv-metric:nth-child(2){border-right:0}
  .gv-metric:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
  .gv-attention-list{grid-template-columns:1fr}
  .gv-ds-section{grid-column:1/-1}
  .gv-token-grid{grid-template-columns:repeat(3,1fr)}
  .gv-comfort-grid{grid-template-columns:repeat(2,1fr)}
  .gv-comfort-card:nth-child(2){border-right:0}
  .gv-comfort-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
  .gv-breakpoints{grid-template-columns:repeat(2,1fr)}
  .gv-geometry-grid{grid-template-columns:repeat(6,1fr)}
  .gv-geometry-grid span{height:64px}
}
@media (max-width:767px){
  :root{
    --sidebar-expanded-width:248px;--header-height:68px;--gv-body-size:15.5px;
    --gv-display:28px;--gv-content-x:13px;
  }
  .gv-sidebar{
    transform:translateX(-101%);transition:transform .2s ease;
    box-shadow:10px 0 30px rgba(20,25,20,.08);
  }
  body.gv-menu-open .gv-sidebar{transform:translateX(0)}
  .gv-brand{justify-content:flex-start;padding:0 22px}
  .gv-brand-word{display:block}.gv-brand-mark{display:none}
  .gv-nav{padding:16px 12px}
  .gv-nav-label,.gv-nav-text,.gv-sidebar-caption{display:block}
  .gv-nav-item{justify-content:flex-start;padding:0 11px;height:46px}
  .gv-shell{margin-left:0}
  .gv-mobile-menu{display:grid}
  .gv-user-meta{display:none}.gv-logout{display:none}
  .gv-main{padding-top:20px;padding-bottom:34px}
  .gv-hero{align-items:flex-start;flex-direction:column;margin-top:3px;margin-bottom:24px}
  .gv-hero p{font-size:13px}
  .gv-hero-actions{width:100%}
  .gv-hero-actions .gv-btn{flex:1}
  .gv-context-strip{grid-template-columns:1fr 1fr;height:auto}
  .gv-context-strip>div{min-height:44px}
  .gv-context-strip>div:nth-child(3){display:none}
  .gv-metric-grid{gap:10px}
  .gv-metric-grid>.gv-col-3{grid-column:span 6}
  .gv-metric:nth-child(2){border-right:0}
  .gv-metric:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
  .gv-metric{padding:17px;min-height:132px}
  .gv-metric-value{font-size:29px;margin-top:14px}
  .gv-panel-head{height:66px;padding:0 14px}
  .gv-project-row{grid-template-columns:48px minmax(0,1fr);min-height:78px;padding:0 9px}
  .gv-project-status{display:none}
  .gv-flow-grid{
    grid-template-columns:1fr 12px 1fr 12px 1fr 12px 1fr;
    padding:25px 12px 28px;
  }
  .gv-flow-cell strong{font-size:23px}
  .gv-flow-cell small{display:none}
  .gv-preview-note{align-items:flex-start;flex-direction:column;gap:6px}
  .gv-token-grid{grid-template-columns:repeat(2,1fr)}
  .gv-view-menu{position:fixed;left:12px;right:12px;top:76px;width:auto}
  .gv-comfort-grid{grid-template-columns:1fr}
  .gv-comfort-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}
  .gv-comfort-card:last-child{border-bottom:0}
  .gv-breakpoints{grid-template-columns:1fr}
  .gv-geometry-notes,.gv-ratio-notes{grid-template-columns:repeat(2,1fr)}
  .gv-backdrop{position:fixed;inset:0;z-index:55;background:rgba(17,20,24,.26)}
  body.gv-menu-open .gv-backdrop{display:block}
}
@media (max-width:479px){
  .gv-metric-grid>.gv-col-3{grid-column:1/-1}
  .gv-metric{border-right:0;border-bottom:1px solid var(--gv-line-soft)}
  .gv-metric:last-child{border-bottom:0}
  .gv-topbar-right{gap:5px}
  .gv-user-avatar{width:32px;height:32px}
  .gv-geometry-grid{grid-template-columns:repeat(4,1fr)}
}


/* =========================================================
   COMPONENT SYSTEM · V0.6
   ========================================================= */
body.gv-overlay-open{overflow:hidden}

.gv-component-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:var(--gv-gap);
}
.gv-component-card{grid-column:span 6}
.gv-component-wide{grid-column:1/-1}
.gv-component-body{
  min-height:170px;padding:24px;display:flex;align-items:flex-end;justify-content:space-between;gap:28px
}
.gv-component-copy{max-width:460px}
.gv-component-copy strong{display:block;font-size:15px;color:#30363C;font-weight:690}
.gv-component-copy p{margin:7px 0 0;font-size:12px;color:#69737D;line-height:1.65}

/* Toolbar / search */
.gv-toolbar-demo{
  min-height:72px;display:flex;align-items:center;gap:8px;padding:14px 18px;
}
.gv-search-field{
  width:min(360px,38%);height:44px;border:1px solid var(--gv-line-strong);
  border-radius:8px;background:#FCFDFE;display:flex;align-items:center;gap:9px;padding:0 12px;
}
.gv-search-field svg{width:17px;height:17px;color:#77818A}
.gv-search-field input{width:100%;border:0;outline:0;background:transparent;font-size:12.5px}
.gv-search-field input::placeholder{color:#939BA3}
.gv-filter-btn{
  height:36px;border:1px solid transparent;border-radius:7px;background:transparent;
  padding:0 10px;font-size:11.5px;color:#66717B;cursor:pointer
}
.gv-filter-btn span{margin-left:5px;color:#9098A0;font-size:10px}
.gv-filter-btn:hover{background:#F2F4F6}
.gv-filter-btn.active{background:#EDEFF2;color:#343B42;font-weight:680}
.gv-toolbar-spacer{flex:1}
.gv-date-field{
  height:40px;border:1px solid var(--gv-line-strong);border-radius:7px;background:#FBFCFD;
  display:flex;align-items:center;gap:8px;padding:0 10px
}
.gv-date-field span{font-size:10px;color:#7A848E}
.gv-date-field input{border:0;background:transparent;outline:0;font-size:11.5px;color:#4C555E}

/* Tabs */
.gv-tabs{min-height:240px}
.gv-tab-list{
  height:52px;border-bottom:1px solid var(--gv-line);display:flex;align-items:flex-end;padding:0 20px;gap:24px
}
.gv-tab{
  position:relative;height:52px;border:0;background:transparent;padding:0;
  font-size:12px;color:#77818B;cursor:pointer
}
.gv-tab:hover{color:#40474E}
.gv-tab.active{color:#282E34;font-weight:690}
.gv-tab.active:after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#3F464D
}
.gv-tab-panel{display:none}
.gv-tab-panel.active{display:block}
.gv-tab-preview{padding:32px 24px 36px}
.gv-tab-preview>span{display:block;font-size:9.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-tab-preview>strong{display:block;font-size:22px;letter-spacing:-.025em;color:#30363C;margin-top:12px}
.gv-tab-preview>small{display:block;font-size:11.5px;color:#69737D;margin-top:8px}

/* Empty */
.gv-empty-state{
  min-height:260px;padding:34px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center
}
.gv-empty-symbol{
  width:38px;height:38px;border:1px solid var(--gv-line-strong);border-radius:50%;
  display:grid;place-items:center;color:#67717B;font-size:20px;font-weight:300;background:#F8FAFB
}
.gv-empty-state strong{margin-top:16px;font-size:13px;color:#3D444B}
.gv-empty-state p{margin:6px 0 17px;font-size:11px;color:#77818B}

/* Skeleton */
.gv-skeleton-stack{min-height:220px;padding:34px 24px;display:flex;flex-direction:column;justify-content:center;gap:13px}
.gv-skeleton{
  display:block;height:12px;border-radius:999px;background:
  linear-gradient(90deg,#ECEFF2 25%,#F5F6F7 38%,#ECEFF2 63%);
  background-size:400% 100%;animation:gv-shimmer 1.6s ease-in-out infinite
}
.gv-skeleton-title{height:18px;width:42%}
.gv-skeleton-line{width:84%}.gv-skeleton-line.short{width:62%}
@keyframes gv-shimmer{0%{background-position:100% 0}100%{background-position:0 0}}

/* Inline notice */
.gv-inline-notice{
  min-height:190px;margin:22px;border:1px solid var(--gv-line);
  border-radius:8px;background:#F7F9FA;padding:18px;display:grid;
  grid-template-columns:30px minmax(0,1fr) auto;align-items:start;gap:12px
}
.gv-inline-mark{
  width:24px;height:24px;border:1px solid #CFD5DA;border-radius:50%;
  display:grid;place-items:center;color:#65707A;font-size:11px;font-family:Georgia,serif
}
.gv-inline-notice strong{display:block;font-size:12.5px;color:#3D444B}
.gv-inline-notice p{margin:4px 0 0;font-size:11px;color:#69737D;line-height:1.6}
.gv-inline-notice button{
  border:0;background:transparent;font-size:11px;color:#536382;cursor:pointer;padding:3px 4px
}

/* Refined table */
.gv-table-refined td:first-child strong{display:block}
.gv-table-refined td:first-child small{display:block;font-size:10px;color:#838C95;margin-top:3px}
.gv-table-right{text-align:right;font-variant-numeric:tabular-nums}

/* Modal */
.gv-modal-backdrop{
  position:fixed;inset:0;z-index:100;background:rgba(29,34,39,.22);
  backdrop-filter:blur(2px);display:none;align-items:center;justify-content:center;padding:20px
}
.gv-modal-backdrop.open{display:flex}
.gv-modal{
  width:min(560px,100%);background:#FCFCFD;border:1px solid #D4D9DE;border-radius:10px;
  box-shadow:0 24px 70px rgba(28,33,38,.13);overflow:hidden
}
.gv-modal-head{
  height:76px;padding:0 22px;border-bottom:1px solid var(--gv-line);
  display:flex;align-items:center;justify-content:space-between
}
.gv-modal-head>div>span,.gv-drawer-head>div>span{
  display:block;font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:720
}
.gv-modal-head>div>strong,.gv-drawer-head>div>strong{
  display:block;font-size:16px;color:#30363C;margin-top:4px
}
.gv-modal-head .gv-icon-btn,.gv-drawer-head .gv-icon-btn{font-size:22px;font-weight:300}
.gv-modal-body{padding:22px;display:grid;gap:15px}
.gv-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gv-modal-foot{
  min-height:68px;border-top:1px solid var(--gv-line);display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:0 22px
}

/* Drawer */
.gv-drawer{
  position:fixed;right:0;top:0;bottom:0;z-index:110;width:min(440px,92vw);
  background:#FCFCFD;border-left:1px solid var(--gv-line-strong);
  transform:translateX(101%);transition:transform 180ms ease;display:flex;flex-direction:column
}
.gv-drawer.open{transform:translateX(0)}
.gv-drawer-backdrop{
  position:fixed;inset:0;z-index:105;background:rgba(29,34,39,.18);display:none
}
.gv-drawer-backdrop.open{display:block}
.gv-drawer-head{
  height:76px;padding:0 22px;border-bottom:1px solid var(--gv-line);
  display:flex;align-items:center;justify-content:space-between
}
.gv-drawer-body{padding:24px}
.gv-drawer-stat{
  min-height:96px;border-bottom:1px solid var(--gv-line);display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:20px
}
.gv-drawer-stat span{font-size:11px;color:#69737D}
.gv-drawer-stat strong{font-size:34px;color:#30363C;font-weight:645;line-height:1}
.gv-drawer-section{padding:24px 0;border-bottom:1px solid var(--gv-line-soft)}
.gv-drawer-label{display:block;font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:720;margin-bottom:12px}
.gv-drawer-section>strong{display:block;font-size:13px;color:#3C434A}
.gv-drawer-section>small{display:block;font-size:11px;color:#69737D;margin-top:5px}
.gv-drawer-section>a{
  min-height:42px;display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid var(--gv-line-soft);text-decoration:none;font-size:11.5px;color:#4C555E
}
.gv-drawer-section>a:last-child{border-bottom:0}
.gv-drawer-section>a:hover{color:#20262B}
.gv-drawer-section>a em{font-style:normal;color:#8A949D;font-size:10px}

/* Toast */
.gv-toast-stack{
  position:fixed;right:20px;bottom:20px;z-index:140;display:flex;flex-direction:column;gap:8px;pointer-events:none
}
.gv-toast{
  width:320px;min-height:66px;background:#30363C;color:#FFF;border-radius:9px;
  box-shadow:0 14px 34px rgba(24,29,34,.16);padding:12px 14px;
  display:grid;grid-template-columns:26px 1fr;align-items:center;gap:10px;
  opacity:0;transform:translateY(8px);transition:opacity 160ms ease,transform 160ms ease
}
.gv-toast.show{opacity:1;transform:translateY(0)}
.gv-toast-check{
  width:22px;height:22px;border:1px solid rgba(255,255,255,.3);border-radius:50%;
  display:grid;place-items:center;font-size:11px
}
.gv-toast strong{display:block;font-size:12px;font-weight:650}
.gv-toast small{display:block;font-size:10px;color:#C9CED3;margin-top:2px}

@media (max-width:959px){
  .gv-component-card{grid-column:1/-1}
  .gv-toolbar-demo{flex-wrap:wrap}
  .gv-search-field{width:100%;flex:1 0 100%}
  .gv-toolbar-spacer{display:none}
  .gv-date-field{margin-left:auto}
}
@media (max-width:767px){
  .gv-component-body{min-height:150px;align-items:flex-start;flex-direction:column}
  .gv-toolbar-demo{align-items:stretch}
  .gv-filter-btn{flex:1}
  .gv-date-field{width:100%;margin-left:0;justify-content:space-between}
  .gv-tab-list{gap:18px;overflow:auto}
  .gv-modal-backdrop{padding:10px;align-items:flex-end}
  .gv-modal{border-radius:12px 12px 8px 8px}
  .gv-form-row{grid-template-columns:1fr}
  .gv-inline-notice{grid-template-columns:30px 1fr}
  .gv-inline-notice button{grid-column:2;justify-self:start}
  .gv-toast-stack{left:12px;right:12px;bottom:12px}
  .gv-toast{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .gv-skeleton{animation:none;background:#ECEFF2}
  .gv-drawer,.gv-toast{transition:none}
}



/* =========================================================
   INTERACTION ESSENTIALS · V0.7
   ========================================================= */

/* Snackbar */
.gv-snackbar-stack{
  position:fixed;left:20px;bottom:20px;z-index:145;pointer-events:none
}
.gv-snackbar{
  width:min(420px,calc(100vw - 40px));min-height:58px;
  border:1px solid #454D55;background:#30363C;color:#FFF;border-radius:9px;
  box-shadow:0 14px 34px rgba(24,29,34,.14);
  display:flex;align-items:center;gap:18px;justify-content:space-between;
  padding:0 10px 0 16px;opacity:0;transform:translateY(8px);
  transition:opacity 160ms ease,transform 160ms ease;pointer-events:auto
}
.gv-snackbar.show{opacity:1;transform:translateY(0)}
.gv-snackbar>span{font-size:12px;font-weight:590}
.gv-snackbar>button{
  height:38px;border:0;background:transparent;color:#D9E0F4;
  border-radius:7px;padding:0 10px;font-size:11px;font-weight:700;cursor:pointer
}
.gv-snackbar>button:hover{background:rgba(255,255,255,.08);color:#FFF}

/* Tooltip */
.gv-tooltip{
  position:fixed;z-index:180;max-width:240px;pointer-events:none;
  background:#2F353B;color:#FFF;border-radius:6px;padding:6px 8px;
  font-size:10.5px;font-weight:590;line-height:1.3;
  opacity:0;transform:translateY(2px);
  transition:opacity 100ms ease,transform 100ms ease
}
.gv-tooltip.show{opacity:1;transform:translateY(0)}
.gv-interaction-demo{
  min-height:170px;padding:24px;display:flex;align-items:center;gap:10px
}

/* Menu popover */
.gv-menu-demo{position:relative;margin-left:8px}
.gv-menu-popover{
  position:absolute;left:0;top:48px;width:190px;z-index:90;
  background:#FCFCFD;border:1px solid var(--gv-line-strong);border-radius:9px;
  padding:6px;display:none;box-shadow:0 14px 34px rgba(35,40,45,.09)
}
.gv-menu-popover.open{display:block}
.gv-menu-popover button{
  width:100%;min-height:40px;border:0;background:transparent;border-radius:6px;
  padding:0 9px;display:flex;align-items:center;justify-content:space-between;
  text-align:left;color:#59636D;font-size:11.5px;cursor:pointer
}
.gv-menu-popover button:hover{background:#F2F4F6;color:#30363C}
.gv-menu-popover button.active{color:#30363C;font-weight:680}
.gv-menu-popover button span{font-size:10px;color:#6576A5}

/* Confirm dialog */
.gv-confirm-backdrop{
  background:rgba(29,34,39,.20)
}
.gv-confirm{
  width:min(430px,100%);background:#FCFCFD;border:1px solid #D4D9DE;
  border-radius:10px;box-shadow:0 24px 70px rgba(28,33,38,.12);overflow:hidden
}
.gv-confirm-body{padding:26px 24px 22px}
.gv-confirm-kicker{
  display:block;font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:720
}
.gv-confirm-body>strong{
  display:block;margin-top:13px;font-size:17px;color:#30363C;letter-spacing:-.02em
}
.gv-confirm-body>p{
  margin:8px 0 0;font-size:11.5px;color:#69737D;line-height:1.65
}
.gv-confirm-foot{
  min-height:68px;border-top:1px solid var(--gv-line);display:flex;align-items:center;
  justify-content:flex-end;gap:8px;padding:0 18px
}
.gv-btn-danger-fill{
  background:#8D4E4E;border-color:#8D4E4E;color:#FFF
}
.gv-btn-danger-fill:hover{background:#7C4545;border-color:#7C4545}

/* Pagination */
.gv-pagination-demo{
  min-height:170px;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:18px
}
.gv-pagination-demo>span{font-size:11px;color:#69737D}
.gv-pagination{display:flex;align-items:center;gap:4px}
.gv-pagination button{
  width:36px;height:36px;border:1px solid transparent;border-radius:7px;background:transparent;
  color:#66717B;font-size:11.5px;cursor:pointer
}
.gv-pagination button:hover{background:#F0F2F4;color:#30363C}
.gv-pagination button.active{
  background:#E9EDF0;border-color:#D7DCE0;color:#30363C;font-weight:690
}
.gv-pagination>span{width:24px;text-align:center;color:#8A949D;font-size:11px}

@media (max-width:767px){
  .gv-snackbar-stack{left:12px;right:12px;bottom:12px}
  .gv-snackbar{width:100%}
  .gv-interaction-demo{flex-wrap:wrap}
  .gv-menu-demo{margin-left:0}
  .gv-pagination-demo{align-items:flex-start;flex-direction:column}
}
@media (prefers-reduced-motion:reduce){
  .gv-snackbar,.gv-tooltip{transition:none}
}



/* =========================================================
   PRODUCT UX · V0.8
   ========================================================= */

/* Command palette */
.gv-command-trigger{
  height:40px;min-width:170px;border:1px solid var(--gv-line-strong);
  border-radius:8px;background:#F9FAFB;color:#59636D;
  display:flex;align-items:center;gap:8px;padding:0 9px 0 11px;cursor:pointer
}
.gv-command-trigger:hover{background:#FFF;border-color:#C7CDD2}
.gv-command-icon{display:grid;place-items:center}
.gv-command-icon svg{width:15px;height:15px}
.gv-command-copy{font-size:11.5px;flex:1;text-align:left}
.gv-command-trigger kbd,.gv-command-search kbd,.gv-command-foot kbd{
  font-family:inherit;font-size:9.5px;font-weight:650;color:#7A848E;
  border:1px solid #D5DADE;background:#F1F3F5;border-radius:5px;
  padding:2px 5px;line-height:1.2
}
.gv-command-backdrop{
  position:fixed;inset:0;z-index:160;background:rgba(29,34,39,.18);
  backdrop-filter:blur(2px);display:none;align-items:flex-start;justify-content:center;padding:10vh 16px 16px
}
.gv-command-backdrop.open{display:flex}
.gv-command-palette{
  width:min(620px,100%);background:#FCFCFD;border:1px solid #D2D7DC;
  border-radius:12px;box-shadow:0 26px 80px rgba(27,32,37,.15);overflow:hidden
}
.gv-command-search{
  height:62px;border-bottom:1px solid var(--gv-line);display:grid;
  grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 16px
}
.gv-command-search svg{width:18px;height:18px;color:#68727C}
.gv-command-search input{
  width:100%;border:0;outline:0;background:transparent;font-size:14px;color:#30363C
}
.gv-command-search input::placeholder{color:#929AA3}
.gv-command-body{padding:8px}
.gv-command-label{
  padding:8px 10px 7px;font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:730
}
.gv-command-item{
  width:100%;min-height:58px;border:0;background:transparent;border-radius:8px;
  display:grid;grid-template-columns:32px minmax(0,1fr) 18px;align-items:center;
  gap:10px;padding:7px 10px;text-align:left;cursor:pointer;color:#4C555E
}
.gv-command-item:hover,.gv-command-item.active{background:#EEF1F3;color:#2F353B}
.gv-command-key{
  width:28px;height:28px;border:1px solid #D4D9DE;border-radius:7px;
  display:grid;place-items:center;font-size:10px;color:#6D7781;background:#F8FAFB
}
.gv-command-item strong{display:block;font-size:12.5px}
.gv-command-item small{display:block;font-size:10.5px;color:#747E88;margin-top:2px}
.gv-command-item em{font-style:normal;color:#8A949D;font-size:12px}
.gv-command-foot{
  min-height:42px;border-top:1px solid var(--gv-line);display:flex;align-items:center;
  justify-content:flex-end;gap:14px;padding:0 12px;background:#F8F9FA
}
.gv-command-foot span{font-size:9.5px;color:#7A848E;display:flex;align-items:center;gap:4px}

/* Stepper */
.gv-stepper{
  min-height:106px;padding:0 24px;display:grid;
  grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:10px
}
.gv-step{
  border:0;background:transparent;display:flex;text-decoration:none;align-items:center;gap:10px;padding:0;cursor:default;text-align:left
}
.gv-step>span{
  width:30px;height:30px;border:1px solid #D2D7DC;border-radius:50%;
  display:grid;place-items:center;font-size:9px;color:#7A848E;background:#F8FAFB
}
.gv-step strong{display:block;font-size:12px;color:#59636D}
.gv-step small{display:block;font-size:9.5px;color:#8A949D;margin-top:2px}
.gv-step.done>span{background:#E9EEF0;border-color:#CCD4D8;color:#46515A}
.gv-step.done strong{color:#3F474F}
.gv-step.active>span{background:#30363C;border-color:#30363C;color:#FFF}
.gv-step.active strong{color:#20262B}
.gv-stepper>i{height:1px;background:#DDE2E5}

/* Autocomplete */
.gv-autocomplete-demo{min-height:190px;padding:24px}
.gv-autocomplete{position:relative}
.gv-autocomplete-menu{
  position:absolute;left:0;right:0;top:48px;z-index:80;
  border:1px solid var(--gv-line-strong);border-radius:9px;background:#FCFCFD;
  padding:6px;box-shadow:0 14px 34px rgba(35,40,45,.08);display:none
}
.gv-autocomplete-menu.open{display:block}
.gv-autocomplete-menu button{
  width:100%;min-height:52px;border:0;background:transparent;border-radius:7px;
  padding:7px 10px;text-align:left;cursor:pointer
}
.gv-autocomplete-menu button:hover{background:#F1F3F5}
.gv-autocomplete-menu strong{display:block;font-size:12px;color:#3D444B}
.gv-autocomplete-menu small{display:block;font-size:10px;color:#747E88;margin-top:3px}

/* Date & time */
.gv-datetime-demo{
  min-height:190px;padding:24px;display:grid;grid-template-columns:1.4fr 1fr 20px 1fr;gap:10px;align-items:end
}
.gv-datetime-dash{height:44px;display:grid;place-items:center;color:#A0A7AE}

/* File drop */
.gv-file-drop{
  min-height:260px;margin:22px;border:1px dashed #C7CDD2;border-radius:10px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  padding:28px;background:#F9FAFB;transition:background .12s,border-color .12s
}
.gv-file-drop.dragging{background:#F0F3F5;border-color:#87949D}
.gv-file-drop.has-file{border-style:solid;background:#F5F8F6}
.gv-file-drop-icon{
  width:38px;height:38px;border:1px solid #D3D9DE;border-radius:50%;
  display:grid;place-items:center;font-size:18px;color:#68727C;background:#FCFCFD
}
.gv-file-drop strong{margin-top:14px;font-size:12.5px;color:#3D444B}
.gv-file-drop p{margin:5px 0 16px;font-size:10.5px;color:#7A848E}

/* Inline edit */
.gv-inline-edit-demo{padding:8px 20px 12px}
.gv-inline-row{
  min-height:62px;border-bottom:1px solid var(--gv-line-soft);
  display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:14px
}
.gv-inline-row:last-child{border-bottom:0}
.gv-inline-row>span{font-size:11px;color:#69737D}
.gv-inline-row>div{display:flex;align-items:center;justify-content:space-between;gap:10px}
.gv-inline-row strong{font-size:12px;color:#3D444B;font-weight:650}
.gv-inline-row button{
  border:0;background:transparent;font-size:10.5px;color:#69737D;cursor:pointer;padding:5px
}
.gv-inline-row button:hover{color:#2F353B}
.gv-inline-input{
  width:min(320px,100%);height:36px;border:1px solid var(--gv-line-strong);
  border-radius:7px;background:#FCFDFE;padding:0 9px;outline:none;font-size:12px
}
.gv-inline-input:focus{border-color:#8997BE;box-shadow:0 0 0 3px #EEF1F7}

/* Notification center */
.gv-notification-center{padding:4px 16px 10px}
.gv-notification-center>button{
  width:100%;min-height:70px;border:0;border-bottom:1px solid var(--gv-line-soft);
  background:transparent;display:grid;grid-template-columns:12px minmax(0,1fr) auto;
  align-items:center;gap:11px;text-align:left;padding:7px 3px;cursor:pointer
}
.gv-notification-center>button:last-child{border-bottom:0}
.gv-notification-center>button:hover{background:#F8F9FA}
.gv-noti-dot{width:7px;height:7px;border-radius:50%;background:#76828C}
.gv-noti-dot.high{background:#566B91}
.gv-noti-dot.quiet{background:#B1B7BD}
.gv-notification-center strong{display:block;font-size:12px;color:#3D444B}
.gv-notification-center small{display:block;font-size:10.5px;color:#747E88;margin-top:3px}
.gv-notification-center em{font-style:normal;font-size:10.5px;color:#69737D}

/* Project detail prototype */
.gv-project-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:8px 0 24px
}
.gv-project-heading h1{
  margin:0;font-size:34px;line-height:1.15;letter-spacing:-.038em;color:#20252A;font-weight:665
}
.gv-project-heading p{margin:9px 0 0;font-size:13px;color:#69737D}
.gv-project-actions{display:flex;gap:8px}
.gv-project-lifecycle{margin-bottom:16px}
.gv-stepper-project{min-height:112px}
.gv-project-layout{align-items:start}
.gv-project-overview{
  display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--gv-line)
}
.gv-project-overview>div{min-height:116px;padding:22px;border-right:1px solid var(--gv-line-soft)}
.gv-project-overview>div:last-child{border-right:0}
.gv-project-overview span,.gv-project-note>span{
  display:block;font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:720
}
.gv-project-overview strong{display:block;font-size:14px;color:#3D444B;margin-top:12px}
.gv-project-overview small{display:block;font-size:10.5px;color:#747E88;margin-top:3px}
.gv-project-note{padding:22px}
.gv-project-note p{margin:10px 0 0;font-size:12px;color:#59636D;line-height:1.7}
.gv-project-progress{
  display:grid;grid-template-columns:repeat(2,1fr);gap:0;padding:12px 20px 0
}
.gv-project-progress>div{min-height:76px;padding:14px 0;border-bottom:1px solid var(--gv-line-soft)}
.gv-project-progress span{display:block;font-size:10.5px;color:#747E88}
.gv-project-progress strong{display:block;font-size:22px;color:#343B42;margin-top:4px}
.gv-progress-rail{height:8px;background:#ECEFF2;border-radius:99px;margin:18px 20px 0;overflow:hidden}
.gv-progress-rail i{display:block;height:100%;background:#68757E;border-radius:inherit}
.gv-progress-copy{margin:10px 20px 20px;font-size:10.5px;color:#747E88}
.gv-role-list{padding:6px 18px 12px}
.gv-role-list>div{
  position:relative;min-height:76px;border-bottom:1px solid var(--gv-line-soft);
  display:grid;grid-template-columns:1fr 90px 130px;align-items:center;gap:12px
}
.gv-role-list>div:last-child{border-bottom:0}
.gv-role-list strong{font-size:12.5px;color:#3D444B}
.gv-role-list span,.gv-role-list em{font-size:10.5px;color:#747E88;font-style:normal}
.gv-role-list>div>i{
  position:absolute;left:0;bottom:-1px;height:2px;background:#77848E;border-radius:99px
}
.gv-activity-list{padding:12px 20px 18px}
.gv-activity-list>div{
  position:relative;display:grid;grid-template-columns:12px 1fr;gap:10px;min-height:64px
}
.gv-activity-list>div>span{
  width:7px;height:7px;border-radius:50%;background:#8C959E;margin-top:7px;position:relative
}
.gv-activity-list>div:not(:last-child)>span:after{
  content:"";position:absolute;left:3px;top:9px;width:1px;height:48px;background:#DDE2E5
}
.gv-activity-list p{margin:0}
.gv-activity-list strong{display:block;font-size:11.5px;color:#3D444B}
.gv-activity-list small{display:block;font-size:10px;color:#747E88;margin-top:4px}

@media (max-width:1199px){
  .gv-command-copy{display:none}
  .gv-command-trigger{min-width:40px;width:40px;padding:0;justify-content:center}
  .gv-command-trigger kbd{display:none}
  .gv-project-layout>.gv-col-8,.gv-project-layout>.gv-col-4{grid-column:1/-1}
}
@media (max-width:959px){
  .gv-datetime-demo{grid-template-columns:1fr 1fr}
  .gv-datetime-dash{display:none}
  .gv-project-overview{grid-template-columns:repeat(2,1fr)}
  .gv-project-overview>div:nth-child(2){border-right:0}
  .gv-project-overview>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
}
@media (max-width:767px){
  .gv-command-backdrop{padding:8px;align-items:flex-start}
  .gv-command-palette{margin-top:7vh}
  .gv-stepper{
    grid-template-columns:1fr;gap:0;padding:12px 18px
  }
  .gv-stepper>i{width:1px;height:18px;margin-left:15px}
  .gv-step{min-height:54px}
  .gv-datetime-demo{grid-template-columns:1fr}
  .gv-project-hero{align-items:flex-start;flex-direction:column}
  .gv-project-actions{width:100%}
  .gv-project-actions .gv-btn{flex:1}
  .gv-project-heading h1{font-size:28px}
  .gv-project-overview{grid-template-columns:1fr}
  .gv-project-overview>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}
  .gv-project-overview>div:last-child{border-bottom:0}
  .gv-role-list>div{grid-template-columns:1fr 80px}
  .gv-role-list em{grid-column:1/-1;margin-top:-8px;padding-bottom:10px}
  .gv-inline-row{grid-template-columns:1fr;gap:4px;padding:12px 0}
}



/* =========================================================
   CALENDAR 2.0 · V0.9
   FullCalendar = interaction engine. GOLDVISION = visual layer.
   ========================================================= */
.gv-calendar-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:8px 0 24px
}
.gv-calendar-hero h1{
  margin:0;font-size:34px;line-height:1.14;letter-spacing:-.038em;color:#20252A;font-weight:665
}
.gv-calendar-hero p{margin:9px 0 0;font-size:13px;color:#68727C}
.gv-calendar-hero-actions{display:flex;gap:8px}
.gv-calendar-hero-actions .gv-btn svg{width:15px;height:15px}

.gv-calendar-commandbar{
  min-height:56px;border-top:1px solid var(--gv-line);border-bottom:1px solid var(--gv-line);
  display:flex;align-items:center;gap:18px;margin-bottom:16px
}
.gv-calendar-nav{display:flex;align-items:center;gap:2px}
.gv-calendar-arrow svg{width:15px;height:15px}
.gv-calendar-arrow{transform:rotate(180deg)}
.gv-calendar-arrow.next{transform:none}
.gv-calendar-period{margin-left:7px;min-width:76px;font-size:11px;color:#59636D;font-weight:680}

.gv-calendar-filters{display:flex;align-items:center;gap:2px}
.gv-owner-filter{
  height:34px;border:1px solid transparent;border-radius:7px;background:transparent;
  padding:0 9px;display:flex;align-items:center;gap:7px;font-size:11px;color:#747E88;cursor:pointer
}
.gv-owner-filter:hover{background:#EEF1F3;color:#3D444B}
.gv-owner-filter.active{background:#E9EDF0;color:#30363C;font-weight:680}
.gv-owner-dot,.gv-fc-owner-dot{
  width:7px;height:7px;border-radius:50%;display:inline-block;flex:0 0 auto
}
.gv-owner-dot.all{background:#707A83}
.gv-owner-dot.me,.gv-fc-owner-dot.me,.gv-agenda-line.me{background:#5A6996}
.gv-owner-dot.semin,.gv-fc-owner-dot.semin,.gv-agenda-line.semin{background:#657F70}
.gv-owner-dot.seoha,.gv-fc-owner-dot.seoha,.gv-agenda-line.seoha{background:#927066}

.gv-calendar-view-switch{
  margin-left:auto;height:36px;padding:3px;border:1px solid var(--gv-line-strong);
  border-radius:8px;background:#F7F8F9;display:flex;align-items:center
}
.gv-calendar-view-switch button{
  min-width:46px;height:28px;border:0;border-radius:6px;background:transparent;
  color:#747E88;font-size:10.5px;cursor:pointer
}
.gv-calendar-view-switch button:hover{color:#30363C}
.gv-calendar-view-switch button.active{
  background:#FCFCFD;color:#30363C;font-weight:690;box-shadow:0 1px 2px rgba(31,36,41,.05)
}

.gv-calendar-layout{
  display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start
}
.gv-calendar-panel{
  position:relative;height:calc(100vh - 268px);min-height:650px;padding:0;overflow:hidden
}
#gvCalendar{height:100%}
.gv-calendar-side{display:grid;gap:16px}
.gv-calendar-today-card,.gv-calendar-insight{overflow:hidden}

.gv-today-agenda{padding:4px 14px 10px}
.gv-today-agenda button{
  width:100%;min-height:67px;border:0;border-bottom:1px solid var(--gv-line-soft);
  background:transparent;display:grid;grid-template-columns:46px 2px minmax(0,1fr);
  gap:10px;align-items:center;text-align:left;padding:7px 2px;cursor:pointer
}
.gv-today-agenda button:last-child{border-bottom:0}
.gv-today-agenda button:hover{background:#F7F8F9}
.gv-agenda-time{font-size:10.5px;color:#69737D;font-variant-numeric:tabular-nums}
.gv-agenda-line{width:2px;height:28px;border-radius:99px}
.gv-agenda-copy strong{display:block;font-size:11.5px;color:#3D444B;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-agenda-copy small{display:block;font-size:9.5px;color:#7A848E;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.gv-calendar-stats{display:grid;grid-template-columns:1fr 1fr;padding:10px 18px 18px}
.gv-calendar-stats>div{min-height:72px;padding:13px 0;border-bottom:1px solid var(--gv-line-soft)}
.gv-calendar-stats>div:nth-child(odd){border-right:1px solid var(--gv-line-soft);padding-right:14px}
.gv-calendar-stats>div:nth-child(even){padding-left:14px}
.gv-calendar-stats>div:nth-last-child(-n+2){border-bottom:0}
.gv-calendar-stats span{display:block;font-size:10px;color:#747E88}
.gv-calendar-stats strong{display:block;font-size:22px;color:#343B42;margin-top:4px;font-weight:645}

.gv-calendar-hint{border-top:1px solid var(--gv-line);padding:15px 2px 0}
.gv-calendar-hint strong{font-size:10.5px;color:#59636D}
.gv-calendar-hint p{font-size:10px;color:#818A93;line-height:1.6;margin:5px 0 0}

.gv-calendar-loading{
  position:absolute;inset:0;background:#FCFCFD;z-index:5;display:flex;align-items:center;justify-content:center;gap:6px
}
.gv-calendar-loading>span{
  width:5px;height:5px;border-radius:50%;background:#8C959E;animation:gv-calendar-pulse 1s ease-in-out infinite alternate
}
.gv-calendar-loading>span:nth-child(2){animation-delay:.16s}
.gv-calendar-loading>span:nth-child(3){animation-delay:.32s}
.gv-calendar-loading.error{flex-direction:column;gap:5px;text-align:center;padding:20px}
.gv-calendar-loading.error strong{font-size:12px;color:#3D444B}
.gv-calendar-loading.error span{width:auto;height:auto;background:none;animation:none;border-radius:0;font-size:10px;color:#7A848E}
@keyframes gv-calendar-pulse{from{opacity:.3;transform:translateY(1px)}to{opacity:1;transform:translateY(-1px)}}

/* FullCalendar restyle */
.gv-calendar-panel .fc{
  --fc-border-color:var(--gv-line-soft);
  --fc-page-bg-color:#FCFCFD;
  --fc-neutral-bg-color:#F6F7F8;
  --fc-neutral-text-color:#747E88;
  --fc-today-bg-color:#F2F5F7;
  --fc-now-indicator-color:#6B7695;
  font-family:"SUIT Variable","SUIT","Noto Sans KR","Segoe UI",sans-serif;
  height:100%;color:#4B555F
}
.gv-calendar-panel .fc .fc-header-toolbar{display:none}
.gv-calendar-panel .fc .fc-scrollgrid,
.gv-calendar-panel .fc .fc-scrollgrid-section>td{border-color:var(--gv-line-soft)!important}
.gv-calendar-panel .fc .fc-scrollgrid{border:0!important;border-radius:0!important}
.gv-calendar-panel .fc-theme-standard td,
.gv-calendar-panel .fc-theme-standard th{border-color:var(--gv-line-soft)}
.gv-calendar-panel .fc .fc-col-header-cell{height:40px;background:#F8F9FA;font-weight:650}
.gv-calendar-panel .fc .fc-col-header-cell-cushion{
  padding:11px 4px 8px;text-decoration:none;font-size:10px;color:#69737D;font-weight:680
}
.gv-calendar-panel .fc .fc-daygrid-day-number{
  display:flex;align-items:center;justify-content:center;width:28px;height:28px;
  margin:6px 7px 0 auto;padding:0;text-decoration:none;color:#626C76;
  font-size:10.5px;font-weight:650;border-radius:50%
}
.gv-calendar-panel .fc .fc-day-today .fc-daygrid-day-number{background:#30363C;color:#FFF}
.gv-calendar-panel .fc .fc-day-other .fc-daygrid-day-number{color:#A1A8AF}
.gv-calendar-panel .fc .fc-day-sun .fc-daygrid-day-number{color:#9A6666}
.gv-calendar-panel .fc .fc-day-sat .fc-daygrid-day-number{color:#66769A}
.gv-calendar-panel .fc .fc-daygrid-day.fc-day-today{background:#F6F8F9}
.gv-calendar-panel .fc .fc-daygrid-day-frame{min-height:100%}
.gv-calendar-panel .fc .fc-daygrid-day-events{margin:3px 5px 0}
.gv-calendar-panel .fc .fc-daygrid-event-harness{margin-top:3px}
.gv-calendar-panel .fc .fc-event{border:0;background:transparent;color:inherit;box-shadow:none}
.gv-calendar-panel .fc .gv-fc-event{border-radius:5px;overflow:hidden}
.gv-calendar-panel .fc .gv-fc-event:hover{background:#EEF1F3}
.gv-calendar-panel .fc .gv-fc-event .fc-event-main{color:inherit}
.gv-fc-event-inner{min-height:25px;display:flex;align-items:flex-start;gap:7px;padding:4px 6px}
.gv-fc-owner-dot{margin-top:5px}
.gv-fc-event-inner>div{min-width:0}
.gv-fc-event-time{
  display:inline;margin-right:5px;font-size:9px;color:#7A848E;font-variant-numeric:tabular-nums
}
.gv-fc-event-title{
  display:inline;font-size:10px;color:#46505A;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.gv-fc-event-status{display:block;font-size:9.5px;color:#818A93;margin-top:2px}
.gv-calendar-panel .fc .fc-daygrid-more-link{
  margin:3px 6px;padding:3px 5px;border-radius:5px;color:#68727C;font-size:9.5px;font-weight:650;text-decoration:none
}
.gv-calendar-panel .fc .fc-daygrid-more-link:hover{background:#EDF0F2}
.gv-calendar-panel .fc .fc-popover{
  border:1px solid var(--gv-line-strong);border-radius:8px;background:#FCFCFD;
  box-shadow:0 18px 45px rgba(31,36,41,.11);overflow:hidden
}
.gv-calendar-panel .fc .fc-popover-header{background:#F5F7F8;padding:9px 10px;font-size:10px}
.gv-calendar-panel .fc .fc-popover-body{padding:6px}
.gv-calendar-panel .fc .fc-highlight{background:rgba(90,105,150,.08)}
.gv-calendar-panel .fc .fc-event-mirror{opacity:.72}
.gv-calendar-panel .fc .gv-holiday-bg,
.gv-calendar-panel .fc .fc-bg-event.gv-holiday-bg{background:rgba(154,102,102,.035)!important;opacity:1}

/* week */
.gv-calendar-panel .fc .fc-timegrid-slot{height:30px;border-color:#F0F2F4}
.gv-calendar-panel .fc .fc-timegrid-slot-label-cushion{font-size:9px;color:#818A93}
.gv-calendar-panel .fc .fc-timegrid-axis-cushion{font-size:9px;color:#8B949D}
.gv-calendar-panel .fc .fc-timegrid-now-indicator-line{border-color:#6B7695}
.gv-calendar-panel .fc .fc-timegrid-now-indicator-arrow{border-color:#6B7695;border-top-color:transparent;border-bottom-color:transparent}

/* list */
.gv-calendar-panel .fc .fc-list{border:0}
.gv-calendar-panel .fc .fc-list-day-cushion{background:#F6F7F8;padding:10px 14px}
.gv-calendar-panel .fc .fc-list-day-text,
.gv-calendar-panel .fc .fc-list-day-side-text{color:#59636D;text-decoration:none;font-size:11px;font-weight:680}
.gv-calendar-panel .fc .fc-list-event{cursor:pointer}
.gv-calendar-panel .fc .fc-list-event:hover td{background:#F8F9FA}
.gv-calendar-panel .fc .fc-list-event td{border-color:var(--gv-line-soft);padding:11px 8px}
.gv-calendar-panel .fc .fc-list-event-time{font-size:10px;color:#747E88}
.gv-calendar-panel .fc .fc-list-event-graphic{width:20px}
.gv-calendar-panel .fc .fc-list-empty{background:transparent;color:#818A93;font-size:11px}

.gv-calendar-create-modal{width:min(620px,100%)}
.gv-calendar-event-drawer{width:min(460px,94vw)}
.gv-calendar-drawer-meta{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--gv-line)}
.gv-calendar-drawer-meta>div{
  min-height:96px;padding:18px;border-right:1px solid var(--gv-line-soft);border-bottom:1px solid var(--gv-line-soft)
}
.gv-calendar-drawer-meta>div:nth-child(even){border-right:0}
.gv-calendar-drawer-meta>div:nth-last-child(-n+2){border-bottom:0}
.gv-calendar-drawer-meta span,
.gv-calendar-drawer-status>span,
.gv-calendar-drawer-note>span{display:block;font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-calendar-drawer-meta strong{display:block;font-size:12.5px;color:#3D444B;margin-top:10px;line-height:1.45}
.gv-calendar-drawer-status{padding:22px 0;border-bottom:1px solid var(--gv-line)}
.gv-calendar-drawer-status strong{display:flex;align-items:center;gap:7px;margin-top:10px;font-size:12px;color:#3D444B}
.gv-calendar-drawer-status strong i{width:7px;height:7px;border-radius:50%;background:#5A6996}
.gv-calendar-drawer-status strong em{font-style:normal}
.gv-calendar-drawer-note{padding:22px 0}
.gv-calendar-drawer-note p{font-size:11.5px;color:#69737D;line-height:1.7;margin:10px 0 0}
.gv-calendar-drawer-foot{
  margin-top:auto;min-height:76px;border-top:1px solid var(--gv-line);
  display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 20px;background:#F9FAFB
}
.gv-calendar-drawer-foot .gv-btn{text-decoration:none}
.gv-calendar-drawer-foot .gv-btn-ghost{grid-column:2}

@media (min-width:1600px){
  .gv-calendar-layout{grid-template-columns:minmax(0,1fr) 320px}
  .gv-calendar-panel{height:calc(100vh - 276px)}
}
@media (max-width:1279px){
  .gv-calendar-layout{grid-template-columns:1fr}
  .gv-calendar-side{grid-template-columns:1fr 1fr}
  .gv-calendar-hint{display:none}
  .gv-calendar-panel{height:720px;min-height:720px}
}
@media (max-width:959px){
  .gv-calendar-commandbar{flex-wrap:wrap;padding:8px 0;gap:8px}
  .gv-calendar-filters{order:3;width:100%;overflow:auto;padding-bottom:2px}
  .gv-calendar-view-switch{margin-left:auto}
  .gv-calendar-side{grid-template-columns:1fr}
}
@media (max-width:767px){
  .gv-calendar-hero{align-items:flex-start;flex-direction:column;margin-top:2px}
  .gv-calendar-hero h1{font-size:28px}
  .gv-calendar-hero-actions{width:100%}
  .gv-calendar-hero-actions .gv-btn{flex:1}
  .gv-calendar-commandbar{margin-bottom:10px}
  .gv-calendar-period{min-width:68px}
  .gv-calendar-view-switch button[data-calendar-view="timeGridWeek"]{display:none}
  .gv-calendar-panel{height:auto;min-height:620px}
  #gvCalendar{min-height:620px}
  .gv-calendar-side{display:none}
  .gv-calendar-panel .fc .fc-list-event td{padding-top:13px;padding-bottom:13px}
  .gv-calendar-drawer-meta{grid-template-columns:1fr}
  .gv-calendar-drawer-meta>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}
  .gv-calendar-drawer-meta>div:last-child{border-bottom:0}
}
@media (prefers-reduced-motion:reduce){
  .gv-calendar-loading>span{animation:none}
}



/* =========================================================
   QUOTE CENTER 2.0 · V0.10
   ========================================================= */
.gv-quote-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:8px 0 24px
}
.gv-quote-hero h1{
  margin:0;font-size:34px;line-height:1.14;letter-spacing:-.038em;color:#20252A;font-weight:665
}
.gv-quote-hero p{margin:9px 0 0;font-size:13px;color:#68727C}
.gv-quote-hero-actions{display:flex;gap:8px}

.gv-quote-commandbar{
  min-height:56px;border-top:1px solid var(--gv-line);border-bottom:1px solid var(--gv-line);
  display:flex;align-items:center;gap:14px;margin-bottom:16px
}
.gv-quote-search{
  width:280px;height:38px;border:1px solid var(--gv-line-strong);border-radius:8px;
  background:#F9FAFB;display:flex;align-items:center;gap:8px;padding:0 10px
}
.gv-quote-search svg{width:15px;height:15px;color:#77818A}
.gv-quote-search input{width:100%;border:0;outline:0;background:transparent;font-size:11.5px}
.gv-quote-filters{display:flex;gap:2px}
.gv-quote-filters button{
  height:34px;border:1px solid transparent;border-radius:7px;background:transparent;
  padding:0 9px;font-size:11px;color:#747E88;cursor:pointer
}
.gv-quote-filters button span{margin-left:4px;font-size:9.5px;color:#929AA3}
.gv-quote-filters button:hover{background:#EEF1F3;color:#3D444B}
.gv-quote-filters button.active{background:#E9EDF0;color:#30363C;font-weight:680}
.gv-quote-sync{
  margin-left:auto;font-size:10px;color:#7A848E;display:flex;align-items:center;gap:7px
}
.gv-quote-sync>span{width:6px;height:6px;border-radius:50%;background:#667B6D}

.gv-quote-layout{
  display:grid;grid-template-columns:250px minmax(620px,1fr) 292px;gap:16px;align-items:start
}
.gv-quote-rail{overflow:hidden;position:sticky;top:88px}
.gv-quote-list{padding:6px}
.gv-quote-list>button{
  width:100%;min-height:91px;border:1px solid transparent;border-radius:8px;background:transparent;
  display:flex;flex-direction:column;justify-content:center;text-align:left;padding:11px 10px;cursor:pointer
}
.gv-quote-list>button:hover{background:#F5F7F8}
.gv-quote-list>button.active{background:#EDF1F3;border-color:#E1E5E8}
.gv-quote-list-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.gv-quote-list-top strong{
  min-width:0;font-size:11.5px;color:#3D444B;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.gv-quote-list-top em{font-style:normal;font-size:9px;color:#818A93}
.gv-quote-list-sub{font-size:9.5px;color:#7A848E;margin-top:4px}
.gv-quote-list-foot{display:grid;grid-template-columns:7px 1fr auto;align-items:center;gap:6px;margin-top:10px}
.gv-quote-list-foot i{width:6px;height:6px;border-radius:50%}
.gv-quote-list-foot i.draft{background:#A1A8AF}
.gv-quote-list-foot i.waiting{background:#8B734D}
.gv-quote-list-foot i.approved{background:#5E7666}
.gv-quote-list-foot span{font-size:9.5px;color:#68727C}
.gv-quote-list-foot b{font-size:10px;color:#59636D;font-weight:650}

.gv-quote-editor{overflow:hidden}
.gv-quote-editor-head{
  min-height:112px;padding:22px 24px;border-bottom:1px solid var(--gv-line);
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px
}
.gv-quote-kicker{font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:730}
.gv-quote-editor-head h2{
  margin:9px 0 0;font-size:24px;line-height:1.15;letter-spacing:-.03em;color:#252A2F;font-weight:665
}
.gv-quote-editor-head p{margin:6px 0 0;font-size:11px;color:#69737D}
.gv-quote-version{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.gv-quote-version>span{font-size:9px;letter-spacing:.1em;color:#8A949D;font-weight:720}
.gv-quote-version select{
  height:36px;border:1px solid var(--gv-line-strong);border-radius:7px;background:#FAFBFC;
  padding:0 9px;font-size:10.5px;color:#59636D
}

.gv-quote-meta-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:18px 24px;border-bottom:1px solid var(--gv-line)
}
.gv-quote-section-head{
  min-height:64px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;
  gap:14px;border-bottom:1px solid var(--gv-line-soft)
}
.gv-quote-section-head>div:first-child strong{display:block;font-size:13px;color:#343B42}
.gv-quote-section-head>div:first-child span{display:block;font-size:10px;color:#7A848E;margin-top:2px}
.gv-quote-section-head>div:last-child{display:flex;align-items:center;gap:5px}
.gv-btn-small{height:36px;min-height:36px;font-size:11px;padding:0 11px}

.gv-quote-table-wrap{overflow:auto}
.gv-quote-table{width:100%;border-collapse:collapse;min-width:760px}
.gv-quote-table th{
  height:42px;background:#F6F7F8;border-bottom:1px solid var(--gv-line);
  text-align:left;padding:0 14px;font-size:9.5px;color:#747E88;font-weight:700
}
.gv-quote-table th.num,.gv-quote-table td.num{text-align:right}
.gv-quote-table td{
  min-height:62px;border-bottom:1px solid var(--gv-line-soft);padding:10px 14px;
  font-size:11px;color:#59636D;vertical-align:middle
}
.gv-quote-table tbody tr:last-child td{border-bottom:0}
.gv-quote-table input{
  border:0;background:transparent;outline:0;color:#3D444B;font:inherit
}
.gv-quote-table input:focus{background:#F2F4F6;border-radius:5px}
.gv-quote-item-name{display:flex;flex-direction:column;min-width:180px}
.gv-quote-item-name input{font-size:12px;font-weight:660;min-width:170px}
.gv-quote-item-name small{font-size:9.5px;color:#8A949D;margin-top:3px}
.gv-quote-qty,.gv-quote-days{width:52px;text-align:right;padding:4px 5px}
.gv-money-input{
  display:inline-flex;align-items:center;justify-content:flex-end;gap:3px
}
.gv-money-input span{font-size:10px;color:#8A949D}
.gv-money-input input{width:92px;text-align:right;padding:4px 5px;font-variant-numeric:tabular-nums}
.gv-quote-line-total{font-size:11px;color:#3D444B;font-weight:690;white-space:nowrap}
.gv-quote-remove{
  width:28px;height:28px;border:0;background:transparent;border-radius:6px;
  color:#9A8A8A;font-size:18px;font-weight:300;cursor:pointer
}
.gv-quote-remove:hover{background:#F7EFEF;color:#8F5555}
.gv-quote-note-area{padding:18px 24px 24px;border-top:1px solid var(--gv-line)}
.gv-quote-note-area textarea{
  width:100%;resize:vertical;min-height:78px;border:1px solid var(--gv-line-strong);
  border-radius:8px;background:#FCFDFE;padding:10px 11px;outline:0;font-size:11.5px;line-height:1.6
}
.gv-quote-note-area textarea:focus{border-color:#8997BE;box-shadow:0 0 0 3px #EEF1F7}

.gv-quote-summary{display:grid;gap:16px;position:sticky;top:88px}
.gv-quote-totals{padding:18px 20px 20px}
.gv-quote-totals>div{
  min-height:42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--gv-line-soft)
}
.gv-quote-totals>div>span{font-size:10.5px;color:#69737D}
.gv-quote-totals>div>strong{font-size:12px;color:#3D444B}
.gv-quote-totals>div.total{min-height:58px;border-bottom:0}
.gv-quote-totals>div.total>span{font-size:11px;color:#30363C;font-weight:680}
.gv-quote-totals>div.total>strong{font-size:22px;letter-spacing:-.025em;color:#252A2F;font-weight:650}
.gv-quote-vat-row{gap:8px}
.gv-quote-vat-row>span{flex:1}
.gv-switch{display:inline-flex;align-items:center;cursor:pointer}
.gv-switch input{position:absolute;opacity:0;pointer-events:none}
.gv-switch>span{
  width:30px;height:18px;border-radius:99px;background:#D6DADF;position:relative;transition:background .12s
}
.gv-switch>span:after{
  content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;
  background:#FFF;transition:transform .12s;box-shadow:0 1px 2px rgba(0,0,0,.12)
}
.gv-switch input:checked+span{background:#5E6F8B}
.gv-switch input:checked+span:after{transform:translateX(12px)}

.gv-quote-status-flow{padding:18px 20px 20px}
.gv-quote-status-flow>button{
  width:100%;min-height:48px;border:0;background:transparent;display:grid;grid-template-columns:28px 1fr;
  align-items:center;gap:9px;text-align:left;padding:0;cursor:default
}
.gv-quote-status-flow>button>span{
  width:24px;height:24px;border:1px solid #D2D7DC;border-radius:50%;display:grid;place-items:center;
  font-size:8px;color:#8A949D;background:#F9FAFB
}
.gv-quote-status-flow>button.done>span{background:#E9EEF0;color:#4B565F}
.gv-quote-status-flow>button.active>span{background:#30363C;color:#FFF;border-color:#30363C}
.gv-quote-status-flow strong{display:block;font-size:11.5px;color:#4C555E}
.gv-quote-status-flow small{display:block;font-size:9.5px;color:#8A949D;margin-top:2px}
.gv-quote-status-flow>i{display:block;width:1px;height:16px;background:#DDE2E5;margin-left:12px}

.gv-quote-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gv-quote-actions .gv-btn-primary{grid-column:1/-1}
.gv-quote-internal-note{border-top:1px solid var(--gv-line);padding:14px 2px 0}
.gv-quote-internal-note span{font-size:9px;letter-spacing:.11em;color:#8A949D;font-weight:720}
.gv-quote-internal-note p{font-size:10px;line-height:1.6;color:#7A848E;margin:5px 0 0}

.gv-rate-library{width:min(430px,94vw)}
.gv-rate-search{width:100%;margin-bottom:16px}
.gv-rate-list{display:grid}
.gv-rate-list button{
  width:100%;min-height:66px;border:0;border-bottom:1px solid var(--gv-line-soft);
  background:transparent;display:grid;grid-template-columns:1fr auto 42px;align-items:center;gap:10px;
  text-align:left;padding:6px 2px;cursor:pointer
}
.gv-rate-list button:hover{background:#F7F8F9}
.gv-rate-list strong{display:block;font-size:12px;color:#3D444B}
.gv-rate-list small{display:block;font-size:9.5px;color:#7A848E;margin-top:3px}
.gv-rate-list b{font-size:10.5px;color:#59636D;font-weight:650}
.gv-rate-list em{font-style:normal;font-size:10px;color:#5A6996;text-align:right}

/* Client document preview */
.gv-quote-preview-backdrop{align-items:flex-start;overflow:auto;padding:32px 20px}
.gv-quote-preview-shell{
  width:min(1040px,100%);margin:0 auto;background:#EEF0F2;border:1px solid #D3D8DC;
  border-radius:12px;overflow:hidden;box-shadow:0 26px 80px rgba(27,32,37,.16)
}
.gv-quote-preview-toolbar{
  height:68px;background:#F8F9FA;border-bottom:1px solid var(--gv-line);
  display:flex;align-items:center;justify-content:space-between;padding:0 18px
}
.gv-quote-preview-toolbar>div:first-child span{
  display:block;font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:720
}
.gv-quote-preview-toolbar>div:first-child strong{display:block;font-size:13px;color:#3D444B;margin-top:3px}
.gv-quote-preview-toolbar>div:last-child{display:flex;align-items:center;gap:8px}

.gv-quote-document{
  width:min(800px,calc(100% - 40px));min-height:1120px;margin:34px auto;background:#FFF;
  box-shadow:0 12px 34px rgba(30,35,40,.08);padding:58px 62px 50px;color:#262A2E;
  font-family:"SUIT Variable","SUIT","Noto Sans KR",sans-serif
}
.gv-quote-document>header{
  display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #202428;padding-bottom:24px
}
.gv-quote-document>header>div:first-child>span{display:block;font-size:16px;letter-spacing:.14em;font-weight:780}
.gv-quote-document>header small{display:block;font-size:9px;color:#787E84;margin-top:4px}
.gv-quote-document>header>div:last-child{text-align:right}
.gv-quote-document>header>div:last-child strong{display:block;font-size:22px;letter-spacing:.08em;font-weight:650}

.gv-quote-doc-title{padding:48px 0 34px}
.gv-quote-doc-title>span,.gv-quote-doc-meta span,.gv-quote-doc-note>span{
  display:block;font-size:8.5px;letter-spacing:.14em;color:#7C8288;font-weight:720
}
.gv-quote-doc-title h2{margin:10px 0 0;font-size:28px;letter-spacing:-.03em;font-weight:650}
.gv-quote-doc-title p{margin:7px 0 0;font-size:11px;color:#777D83}

.gv-quote-doc-meta{
  display:grid;grid-template-columns:1.4fr 1.4fr 1fr;border-top:1px solid #DADDE0;border-bottom:1px solid #DADDE0
}
.gv-quote-doc-meta>div{min-height:90px;padding:18px 0;border-right:1px solid #E5E7E9}
.gv-quote-doc-meta>div:not(:first-child){padding-left:18px}
.gv-quote-doc-meta>div:last-child{border-right:0}
.gv-quote-doc-meta strong{display:block;font-size:11.5px;margin-top:9px}
.gv-quote-doc-meta small{display:block;font-size:9px;color:#7A8086;margin-top:3px}

.gv-quote-doc-table{width:100%;border-collapse:collapse;margin-top:36px}
.gv-quote-doc-table th{
  height:38px;border-bottom:1px solid #202428;text-align:left;font-size:8.5px;letter-spacing:.06em;color:#555B61;font-weight:700
}
.gv-quote-doc-table th:not(:first-child),.gv-quote-doc-table td:not(:first-child){text-align:right}
.gv-quote-doc-table td{
  height:46px;border-bottom:1px solid #E3E5E7;font-size:10px;color:#3D4247
}
.gv-quote-doc-total{width:310px;margin:34px 0 0 auto}
.gv-quote-doc-total>div{
  min-height:38px;border-bottom:1px solid #E1E3E5;display:flex;align-items:center;justify-content:space-between
}
.gv-quote-doc-total span{font-size:9.5px;color:#686E74}
.gv-quote-doc-total strong{font-size:10.5px}
.gv-quote-doc-total .total{min-height:54px;border-bottom:1px solid #202428}
.gv-quote-doc-total .total span{font-weight:700;color:#2D3237}
.gv-quote-doc-total .total strong{font-size:18px;font-weight:650}
.gv-quote-doc-note{margin-top:44px;border-top:1px solid #DADDE0;padding-top:20px}
.gv-quote-doc-note p{font-size:9.5px;color:#656B71;line-height:1.7;margin:9px 0 0}
.gv-quote-document>footer{
  margin-top:80px;border-top:1px solid #202428;padding-top:16px;display:flex;align-items:center;justify-content:space-between
}
.gv-quote-document>footer span{font-size:9px;letter-spacing:.12em;font-weight:740}
.gv-quote-document>footer small{font-size:8.5px;color:#777D83}

@media (max-width:1499px){
  .gv-quote-layout{grid-template-columns:220px minmax(560px,1fr) 270px}
  .gv-quote-meta-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:1199px){
  .gv-quote-layout{grid-template-columns:1fr 280px}
  .gv-quote-rail{grid-column:1/-1;position:static}
  .gv-quote-list{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
  .gv-quote-summary{position:static}
}
@media (max-width:959px){
  .gv-quote-commandbar{flex-wrap:wrap;padding:8px 0}
  .gv-quote-search{width:100%}
  .gv-quote-sync{margin-left:0}
  .gv-quote-layout{grid-template-columns:1fr}
  .gv-quote-list{grid-template-columns:1fr 1fr}
  .gv-quote-summary{grid-template-columns:1fr 1fr}
  .gv-quote-actions,.gv-quote-internal-note{grid-column:1/-1}
}
@media (max-width:767px){
  .gv-quote-hero{align-items:flex-start;flex-direction:column}
  .gv-quote-hero h1{font-size:28px}
  .gv-quote-hero-actions{width:100%}
  .gv-quote-hero-actions .gv-btn{flex:1}
  .gv-quote-filters{width:100%;overflow:auto}
  .gv-quote-sync{display:none}
  .gv-quote-list{grid-template-columns:1fr}
  .gv-quote-editor-head{align-items:flex-start;flex-direction:column}
  .gv-quote-version{align-items:flex-start}
  .gv-quote-meta-grid{grid-template-columns:1fr}
  .gv-quote-section-head{align-items:flex-start;flex-direction:column;padding:14px 18px}
  .gv-quote-section-head>div:last-child{width:100%;justify-content:space-between}
  .gv-quote-summary{grid-template-columns:1fr}
  .gv-quote-document{width:calc(100% - 18px);padding:34px 26px;min-height:900px}
  .gv-quote-doc-meta{grid-template-columns:1fr}
  .gv-quote-doc-meta>div{border-right:0;border-bottom:1px solid #E5E7E9;padding-left:0!important}
  .gv-quote-doc-meta>div:last-child{border-bottom:0}
  .gv-quote-doc-total{width:100%}
}
@media print{
  body.gv-print-quote *{visibility:hidden!important}
  body.gv-print-quote #gvQuoteDocument,
  body.gv-print-quote #gvQuoteDocument *{visibility:visible!important}
  body.gv-print-quote #gvQuoteDocument{
    position:absolute;left:0;top:0;width:100%;min-height:auto;margin:0;box-shadow:none;padding:20mm 18mm
  }
}



/* =========================================================
   SCHEDULE CENTER 2.0 · V0.11
   ========================================================= */
.gv-schedule-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:8px 0 24px
}
.gv-schedule-hero h1{
  margin:0;font-size:34px;line-height:1.14;letter-spacing:-.038em;color:#20252A;font-weight:665
}
.gv-schedule-hero p{margin:9px 0 0;font-size:13px;color:#68727C}
.gv-schedule-hero-actions{display:flex;gap:8px}

.gv-schedule-lifecycle{
  min-height:68px;border-top:1px solid var(--gv-line);border-bottom:1px solid var(--gv-line);
  display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:12px;margin-bottom:12px
}
.gv-schedule-lifecycle>a{
  min-width:118px;text-decoration:none;display:flex;align-items:center;gap:9px;color:#66717B
}
.gv-schedule-lifecycle>a>span{
  width:28px;height:28px;border:1px solid #D3D8DC;border-radius:50%;display:grid;place-items:center;
  font-size:8.5px;color:#818A93;background:#F8F9FA
}
.gv-schedule-lifecycle>a strong{display:block;font-size:11px;color:#59636D}
.gv-schedule-lifecycle>a small{display:block;font-size:9px;color:#8A949D;margin-top:1px}
.gv-schedule-lifecycle>a.active>span{background:#30363C;border-color:#30363C;color:#FFF}
.gv-schedule-lifecycle>a.active strong{color:#252A2F}
.gv-schedule-lifecycle>i{height:1px;background:#DDE2E5}

.gv-schedule-commandbar{
  min-height:52px;display:flex;align-items:center;gap:12px;margin-bottom:16px
}
.gv-schedule-search{
  width:280px;height:38px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#F9FAFB;
  display:flex;align-items:center;gap:8px;padding:0 10px
}
.gv-schedule-search svg{width:15px;height:15px;color:#77818A}
.gv-schedule-search input{width:100%;border:0;outline:0;background:transparent;font-size:11.5px}
.gv-schedule-filters{display:flex;gap:2px}
.gv-schedule-filters button{
  height:34px;border:1px solid transparent;border-radius:7px;background:transparent;
  padding:0 9px;font-size:11px;color:#747E88;cursor:pointer
}
.gv-schedule-filters button span{margin-left:4px;font-size:9.5px;color:#929AA3}
.gv-schedule-filters button:hover{background:#EEF1F3;color:#3D444B}
.gv-schedule-filters button.active{background:#E9EDF0;color:#30363C;font-weight:680}
.gv-schedule-view-switch{
  margin-left:auto;height:36px;padding:3px;border:1px solid var(--gv-line-strong);
  border-radius:8px;background:#F7F8F9;display:flex
}
.gv-schedule-view-switch button{
  min-width:70px;border:0;border-radius:6px;background:transparent;color:#747E88;font-size:10px;cursor:pointer
}
.gv-schedule-view-switch button.active{background:#FCFCFD;color:#30363C;font-weight:690;box-shadow:0 1px 2px rgba(31,36,41,.05)}

.gv-schedule-layout{
  display:grid;grid-template-columns:220px minmax(720px,1fr) 280px;gap:16px;align-items:start
}
.gv-role-rail{position:sticky;top:88px;overflow:hidden}
.gv-role-rail-list{padding:6px}
.gv-role-rail-list>button{
  width:100%;min-height:96px;border:1px solid transparent;border-radius:8px;background:transparent;
  padding:13px 11px;text-align:left;cursor:pointer
}
.gv-role-rail-list>button:hover{background:#F5F7F8}
.gv-role-rail-list>button.active{background:#EDF1F3;border-color:#E1E5E8}
.gv-role-rail-list>button>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}
.gv-role-rail-list strong{font-size:12px;color:#3D444B}
.gv-role-rail-list>button>div:first-child span{font-size:9.5px;color:#7A848E}
.gv-role-progress{height:5px;background:#E5E8EA;border-radius:99px;overflow:hidden;margin-top:14px}
.gv-role-progress i{display:block;height:100%;background:#697780;border-radius:inherit}
.gv-role-rail-list small{display:block;font-size:9.5px;color:#7A848E;margin-top:8px}
.gv-role-rail-list small b{color:#4B565F;font-weight:700}
.gv-role-rail-list small em{font-style:normal;color:#8B674F}
.gv-role-rail-foot{border-top:1px solid var(--gv-line);padding:16px}
.gv-role-rail-foot span{font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-role-rail-foot p{font-size:9.5px;line-height:1.6;color:#7A848E;margin:6px 0 0}

.gv-roster-panel{overflow:hidden}
.gv-roster-head{
  min-height:96px;padding:18px 22px;border-bottom:1px solid var(--gv-line);
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px
}
.gv-schedule-kicker{font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:730}
.gv-roster-head h2,.gv-shortlist-head h2{
  margin:7px 0 0;font-size:22px;letter-spacing:-.025em;color:#30363C;font-weight:665
}
.gv-roster-head p,.gv-shortlist-head p{margin:5px 0 0;font-size:10.5px;color:#747E88}
.gv-roster-head-actions{display:flex;gap:7px}

.gv-bulkbar{
  min-height:0;max-height:0;overflow:hidden;background:#30363C;color:#FFF;
  display:flex;align-items:center;justify-content:space-between;padding:0 16px;
  transition:max-height .16s,min-height .16s
}
.gv-bulkbar.show{min-height:50px;max-height:50px}
.gv-bulkbar>div:first-child{display:flex;align-items:center;gap:5px}
.gv-bulkbar>div:first-child strong{font-size:14px}
.gv-bulkbar>div:first-child span{font-size:10px;color:#D3D8DC}
.gv-bulkbar>div:last-child{display:flex;align-items:center;gap:2px}
.gv-bulkbar button{
  height:32px;border:0;border-radius:6px;background:transparent;color:#D9DEE2;
  padding:0 9px;font-size:10px;cursor:pointer
}
.gv-bulkbar button:hover{background:rgba(255,255,255,.08);color:#FFF}

.gv-roster-table-wrap{overflow:auto}
.gv-roster-table{width:100%;border-collapse:collapse;min-width:820px}
.gv-roster-table th{
  height:42px;background:#F6F7F8;border-bottom:1px solid var(--gv-line);
  text-align:left;padding:0 12px;font-size:9.5px;color:#747E88;font-weight:700
}
.gv-roster-table th.check,.gv-roster-table td.check{width:36px;text-align:center}
.gv-roster-table td{
  height:68px;border-bottom:1px solid var(--gv-line-soft);padding:0 12px;color:#59636D;font-size:10.5px
}
.gv-roster-table tbody tr:last-child td{border-bottom:0}
.gv-roster-table tbody tr:hover td{background:#F9FAFB}
.gv-roster-table input[type=checkbox]{width:14px;height:14px;accent-color:#586673}
.gv-crew-person{
  border:0;background:transparent;display:flex;align-items:center;gap:9px;text-align:left;padding:0;cursor:pointer
}
.gv-crew-avatar{
  width:32px;height:32px;border-radius:50%;background:#E7EAEC;display:grid;place-items:center;
  color:#46515A;font-size:10.5px;font-weight:720;flex:0 0 auto
}
.gv-crew-person strong{display:block;font-size:11.5px;color:#3D444B}
.gv-crew-person small{display:block;font-size:9.5px;color:#7A848E;margin-top:2px}
.gv-fit{display:flex;align-items:center;gap:7px}
.gv-fit>span{width:46px;height:4px;border-radius:99px;background:#E4E7E9;overflow:hidden}
.gv-fit>span i{display:block;height:100%;background:#65727B;border-radius:inherit}
.gv-fit>b{font-size:10px;color:#59636D;font-weight:680}
.gv-availability{
  display:inline-flex;align-items:center;height:25px;padding:0 8px;border-radius:99px;font-size:9px;font-weight:650
}
.gv-availability.clear{background:#EEF4F0;color:#506B5A}
.gv-availability.checking{background:#F1F2F3;color:#69737D}
.gv-availability.conflict{background:#F5EEE8;color:#8A644E}
.gv-experience strong{display:block;font-size:10.5px;color:#4C555E}
.gv-experience small{display:block;font-size:9px;color:#8A949D;margin-top:2px}
.gv-crew-status{
  height:27px;border:1px solid transparent;border-radius:99px;padding:0 9px;font-size:9px;font-weight:660;cursor:pointer
}
.gv-crew-status.checking{background:#F0F1F2;color:#68727C}
.gv-crew-status.available{background:#EEF4F0;color:#506B5A}
.gv-crew-status.unavailable{background:#F6EEEE;color:#8A5858}
.gv-crew-status.sent{background:#EFF1F7;color:#59658F}
.gv-crew-status.fixed{background:#E8EDEF;color:#3F5550}
.gv-crew-status.notselected{background:#F1F1F1;color:#8A8F94}
.gv-row-more{
  width:30px;height:30px;border:0;background:transparent;border-radius:6px;color:#8A949D;cursor:pointer;letter-spacing:.06em
}
.gv-row-more:hover{background:#EEF1F3;color:#4B555F}

.gv-schedule-side{display:grid;gap:16px;position:sticky;top:88px}
.gv-coverage{padding:18px 20px 20px}
.gv-coverage-main{display:flex;align-items:flex-end;justify-content:space-between}
.gv-coverage-main>span{font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-coverage-main>strong{font-size:30px;line-height:1;color:#30363C;font-weight:645}
.gv-coverage-main>strong small{font-size:11px;color:#8A949D;font-weight:550}
.gv-coverage-rail{height:7px;background:#E7EAEC;border-radius:99px;overflow:hidden;margin-top:14px}
.gv-coverage-rail i{display:block;height:100%;background:#65727B;border-radius:inherit}
.gv-coverage>p{font-size:9.5px;color:#7A848E;margin:8px 0 0}
.gv-coverage-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:16px;border-top:1px solid var(--gv-line)}
.gv-coverage-grid>div{min-height:60px;padding-top:12px}
.gv-coverage-grid span{display:block;font-size:9px;color:#8A949D}
.gv-coverage-grid strong{display:block;font-size:16px;color:#4B555F;margin-top:3px}
.gv-schedule-attention{padding:5px 14px 10px}
.gv-schedule-attention button{
  width:100%;min-height:66px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;
  display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;text-align:left;padding:6px 2px;cursor:pointer
}
.gv-schedule-attention button:last-child{border-bottom:0}
.gv-schedule-attention button:hover{background:#F8F9FA}
.gv-schedule-attention>button>span{font-size:9px;color:#8A949D}
.gv-schedule-attention strong{display:block;font-size:10.5px;color:#3D444B}
.gv-schedule-attention small{display:block;font-size:9px;color:#7A848E;margin-top:2px}
.gv-schedule-attention em{font-style:normal;font-size:9.5px;color:#67717B}
.gv-schedule-proof{border-top:1px solid var(--gv-line);padding:14px 2px 0}
.gv-schedule-proof>span{font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-schedule-proof>strong{display:block;font-size:12px;color:#4B555F;margin-top:5px}
.gv-schedule-proof>p{font-size:9.5px;line-height:1.6;color:#7A848E;margin:5px 0 0}

/* Status popover */
.gv-status-popover{
  position:fixed;z-index:150;width:160px;background:#FCFCFD;border:1px solid var(--gv-line-strong);
  border-radius:9px;padding:5px;box-shadow:0 14px 34px rgba(35,40,45,.09);display:none
}
.gv-status-popover.open{display:block}
.gv-status-popover button{
  width:100%;height:38px;border:0;background:transparent;border-radius:6px;
  display:flex;align-items:center;gap:8px;padding:0 8px;font-size:10.5px;color:#59636D;cursor:pointer
}
.gv-status-popover button:hover{background:#F1F3F5;color:#30363C}
.gv-status-popover button i{width:6px;height:6px;border-radius:50%;background:#8A949D}

/* Shortlist */
.gv-shortlist-view{overflow:hidden}
.gv-shortlist-head{
  min-height:112px;padding:22px 24px;border-bottom:1px solid var(--gv-line);
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px
}
.gv-shortlist-head>div:last-child{display:flex;gap:8px}
.gv-shortlist-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.gv-shortlist-grid article{
  position:relative;min-height:390px;padding:18px;border-right:1px solid var(--gv-line-soft)
}
.gv-shortlist-grid article:last-child{border-right:0}
.gv-profile-photo{
  height:220px;background:linear-gradient(145deg,#EEF0F2,#E4E7EA);display:grid;place-items:center;
  color:#7A848E;font-size:34px;font-weight:300;letter-spacing:.04em
}
.gv-shortlist-grid article>span{display:block;font-size:8.5px;color:#9AA1A8;margin-top:15px}
.gv-shortlist-grid h3{font-size:15px;color:#30363C;margin:5px 0 0}
.gv-shortlist-grid p{font-size:9.5px;color:#7A848E;margin:3px 0 13px}
.gv-shortlist-grid article>div:not(.gv-profile-photo) strong{display:block;font-size:10.5px;color:#4B555F}
.gv-shortlist-grid article>div:not(.gv-profile-photo) small{display:block;font-size:9px;color:#8A949D;margin-top:2px}
.gv-shortlist-grid article>em{
  position:absolute;right:18px;bottom:18px;font-style:normal;font-size:9px;color:#66717B
}

/* Crew drawer */
.gv-crew-drawer{width:min(450px,94vw)}
.gv-crew-profile-head{display:flex;align-items:center;gap:13px;padding-bottom:22px;border-bottom:1px solid var(--gv-line)}
.gv-crew-profile-avatar{
  width:52px;height:52px;border-radius:50%;background:#E6E9EB;display:grid;place-items:center;
  color:#46515A;font-size:16px;font-weight:720
}
.gv-crew-profile-head>div:last-child strong{display:block;font-size:13px;color:#3D444B}
.gv-crew-profile-head>div:last-child span{display:block;font-size:10px;color:#7A848E;margin-top:4px}
.gv-crew-fit-panel{padding:22px 0;border-bottom:1px solid var(--gv-line)}
.gv-crew-fit-panel>span,.gv-crew-drawer-section>span{
  display:block;font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720
}
.gv-crew-fit-panel>div{display:flex;align-items:flex-end;gap:3px;margin-top:10px}
.gv-crew-fit-panel>div strong{font-size:28px;line-height:1;color:#30363C}
.gv-crew-fit-panel>div small{font-size:9px;color:#8A949D;padding-bottom:2px}
.gv-crew-fit-panel>i{display:block;height:6px;background:#E6E9EB;border-radius:99px;overflow:hidden;margin-top:12px}
.gv-crew-fit-panel>i b{display:block;height:100%;background:#65727B;border-radius:inherit}
.gv-crew-drawer-section{padding:22px 0;border-bottom:1px solid var(--gv-line)}
.gv-crew-history{margin-top:10px}
.gv-crew-history>div{min-height:50px;border-bottom:1px solid var(--gv-line-soft);display:flex;align-items:center;justify-content:space-between}
.gv-crew-history>div:last-child{border-bottom:0}
.gv-crew-history strong{font-size:10.5px;color:#4B555F}
.gv-crew-history small{font-size:9px;color:#8A949D}
.gv-overlap-clear{margin-top:12px;display:grid;grid-template-columns:10px 1fr;gap:3px 8px}
.gv-overlap-clear i{width:7px;height:7px;border-radius:50%;background:#5E7666;margin-top:3px}
.gv-overlap-clear strong{font-size:10.5px;color:#4B555F}
.gv-overlap-clear small{grid-column:2;font-size:9px;color:#8A949D}
.gv-overlap-clear.conflict i{background:#9A6B53}
.gv-overlap-clear.conflict strong{color:#805E4B}
.gv-crew-drawer-section textarea{
  width:100%;margin-top:10px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#FCFDFE;
  padding:10px;resize:vertical;outline:0;font:inherit;font-size:10.5px;line-height:1.6
}
.gv-crew-drawer-foot{
  margin-top:auto;min-height:72px;border-top:1px solid var(--gv-line);padding:12px 20px;
  display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#F9FAFB
}

/* Message */
.gv-message-modal{width:min(760px,100%)}
.gv-message-layout{display:grid;grid-template-columns:1fr 1fr;min-height:360px}
.gv-message-form{padding:22px;border-right:1px solid var(--gv-line);display:grid;gap:12px}
.gv-message-preview{padding:22px;background:#F8F9FA}
.gv-message-preview>span{font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-message-preview>div{
  margin-top:12px;border:1px solid var(--gv-line);border-radius:9px;background:#FCFCFD;
  padding:16px;font-size:11px;line-height:1.75;color:#4B555F
}
.gv-message-preview>small{display:block;font-size:9px;color:#8A949D;margin-top:10px}

/* Add crew */
#gvCrewAddModal .gv-modal{width:min(500px,100%)}

@media (max-width:1499px){
  .gv-schedule-layout{grid-template-columns:200px minmax(640px,1fr) 260px}
}
@media (max-width:1199px){
  .gv-schedule-layout{grid-template-columns:1fr 270px}
  .gv-role-rail{grid-column:1/-1;position:static}
  .gv-role-rail-list{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
  .gv-role-rail-foot{display:none}
  .gv-schedule-side{position:static}
}
@media (max-width:959px){
  .gv-schedule-lifecycle{overflow:auto}
  .gv-schedule-commandbar{flex-wrap:wrap}
  .gv-schedule-search{width:100%}
  .gv-schedule-filters{width:100%;overflow:auto}
  .gv-schedule-view-switch{margin-left:0}
  .gv-schedule-layout{grid-template-columns:1fr}
  .gv-schedule-side{grid-template-columns:1fr 1fr}
  .gv-schedule-proof{grid-column:1/-1}
  .gv-shortlist-grid{grid-template-columns:repeat(2,1fr)}
  .gv-shortlist-grid article:nth-child(2){border-right:0}
  .gv-shortlist-grid article:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
}
@media (max-width:767px){
  .gv-schedule-hero{align-items:flex-start;flex-direction:column}
  .gv-schedule-hero h1{font-size:28px}
  .gv-schedule-hero-actions{width:100%}
  .gv-schedule-hero-actions .gv-btn{flex:1}
  .gv-schedule-lifecycle{display:none}
  .gv-role-rail-list{grid-template-columns:1fr}
  .gv-roster-head{align-items:flex-start;flex-direction:column}
  .gv-roster-head-actions{width:100%}
  .gv-roster-head-actions .gv-btn{flex:1}
  .gv-schedule-side{grid-template-columns:1fr}
  .gv-shortlist-head{align-items:flex-start;flex-direction:column}
  .gv-shortlist-head>div:last-child{width:100%}
  .gv-shortlist-head .gv-btn{flex:1}
  .gv-shortlist-grid{grid-template-columns:1fr}
  .gv-shortlist-grid article{border-right:0;border-bottom:1px solid var(--gv-line-soft)}
  .gv-message-layout{grid-template-columns:1fr}
  .gv-message-form{border-right:0;border-bottom:1px solid var(--gv-line)}
}



/* =========================================================
   SETTLEMENT CENTER 2.0 · V0.12
   ========================================================= */
.gv-settlement-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:8px 0 24px
}
.gv-settlement-hero h1{
  margin:0;font-size:34px;line-height:1.14;letter-spacing:-.038em;color:#20252A;font-weight:665
}
.gv-settlement-hero p{margin:9px 0 0;font-size:13px;color:#68727C}
.gv-settlement-hero-actions{display:flex;gap:8px}

.gv-settlement-lifecycle{
  min-height:68px;border-top:1px solid var(--gv-line);border-bottom:1px solid var(--gv-line);
  display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:12px;margin-bottom:16px
}
.gv-settlement-lifecycle>a{
  min-width:118px;text-decoration:none;display:flex;align-items:center;gap:9px;color:#66717B
}
.gv-settlement-lifecycle>a>span{
  width:28px;height:28px;border:1px solid #D3D8DC;border-radius:50%;display:grid;place-items:center;
  font-size:8.5px;color:#818A93;background:#F8F9FA
}
.gv-settlement-lifecycle>a strong{display:block;font-size:11px;color:#59636D}
.gv-settlement-lifecycle>a small{display:block;font-size:9px;color:#8A949D;margin-top:1px}
.gv-settlement-lifecycle>a.active>span{background:#30363C;border-color:#30363C;color:#FFF}
.gv-settlement-lifecycle>a.active strong{color:#252A2F}
.gv-settlement-lifecycle>i{height:1px;background:#DDE2E5}

.gv-settlement-metrics{
  display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gv-line);
  border-radius:8px;background:var(--gv-surface);overflow:hidden;margin-bottom:16px
}
.gv-settlement-metrics>div{min-height:112px;padding:20px 22px;border-right:1px solid var(--gv-line-soft)}
.gv-settlement-metrics>div:last-child{border-right:0}
.gv-settlement-metrics span{
  display:block;font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720
}
.gv-settlement-metrics strong{
  display:block;font-size:23px;letter-spacing:-.025em;color:#30363C;margin-top:13px;font-weight:650
}
.gv-settlement-metrics small{display:block;font-size:9.5px;color:#7A848E;margin-top:5px}

.gv-settlement-commandbar{min-height:48px;display:flex;align-items:center;gap:12px;margin-bottom:16px}
.gv-settlement-search{
  width:260px;height:38px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#F9FAFB;
  display:flex;align-items:center;gap:8px;padding:0 10px
}
.gv-settlement-search svg{width:15px;height:15px;color:#77818A}
.gv-settlement-search input{width:100%;border:0;outline:0;background:transparent;font-size:11.5px}
.gv-settlement-filters{display:flex;gap:2px}
.gv-settlement-filters button{
  height:34px;border:1px solid transparent;border-radius:7px;background:transparent;
  padding:0 9px;font-size:11px;color:#747E88;cursor:pointer
}
.gv-settlement-filters button span{margin-left:4px;font-size:9.5px;color:#929AA3}
.gv-settlement-filters button:hover{background:#EEF1F3;color:#3D444B}
.gv-settlement-filters button.active{background:#E9EDF0;color:#30363C;font-weight:680}
.gv-settlement-sync{margin-left:auto;display:flex;align-items:center;gap:7px;font-size:9.5px;color:#818A93}
.gv-settlement-sync>span{width:6px;height:6px;border-radius:50%;background:#667B6D}

.gv-settlement-layout{
  display:grid;grid-template-columns:228px minmax(800px,1fr) 280px;gap:16px;align-items:start
}
.gv-settlement-recon{overflow:hidden;position:sticky;top:88px}
.gv-recon-list{padding:4px 14px 8px}
.gv-recon-list>div{
  min-height:86px;border-bottom:1px solid var(--gv-line-soft);display:flex;flex-direction:column;justify-content:center
}
.gv-recon-list>div:last-child{border-bottom:0}
.gv-recon-list>div>span:first-child{display:flex;align-items:center;justify-content:space-between}
.gv-recon-list>div>span:first-child strong{font-size:11px;color:#3D444B}
.gv-recon-list>div>span:first-child small{font-size:8.5px;color:#8A949D}
.gv-recon-list>div>span:nth-child(2){display:flex;align-items:center;gap:6px;margin-top:8px}
.gv-recon-list b,.gv-recon-list span:nth-child(2) strong{font-size:10px;color:#59636D;font-weight:650}
.gv-recon-list em{font-style:normal;color:#A0A7AE;font-size:9px}
.gv-recon-list i{font-style:normal;font-size:8.5px;color:#7A848E;margin-top:5px}
.gv-recon-list i.up{color:#8A664F}
.gv-recon-list i.down{color:#55705E}
.gv-recon-foot{border-top:1px solid var(--gv-line);padding:16px}
.gv-recon-foot span{display:block;font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-recon-foot strong{display:block;font-size:14px;color:#3D444B;margin-top:6px}
.gv-recon-foot small{display:block;font-size:9px;color:#818A93;margin-top:3px}

.gv-settlement-table-panel{overflow:hidden}
.gv-settlement-table-head{
  min-height:96px;padding:18px 22px;border-bottom:1px solid var(--gv-line);
  display:flex;align-items:flex-end;justify-content:space-between;gap:18px
}
.gv-settlement-kicker{font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:730}
.gv-settlement-table-head h2{
  margin:7px 0 0;font-size:22px;letter-spacing:-.025em;color:#30363C;font-weight:665
}
.gv-settlement-table-head p{margin:5px 0 0;font-size:10.5px;color:#747E88}
.gv-settlement-table-head>div:last-child{display:flex;gap:7px}

.gv-settle-bulkbar{
  min-height:0;max-height:0;overflow:hidden;background:#30363C;color:#FFF;
  display:flex;align-items:center;justify-content:space-between;padding:0 16px;
  transition:max-height .16s,min-height .16s
}
.gv-settle-bulkbar.show{min-height:50px;max-height:50px}
.gv-settle-bulkbar>div:first-child{display:flex;align-items:center;gap:5px}
.gv-settle-bulkbar>div:first-child strong{font-size:14px}
.gv-settle-bulkbar>div:first-child span{font-size:10px;color:#D3D8DC}
.gv-settle-bulkbar>div:last-child{display:flex;gap:2px}
.gv-settle-bulkbar button{
  height:32px;border:0;border-radius:6px;background:transparent;color:#D9DEE2;
  padding:0 9px;font-size:10px;cursor:pointer
}
.gv-settle-bulkbar button:hover{background:rgba(255,255,255,.08);color:#FFF}

.gv-settlement-table-wrap{overflow:auto}
.gv-settlement-table{width:100%;border-collapse:collapse;min-width:980px}
.gv-settlement-table th{
  height:42px;background:#F6F7F8;border-bottom:1px solid var(--gv-line);
  text-align:left;padding:0 10px;font-size:9px;color:#747E88;font-weight:700;white-space:nowrap
}
.gv-settlement-table th.num,.gv-settlement-table td.num{text-align:right}
.gv-settlement-table th.check,.gv-settlement-table td.check{width:34px;text-align:center}
.gv-settlement-table td{
  height:66px;border-bottom:1px solid var(--gv-line-soft);padding:0 10px;font-size:10px;color:#59636D
}
.gv-settlement-table tbody tr:last-child td{border-bottom:0}
.gv-settlement-table tbody tr:hover td{background:#F9FAFB}
.gv-settlement-table input[type=checkbox]{width:14px;height:14px;accent-color:#586673}
.gv-settle-person{display:flex;align-items:center;gap:8px}
.gv-settle-person>span{
  width:30px;height:30px;border-radius:50%;background:#E7EAEC;display:grid;place-items:center;
  font-size:10px;color:#46515A;font-weight:720;flex:0 0 auto
}
.gv-settle-person strong{display:block;font-size:10.5px;color:#3D444B}
.gv-settle-person small{display:block;font-size:8.5px;color:#8A949D;margin-top:2px}
.gv-settlement-table .gv-pay-base,
.gv-settlement-table .gv-pay-adjust,
.gv-settlement-table .gv-pay-hours{
  border:0;background:transparent;outline:0;text-align:right;color:#3D444B;font-size:10px
}
.gv-settlement-table .gv-pay-base{width:72px}
.gv-hours{display:inline-flex;align-items:center;gap:2px}
.gv-hours input{width:28px!important}
.gv-hours span{font-size:8.5px;color:#8A949D}
.gv-money-compact{display:inline-flex;align-items:center;gap:2px}
.gv-money-compact span{font-size:8.5px;color:#8A949D}
.gv-money-compact input{width:64px!important}
.gv-pay-gross,.gv-pay-net{font-size:10px;color:#3D444B;white-space:nowrap;font-weight:650}
.gv-tax-toggle{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;cursor:pointer}
.gv-tax-toggle input{width:13px!important;height:13px!important}
.gv-tax-toggle span{font-size:8.5px;color:#7A848E}
.gv-settle-status{
  height:27px;border:1px solid transparent;border-radius:99px;padding:0 9px;font-size:8.5px;font-weight:660;cursor:pointer;white-space:nowrap
}
.gv-settle-status.pending{background:#F5F1E9;color:#79684C}
.gv-settle-status.paid{background:#EEF4F0;color:#506B5A}
.gv-settle-status.tax{background:#F6EEEE;color:#8A5858}

.gv-settlement-side{display:grid;gap:16px;position:sticky;top:88px}
.gv-closeout-checklist{padding:8px 16px 14px}
.gv-closeout-checklist label{
  min-height:58px;border-bottom:1px solid var(--gv-line-soft);display:grid;grid-template-columns:18px 1fr;
  align-items:center;gap:8px;cursor:pointer
}
.gv-closeout-checklist label:last-child{border-bottom:0}
.gv-closeout-checklist input{width:14px;height:14px;accent-color:#586673}
.gv-closeout-checklist strong{display:block;font-size:10.5px;color:#3D444B}
.gv-closeout-checklist small{display:block;font-size:8.5px;color:#8A949D;margin-top:2px}

.gv-margin-panel{padding:22px 18px;display:flex;align-items:center;gap:16px}
.gv-margin-ring{
  --margin-angle:88.2deg;
  width:82px;height:82px;border-radius:50%;
  background:conic-gradient(#65727B var(--margin-angle),#E6E9EB 0);
  display:grid;place-items:center;position:relative;flex:0 0 auto
}
.gv-margin-ring:before{
  content:"";position:absolute;inset:7px;background:#FCFCFD;border-radius:50%
}
.gv-margin-ring>span{position:relative;z-index:1;display:flex;align-items:flex-end;gap:2px}
.gv-margin-ring strong{font-size:18px;color:#30363C}
.gv-margin-ring small{font-size:8.5px;color:#8A949D;padding-bottom:2px}
.gv-margin-copy>span{display:block;font-size:8.5px;letter-spacing:.11em;color:#8A949D;font-weight:720}
.gv-margin-copy>strong{display:block;font-size:14px;color:#3D444B;margin-top:7px}
.gv-margin-copy>small{display:block;font-size:8.5px;line-height:1.5;color:#8A949D;margin-top:4px}

.gv-settlement-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gv-settlement-actions .gv-btn-primary{grid-column:1/-1}
.gv-settlement-note{border-top:1px solid var(--gv-line);padding:14px 2px 0}
.gv-settlement-note span{font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-settlement-note p{font-size:9.5px;color:#7A848E;line-height:1.6;margin:5px 0 0}

/* Status popover */
.gv-settle-status-popover{
  position:fixed;z-index:150;width:158px;background:#FCFCFD;border:1px solid var(--gv-line-strong);
  border-radius:9px;padding:5px;box-shadow:0 14px 34px rgba(35,40,45,.09);display:none
}
.gv-settle-status-popover.open{display:block}
.gv-settle-status-popover button{
  width:100%;height:38px;border:0;background:transparent;border-radius:6px;
  display:flex;align-items:center;gap:8px;padding:0 8px;font-size:10px;color:#59636D;cursor:pointer
}
.gv-settle-status-popover button:hover{background:#F1F3F5;color:#30363C}
.gv-settle-status-popover i{width:6px;height:6px;border-radius:50%;background:#8A949D}

/* Payout */
.gv-payout-modal{width:min(540px,100%)}
.gv-payout-summary{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--gv-line)}
.gv-payout-summary>div{min-height:94px;padding:20px;border-right:1px solid var(--gv-line-soft)}
.gv-payout-summary>div:last-child{border-right:0}
.gv-payout-summary span{display:block;font-size:8.5px;color:#8A949D;letter-spacing:.08em}
.gv-payout-summary strong{display:block;font-size:15px;color:#3D444B;margin-top:8px}
.gv-payout-warning{padding:22px}
.gv-payout-warning>span{font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-payout-warning p{font-size:10.5px;color:#69737D;line-height:1.65;margin:7px 0 0}

/* Closeout preview */
.gv-closeout-preview-backdrop{align-items:flex-start;overflow:auto;padding:32px 20px}
.gv-closeout-preview-shell{
  width:min(1040px,100%);margin:0 auto;background:#EEF0F2;border:1px solid #D3D8DC;
  border-radius:12px;overflow:hidden;box-shadow:0 26px 80px rgba(27,32,37,.16)
}
.gv-closeout-preview-toolbar{
  height:68px;background:#F8F9FA;border-bottom:1px solid var(--gv-line);
  display:flex;align-items:center;justify-content:space-between;padding:0 18px
}
.gv-closeout-preview-toolbar>div:first-child span{display:block;font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-closeout-preview-toolbar>div:first-child strong{display:block;font-size:13px;color:#3D444B;margin-top:3px}
.gv-closeout-preview-toolbar>div:last-child{display:flex;align-items:center;gap:8px}

.gv-closeout-document{
  width:min(800px,calc(100% - 40px));min-height:1120px;margin:34px auto;background:#FFF;
  box-shadow:0 12px 34px rgba(30,35,40,.08);padding:58px 62px 50px;color:#262A2E;
  font-family:"SUIT Variable","SUIT","Noto Sans KR",sans-serif
}
.gv-closeout-document>header{
  display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #202428;padding-bottom:24px
}
.gv-closeout-document>header>div:first-child>span{display:block;font-size:16px;letter-spacing:.14em;font-weight:780}
.gv-closeout-document>header small{display:block;font-size:9px;color:#787E84;margin-top:4px}
.gv-closeout-document>header>div:last-child{text-align:right}
.gv-closeout-document>header>div:last-child strong{display:block;font-size:22px;letter-spacing:.08em;font-weight:650}
.gv-closeout-doc-title{padding:48px 0 34px}
.gv-closeout-doc-title>span,.gv-closeout-doc-section>span,.gv-closeout-doc-note>span{
  display:block;font-size:8.5px;letter-spacing:.14em;color:#7C8288;font-weight:720
}
.gv-closeout-doc-title h2{margin:10px 0 0;font-size:28px;letter-spacing:-.03em;font-weight:650}
.gv-closeout-doc-title p{margin:7px 0 0;font-size:11px;color:#777D83}
.gv-closeout-doc-kpi{
  display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #DADDE0;border-bottom:1px solid #DADDE0
}
.gv-closeout-doc-kpi>div{min-height:90px;padding:18px 14px;border-right:1px solid #E5E7E9}
.gv-closeout-doc-kpi>div:first-child{padding-left:0}
.gv-closeout-doc-kpi>div:last-child{border-right:0}
.gv-closeout-doc-kpi span{display:block;font-size:8px;letter-spacing:.1em;color:#7C8288}
.gv-closeout-doc-kpi strong{display:block;font-size:13px;color:#2D3237;margin-top:12px}
.gv-closeout-doc-section{margin-top:38px}
.gv-closeout-doc-section table{width:100%;border-collapse:collapse;margin-top:12px}
.gv-closeout-doc-section th{
  height:36px;border-bottom:1px solid #202428;text-align:left;font-size:8.5px;color:#555B61
}
.gv-closeout-doc-section th:not(:first-child),.gv-closeout-doc-section td:not(:first-child){text-align:right}
.gv-closeout-doc-section td{height:44px;border-bottom:1px solid #E3E5E7;font-size:9.5px;color:#3D4247}
.gv-closeout-doc-status{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #DADDE0;border-bottom:1px solid #DADDE0;margin-top:12px}
.gv-closeout-doc-status>div{min-height:74px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid #E5E7E9}
.gv-closeout-doc-status>div:last-child{border-right:0}
.gv-closeout-doc-status strong{font-size:18px;color:#30363C}
.gv-closeout-doc-status small{font-size:8.5px;color:#7C8288;margin-top:3px}
.gv-closeout-doc-note{margin-top:38px;border-top:1px solid #DADDE0;padding-top:20px}
.gv-closeout-doc-note p{font-size:9.5px;color:#656B71;line-height:1.7;margin:9px 0 0}
.gv-closeout-document>footer{
  margin-top:80px;border-top:1px solid #202428;padding-top:16px;display:flex;align-items:center;justify-content:space-between
}
.gv-closeout-document>footer span{font-size:9px;letter-spacing:.12em;font-weight:740}
.gv-closeout-document>footer small{font-size:8.5px;color:#777D83}

/* Ledger */
.gv-ledger-modal{width:min(620px,100%)}
.gv-ledger-preview{padding:22px}
.gv-ledger-summary{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gv-line);border-radius:8px;overflow:hidden}
.gv-ledger-summary>div{min-height:90px;padding:18px;border-right:1px solid var(--gv-line-soft)}
.gv-ledger-summary>div:last-child{border-right:0}
.gv-ledger-summary span{display:block;font-size:8.5px;color:#8A949D}
.gv-ledger-summary strong{display:block;font-size:13px;color:#3D444B;margin-top:9px}
.gv-ledger-preview>p{font-size:10px;line-height:1.6;color:#7A848E;margin:16px 0 0}

@media (max-width:1499px){
  .gv-settlement-layout{grid-template-columns:210px minmax(700px,1fr) 260px}
}
@media (max-width:1199px){
  .gv-settlement-layout{grid-template-columns:1fr 270px}
  .gv-settlement-recon{grid-column:1/-1;position:static}
  .gv-recon-list{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
  .gv-recon-list>div{border-bottom:0;border-right:1px solid var(--gv-line-soft);padding:0 12px}
  .gv-recon-list>div:last-child{border-right:0}
  .gv-recon-foot{display:none}
  .gv-settlement-side{position:static}
}
@media (max-width:959px){
  .gv-settlement-metrics{grid-template-columns:1fr 1fr}
  .gv-settlement-metrics>div:nth-child(2){border-right:0}
  .gv-settlement-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
  .gv-settlement-commandbar{flex-wrap:wrap}
  .gv-settlement-search{width:100%}
  .gv-settlement-filters{width:100%;overflow:auto}
  .gv-settlement-sync{margin-left:0}
  .gv-settlement-layout{grid-template-columns:1fr}
  .gv-settlement-side{grid-template-columns:1fr 1fr}
  .gv-settlement-actions,.gv-settlement-note{grid-column:1/-1}
}
@media (max-width:767px){
  .gv-settlement-hero{align-items:flex-start;flex-direction:column}
  .gv-settlement-hero h1{font-size:28px}
  .gv-settlement-hero-actions{width:100%}
  .gv-settlement-hero-actions .gv-btn{flex:1}
  .gv-settlement-lifecycle{display:none}
  .gv-settlement-metrics{grid-template-columns:1fr}
  .gv-settlement-metrics>div{border-right:0!important;border-bottom:1px solid var(--gv-line-soft)}
  .gv-settlement-metrics>div:last-child{border-bottom:0}
  .gv-recon-list{grid-template-columns:1fr}
  .gv-recon-list>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}
  .gv-settlement-table-head{align-items:flex-start;flex-direction:column}
  .gv-settlement-table-head>div:last-child{width:100%}
  .gv-settlement-table-head .gv-btn{flex:1}
  .gv-settlement-side{grid-template-columns:1fr}
  .gv-payout-summary{grid-template-columns:1fr}
  .gv-payout-summary>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}
  .gv-payout-summary>div:last-child{border-bottom:0}
  .gv-closeout-document{width:calc(100% - 18px);padding:34px 26px;min-height:900px}
  .gv-closeout-doc-kpi{grid-template-columns:1fr 1fr}
  .gv-closeout-doc-status{grid-template-columns:1fr 1fr}
  .gv-ledger-summary{grid-template-columns:1fr 1fr}
}
@media print{
  body.gv-print-closeout *{visibility:hidden!important}
  body.gv-print-closeout #gvCloseoutDocument,
  body.gv-print-closeout #gvCloseoutDocument *{visibility:visible!important}
  body.gv-print-closeout #gvCloseoutDocument{
    position:absolute;left:0;top:0;width:100%;min-height:auto;margin:0;box-shadow:none;padding:20mm 18mm
  }
}



/* =========================================================
   CLIENT DATABASE 2.0 · V0.13
   ========================================================= */
.gv-clients-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:8px 0 24px
}
.gv-clients-hero h1{
  margin:0;font-size:34px;line-height:1.14;letter-spacing:-.038em;color:#20252A;font-weight:665
}
.gv-clients-hero p{margin:9px 0 0;font-size:13px;color:#68727C}
.gv-clients-hero-actions{display:flex;gap:8px}

.gv-client-metrics{
  display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gv-line);
  border-radius:8px;background:var(--gv-surface);overflow:hidden;margin-bottom:16px
}
.gv-client-metrics>div{min-height:108px;padding:19px 22px;border-right:1px solid var(--gv-line-soft)}
.gv-client-metrics>div:last-child{border-right:0}
.gv-client-metrics span{display:block;font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-client-metrics strong{
  display:block;font-size:24px;letter-spacing:-.025em;color:#30363C;margin-top:12px;font-weight:650
}
.gv-client-metrics small{display:block;font-size:9.5px;color:#7A848E;margin-top:4px}

.gv-client-commandbar{min-height:50px;display:flex;align-items:center;gap:12px;margin-bottom:16px}
.gv-client-search{
  width:300px;height:38px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#F9FAFB;
  display:flex;align-items:center;gap:8px;padding:0 10px
}
.gv-client-search svg{width:15px;height:15px;color:#77818A}
.gv-client-search input{width:100%;border:0;outline:0;background:transparent;font-size:11.5px}
.gv-client-filters{display:flex;gap:2px}
.gv-client-filters button{
  height:34px;border:1px solid transparent;border-radius:7px;background:transparent;
  padding:0 9px;font-size:11px;color:#747E88;cursor:pointer
}
.gv-client-filters button span{margin-left:4px;font-size:9.5px;color:#929AA3}
.gv-client-filters button:hover{background:#EEF1F3;color:#3D444B}
.gv-client-filters button.active{background:#E9EDF0;color:#30363C;font-weight:680}
.gv-client-sort{margin-left:auto;display:flex;align-items:center;gap:7px}
.gv-client-sort>span{font-size:9.5px;color:#8A949D}
.gv-client-sort select{
  height:34px;border:1px solid var(--gv-line-strong);border-radius:7px;background:#F9FAFB;
  padding:0 8px;font-size:10px;color:#59636D
}

.gv-clients-layout{
  display:grid;grid-template-columns:240px minmax(660px,1fr) 286px;gap:16px;align-items:start
}
.gv-client-list-panel{overflow:hidden;position:sticky;top:88px}
.gv-client-list{padding:6px}
.gv-client-list>button{
  width:100%;min-height:74px;border:1px solid transparent;border-radius:8px;background:transparent;
  display:grid;grid-template-columns:38px minmax(0,1fr) 34px;align-items:center;gap:9px;padding:8px 9px;text-align:left;cursor:pointer
}
.gv-client-list>button:hover{background:#F5F7F8}
.gv-client-list>button.active{background:#EDF1F3;border-color:#E1E5E8}
.gv-client-monogram{
  width:34px;height:34px;border-radius:8px;background:#E7EAEC;display:grid;place-items:center;
  font-size:9px;font-weight:750;color:#4A555E;letter-spacing:.04em
}
.gv-client-list-copy{min-width:0}
.gv-client-list-copy strong{
  display:block;font-size:10.5px;color:#3D444B;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.gv-client-list-copy small{
  display:block;font-size:8.5px;color:#8A949D;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.gv-client-list-meta{text-align:right}
.gv-client-list-meta b{display:block;font-size:11px;color:#59636D}
.gv-client-list-meta small{display:block;font-size:8px;color:#9AA1A8;margin-top:1px}

.gv-client-main{display:grid;gap:16px}
.gv-client-profile{overflow:hidden}
.gv-client-profile-head{
  min-height:112px;padding:20px 22px;border-bottom:1px solid var(--gv-line);
  display:flex;align-items:center;justify-content:space-between;gap:18px
}
.gv-client-identity{display:flex;align-items:center;gap:14px}
.gv-client-logo{
  width:52px;height:52px;border:1px solid #D8DDE1;border-radius:10px;background:#F4F6F7;
  display:grid;place-items:center;font-size:12px;font-weight:750;color:#46515A;letter-spacing:.04em
}
.gv-client-kicker{font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-client-identity h2{margin:6px 0 0;font-size:22px;letter-spacing:-.025em;color:#30363C;font-weight:665}
.gv-client-identity p{margin:3px 0 0;font-size:10px;color:#7A848E}
.gv-client-profile-actions{display:flex;align-items:center;gap:4px}

.gv-client-info-grid{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--gv-line)}
.gv-client-info-grid>div{min-height:105px;padding:19px 18px;border-right:1px solid var(--gv-line-soft)}
.gv-client-info-grid>div:last-child{border-right:0}
.gv-client-info-grid span,.gv-client-note>span{
  display:block;font-size:8px;letter-spacing:.12em;color:#8A949D;font-weight:720
}
.gv-client-info-grid strong{display:block;font-size:11px;color:#3D444B;margin-top:11px;line-height:1.45}
.gv-client-info-grid small{display:block;font-size:8.5px;color:#8A949D;margin-top:3px;line-height:1.45}
.gv-client-note{padding:18px 20px}
.gv-client-note p{margin:8px 0 0;font-size:10.5px;color:#69737D;line-height:1.65}

.gv-client-contacts{overflow:hidden}
.gv-contact-list{padding:4px 14px 10px}
.gv-contact-list>button{
  width:100%;min-height:68px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;
  display:grid;grid-template-columns:34px minmax(140px,1fr) minmax(180px,1.2fr) 46px 14px;
  align-items:center;gap:10px;text-align:left;padding:6px 2px;cursor:pointer
}
.gv-contact-list>button:last-child{border-bottom:0}
.gv-contact-list>button:hover{background:#F8F9FA}
.gv-contact-avatar{
  width:32px;height:32px;border-radius:50%;background:#E7EAEC;display:grid;place-items:center;
  color:#46515A;font-size:10px;font-weight:720
}
.gv-contact-copy strong{display:block;font-size:10.5px;color:#3D444B}
.gv-contact-copy small,.gv-contact-channel small{
  display:block;font-size:8.5px;color:#8A949D;margin-top:2px
}
.gv-contact-channel strong{display:block;font-size:9.5px;color:#59636D;font-weight:600}
.gv-contact-events{text-align:right}
.gv-contact-events b{display:block;font-size:10px;color:#59636D}
.gv-contact-events small{display:block;font-size:8px;color:#9AA1A8}
.gv-contact-list>button>em{font-style:normal;color:#A1A8AF;font-size:16px}

.gv-client-projects{overflow:hidden}
.gv-client-project-list{padding:4px 14px 10px}
.gv-client-project-list>a{
  min-height:66px;border-bottom:1px solid var(--gv-line-soft);display:grid;
  grid-template-columns:42px minmax(180px,1fr) 150px 72px;align-items:center;gap:10px;
  text-decoration:none;padding:6px 2px
}
.gv-client-project-list>a:last-child{border-bottom:0}
.gv-client-project-list>a:hover{background:#F8F9FA}
.gv-project-year{font-size:9px;color:#8A949D}
.gv-client-project-list>a>span:nth-child(2) strong{display:block;font-size:10.5px;color:#3D444B}
.gv-client-project-list>a>span:nth-child(2) small{display:block;font-size:8.5px;color:#8A949D;margin-top:2px}
.gv-client-project-role{font-size:9px;color:#69737D}

.gv-client-side{display:grid;gap:16px;position:sticky;top:88px}
.gv-relationship-card{padding:19px 18px 20px}
.gv-relationship-big{display:flex;align-items:flex-end;justify-content:space-between}
.gv-relationship-big>span{font-size:8px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-relationship-big>strong{font-size:28px;color:#30363C;font-weight:645}
.gv-relationship-big>strong small{font-size:9px;color:#8A949D;font-weight:500}
.gv-relationship-years{
  height:105px;display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:10px;margin-top:18px;
  border-bottom:1px solid var(--gv-line)
}
.gv-relationship-years>div{
  height:100%;display:grid;grid-template-rows:16px 1fr 16px;align-items:end;text-align:center
}
.gv-relationship-years span{font-size:8px;color:#8A949D}
.gv-relationship-years i{
  width:18px;min-height:8px;max-height:66px;background:#78858E;border-radius:4px 4px 0 0;
  justify-self:center;align-self:end
}
.gv-relationship-years small{font-size:8px;color:#818A93;align-self:center}
.gv-relationship-card>p{font-size:9.5px;color:#7A848E;line-height:1.6;margin:12px 0 0}

.gv-client-next-actions{padding:5px 14px 10px}
.gv-client-next-actions button{
  width:100%;min-height:65px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;
  display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;text-align:left;padding:6px 2px;cursor:pointer
}
.gv-client-next-actions button:last-child{border-bottom:0}
.gv-client-next-actions button:hover{background:#F8F9FA}
.gv-client-next-actions>button>span{font-size:8.5px;color:#8A949D}
.gv-client-next-actions strong{display:block;font-size:10px;color:#3D444B}
.gv-client-next-actions small{display:block;font-size:8.5px;color:#8A949D;margin-top:2px}
.gv-client-next-actions em{font-style:normal;font-size:9px;color:#69737D}
.gv-client-proof{border-top:1px solid var(--gv-line);padding:14px 2px 0}
.gv-client-proof span{font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-client-proof strong{display:block;font-size:11px;color:#4B555F;margin-top:5px}
.gv-client-proof p{font-size:9.5px;line-height:1.6;color:#7A848E;margin:5px 0 0}

/* Client forms */
.gv-client-modal{width:min(620px,100%)}
.gv-contact-modal{width:min(590px,100%)}
.gv-client-modal textarea,.gv-contact-modal textarea{
  width:100%;border:1px solid var(--gv-line-strong);border-radius:8px;background:#FCFDFE;
  padding:10px;resize:vertical;outline:0;font:inherit;font-size:11px;line-height:1.6
}
.gv-address-input{display:grid;grid-template-columns:1fr auto;gap:7px}
.gv-address-input input{
  height:44px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#FCFDFE;padding:0 11px;outline:0
}
.gv-address-input button{
  height:44px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#F4F6F7;
  padding:0 12px;color:#59636D;font-size:10.5px;cursor:pointer
}
.gv-address-input button:hover{background:#ECEFF1}

/* Contact drawer */
.gv-contact-drawer{width:min(450px,94vw)}
.gv-contact-drawer-head{
  display:flex;align-items:center;gap:12px;padding-bottom:22px;border-bottom:1px solid var(--gv-line)
}
.gv-contact-drawer-avatar{
  width:50px;height:50px;border-radius:50%;background:#E7EAEC;display:grid;place-items:center;
  font-size:15px;color:#46515A;font-weight:720
}
.gv-contact-drawer-head>div strong{display:block;font-size:12.5px;color:#3D444B}
.gv-contact-drawer-head>div small{display:block;font-size:9.5px;color:#8A949D;margin-top:3px}
.gv-contact-drawer-info{
  display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--gv-line)
}
.gv-contact-drawer-info>div{min-height:88px;padding:16px 0;border-bottom:1px solid var(--gv-line-soft)}
.gv-contact-drawer-info>div:nth-child(odd){border-right:1px solid var(--gv-line-soft);padding-right:14px}
.gv-contact-drawer-info>div:nth-child(even){padding-left:14px}
.gv-contact-drawer-info>div:nth-last-child(-n+2){border-bottom:0}
.gv-contact-drawer-info span,.gv-contact-drawer-section>span{
  display:block;font-size:8px;letter-spacing:.12em;color:#8A949D;font-weight:720
}
.gv-contact-drawer-info strong{display:block;font-size:10.5px;color:#3D444B;margin-top:8px;word-break:break-word}
.gv-contact-drawer-section{padding:20px 0;border-bottom:1px solid var(--gv-line)}
.gv-contact-drawer-section>a{
  min-height:50px;border-bottom:1px solid var(--gv-line-soft);display:flex;align-items:center;justify-content:space-between;
  text-decoration:none
}
.gv-contact-drawer-section>a:last-of-type{border-bottom:0}
.gv-contact-drawer-section>a strong{font-size:10px;color:#4B555F}
.gv-contact-drawer-section>a small{font-size:8.5px;color:#8A949D}
.gv-contact-drawer-section textarea{
  width:100%;margin-top:10px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#FCFDFE;
  padding:10px;resize:vertical;outline:0;font:inherit;font-size:10px;line-height:1.6
}
.gv-contact-drawer-foot{
  margin-top:auto;min-height:72px;border-top:1px solid var(--gv-line);padding:12px 20px;
  display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#F9FAFB
}

@media (max-width:1499px){
  .gv-clients-layout{grid-template-columns:220px minmax(620px,1fr) 265px}
}
@media (max-width:1199px){
  .gv-clients-layout{grid-template-columns:1fr 280px}
  .gv-client-list-panel{grid-column:1/-1;position:static}
  .gv-client-list{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
  .gv-client-side{position:static}
}
@media (max-width:959px){
  .gv-client-metrics{grid-template-columns:1fr 1fr}
  .gv-client-metrics>div:nth-child(2){border-right:0}
  .gv-client-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
  .gv-client-commandbar{flex-wrap:wrap}
  .gv-client-search{width:100%}
  .gv-client-filters{width:100%;overflow:auto}
  .gv-client-sort{margin-left:0}
  .gv-clients-layout{grid-template-columns:1fr}
  .gv-client-side{grid-template-columns:1fr 1fr}
  .gv-client-proof{grid-column:1/-1}
  .gv-client-info-grid{grid-template-columns:1fr 1fr}
  .gv-client-info-grid>div:nth-child(2){border-right:0}
  .gv-client-info-grid>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
}
@media (max-width:767px){
  .gv-clients-hero{align-items:flex-start;flex-direction:column}
  .gv-clients-hero h1{font-size:28px}
  .gv-clients-hero-actions{width:100%}
  .gv-clients-hero-actions .gv-btn{flex:1}
  .gv-client-metrics{grid-template-columns:1fr}
  .gv-client-metrics>div{border-right:0!important;border-bottom:1px solid var(--gv-line-soft)}
  .gv-client-metrics>div:last-child{border-bottom:0}
  .gv-client-list{grid-template-columns:1fr}
  .gv-client-profile-head{align-items:flex-start;flex-direction:column}
  .gv-client-profile-actions{width:100%}
  .gv-client-profile-actions .gv-btn{flex:1}
  .gv-client-info-grid{grid-template-columns:1fr}
  .gv-client-info-grid>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}
  .gv-client-info-grid>div:last-child{border-bottom:0}
  .gv-contact-list>button{
    grid-template-columns:34px minmax(0,1fr) 14px
  }
  .gv-contact-channel,.gv-contact-events{display:none}
  .gv-client-project-list>a{
    grid-template-columns:38px 1fr 70px
  }
  .gv-client-project-role{display:none}
  .gv-client-side{grid-template-columns:1fr}
  .gv-form-row{grid-template-columns:1fr}
}



/* =========================================================
   RELATIONSHIP PULSE · V0.14
   ========================================================= */
.gv-relationship-pulse{border-top:1px solid var(--gv-line);padding:17px 18px 18px;background:#FAFBFB}
.gv-pulse-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.gv-pulse-head>div>span{display:block;font-size:8px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-pulse-head>div>strong{display:block;font-size:10.5px;color:#4B555F;margin-top:3px}
.gv-pulse-signal{height:25px;border-radius:99px;padding:0 8px;display:flex;align-items:center;font-size:9px;font-weight:700}
.gv-pulse-signal.up{background:#EEF4F0;color:#506B5A}
.gv-pulse-signal.down{background:#F6EEEE;color:#8A5858}
.gv-pulse-signal.flat{background:#F0F1F2;color:#69737D}
.gv-pulse-compare{display:grid;grid-template-columns:1fr 18px 1fr;align-items:center;gap:8px;margin-top:14px}
.gv-pulse-compare>div{min-height:62px;border:1px solid var(--gv-line-soft);border-radius:7px;background:#FCFCFD;padding:11px}
.gv-pulse-compare>div>span{display:block;font-size:8px;color:#8A949D}
.gv-pulse-compare>div>strong{display:inline-block;font-size:18px;color:#30363C;margin-top:4px}
.gv-pulse-compare>div>small{font-size:8px;color:#9AA1A8;margin-left:3px}
.gv-pulse-compare>i{font-style:normal;text-align:center;color:#A0A7AE;font-size:10px}
.gv-pulse-action{margin-top:10px;min-height:50px;border:1px solid var(--gv-line-soft);border-radius:7px;background:#F7F9F8;display:grid;grid-template-columns:8px 1fr;align-items:center;gap:8px;padding:9px 10px}
.gv-pulse-action>span{width:6px;height:6px;border-radius:50%;background:#64796B}
.gv-pulse-action strong{display:block;font-size:9.5px;color:#4B555F}
.gv-pulse-action small{display:block;font-size:8.5px;color:#818A93;margin-top:2px}
.gv-pulse-action.attention{background:#FBF6F4}
.gv-pulse-action.attention>span{background:#9A664F}
.gv-pulse-action.watch{background:#FAF8F3}
.gv-pulse-action.watch>span{background:#8E7955}

/* =========================================================
   CREW MASTER 2.0 · V0.14
   ========================================================= */
.gv-crew-master-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:8px 0 24px}
.gv-crew-master-hero h1{margin:0;font-size:34px;line-height:1.14;letter-spacing:-.038em;color:#20252A;font-weight:665}
.gv-crew-master-hero p{margin:9px 0 0;font-size:13px;color:#68727C}
.gv-crew-master-actions{display:flex;gap:8px}

.gv-crew-master-metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gv-line);border-radius:8px;background:var(--gv-surface);overflow:hidden;margin-bottom:16px}
.gv-crew-master-metrics>div{min-height:108px;padding:19px 22px;border-right:1px solid var(--gv-line-soft)}
.gv-crew-master-metrics>div:last-child{border-right:0}
.gv-crew-master-metrics span{display:block;font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-crew-master-metrics strong{display:block;font-size:24px;letter-spacing:-.025em;color:#30363C;margin-top:12px;font-weight:650}
.gv-crew-master-metrics small{display:block;font-size:9.5px;color:#7A848E;margin-top:4px}

.gv-crew-master-commandbar{min-height:50px;display:flex;align-items:center;gap:12px;margin-bottom:16px}
.gv-crew-master-search{width:320px;height:38px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#F9FAFB;display:flex;align-items:center;gap:8px;padding:0 10px}
.gv-crew-master-search svg{width:15px;height:15px;color:#77818A}
.gv-crew-master-search input{width:100%;border:0;outline:0;background:transparent;font-size:11.5px}
.gv-crew-master-filters{display:flex;gap:2px}
.gv-crew-master-filters button{height:34px;border:1px solid transparent;border-radius:7px;background:transparent;padding:0 9px;font-size:11px;color:#747E88;cursor:pointer}
.gv-crew-master-filters button span{margin-left:4px;font-size:9.5px;color:#929AA3}
.gv-crew-master-filters button:hover{background:#EEF1F3;color:#3D444B}
.gv-crew-master-filters button.active{background:#E9EDF0;color:#30363C;font-weight:680}
.gv-crew-master-sort{margin-left:auto;display:flex;align-items:center;gap:7px}
.gv-crew-master-sort>span{font-size:9.5px;color:#8A949D}
.gv-crew-master-sort select{height:34px;border:1px solid var(--gv-line-strong);border-radius:7px;background:#F9FAFB;padding:0 8px;font-size:10px;color:#59636D}

.gv-crew-master-layout{display:grid;grid-template-columns:205px minmax(760px,1fr) 270px;gap:16px;align-items:start}
.gv-crew-role-facets{position:sticky;top:88px;overflow:hidden}
.gv-crew-role-list{padding:6px}
.gv-crew-role-list button{width:100%;height:44px;border:0;border-radius:7px;background:transparent;display:flex;align-items:center;justify-content:space-between;padding:0 9px;cursor:pointer}
.gv-crew-role-list button:hover{background:#F5F7F8}
.gv-crew-role-list button.active{background:#EDF1F3}
.gv-crew-role-list span{font-size:10.5px;color:#59636D}
.gv-crew-role-list b{font-size:9.5px;color:#8A949D;font-weight:650}
.gv-crew-role-foot{border-top:1px solid var(--gv-line);padding:15px}
.gv-crew-role-foot span{font-size:8px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-crew-role-foot p{font-size:9px;color:#7A848E;line-height:1.6;margin:5px 0 0}

.gv-crew-master-table-panel{overflow:hidden}
.gv-crew-master-table-head{min-height:96px;padding:18px 22px;border-bottom:1px solid var(--gv-line);display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.gv-crew-master-kicker{font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:730}
.gv-crew-master-table-head h2{margin:7px 0 0;font-size:22px;letter-spacing:-.025em;color:#30363C;font-weight:665}
.gv-crew-master-table-head p{margin:5px 0 0;font-size:10px;color:#7A848E}
.gv-crew-master-table-head>div:last-child{display:flex;gap:7px}

.gv-crew-master-table-wrap{overflow:auto}
.gv-crew-master-table{width:100%;border-collapse:collapse;min-width:930px}
.gv-crew-master-table th{height:42px;background:#F6F7F8;border-bottom:1px solid var(--gv-line);text-align:left;padding:0 11px;font-size:9px;color:#747E88;font-weight:700;white-space:nowrap}
.gv-crew-master-table th.num,.gv-crew-master-table td.num{text-align:right}
.gv-crew-master-table td{height:67px;border-bottom:1px solid var(--gv-line-soft);padding:0 11px;font-size:10px;color:#59636D}
.gv-crew-master-table tbody tr:last-child td{border-bottom:0}
.gv-crew-master-table tbody tr:hover td{background:#F9FAFB}
.gv-master-person{border:0;background:transparent;display:flex;align-items:center;gap:9px;padding:0;text-align:left;cursor:pointer}
.gv-master-person>span{width:32px;height:32px;border-radius:50%;background:#E7EAEC;display:grid;place-items:center;font-size:10px;color:#46515A;font-weight:720;flex:0 0 auto}
.gv-master-person strong{display:block;font-size:10.5px;color:#3D444B}
.gv-master-person small{display:block;font-size:8.5px;color:#8A949D;margin-top:2px}
.gv-language{display:inline-flex;align-items:center;height:23px;border:1px solid #DDE1E4;border-radius:99px;padding:0 7px;background:#F8F9FA;font-size:8.5px;color:#69737D;margin-right:3px}
.gv-brand-history strong{display:block;font-size:9.5px;color:#4B555F}
.gv-brand-history small,.gv-last-work small{display:block;font-size:8.5px;color:#8A949D;margin-top:2px}
.gv-last-work strong{display:block;font-size:9.5px;color:#4B555F}
.gv-profile-state{display:inline-flex;align-items:center;height:25px;border-radius:99px;padding:0 8px;font-size:8.5px;font-weight:680}
.gv-profile-state.ready{background:#EEF4F0;color:#506B5A}
.gv-profile-state.update{background:#F5EEE8;color:#8A644E}
.gv-master-availability{display:inline-flex;align-items:center;height:25px;border-radius:99px;padding:0 8px;font-size:8.5px;font-weight:660}
.gv-master-availability.available{background:#EFF3F7;color:#566683}
.gv-master-availability.booked{background:#F1F0F3;color:#6B6378}
.gv-master-availability.quiet{background:#F1F1F2;color:#81878D}

.gv-crew-master-side{display:grid;gap:16px;position:sticky;top:88px}
.gv-pool-health{padding:17px 18px 20px;display:grid;gap:17px}
.gv-pool-health>div{display:grid;grid-template-columns:1fr auto;gap:7px;align-items:center}
.gv-pool-health span{font-size:8.5px;color:#8A949D;letter-spacing:.08em}
.gv-pool-health strong{font-size:10px;color:#4B555F}
.gv-pool-health i{grid-column:1/-1;height:5px;border-radius:99px;background:#E7EAEC;overflow:hidden}
.gv-pool-health i b{display:block;height:100%;background:#6C7982;border-radius:inherit}
.gv-master-attention{padding:5px 14px 10px}
.gv-master-attention button{width:100%;min-height:64px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;text-align:left;padding:6px 2px;cursor:pointer}
.gv-master-attention button:last-child{border-bottom:0}
.gv-master-attention button:hover{background:#F8F9FA}
.gv-master-attention>button>span{font-size:8.5px;color:#8A949D}
.gv-master-attention strong{display:block;font-size:10px;color:#3D444B}
.gv-master-attention small{display:block;font-size:8.5px;color:#8A949D;margin-top:2px}
.gv-master-attention em{font-style:normal;font-size:9px;color:#69737D}
.gv-crew-master-proof{border-top:1px solid var(--gv-line);padding:14px 2px 0}
.gv-crew-master-proof span{font-size:8px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-crew-master-proof strong{display:block;font-size:10.5px;color:#4B555F;margin-top:5px}
.gv-crew-master-proof p{font-size:9.5px;line-height:1.6;color:#7A848E;margin:5px 0 0}

.gv-master-drawer{width:min(470px,94vw)}
.gv-master-profile-head{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding-bottom:21px;border-bottom:1px solid var(--gv-line)}
.gv-master-profile-avatar{width:52px;height:52px;border-radius:50%;background:#E7EAEC;display:grid;place-items:center;font-size:15px;color:#46515A;font-weight:720}
.gv-master-profile-head>div strong{display:block;font-size:12.5px;color:#3D444B}
.gv-master-profile-head>div small{display:block;font-size:9.5px;color:#8A949D;margin-top:3px}
.gv-master-kpis{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--gv-line)}
.gv-master-kpis>div{min-height:85px;padding:16px 0;border-right:1px solid var(--gv-line-soft)}
.gv-master-kpis>div:not(:first-child){padding-left:15px}
.gv-master-kpis>div:last-child{border-right:0}
.gv-master-kpis span,.gv-master-drawer-section>span{display:block;font-size:8px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-master-kpis strong{display:block;font-size:15px;color:#3D444B;margin-top:8px}
.gv-master-drawer-section{padding:20px 0;border-bottom:1px solid var(--gv-line)}
.gv-master-brand-timeline{margin-top:11px}
.gv-master-brand-timeline>div{min-height:48px;display:grid;grid-template-columns:9px 1fr;gap:9px;position:relative}
.gv-master-brand-timeline>div>i{width:6px;height:6px;border-radius:50%;background:#7A878F;margin-top:5px;position:relative}
.gv-master-brand-timeline>div:not(:last-child)>i:after{content:"";position:absolute;left:2.5px;top:8px;width:1px;height:38px;background:#DDE2E5}
.gv-master-brand-timeline strong{display:block;font-size:10px;color:#4B555F}
.gv-master-brand-timeline small{display:block;font-size:8.5px;color:#8A949D;margin-top:2px}
.gv-availability-week{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-top:12px}
.gv-availability-week button{min-height:54px;border:1px solid var(--gv-line);border-radius:7px;background:#F8F9FA;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}
.gv-availability-week button span{font-size:10px;color:#59636D}
.gv-availability-week button small{font-size:8px;color:#8A949D;margin-top:2px}
.gv-availability-week button.available{background:#EEF4F0;border-color:#D9E6DD}
.gv-availability-week button.booked{background:#EEF0F5;border-color:#D9DDE8}
.gv-availability-legend{display:flex;gap:12px;margin-top:9px}
.gv-availability-legend span{font-size:8px;color:#8A949D;display:flex;align-items:center;gap:4px}
.gv-availability-legend i{width:6px;height:6px;border-radius:50%;background:#C9CED2}
.gv-availability-legend i.available{background:#657C6D}
.gv-availability-legend i.booked{background:#68708B}
.gv-profile-maintenance{margin-top:10px}
.gv-profile-maintenance>div{min-height:45px;border-bottom:1px solid var(--gv-line-soft);display:grid;grid-template-columns:95px 1fr auto;align-items:center;gap:8px}
.gv-profile-maintenance>div:last-child{border-bottom:0}
.gv-profile-maintenance span{font-size:9px;color:#7A848E}
.gv-profile-maintenance strong{font-size:9px;color:#4B555F}
.gv-profile-maintenance em{font-style:normal;font-size:8px}
.gv-profile-maintenance em.ok{color:#58705F}
.gv-master-drawer-section textarea{width:100%;margin-top:10px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#FCFDFE;padding:10px;resize:vertical;outline:0;font:inherit;font-size:10px;line-height:1.6}
.gv-master-drawer-foot{margin-top:auto;min-height:72px;border-top:1px solid var(--gv-line);padding:12px 20px;display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#F9FAFB}

.gv-master-preview-backdrop{align-items:flex-start;overflow:auto;padding:32px 20px}
.gv-master-preview-shell{width:min(900px,100%);margin:0 auto;background:#EEF0F2;border:1px solid #D3D8DC;border-radius:12px;overflow:hidden;box-shadow:0 26px 80px rgba(27,32,37,.16)}
.gv-master-preview-toolbar{height:66px;background:#F8F9FA;border-bottom:1px solid var(--gv-line);display:flex;align-items:center;justify-content:space-between;padding:0 18px}
.gv-master-preview-toolbar span{display:block;font-size:8px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-master-preview-toolbar strong{display:block;font-size:12.5px;color:#3D444B;margin-top:3px}
.gv-master-profile-document{width:min(720px,calc(100% - 40px));min-height:860px;margin:34px auto;background:#FFF;box-shadow:0 12px 34px rgba(30,35,40,.08);display:grid;grid-template-columns:42% 58%}
.gv-master-profile-photo{background:linear-gradient(145deg,#ECEFF1,#E2E5E8);display:grid;place-items:center;color:#727C84;font-size:48px;font-weight:300;letter-spacing:.04em}
.gv-master-profile-document>section{padding:54px 44px}
.gv-master-profile-document>section>span{display:block;font-size:8px;letter-spacing:.14em;color:#7C8288;font-weight:720}
.gv-master-profile-document h2{margin:18px 0 0;font-size:30px;letter-spacing:-.03em;color:#272C31;font-weight:650}
.gv-master-profile-document p{margin:6px 0 0;font-size:10px;letter-spacing:.08em;color:#777D83}
.gv-master-profile-doc-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #DADDE0;border-bottom:1px solid #DADDE0;margin-top:42px}
.gv-master-profile-doc-grid>div{min-height:90px;padding:20px 0}
.gv-master-profile-doc-grid>div:first-child{border-right:1px solid #E4E6E8}
.gv-master-profile-doc-grid>div:last-child{padding-left:18px}
.gv-master-profile-doc-grid span,.gv-master-profile-doc-history>span{display:block;font-size:8px;letter-spacing:.11em;color:#7C8288}
.gv-master-profile-doc-grid strong{display:block;font-size:11px;color:#34393E;margin-top:10px}
.gv-master-profile-doc-history{margin-top:42px}
.gv-master-profile-doc-history>div{min-height:56px;border-bottom:1px solid #E5E7E9;display:flex;flex-direction:column;justify-content:center}
.gv-master-profile-doc-history strong{font-size:10.5px;color:#353A3F}
.gv-master-profile-doc-history small{font-size:8.5px;color:#7D8389;margin-top:3px}

.gv-master-add-modal{width:min(580px,100%)}
.gv-master-add-modal textarea{width:100%;border:1px solid var(--gv-line-strong);border-radius:8px;background:#FCFDFE;padding:10px;resize:vertical;outline:0;font:inherit;font-size:10.5px;line-height:1.6}

@media (max-width:1499px){
  .gv-crew-master-layout{grid-template-columns:190px minmax(700px,1fr) 250px}
}
@media (max-width:1199px){
  .gv-crew-master-layout{grid-template-columns:1fr 270px}
  .gv-crew-role-facets{grid-column:1/-1;position:static}
  .gv-crew-role-list{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}
  .gv-crew-role-foot{display:none}
  .gv-crew-master-side{position:static}
}
@media (max-width:959px){
  .gv-crew-master-metrics{grid-template-columns:1fr 1fr}
  .gv-crew-master-metrics>div:nth-child(2){border-right:0}
  .gv-crew-master-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
  .gv-crew-master-commandbar{flex-wrap:wrap}
  .gv-crew-master-search{width:100%}
  .gv-crew-master-filters{width:100%;overflow:auto}
  .gv-crew-master-sort{margin-left:0}
  .gv-crew-master-layout{grid-template-columns:1fr}
  .gv-crew-role-list{grid-template-columns:repeat(3,1fr)}
  .gv-crew-master-side{grid-template-columns:1fr 1fr}
  .gv-crew-master-proof{grid-column:1/-1}
}
@media (max-width:767px){
  .gv-crew-master-hero{align-items:flex-start;flex-direction:column}
  .gv-crew-master-hero h1{font-size:28px}
  .gv-crew-master-actions{width:100%}
  .gv-crew-master-actions .gv-btn{flex:1}
  .gv-crew-master-metrics{grid-template-columns:1fr}
  .gv-crew-master-metrics>div{border-right:0!important;border-bottom:1px solid var(--gv-line-soft)}
  .gv-crew-master-metrics>div:last-child{border-bottom:0}
  .gv-crew-role-list{grid-template-columns:1fr 1fr}
  .gv-crew-master-table-head{align-items:flex-start;flex-direction:column}
  .gv-crew-master-table-head>div:last-child{width:100%}
  .gv-crew-master-table-head .gv-btn{flex:1}
  .gv-crew-master-side{grid-template-columns:1fr}
  .gv-master-profile-document{grid-template-columns:1fr;width:calc(100% - 18px);min-height:760px}
  .gv-master-profile-photo{height:330px}
  .gv-master-profile-document>section{padding:34px 26px}
}



/* =========================================================
   ANALYTICS 2.0 · V0.15
   ========================================================= */
.gv-analytics-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:8px 0 24px}
.gv-analytics-hero h1{margin:0;font-size:34px;line-height:1.14;letter-spacing:-.038em;color:#20252A;font-weight:665}
.gv-analytics-hero p{margin:9px 0 0;font-size:13px;color:#68727C}
.gv-analytics-hero-actions{display:flex;gap:8px}

.gv-analytics-periodbar{min-height:52px;border-top:1px solid var(--gv-line);border-bottom:1px solid var(--gv-line);display:flex;align-items:center;gap:12px;margin-bottom:16px}
.gv-analytics-periods{display:flex;gap:2px}
.gv-analytics-periods button{height:34px;border:1px solid transparent;border-radius:7px;background:transparent;padding:0 10px;font-size:10.5px;color:#747E88;cursor:pointer}
.gv-analytics-periods button:hover{background:#EEF1F3;color:#3D444B}
.gv-analytics-periods button.active{background:#E9EDF0;color:#30363C;font-weight:680}
.gv-analytics-asof{margin-left:auto;display:flex;align-items:center;gap:7px;font-size:9.5px;color:#818A93}
.gv-analytics-asof>span{width:6px;height:6px;border-radius:50%;background:#667B6D}

.gv-analytics-metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gv-line);border-radius:8px;background:var(--gv-surface);overflow:hidden;margin-bottom:16px}
.gv-analytics-metrics>div{min-height:112px;padding:20px 22px;border-right:1px solid var(--gv-line-soft)}
.gv-analytics-metrics>div:last-child{border-right:0}
.gv-analytics-metrics span{display:block;font-size:8.5px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-analytics-metrics strong{display:block;font-size:24px;letter-spacing:-.025em;color:#30363C;margin-top:12px;font-weight:650}
.gv-analytics-metrics small{display:block;font-size:9.5px;color:#7A848E;margin-top:5px}
.gv-analytics-metrics small b{font-weight:700;margin-right:4px}
.gv-analytics-metrics .up,.gv-momentum-summary .up{color:#58705F}

.gv-analytics-top-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(310px,.7fr);gap:16px;margin-bottom:16px}
.gv-momentum-panel,.gv-opportunity-panel{overflow:hidden}
.gv-analytics-panel-head{align-items:center}
.gv-analytics-segment{height:34px;padding:3px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#F7F8F9;display:flex}
.gv-analytics-segment button{min-width:66px;border:0;border-radius:6px;background:transparent;color:#747E88;font-size:9.5px;cursor:pointer}
.gv-analytics-segment button.active{background:#FCFCFD;color:#30363C;font-weight:690;box-shadow:0 1px 2px rgba(31,36,41,.05)}

.gv-momentum-summary{display:flex;align-items:flex-end;gap:34px;padding:18px 22px 0}
.gv-momentum-summary>div span{display:block;font-size:8.5px;color:#8A949D;letter-spacing:.08em}
.gv-momentum-summary>div strong{display:block;font-size:18px;color:#343B42;margin-top:5px}
.gv-momentum-chart-wrap{height:300px;padding:8px 16px 14px;position:relative}
.gv-momentum-chart{width:100%;height:245px;overflow:visible}
.gv-chart-grid{stroke:#E9ECEF;stroke-width:1;vector-effect:non-scaling-stroke}
.gv-chart-label{font-size:9px;fill:#89929B}
.gv-chart-line{fill:none;stroke-width:2;vector-effect:non-scaling-stroke}
.gv-chart-line.current{stroke:#5E6D79}
.gv-chart-line.previous{stroke:#B5BCC2;stroke-dasharray:4 5}
.gv-chart-dot{vector-effect:non-scaling-stroke}
.gv-chart-dot.current{fill:#FCFCFD;stroke:#5E6D79;stroke-width:2}
.gv-chart-dot.previous{fill:#FCFCFD;stroke:#B5BCC2;stroke-width:1.5}
.gv-momentum-legend{position:absolute;right:20px;bottom:12px;display:flex;gap:12px}
.gv-momentum-legend span{font-size:8.5px;color:#818A93;display:flex;align-items:center;gap:5px}
.gv-momentum-legend i{width:14px;height:2px;background:#B5BCC2}
.gv-momentum-legend i.current{background:#5E6D79}

.gv-opportunity-list{padding:5px 14px 8px}
.gv-opportunity-list>button{width:100%;min-height:72px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;display:grid;grid-template-columns:26px 1fr auto;grid-template-rows:auto auto;gap:2px 9px;align-items:center;text-align:left;padding:8px 2px;cursor:pointer}
.gv-opportunity-list>button:last-child{border-bottom:0}
.gv-opportunity-list>button:hover{background:#F8F9FA}
.gv-opportunity-rank{grid-row:1/3;font-size:8.5px;color:#9AA1A8}
.gv-opportunity-copy strong{display:block;font-size:10.5px;color:#3D444B}
.gv-opportunity-copy small{display:block;font-size:8.5px;color:#8A949D;margin-top:2px}
.gv-opportunity-signal{align-self:end;font-size:9px;font-weight:700}
.gv-opportunity-signal.down{color:#8A5858}
.gv-opportunity-signal.quiet{color:#7A848E}
.gv-opportunity-list em{grid-column:3;align-self:start;font-style:normal;font-size:8.5px;color:#66717B}
.gv-opportunity-foot{border-top:1px solid var(--gv-line);min-height:58px;padding:12px 16px;display:grid;grid-template-columns:7px 1fr;gap:8px;align-items:start}
.gv-opportunity-foot>span{width:6px;height:6px;border-radius:50%;background:#8A6956;margin-top:4px}
.gv-opportunity-foot p{font-size:9px;color:#7A848E;line-height:1.55;margin:0}
.gv-opportunity-foot strong{color:#4B555F}

.gv-relationship-matrix{overflow:hidden;margin-bottom:16px}
.gv-relationship-matrix-head{align-items:center}
.gv-relationship-filters{display:flex;gap:2px}
.gv-relationship-filters button{height:30px;border:1px solid transparent;border-radius:6px;background:transparent;padding:0 8px;font-size:9px;color:#7A848E;cursor:pointer}
.gv-relationship-filters button:hover{background:#F0F2F4;color:#4B555F}
.gv-relationship-filters button.active{background:#E9EDF0;color:#30363C;font-weight:680}
.gv-relationship-table-wrap{overflow:auto}
.gv-relationship-table{width:100%;border-collapse:collapse;min-width:960px}
.gv-relationship-table th{height:42px;background:#F6F7F8;border-bottom:1px solid var(--gv-line);text-align:left;padding:0 12px;font-size:9px;color:#747E88;font-weight:700;white-space:nowrap}
.gv-relationship-table th.num,.gv-relationship-table td.num{text-align:right}
.gv-relationship-table td{height:68px;border-bottom:1px solid var(--gv-line-soft);padding:0 12px;font-size:9.5px;color:#59636D;vertical-align:middle}
.gv-relationship-table tbody tr:last-child td{border-bottom:0}
.gv-relationship-table tbody tr:hover td{background:#F9FAFB}
.gv-analytics-client{display:flex;align-items:center;gap:9px}
.gv-analytics-client>span{width:32px;height:32px;border-radius:8px;background:#E7EAEC;display:grid;place-items:center;font-size:8.5px;color:#4A555E;font-weight:750}
.gv-analytics-client strong{display:block;font-size:10.5px;color:#3D444B}
.gv-analytics-client small{display:block;font-size:8.5px;color:#8A949D;margin-top:2px}
.gv-yoy{font-size:9px;font-weight:700}
.gv-yoy.up{color:#58705F}
.gv-yoy.down{color:#8A5858}
.gv-yoy.flat{color:#747E88}
.gv-last-date{display:block;font-size:9.5px;color:#4B555F}
.gv-relationship-table td:nth-child(6) small{display:block;font-size:8px;color:#9AA1A8;margin-top:2px}
.gv-relation-state{display:inline-flex;align-items:center;height:25px;border-radius:99px;padding:0 8px;font-size:8.5px;font-weight:680}
.gv-relation-state.strong{background:#EEF4F0;color:#506B5A}
.gv-relation-state.steady{background:#F1F2F3;color:#69737D}
.gv-relation-state.watch{background:#F5F1E9;color:#79684C}
.gv-relation-state.attention{background:#F6EEEE;color:#8A5858}
.gv-action-link{height:30px;border:0;border-radius:6px;background:transparent;color:#66717B;font-size:9px;cursor:pointer;padding:0 7px}
.gv-action-link:hover{background:#EEF1F3;color:#30363C}
.gv-action-link.important{background:#F7F1EE;color:#805E4B}
.gv-matrix-note{border-top:1px solid var(--gv-line);padding:10px 14px;font-size:8.5px;color:#8A949D}

.gv-analytics-bottom-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.gv-contribution-list,.gv-margin-intelligence-list,.gv-role-demand-list{padding:10px 18px 18px}
.gv-contribution-list>div{min-height:54px;display:grid;grid-template-columns:120px 1fr 48px;align-items:center;gap:10px}
.gv-contribution-list strong,.gv-margin-intelligence-list strong{display:block;font-size:9.5px;color:#4B555F}
.gv-contribution-list small,.gv-margin-intelligence-list small{display:block;font-size:8px;color:#8A949D;margin-top:2px}
.gv-contribution-list i{height:5px;border-radius:99px;background:#E7EAEC;overflow:hidden}
.gv-contribution-list i b{display:block;height:100%;background:#6E7B84;border-radius:inherit}
.gv-contribution-list em{font-style:normal;text-align:right;font-size:8.5px;color:#7A848E}

.gv-margin-intelligence-list>div{min-height:54px;border-bottom:1px solid var(--gv-line-soft);display:grid;grid-template-columns:1fr 50px 8px;align-items:center;gap:8px}
.gv-margin-intelligence-list>div:last-child{border-bottom:0}
.gv-margin-intelligence-list>div>b{font-size:10px;color:#4B555F;text-align:right}
.gv-margin-intelligence-list>div>i{width:6px;height:6px;border-radius:50%;background:#79858D}
.gv-margin-intelligence-list>div>i.high{background:#5D7565}
.gv-margin-intelligence-list>div>i.low{background:#9A6C57}

.gv-role-demand-list>div{min-height:50px;display:grid;grid-template-columns:95px 1fr 34px;align-items:center;gap:9px}
.gv-role-demand-list span{font-size:9px;color:#59636D}
.gv-role-demand-list i{height:5px;border-radius:99px;background:#E7EAEC;overflow:hidden}
.gv-role-demand-list i b{display:block;height:100%;background:#6E7B84;border-radius:inherit}
.gv-role-demand-list strong{text-align:right;font-size:9.5px;color:#4B555F}
.gv-role-demand-foot{border-top:1px solid var(--gv-line);padding:11px 16px;display:grid;grid-template-columns:7px 1fr;gap:8px;align-items:start}
.gv-role-demand-foot span{width:6px;height:6px;border-radius:50%;background:#8A6956;margin-top:4px}
.gv-role-demand-foot p{font-size:8.5px;color:#7A848E;line-height:1.55;margin:0}

/* Opportunity Drawer */
.gv-opportunity-drawer{width:min(470px,94vw)}
.gv-opportunity-status-card{padding-bottom:22px;border-bottom:1px solid var(--gv-line)}
.gv-opportunity-status-card>span,.gv-opportunity-section>span{display:block;font-size:8px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-opportunity-status-card>strong{display:block;font-size:15px;line-height:1.45;color:#30363C;margin-top:10px}
.gv-opportunity-status-card>p{font-size:10px;line-height:1.65;color:#69737D;margin:7px 0 0}
.gv-opportunity-kpis{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--gv-line)}
.gv-opportunity-kpis>div{min-height:82px;padding:15px 0;border-right:1px solid var(--gv-line-soft)}
.gv-opportunity-kpis>div:not(:first-child){padding-left:14px}
.gv-opportunity-kpis>div:last-child{border-right:0}
.gv-opportunity-kpis span{display:block;font-size:8px;color:#8A949D;letter-spacing:.08em}
.gv-opportunity-kpis strong{display:block;font-size:15px;color:#3D444B;margin-top:7px}
.gv-opportunity-kpis strong.down{color:#8A5858}
.gv-opportunity-kpis strong.up{color:#58705F}
.gv-opportunity-section{padding:20px 0;border-bottom:1px solid var(--gv-line)}
.gv-opportunity-history{margin-top:10px}
.gv-opportunity-history>div{min-height:48px;border-bottom:1px solid var(--gv-line-soft);display:flex;align-items:center;justify-content:space-between;gap:10px}
.gv-opportunity-history>div:last-child{border-bottom:0}
.gv-opportunity-history strong{font-size:9.5px;color:#4B555F}
.gv-opportunity-history small{font-size:8.5px;color:#8A949D}
.gv-opportunity-contact{margin-top:11px}
.gv-opportunity-contact span{display:block;font-size:11px;color:#3D444B;font-weight:680}
.gv-opportunity-contact strong{display:block;font-size:9px;color:#59636D;margin-top:3px}
.gv-opportunity-contact small{display:block;font-size:8.5px;color:#8A949D;margin-top:3px}
.gv-suggested-action{margin-top:11px;display:grid;grid-template-columns:8px 1fr;gap:9px}
.gv-suggested-action>i{width:6px;height:6px;border-radius:50%;background:#8A6956;margin-top:5px}
.gv-suggested-action strong{display:block;font-size:10.5px;color:#3D444B}
.gv-suggested-action p{font-size:9.5px;line-height:1.6;color:#7A848E;margin:4px 0 0}
.gv-opportunity-section textarea{width:100%;margin-top:10px;border:1px solid var(--gv-line-strong);border-radius:8px;background:#FCFDFE;padding:10px;resize:vertical;outline:0;font:inherit;font-size:10px;line-height:1.65}
.gv-opportunity-drawer-foot{margin-top:auto;min-height:72px;border-top:1px solid var(--gv-line);padding:12px 20px;display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#F9FAFB}
.gv-opportunity-drawer-foot a{text-decoration:none}

/* Executive Brief */
.gv-executive-preview-backdrop{align-items:flex-start;overflow:auto;padding:32px 20px}
.gv-executive-preview-shell{width:min(1040px,100%);margin:0 auto;background:#EEF0F2;border:1px solid #D3D8DC;border-radius:12px;overflow:hidden;box-shadow:0 26px 80px rgba(27,32,37,.16)}
.gv-executive-preview-toolbar{height:68px;background:#F8F9FA;border-bottom:1px solid var(--gv-line);display:flex;align-items:center;justify-content:space-between;padding:0 18px}
.gv-executive-preview-toolbar>div:first-child span{display:block;font-size:9px;letter-spacing:.12em;color:#8A949D;font-weight:720}
.gv-executive-preview-toolbar>div:first-child strong{display:block;font-size:13px;color:#3D444B;margin-top:3px}
.gv-executive-preview-toolbar>div:last-child{display:flex;align-items:center;gap:8px}

.gv-executive-document{width:min(800px,calc(100% - 40px));min-height:1120px;margin:34px auto;background:#FFF;box-shadow:0 12px 34px rgba(30,35,40,.08);padding:58px 62px 50px;color:#262A2E;font-family:"SUIT Variable","SUIT","Noto Sans KR",sans-serif}
.gv-executive-document>header{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #202428;padding-bottom:24px}
.gv-executive-document>header>div:first-child>span{display:block;font-size:16px;letter-spacing:.14em;font-weight:780}
.gv-executive-document>header small{display:block;font-size:9px;color:#787E84;margin-top:4px}
.gv-executive-document>header>div:last-child{text-align:right}
.gv-executive-document>header>div:last-child strong{display:block;font-size:20px;letter-spacing:.08em;font-weight:650}
.gv-executive-title{padding:44px 0 32px}
.gv-executive-title>span,.gv-executive-section>span,.gv-executive-actions>span{display:block;font-size:8.5px;letter-spacing:.14em;color:#7C8288;font-weight:720}
.gv-executive-title h2{margin:10px 0 0;font-size:26px;letter-spacing:-.03em;font-weight:650;line-height:1.24}
.gv-executive-title p{margin:8px 0 0;font-size:10.5px;color:#777D83}
.gv-executive-kpis{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #DADDE0;border-bottom:1px solid #DADDE0}
.gv-executive-kpis>div{min-height:90px;padding:18px 14px;border-right:1px solid #E5E7E9}
.gv-executive-kpis>div:first-child{padding-left:0}
.gv-executive-kpis>div:last-child{border-right:0}
.gv-executive-kpis span{display:block;font-size:8px;letter-spacing:.1em;color:#7C8288}
.gv-executive-kpis strong{display:block;font-size:16px;color:#2D3237;margin-top:11px}
.gv-executive-kpis small{display:block;font-size:8px;color:#7D8389;margin-top:3px}
.gv-executive-section{margin-top:38px}
.gv-executive-watch,.gv-executive-positive{margin-top:11px}
.gv-executive-watch>div,.gv-executive-positive>div{min-height:54px;border-bottom:1px solid #E3E5E7;display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:10px}
.gv-executive-watch strong,.gv-executive-positive strong{font-size:9.5px;color:#353A3F}
.gv-executive-watch small,.gv-executive-positive small{font-size:8.5px;color:#7D8389}
.gv-executive-watch em,.gv-executive-positive em{font-style:normal;font-size:9px;color:#626970}
.gv-executive-watch em{color:#8A5858}
.gv-executive-actions{margin-top:38px}
.gv-executive-actions>div{min-height:58px;border-bottom:1px solid #E3E5E7;display:grid;grid-template-columns:28px 1fr;align-items:center;gap:10px}
.gv-executive-actions b{font-size:8px;color:#8A9096}
.gv-executive-actions p{margin:0}
.gv-executive-actions strong{display:block;font-size:9.5px;color:#353A3F}
.gv-executive-actions small{display:block;font-size:8.5px;color:#7D8389;margin-top:2px}
.gv-executive-document>footer{margin-top:72px;border-top:1px solid #202428;padding-top:16px;display:flex;align-items:center;justify-content:space-between}
.gv-executive-document>footer span{font-size:9px;letter-spacing:.12em;font-weight:740}
.gv-executive-document>footer small{font-size:8.5px;color:#777D83}

@media (max-width:1199px){
  .gv-analytics-top-grid{grid-template-columns:1fr}
  .gv-analytics-bottom-grid{grid-template-columns:1fr 1fr}
  .gv-role-demand{grid-column:1/-1}
}
@media (max-width:959px){
  .gv-analytics-metrics{grid-template-columns:1fr 1fr}
  .gv-analytics-metrics>div:nth-child(2){border-right:0}
  .gv-analytics-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
  .gv-analytics-periodbar{flex-wrap:wrap;padding:8px 0}
  .gv-analytics-asof{margin-left:0}
  .gv-relationship-matrix-head{align-items:flex-start;flex-direction:column}
  .gv-relationship-filters{width:100%;overflow:auto}
}
@media (max-width:767px){
  .gv-analytics-hero{align-items:flex-start;flex-direction:column}
  .gv-analytics-hero h1{font-size:28px}
  .gv-analytics-hero-actions{width:100%}
  .gv-analytics-hero-actions .gv-btn{flex:1}
  .gv-analytics-periods{width:100%;overflow:auto}
  .gv-analytics-metrics{grid-template-columns:1fr}
  .gv-analytics-metrics>div{border-right:0!important;border-bottom:1px solid var(--gv-line-soft)}
  .gv-analytics-metrics>div:last-child{border-bottom:0}
  .gv-momentum-summary{gap:18px}
  .gv-momentum-chart-wrap{height:260px}
  .gv-momentum-chart{height:210px}
  .gv-analytics-bottom-grid{grid-template-columns:1fr}
  .gv-role-demand{grid-column:auto}
  .gv-executive-document{width:calc(100% - 18px);padding:34px 26px;min-height:900px}
  .gv-executive-kpis{grid-template-columns:1fr 1fr}
  .gv-executive-watch>div,.gv-executive-positive>div{grid-template-columns:1fr auto}
  .gv-executive-watch small,.gv-executive-positive small{grid-column:1}
}
@media print{
  body.gv-print-executive *{visibility:hidden!important}
  body.gv-print-executive #gvExecutiveDocument,
  body.gv-print-executive #gvExecutiveDocument *{visibility:visible!important}
  body.gv-print-executive #gvExecutiveDocument{position:absolute;left:0;top:0;width:100%;min-height:auto;margin:0;box-shadow:none;padding:20mm 18mm}
}

@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}


/* =========================================================
   v0.16 — Activity / Audit Trail 2.0
   ========================================================= */
.gv-activity-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:32px;
  margin:8px 0 28px;
}
.gv-activity-hero h1{
  margin:0;color:#20252A;font-size:var(--gv-display);line-height:1.16;
  letter-spacing:-.04em;font-weight:665;
}
.gv-activity-hero p{margin:10px 0 0;font-size:14px;color:#626D77;max-width:780px}
.gv-activity-hero-actions{display:flex;gap:8px;flex:0 0 auto}

.gv-activity-metrics{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  background:var(--gv-surface);border:1px solid var(--gv-line);
  border-radius:var(--gv-radius);overflow:hidden;margin-bottom:16px;
}
.gv-activity-metrics>div{
  min-height:116px;padding:20px 22px;border-right:1px solid var(--gv-line-soft);
  display:flex;flex-direction:column;
}
.gv-activity-metrics>div:last-child{border-right:0}
.gv-activity-metrics span{font-size:9.5px;letter-spacing:.12em;color:#8A939C;font-weight:760}
.gv-activity-metrics strong{
  font-size:28px;line-height:1;color:#2C3238;font-weight:650;letter-spacing:-.035em;margin-top:12px;
}
.gv-activity-metrics small{font-size:10.5px;color:#727C85;margin-top:auto;padding-top:10px}

.gv-activity-commandbar{
  min-height:64px;background:var(--gv-surface);border:1px solid var(--gv-line);
  border-radius:var(--gv-radius);display:flex;align-items:center;gap:12px;
  padding:10px 12px;margin-bottom:16px;
}
.gv-activity-search{
  flex:1 1 360px;min-width:220px;height:42px;border:1px solid var(--gv-line);
  background:#FAFBFC;border-radius:7px;display:flex;align-items:center;gap:9px;padding:0 12px;
}
.gv-activity-search svg{width:16px;height:16px;color:#7A848E;flex:0 0 auto}
.gv-activity-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;font-size:12.5px}
.gv-activity-search input::placeholder{color:#929BA4}
.gv-activity-scope{display:flex;align-items:center;background:#F3F5F6;border-radius:7px;padding:3px}
.gv-activity-scope button{
  height:34px;border:0;background:transparent;border-radius:5px;padding:0 10px;
  font-size:10.5px;color:#727D86;font-weight:650;cursor:pointer;
}
.gv-activity-scope button.active{background:#FFF;color:#30363C;border:1px solid #DCE1E4}
.gv-activity-selects{display:flex;gap:8px;align-items:center}
.gv-activity-selects label{
  height:42px;display:flex;align-items:center;gap:7px;border-left:1px solid var(--gv-line-soft);
  padding-left:10px;
}
.gv-activity-selects label>span{font-size:8.5px;letter-spacing:.1em;color:#959DA5;font-weight:760}
.gv-activity-selects select{
  height:34px;border:0;background:transparent;font-size:10.5px;color:#5B6570;outline:0;cursor:pointer;
}

.gv-activity-layout{
  display:grid;grid-template-columns:minmax(0,2.05fr) minmax(280px,.75fr);
  gap:16px;align-items:start;
}
.gv-activity-stream{min-width:0}
.gv-activity-head-meta{display:flex;align-items:baseline;gap:4px}
.gv-activity-head-meta span{font-size:18px;color:#3B4249;font-weight:650}
.gv-activity-head-meta small{font-size:9px;letter-spacing:.08em;color:#8B949D}

.gv-audit-group{padding:0 18px 6px}
.gv-audit-day{
  min-height:48px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--gv-line-soft);
  padding:0 8px;
}
.gv-audit-day span{font-size:11px;color:#3E464E;font-weight:720}
.gv-audit-day strong{font-size:9.5px;color:#9199A1;font-weight:600}

.gv-audit-item{
  width:100%;min-height:82px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;
  display:grid;grid-template-columns:58px 22px minmax(0,1fr) 100px;
  align-items:center;text-align:left;padding:10px 8px;cursor:pointer;color:inherit;
  transition:background .12s;
}
.gv-audit-item:hover{background:#F7F8F9}
.gv-audit-item[hidden]{display:none}
.gv-audit-time{font-size:10px;color:#78828B;align-self:start;padding-top:12px}
.gv-audit-marker{height:100%;position:relative;display:flex;justify-content:center}
.gv-audit-marker:after{
  content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:#E4E7E9;transform:translateX(-.5px);
}
.gv-audit-marker i{
  position:relative;z-index:1;width:9px;height:9px;border-radius:50%;
  border:2px solid #FDFDFD;background:#8A949D;margin-top:12px;
}
.gv-audit-item.important .gv-audit-marker i{background:#895C5C}
.gv-audit-item.system .gv-audit-marker i{background:#687493}
.gv-audit-main{min-width:0;padding-left:8px}
.gv-audit-line{display:flex;align-items:center;gap:7px;min-width:0;white-space:nowrap}
.gv-audit-line strong{font-size:10.5px;color:#68727C;font-weight:690}
.gv-audit-line em{
  font-style:normal;font-size:8.5px;letter-spacing:.065em;color:#808A93;
  background:#F1F3F4;border-radius:4px;padding:3px 5px;
}
.gv-audit-line b{
  font-size:12.5px;color:#31373D;font-weight:670;overflow:hidden;text-overflow:ellipsis;
}
.gv-audit-main>small{display:block;font-size:10.5px;color:#7B858E;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gv-audit-side{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.gv-audit-side>small{font-size:9px;color:#9AA1A8}
.gv-audit-tag{
  min-width:54px;height:23px;border-radius:999px;border:1px solid #DCE1E4;background:#F7F8F9;
  display:inline-flex;align-items:center;justify-content:center;padding:0 8px;
  font-size:8px;letter-spacing:.08em;color:#69737D;font-weight:760;
}
.gv-audit-tag.critical{border-color:#E5D5D5;background:#F8F0F0;color:#835959}
.gv-audit-tag.system{border-color:#D7DDE8;background:#F1F3F8;color:#596889}

.gv-activity-aside{display:grid;gap:16px;position:sticky;top:calc(var(--gv-topbar) + 16px)}
.gv-audit-principles{padding:8px 20px 16px}
.gv-audit-principles>div{
  min-height:78px;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;
  border-bottom:1px solid var(--gv-line-soft);
}
.gv-audit-principles>div:last-child{border-bottom:0}
.gv-audit-principles>div>span{
  width:24px;height:24px;border-radius:50%;border:1px solid var(--gv-line);
  display:grid;place-items:center;font-size:8.5px;color:#7E8790;font-weight:760;
}
.gv-audit-principles p{margin:0}
.gv-audit-principles strong{display:block;font-size:11px;color:#3C434A}
.gv-audit-principles small{display:block;font-size:9.5px;color:#7C858E;line-height:1.55;margin-top:3px}
.gv-activity-watch-list{padding:6px 14px 12px}
.gv-activity-watch-list button{
  width:100%;min-height:64px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;
  display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;text-align:left;cursor:pointer;padding:8px 6px;
}
.gv-activity-watch-list button:last-child{border-bottom:0}
.gv-activity-watch-list button:hover{background:#F7F8F9}
.gv-activity-watch-list>button>span{font-size:9.5px;color:#8B949C}
.gv-activity-watch-list strong{display:block;font-size:10.5px;color:#41484F}
.gv-activity-watch-list small{display:block;font-size:9px;color:#8A939C;margin-top:3px}

.gv-activity-empty{min-height:260px;display:grid;place-items:center;align-content:center;text-align:center;padding:40px}
.gv-activity-empty[hidden]{display:none}
.gv-activity-empty span{
  width:42px;height:42px;border-radius:50%;border:1px solid var(--gv-line);
  display:grid;place-items:center;font-size:11px;color:#8C959D;margin-bottom:12px;
}
.gv-activity-empty strong{font-size:12px;color:#464D54}
.gv-activity-empty small{font-size:10px;color:#8A939C;margin-top:4px}

.gv-audit-backdrop{
  position:fixed;inset:0;background:rgba(26,30,34,.22);backdrop-filter:blur(2px);
  z-index:90;opacity:0;pointer-events:none;transition:opacity .16s;
}
.gv-audit-backdrop.open{opacity:1;pointer-events:auto}
.gv-audit-drawer{
  position:fixed;top:0;right:0;bottom:0;width:min(620px,94vw);z-index:91;
  background:#FCFCFD;border-left:1px solid var(--gv-line);
  transform:translateX(100%);transition:transform .18s ease;
  display:grid;grid-template-rows:auto minmax(0,1fr) auto;
}
.gv-audit-drawer.open{transform:translateX(0)}
.gv-audit-drawer-head{
  min-height:112px;padding:22px 24px;border-bottom:1px solid var(--gv-line);
  display:flex;justify-content:space-between;gap:16px;align-items:flex-start;
}
.gv-audit-drawer-head>div>span{display:block;font-size:8.5px;letter-spacing:.12em;color:#9098A0;font-weight:760}
.gv-audit-drawer-head h2{margin:6px 0 0;font-size:21px;line-height:1.2;color:#2C3238;letter-spacing:-.025em}
.gv-audit-drawer-head p{margin:7px 0 0;font-size:10.5px;color:#7C858E}
.gv-audit-drawer-head .gv-icon-btn{font-size:21px;font-weight:300}
.gv-audit-drawer-body{overflow:auto;padding:20px 24px 28px}

.gv-audit-context-card{
  display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--gv-line);border-radius:8px;overflow:hidden;
  background:#F9FAFB;
}
.gv-audit-context-card>div{min-height:82px;padding:16px;border-right:1px solid var(--gv-line-soft);border-bottom:1px solid var(--gv-line-soft)}
.gv-audit-context-card>div:nth-child(2n){border-right:0}
.gv-audit-context-card>div:nth-last-child(-n+2){border-bottom:0}
.gv-audit-context-card span,.gv-audit-detail-title span{
  display:block;font-size:8px;letter-spacing:.12em;color:#979FA7;font-weight:760;
}
.gv-audit-context-card strong{display:block;font-size:11px;color:#3D444B;margin-top:7px;font-weight:680;line-height:1.5}

.gv-audit-detail-section{margin-top:26px}
.gv-audit-detail-title{margin-bottom:10px}
.gv-audit-detail-title strong{display:block;font-size:12px;color:#3A4148;margin-top:4px}
.gv-audit-diff{border-top:1px solid var(--gv-line);border-bottom:1px solid var(--gv-line)}
.gv-audit-diff>div{
  min-height:58px;display:grid;grid-template-columns:130px minmax(0,1fr) 24px minmax(0,1fr);
  align-items:center;border-bottom:1px solid var(--gv-line-soft);gap:8px;
}
.gv-audit-diff>div:last-child{border-bottom:0}
.gv-audit-diff>div>span{font-size:9.5px;color:#7E8790}
.gv-audit-diff>div>div{
  min-width:0;padding:9px 10px;border-radius:5px;font-size:10.5px;white-space:normal;overflow-wrap:anywhere;
}
.gv-audit-diff .old{background:#F4F5F6;color:#757E87;text-decoration:none}
.gv-audit-diff .new{background:#EEF3F0;color:#4E6557;font-weight:650}
.gv-audit-diff i{font-style:normal;text-align:center;color:#9AA2AA;font-size:11px}
.gv-audit-context-copy{
  border:1px solid var(--gv-line-soft);border-radius:7px;background:#F8F9FA;
  padding:14px 15px;font-size:11px;line-height:1.72;color:#5B6570;
}
.gv-audit-meta-grid{margin:0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--gv-line)}
.gv-audit-meta-grid>div{min-height:58px;border-bottom:1px solid var(--gv-line-soft);padding:10px 0}
.gv-audit-meta-grid>div:nth-child(odd){padding-right:16px}
.gv-audit-meta-grid>div:nth-child(even){padding-left:16px;border-left:1px solid var(--gv-line-soft)}
.gv-audit-meta-grid dt{font-size:8.5px;letter-spacing:.08em;color:#959DA5}
.gv-audit-meta-grid dd{margin:5px 0 0;font-size:10.5px;color:#4A535C;font-weight:620}

.gv-audit-drawer-foot{
  min-height:76px;border-top:1px solid var(--gv-line);background:#F9FAFB;
  padding:12px 20px;display:flex;align-items:center;justify-content:flex-end;gap:8px;
}
.gv-audit-drawer-foot>span{margin-right:auto;max-width:250px;font-size:9.5px;line-height:1.45;color:#7E8790}
.gv-btn-disabled,.gv-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}

.gv-inline-activity-link{
  display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 12px;
  border:1px solid var(--gv-line-strong);border-radius:7px;background:#FBFCFD;
  color:#5A646E;text-decoration:none;font-size:11px;font-weight:650;
}
.gv-inline-activity-link:hover{background:#FFF;border-color:#C5CBD1;color:#30363C}

/* Project Activity Timeline */
.gv-project-activity-panel{grid-column:span 12}
.gv-project-activity-toolbar{display:flex;align-items:center;gap:8px}
.gv-project-activity-timeline{padding:4px 20px 14px}
.gv-project-activity-row{
  min-height:74px;display:grid;grid-template-columns:64px 18px minmax(0,1fr) auto;
  align-items:center;border-bottom:1px solid var(--gv-line-soft);
}
.gv-project-activity-row:last-child{border-bottom:0}
.gv-project-activity-row>time{font-size:9.5px;color:#8A939C}
.gv-project-activity-row>i{
  width:8px;height:8px;border-radius:50%;background:#84909A;position:relative;
}
.gv-project-activity-row>i:after{
  content:"";position:absolute;top:8px;left:3.5px;height:66px;width:1px;background:#E3E6E8;
}
.gv-project-activity-row:last-child>i:after{display:none}
.gv-project-activity-row>div{padding-left:10px;min-width:0}
.gv-project-activity-row strong{display:block;font-size:11.5px;color:#3B4249}
.gv-project-activity-row small{display:block;font-size:9.5px;color:#7F8891;margin-top:3px}
.gv-project-activity-row>span{font-size:9px;color:#89929B;white-space:nowrap}

@media (max-width:1280px){
  .gv-activity-commandbar{flex-wrap:wrap}
  .gv-activity-search{flex:1 1 420px}
  .gv-activity-selects{margin-left:auto}
  .gv-activity-layout{grid-template-columns:minmax(0,1.65fr) minmax(260px,.72fr)}
  .gv-audit-item{grid-template-columns:52px 20px minmax(0,1fr) 88px}
}
@media (max-width:1040px){
  .gv-activity-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gv-activity-metrics>div:nth-child(2){border-right:0}
  .gv-activity-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
  .gv-activity-layout{grid-template-columns:1fr}
  .gv-activity-aside{position:static;grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
  .gv-activity-hero{align-items:stretch;flex-direction:column;margin-top:0}
  .gv-activity-hero h1{font-size:30px}
  .gv-activity-hero-actions{display:grid;grid-template-columns:1fr 1fr}
  .gv-activity-metrics{grid-template-columns:1fr 1fr}
  .gv-activity-metrics>div{min-height:100px;padding:16px}
  .gv-activity-commandbar{display:block;padding:10px}
  .gv-activity-search{width:100%;margin-bottom:8px}
  .gv-activity-scope{overflow:auto;margin-bottom:8px}
  .gv-activity-scope button{flex:1 0 auto}
  .gv-activity-selects{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;border-top:1px solid var(--gv-line-soft)}
  .gv-activity-selects label{height:48px;border-left:0;padding:5px 8px;display:flex;flex-direction:column;align-items:flex-start;gap:0}
  .gv-activity-selects select{width:100%;height:25px}
  .gv-audit-group{padding:0 10px 4px}
  .gv-audit-item{
    grid-template-columns:44px 16px minmax(0,1fr);min-height:84px;padding:8px 4px;
  }
  .gv-audit-side{display:none}
  .gv-audit-line{gap:5px;flex-wrap:wrap;white-space:normal}
  .gv-audit-line b{width:100%;font-size:12px}
  .gv-audit-main>small{white-space:normal;line-height:1.45}
  .gv-activity-aside{grid-template-columns:1fr}
  .gv-audit-drawer{width:100vw}
  .gv-audit-drawer-head{min-height:104px;padding:18px}
  .gv-audit-drawer-body{padding:16px 18px 24px}
  .gv-audit-context-card{grid-template-columns:1fr}
  .gv-audit-context-card>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)!important}
  .gv-audit-context-card>div:last-child{border-bottom:0!important}
  .gv-audit-diff>div{grid-template-columns:1fr 20px 1fr;padding:10px 0}
  .gv-audit-diff>div>span{grid-column:1/-1;margin-bottom:2px}
  .gv-audit-drawer-foot{flex-wrap:wrap;padding:10px 14px}
  .gv-audit-drawer-foot>span{width:100%;max-width:none;margin:0 0 4px}
  .gv-audit-drawer-foot .gv-btn{flex:1}
  .gv-project-activity-row{grid-template-columns:48px 14px minmax(0,1fr)}
  .gv-project-activity-row>span{display:none}
}

/* =======================================================
   v0.17 — Users / Roles / Permissions
   ======================================================= */
.gv-access-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:32px;
  margin:8px 0 26px;
}
.gv-access-hero h1{
  margin:0;color:#20252A;font-size:var(--gv-display);font-weight:665;
  line-height:1.16;letter-spacing:-.04em;
}
.gv-access-hero p{margin:10px 0 0;max-width:820px;font-size:14px;color:#626D77}
.gv-access-hero-actions{display:flex;gap:8px;flex:0 0 auto}

.gv-access-metrics{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid var(--gv-line);border-bottom:1px solid var(--gv-line);
  margin-bottom:22px;
}
.gv-access-metrics>div{min-height:92px;padding:15px 18px 14px;border-right:1px solid var(--gv-line-soft);display:flex;flex-direction:column}
.gv-access-metrics>div:first-child{padding-left:0}.gv-access-metrics>div:last-child{border-right:0}
.gv-access-metrics span{font-size:9px;letter-spacing:.12em;color:#8A939C;font-weight:760}
.gv-access-metrics strong{font-size:27px;line-height:1.1;color:#343A40;font-weight:645;margin-top:7px}
.gv-access-metrics small{font-size:10.5px;color:#727C85;margin-top:auto;padding-top:8px}

.gv-access-tabs{min-width:0}
.gv-access-tablist{
  display:flex;align-items:center;gap:5px;margin-bottom:16px;
  border-bottom:1px solid var(--gv-line);padding:0 2px;
}
.gv-access-tablist button{
  height:44px;padding:0 12px;border:0;background:transparent;cursor:pointer;
  color:#717B85;font-size:12px;font-weight:650;border-bottom:2px solid transparent;
  display:flex;align-items:center;gap:7px;margin-bottom:-1px;
}
.gv-access-tablist button:hover{color:#333A41}
.gv-access-tablist button.active{color:#2E343A;border-bottom-color:#4B535B}
.gv-access-tablist button span{
  min-width:20px;height:19px;padding:0 6px;border-radius:10px;background:#ECEFF1;
  color:#6C7680;font-size:9px;display:grid;place-items:center;
}
.gv-access-tabpanel{display:none}.gv-access-tabpanel.active{display:block}

.gv-access-users-layout,.gv-login-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}
.gv-access-user-panel,.gv-login-history-panel{min-width:0;overflow:hidden}
.gv-access-side{display:grid;gap:16px;position:sticky;top:calc(var(--gv-topbar) + 16px)}

.gv-access-toolbar{
  min-height:64px;padding:10px 16px;border-bottom:1px solid var(--gv-line-soft);
  display:flex;align-items:center;gap:10px;
}
.gv-access-search{
  min-width:240px;max-width:380px;flex:1;height:40px;border:1px solid var(--gv-line);
  background:#FAFBFC;border-radius:7px;padding:0 11px;display:flex;align-items:center;gap:8px;
}
.gv-access-search svg{width:16px;height:16px;color:#7D8790;flex:0 0 auto}
.gv-access-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;font-size:12px}
.gv-access-search input::placeholder{color:#949CA4}
.gv-access-filter{margin-left:auto;display:flex;align-items:center;background:#F3F5F6;border-radius:7px;padding:3px}
.gv-access-filter button{height:32px;border:1px solid transparent;border-radius:5px;padding:0 10px;background:transparent;font-size:10.5px;color:#76808A;cursor:pointer}
.gv-access-filter button.active{background:#FFF;color:#343A40;border-color:#DDE1E4;font-weight:680}

.gv-access-user-table-wrap,.gv-login-table-wrap,.gv-permission-matrix-wrap{overflow:auto}
.gv-access-user-table,.gv-login-table,.gv-permission-matrix{width:100%;border-collapse:collapse;min-width:920px}
.gv-access-user-table th,.gv-login-table th,.gv-permission-matrix thead th{
  height:38px;padding:0 14px;text-align:left;border-bottom:1px solid var(--gv-line-soft);
  background:#F8F9FA;color:#8B949D;font-size:8.5px;letter-spacing:.105em;font-weight:770;white-space:nowrap;
}
.gv-access-user-table td,.gv-login-table td{
  min-height:64px;padding:12px 14px;border-bottom:1px solid var(--gv-line-soft);vertical-align:middle;font-size:11px;color:#59636C;
}
.gv-access-user-table tbody tr:last-child td,.gv-login-table tbody tr:last-child td{border-bottom:0}
.gv-access-user-table tbody tr:hover,.gv-login-table tbody tr:hover{background:#FAFBFC}
.gv-access-user-table td>strong,.gv-login-table td>strong{display:block;font-size:11.5px;color:#3C434A;font-weight:670}
.gv-access-user-table td>small,.gv-login-table td>small{display:block;font-size:9.5px;color:#89929B;margin-top:3px}

.gv-access-person{display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:0;cursor:pointer;text-align:left;color:inherit}
.gv-access-person>span:last-child{display:flex;flex-direction:column;min-width:0}
.gv-access-person strong{font-size:11.5px;color:#333A41;font-weight:690;white-space:nowrap}
.gv-access-person small{font-size:9.5px;color:#838D96;margin-top:2px;white-space:nowrap}
.gv-access-avatar{
  width:34px;height:34px;border-radius:50%;background:#E4E8EB;color:#46505A;
  display:grid;place-items:center;font-size:11px;font-weight:760;flex:0 0 auto;
}
.gv-access-avatar.muted{background:#F0F2F3;color:#89929A}
.gv-access-avatar.large{width:48px;height:48px;font-size:14px}

.gv-role-badge{
  display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:5px;
  border:1px solid #DBDFE2;background:#F6F7F8;color:#5C6670;font-size:9px;font-weight:720;letter-spacing:.02em;white-space:nowrap;
}
.gv-role-badge.owner{background:#EEEFF3;border-color:#D8DBE2;color:#424A58}
.gv-role-badge.director{background:#EFF2F8;border-color:#D9DFEC;color:#56638A}
.gv-role-badge.manager{background:#EEF4F0;border-color:#D9E4DD;color:#506B5A}
.gv-role-badge.coordinator{background:#F5F1E9;border-color:#E7DFCF;color:#79684C}
.gv-role-badge.finance{background:#F3F0F5;border-color:#E2DCE5;color:#6E5E76}

.gv-security-state{display:inline-flex;align-items:center;gap:6px;font-size:10px;white-space:nowrap}
.gv-security-state i{width:6px;height:6px;border-radius:50%;background:#8C959E}
.gv-security-state.good{color:#546E5C}.gv-security-state.good i{background:#617B69}
.gv-security-state.watch{color:#806A49}.gv-security-state.watch i{background:#8C734D}
.gv-security-state.neutral{color:#858E96}
.gv-account-state{display:inline-flex;align-items:center;height:23px;padding:0 7px;border-radius:5px;font-size:9px;font-weight:700;white-space:nowrap}
.gv-account-state.active{background:#EEF4F0;color:#506B5A}
.gv-account-state.invited{background:#F5F1E9;color:#79684C}
.gv-account-state.disabled{background:#F1F2F3;color:#7E878F}
.gv-row-more{width:30px;height:30px;border:0;background:transparent;border-radius:6px;color:#8D959D;cursor:pointer}
.gv-row-more:hover{background:#EFF1F2;color:#4E5760}
.gv-access-empty{padding:44px 20px;text-align:center}.gv-access-empty strong{display:block;font-size:12px;color:#4A525A}.gv-access-empty small{display:block;font-size:10px;color:#8A939C;margin-top:4px}

.gv-sensitive-list{padding:4px 18px 12px}
.gv-sensitive-list>div{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:start;padding:14px 0;border-bottom:1px solid var(--gv-line-soft)}
.gv-sensitive-list>div:last-child{border-bottom:0}
.gv-sensitive-index{font-size:9px;color:#9AA1A8;font-weight:690;padding-top:1px}
.gv-sensitive-list p{margin:0}.gv-sensitive-list p strong{display:block;font-size:11px;color:#3E454C}.gv-sensitive-list p small{display:block;font-size:9.5px;color:#7D8790;margin-top:3px;line-height:1.5}
.gv-sensitive-list em{font-style:normal;font-size:7.5px;letter-spacing:.09em;color:#8B7373;border:1px solid #E7DCDC;background:#F8F3F3;border-radius:4px;padding:3px 5px;white-space:nowrap}

.gv-permission-test{padding:16px 18px 10px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gv-permission-test label{display:flex;flex-direction:column;gap:5px}.gv-permission-test label span{font-size:8px;letter-spacing:.11em;color:#939BA3;font-weight:760}
.gv-permission-test select{height:38px;border:1px solid var(--gv-line);border-radius:6px;background:#FAFBFC;padding:0 9px;font-size:10.5px}
.gv-permission-test .gv-btn{grid-column:1/-1;width:100%;justify-content:center}
.gv-permission-result{margin:4px 18px 18px;padding:13px;border:1px solid var(--gv-line);border-radius:7px;background:#F8F9FA;display:flex;gap:10px;align-items:flex-start}
.gv-permission-symbol{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#ECEFF1;color:#747E87;font-size:11px;font-weight:760;flex:0 0 auto}
.gv-permission-result strong{display:block;font-size:10.5px;color:#444C54}.gv-permission-result small{display:block;font-size:9.5px;color:#7C868F;line-height:1.5;margin-top:3px}
.gv-permission-result.allow{background:#F2F6F3;border-color:#DCE6DF}.gv-permission-result.allow .gv-permission-symbol{background:#E4EEE7;color:#506B5A}
.gv-permission-result.review{background:#F8F5EF;border-color:#E8E0D1}.gv-permission-result.review .gv-permission-symbol{background:#F0E8D9;color:#79684C}
.gv-permission-result.deny{background:#F8F1F1;border-color:#E8DADA}.gv-permission-result.deny .gv-permission-symbol{background:#F0E1E1;color:#965454}

.gv-role-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;margin-bottom:16px}
.gv-role-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:16px 18px 20px;gap:10px}
.gv-role-cards>div{border-right:1px solid var(--gv-line-soft);padding:3px 12px 3px 0;min-width:0}.gv-role-cards>div:last-child{border-right:0}
.gv-role-cards>div>strong{display:block;font-size:11px;color:#3E454C;margin-top:10px}.gv-role-cards>div>small{display:block;font-size:9.5px;color:#7D8790;margin-top:3px;line-height:1.45}
.gv-role-rule-list{padding:4px 18px 12px}.gv-role-rule-list>div{display:grid;grid-template-columns:24px 1fr;gap:10px;padding:13px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-role-rule-list>div:last-child{border-bottom:0}
.gv-role-rule-list>div>span{font-size:9px;color:#969EA6}.gv-role-rule-list p{margin:0}.gv-role-rule-list strong{display:block;font-size:10.5px;color:#41484F}.gv-role-rule-list small{display:block;font-size:9.5px;color:#7D8790;margin-top:3px}

.gv-permission-matrix-panel{overflow:hidden;margin-bottom:16px}
.gv-permission-legend{display:flex;align-items:center;gap:12px}.gv-permission-legend span{display:flex;align-items:center;gap:5px;font-size:9px;color:#808A93}.gv-permission-legend i{width:6px;height:6px;border-radius:50%;background:#8A939C}.gv-permission-legend i.allow{background:#617B69}.gv-permission-legend i.review{background:#8C734D}.gv-permission-legend i.deny{background:#A27474}
.gv-permission-matrix{min-width:1120px}
.gv-permission-matrix th,.gv-permission-matrix td{border-bottom:1px solid var(--gv-line-soft);border-right:1px solid var(--gv-line-soft);text-align:center;height:55px;padding:7px 8px}
.gv-permission-matrix th:first-child{position:sticky;left:0;z-index:2;background:#FAFBFC;text-align:left;min-width:130px}.gv-permission-matrix thead th:first-child{z-index:3;background:#F8F9FA}
.gv-permission-matrix td:last-child,.gv-permission-matrix th:last-child{border-right:0}.gv-permission-matrix tbody tr:last-child th,.gv-permission-matrix tbody tr:last-child td{border-bottom:0}
.gv-permission-cell{width:100%;height:36px;border:1px solid transparent;background:transparent;border-radius:6px;display:flex;align-items:center;justify-content:center;gap:6px;color:#747D86;font-size:9px;cursor:default}
.gv-permission-cell i{width:7px;height:7px;border-radius:50%;background:#8E969E}.gv-permission-cell.allow{color:#526B5A}.gv-permission-cell.allow i{background:#617B69}.gv-permission-cell.review{color:#79684C}.gv-permission-cell.review i{background:#8C734D}.gv-permission-cell.deny{color:#895F5F}.gv-permission-cell.deny i{background:#A27474}
.gv-permission-matrix.editing .gv-permission-cell:not(:disabled){cursor:pointer;border-color:#E0E3E6;background:#FBFCFC}.gv-permission-matrix.editing .gv-permission-cell:not(:disabled):hover{background:#F1F3F5;border-color:#CED4D9}
.gv-permission-editbar{min-height:58px;border-top:1px solid var(--gv-line);background:#F8F9FA;padding:9px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px}.gv-permission-editbar[hidden]{display:none}
.gv-permission-editbar>span{font-size:10px;color:#717B84}.gv-permission-editbar>span strong{color:#3E454C}.gv-permission-editbar>div{display:flex;gap:7px;flex:0 0 auto}

.gv-access-protected-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:16px}
.gv-protected-actions{display:grid;grid-template-columns:1fr 1fr;padding:10px 18px 18px;gap:0}
.gv-protected-actions>div{padding:14px 16px 14px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-protected-actions>div:nth-child(odd){border-right:1px solid var(--gv-line-soft)}.gv-protected-actions>div:nth-child(even){padding-left:16px}.gv-protected-actions>div:nth-last-child(-n+2){border-bottom:0}
.gv-protected-actions span{font-size:8px;letter-spacing:.1em;color:#929AA2;font-weight:760}.gv-protected-actions strong{display:block;font-size:11px;color:#3D444B;margin-top:5px}.gv-protected-actions small{display:block;font-size:9.5px;color:#7C868F;line-height:1.55;margin-top:3px}.gv-protected-actions em{display:inline-block;font-style:normal;font-size:8.5px;color:#68727C;background:#F2F4F5;border-radius:4px;padding:3px 6px;margin-top:8px}
.gv-denied-preview{padding:20px 20px 22px;display:grid;grid-template-columns:34px 1fr;gap:10px 12px;align-items:start}.gv-denied-lock{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#F3E6E6;color:#965454;font-size:14px;font-weight:690}.gv-denied-preview strong{display:block;font-size:11.5px;color:#40474E}.gv-denied-preview p{margin:5px 0 0;font-size:10px;color:#707A84;line-height:1.6}.gv-denied-preview p b{color:#505860;font-weight:690}.gv-denied-preview .gv-btn{grid-column:2;justify-self:start;margin-top:3px}

.gv-login-table{min-width:980px}.gv-login-table tr.watch{background:#FBF9F4}.gv-login-table tr.failed{background:#FBF6F6}
.gv-login-table td span:not(.gv-session-state){font-size:10px;color:#68727C}
.gv-session-state{display:inline-flex;height:22px;padding:0 7px;border-radius:4px;align-items:center;font-size:8px;font-weight:740;letter-spacing:.05em}.gv-session-state.current{background:#EFF2F8;color:#596889}.gv-session-state.active{background:#EEF4F0;color:#506B5A}.gv-session-state.watch{background:#F5F1E9;color:#79684C}.gv-session-state.ended{background:#F1F2F3;color:#7F8890}.gv-session-state.denied{background:#F8EFEF;color:#965454}
.gv-session-action{height:30px;padding:0 8px;border:1px solid var(--gv-line);background:#FAFBFC;border-radius:5px;font-size:9px;color:#68727C;cursor:pointer;white-space:nowrap}.gv-session-action:hover:not(:disabled){background:#F0F2F4;color:#343B42}.gv-session-action:disabled{cursor:default;color:#9AA1A8;background:#F7F8F9}
.gv-session-policy{margin:0;padding:7px 18px 14px}.gv-session-policy>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-session-policy>div:last-child{border-bottom:0}.gv-session-policy dt{font-size:10px;color:#7B858E}.gv-session-policy dd{margin:0;font-size:10.5px;color:#41484F;font-weight:680}
.gv-login-note{padding:18px}.gv-login-note>span{font-size:8px;letter-spacing:.12em;color:#8F98A0;font-weight:760}.gv-login-note>strong{display:block;font-size:11.5px;color:#424950;line-height:1.5;margin-top:7px}.gv-login-note>p{margin:7px 0 0;font-size:9.5px;color:#79838C;line-height:1.65}

.gv-access-backdrop{display:none;position:fixed;inset:0;z-index:104;background:rgba(33,38,43,.28)}.gv-access-backdrop.open{display:block}
.gv-access-drawer{position:fixed;z-index:105;right:0;top:0;bottom:0;width:min(520px,100vw);background:#FCFCFD;border-left:1px solid var(--gv-line);transform:translateX(101%);transition:transform .18s ease;display:flex;flex-direction:column}.gv-access-drawer.open{transform:translateX(0)}
.gv-access-drawer-head{min-height:92px;padding:20px 22px;border-bottom:1px solid var(--gv-line);display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.gv-access-drawer-head>div>span{display:block;font-size:8px;letter-spacing:.12em;color:#9099A1;font-weight:760}.gv-access-drawer-head h2{margin:3px 0 0;font-size:20px;color:#30363C;font-weight:660;letter-spacing:-.025em}.gv-access-drawer-head p{margin:3px 0 0;font-size:10px;color:#7C868F}
.gv-access-drawer-body{padding:20px 22px;overflow:auto;flex:1}.gv-access-drawer-foot{min-height:68px;border-top:1px solid var(--gv-line);padding:12px 22px;display:flex;justify-content:flex-end;gap:8px;background:#FAFBFC}
.gv-user-identity-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--gv-line);border-radius:7px;background:#F8F9FA}.gv-user-identity-card>div{display:flex;flex-direction:column;align-items:flex-start}.gv-user-identity-card strong{font-size:13px;color:#353C43}.gv-user-identity-card small{font-size:10px;color:#7D8790;margin:2px 0 7px}
.gv-user-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:20px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-user-edit-grid label{display:flex;flex-direction:column;gap:6px}.gv-user-edit-grid label>span{font-size:8px;letter-spacing:.1em;color:#9199A1;font-weight:760}.gv-user-edit-grid select,.gv-user-edit-grid input{height:40px;border:1px solid var(--gv-line);border-radius:6px;background:#FAFBFC;padding:0 10px;font-size:11px}
.gv-user-detail-section{padding:20px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-user-detail-section>span{display:block;font-size:8px;letter-spacing:.11em;color:#9199A1;font-weight:760;margin-bottom:10px}.gv-user-access-chips{display:flex;flex-wrap:wrap;gap:6px}.gv-user-access-chips span{height:27px;padding:0 8px;border-radius:5px;border:1px solid #DEE2E5;background:#F6F7F8;display:flex;align-items:center;font-size:9px;color:#606A73}
.gv-user-detail-list{margin:0}.gv-user-detail-list>div{display:flex;justify-content:space-between;gap:18px;padding:7px 0}.gv-user-detail-list dt{font-size:10px;color:#808A93}.gv-user-detail-list dd{margin:0;text-align:right;font-size:10px;color:#424A51;font-weight:620}.gv-user-control-note{font-size:10px;color:#747E87;line-height:1.6;margin-bottom:10px}.gv-danger-text-btn{height:34px;border:1px solid #E2D6D6;background:#FBF7F7;border-radius:6px;padding:0 10px;color:#8B5D5D;font-size:10px;cursor:pointer}.gv-danger-text-btn:hover{background:#F7EEEE}

.gv-access-invite-modal .gv-modal{width:min(620px,100%)}
.gv-access-invite-modal form{display:contents}
.gv-form-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gv-form-grid label{display:flex;flex-direction:column;gap:6px}.gv-form-grid label>span{font-size:9px;color:#747E87;font-weight:650}.gv-form-grid input,.gv-form-grid select{height:42px;border:1px solid var(--gv-line);background:#FAFBFC;border-radius:6px;padding:0 10px;font-size:11px;outline:0}.gv-form-grid input:focus,.gv-form-grid select:focus{border-color:#AEB7C1}
.gv-access-invite-modal .gv-inline-notice{display:block;padding:12px 14px}.gv-access-invite-modal .gv-inline-notice strong{font-size:10.5px}.gv-access-invite-modal .gv-inline-notice span{display:block;font-size:9.5px;color:#717B84;margin-top:3px;line-height:1.55}

@media (max-width:1280px){
  .gv-access-users-layout,.gv-login-layout,.gv-role-intro-grid{grid-template-columns:minmax(0,1fr) 300px}
  .gv-access-protected-grid{grid-template-columns:1fr 1fr}
  .gv-role-cards{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:18px}.gv-role-cards>div:nth-child(3){border-right:0}.gv-role-cards>div:nth-child(n+4){border-top:1px solid var(--gv-line-soft);padding-top:15px}
}

@media (max-width:1040px){
  .gv-access-users-layout,.gv-login-layout,.gv-role-intro-grid,.gv-access-protected-grid{grid-template-columns:1fr}
  .gv-access-side{position:static;grid-template-columns:1fr 1fr}
  .gv-role-principles{display:block}
  .gv-access-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-access-metrics>div:nth-child(2){border-right:0}.gv-access-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-access-metrics>div:nth-child(3){padding-left:0}
}

@media (max-width:767px){
  .gv-access-hero{align-items:flex-start;flex-direction:column;gap:18px;margin-top:0}.gv-access-hero h1{font-size:30px}.gv-access-hero p{font-size:12.5px}.gv-access-hero-actions{width:100%}.gv-access-hero-actions .gv-btn{flex:1;justify-content:center}
  .gv-access-metrics>div{min-height:80px;padding:12px}.gv-access-metrics>div:first-child,.gv-access-metrics>div:nth-child(3){padding-left:4px}.gv-access-metrics strong{font-size:23px}.gv-access-metrics small{font-size:9.5px}
  .gv-access-tablist{overflow:auto;white-space:nowrap}.gv-access-tablist button{flex:0 0 auto}
  .gv-access-toolbar{align-items:stretch;flex-direction:column}.gv-access-search{min-width:0;max-width:none;width:100%}.gv-access-filter{margin-left:0;overflow:auto}.gv-access-filter button{flex:1;white-space:nowrap}
  .gv-access-side{grid-template-columns:1fr}.gv-role-cards{grid-template-columns:1fr 1fr}.gv-role-cards>div{border-right:0;border-top:1px solid var(--gv-line-soft);padding-top:12px}.gv-role-cards>div:first-child,.gv-role-cards>div:nth-child(2){border-top:0;padding-top:3px}
  .gv-protected-actions{grid-template-columns:1fr}.gv-protected-actions>div,.gv-protected-actions>div:nth-child(even),.gv-protected-actions>div:nth-child(odd){border-right:0;border-bottom:1px solid var(--gv-line-soft);padding:13px 0}.gv-protected-actions>div:last-child{border-bottom:0}
  .gv-permission-editbar{align-items:flex-start;flex-direction:column}.gv-permission-editbar>div{width:100%}.gv-permission-editbar .gv-btn{flex:1;justify-content:center}
  .gv-access-drawer{width:100vw}.gv-user-edit-grid,.gv-form-grid.two{grid-template-columns:1fr}.gv-access-drawer-foot{padding:10px 14px}.gv-access-drawer-foot .gv-btn{flex:1;justify-content:center}
}

@media (prefers-reduced-motion:reduce){.gv-access-drawer{transition:none}}

/* ========================================================================== 
   v0.18 · Notifications / Task Center
   ========================================================================== */
.gv-notification-link{text-decoration:none}
.gv-notification-count{
  position:absolute;right:2px;top:1px;min-width:16px;height:16px;padding:0 4px;border-radius:99px;
  background:#555F68;color:#FFF;border:2px solid #F2F4F6;display:flex;align-items:center;justify-content:center;
  font-size:8px;font-weight:760;line-height:1;
}
.gv-nav-badge{
  margin-left:auto;min-width:20px;height:19px;padding:0 6px;border-radius:99px;background:#E3E7EA;color:#5C6670;
  display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:730;
}
.gv-nav-item.active .gv-nav-badge{background:#D7DDE1;color:#3E474F}

.gv-task-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:38px;margin:8px 0 28px}
.gv-task-hero>div:first-child{max-width:830px}
.gv-task-hero h1{margin:8px 0 8px;font-size:34px;line-height:1.08;letter-spacing:-.035em;color:#292F35;font-weight:620;text-wrap:balance}
.gv-task-hero p{margin:0;max-width:760px;color:#69737D;font-size:12px;line-height:1.65}
.gv-task-hero-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}

.gv-task-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:8px;background:#F9FAFB;margin-bottom:16px;overflow:hidden}
.gv-task-metrics>button{min-height:96px;border:0;border-right:1px solid var(--gv-line-soft);background:transparent;text-align:left;padding:15px 18px;cursor:pointer;transition:background-color 120ms ease}
.gv-task-metrics>button:last-child{border-right:0}.gv-task-metrics>button:hover,.gv-task-metrics>button.active{background:#F1F3F4}
.gv-task-metrics span{display:block;font-size:8px;letter-spacing:.12em;color:#919AA2;font-weight:760}
.gv-task-metrics strong{display:block;font-size:25px;line-height:1;color:#343B42;margin-top:11px;font-weight:650;font-variant-numeric:tabular-nums}
.gv-task-metrics small{display:block;font-size:9.5px;color:#7B858E;margin-top:6px}

.gv-task-commandbar{min-height:66px;border:1px solid var(--gv-line);border-radius:8px;background:#FAFBFC;padding:9px 11px;display:flex;align-items:center;gap:10px;margin-bottom:16px}
.gv-task-search{height:42px;min-width:250px;max-width:380px;flex:1;position:relative;display:flex;align-items:center}
.gv-task-search svg{position:absolute;left:12px;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;color:#879099}
.gv-task-search input{width:100%;height:42px;border:1px solid var(--gv-line);border-radius:6px;background:#FFF;padding:0 12px 0 36px;font-size:11px;color:#414950;outline:none}
.gv-task-search input:focus{border-color:#BFC7CD;box-shadow:0 0 0 3px rgba(98,113,127,.07)}
.gv-task-tabs{display:flex;align-items:center;height:42px;border:1px solid var(--gv-line);border-radius:6px;background:#FFF;padding:3px}
.gv-task-tabs button{height:34px;border:0;border-radius:4px;background:transparent;padding:0 10px;font-size:9.5px;color:#747E87;cursor:pointer;white-space:nowrap}
.gv-task-tabs button span{margin-left:4px;color:#9AA2A9;font-variant-numeric:tabular-nums}
.gv-task-tabs button.active{background:#ECEFF1;color:#3F474E;font-weight:690}.gv-task-tabs button.active span{color:#68727B}
.gv-task-filterset{margin-left:auto;display:flex;gap:7px}.gv-task-filterset label{height:42px;min-width:110px;border:1px solid var(--gv-line);border-radius:6px;background:#FFF;padding:5px 9px;display:flex;flex-direction:column;justify-content:center}
.gv-task-filterset label>span{font-size:7px;letter-spacing:.1em;color:#979FA6;font-weight:760;line-height:1}
.gv-task-filterset select{height:20px;border:0;background:transparent;padding:0;color:#505A63;font-size:9.5px;outline:none}

.gv-task-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start}
.gv-task-stream-panel{overflow:hidden;min-width:0}
.gv-task-stream-head{min-height:92px;padding:17px 18px;border-bottom:1px solid var(--gv-line);display:flex;align-items:center;justify-content:space-between;gap:18px}
.gv-task-kicker{display:block;font-size:8px;letter-spacing:.12em;color:#969EA5;font-weight:760}.gv-task-stream-head h2{margin:4px 0 2px;font-size:17px;color:#363D44;font-weight:650}.gv-task-stream-head p{margin:0;font-size:10px;color:#7B858E}
.gv-task-visible-meta{display:flex;align-items:baseline;gap:5px}.gv-task-visible-meta strong{font-size:19px;color:#4B545C;font-weight:620}.gv-task-visible-meta span{font-size:8.5px;letter-spacing:.08em;color:#969EA5}
.gv-task-groups{padding:0 16px 10px}
.gv-task-group{padding-top:16px}.gv-task-group[hidden]{display:none}
.gv-task-group-head{height:29px;padding:0 5px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--gv-line-soft)}
.gv-task-group-head span{font-size:7.5px;letter-spacing:.13em;color:#949DA4;font-weight:760}.gv-task-group-head strong{font-size:9px;color:#6F7982;font-weight:620}

.gv-task-row{position:relative;border-bottom:1px solid var(--gv-line-soft);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;min-height:76px;transition:background-color 120ms ease,opacity 120ms ease}
.gv-task-row:hover{background:#F8F9FA}.gv-task-row[hidden]{display:none}.gv-task-row.done{opacity:.72}.gv-task-row.snoozed{background:#FAFAFA}
.gv-task-open{width:100%;border:0;background:transparent;padding:9px 5px;display:grid;grid-template-columns:3px 78px minmax(210px,1fr) 112px 96px;align-items:center;gap:12px;text-align:left;cursor:pointer;color:inherit}
.gv-task-priority-line{width:2px;height:36px;border-radius:2px;background:#D8DDE1}.gv-task-row.high .gv-task-priority-line{background:#A48E69}.gv-task-row.critical .gv-task-priority-line{background:#986C6C}
.gv-task-type{width:max-content;min-width:65px;height:25px;padding:0 7px;border:1px solid #DEE2E5;border-radius:5px;background:#F4F6F7;display:flex;align-items:center;justify-content:center;font-size:7.5px;letter-spacing:.08em;color:#69737C;font-weight:750}
.gv-task-type.staffing{background:#F3F5F5}.gv-task-type.quote{background:#F5F4F1}.gv-task-type.settlement{background:#F2F4F3}.gv-task-type.client{background:#F4F4F6}.gv-task-type.crew{background:#F3F5F6}
.gv-task-main{min-width:0}.gv-task-main strong{display:block;font-size:11.5px;color:#3D454C;font-weight:660;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-task-main small{display:block;font-size:9.5px;color:#7B858E;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-task-owner{display:flex;align-items:center;gap:8px}.gv-task-owner>i{width:26px;height:26px;border-radius:50%;background:#E3E7EA;color:#56616A;display:grid;place-items:center;font-size:9px;font-style:normal;font-weight:730}.gv-task-owner>span{min-width:0}.gv-task-owner small,.gv-task-due small{display:block;font-size:7px;letter-spacing:.09em;color:#A0A7AD;font-weight:750}.gv-task-owner strong{display:block;font-size:9.5px;color:#606A73;margin-top:2px;font-weight:620}.gv-task-owner.unassigned>i{border:1px dashed #C9CED2;background:#FAFBFC;color:#A0A7AD}.gv-task-owner.unassigned strong{color:#8D969E}
.gv-task-due{text-align:right}.gv-task-due strong{display:block;font-size:10px;color:#4F5961;margin-top:2px;font-variant-numeric:tabular-nums}.gv-task-due em{display:block;font-style:normal;font-size:8px;color:#9199A1;margin-top:2px}.gv-task-due.overdue strong,.gv-task-due.overdue em{color:#8B5D5D}.gv-task-due.snoozed strong{color:#716750}.gv-task-due.done strong{color:#62746A}
.gv-task-quick{display:flex;align-items:center;padding:0 4px 0 8px;gap:4px;opacity:0;transition:opacity 120ms ease}.gv-task-row:hover .gv-task-quick,.gv-task-row:focus-within .gv-task-quick{opacity:1}
.gv-task-quick button{height:28px;border:1px solid #DFE3E6;border-radius:5px;background:#FFF;padding:0 8px;color:#68727B;font-size:8.5px;white-space:nowrap;cursor:pointer}.gv-task-quick button:hover{background:#EFF2F3;color:#40484F}
.gv-task-empty{padding:72px 20px;text-align:center}.gv-task-empty span{width:42px;height:42px;border-radius:50%;background:#EEF1F2;color:#8B949B;display:grid;place-items:center;margin:0 auto 10px;font-size:12px}.gv-task-empty strong{display:block;font-size:12px;color:#505960}.gv-task-empty small{display:block;font-size:9.5px;color:#8A939B;margin-top:4px}

.gv-task-aside{display:grid;gap:16px;position:sticky;top:calc(var(--gv-topbar) + 16px)}
.gv-task-focus-list{padding:2px 14px 12px}.gv-task-focus-list button{width:100%;min-height:62px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;display:grid;grid-template-columns:25px minmax(0,1fr) auto;gap:8px;align-items:center;text-align:left;padding:7px 3px;cursor:pointer}.gv-task-focus-list button:last-child{border-bottom:0}.gv-task-focus-list button:hover{background:#F8F9FA}.gv-task-focus-list>button>span{font-size:8px;color:#A0A7AD}.gv-task-focus-list strong{display:block;font-size:10px;color:#434B52}.gv-task-focus-list small{display:block;font-size:8.5px;color:#818A92;margin-top:3px}.gv-task-focus-list em{font-style:normal;font-size:7px;letter-spacing:.07em;color:#856969}
.gv-task-load-list{padding:6px 16px 16px;display:grid;gap:13px}.gv-task-load-list>div{display:grid;grid-template-columns:92px minmax(0,1fr) 20px;gap:9px;align-items:center}.gv-task-load-list span strong{display:block;font-size:9.5px;color:#555F67}.gv-task-load-list span small{display:block;font-size:8px;color:#989FA6;margin-top:2px}.gv-task-load-list i{height:5px;background:#EDF0F1;border-radius:99px;overflow:hidden}.gv-task-load-list b{display:block;height:100%;background:#77828B;border-radius:99px}.gv-task-load-list em{font-style:normal;text-align:right;font-size:9px;color:#737D85}
.gv-task-rule-list{padding:4px 16px 8px;display:grid;gap:4px}.gv-task-rule-list>div{display:grid;grid-template-columns:13px 1fr;gap:8px;padding:8px 0}.gv-task-rule-list i{width:6px;height:6px;border-radius:50%;background:#8C969E;margin-top:4px}.gv-task-rule-list strong{display:block;font-size:9.5px;color:#515A62}.gv-task-rule-list small{display:block;font-size:8.5px;color:#858E96;line-height:1.45;margin-top:2px}.gv-task-rule-panel>p{border-top:1px solid var(--gv-line-soft);margin:4px 16px 0;padding:12px 0 15px;font-size:8.5px;line-height:1.55;color:#899199}

.gv-task-backdrop{display:none;position:fixed;inset:0;z-index:104;background:rgba(33,38,43,.28)}.gv-task-backdrop.open{display:block}
.gv-task-drawer{position:fixed;z-index:105;right:0;top:0;bottom:0;width:min(540px,100vw);background:#FCFCFD;border-left:1px solid var(--gv-line);transform:translateX(101%);transition:transform .18s ease;display:flex;flex-direction:column}.gv-task-drawer.open{transform:translateX(0)}
.gv-task-drawer-head{min-height:102px;padding:20px 22px;border-bottom:1px solid var(--gv-line);display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.gv-task-drawer-head>div>span{display:block;font-size:8px;letter-spacing:.12em;color:#9099A1;font-weight:760}.gv-task-drawer-head h2{margin:4px 0 0;font-size:20px;line-height:1.22;color:#30363C;font-weight:650;letter-spacing:-.025em}.gv-task-drawer-head p{margin:4px 0 0;font-size:10px;color:#7C868F}
.gv-task-drawer-body{padding:20px 22px;overflow:auto;flex:1}.gv-task-drawer-foot{min-height:70px;border-top:1px solid var(--gv-line);padding:12px 22px;display:flex;align-items:center;justify-content:flex-end;gap:8px;background:#FAFBFC}.gv-task-drawer-foot>span{margin-right:auto;font-size:8px;letter-spacing:.1em;color:#89929A;font-weight:760}
.gv-task-context-card{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--gv-line);border-radius:7px;background:#F8F9FA;overflow:hidden}.gv-task-context-card>div{min-height:70px;padding:13px;border-right:1px solid var(--gv-line-soft);border-bottom:1px solid var(--gv-line-soft)}.gv-task-context-card>div:nth-child(2n){border-right:0}.gv-task-context-card>div:nth-last-child(-n+2){border-bottom:0}.gv-task-context-card span{display:block;font-size:7.5px;letter-spacing:.1em;color:#979FA6;font-weight:760}.gv-task-context-card strong{display:block;font-size:10.5px;color:#505960;margin-top:7px;font-weight:620}
.gv-task-detail-section{padding:20px 1px;border-bottom:1px solid var(--gv-line-soft)}.gv-task-detail-section:last-child{border-bottom:0}.gv-task-detail-title span{display:block;font-size:7.5px;letter-spacing:.11em;color:#969EA5;font-weight:760}.gv-task-detail-title strong{display:block;font-size:10.5px;color:#4D565E;margin-top:4px}.gv-task-context-copy{font-size:10.5px;line-height:1.7;color:#68727B;margin:11px 0 12px}.gv-task-source-link{height:36px;border:1px solid var(--gv-line);border-radius:6px;background:#FAFBFC;color:#59636B;text-decoration:none;padding:0 10px;display:flex;align-items:center;justify-content:space-between;font-size:9.5px}.gv-task-source-link:hover{background:#F1F3F4}
.gv-task-owner-edit{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.gv-task-owner-edit label{display:flex;flex-direction:column;gap:5px}.gv-task-owner-edit label>span{font-size:7px;letter-spacing:.1em;color:#9AA2A9;font-weight:760}.gv-task-owner-edit select,.gv-task-owner-edit input{height:38px;border:1px solid var(--gv-line);border-radius:6px;background:#FAFBFC;padding:0 9px;font-size:10px;color:#505960}.gv-text-action{border:0;background:transparent;color:#5F6C78;font-size:9px;font-weight:650;padding:10px 0 0;cursor:pointer}.gv-text-action:hover{text-decoration:underline}
.gv-task-mini-timeline{margin-top:12px;display:grid}.gv-task-mini-timeline>div{position:relative;min-height:46px;display:grid;grid-template-columns:16px minmax(0,1fr) auto;gap:7px;padding-bottom:7px}.gv-task-mini-timeline>div:before{content:"";position:absolute;left:4px;top:11px;bottom:-3px;width:1px;background:#E0E4E6}.gv-task-mini-timeline>div:last-child:before{display:none}.gv-task-mini-timeline i{width:9px;height:9px;border:2px solid #D4DADF;background:#FCFCFD;border-radius:50%;margin-top:2px;z-index:1}.gv-task-mini-timeline .latest i{border-color:#7E8992}.gv-task-mini-timeline strong{display:block;font-size:9.5px;color:#535D65}.gv-task-mini-timeline small{display:block;font-size:8px;color:#8D959C;margin-top:2px}.gv-task-mini-timeline em{font-style:normal;font-size:8px;color:#9199A0;white-space:nowrap}
.gv-task-snooze-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:12px}.gv-task-snooze-controls select{height:38px;border:1px solid var(--gv-line);border-radius:6px;background:#FAFBFC;padding:0 9px;font-size:10px;color:#515A62}

.gv-task-create-modal .gv-modal{width:min(660px,100%)}.gv-task-create-modal form{display:contents}.gv-task-create-modal .gv-inline-notice{display:block;padding:12px 14px}.gv-task-create-modal .gv-inline-notice strong{font-size:10.5px}.gv-task-create-modal .gv-inline-notice span{display:block;font-size:9.5px;color:#717B84;margin-top:3px;line-height:1.55}

@media (max-width:1439px){
  .gv-task-layout{grid-template-columns:minmax(0,1fr) 300px}
  .gv-task-open{grid-template-columns:3px 72px minmax(180px,1fr) 102px 84px;gap:9px}.gv-task-commandbar{flex-wrap:wrap}.gv-task-search{max-width:none}.gv-task-filterset{margin-left:0}
}
@media (max-width:1180px){
  .gv-task-layout{grid-template-columns:1fr}.gv-task-aside{position:static;grid-template-columns:1fr 1fr}.gv-task-rule-panel{grid-column:1/-1}
  .gv-task-open{grid-template-columns:3px 72px minmax(180px,1fr) 106px 90px}
}
@media (max-width:760px){
  .gv-task-hero{margin-top:0;align-items:flex-start;flex-direction:column;gap:18px}.gv-task-hero h1{font-size:29px}.gv-task-hero p{font-size:11.5px}.gv-task-hero-actions{width:100%;flex-wrap:wrap}.gv-task-hero-actions .gv-btn{flex:1;justify-content:center}.gv-task-hero-actions .gv-inline-activity-link{width:100%}
  .gv-task-metrics{grid-template-columns:1fr 1fr}.gv-task-metrics>button{min-height:80px;padding:12px;border-bottom:1px solid var(--gv-line-soft)}.gv-task-metrics>button:nth-child(2){border-right:0}.gv-task-metrics>button:nth-last-child(-n+2){border-bottom:0}.gv-task-metrics strong{font-size:23px}
  .gv-task-commandbar{align-items:stretch;flex-direction:column}.gv-task-search{width:100%;min-width:0}.gv-task-tabs{width:100%;overflow:auto}.gv-task-tabs button{flex:1}.gv-task-filterset{width:100%}.gv-task-filterset label{flex:1;min-width:0}
  .gv-task-stream-head{min-height:82px;padding:14px}.gv-task-groups{padding:0 10px 8px}.gv-task-row{grid-template-columns:minmax(0,1fr);min-height:88px}.gv-task-open{padding:9px 3px;grid-template-columns:3px 64px minmax(0,1fr) 72px;gap:8px}.gv-task-owner{display:none}.gv-task-main strong{font-size:10.5px}.gv-task-main small{font-size:8.8px}.gv-task-due strong{font-size:9.5px}.gv-task-quick{opacity:1;padding:0 4px 8px 79px;justify-content:flex-start}.gv-task-quick button{height:29px}
  .gv-task-aside{grid-template-columns:1fr}.gv-task-rule-panel{grid-column:auto}
  .gv-task-drawer{width:100vw}.gv-task-drawer-head{padding:16px 15px}.gv-task-drawer-body{padding:16px 15px}.gv-task-drawer-foot{padding:10px 14px}.gv-task-drawer-foot>span{display:none}.gv-task-drawer-foot .gv-btn{flex:1;justify-content:center}.gv-task-owner-edit{grid-template-columns:1fr}.gv-task-context-card{grid-template-columns:1fr 1fr}.gv-task-create-modal .gv-modal{min-height:100%;border-radius:0}
}
@media (prefers-reduced-motion:reduce){.gv-task-drawer{transition:none}}

/* v0.19 · Client CRM Actions */
.gv-crm-queue{margin-bottom:16px;overflow:hidden}.gv-crm-queue-head{align-items:center}.gv-crm-queue-badges{display:flex;gap:6px}.gv-crm-queue-badges span{height:28px;border:1px solid var(--gv-line);border-radius:6px;padding:0 8px;display:flex;align-items:center;gap:5px;font-size:7.5px;letter-spacing:.08em;color:#7C858D;font-weight:750;background:#FAFBFC}.gv-crm-queue-badges b{font-size:9.5px;color:#4F5961}.gv-crm-queue-badges .danger{background:#FBF5F4;border-color:#E9D8D4;color:#986E66}.gv-crm-queue-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--gv-line-soft)}.gv-crm-queue-list button{min-width:0;min-height:72px;border:0;border-right:1px solid var(--gv-line-soft);background:#FCFCFD;padding:12px 13px;display:grid;grid-template-columns:8px minmax(0,1fr) auto auto;align-items:center;gap:9px;text-align:left;cursor:pointer}.gv-crm-queue-list button:last-child{border-right:0}.gv-crm-queue-list button:hover{background:#F6F8F9}.gv-crm-signal{width:6px;height:6px;border-radius:50%;background:#768D7D}.gv-crm-signal.overdue{background:#9D695F}.gv-crm-queue-list strong{display:block;font-size:10px;color:#434B52}.gv-crm-queue-list small{display:block;font-size:8.4px;color:#899198;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-crm-queue-list>button>span:nth-child(3){text-align:right}.gv-crm-queue-list>button>span:nth-child(3) b{display:block;font-size:8px;letter-spacing:.08em;color:#68737C}.gv-crm-queue-list em{font-style:normal;font-size:8.5px;color:#77828B}

.gv-crm-client-strip{border-top:1px solid var(--gv-line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;background:#FAFBFB}.gv-crm-client-strip>div{min-height:76px;padding:14px 16px;border-right:1px solid var(--gv-line-soft)}.gv-crm-client-strip>div>span{display:block;font-size:7.5px;letter-spacing:.11em;color:#929AA2;font-weight:760}.gv-crm-client-strip>div>strong{display:block;margin-top:6px;font-size:10.5px;color:#424A51;font-weight:650}.gv-crm-client-strip>div>small{display:block;margin-top:3px;font-size:8.4px;color:#899199}.gv-crm-client-strip .gv-crm-client-actions{border-right:0;display:flex;align-items:center;gap:6px;padding-inline:12px}.gv-crm-status-text.danger{color:#8E5A54!important}.gv-crm-status-text.active{color:#577160!important}.gv-crm-status-text.wait{color:#82704F!important}

.gv-communication-history{overflow:hidden}.gv-communication-list{padding:5px 18px 11px}.gv-communication-item{min-height:66px;display:grid;grid-template-columns:42px 14px minmax(0,1fr);gap:8px;position:relative;padding:10px 0}.gv-communication-item:not(:last-child):after{content:"";position:absolute;left:48px;top:31px;bottom:-12px;width:1px;background:#E2E5E7}.gv-communication-date{font-size:8px;color:#929AA2;padding-top:2px}.gv-communication-dot{width:8px;height:8px;border:2px solid #C9D0D5;background:#FCFCFD;border-radius:50%;margin-top:1px;z-index:1}.gv-communication-item>div>span{display:block;font-size:7.5px;letter-spacing:.08em;color:#8B949C;font-weight:720}.gv-communication-item>div>strong{display:block;font-size:10px;color:#4C555D;line-height:1.55;margin-top:4px;font-weight:560}.gv-communication-item>div>small{display:block;font-size:8px;color:#969DA4;margin-top:4px}

.gv-crm-reminder-panel{overflow:hidden}.gv-crm-reminder{padding:18px;display:grid;grid-template-columns:58px minmax(0,1fr);gap:12px}.gv-crm-reminder-date{height:54px;border:1px solid var(--gv-line);border-radius:7px;display:grid;place-items:center;background:#F7F8F9;font-size:8px;letter-spacing:.08em;color:#69747D;font-weight:760;text-align:center}.gv-crm-reminder strong{display:block;font-size:10.5px;color:#414A52}.gv-crm-reminder p{font-size:8.8px;line-height:1.55;color:#7E8891;margin:5px 0 0}.gv-crm-owner-row{min-height:44px;border-top:1px solid var(--gv-line-soft);padding:0 16px;display:flex;align-items:center;gap:8px;background:#FAFBFB}.gv-crm-owner-row span{font-size:7px;letter-spacing:.1em;color:#9AA1A7;font-weight:760}.gv-crm-owner-row strong{font-size:9px;color:#5B656D}.gv-crm-owner-row a{margin-left:auto;font-size:8.5px;color:#65717B;text-decoration:none}.gv-crm-owner-row a:hover{text-decoration:underline}

.gv-crm-modal{width:min(680px,100%)}.gv-crm-mode-tabs{height:39px;border:1px solid var(--gv-line);border-radius:7px;padding:3px;display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#F6F7F8;margin-bottom:15px}.gv-crm-mode-tabs button{border:0;border-radius:5px;background:transparent;color:#7A848D;font-size:9.5px;cursor:pointer}.gv-crm-mode-tabs button.active{background:#FFF;color:#424B52;font-weight:650}.gv-crm-task-toggle{min-height:54px;border:1px solid var(--gv-line);border-radius:7px;background:#FAFBFB;display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer}.gv-crm-task-toggle input{width:15px;height:15px}.gv-crm-task-toggle strong{display:block;font-size:9.5px;color:#4E575F}.gv-crm-task-toggle small{display:block;font-size:8.3px;color:#8A939A;margin-top:2px}

@media (max-width:1180px){.gv-crm-queue-list{grid-template-columns:1fr}.gv-crm-queue-list button{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-crm-queue-list button:last-child{border-bottom:0}.gv-crm-client-strip{grid-template-columns:repeat(2,1fr)}.gv-crm-client-strip>div:nth-child(2){border-right:0}.gv-crm-client-strip .gv-crm-client-actions{grid-column:1/-1;border-top:1px solid var(--gv-line-soft)}}
@media (max-width:760px){.gv-crm-queue-head{align-items:flex-start;flex-direction:column}.gv-crm-queue-badges{width:100%}.gv-crm-queue-badges span{flex:1;justify-content:center}.gv-crm-queue-list button{grid-template-columns:8px minmax(0,1fr) auto}.gv-crm-queue-list em{display:none}.gv-crm-client-strip{grid-template-columns:1fr 1fr}.gv-crm-client-strip>div{padding:12px;min-height:70px}.gv-crm-client-strip>div:nth-child(odd){border-right:1px solid var(--gv-line-soft)}.gv-crm-client-strip .gv-crm-client-actions{display:grid;grid-template-columns:1fr 1fr}.gv-crm-client-actions .gv-btn{justify-content:center}.gv-communication-list{padding-inline:14px}.gv-crm-modal{min-height:100%;border-radius:0}.gv-crm-reminder{grid-template-columns:50px minmax(0,1fr)}}
[data-crm-touch-fields][hidden]{display:none!important}

/* v0.20 · Crew Operations Deepening */
.gv-crew-ops-radar{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gv-line);border-radius:8px;background:#FBFCFC;overflow:hidden;margin-bottom:16px}.gv-crew-ops-radar button{min-height:92px;border:0;border-right:1px solid var(--gv-line-soft);background:transparent;padding:16px 18px;text-align:left;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto auto;column-gap:8px;cursor:pointer}.gv-crew-ops-radar button:last-child{border-right:0}.gv-crew-ops-radar button:hover{background:#F5F7F8}.gv-crew-ops-radar span{grid-column:1/-1;font-size:7.5px;letter-spacing:.11em;color:#939BA2;font-weight:760}.gv-crew-ops-radar strong{font-size:23px;letter-spacing:-.025em;color:#30373D;font-weight:650;margin-top:7px}.gv-crew-ops-radar small{grid-column:1/2;font-size:8.4px;color:#7E8890;margin-top:3px}.gv-crew-ops-radar em{grid-column:2/3;grid-row:2/4;align-self:end;font-style:normal;font-size:8px;color:#727D86}

.gv-master-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.gv-master-section-head>span{font-size:8px;letter-spacing:.12em;color:#8A949D;font-weight:720}.gv-master-section-head>small{font-size:8px;color:#9199A1}.gv-master-section-head>button{height:28px;border:1px solid var(--gv-line);border-radius:6px;background:#FAFBFB;padding:0 8px;font-size:8px;color:#69747D;cursor:pointer}.gv-master-section-head>button:hover{background:#F0F2F3}
.gv-availability-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-top:12px}.gv-availability-grid button{height:46px;border:1px solid var(--gv-line);border-radius:6px;background:#F8F9FA;color:#737D85;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:pointer}.gv-availability-grid button span{font-size:10px;font-weight:650}.gv-availability-grid button small{font-size:7.5px;color:#9AA1A7}.gv-availability-grid button.available{background:#EEF4F0;border-color:#D9E5DD;color:#536F5D}.gv-availability-grid button.booked{background:#ECEFF1;border-color:#DCE1E4;color:#48545C}.gv-availability-grid button.conflict{background:#F8EEEE;border-color:#E8D4D1;color:#8A5D58}.gv-availability-legend .conflict{background:#95635D!important}
.gv-crew-skill-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.gv-crew-skill-tags span{height:28px;border:1px solid #DEE2E5;border-radius:99px;background:#F8F9FA;padding:0 9px;display:flex;align-items:center;font-size:8.5px;color:#5D6871}
.gv-crew-assets{margin-top:10px;border:1px solid var(--gv-line-soft);border-radius:7px;overflow:hidden}.gv-crew-assets>div{min-height:46px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:0 10px;border-bottom:1px solid var(--gv-line-soft)}.gv-crew-assets>div:last-child{border-bottom:0}.gv-crew-assets span{font-size:9px;color:#566069}.gv-crew-assets strong{font-size:8px;color:#89929A;font-weight:560}.gv-crew-assets em{font-style:normal;font-size:7.5px;padding:4px 6px;border-radius:99px}.gv-crew-assets em.ready{background:#EEF4F0;color:#58705F}.gv-crew-assets em.update{background:#F8EEEE;color:#8A5E58}
.gv-crew-conflicts{margin-top:10px;display:grid;gap:6px}.gv-crew-conflicts>div{min-height:56px;border:1px solid var(--gv-line-soft);border-radius:7px;background:#FAFBFB;padding:9px 10px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:8px}.gv-crew-conflicts>div.hard{background:#FBF3F2;border-color:#E7D6D2}.gv-crew-conflicts>div.soft{background:#FAF8F3;border-color:#E7E0D2}.gv-crew-conflicts>div.clear{grid-template-columns:28px minmax(0,1fr)}.gv-crew-conflicts>div>span{font-size:8px;color:#7E878E;font-weight:700}.gv-crew-conflicts strong{display:block;font-size:9px;color:#505A62}.gv-crew-conflicts small{display:block;font-size:8px;color:#8B939A;margin-top:2px}.gv-crew-conflicts button{height:28px;border:1px solid var(--gv-line);border-radius:5px;background:#FFF;padding:0 7px;font-size:7.5px;color:#65717A;cursor:pointer}
.gv-replacement-list{margin-top:10px;display:grid}.gv-replacement-list button{min-height:54px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;text-align:left;padding:6px 2px;cursor:pointer}.gv-replacement-list button:last-child{border-bottom:0}.gv-replacement-list button:hover{background:#F7F8F9}.gv-replacement-list>button>span{width:28px;height:28px;border-radius:50%;background:#EFF1F2;display:grid;place-items:center;font-size:9px;color:#64707A}.gv-replacement-list strong{display:block;font-size:9.5px;color:#4B555D}.gv-replacement-list small{display:block;font-size:8px;color:#8C949B;margin-top:2px}.gv-replacement-list em{font-style:normal;font-size:8px;color:#69757E}
.gv-outreach-modal{width:min(650px,100%)}.gv-outreach-tabs{height:38px;border:1px solid var(--gv-line);border-radius:7px;padding:3px;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;background:#F6F7F8;margin-bottom:14px}.gv-outreach-tabs button{border:0;border-radius:5px;background:transparent;font-size:8.5px;color:#7A848D;cursor:pointer}.gv-outreach-tabs button.active{background:#FFF;color:#424B52;font-weight:650}.gv-outreach-modal textarea{font-size:10.5px;line-height:1.65}

@media (max-width:1180px){.gv-crew-ops-radar{grid-template-columns:1fr 1fr}.gv-crew-ops-radar button:nth-child(2){border-right:0}.gv-crew-ops-radar button:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media (max-width:760px){.gv-crew-ops-radar{grid-template-columns:1fr}.gv-crew-ops-radar button{border-right:0;border-bottom:1px solid var(--gv-line-soft);min-height:78px}.gv-crew-ops-radar button:last-child{border-bottom:0}.gv-availability-grid{grid-template-columns:repeat(7,minmax(34px,1fr));gap:3px}.gv-availability-grid button{height:42px}.gv-outreach-modal{min-height:100%;border-radius:0}.gv-outreach-tabs{grid-template-columns:1fr}.gv-outreach-tabs{height:auto}.gv-outreach-tabs button{height:34px}}
.gv-master-drawer .gv-drawer-head{flex:0 0 76px}.gv-master-drawer .gv-drawer-body{flex:1;min-height:0;overflow:auto}.gv-master-drawer .gv-master-drawer-foot{flex:0 0 auto;margin-top:0}

/* ========================================================================== */
/* v0.21 · Rate Library / Quote Commercial Control                            */
/* ========================================================================== */
.gv-rate-page-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:8px 2px 20px}
.gv-rate-page-hero h1{margin:7px 0 0;font-size:30px;line-height:1.08;letter-spacing:-.035em;color:#30363C;font-weight:620}
.gv-rate-page-hero p{margin:9px 0 0;max-width:720px;font-size:12px;line-height:1.65;color:#6F7982}
.gv-rate-page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.gv-rate-page-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:9px;background:#FFF;margin-bottom:14px;overflow:hidden}
.gv-rate-page-metrics>div{padding:16px 18px;border-right:1px solid var(--gv-line-soft)}
.gv-rate-page-metrics>div:last-child{border-right:0}.gv-rate-page-metrics span{display:block;font-size:8px;letter-spacing:.12em;color:#929AA2;font-weight:760}.gv-rate-page-metrics strong{display:block;margin-top:7px;font-size:21px;letter-spacing:-.025em;color:#373E45;font-weight:620}.gv-rate-page-metrics small{display:block;margin-top:4px;font-size:9.5px;color:#7E8790}
.gv-rate-commandbar{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.45fr) auto;gap:10px;align-items:center;padding:9px;border:1px solid var(--gv-line);border-radius:9px;background:#FFF;margin-bottom:14px}
.gv-rate-page-search{height:40px;display:flex;align-items:center;gap:8px;border:1px solid var(--gv-line);border-radius:6px;padding:0 11px;background:#FAFBFC}.gv-rate-page-search svg{width:14px;height:14px;color:#7A858E}.gv-rate-page-search input{width:100%;border:0;outline:0;background:transparent;font-size:10.5px;color:#3D454C}
.gv-rate-page-filters{display:flex;gap:3px;min-width:0;overflow:auto;scrollbar-width:none}.gv-rate-page-filters::-webkit-scrollbar{display:none}.gv-rate-page-filters button{height:34px;border:0;border-radius:5px;background:transparent;padding:0 10px;white-space:nowrap;font-size:9.5px;color:#747E87;cursor:pointer}.gv-rate-page-filters button:hover{background:#F2F4F5}.gv-rate-page-filters button.active{background:#E9EDF0;color:#384047;font-weight:700}
.gv-rate-page-sort{display:flex;align-items:center;gap:8px}.gv-rate-page-sort>span{font-size:8px;letter-spacing:.1em;color:#969DA4;font-weight:760}.gv-rate-page-sort select{height:34px;border:1px solid var(--gv-line);border-radius:5px;background:#FAFBFC;padding:0 9px;font-size:9.5px;color:#59636C}
.gv-rate-page-layout{display:grid;grid-template-columns:minmax(0,1fr) 276px;gap:14px;align-items:start}
.gv-rate-table-panel{overflow:hidden}.gv-rate-page-table-wrap{overflow:auto}.gv-rate-page-table{width:100%;min-width:1030px;border-collapse:collapse}.gv-rate-page-table th{height:38px;padding:0 12px;border-bottom:1px solid var(--gv-line);background:#F9FAFB;text-align:left;font-size:8px;letter-spacing:.09em;color:#8B949D;font-weight:760;white-space:nowrap}.gv-rate-page-table th.num,.gv-rate-page-table td.num{text-align:right}.gv-rate-page-table td{height:61px;padding:9px 12px;border-bottom:1px solid var(--gv-line-soft);font-size:10px;color:#59636C;vertical-align:middle}.gv-rate-page-table tbody tr:last-child td{border-bottom:0}.gv-rate-page-table tbody tr:hover{background:#FBFCFC}.gv-rate-page-table td:first-child strong{display:block;font-size:11.5px;color:#414950;font-weight:680}.gv-rate-page-table td:first-child small,.gv-rate-page-table td:nth-child(6) small,.gv-rate-page-table td:nth-child(8) small{display:block;margin-top:3px;font-size:8.5px;color:#929AA2}.gv-rate-page-table td:nth-child(6)>strong,.gv-rate-page-table td:nth-child(8)>strong{font-size:9.5px;color:#58616A}.gv-rate-page-table td>button{height:28px;border:1px solid var(--gv-line);border-radius:5px;background:#FFF;padding:0 9px;font-size:8.5px;color:#5D6770;cursor:pointer}.gv-rate-page-table td>button:hover{background:#F2F4F5}
.gv-rate-category{display:inline-flex;padding:4px 6px;border-radius:4px;background:#F0F2F3;font-size:7.5px;letter-spacing:.06em;text-transform:uppercase;color:#69737B;font-weight:760}.gv-rate-override{display:inline-flex;padding:4px 6px;border:1px solid #DDD4C7;border-radius:4px;background:#F8F4EE;font-size:7.5px;color:#806D52;font-weight:690;white-space:nowrap}.gv-rate-override.quiet{background:#F1F3F5;border-color:#E1E5E8;color:#69747D}.gv-rate-override.none{border-color:transparent;background:transparent;color:#A1A8AF;padding-left:0}.rate-margin{font-weight:700;color:#55685C}
.gv-rate-page-side{display:grid;gap:14px;position:sticky;top:88px}.gv-rate-bundles{padding:6px}.gv-rate-bundles button{width:100%;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;padding:12px 10px;cursor:pointer}.gv-rate-bundles button:last-child{border-bottom:0}.gv-rate-bundles button:hover{background:#F6F8F9}.gv-rate-bundles button>span{font-size:8px;color:#9AA1A8}.gv-rate-bundles strong{display:block;font-size:10.5px;color:#495159}.gv-rate-bundles small{display:block;font-size:8.5px;color:#8A939C;margin-top:3px}.gv-rate-bundles em{font-style:normal;font-size:8px;color:#7D878F;white-space:nowrap}
.gv-rate-review-list{padding:4px 16px 12px}.gv-rate-review-list button{width:100%;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;text-align:left;padding:11px 2px;cursor:pointer}.gv-rate-review-list button:last-child{border-bottom:0}.gv-rate-review-list strong{display:block;font-size:10.5px;color:#515A62}.gv-rate-review-list small{display:block;font-size:8.5px;color:#8B949C;margin-top:3px}.gv-rate-principle{border:1px solid #DDD7CF;border-radius:9px;background:#F7F4F0;padding:18px}.gv-rate-principle span{font-size:7.5px;letter-spacing:.12em;color:#948875;font-weight:800}.gv-rate-principle strong{display:block;margin-top:8px;font-size:13px;line-height:1.4;color:#514A42}.gv-rate-principle p{margin:6px 0 0;font-size:9.5px;line-height:1.65;color:#7D746A}
.gv-rate-editor-drawer{width:min(520px,calc(100vw - 18px))}.gv-rate-editor-drawer .gv-drawer-body{flex:1;min-height:0;overflow:auto}.gv-rate-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gv-rate-margin-preview{display:flex;align-items:center;gap:10px;margin:18px 0;padding:14px;border:1px solid #DCE3DE;border-radius:7px;background:#F5F8F6}.gv-rate-margin-preview span{font-size:8px;letter-spacing:.1em;color:#849087;font-weight:760}.gv-rate-margin-preview strong{margin-left:auto;font-size:18px;color:#52675A}.gv-rate-margin-preview strong.low{color:#8C5D5D}.gv-rate-margin-preview small{width:100%;display:block;font-size:8.5px;color:#7D8780}.gv-rate-editor-foot{flex:0 0 auto;display:flex;justify-content:flex-end;gap:8px;padding:14px 18px;border-top:1px solid var(--gv-line);background:#FFF}

.gv-quote-commercial-controls{border-top:1px solid var(--gv-line);padding:18px 24px;background:#FCFDFD}.gv-quote-commercial-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}.gv-quote-commercial-head strong{display:block;font-size:12px;color:#424A51}.gv-quote-commercial-head span{display:block;font-size:9px;color:#858E96;margin-top:3px}.gv-quote-commercial-head>span:last-child{margin-top:0;padding:4px 6px;border-radius:4px;background:#EEF1F2;font-size:7.5px;letter-spacing:.08em;color:#7B858D;font-weight:760;white-space:nowrap}.gv-quote-commercial-head>span:last-child.active{background:#F3EEE7;color:#846F50}.gv-quote-adjustment-grid{display:grid;grid-template-columns:130px 180px minmax(220px,1fr);gap:10px}.gv-suffix-input{height:38px;display:grid;grid-template-columns:1fr 30px;border:1px solid var(--gv-line);border-radius:6px;background:#FFF;overflow:hidden}.gv-suffix-input input{min-width:0;border:0;outline:0;padding:0 10px;font-size:10.5px;background:transparent}.gv-suffix-input b{display:grid;place-items:center;border-left:1px solid var(--gv-line-soft);font-size:9px;color:#868F97;background:#F8F9FA}.gv-money-input.standalone{height:38px;border:1px solid var(--gv-line);border-radius:6px;background:#FFF;padding:0 9px}.gv-money-input.standalone input{height:100%}.gv-quote-totals #gvQuoteAdjustment.negative{color:#8B5F5F}.gv-quote-totals #gvQuoteAdjustment.positive{color:#536D5D}
.gv-quote-terms-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}.gv-quote-terms-head strong{display:block;font-size:12px;color:#424A51}.gv-quote-terms-head span{display:block;font-size:9px;color:#868F97;margin-top:3px}.gv-quote-terms-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}.gv-quote-terms-grid select{width:100%}
.gv-approval-gate{overflow:hidden}.gv-approval-badge{display:inline-flex;align-items:center;justify-content:center;min-width:68px;height:23px;border-radius:4px;font-size:7.5px;letter-spacing:.09em;font-weight:800}.gv-approval-badge.approved{background:#EAF0EC;color:#5B7161}.gv-approval-badge.review{background:#F4ECE5;color:#8B6A4F}.gv-approval-body{padding:15px 18px 17px}.gv-approval-body>div:first-child>span,.gv-approval-reviewer label>span{display:block;font-size:7.5px;letter-spacing:.1em;color:#929AA2;font-weight:770}.gv-approval-body>div:first-child>strong{display:block;margin-top:5px;font-size:10.5px;color:#4D565E}.gv-approval-body>div:first-child>small{display:block;margin-top:3px;font-size:8.5px;color:#89929A}.gv-approval-reviewer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin-top:14px}.gv-approval-reviewer select{width:100%;height:34px;margin-top:4px;border:1px solid var(--gv-line);border-radius:5px;background:#FAFBFC;padding:0 8px;font-size:9.5px}.gv-approval-reviewer button{height:34px;border:1px solid #D7DDE0;border-radius:5px;background:#FFF;padding:0 10px;font-size:9px;color:#535E66;cursor:pointer}.gv-approval-reviewer button:hover{background:#F3F5F6}.gv-approval-body p{margin:12px 0 0;border-top:1px solid var(--gv-line-soft);padding-top:10px;font-size:9px;line-height:1.55;color:#7D878F}
.gv-quote-template-modal{width:min(620px,calc(100vw - 28px))}.gv-quote-template-list{display:grid;gap:7px}.gv-quote-template-list button{width:100%;border:1px solid var(--gv-line);border-radius:7px;background:#FFF;display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;padding:13px 14px;cursor:pointer}.gv-quote-template-list button:hover{background:#F7F9FA;border-color:#D6DDE1}.gv-quote-template-list button>span{font-size:8px;color:#9AA2A9}.gv-quote-template-list strong{display:block;font-size:11px;color:#465058}.gv-quote-template-list small{display:block;margin-top:3px;font-size:8.5px;color:#89929A}.gv-quote-template-list em{font-style:normal;font-size:8px;color:#7B858D}
.gv-quote-version-drawer{width:min(480px,calc(100vw - 18px))}.gv-quote-version-drawer .gv-drawer-body{flex:1;min-height:0;overflow:auto}.gv-version-timeline{padding:4px 0}.gv-version-timeline button{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:11px;align-items:start;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;text-align:left;padding:14px 2px;cursor:pointer}.gv-version-timeline button>span{width:31px;height:24px;display:grid;place-items:center;border-radius:4px;background:#EEF1F2;font-size:8.5px;color:#68727B;font-weight:780}.gv-version-timeline button.current>span{background:#343B41;color:#FFF}.gv-version-timeline strong{display:block;font-size:10.5px;color:#4A535B}.gv-version-timeline small{display:block;margin-top:3px;font-size:8.5px;color:#9098A0}.gv-version-timeline p{margin:5px 0 0;font-size:9px;color:#747E87}.gv-version-timeline em{font-style:normal;font-size:7.5px;color:#89929A;white-space:nowrap}.gv-version-principle{margin-top:18px;padding:15px;border:1px solid #DDD7CF;border-radius:7px;background:#F7F4F0}.gv-version-principle strong{font-size:10px;color:#5E554C}.gv-version-principle p{margin:4px 0 0;font-size:8.8px;line-height:1.55;color:#7F756A}.gv-rate-full-link{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:11px 12px;border:1px solid var(--gv-line);border-radius:6px;background:#F8F9FA;font-size:9.5px;color:#58626A;text-decoration:none}.gv-rate-full-link:hover{background:#F1F3F4}

@media(max-width:1280px){.gv-rate-page-layout{grid-template-columns:1fr}.gv-rate-page-side{grid-template-columns:repeat(3,minmax(0,1fr));position:static}.gv-quote-adjustment-grid{grid-template-columns:130px 170px minmax(190px,1fr)}.gv-quote-terms-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.gv-rate-page-hero{align-items:flex-start;flex-direction:column}.gv-rate-page-actions{justify-content:flex-start}.gv-rate-page-metrics{grid-template-columns:1fr 1fr}.gv-rate-page-metrics>div:nth-child(2){border-right:0}.gv-rate-page-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-rate-commandbar{grid-template-columns:1fr}.gv-rate-page-side{grid-template-columns:1fr}.gv-quote-adjustment-grid{grid-template-columns:1fr 1fr}.gv-quote-adjustment-grid .gv-field:last-child{grid-column:1/-1}.gv-quote-terms-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.gv-rate-page-hero h1{font-size:25px}.gv-rate-page-actions{width:100%}.gv-rate-page-actions .gv-btn{flex:1;justify-content:center}.gv-rate-page-metrics{grid-template-columns:1fr 1fr}.gv-rate-page-metrics>div{padding:13px}.gv-rate-page-metrics strong{font-size:18px}.gv-rate-commandbar{padding:7px}.gv-rate-page-filters{margin:0 -1px}.gv-rate-editor-grid{grid-template-columns:1fr}.gv-rate-margin-preview{flex-wrap:wrap}.gv-rate-margin-preview strong{margin-left:auto}.gv-rate-margin-preview small{flex-basis:100%}.gv-quote-commercial-controls{padding:16px}.gv-quote-commercial-head{flex-direction:column}.gv-quote-adjustment-grid,.gv-quote-terms-grid{grid-template-columns:1fr}.gv-quote-adjustment-grid .gv-field:last-child{grid-column:auto}.gv-quote-template-list button{grid-template-columns:24px minmax(0,1fr)}.gv-quote-template-list em{grid-column:2}.gv-approval-reviewer{grid-template-columns:1fr}.gv-approval-reviewer button{width:100%}}
@media(max-width:767px){
  .gv-quote-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .gv-quote-hero-actions>*{width:100%;min-width:0;justify-content:center;text-align:center}
}

/* ========================================================================== */
/* v0.22 · Settlement / Finance Deepening                                     */
/* ========================================================================== */
.gv-pay-ot{font-size:9.5px;color:#756C60;font-weight:690;white-space:nowrap}
.gv-tax-state{height:24px;border:0;border-radius:4px;padding:0 7px;font-size:7.5px;letter-spacing:.04em;font-weight:760;cursor:pointer}.gv-tax-state.clear{background:#EEF3F0;color:#587061}.gv-tax-state.review{background:#F5ECE8;color:#8B6254}.gv-tax-state:hover{filter:brightness(.98)}
.gv-finance-control{overflow:hidden}.gv-finance-state{height:22px;display:inline-flex;align-items:center;padding:0 7px;border-radius:4px;background:#F2EEE7;color:#806C4F;font-size:7.5px;letter-spacing:.09em;font-weight:800}.gv-finance-state.ready{background:#EAF1EC;color:#587061}
.gv-billing-state{padding:15px 16px;border-bottom:1px solid var(--gv-line-soft)}.gv-billing-state>span,.gv-finance-minihead>span{display:block;font-size:7.5px;letter-spacing:.11em;color:#9099A1;font-weight:780}.gv-billing-state>div{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:9px}.gv-billing-state button{height:31px;border:1px solid var(--gv-line);border-radius:5px;background:#FFF;font-size:8px;color:#69737C;cursor:pointer}.gv-billing-state button.active{background:#343B41;color:#FFF;border-color:#343B41}.gv-billing-state>small{display:block;margin-top:8px;font-size:8.5px;line-height:1.5;color:#89929A}
.gv-payout-batches{padding:14px 16px 16px}.gv-finance-minihead{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.gv-finance-minihead button{border:0;background:transparent;padding:2px 0;font-size:8px;color:#5F6D78;cursor:pointer}.gv-payout-batch-row{width:100%;display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;align-items:center;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;text-align:left;padding:10px 0;cursor:pointer}.gv-payout-batch-row:last-child{border-bottom:0}.gv-payout-batch-row>span{font-size:7.5px;color:#9AA2A9}.gv-payout-batch-row strong{display:block;font-size:9.5px;color:#4E575F}.gv-payout-batch-row small{display:block;font-size:8px;color:#929AA2;margin-top:2px}.gv-payout-batch-row em{font-style:normal;font-size:7px;letter-spacing:.06em;color:#856F52;background:#F4EFE8;border-radius:4px;padding:3px 5px}.gv-payout-batch-row.done em{color:#587061;background:#EBF1ED}
.gv-payout-batch-id{margin:18px 22px 0;padding:13px 14px;border:1px solid var(--gv-line);border-radius:7px;background:#F8F9FA}.gv-payout-batch-id span{display:block;font-size:7.5px;letter-spacing:.1em;color:#949CA3;font-weight:780}.gv-payout-batch-id strong{display:block;margin-top:5px;font-size:12px;color:#485159}.gv-payout-batch-id small{display:block;margin-top:3px;font-size:8.5px;color:#89929A}
.gv-profit-drawer{width:min(500px,calc(100vw - 18px))}.gv-profit-drawer .gv-drawer-body{flex:1;min-height:0;overflow:auto}.gv-profit-waterfall{border-top:1px solid var(--gv-line);margin-bottom:18px}.gv-profit-waterfall>div{min-height:67px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;border-bottom:1px solid var(--gv-line-soft);padding:11px 3px}.gv-profit-waterfall span{font-size:8px;letter-spacing:.09em;color:#8E979F;font-weight:760}.gv-profit-waterfall strong{font-size:12px;color:#58616A;font-weight:670}.gv-profit-waterfall small{grid-column:1/-1;font-size:8.5px;color:#929AA2}.gv-profit-waterfall .revenue strong{font-size:15px;color:#394047}.gv-profit-waterfall .profit{margin-top:5px;padding:16px 10px;background:#F3F6F4;border:1px solid #DDE5DF;border-radius:7px}.gv-profit-waterfall .profit strong{font-size:18px;color:#52675A}.gv-profit-waterfall .profit small{color:#718078}
.gv-ledger-modal .gv-modal-foot{flex-wrap:wrap}.gv-ledger-modal .gv-btn{white-space:nowrap}
@media(max-width:1499px){.gv-settlement-table{min-width:1080px}}
@media(max-width:767px){.gv-settlement-hero-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:7px}.gv-settlement-hero-actions>*{width:100%;min-width:0;justify-content:center;text-align:center}.gv-billing-state>div{grid-template-columns:1fr}.gv-payout-summary{grid-template-columns:1fr 1fr}.gv-payout-summary>div{min-height:74px}.gv-payout-summary>div:last-child{grid-column:1/-1;border-top:1px solid var(--gv-line-soft)}.gv-ledger-modal .gv-modal-foot{justify-content:stretch}.gv-ledger-modal .gv-modal-foot .gv-btn{flex:1}}

/* ========================================================================== */
/* v0.23 · Project Workspace Deepening                                        */
/* ========================================================================== */
.gv-project-hub-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:8px 2px 20px}.gv-project-hub-hero h1{margin:7px 0 0;font-size:30px;line-height:1.08;letter-spacing:-.035em;color:#30363C;font-weight:620}.gv-project-hub-hero p{margin:9px 0 0;max-width:760px;font-size:12px;line-height:1.65;color:#6F7982}.gv-project-hub-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.gv-project-hub-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:9px;background:#FFF;overflow:hidden;margin-bottom:14px}.gv-project-hub-metrics>div{padding:16px 18px;border-right:1px solid var(--gv-line-soft)}.gv-project-hub-metrics>div:last-child{border-right:0}.gv-project-hub-metrics span{display:block;font-size:8px;letter-spacing:.12em;color:#929AA2;font-weight:760}.gv-project-hub-metrics strong{display:block;margin-top:7px;font-size:21px;color:#384047;font-weight:620}.gv-project-hub-metrics small{display:block;margin-top:4px;font-size:9px;color:#808A92}
.gv-project-hub-commandbar{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.4fr) auto;align-items:center;gap:10px;border:1px solid var(--gv-line);border-radius:9px;background:#FFF;padding:9px;margin-bottom:14px}.gv-project-hub-search{height:40px;display:flex;align-items:center;gap:8px;border:1px solid var(--gv-line);border-radius:6px;background:#FAFBFC;padding:0 11px}.gv-project-hub-search svg{width:14px;height:14px;color:#7A858E}.gv-project-hub-search input{width:100%;border:0;outline:0;background:transparent;font-size:10.5px}.gv-project-hub-filters{display:flex;gap:3px;overflow:auto;scrollbar-width:none}.gv-project-hub-filters::-webkit-scrollbar{display:none}.gv-project-hub-filters button{height:34px;border:0;border-radius:5px;background:transparent;padding:0 10px;white-space:nowrap;font-size:9.5px;color:#737D86;cursor:pointer}.gv-project-hub-filters button span{margin-left:3px;font-size:8.5px;color:#99A1A8}.gv-project-hub-filters button.active{background:#E9EDF0;color:#384047;font-weight:700}.gv-project-owner{display:flex;align-items:center;gap:7px}.gv-project-owner span{font-size:7.5px;letter-spacing:.1em;color:#959DA4;font-weight:780}.gv-project-owner select{height:34px;border:1px solid var(--gv-line);border-radius:5px;background:#FAFBFC;padding:0 8px;font-size:9.5px}
.gv-project-hub-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px;align-items:start}.gv-project-hub-main{overflow:hidden}.gv-project-board-head{display:flex;align-items:flex-end;gap:4px}.gv-project-board-head span{font-size:13px;color:#4B555D;font-weight:700}.gv-project-board-head small{font-size:8px;color:#969EA5;padding-bottom:1px}.gv-project-board{padding:0 12px}.gv-project-card[hidden]{display:none!important}.gv-project-card{display:grid;grid-template-columns:78px minmax(240px,1.45fr) 150px 170px 70px;gap:18px;align-items:center;min-height:128px;border-bottom:1px solid var(--gv-line-soft);padding:14px 4px}.gv-project-card:last-child{border-bottom:0}.gv-project-card:hover{background:#FBFCFC}.gv-project-card.priority{box-shadow:inset 3px 0 0 #B5A387}.gv-project-card.archived{opacity:.65}.gv-project-card-date{text-align:center;border-right:1px solid var(--gv-line-soft);padding-right:16px}.gv-project-card-date>span{display:block;font-size:7.5px;letter-spacing:.12em;color:#929AA2;font-weight:780}.gv-project-card-date>strong{display:block;margin-top:3px;font-size:25px;line-height:1;color:#384047;font-weight:620}.gv-project-card-date>small{display:block;margin-top:6px;font-size:8px;color:#858E96}.gv-project-card-date.done strong{color:#777F86}.gv-project-card-main{min-width:0}.gv-project-card-top{display:flex;align-items:center;gap:8px}.gv-project-card-top>span{font-size:7.5px;letter-spacing:.09em;color:#7B858E;font-weight:780}.gv-project-card-top>em{font-style:normal;font-size:7.5px;color:#9AA2A9}.gv-project-card h2{margin:6px 0 0;font-size:13px;color:#3E464D;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-project-card-main>p{margin:4px 0 0;font-size:9px;color:#808991}.gv-project-card-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:9px}.gv-project-card-tags span{display:inline-flex;padding:3px 5px;border-radius:4px;background:#F0F2F3;font-size:7px;color:#6E7880}.gv-project-card-tags span.risk{background:#F4ECE8;color:#8B6455}.gv-project-card-progress>span,.gv-project-card-next>span{display:block;font-size:7.5px;letter-spacing:.1em;color:#969EA5;font-weight:770}.gv-project-card-progress>strong,.gv-project-card-next>strong{display:block;margin-top:5px;font-size:10.5px;color:#4B555D}.gv-project-card-progress>i{display:block;height:4px;border-radius:99px;background:#ECEFF1;overflow:hidden;margin-top:7px}.gv-project-card-progress>i>b{display:block;height:100%;background:#77857D}.gv-project-card-progress>small,.gv-project-card-next>small{display:block;margin-top:4px;font-size:8px;color:#89929A}.gv-project-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}.gv-project-card-actions a,.gv-project-card-actions button{height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gv-line);border-radius:5px;background:#FFF;padding:0 9px;font-size:8px;color:#59646D;text-decoration:none;cursor:pointer}.gv-project-card-actions button{width:30px;padding:0}.gv-project-card-actions a:hover,.gv-project-card-actions button:hover{background:#F2F4F5}.gv-project-empty{padding:60px 20px;text-align:center}.gv-project-empty strong{display:block;font-size:12px;color:#505960}.gv-project-empty small{display:block;margin-top:5px;font-size:9px;color:#929AA2}
.gv-project-hub-side{display:grid;gap:14px;position:sticky;top:88px}.gv-project-saved-views{padding:6px}.gv-project-saved-views button{width:100%;display:grid;grid-template-columns:23px minmax(0,1fr) auto;gap:9px;align-items:center;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;text-align:left;padding:11px 9px;cursor:pointer}.gv-project-saved-views button:last-child{border-bottom:0}.gv-project-saved-views button.active{background:#F2F4F5}.gv-project-saved-views button>span{font-size:7.5px;color:#9AA2A9}.gv-project-saved-views strong{display:block;font-size:10px;color:#4D565E}.gv-project-saved-views small{display:block;margin-top:3px;font-size:8px;color:#9098A0}.gv-project-saved-views em{font-style:normal;font-size:8px;color:#7E8890}.gv-project-rules{padding:6px 16px 14px}.gv-project-rules>div{display:grid;grid-template-columns:23px 1fr;gap:8px;padding:12px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-project-rules>div:last-child{border-bottom:0}.gv-project-rules>div>span{font-size:7.5px;color:#9AA2A9}.gv-project-rules strong{display:block;font-size:9.5px;color:#505960}.gv-project-rules small{display:block;margin-top:3px;font-size:8px;line-height:1.45;color:#8D959D}
.gv-project-action-menu{position:fixed;z-index:160;width:154px;border:1px solid var(--gv-line-strong);border-radius:7px;background:#FFF;padding:5px;box-shadow:0 16px 34px rgba(29,35,40,.12);display:none}.gv-project-action-menu.open{display:block}.gv-project-action-menu button{width:100%;height:34px;border:0;border-radius:4px;background:transparent;text-align:left;padding:0 9px;font-size:9px;color:#59636C;cursor:pointer}.gv-project-action-menu button:hover{background:#F2F4F5}.gv-project-wizard{width:min(680px,calc(100vw - 24px))}.gv-project-wizard-steps{display:flex;align-items:center;padding:15px 20px;border-bottom:1px solid var(--gv-line)}.gv-project-wizard-steps button{display:flex;align-items:center;gap:6px;border:0;background:transparent;font-size:8.5px;color:#8A939B}.gv-project-wizard-steps button>span{width:22px;height:22px;display:grid;place-items:center;border:1px solid #DCE1E4;border-radius:50%;font-size:7px}.gv-project-wizard-steps button.active{color:#3E474E;font-weight:700}.gv-project-wizard-steps button.active>span{background:#343B41;border-color:#343B41;color:#FFF}.gv-project-wizard-steps>i{flex:1;height:1px;background:#E1E5E8}.gv-project-wizard-body{min-height:250px}.gv-project-wizard-body>section{display:grid;gap:13px}.gv-project-wizard-review{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid var(--gv-line);border-radius:8px;background:#F9FAFB}.gv-project-wizard-review>span{font-size:7.5px;letter-spacing:.12em;color:#9099A1;font-weight:780}.gv-project-wizard-review>strong{margin-top:10px;font-size:18px;color:#3E464D}.gv-project-wizard-review>p{margin:6px 0 0;font-size:9.5px;color:#7B858E}.gv-project-wizard-review>div{display:flex;gap:5px;margin-top:16px}.gv-project-wizard-review em{font-style:normal;padding:4px 6px;border-radius:4px;background:#EEF1F2;font-size:7.5px;color:#6E7880}
.gv-project-workspace-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:9px;background:#FFF;margin-bottom:16px;overflow:hidden}.gv-project-workspace-strip>a{min-height:78px;padding:14px 18px;border-right:1px solid var(--gv-line-soft);text-decoration:none}.gv-project-workspace-strip>a:last-child{border-right:0}.gv-project-workspace-strip span{display:block;font-size:7.5px;letter-spacing:.11em;color:#959DA4;font-weight:780}.gv-project-workspace-strip strong{display:block;margin-top:5px;font-size:16px;color:#414950}.gv-project-workspace-strip small{display:block;margin-top:3px;font-size:8.5px;color:#89929A}
.gv-project-files-panel{grid-column:span 7;overflow:hidden}.gv-project-notes-panel{grid-column:span 5;overflow:hidden}.gv-project-file-drop{margin:12px 16px;border:1px dashed #CDD4D8;border-radius:7px;min-height:68px;display:flex;align-items:center;justify-content:center;gap:10px;background:#FAFBFC;cursor:pointer}.gv-project-file-drop>span{font-size:18px;color:#929AA2}.gv-project-file-drop strong{display:block;font-size:9.5px;color:#5B656D}.gv-project-file-drop small{display:block;margin-top:2px;font-size:8px;color:#959DA4}.gv-project-file-list{padding:0 16px 14px}.gv-project-file-list button{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;text-align:left;padding:11px 0;cursor:pointer}.gv-project-file-list button:last-child{border-bottom:0}.gv-project-file-list button>span{width:34px;height:25px;display:grid;place-items:center;border-radius:4px;background:#EEF1F2;font-size:7px;color:#69747C;font-weight:780}.gv-project-file-list button>span.pdf{background:#F3ECE9;color:#895F51}.gv-project-file-list button>span.zip{background:#EEEFF4;color:#626A84}.gv-project-file-list strong{display:block;font-size:9.5px;color:#4C555D;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-project-file-list small{display:block;margin-top:3px;font-size:8px;color:#929AA2}.gv-project-file-list em{font-style:normal;font-size:7.5px;color:#7D878F}
.gv-project-note-composer{padding:14px 16px;border-bottom:1px solid var(--gv-line-soft)}.gv-project-note-composer textarea{width:100%;resize:vertical;border:1px solid var(--gv-line);border-radius:6px;background:#FAFBFC;padding:9px 10px;font:inherit;font-size:9.5px;outline:0}.gv-project-note-composer textarea:focus{border-color:#AAB5BB;background:#FFF}.gv-project-note-composer>div{display:flex;align-items:center;justify-content:space-between;margin-top:7px}.gv-project-note-composer>div>span{font-size:7.5px;color:#969EA5}.gv-project-note-composer button{height:29px;border:0;border-radius:5px;background:#343B41;color:#FFF;padding:0 10px;font-size:8px;cursor:pointer}.gv-project-notes-list{padding:5px 16px 14px}.gv-project-notes-list>div{display:grid;grid-template-columns:38px 1fr;gap:9px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-project-notes-list>div:last-child{border-bottom:0}.gv-project-notes-list>div>span{font-size:8px;color:#929AA2}.gv-project-notes-list strong{display:block;font-size:9.5px;color:#4D565E}.gv-project-notes-list small{display:block;margin-top:3px;font-size:8px;line-height:1.5;color:#8E969E}
@media(max-width:1280px){.gv-project-hub-layout{grid-template-columns:1fr}.gv-project-hub-side{grid-template-columns:1fr 1fr;position:static}.gv-project-card{grid-template-columns:68px minmax(220px,1fr) 130px 150px 65px}}
@media(max-width:960px){.gv-project-hub-commandbar{grid-template-columns:1fr}.gv-project-hub-side{grid-template-columns:1fr}.gv-project-card{grid-template-columns:62px minmax(0,1fr) 115px 62px}.gv-project-card-next{display:none}.gv-project-files-panel,.gv-project-notes-panel{grid-column:span 12}.gv-project-workspace-strip{grid-template-columns:1fr 1fr}.gv-project-workspace-strip>a:nth-child(2){border-right:0}.gv-project-workspace-strip>a:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:640px){.gv-project-hub-hero{flex-direction:column;align-items:flex-start}.gv-project-hub-hero h1{font-size:25px}.gv-project-hub-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.gv-project-hub-actions>*{width:100%;justify-content:center;text-align:center}.gv-project-hub-metrics{grid-template-columns:1fr 1fr}.gv-project-hub-metrics>div:nth-child(2){border-right:0}.gv-project-hub-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-project-board{padding:0 9px}.gv-project-card{grid-template-columns:54px minmax(0,1fr) 52px;gap:10px;padding:12px 0}.gv-project-card-progress,.gv-project-card-next{display:none}.gv-project-card-date{padding-right:8px}.gv-project-card h2{font-size:11px}.gv-project-card-actions a{display:none}.gv-project-wizard-steps{padding:12px}.gv-project-wizard-steps button{font-size:0}.gv-project-wizard-steps button>span{font-size:7px}.gv-project-wizard-review>div{flex-wrap:wrap;justify-content:center}.gv-project-workspace-strip{grid-template-columns:1fr 1fr}.gv-project-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.gv-project-actions>*{width:100%;justify-content:center;text-align:center}.gv-project-file-list button{grid-template-columns:34px minmax(0,1fr)}.gv-project-file-list em{grid-column:2}.gv-project-activity-row{grid-template-columns:44px 12px minmax(0,1fr)!important}.gv-project-activity-row>span{display:none}}

/* v0.24 — Automation / Kakao Prototype */
.gv-automation-hero{display:flex;justify-content:space-between;gap:34px;align-items:flex-end;margin-bottom:14px;padding:28px 2px 22px}.gv-automation-hero h1{margin:7px 0 7px;font-family:Georgia,'Times New Roman',serif;font-size:31px;line-height:1.08;color:#31383D;font-weight:600;letter-spacing:-.025em}.gv-automation-hero p{margin:0;max-width:780px;font-size:10px;line-height:1.75;color:#7E878F}.gv-automation-hero-actions{display:flex;align-items:center;gap:8px}.gv-channel-state{min-width:230px;height:48px;border:1px solid var(--gv-line);background:#FFF;border-radius:7px;display:flex;align-items:center;gap:9px;padding:0 12px}.gv-channel-state>span{width:7px;height:7px;border-radius:50%;background:#B78773;box-shadow:0 0 0 4px #F5ECE8}.gv-channel-state strong{display:block;font-size:8px;letter-spacing:.06em;color:#59636B}.gv-channel-state small{display:block;margin-top:3px;font-size:7.5px;color:#999FA5}
.gv-automation-metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gv-line);border-radius:7px;background:#FFF;overflow:hidden;margin-bottom:12px}.gv-automation-metrics>div{padding:16px 17px;border-right:1px solid var(--gv-line-soft)}.gv-automation-metrics>div:last-child{border-right:0}.gv-automation-metrics span{display:block;font-size:7px;letter-spacing:.13em;color:#949CA3;font-weight:780}.gv-automation-metrics strong{display:block;margin-top:6px;font-size:19px;color:#454E55;font-weight:650}.gv-automation-metrics small{display:block;margin-top:4px;font-size:8px;color:#8A939A}
.gv-automation-tabs{display:flex;align-items:center;gap:4px;border:1px solid var(--gv-line);border-radius:7px;background:#FFF;padding:5px;margin-bottom:12px}.gv-automation-tabs button{height:34px;border:0;background:transparent;border-radius:5px;padding:0 13px;font-size:8.5px;color:#778189;cursor:pointer}.gv-automation-tabs button span{display:inline-flex;min-width:17px;height:17px;align-items:center;justify-content:center;margin-left:6px;border-radius:99px;background:#EEF0F2;font-size:7px;color:#7D868D}.gv-automation-tabs button.active{background:#E8EBED;color:#3F474D;font-weight:720}.gv-automation-tabs button.active span{background:#FFF}.gv-automation-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:12px;align-items:start}.gv-automation-flow-list{display:grid;gap:9px}.gv-automation-flow{display:grid;grid-template-columns:58px minmax(0,1fr) 140px 105px;gap:16px;align-items:center;padding:17px 16px;min-height:150px;position:relative;overflow:hidden}.gv-automation-flow.priority{box-shadow:inset 3px 0 0 #B5A387}.gv-automation-flow-index{text-align:center}.gv-automation-flow-index span{display:block;font-family:Georgia,serif;font-size:22px;color:#555E65}.gv-automation-flow-index i{display:inline-flex;margin-top:6px;padding:3px 5px;border-radius:3px;background:#EDF1EE;color:#6B7B70;font-size:6.5px;font-style:normal;letter-spacing:.07em}.gv-automation-flow-main{min-width:0}.gv-automation-flow-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.gv-automation-flow-title span{display:block;font-size:6.8px;letter-spacing:.13em;color:#9AA1A7;font-weight:780}.gv-automation-flow-title h2{margin:4px 0 0;font-size:12px;color:#434C53;font-weight:700}.gv-automation-flow-title>em{font-style:normal;font-size:7px;color:#8B735F;background:#F5F0EC;border-radius:4px;padding:4px 6px;white-space:nowrap}.gv-automation-flow-main>p{margin:8px 0 0;font-size:8.5px;line-height:1.55;color:#808990}.gv-automation-flow-chain{display:flex;align-items:center;gap:5px;margin-top:12px;min-width:0}.gv-automation-flow-chain>span{display:flex;align-items:center;gap:5px;border:1px solid var(--gv-line-soft);background:#FAFBFB;border-radius:5px;padding:6px 7px;min-width:0;font-size:7px;color:#69737B;white-space:nowrap}.gv-automation-flow-chain b{font-size:6px;letter-spacing:.08em;color:#9AA2A8}.gv-automation-flow-chain>i{font-style:normal;font-size:8px;color:#AAB0B5}.gv-automation-flow-meta{border-left:1px solid var(--gv-line-soft);padding-left:14px}.gv-automation-flow-meta span{display:block;font-size:6.5px;letter-spacing:.11em;color:#9AA1A7}.gv-automation-flow-meta strong{display:block;margin-top:6px;font-size:9.5px;color:#515B63}.gv-automation-flow-meta small{display:block;margin-top:4px;font-size:7.5px;color:#90989F}.gv-automation-flow-actions{display:flex;flex-direction:column;gap:5px}.gv-automation-flow-actions button,.gv-automation-flow-actions a{height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--gv-line);border-radius:5px;background:#FFF;color:#59636B;text-decoration:none;font-size:7.5px;cursor:pointer}.gv-automation-flow-actions button{background:#424A50;color:#FFF;border-color:#424A50}.gv-automation-flow-actions a:hover{background:#F5F6F6}
.gv-automation-guardrails{display:grid;gap:10px;position:sticky;top:74px}.gv-automation-gates{padding:0 14px 10px}.gv-automation-gates>div{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:9px;align-items:center;padding:12px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-automation-gates>div:last-child{border-bottom:0}.gv-automation-gates>div>span{font-family:Georgia,serif;font-size:9px;color:#9CA3A8}.gv-automation-gates p{margin:0}.gv-automation-gates strong{display:block;font-size:8.5px;color:#566068}.gv-automation-gates small{display:block;margin-top:3px;font-size:7px;line-height:1.35;color:#949BA1}.gv-automation-gates em{font-style:normal;font-size:6.5px;color:#728077;background:#EFF2F0;padding:4px 5px;border-radius:3px}.gv-automation-queue-card>div:last-child{padding:0 10px 10px}.gv-automation-queue-card #gvReviewQueueList button{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center;text-align:left;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;padding:11px 5px;cursor:pointer}.gv-automation-queue-card #gvReviewQueueList button:last-child{border-bottom:0}.gv-automation-queue-card #gvReviewQueueList button>span{font-size:6.5px;color:#9AA1A6}.gv-automation-queue-card #gvReviewQueueList strong{display:block;font-size:8px;color:#566068}.gv-automation-queue-card #gvReviewQueueList small{display:block;margin-top:3px;font-size:6.8px;color:#969DA3}.gv-automation-queue-card #gvReviewQueueList em{font-style:normal;font-size:6px;color:#8D6E5B;background:#F4ECE7;padding:4px;border-radius:3px}.gv-automation-queue-card #gvReviewQueueList button.approved em{color:#6A786F;background:#EAF0EC}
.gv-automation-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gv-message-template{padding:20px}.gv-message-template>div:first-child span{display:block;font-size:7px;letter-spacing:.12em;color:#979FA6}.gv-message-template>div:first-child strong{display:block;margin-top:6px;font-size:13px;color:#485159}.gv-message-template>div:first-child small{display:block;margin-top:4px;font-size:7.5px;color:#9AA1A7}.gv-message-template>p{min-height:72px;margin:16px 0 10px;padding:14px;border:1px solid var(--gv-line-soft);border-radius:6px;background:#FAFBFB;font-size:9px;line-height:1.7;color:#69747C;white-space:pre-line}.gv-message-template>div:nth-of-type(2){display:flex;gap:5px;flex-wrap:wrap}.gv-message-template>div:nth-of-type(2) em{font-style:normal;font-size:6.5px;color:#78828A;background:#EEF0F1;border-radius:3px;padding:4px 5px}.gv-message-template>button,.gv-message-template>a{display:inline-flex;margin-top:16px;height:31px;align-items:center;justify-content:center;padding:0 10px;border:1px solid var(--gv-line);border-radius:5px;background:#FFF;color:#59636B;text-decoration:none;font-size:7.5px;cursor:pointer}.gv-message-template.muted{opacity:.78}
.gv-response-panel,.gv-delivery-panel{overflow:hidden}.gv-response-table{padding:0 12px 12px}.gv-response-head,.gv-response-row{display:grid;grid-template-columns:1.2fr 1.1fr 90px 90px 100px;gap:10px;align-items:center}.gv-response-head{height:35px;border-bottom:1px solid var(--gv-line);font-size:6.8px;letter-spacing:.1em;color:#9AA2A8}.gv-response-row{min-height:61px;border-bottom:1px solid var(--gv-line-soft);font-size:8px;color:#6F7981}.gv-response-row:last-child{border-bottom:0}.gv-response-row strong{display:block;font-size:8.8px;color:#505A62}.gv-response-row small{display:block;margin-top:3px;font-size:7px;color:#969DA3}.gv-response-row em{font-style:normal;justify-self:start;padding:4px 7px;border-radius:99px;background:#EFF1F2;color:#7D868D}.gv-response-row em.yes{background:#EAF0EC;color:#69786E}.gv-response-row em.no{background:#F4EAE7;color:#8D675A}.gv-response-row button{height:29px;border:1px solid var(--gv-line);border-radius:5px;background:#FFF;color:#5D6870;font-size:7px;cursor:pointer}.gv-response-row button:disabled{opacity:.55}.gv-delivery-list{padding:0 14px 12px}.gv-delivery-list>div{display:grid;grid-template-columns:70px minmax(0,1fr) 120px 100px;gap:12px;align-items:center;min-height:55px;border-bottom:1px solid var(--gv-line-soft)}.gv-delivery-list>div:last-child{border-bottom:0}.gv-delivery-list>div>span{font-size:7.5px;color:#929AA1}.gv-delivery-list strong{font-size:8.8px;color:#515B63}.gv-delivery-list small{font-size:7.5px;color:#929AA1}.gv-delivery-list em{justify-self:end;font-style:normal;font-size:6.5px;color:#738077;background:#EDF1EE;padding:4px 6px;border-radius:3px}
.gv-automation-drawer{position:fixed;z-index:110;top:0;right:0;width:min(520px,94vw);height:100vh;background:#FFF;border-left:1px solid var(--gv-line);box-shadow:-12px 0 40px rgba(25,31,35,.09);transform:translateX(102%);transition:transform .22s ease;display:flex;flex-direction:column}.gv-automation-drawer.open{transform:translateX(0)}.gv-automation-drawer-head{min-height:90px;padding:20px 22px;border-bottom:1px solid var(--gv-line);display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.gv-automation-drawer-head span{display:block;font-size:6.5px;letter-spacing:.13em;color:#989FA5}.gv-automation-drawer-head h2{margin:6px 0 0;font-size:16px;color:#414A51}.gv-automation-drawer-head p{margin:4px 0 0;font-size:8px;color:#8B939A}.gv-automation-drawer-body{flex:1;min-height:0;overflow:auto;padding:18px 22px}.gv-automation-drawer-foot{min-height:66px;padding:12px 18px;border-top:1px solid var(--gv-line);display:flex;justify-content:flex-end;gap:6px;background:#FFF}.gv-automation-run-step{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:center;padding:13px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-automation-run-step>span{font-family:Georgia,serif;font-size:10px;color:#9AA1A7}.gv-automation-run-step strong{display:block;font-size:8.5px;color:#535D65}.gv-automation-run-step small{display:block;margin-top:4px;font-size:7.5px;line-height:1.45;color:#8A9299}.gv-automation-run-step em{font-style:normal;font-size:6.5px;color:#6D7B72;background:#EDF1EE;padding:4px 5px;border-radius:3px}.gv-automation-exclusions{padding:12px;border:1px solid var(--gv-line-soft);border-radius:6px;background:#FAFBFB;margin:12px 0 16px}.gv-automation-exclusions>span{display:block;font-size:6.5px;letter-spacing:.1em;color:#959DA3}.gv-automation-exclusions>div{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.gv-automation-exclusions em{font-style:normal;font-size:6.8px;color:#7D858C;background:#EEF0F1;padding:4px 5px;border-radius:3px}.gv-automation-preview-recipient{margin-top:10px;padding:12px;border-left:2px solid #B6A48B;background:#FAF8F5}.gv-automation-preview-recipient span{display:block;font-size:6.3px;letter-spacing:.1em;color:#9A8B77}.gv-automation-preview-recipient p{margin:6px 0 0;font-size:8px;line-height:1.55;color:#666F76}.gv-automation-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.gv-automation-review-grid label>span{display:block;margin-bottom:5px;font-size:6.5px;letter-spacing:.09em;color:#949CA3}.gv-automation-review-grid select{width:100%;height:36px;border:1px solid var(--gv-line);border-radius:5px;background:#FFF;padding:0 9px;font-size:8px;color:#59636B}.gv-automation-check{display:flex;gap:9px;align-items:flex-start;margin-top:15px;padding:13px;border:1px solid var(--gv-line);border-radius:6px;cursor:pointer}.gv-automation-check input{margin-top:2px}.gv-automation-check strong{display:block;font-size:8.5px;color:#505A62}.gv-automation-check small{display:block;margin-top:4px;font-size:7.3px;line-height:1.45;color:#8B949A}.gv-template-edit-modal{max-width:590px}
@media(max-width:1280px){.gv-automation-layout{grid-template-columns:1fr}.gv-automation-guardrails{grid-template-columns:1fr 1fr;position:static}.gv-automation-flow{grid-template-columns:52px minmax(0,1fr) 130px 100px}.gv-automation-flow-chain{flex-wrap:wrap}.gv-automation-flow-chain>i{display:none}}
@media(max-width:900px){.gv-automation-hero{flex-direction:column;align-items:flex-start}.gv-automation-hero-actions{width:100%;justify-content:space-between}.gv-automation-metrics{grid-template-columns:1fr 1fr}.gv-automation-metrics>div:nth-child(2){border-right:0}.gv-automation-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-automation-flow{grid-template-columns:44px minmax(0,1fr) 90px}.gv-automation-flow-meta{display:none}.gv-automation-template-grid{grid-template-columns:1fr}.gv-response-head{display:none}.gv-response-row{grid-template-columns:1fr 110px 80px}.gv-response-row>span:nth-of-type(1){display:none}.gv-response-row>span:nth-of-type(2){display:none}.gv-delivery-list>div{grid-template-columns:55px minmax(0,1fr) 90px}.gv-delivery-list small{display:none}}
@media(max-width:640px){.gv-automation-hero{padding-top:18px}.gv-automation-hero h1{font-size:25px}.gv-automation-hero-actions{display:grid;grid-template-columns:1fr}.gv-channel-state{width:100%}.gv-automation-hero-actions>.gv-btn{width:100%;justify-content:center}.gv-automation-tabs{overflow:auto}.gv-automation-tabs button{white-space:nowrap}.gv-automation-guardrails{grid-template-columns:1fr}.gv-automation-flow{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:14px 11px}.gv-automation-flow-actions{grid-column:2;flex-direction:row}.gv-automation-flow-actions>*{flex:1}.gv-automation-flow-title{display:block}.gv-automation-flow-title>em{display:inline-flex;margin-top:6px}.gv-automation-flow-chain>span{font-size:6.5px;white-space:normal}.gv-response-table{padding:0 8px 8px}.gv-response-row{grid-template-columns:minmax(0,1fr) 55px 84px;gap:7px}.gv-response-row button{font-size:6.5px}.gv-delivery-list>div{grid-template-columns:47px minmax(0,1fr) 72px;gap:7px}.gv-delivery-list em{font-size:5.8px}.gv-automation-review-grid{grid-template-columns:1fr}.gv-automation-drawer-head,.gv-automation-drawer-body{padding-left:16px;padding-right:16px}}

/* v0.25 — SaaS Foundation / Workspace Settings */
.gv-workspace-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:28px 2px 22px}.gv-workspace-hero h1{margin:7px 0 7px;font-family:Georgia,'Times New Roman',serif;font-size:31px;line-height:1.08;color:#30373C;font-weight:600;letter-spacing:-.025em}.gv-workspace-hero p{margin:0;max-width:790px;font-size:10px;line-height:1.75;color:#7E878E}.gv-workspace-hero-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.gv-foundation-badge{height:34px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--gv-line);border-radius:5px;background:#FFF;font-size:7px;letter-spacing:.08em;color:#7D858C;font-weight:760}.gv-foundation-badge i{width:6px;height:6px;border-radius:50%;background:#B7A488}.gv-workspace-hero-actions .gv-btn.dirty{box-shadow:0 0 0 2px rgba(183,164,136,.23)}
.gv-workspace-context{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gv-line);border-radius:7px;background:#FFF;overflow:hidden;margin-bottom:12px}.gv-workspace-context>div{padding:15px 17px;border-right:1px solid var(--gv-line-soft)}.gv-workspace-context>div:last-child{border-right:0}.gv-workspace-context span{display:block;font-size:6.7px;letter-spacing:.12em;color:#969EA4;font-weight:770}.gv-workspace-context strong{display:block;margin-top:5px;font-size:11px;color:#4B555C}.gv-workspace-context small{display:block;margin-top:4px;font-size:7.5px;color:#959CA2}
.gv-workspace-tabs{display:flex;gap:4px;padding:5px;border:1px solid var(--gv-line);border-radius:7px;background:#FFF;margin-bottom:12px}.gv-workspace-tabs button{height:34px;border:0;border-radius:5px;background:transparent;padding:0 13px;font-size:8.5px;color:#778189;cursor:pointer}.gv-workspace-tabs button.active{background:#E8EBED;color:#40484E;font-weight:720}.gv-workspace-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:12px;align-items:start}.gv-workspace-form-body{padding:18px}.gv-workspace-form-body .gv-form-row{margin-bottom:10px}.gv-workspace-form-body>.gv-field{margin-top:2px}.gv-environment-list{padding:0 14px 11px}.gv-environment-list>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:59px;border-bottom:1px solid var(--gv-line-soft)}.gv-environment-list>div:last-child{border-bottom:0}.gv-environment-list>div>span{display:flex;width:29px;height:29px;border:1px solid var(--gv-line-soft);border-radius:5px;align-items:center;justify-content:center;font-size:6px;color:#858D94;background:#FAFBFB}.gv-environment-list p{margin:0}.gv-environment-list strong{display:block;font-size:8.4px;color:#556068}.gv-environment-list small{display:block;margin-top:3px;font-size:7px;color:#979EA4}.gv-environment-list em{font-style:normal;font-size:6px;color:#8B7163;background:#F4ECE8;border-radius:3px;padding:4px 5px}.gv-environment-list em.ready{color:#69786E;background:#EAF0EC}
.gv-governance-list{padding:0 17px 12px}.gv-governance-list>label{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:16px;align-items:center;min-height:72px;border-bottom:1px solid var(--gv-line-soft)}.gv-governance-list>label:last-child{border-bottom:0}.gv-governance-list strong{display:block;font-size:9px;color:#515B63}.gv-governance-list small{display:block;margin-top:4px;font-size:7.4px;line-height:1.45;color:#929AA0}.gv-governance-list select{width:100%;height:35px;border:1px solid var(--gv-line);border-radius:5px;background:#FFF;padding:0 8px;font-size:8px;color:#59636B}.gv-role-baseline{padding:0 14px}.gv-role-baseline>div{display:grid;grid-template-columns:90px 30px minmax(0,1fr);gap:8px;align-items:center;min-height:48px;border-bottom:1px solid var(--gv-line-soft)}.gv-role-baseline span{font-size:6.5px;letter-spacing:.08em;color:#878F96}.gv-role-baseline strong{font-size:10px;color:#4E585F}.gv-role-baseline small{font-size:7px;color:#969DA3}.gv-workspace-invite{margin:12px 14px 14px;padding:12px;display:flex;align-items:center;gap:10px;border:1px dashed var(--gv-line-strong);border-radius:6px;text-decoration:none;background:#FAFBFB}.gv-workspace-invite>span{font-size:17px;color:#838C93}.gv-workspace-invite strong{display:block;font-size:8.5px;color:#535D65}.gv-workspace-invite small{display:block;margin-top:3px;font-size:7px;color:#969DA3}
.gv-architecture-intro{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:16px;align-items:end;padding:22px;border:1px solid var(--gv-line);border-radius:7px;background:#FFF;margin-bottom:10px}.gv-architecture-intro>div:first-child>span{display:block;font-size:6.8px;letter-spacing:.12em;color:#969EA4}.gv-architecture-intro h2{margin:6px 0 6px;font-family:Georgia,serif;font-size:22px;font-weight:600;color:#424A50}.gv-architecture-intro p{margin:0;max-width:690px;font-size:8.5px;line-height:1.65;color:#7F888F}.gv-architecture-laws{display:grid;grid-template-columns:1fr 1fr;gap:5px}.gv-architecture-laws span{padding:8px 9px;border:1px solid var(--gv-line-soft);border-radius:5px;background:#FAFBFB;font-size:7px;color:#68737B}.gv-entity-map{padding:22px;border:1px solid var(--gv-line);border-radius:7px;background:#FFF;text-align:center}.gv-entity-map>i{display:block;margin:8px 0;font-style:normal;font-size:12px;color:#A5ADB3}.gv-entity-layer{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gv-entity-layer.two{grid-template-columns:1fr 1fr}.gv-entity-card{padding:14px;border:1px solid var(--gv-line);border-radius:6px;background:#FBFCFC;text-align:left}.gv-entity-card.root{max-width:420px;margin:0 auto;background:#F7F5F2;border-color:#E1DBD2}.gv-entity-card.project{max-width:760px;margin:0 auto;background:#F2F4F3}.gv-entity-card span{display:block;font-size:6px;letter-spacing:.12em;color:#9AA1A7}.gv-entity-card strong{display:block;margin-top:5px;font-size:10px;color:#505A62}.gv-entity-card small{display:block;margin-top:4px;font-size:7px;color:#939BA1}.gv-architecture-checks{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:10px}.gv-architecture-checks article{padding:16px;border:1px solid var(--gv-line);border-radius:7px;background:#FFF}.gv-architecture-checks span{display:block;font-size:6px;letter-spacing:.12em;color:#969EA4}.gv-architecture-checks strong{display:block;margin-top:7px;font-size:9.5px;color:#505A62}.gv-architecture-checks p{margin:6px 0 0;font-size:7.5px;line-height:1.55;color:#858E95}
.gv-billing-placeholder{display:grid;grid-template-columns:360px minmax(0,1fr);gap:12px}.gv-plan-card{padding:25px}.gv-plan-card>span{display:block;font-size:6.5px;letter-spacing:.12em;color:#979EA4}.gv-plan-card h2{margin:10px 0 5px;font-family:Georgia,serif;font-size:25px;color:#424A50;font-weight:600}.gv-plan-card p{margin:0;font-size:8.5px;line-height:1.65;color:#848D94}.gv-plan-card>div{margin:25px 0}.gv-plan-card>div strong{display:block;font-size:24px;color:#4D565D}.gv-plan-card>div small{display:block;margin-top:4px;font-size:7px;color:#949CA2}.gv-plan-card>button{width:100%;height:37px;border:1px solid var(--gv-line);border-radius:5px;background:#F3F4F5;color:#9AA1A7;font-size:8px}.gv-plan-boundaries{padding-bottom:10px}.gv-plan-boundaries>div:not(.gv-panel-head){display:grid;grid-template-columns:35px minmax(0,1fr);gap:9px;align-items:center;min-height:69px;margin:0 15px;border-bottom:1px solid var(--gv-line-soft)}.gv-plan-boundaries>div:last-child{border-bottom:0}.gv-plan-boundaries>div>span{font-family:Georgia,serif;font-size:9px;color:#9AA1A7}.gv-plan-boundaries p{margin:0}.gv-plan-boundaries strong{display:block;font-size:8.7px;color:#515B63}.gv-plan-boundaries small{display:block;margin-top:4px;font-size:7.3px;color:#929AA1}.gv-foundation-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:12px;padding:14px 16px;border:1px solid #DED8CE;border-radius:7px;background:#F8F5F0}.gv-foundation-footer span{display:block;font-size:6.3px;letter-spacing:.12em;color:#998A75}.gv-foundation-footer strong{display:block;margin-top:5px;font-size:8.5px;color:#625B53}.gv-foundation-footer button{height:32px;border:1px solid #D8D0C4;border-radius:5px;background:#FFF;color:#6F6559;padding:0 10px;font-size:7.5px;cursor:pointer;white-space:nowrap}
@media(max-width:1150px){.gv-workspace-settings-grid{grid-template-columns:1fr}.gv-architecture-intro{grid-template-columns:1fr}.gv-architecture-checks{grid-template-columns:1fr 1fr}.gv-billing-placeholder{grid-template-columns:1fr 1.5fr}}
@media(max-width:800px){.gv-workspace-hero{flex-direction:column;align-items:flex-start}.gv-workspace-hero-actions{width:100%;justify-content:flex-start}.gv-workspace-context{grid-template-columns:1fr 1fr}.gv-workspace-context>div:nth-child(2){border-right:0}.gv-workspace-context>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-entity-layer{grid-template-columns:1fr}.gv-billing-placeholder{grid-template-columns:1fr}.gv-foundation-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.gv-workspace-hero{padding-top:18px}.gv-workspace-hero h1{font-size:25px}.gv-workspace-hero-actions{display:grid;grid-template-columns:1fr 1fr}.gv-workspace-hero-actions .gv-foundation-badge{grid-column:1/-1}.gv-workspace-hero-actions .gv-btn{width:100%;justify-content:center}.gv-workspace-tabs{overflow:auto}.gv-workspace-tabs button{white-space:nowrap}.gv-governance-list>label{grid-template-columns:1fr;padding:12px 0;gap:8px}.gv-architecture-laws{grid-template-columns:1fr}.gv-architecture-checks{grid-template-columns:1fr}.gv-entity-layer.two{grid-template-columns:1fr}.gv-foundation-footer button{width:100%}}

/* ========================================================================== 
   V1.0 RC · Readability & State Contract
   Dense prototype modules intentionally keep restrained hierarchy, but body,
   action and operational text must remain readable at FHD/QHD comfort view.
   ========================================================================== */
.gv-error-state{
  min-height:116px;padding:18px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;
  align-items:center;gap:12px;background:#FBF8F7;border-top:1px solid #E8DDDA;
}
.gv-error-state-mark{width:30px;height:30px;border:1px solid #DDCBC6;border-radius:50%;display:grid;place-items:center;color:#8A625C;font-weight:700;font-size:12px;background:#FFF}
.gv-error-state strong{display:block;font-size:11px;color:#4F575D;font-weight:650}
.gv-error-state p{margin:4px 0 0;font-size:9.5px;line-height:1.55;color:#7E878E}

html[data-view="comfort"] .gv-project-card-actions button,
html[data-view="comfort"] .gv-project-card-actions a{font-size:10px;min-height:34px}
html[data-view="comfort"] .gv-project-card small,
html[data-view="comfort"] .gv-project-card-meta,
html[data-view="comfort"] .gv-project-card-next{font-size:9px}
html[data-view="comfort"] .gv-project-file strong,
html[data-view="comfort"] .gv-project-note strong{font-size:10.5px}
html[data-view="comfort"] .gv-project-file small,
html[data-view="comfort"] .gv-project-note small{font-size:9px}

html[data-view="comfort"] .gv-automation-flow-title span{font-size:8px}
html[data-view="comfort"] .gv-automation-flow-title h2{font-size:13px}
html[data-view="comfort"] .gv-automation-flow-title>em{font-size:8.5px}
html[data-view="comfort"] .gv-automation-flow-main>p{font-size:10.5px;line-height:1.6}
html[data-view="comfort"] .gv-automation-flow-chain>span{font-size:9px}
html[data-view="comfort"] .gv-automation-flow-chain b{font-size:7.5px}
html[data-view="comfort"] .gv-automation-flow-meta span{font-size:8px}
html[data-view="comfort"] .gv-automation-flow-meta strong{font-size:10.5px}
html[data-view="comfort"] .gv-automation-flow-meta small{font-size:9px}
html[data-view="comfort"] .gv-automation-flow-actions button,
html[data-view="comfort"] .gv-automation-flow-actions a{font-size:9.5px;min-height:34px}
html[data-view="comfort"] .gv-automation-guardrails small,
html[data-view="comfort"] .gv-automation-template-grid small,
html[data-view="comfort"] .gv-response-row small,
html[data-view="comfort"] .gv-delivery-list small{font-size:9px}

html[data-view="comfort"] .gv-workspace-hero p{font-size:11.5px}
html[data-view="comfort"] .gv-foundation-badge{font-size:9px}
html[data-view="comfort"] .gv-workspace-context span{font-size:8px}
html[data-view="comfort"] .gv-workspace-context small{font-size:9px}
html[data-view="comfort"] .gv-workspace-tabs button{font-size:10px}
html[data-view="comfort"] .gv-environment-list strong{font-size:10px}
html[data-view="comfort"] .gv-environment-list small{font-size:9px}
html[data-view="comfort"] .gv-environment-list em{font-size:8px}
html[data-view="comfort"] .gv-governance-list strong{font-size:10.5px}
html[data-view="comfort"] .gv-governance-list small{font-size:9px;line-height:1.55}
html[data-view="comfort"] .gv-governance-list select{font-size:10px}
html[data-view="comfort"] .gv-role-baseline span{font-size:8px}
html[data-view="comfort"] .gv-role-baseline small{font-size:9px}
html[data-view="comfort"] .gv-workspace-invite strong{font-size:10px}
html[data-view="comfort"] .gv-workspace-invite small{font-size:9px}
html[data-view="comfort"] .gv-architecture-intro>div:first-child>span{font-size:8px}
html[data-view="comfort"] .gv-architecture-intro p{font-size:10.5px}
html[data-view="comfort"] .gv-architecture-laws span{font-size:9px}
html[data-view="comfort"] .gv-entity-card span{font-size:8px}
html[data-view="comfort"] .gv-entity-card small{font-size:9px}
html[data-view="comfort"] .gv-architecture-checks span{font-size:8px}
html[data-view="comfort"] .gv-architecture-checks strong{font-size:10.5px}
html[data-view="comfort"] .gv-architecture-checks p{font-size:9.5px}
html[data-view="comfort"] .gv-plan-card>span{font-size:8px}
html[data-view="comfort"] .gv-plan-card p{font-size:10px}
html[data-view="comfort"] .gv-plan-card>div small{font-size:9px}
html[data-view="comfort"] .gv-plan-card>button{font-size:10px}
html[data-view="comfort"] .gv-plan-boundaries strong{font-size:10px}
html[data-view="comfort"] .gv-plan-boundaries small{font-size:9px}
html[data-view="comfort"] .gv-foundation-footer span{font-size:8px}
html[data-view="comfort"] .gv-foundation-footer strong{font-size:10px}
html[data-view="comfort"] .gv-foundation-footer button{font-size:9px}

@media(max-width:640px){
  .gv-error-state{grid-template-columns:30px minmax(0,1fr);padding:15px}
  .gv-error-state .gv-btn{grid-column:1/-1;width:100%;justify-content:center;min-height:40px}
  .gv-project-card-actions button,.gv-project-card-actions a,
  .gv-automation-flow-actions button,.gv-automation-flow-actions a,
  .gv-workspace-tabs button{min-height:40px}
}


/* V1 RC · 1366px laptop overflow corrections */
.gv-drawer:not(.open){visibility:hidden;pointer-events:none}
.gv-drawer.open{visibility:visible}
@media (max-width:1439px) and (min-width:1200px){
  .gv-crew-master-layout{grid-template-columns:minmax(0,1fr) 250px}
  .gv-crew-role-facets{grid-column:1/-1;position:static}
  .gv-crew-role-list{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}
  .gv-crew-role-foot{display:none}
  .gv-crew-master-side{position:static}

  .gv-schedule-layout{grid-template-columns:minmax(0,1fr) 250px}
  .gv-role-rail{grid-column:1/-1;position:static}
  .gv-role-rail-list{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
  .gv-role-rail-foot{display:none}
  .gv-schedule-side{position:static}
}
@media (max-width:1439px) and (min-width:1200px){
  .gv-settlement-layout{grid-template-columns:minmax(0,1fr) 250px}
  .gv-settlement-recon{grid-column:1/-1;position:static}
  .gv-recon-list{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
  .gv-recon-list>div{border-bottom:0;border-right:1px solid var(--gv-line-soft);padding:0 12px}
  .gv-recon-list>div:last-child{border-right:0}
  .gv-recon-foot{display:none}
  .gv-settlement-side{position:static}
}
/* Off-canvas drawers must never expand the document scroll area. */
html{overflow-x:clip}
@media (max-width:1439px) and (min-width:1200px){
  .gv-clients-layout{grid-template-columns:minmax(0,1fr) 250px}
  .gv-client-list-panel{grid-column:1/-1;position:static}
  .gv-client-list{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
  .gv-client-side{position:static}
}
/* V1 RC · Project board comfort-first legibility */
html[data-view="comfort"] .gv-project-card h2{font-size:13.5px}
html[data-view="comfort"] .gv-project-card-main>p{font-size:10.5px}
html[data-view="comfort"] .gv-project-card-top>span,
html[data-view="comfort"] .gv-project-card-top>em,
html[data-view="comfort"] .gv-project-card-progress>span,
html[data-view="comfort"] .gv-project-card-next>span{font-size:8.5px}
html[data-view="comfort"] .gv-project-card-tags span{font-size:8.5px}
html[data-view="comfort"] .gv-project-card-progress>small,
html[data-view="comfort"] .gv-project-card-next>small{font-size:9.5px}
html[data-view="comfort"] .gv-project-saved-views small,
html[data-view="comfort"] .gv-project-rules small{font-size:9px}

/* =========================================================
   V1.1 · REAL DATA INTEGRATION GATE 1
   Read-only legacy adapter / connection status
   ========================================================= */
.gv-data-source-strip{display:grid;grid-template-columns:10px auto minmax(0,1fr) auto;align-items:center;gap:9px;min-height:42px;margin:0 0 16px;padding:9px 12px;border:1px solid var(--gv-line, #e8e9ed);border-radius:8px;background:#fff;text-decoration:none;color:inherit;transition:border-color .15s,background .15s}
.gv-data-source-strip:hover{border-color:#cfd4dc;background:#fcfcfd}
.gv-data-source-dot{width:7px;height:7px;border-radius:50%;background:#aab0bb;box-shadow:0 0 0 3px #f0f1f3}
.gv-data-source-strip.connected .gv-data-source-dot{background:#357760;box-shadow:0 0 0 3px #eaf3ef}
.gv-data-source-strip strong{font-size:10px;letter-spacing:.08em;color:#333b47}
.gv-data-source-strip small{font-size:10px;color:#8a919e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-data-source-strip em{font-style:normal;font-size:10px;color:#667085;white-space:nowrap}

.gv-integration-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:34px;align-items:end;margin-bottom:14px;padding:28px 30px;border:1px solid #e3e5e9;background:linear-gradient(135deg,#fff 0%,#fafafa 100%);border-radius:10px}
.gv-integration-hero.connected{border-color:#d9e4df;background:linear-gradient(135deg,#fff 0%,#f8fbf9 100%)}
.gv-integration-hero h1{margin:6px 0 8px;font-size:27px;line-height:1.18;letter-spacing:-.045em;color:#171a20}
.gv-integration-hero p{max-width:780px;margin:0;color:#737b88;font-size:12px;line-height:1.75}
.gv-integration-mode{display:flex;gap:12px;align-items:flex-start;padding:14px 15px;border-left:1px solid #e2e5e9}
.gv-integration-mode-dot{flex:0 0 auto;width:9px;height:9px;margin-top:4px;border-radius:50%;background:#9ca3af;box-shadow:0 0 0 4px #f0f1f3}
.gv-integration-hero.connected .gv-integration-mode-dot{background:#357760;box-shadow:0 0 0 4px #eaf3ef}
.gv-integration-mode div{display:grid;gap:3px}
.gv-integration-mode small{font-size:8px;letter-spacing:.11em;color:#9aa1ac}
.gv-integration-mode strong{font-size:12px;color:#313842}
.gv-integration-mode em{font-size:9.5px;font-style:normal;color:#8a919e;line-height:1.45}

.gv-integration-gates{display:grid;grid-template-columns:repeat(5,1fr);margin-bottom:14px;border:1px solid #e6e8eb;border-radius:9px;background:#fff;overflow:hidden}
.gv-integration-gates>div{position:relative;display:grid;grid-template-columns:25px minmax(0,1fr);column-gap:8px;row-gap:2px;align-items:center;padding:12px 13px;border-right:1px solid #eceef1}
.gv-integration-gates>div:last-child{border-right:0}
.gv-integration-gates span{grid-row:1/3;display:grid;place-items:center;width:24px;height:24px;border:1px solid #e1e4e8;border-radius:50%;font-size:8px;color:#a0a6af}
.gv-integration-gates strong{font-size:10px;color:#777f8b}
.gv-integration-gates small{font-size:8.5px;color:#a0a6af}
.gv-integration-gates .done span{border-color:#d9e5df;background:#f3f8f5;color:#46725f}.gv-integration-gates .done strong{color:#4e675c}
.gv-integration-gates .active{background:#fafbfd}.gv-integration-gates .active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#303741}.gv-integration-gates .active span{border-color:#cfd3da;color:#303741}.gv-integration-gates .active strong{color:#252a31}

.gv-integration-notice{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:start;margin-bottom:14px;padding:14px 17px;border:1px solid #e6dfcf;border-radius:8px;background:#fdfbf7}
.gv-integration-notice>span{font-size:8px;letter-spacing:.12em;color:#927c53;font-weight:700}
.gv-integration-notice strong{display:block;margin-bottom:4px;font-size:11px;color:#554b3b}.gv-integration-notice p{margin:0;font-size:10px;line-height:1.65;color:#8a7e69}.gv-integration-notice code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.95em}

.gv-integration-summary{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:14px;border:1px solid #e6e8eb;border-radius:9px;background:#fff}
.gv-integration-summary>div{padding:14px 17px;border-right:1px solid #eceef1}.gv-integration-summary>div:last-child{border-right:0}
.gv-integration-summary span{display:block;font-size:8px;letter-spacing:.1em;color:#9ca2ad}.gv-integration-summary strong{display:block;margin:5px 0 2px;font-size:18px;color:#252a31;letter-spacing:-.03em}.gv-integration-summary small{font-size:9px;color:#949ba6}.gv-integration-summary code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}

.gv-integration-domains{margin-bottom:14px}
.gv-integration-pill{padding:4px 7px;border:1px solid #e1e4e8;border-radius:5px;font-size:8px;letter-spacing:.08em;color:#8b929d}.gv-integration-pill.ok{border-color:#cfdfd7;background:#f5faf7;color:#4c745f}
.gv-integration-domain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.gv-integration-domain-card{min-width:0;padding:13px;border:1px solid #eceef1;border-radius:8px;background:#fcfcfd}
.gv-integration-domain-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;align-items:center;margin-bottom:10px}.gv-integration-domain-head>span{grid-column:1;font-size:7.5px;letter-spacing:.1em;color:#a2a8b1}.gv-integration-domain-head>strong{grid-column:1;font-size:11px;color:#313741}.gv-integration-domain-head>em{grid-column:2;grid-row:1/3;font-style:normal;font-size:8px;color:#9aa1ab}.gv-integration-domain-head>em.detected{color:#47745f}
.gv-integration-table-list{display:grid;gap:5px}.gv-integration-table-list>div{display:grid;grid-template-columns:7px minmax(0,1fr) auto;gap:6px;align-items:center;min-width:0}.gv-table-dot{width:5px;height:5px;border-radius:50%;background:#d4d7dc}.gv-integration-table-list .exists .gv-table-dot{background:#5e8271}.gv-integration-table-list code{overflow:hidden;text-overflow:ellipsis;font-size:8.5px;color:#707784}.gv-integration-table-list small{font-size:7.5px;color:#a1a7b0;white-space:nowrap}

.gv-integration-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}.gv-integration-layout>main,.gv-integration-layout>aside{min-width:0}.gv-integration-layout>aside{position:sticky;top:88px}
.gv-integration-schema-list{display:grid;gap:6px}.gv-integration-schema-list details{border:1px solid #eceef1;border-radius:7px;background:#fcfcfd}.gv-integration-schema-list summary{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 12px;cursor:pointer;list-style:none}.gv-integration-schema-list summary::-webkit-details-marker{display:none}.gv-integration-schema-list summary>div{display:grid;gap:2px}.gv-integration-schema-list summary code{font-size:9.5px;color:#434a55}.gv-integration-schema-list summary small,.gv-integration-schema-list summary>span{font-size:8px;color:#9ba1ab}
.gv-schema-detail{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #eceef1}.gv-schema-detail>div{padding:10px 12px}.gv-schema-detail>div+div{border-left:1px solid #eceef1}.gv-schema-detail strong{font-size:7.5px;letter-spacing:.09em;color:#738077}.gv-schema-detail .blocked strong{color:#8d7777}.gv-schema-detail p{margin:5px 0 0;font-size:8.5px;line-height:1.55;color:#858c97;word-break:break-word}

.gv-integration-tabs{display:flex;gap:4px;margin-bottom:10px;border-bottom:1px solid #eceef1}.gv-integration-tabs button{min-height:30px;padding:5px 9px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:#8e95a0;font-size:9px;box-shadow:none;transform:none}.gv-integration-tabs button:hover{box-shadow:none;transform:none;background:#fafafa}.gv-integration-tabs button.active{border-bottom-color:#3f4650;color:#303640}.gv-integration-tabs span{font-size:7.5px;color:#a4aab3}
.gv-integration-sample{display:none}.gv-integration-sample.active{display:block}.gv-integration-sample-table{overflow:auto;border:1px solid #eceef1;border-radius:7px}.gv-integration-sample-table table{width:100%;min-width:620px;border-collapse:collapse}.gv-integration-sample-table th{padding:8px 10px;background:#fafbfc;border-bottom:1px solid #eceef1;text-align:left;font-size:7.5px;letter-spacing:.07em;color:#9aa1ac}.gv-integration-sample-table td{padding:9px 10px;border-bottom:1px solid #f0f1f3;font-size:9px;color:#737b87}.gv-integration-sample-table tr:last-child td{border-bottom:0}.gv-integration-sample-table td strong{font-size:9.5px;color:#343b45}

.gv-integration-risk-list{display:grid}.gv-integration-risk-list>div{display:grid;grid-template-columns:25px minmax(0,1fr);gap:2px 8px;padding:11px 0;border-bottom:1px solid #eceef1}.gv-integration-risk-list>div:last-child{border-bottom:0}.gv-integration-risk-list span{grid-row:1/3;font-size:8px;color:#a0a6af}.gv-integration-risk-list strong{font-size:10px;color:#3c434d}.gv-integration-risk-list p{margin:2px 0 0;font-size:8.8px;line-height:1.55;color:#8a919c}.gv-integration-risk-list code{font-size:.95em}
.gv-integration-next{padding:17px!important;background:#fafaf9!important}.gv-integration-next>span{display:block;font-size:7.5px;letter-spacing:.11em;color:#9c917b}.gv-integration-next>strong{display:block;margin:7px 0;font-size:13px;line-height:1.4;color:#39362f}.gv-integration-next>p{margin:0 0 12px;font-size:9.5px;line-height:1.65;color:#8b877d}.gv-integration-next>div{display:flex;gap:7px;align-items:center;margin-top:6px}.gv-integration-next i{width:5px;height:5px;border-radius:50%;background:#7e887d}.gv-integration-next>div span{font-size:8.5px;color:#747871}

@media(max-width:1199px){
  .gv-integration-hero{grid-template-columns:1fr}.gv-integration-mode{border-left:0;border-top:1px solid #e6e8eb;padding-left:0}
  .gv-integration-gates{grid-template-columns:repeat(5,minmax(120px,1fr));overflow:auto}
  .gv-integration-domain-grid{grid-template-columns:repeat(2,1fr)}
  .gv-integration-layout{grid-template-columns:1fr}.gv-integration-layout>aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:14px}
}
@media(max-width:700px){
  .gv-data-source-strip{grid-template-columns:10px minmax(0,1fr) auto}.gv-data-source-strip small{grid-column:2/4;grid-row:2;white-space:normal}.gv-data-source-strip em{grid-column:3;grid-row:1;font-size:0}.gv-data-source-strip em:after{content:'→';font-size:12px}
  .gv-integration-hero{padding:20px 18px}.gv-integration-hero h1{font-size:22px}.gv-integration-hero p{font-size:11px}
  .gv-integration-gates{grid-template-columns:repeat(5,135px)}
  .gv-integration-notice{grid-template-columns:1fr;gap:6px}
  .gv-integration-summary{grid-template-columns:1fr 1fr}.gv-integration-summary>div:nth-child(2){border-right:0}.gv-integration-summary>div:nth-child(-n+2){border-bottom:1px solid #eceef1}
  .gv-integration-domain-grid{grid-template-columns:1fr}
  .gv-schema-detail{grid-template-columns:1fr}.gv-schema-detail>div+div{border-left:0;border-top:1px solid #eceef1}
  .gv-integration-layout>aside{grid-template-columns:1fr}
}

/* ========================================================================== */
/* V1.2 · Real Data Read Model / Reconciliation                               */
/* ========================================================================== */
.gv-live-domain{margin:0 0 14px;border:1px solid #DCE5E0;border-radius:9px;background:#FCFEFD;overflow:hidden}
.gv-live-domain-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:17px 18px;border-bottom:1px solid #E5ECE8}
.gv-live-domain-head>div:first-child{min-width:0}.gv-live-domain-head>div:first-child>span,.gv-live-kicker{display:block;font-size:8px;letter-spacing:.12em;color:#60786C;font-weight:800}.gv-live-domain-head h2,.gv-live-domain-head>div:first-child>strong{display:block;margin:5px 0 0;font-size:14px;line-height:1.35;color:#334039;font-weight:720}.gv-live-domain-head p{margin:5px 0 0;max-width:860px;font-size:9.5px;line-height:1.65;color:#78837D}.gv-live-domain code,.gv-reconcile-hero code,.gv-reconcile-main code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.94em}
.gv-live-domain-state{flex:0 0 auto;display:grid;grid-template-columns:8px auto;gap:1px 7px;align-items:center;padding-top:2px}.gv-live-domain-state i{grid-row:1/3;width:7px;height:7px;border-radius:50%;background:#5F846F;box-shadow:0 0 0 4px #EDF4F0}.gv-live-domain-state strong{font-size:8px;letter-spacing:.09em;color:#50695B}.gv-live-domain-state small{font-size:8px;color:#8A958F}
.gv-live-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-bottom:1px solid #E6ECE9;background:#FFF}.gv-live-metrics>div{min-width:0;padding:12px 14px;border-right:1px solid #EDF1EF}.gv-live-metrics>div:last-child{border-right:0}.gv-live-metrics span{display:block;font-size:7.5px;letter-spacing:.1em;color:#939D97;font-weight:760}.gv-live-metrics strong{display:block;margin:5px 0 2px;font-size:17px;color:#3D4942;font-weight:650}.gv-live-metrics small{display:block;font-size:8px;color:#929B96;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-live-metrics .warn{background:#FCF8F3}.gv-live-metrics .warn strong{color:#886B4A}
.gv-live-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-bottom:1px solid #E8EDEA;background:#FAFCFB}.gv-live-toolbar label,.gv-live-search{display:flex;align-items:center;gap:7px;min-width:260px;max-width:480px;flex:1;height:34px;padding:0 9px;border:1px solid #E0E6E2;border-radius:6px;background:#FFF}.gv-live-toolbar svg,.gv-live-search svg{width:13px;height:13px;color:#7D8982}.gv-live-toolbar input,.gv-live-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;font-size:9.5px;color:#4C5851}.gv-live-toolbar>a,.gv-live-toolbar>span{font-size:8.5px;color:#758179;white-space:nowrap}.gv-live-toolbar>a{text-decoration:none;font-weight:690}.gv-live-toolbar>a:hover{text-decoration:underline}
.gv-live-project-list{display:grid}.gv-live-project-list>article{display:grid;grid-template-columns:150px minmax(220px,1fr) 250px 90px;gap:16px;align-items:center;min-height:74px;padding:10px 15px;border-bottom:1px solid #EDF1EF}.gv-live-project-list>article:last-of-type{border-bottom:0}.gv-live-project-list>article:hover{background:#FBFDFC}.gv-live-project-date span{display:block;font-size:9.5px;color:#4F5B54;font-weight:650}.gv-live-project-date small{display:block;margin-top:2px;font-size:8px;color:#949D98}.gv-live-project-main{min-width:0}.gv-live-project-main strong{display:block;font-size:11px;color:#36423B;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-live-project-main small{display:block;margin-top:4px;font-size:8.5px;color:#89938D;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-live-project-stats{display:flex;gap:16px;justify-content:flex-end}.gv-live-project-stats span{font-size:8px;color:#8B958F;white-space:nowrap}.gv-live-project-stats b{font-size:10px;color:#58665E;margin-right:2px}.gv-live-project-status{display:flex;align-items:center;justify-content:flex-end;gap:6px}.gv-live-project-status i{width:6px;height:6px;border-radius:50%;background:#71917F}.gv-live-project-status span{font-size:8px;color:#617269;font-weight:720}.gv-live-project-status.upcoming i{background:#9C8C66}.gv-live-project-status.upcoming span{color:#7F7256}.gv-live-project-status.ended i{background:#A7ADB0}.gv-live-project-status.ended span{color:#858D91}.gv-live-project-status.unmapped i{background:#A77A68}.gv-live-project-status.unmapped span{color:#8D6758}
.gv-live-domain-note{display:grid;grid-template-columns:190px minmax(0,1fr);gap:14px;padding:11px 15px;border-top:1px solid #E8EDEA;background:#F8FAF9}.gv-live-domain-note strong{font-size:8.5px;color:#59675F}.gv-live-domain-note span{font-size:8.5px;line-height:1.55;color:#87918B}
.gv-live-table-wrap{overflow:auto}.gv-live-table{width:100%;min-width:760px;border-collapse:collapse}.gv-live-table th{padding:8px 12px;border-bottom:1px solid #E8EDEA;background:#FBFCFC;text-align:left;font-size:7.5px;letter-spacing:.08em;color:#98A19C}.gv-live-table td{padding:9px 12px;border-bottom:1px solid #EEF1F0;font-size:9px;color:#66726B}.gv-live-table tbody tr:last-child td{border-bottom:0}.gv-live-table th.num,.gv-live-table td.num{text-align:right}.gv-live-table td.num strong{font-size:10px;color:#4F5D55}.gv-live-table td code{font-size:8px;color:#7D8982}.gv-live-person{display:flex;align-items:center;gap:8px}.gv-live-person>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#EEF2F0;color:#66766D;font-size:9px;font-weight:720}.gv-live-person strong{display:block;font-size:9.5px;color:#435048}.gv-live-person small{display:block;margin-top:2px;font-size:7.8px;color:#949D98}.gv-live-empty{padding:22px;text-align:center;font-size:9px;color:#909A94}.gv-live-empty[hidden]{display:none!important}
.gv-prototype-divider{display:flex;align-items:center;gap:12px;margin:18px 1px 10px;color:#92989E}.gv-prototype-divider:before,.gv-prototype-divider:after{content:"";height:1px;background:#E8EAEC;flex:1}.gv-prototype-divider span{font-size:7.5px;letter-spacing:.11em;font-weight:800;white-space:nowrap}.gv-prototype-divider small{font-size:8px;color:#A1A6AA;white-space:nowrap}

.gv-reconcile-hero{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:30px;align-items:end;margin-bottom:14px;padding:26px 28px;border:1px solid #E2E5E7;border-radius:10px;background:#FFF}.gv-reconcile-hero.connected{border-color:#DAE5DF;background:linear-gradient(135deg,#FFF,#F9FCFA)}.gv-reconcile-hero h1{margin:7px 0 8px;font-size:27px;line-height:1.12;letter-spacing:-.04em;color:#30373B;font-weight:630}.gv-reconcile-hero p{margin:0;max-width:790px;font-size:10.5px;line-height:1.7;color:#7C858A}.gv-reconcile-status{display:flex;gap:10px;align-items:flex-start;border-left:1px solid #E5E9E7;padding:7px 0 7px 16px}.gv-reconcile-status>i{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#62836F;box-shadow:0 0 0 4px #EDF4F0}.gv-reconcile-status span{display:block;font-size:7.5px;letter-spacing:.1em;color:#929A96}.gv-reconcile-status strong{display:block;margin-top:3px;font-size:10.5px;color:#44544B}.gv-reconcile-status small{display:block;margin-top:3px;font-size:8px;color:#969D99}
.gv-reconcile-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:14px;border:1px solid #E6E8EA;border-radius:9px;background:#FFF;overflow:hidden}.gv-reconcile-flow>div{position:relative;display:grid;grid-template-columns:25px minmax(0,1fr);gap:2px 8px;align-items:center;padding:11px 12px;border-right:1px solid #ECEEF0}.gv-reconcile-flow>div:last-child{border-right:0}.gv-reconcile-flow span{grid-row:1/3;display:grid;place-items:center;width:23px;height:23px;border:1px solid #E0E3E5;border-radius:50%;font-size:7.5px;color:#9CA3A7}.gv-reconcile-flow strong{font-size:9px;color:#767F83}.gv-reconcile-flow small{font-size:7.8px;color:#A0A6A9}.gv-reconcile-flow .done span{border-color:#D7E4DD;background:#F3F8F5;color:#567564}.gv-reconcile-flow .done strong{color:#586D61}.gv-reconcile-flow .active{background:#FAFBFA}.gv-reconcile-flow .active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#4D5952}.gv-reconcile-flow .active span{border-color:#C9D1CD;color:#455149}.gv-reconcile-flow .active strong{color:#3E4943}
.gv-reconcile-gates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}.gv-reconcile-gates>a{position:relative;display:block;min-width:0;padding:14px 15px 13px;border:1px solid #E7E9EA;border-radius:8px;background:#FFF;text-decoration:none}.gv-reconcile-gates>a:hover{border-color:#D6DBD8}.gv-reconcile-gates>a.active{border-color:#CBD7D0;box-shadow:inset 0 0 0 1px #E9F0EC}.gv-reconcile-gates>a>span{font-size:7.5px;letter-spacing:.11em;color:#979EA1;font-weight:780}.gv-reconcile-gates>a>strong{display:block;margin-top:5px;font-size:11px;color:#525D57}.gv-reconcile-gates>a>p{min-height:31px;margin:5px 0 0;font-size:8.5px;line-height:1.55;color:#8B9390}.gv-reconcile-gates>a>em{display:block;margin-top:8px;font-size:8px;font-style:normal;color:#7E8983}.gv-reconcile-gates>a.ready>strong{color:#557160}.gv-reconcile-gates>a.hold{background:#FDFBF8;border-color:#ECE3D8}.gv-reconcile-gates>a.hold>strong{color:#886B50}
.gv-reconcile-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:14px;border:1px solid #E6E8EA;border-radius:9px;background:#FFF;overflow:hidden}.gv-reconcile-metrics>div{padding:13px 15px;border-right:1px solid #ECEEF0}.gv-reconcile-metrics>div:last-child{border-right:0}.gv-reconcile-metrics span{display:block;font-size:7.5px;letter-spacing:.1em;color:#979EA2;font-weight:760}.gv-reconcile-metrics strong{display:block;margin:5px 0 2px;font-size:18px;color:#424B50;font-weight:640}.gv-reconcile-metrics small{display:block;font-size:7.8px;color:#989FA2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-reconcile-metrics .warn{background:#FDFBF8}.gv-reconcile-metrics .warn strong{color:#8A6B4D}.gv-reconcile-metrics .ok strong{color:#536E5E}
.gv-reconcile-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}.gv-reconcile-main{overflow:hidden}.gv-reconcile-table-wrap{overflow:auto}.gv-reconcile-table{width:100%;min-width:680px;border-collapse:collapse}.gv-reconcile-table th{padding:9px 13px;background:#FAFBFB;border-bottom:1px solid #E9ECEA;text-align:left;font-size:7.5px;letter-spacing:.07em;color:#979EA1}.gv-reconcile-table td{padding:11px 13px;border-bottom:1px solid #EEF0EF;font-size:9px;color:#747D79}.gv-reconcile-table tr:last-child td{border-bottom:0}.gv-reconcile-table td strong{font-size:9.5px;color:#4B5550}.gv-reconcile-table th.num,.gv-reconcile-table td.num{text-align:right}.gv-reconcile-hold{display:inline-flex;padding:4px 6px;border-radius:4px;background:#F6F0E9;color:#856A4F;font-size:7.5px;font-weight:730;white-space:nowrap}
.gv-reconcile-checks{display:grid}.gv-reconcile-checks>div{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:9px;align-items:center;padding:13px 14px;border-bottom:1px solid #ECEFEE}.gv-reconcile-checks>div:last-child{border-bottom:0}.gv-reconcile-checks>div>span{font-size:8px;color:#A0A7A3}.gv-reconcile-checks p{margin:0}.gv-reconcile-checks strong{display:block;font-size:10px;color:#4B5650}.gv-reconcile-checks small{display:block;margin-top:3px;font-size:8.5px;color:#8D9691}.gv-reconcile-checks em{font-style:normal;font-size:7.5px;letter-spacing:.07em;color:#5B7967}.gv-reconcile-checks .hold em{color:#8B6B4D}
.gv-crew-reconcile-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ECEFEE}.gv-crew-reconcile-grid>div{padding:17px;border-right:1px solid #ECEFEE;border-bottom:1px solid #ECEFEE}.gv-crew-reconcile-grid>div:nth-child(even){border-right:0}.gv-crew-reconcile-grid span{display:block;font-size:7.5px;letter-spacing:.1em;color:#9AA19D}.gv-crew-reconcile-grid strong{display:block;margin-top:6px;font-size:9.5px;color:#5B6560}.gv-crew-reconcile-grid b{display:block;margin-top:6px;font-size:20px;color:#3E4943}.gv-crew-reconcile-grid small{display:block;margin-top:3px;font-size:8px;color:#949C98}.gv-crew-reconcile-grid .warn{background:#FDFBF8}.gv-crew-reconcile-grid .warn b{color:#886A4D}.gv-reconcile-callout{margin:14px;padding:13px 14px;border:1px solid #E8E4DA;border-radius:7px;background:#FCFAF6}.gv-reconcile-callout strong{font-size:9px;color:#655B4D}.gv-reconcile-callout p{margin:5px 0 0;font-size:8.7px;line-height:1.65;color:#8A8277}
.gv-reconcile-side{display:grid;gap:14px}.gv-reconcile-rules{display:grid;padding:0 14px}.gv-reconcile-rules>div{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;padding:11px 0;border-bottom:1px solid #ECEFEE}.gv-reconcile-rules>div:last-child{border-bottom:0}.gv-reconcile-rules>div>span{font-size:8px;color:#9CA39F}.gv-reconcile-rules p{margin:0}.gv-reconcile-rules strong{display:block;font-size:9px;color:#505B55}.gv-reconcile-rules small{display:block;margin-top:3px;font-size:8px;line-height:1.5;color:#929A96}.gv-reconcile-next{padding:16px!important;background:#FAFBFA!important}.gv-reconcile-next>span{display:block;font-size:7.5px;letter-spacing:.11em;color:#959B97}.gv-reconcile-next>strong{display:block;margin:7px 0;font-size:12px;color:#46514B}.gv-reconcile-next>p{margin:0 0 12px;font-size:8.7px;line-height:1.65;color:#8B938F}

@media(max-width:1399px){
  .gv-live-project-list>article{grid-template-columns:132px minmax(200px,1fr) 220px 82px;gap:12px}
  .gv-live-metrics,.gv-reconcile-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.gv-live-metrics>div:nth-child(3),.gv-reconcile-metrics>div:nth-child(3){border-right:0}.gv-live-metrics>div:nth-child(-n+3),.gv-reconcile-metrics>div:nth-child(-n+3){border-bottom:1px solid #EDF1EF}
}
@media(max-width:1199px){
  .gv-live-project-list>article{grid-template-columns:120px minmax(0,1fr) 190px}.gv-live-project-status{grid-column:3;justify-content:flex-end}.gv-live-project-stats{grid-column:3;grid-row:1;align-self:end}
  .gv-reconcile-hero{grid-template-columns:1fr}.gv-reconcile-status{border-left:0;border-top:1px solid #E6E9E7;padding-left:0}
  .gv-reconcile-flow{grid-template-columns:repeat(5,140px);overflow:auto}.gv-reconcile-layout{grid-template-columns:1fr}.gv-reconcile-side{grid-template-columns:1fr 1fr}
}
@media(max-width:767px){
  .gv-live-domain-head{flex-direction:column;padding:14px}.gv-live-domain-state{align-self:flex-start}.gv-live-metrics,.gv-reconcile-metrics{grid-template-columns:1fr 1fr}.gv-live-metrics>div,.gv-reconcile-metrics>div{border-bottom:1px solid #EDF1EF}.gv-live-metrics>div:nth-child(odd),.gv-reconcile-metrics>div:nth-child(odd){border-right:1px solid #EDF1EF}.gv-live-metrics>div:nth-child(even),.gv-reconcile-metrics>div:nth-child(even){border-right:0}.gv-live-metrics>div:last-child,.gv-reconcile-metrics>div:last-child{grid-column:1/-1;border-bottom:0}
  .gv-live-toolbar{align-items:stretch;flex-direction:column}.gv-live-toolbar label,.gv-live-search{min-width:0;max-width:none;width:100%}.gv-live-toolbar>a,.gv-live-toolbar>span{align-self:flex-end}
  .gv-live-project-list>article{grid-template-columns:94px minmax(0,1fr);gap:8px;padding:11px 12px}.gv-live-project-stats{grid-column:1/-1;grid-row:auto;justify-content:flex-start;padding-left:102px}.gv-live-project-status{grid-column:1/-1;grid-row:auto;justify-content:flex-start;padding-left:102px}.gv-live-domain-note{grid-template-columns:1fr;gap:4px}.gv-prototype-divider small{display:none}
  .gv-reconcile-hero{padding:20px 17px}.gv-reconcile-hero h1{font-size:23px}.gv-reconcile-flow{grid-template-columns:repeat(5,132px)}.gv-reconcile-gates{grid-template-columns:1fr}.gv-reconcile-gates>a>p{min-height:0}.gv-reconcile-side{grid-template-columns:1fr}.gv-crew-reconcile-grid{grid-template-columns:1fr}.gv-crew-reconcile-grid>div{border-right:0}
}
.gv-live-inline-note{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin:-4px 0 14px;padding:10px 12px;border:1px solid #DDE7E1;border-radius:7px;background:#FAFCFB}.gv-live-inline-note strong{font-size:8.5px;color:#52685B;white-space:nowrap}.gv-live-inline-note span{font-size:8.5px;line-height:1.5;color:#85908A}.gv-live-inline-note a{font-size:8.5px;color:#63756A;text-decoration:none;white-space:nowrap}.gv-live-inline-note a:hover{text-decoration:underline}.gv-live-inline-note code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.94em}
@media(max-width:767px){.gv-live-inline-note{grid-template-columns:1fr}.gv-live-inline-note strong,.gv-live-inline-note a{white-space:normal}}

/* ========================================================================== */
/* V1.3 · Schedule + Settlement Real Read Model                               */
/* ========================================================================== */
.gv-live-project-select{display:grid!important;grid-template-columns:auto minmax(150px,1fr);gap:8px!important;align-items:center!important;height:36px!important;max-width:520px!important}
.gv-live-project-select>span{font-size:7.5px;letter-spacing:.1em;color:#8F9993;font-weight:780;white-space:nowrap}
.gv-live-project-select select{min-width:0;width:100%;height:28px;border:0;outline:0;background:transparent;color:#4B5850;font:inherit;font-size:9px;cursor:pointer}
.gv-live-toolbar-copy{font-size:8.5px!important;color:#7E8983!important}
.gv-live-state{display:inline-flex;align-items:center;gap:6px;padding:4px 7px;border:1px solid #E0E5E2;border-radius:999px;background:#F8FAF9;color:#6B7770;font-size:7.8px;font-weight:730;white-space:nowrap}
.gv-live-state i{width:5px;height:5px;border-radius:50%;background:#9BA49F}
.gv-live-state.hired{border-color:#D6E5DC;background:#F5FAF7;color:#526F5E}.gv-live-state.hired i{background:#648772}
.gv-live-state.hold{border-color:#E9E0D2;background:#FCF9F4;color:#856E51}.gv-live-state.hold i{background:#A68A66}
.gv-live-state.contract,.gv-live-state.ready{border-color:#DDE2E8;background:#F8F9FB;color:#66707A}.gv-live-state.contract i,.gv-live-state.ready i{background:#7D8994}
.gv-live-state.review,.gv-live-state.waiting{border-color:#E4E6E5;background:#FAFBFA;color:#737D78}.gv-live-state.review i,.gv-live-state.waiting i{background:#9BA29E}
.gv-live-state.excluded{border-color:#E7E4E2;background:#F9F8F7;color:#8D8782}.gv-live-state.excluded i{background:#A8A19C}
.gv-live-state.paid{border-color:#D4E4DB;background:#F3F9F5;color:#4F705D}.gv-live-state.paid i{background:#5D846D}
.gv-live-contract{display:inline-flex;padding:4px 6px;border-radius:4px;background:#F2F4F3;color:#727D77;font-size:7.5px;font-weight:780;letter-spacing:.05em;white-space:nowrap}.gv-live-contract.signed{background:#EEF6F1;color:#557461}.gv-live-contract.linked{background:#F4F5F6;color:#68727A}
.gv-live-muted{font-size:8px;color:#A0A7A3}.gv-live-date{font-size:8px;color:#7E8983;white-space:nowrap}
.gv-live-table .gv-live-person{display:block}.gv-live-table .gv-live-person strong{font-size:9.5px}.gv-live-table .gv-live-person small{line-height:1.45}
.gv-live-schedule-table{min-width:820px}.gv-live-settlement-table{min-width:930px}.gv-live-settlement-table td.num{font-variant-numeric:tabular-nums}.gv-live-settlement-table td.num strong{font-weight:700}
.gv-live-finance-metrics>div:nth-child(2) strong,.gv-live-finance-metrics>div:nth-child(3) strong{font-variant-numeric:tabular-nums}
.gv-reconcile-gates{grid-template-columns:repeat(5,minmax(0,1fr))}
.gv-reconcile-gates>a.review{background:#FBFCFB}.gv-reconcile-gates>a.review>strong{color:#6B756F}
.gv-finance-reconcile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #ECEFEE}
.gv-finance-reconcile-grid>div{min-width:0;padding:16px;border-right:1px solid #ECEFEE}.gv-finance-reconcile-grid>div:last-child{border-right:0}
.gv-finance-reconcile-grid span{display:block;font-size:7.5px;letter-spacing:.1em;color:#9AA19D}.gv-finance-reconcile-grid strong{display:block;margin-top:7px;font-size:17px;color:#46524B;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-finance-reconcile-grid small{display:block;margin-top:3px;font-size:8px;color:#949C98;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-finance-checks{border-top:0}
.gv-integration-tabs{overflow-x:auto;scrollbar-width:none}.gv-integration-tabs::-webkit-scrollbar{display:none}.gv-integration-tabs button{white-space:nowrap}
.gv-integration-sample-table td small{display:block;margin-top:2px;color:#9AA1A6;font-size:7.5px}

@media(max-width:1399px){
  .gv-reconcile-gates{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gv-reconcile-gates>a:nth-child(n+4){min-height:105px}
}
@media(max-width:1199px){
  .gv-finance-reconcile-grid{grid-template-columns:1fr 1fr}.gv-finance-reconcile-grid>div:nth-child(2){border-right:0}.gv-finance-reconcile-grid>div:nth-child(-n+2){border-bottom:1px solid #ECEFEE}
}
@media(max-width:767px){
  .gv-live-project-select{grid-template-columns:1fr!important;height:auto!important;padding:8px 9px!important}.gv-live-project-select select{height:30px}
  .gv-live-toolbar-copy{align-self:flex-start!important;white-space:normal!important;line-height:1.5}
  .gv-reconcile-gates{grid-template-columns:1fr}
  .gv-reconcile-gates>a:nth-child(n+4){min-height:0}
  .gv-finance-reconcile-grid{grid-template-columns:1fr}.gv-finance-reconcile-grid>div{border-right:0;border-bottom:1px solid #ECEFEE}.gv-finance-reconcile-grid>div:last-child{border-bottom:0}
}
.gv-live-schedule .gv-live-metrics,.gv-live-settlement .gv-live-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1399px){.gv-live-schedule .gv-live-metrics,.gv-live-settlement .gv-live-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-live-schedule .gv-live-metrics>div:nth-child(2),.gv-live-settlement .gv-live-metrics>div:nth-child(2){border-right:0}.gv-live-schedule .gv-live-metrics>div:nth-child(-n+2),.gv-live-settlement .gv-live-metrics>div:nth-child(-n+2){border-bottom:1px solid #EDF1EF}}
@media(max-width:767px){.gv-live-schedule .gv-live-metrics,.gv-live-settlement .gv-live-metrics{grid-template-columns:1fr 1fr}.gv-live-schedule .gv-live-metrics>div:last-child,.gv-live-settlement .gv-live-metrics>div:last-child{grid-column:auto}}

/* V1.4 · Contract Read Model / Canonical Mapping */
.gv-contract-hero{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;padding:28px 30px;margin-bottom:16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(245,242,236,.86))}.gv-contract-hero h1{margin:6px 0 8px;font-size:28px;letter-spacing:-.045em}.gv-contract-hero p{max-width:760px;margin:0;color:var(--muted);line-height:1.65}.gv-contract-lock{min-width:180px;padding:15px 17px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.66)}.gv-contract-lock span,.gv-contract-lock small{display:block;color:var(--muted);font-size:11px}.gv-contract-lock strong{display:block;margin:4px 0;font-size:18px;letter-spacing:.04em}.gv-contract-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.gv-contract-metrics>div{padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.gv-contract-metrics span,.gv-contract-metrics small{display:block;color:var(--muted);font-size:11px}.gv-contract-metrics strong{display:block;margin:5px 0;font-size:24px}.gv-contract-metrics .warn{border-color:#dccab1;background:#fbf7ef}.gv-contract-metrics .ok{background:#f7f8f4}.gv-contract-controls{margin-bottom:16px}.gv-contract-filter-form{display:grid;grid-template-columns:1.2fr .8fr 1.4fr auto;gap:12px;align-items:end}.gv-contract-filter-form label span{display:block;margin-bottom:6px;color:var(--muted);font-size:11px}.gv-contract-filter-form select,.gv-contract-filter-form input{width:100%;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font:inherit}.gv-contract-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}.gv-contract-table-wrap{overflow:auto}.gv-contract-table{width:100%;min-width:980px;border-collapse:collapse}.gv-contract-table th{padding:11px 14px;text-align:left;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.02em}.gv-contract-table td{padding:14px;border-bottom:1px solid var(--line-soft);vertical-align:middle}.gv-contract-table td strong,.gv-contract-table td small{display:block}.gv-contract-table td small{margin-top:4px;color:var(--muted);font-size:11px}.gv-contract-state,.gv-contract-map{display:inline-flex!important;width:max-content;padding:5px 8px;border:1px solid var(--line);border-radius:999px;font-size:10px!important;font-weight:800;letter-spacing:.025em}.gv-contract-state.signed{background:#eef4ea;border-color:#cdddc6}.gv-contract-state.pending{background:#f5f1e9}.gv-contract-map.explicit{background:#eef4ea;border-color:#cdddc6}.gv-contract-map.staff_project{background:#f1f2ed}.gv-contract-map.identity_project{background:#f6f1e8;border-color:#ddceb3}.gv-contract-map.orphan{background:#f8ecea;border-color:#e6c2bc}.gv-contract-side{display:grid;gap:16px}.gv-contract-ladder{display:grid;gap:10px}.gv-contract-ladder>div{display:flex;gap:12px;padding:12px;border:1px solid var(--line-soft);border-radius:12px}.gv-contract-ladder>div>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--soft);font-size:10px;font-weight:800}.gv-contract-ladder p{margin:0}.gv-contract-ladder strong,.gv-contract-ladder small{display:block}.gv-contract-ladder small{margin-top:4px;color:var(--muted);line-height:1.45}.gv-contract-ladder .best{background:#f7f8f4}.gv-contract-ladder .warn{background:#fbf3f0}.gv-contract-safety{padding:20px}.gv-contract-safety>span{font-size:10px;color:var(--muted);font-weight:800;letter-spacing:.08em}.gv-contract-safety>strong{display:block;margin:6px 0 8px;font-size:17px}.gv-contract-safety p{margin:0 0 14px;color:var(--muted);line-height:1.6}.gv-contract-reconcile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.gv-contract-reconcile-grid>div{padding:16px;border:1px solid var(--line);border-radius:12px}.gv-contract-reconcile-grid span,.gv-contract-reconcile-grid small{display:block;color:var(--muted);font-size:10px}.gv-contract-reconcile-grid strong{display:block;margin:5px 0;font-size:22px}.gv-contract-reconcile-grid .warn{background:#fbf3f0}.gv-contract-reconcile-grid .ok{background:#f7f8f4}
@media(max-width:1439px){.gv-contract-layout{grid-template-columns:1fr}.gv-contract-side{grid-template-columns:1fr 1fr}.gv-contract-filter-form{grid-template-columns:1fr 1fr 1fr auto}}
@media(max-width:900px){.gv-contract-hero{align-items:flex-start;flex-direction:column}.gv-contract-lock{width:100%}.gv-contract-metrics{grid-template-columns:1fr 1fr}.gv-contract-filter-form{grid-template-columns:1fr 1fr}.gv-contract-filter-form .search{grid-column:1/-1}.gv-contract-side{grid-template-columns:1fr}.gv-contract-reconcile-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.gv-contract-hero{padding:20px}.gv-contract-hero h1{font-size:23px}.gv-contract-metrics{grid-template-columns:1fr 1fr}.gv-contract-metrics>div{padding:15px}.gv-contract-filter-form{grid-template-columns:1fr}.gv-contract-filter-form .search{grid-column:auto}.gv-contract-filter-form .gv-btn{width:100%}.gv-contract-reconcile-grid{grid-template-columns:1fr 1fr}}


.gv-live-person-link{color:inherit;text-decoration:none}.gv-live-person-link:hover strong{text-decoration:underline;text-underline-offset:3px}

/* ========================================================================== */
/* V1.5 · Canonical Registry / Schema Discovery / Pre-Write Gate             */
/* ========================================================================== */
.gv-v15-hero{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;padding:30px 32px;margin-bottom:16px;border:1px solid var(--gv-line);border-radius:var(--gv-radius);background:var(--gv-surface)}
.gv-v15-hero>div:first-child{max-width:850px}.gv-v15-hero h1{margin:5px 0 8px;font-size:clamp(27px,2.1vw,36px);line-height:1.17;letter-spacing:-.032em;color:var(--gv-ink);font-weight:720}.gv-v15-hero p{margin:0;color:var(--gv-muted);max-width:820px}.gv-v15-hero code{font-size:.9em}.gv-v15-mode{min-width:250px;border-left:1px solid var(--gv-line);padding-left:24px;display:flex;flex-direction:column;gap:3px}.gv-v15-mode small{font-size:10px;letter-spacing:.13em;color:var(--gv-faint);font-weight:760}.gv-v15-mode strong{font-size:15px;color:var(--gv-warning);letter-spacing:.02em}.gv-v15-mode.ok strong{color:var(--gv-success)}.gv-v15-mode span{font-size:12px;color:var(--gv-muted)}
.gv-v15-statrail{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gv-line);border-radius:var(--gv-radius);background:var(--gv-surface);margin-bottom:16px;overflow:hidden}.gv-v15-statrail>div{padding:18px 20px;min-width:0;border-right:1px solid var(--gv-line)}.gv-v15-statrail>div:last-child{border-right:0}.gv-v15-statrail span{display:block;font-size:10px;letter-spacing:.115em;font-weight:760;color:var(--gv-faint)}.gv-v15-statrail strong{display:block;margin:4px 0 1px;color:var(--gv-ink);font-size:22px;line-height:1.2}.gv-v15-statrail small{display:block;color:var(--gv-muted);font-size:12px}
.gv-v15-grid-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.gv-v15-policy-card{min-width:0}.gv-v15-pill{display:inline-flex;align-items:center;min-height:25px;padding:3px 8px;border:1px solid var(--gv-line);border-radius:999px;font-size:10px;font-weight:760;letter-spacing:.08em;color:var(--gv-muted);background:var(--gv-surface-soft);white-space:nowrap}.gv-v15-pill.locked{color:var(--gv-danger);background:var(--gv-danger-soft);border-color:#ead5d5}.gv-v15-pill.review{color:var(--gv-warning);background:var(--gv-warning-soft);border-color:#e8dfcf}.gv-v15-pill.neutral{color:var(--gv-muted)}
.gv-v15-first-write{display:flex;gap:14px;padding:4px 0 16px}.gv-v15-first-write .icon{width:38px;height:38px;flex:0 0 38px;border-radius:8px;background:var(--gv-accent-soft);display:grid;place-items:center;color:var(--gv-accent);font-size:11px;font-weight:790}.gv-v15-first-write strong{display:block;color:var(--gv-ink);font-size:15px;margin-bottom:3px}.gv-v15-first-write p{margin:0;color:var(--gv-muted);font-size:13px}.gv-v15-rule-list{border-top:1px solid var(--gv-line-soft)}.gv-v15-rule-list>div{display:grid;grid-template-columns:130px 1fr;gap:14px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v15-rule-list>div:last-child{border-bottom:0}.gv-v15-rule-list span{font-size:10px;letter-spacing:.08em;font-weight:760;color:var(--gv-faint)}.gv-v15-rule-list b{font-size:12px;font-weight:650;color:var(--gv-text)}
.gv-v15-checklist{display:flex;flex-direction:column}.gv-v15-checklist>div{display:flex;align-items:center;gap:11px;padding:10px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v15-checklist>div:last-child{border-bottom:0}.gv-v15-checklist i{width:12px;height:12px;border:1px solid var(--gv-line-strong);border-radius:50%;flex:0 0 auto;background:var(--gv-surface)}.gv-v15-checklist .done i{border-color:#95aa9d;background:var(--gv-success-soft);box-shadow:inset 0 0 0 3px var(--gv-success-soft)}.gv-v15-checklist .done i:after{content:"";display:block;width:4px;height:4px;border-radius:50%;background:var(--gv-success);margin:3px}.gv-v15-checklist span{display:flex;flex-direction:column;line-height:1.35}.gv-v15-checklist strong{font-size:13px;color:var(--gv-ink)}.gv-v15-checklist small{font-size:11px;color:var(--gv-muted);margin-top:2px}.gv-v15-textlink{display:inline-flex;margin-top:12px;color:var(--gv-accent);font-size:12px;font-weight:660;text-decoration:none}.gv-v15-textlink:hover{text-decoration:underline}
.gv-v15-registry{margin-bottom:16px}.gv-v15-tabs{display:flex;gap:4px;padding:0 20px 14px;overflow:auto;border-bottom:1px solid var(--gv-line-soft)}.gv-v15-tabs a{display:flex;align-items:center;gap:7px;height:34px;padding:0 10px;border-radius:7px;text-decoration:none;color:var(--gv-muted);font-size:12px;font-weight:620;white-space:nowrap}.gv-v15-tabs a:hover{background:var(--gv-surface-soft);color:var(--gv-text)}.gv-v15-tabs a.active{background:var(--gv-accent-soft);color:var(--gv-accent)}.gv-v15-tabs span{font-size:10px;color:var(--gv-faint)}
.gv-v15-tablewrap{overflow:auto}.gv-v15-table{width:100%;border-collapse:collapse;min-width:1040px}.gv-v15-table th{padding:10px 14px;text-align:left;font-size:10px;letter-spacing:.08em;color:var(--gv-faint);font-weight:760;border-bottom:1px solid var(--gv-line);background:var(--gv-surface-soft)}.gv-v15-table td{padding:12px 14px;border-bottom:1px solid var(--gv-line-soft);vertical-align:middle;font-size:12px;color:var(--gv-muted)}.gv-v15-table tr:last-child td{border-bottom:0}.gv-v15-table tr.needs-review{background:#fcfaf6}.gv-v15-table td strong{color:var(--gv-ink);font-weight:650}.gv-v15-table code{font-size:11px;color:#596169}.gv-v15-key{display:inline-block;padding:3px 6px;border-radius:5px;background:var(--gv-accent-soft);color:var(--gv-accent)!important;font-weight:700;letter-spacing:.025em}.gv-v15-sourcekey{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.gv-v15-method{font-size:10px;font-weight:730;color:var(--gv-muted);letter-spacing:.04em}.gv-v15-confidence{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:780;letter-spacing:.08em;border:1px solid var(--gv-line)}.gv-v15-confidence.high{color:var(--gv-success);background:var(--gv-success-soft);border-color:#d6e2d9}.gv-v15-confidence.medium{color:var(--gv-warning);background:var(--gv-warning-soft);border-color:#e9dfcc}.gv-v15-confidence.review{color:var(--gv-danger);background:var(--gv-danger-soft);border-color:#ead4d4}
.gv-v15-bottom-note{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid var(--gv-line);border-radius:var(--gv-radius);background:var(--gv-surface)}.gv-v15-bottom-note span{font-size:10px;letter-spacing:.1em;font-weight:760;color:var(--gv-faint)}.gv-v15-bottom-note strong{display:block;color:var(--gv-ink);font-size:14px}.gv-v15-bottom-note p{margin:1px 0 0;color:var(--gv-muted);font-size:12px}.gv-v15-bottom-note a{font-size:12px;font-weight:660;color:var(--gv-accent);text-decoration:none;white-space:nowrap}
.gv-v15-candidate-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gv-v15-candidate{border:1px solid var(--gv-line);border-radius:8px;background:var(--gv-surface-soft);overflow:hidden}.gv-v15-candidate.strong{border-color:#cbd9cf;background:#fafcfb}.gv-v15-candidate.medium{border-color:#e1d9cb;background:#fcfbf8}.gv-v15-candidate-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 15px;border-bottom:1px solid var(--gv-line-soft)}.gv-v15-candidate-head>div{display:flex;align-items:center;gap:8px;min-width:0}.gv-v15-candidate-head code{font-size:12px;font-weight:700;color:var(--gv-ink);overflow:hidden;text-overflow:ellipsis}.gv-v15-candidate-head span{font-size:10px;color:var(--gv-faint);white-space:nowrap}.gv-v15-candidate-head b{font-size:10px;color:var(--gv-muted);font-weight:650}.gv-v15-candidate-head em{font-style:normal;font-size:9px;font-weight:780;letter-spacing:.08em;padding:3px 6px;border-radius:999px;border:1px solid var(--gv-line)}.gv-v15-candidate.strong .gv-v15-candidate-head em{color:var(--gv-success);background:var(--gv-success-soft)}.gv-v15-candidate.medium .gv-v15-candidate-head em{color:var(--gv-warning);background:var(--gv-warning-soft)}.gv-v15-candidate-grid{display:grid;grid-template-columns:1fr 1fr}.gv-v15-candidate-grid>div{padding:12px 15px;border-right:1px solid var(--gv-line-soft);border-bottom:1px solid var(--gv-line-soft);min-width:0}.gv-v15-candidate-grid>div:nth-child(even){border-right:0}.gv-v15-candidate-grid>div:nth-last-child(-n+2){border-bottom:0}.gv-v15-candidate-grid span{display:block;font-size:9px;letter-spacing:.08em;font-weight:760;color:var(--gv-faint);margin-bottom:2px}.gv-v15-candidate-grid strong{display:block;font-size:11px;font-weight:620;color:var(--gv-text);word-break:break-word}.gv-v15-candidate footer{display:flex;justify-content:space-between;gap:12px;padding:9px 15px;background:#f7f8f8;border-top:1px solid var(--gv-line-soft);font-size:9px;letter-spacing:.07em;color:var(--gv-faint)}.gv-v15-candidate footer strong{color:var(--gv-danger);font-size:9px}.gv-v15-decision strong{display:block;color:var(--gv-ink);font-size:15px}.gv-v15-decision p{margin:4px 0 0;color:var(--gv-muted);font-size:13px}
.gv-v15-integration-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.gv-v15-integration-actions>a{display:block;padding:18px 20px;border:1px solid var(--gv-line);border-radius:var(--gv-radius);background:var(--gv-surface);text-decoration:none}.gv-v15-integration-actions>a:hover{background:var(--gv-surface-soft)}.gv-v15-integration-actions span{display:block;font-size:10px;letter-spacing:.1em;font-weight:760;color:var(--gv-faint)}.gv-v15-integration-actions strong{display:block;margin:2px 0;color:var(--gv-ink);font-size:15px}.gv-v15-integration-actions p{margin:0;color:var(--gv-muted);font-size:12px}.gv-v15-integration-actions em{display:block;margin-top:8px;font-style:normal;color:var(--gv-accent);font-size:11px;font-weight:660}
.gv-v15-reconcile-bridge{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;margin-bottom:16px;border:1px solid var(--gv-line);border-radius:var(--gv-radius);background:var(--gv-accent-soft)}.gv-v15-reconcile-bridge span{display:block;font-size:9px;letter-spacing:.1em;font-weight:760;color:var(--gv-accent)}.gv-v15-reconcile-bridge strong{display:block;color:var(--gv-ink);font-size:13px}.gv-v15-reconcile-bridge p{margin:2px 0 0;color:var(--gv-muted);font-size:11px}.gv-v15-reconcile-bridge a{flex:0 0 auto;text-decoration:none;color:var(--gv-accent);font-size:12px;font-weight:680}
.gv-v15-storage-strip{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:9px;min-height:42px;padding:8px 13px;margin-bottom:12px;border:1px solid #e5dccd;border-radius:8px;background:var(--gv-warning-soft);text-decoration:none}.gv-v15-storage-strip .gv-data-source-dot{width:7px;height:7px;border-radius:50%;background:var(--gv-warning)}.gv-v15-storage-strip strong{font-size:11px;letter-spacing:.035em;color:#65573f}.gv-v15-storage-strip small{font-size:11px;color:var(--gv-muted)}.gv-v15-storage-strip em{font-style:normal;font-size:10px;color:var(--gv-warning);font-weight:680;white-space:nowrap}

@media (max-width:1439px){.gv-v15-statrail{grid-template-columns:repeat(2,1fr)}.gv-v15-statrail>div:nth-child(2){border-right:0}.gv-v15-statrail>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line)}.gv-v15-candidate-list{grid-template-columns:1fr}}
@media (max-width:1023px){.gv-v15-hero{flex-direction:column}.gv-v15-mode{width:100%;min-width:0;border-left:0;border-top:1px solid var(--gv-line);padding:14px 0 0}.gv-v15-grid-two,.gv-v15-integration-actions{grid-template-columns:1fr}.gv-v15-reconcile-bridge{align-items:flex-start}}
@media (max-width:767px){.gv-v15-hero{padding:20px}.gv-v15-hero h1{font-size:26px}.gv-v15-statrail{grid-template-columns:1fr 1fr}.gv-v15-statrail>div{padding:14px}.gv-v15-statrail strong{font-size:19px}.gv-v15-rule-list>div{grid-template-columns:1fr;gap:2px}.gv-v15-bottom-note,.gv-v15-reconcile-bridge{flex-direction:column;align-items:flex-start}.gv-v15-candidate-grid{grid-template-columns:1fr}.gv-v15-candidate-grid>div{border-right:0!important;border-bottom:1px solid var(--gv-line-soft)!important}.gv-v15-candidate-grid>div:last-child{border-bottom:0!important}.gv-v15-storage-strip{grid-template-columns:auto 1fr}.gv-v15-storage-strip small{grid-column:2}.gv-v15-storage-strip em{grid-column:2}.gv-v15-candidate-head{align-items:flex-start;flex-direction:column}.gv-v15-candidate footer{flex-direction:column;gap:2px}}
@media (max-width:767px){
  .gv-v15-tablewrap{overflow:visible}
  .gv-v15-table{min-width:0;display:block}
  .gv-v15-table thead{display:none}
  .gv-v15-table tbody{display:block}
  .gv-v15-table tr{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--gv-line);padding:10px 14px;gap:0 14px}
  .gv-v15-table tr:last-child{border-bottom:0}
  .gv-v15-table td{display:block;padding:8px 0;border:0!important;min-width:0}
  .gv-v15-table td:before{display:block;margin-bottom:3px;font-size:9px;line-height:1.2;letter-spacing:.08em;font-weight:760;color:var(--gv-faint)}
  .gv-v15-table td:nth-child(1){grid-column:1/-1}.gv-v15-table td:nth-child(1):before{content:"PROPOSED KEY"}
  .gv-v15-table td:nth-child(2):before{content:"LEGACY SOURCE"}
  .gv-v15-table td:nth-child(3):before{content:"SOURCE KEY"}
  .gv-v15-table td:nth-child(4){grid-column:1/-1}.gv-v15-table td:nth-child(4):before{content:"DISPLAY"}
  .gv-v15-table td:nth-child(5){grid-column:1/-1}.gv-v15-table td:nth-child(5):before{content:"CONTEXT"}
  .gv-v15-table td:nth-child(6):before{content:"METHOD"}
  .gv-v15-table td:nth-child(7):before{content:"CONFIDENCE"}
}

/* =========================================================
   ADAPTIVE WORKSPACE · V1.6
   User-specific language / density / sidebar / header modes
   ========================================================= */

/* Quick preference popover */
.gv-workspace-menu{width:372px;padding:12px;background:rgba(252,252,251,.98);border-color:rgba(39,45,51,.12);border-radius:12px;box-shadow:0 18px 44px rgba(28,34,39,.1)}
.gv-workspace-menu .gv-view-menu-head{margin:0;padding:8px 8px 13px;border-bottom:1px solid rgba(42,48,54,.08)}
.gv-workspace-menu .gv-view-menu-head strong{font-size:14px;font-weight:760;letter-spacing:-.02em;color:#272d32}
.gv-pref-quick-group{padding:11px 8px 0;border:0}
.gv-pref-quick-label{display:block;margin-bottom:7px;font-size:10px;font-weight:730;letter-spacing:.04em;color:#747d84}
.gv-pref-segment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;padding:3px;background:rgba(228,231,232,.66);border:1px solid rgba(44,50,56,.055);border-radius:9px}
.gv-pref-segment.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.gv-pref-segment.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.gv-pref-segment button{
  min-height:34px!important;padding:0 7px!important;border:0!important;border-radius:6px!important;
  display:grid!important;place-items:center!important;background:transparent!important;
  font-size:11.5px!important;font-weight:660!important;letter-spacing:-.015em!important;text-align:center!important;color:#626C75!important;cursor:pointer
}
.gv-pref-segment button:hover{background:rgba(250,250,249,.68)!important;color:#30363C!important}
.gv-pref-segment button.active{background:#FCFCFB!important;color:#252B30!important;box-shadow:0 1px 3px rgba(25,30,35,.1),inset 0 0 0 1px rgba(255,255,255,.78)}
.gv-pref-stack{display:grid;gap:3px}
.gv-pref-stack button{
  width:100%;min-height:48px;padding:7px 9px;border:0;background:transparent;border-radius:7px;
  display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;text-align:left;cursor:pointer
}
.gv-pref-stack button:hover{background:#F3F5F6}.gv-pref-stack button.active{background:#EDF1F3}
.gv-pref-stack button span{font-size:12px;font-weight:700;color:#3B4249}.gv-pref-stack button small{font-size:10.5px;color:#69737D}
.gv-pref-detail{height:36px;margin:10px 8px 0;padding:0 9px;border-top:1px solid rgba(42,48,54,.08);border-radius:0;display:flex;align-items:flex-end;justify-content:space-between;text-decoration:none;font-size:11px;font-weight:650;color:#626b72}
.gv-pref-detail:hover{color:#272D33}.gv-pref-detail b{font-size:14px;font-weight:500}
.gv-sidebar-toggle{display:grid}
.gv-sidebar-toggle svg{transition:transform .16s ease}
.gv-sidebar-toggle[data-sidebar-state="icon"] svg{transform:scaleX(.82)}
.gv-sidebar-toggle[data-sidebar-state="hidden"] svg{transform:rotate(180deg)}

/* Sidebar is a user preference on tablet/desktop. Mobile remains a drawer. */
@media (min-width:768px){
  html[data-sidebar="expanded"]{--sidebar-width:var(--sidebar-expanded-width)}
  html[data-sidebar="expanded"] .gv-brand{justify-content:flex-start;padding:0 24px}
  html[data-sidebar="expanded"] .gv-brand-word{display:block}
  html[data-sidebar="expanded"] .gv-brand-mark{display:none}
  html[data-sidebar="expanded"] .gv-nav{padding:20px 12px}
  html[data-sidebar="expanded"] .gv-nav-label,
  html[data-sidebar="expanded"] .gv-nav-text,
  html[data-sidebar="expanded"] .gv-sidebar-caption{display:block}
  html[data-sidebar="expanded"] .gv-nav-item{justify-content:flex-start;padding:0 12px}
  html[data-sidebar="expanded"] .gv-nav-item.active:before{left:-12px}

  html[data-sidebar="icon"]{--sidebar-width:var(--sidebar-collapsed-width)}
  html[data-sidebar="icon"] .gv-brand{justify-content:center;padding:0}
  html[data-sidebar="icon"] .gv-brand-word{display:none}
  html[data-sidebar="icon"] .gv-brand-mark{display:block;font-size:11px;letter-spacing:.08em;font-weight:800;color:#30363C}
  html[data-sidebar="icon"] .gv-nav{padding:16px 10px}
  html[data-sidebar="icon"] .gv-nav-label,
  html[data-sidebar="icon"] .gv-nav-text,
  html[data-sidebar="icon"] .gv-sidebar-caption{display:none}
  html[data-sidebar="icon"] .gv-nav-item{justify-content:center;padding:0;height:48px}
  html[data-sidebar="icon"] .gv-nav-item.active:before{left:-10px}

  html[data-sidebar="hidden"]{--sidebar-width:0px}
  html[data-sidebar="hidden"] .gv-sidebar{transform:translateX(-102%);opacity:0;pointer-events:none}
  .gv-sidebar{transition:width .18s ease,transform .18s ease,opacity .16s ease}
  .gv-shell{transition:margin-left .18s ease}
}

/* Header contract: always visible, or fully collapsed until an explicit click. */
html[data-header="hidden"] .gv-topbar{
  position:fixed;top:0;left:var(--sidebar-width);right:0;width:auto;
  transform:translateY(calc(-100% - 2px));
  transition:transform .2s ease,left .18s ease,box-shadow .16s ease;
}
html[data-header="hidden"] .gv-shell{padding-top:0}
html[data-header="hidden"] body.gv-header-peek .gv-topbar{transform:translateY(0);box-shadow:0 10px 28px rgba(25,30,35,.07)}

/* Functional pages do not repeat a marketing-style headline below the topbar. */
.gv-functional-hero{
  min-height:0!important;margin:0 0 16px!important;padding:0!important;
  display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important
}
.gv-functional-hero>:first-child{display:none!important}
.gv-functional-hero>:last-child{margin-left:auto!important}
.gv-functional-hero [class*="hero-actions"],
.gv-functional-hero [class*="-actions"]{flex-wrap:wrap;justify-content:flex-end}

/* Large View 2.0: genuine readability without turning the product into a zoomed page. */
html[data-view="large"]{
  --gv-body-size:19px;
  --gv-caption:12.5px;
  --gv-small:14px;
  --gv-ui:15px;
  --gv-heading:17px;
  --gv-page-title:20px;
  --gv-display:42px;
  --gv-row-scale:1.16;
  --gv-gap:18px;
  --gv-content-x:24px;
}
html[data-view="large"] .gv-main{width:100%;max-width:none;padding:24px var(--gv-content-x) 48px}
html[data-view="large"] .gv-nav-item{font-size:16.5px;height:50px}
html[data-view="large"] .gv-nav-label{font-size:11px}
html[data-view="large"] .gv-page-title{font-size:20px}
html[data-view="large"] .gv-btn{min-height:46px;font-size:14.5px;padding-left:16px;padding-right:16px}
html[data-view="large"] .gv-icon-btn{width:44px;height:44px}
html[data-view="large"] .gv-command-trigger{height:44px}
html[data-view="large"] .gv-panel-title{font-size:17px;line-height:1.35}
html[data-view="large"] .gv-panel-subtitle{font-size:13.5px;line-height:1.5}
html[data-view="large"] .gv-metric-label{font-size:14px}
html[data-view="large"] .gv-metric-foot{font-size:13px}
html[data-view="large"] .gv-metric-value{font-size:38px}
html[data-view="large"] input,
html[data-view="large"] select,
html[data-view="large"] textarea{font-size:16px;min-height:46px}
html[data-view="large"] table th{font-size:12.5px;line-height:1.35}
html[data-view="large"] table td{font-size:15px;line-height:1.5}
html[data-view="large"] .gv-project-main strong{font-size:16px}
html[data-view="large"] .gv-project-main span{font-size:14px}
html[data-view="large"] .gv-project-row{min-height:104px}
html[data-view="large"] .gv-attention-item{min-height:88px}
html[data-view="large"] .gv-context-strip{margin-bottom:18px}
html[data-view="large"] .gv-functional-hero{margin-bottom:12px!important}
html[data-view="large"] .gv-panel-head{min-height:72px;height:auto;padding-top:14px;padding-bottom:14px}
html[data-view="large"] .gv-user-meta strong{font-size:13.5px}
html[data-view="large"] .gv-user-meta span{font-size:11.5px}
html[data-view="large"] .gv-logout{font-size:13.5px;height:44px}
html[data-view="large"] .gv-pref-stack button span,
html[data-view="large"] .gv-pref-segment button{font-size:13px!important}
html[data-view="large"] .gv-pref-stack button small{font-size:12px}

@media (min-width:1600px){
  html[data-view="large"]{--gv-body-size:19.5px;--gv-page-title:21px;--gv-content-x:26px}
}
@media (min-width:2000px){
  html[data-view="large"]{--gv-body-size:20px;--gv-page-title:21px;--gv-content-x:28px}
}
@media (max-width:1439px){
  html[data-view="large"]{--gv-body-size:18px;--gv-page-title:19px;--gv-content-x:20px}
  html[data-view="large"] .gv-main{padding-top:20px}
}
@media (max-width:959px){
  html[data-view="large"]{--gv-body-size:17.5px;--gv-page-title:18.5px;--gv-content-x:16px}
}
@media (max-width:767px){
  .gv-sidebar-toggle{display:none}
  html[data-sidebar="expanded"],html[data-sidebar="icon"],html[data-sidebar="hidden"]{--sidebar-width:248px}
  html[data-sidebar="expanded"] .gv-sidebar,
  html[data-sidebar="icon"] .gv-sidebar,
  html[data-sidebar="hidden"] .gv-sidebar{opacity:1;pointer-events:auto}
  html[data-header="hidden"] .gv-topbar{left:0}
  .gv-functional-hero{align-items:stretch!important;margin-bottom:12px!important}
  .gv-functional-hero>:last-child{width:100%;margin-left:0!important}
  .gv-functional-hero [class*="hero-actions"],
  .gv-functional-hero [class*="-actions"]{width:100%;justify-content:flex-start}
  html[data-view="large"]{--gv-body-size:17.5px;--gv-content-x:12px}
  html[data-view="large"] .gv-main{padding:16px var(--gv-content-x) 34px}
  html[data-view="large"] .gv-btn{min-height:46px;font-size:14px}
  html[data-view="large"] .gv-panel-title{font-size:16px}
  html[data-view="large"] table td{font-size:14.5px}
  .gv-workspace-menu{position:fixed;left:10px;right:10px;top:72px;width:auto;max-height:calc(100vh - 86px);overflow:auto}
}

/* Personal workspace settings page */
.gv-preferences-summary{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px;margin-bottom:16px}
.gv-preferences-intro,.gv-preferences-preview{border:1px solid var(--gv-line);background:var(--gv-surface);border-radius:var(--gv-radius)}
.gv-preferences-intro{padding:24px 26px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.gv-preferences-intro span{display:block;font-size:10px;font-weight:760;letter-spacing:.12em;color:#8A939C}
.gv-preferences-intro strong{display:block;margin-top:5px;font-size:22px;font-weight:680;letter-spacing:-.025em;color:#292F35}
.gv-preferences-intro p{margin:7px 0 0;font-size:12.5px;color:#68727C;max-width:720px}
.gv-preferences-intro button{flex:0 0 auto}
.gv-preferences-preview{padding:18px 20px;display:grid;align-content:center;gap:8px}
.gv-preferences-preview>span{font-size:9.5px;font-weight:760;letter-spacing:.12em;color:#8B949D}
.gv-preferences-preview-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.gv-preferences-preview-row b{padding:6px 9px;border-radius:6px;background:#F0F2F4;font-size:11px;color:#56616A}
.gv-preferences-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.gv-preference-card{padding:0;overflow:hidden}
.gv-preference-card-head{min-height:76px;padding:16px 20px;border-bottom:1px solid var(--gv-line-soft);display:flex;align-items:center;justify-content:space-between;gap:16px}
.gv-preference-card-head div>span{display:block;font-size:9.5px;font-weight:770;letter-spacing:.12em;color:#8A939C}
.gv-preference-card-head strong{display:block;margin-top:3px;font-size:15px;color:#343B42}
.gv-preference-card-head small{font-size:10.5px;color:#747E88;text-align:right}
.gv-preference-options{padding:10px}
.gv-preference-option{
  width:100%;min-height:68px;padding:10px 12px;border:1px solid transparent;background:transparent;border-radius:8px;
  display:grid;grid-template-columns:34px minmax(0,1fr) 18px;gap:12px;align-items:center;text-align:left;cursor:pointer
}
.gv-preference-option:hover{background:#F5F6F7}
.gv-preference-option.active{background:#F1F3F5;border-color:#E2E5E8}
.gv-preference-option>i{width:30px;height:30px;border-radius:7px;border:1px solid #D9DEE2;display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:750;color:#65707A;background:#FCFCFD}
.gv-preference-option>span strong{display:block;font-size:13px;color:#3C434A}.gv-preference-option>span small{display:block;margin-top:3px;font-size:10.5px;color:#747E88}
.gv-preference-option>b{width:8px;height:8px;border-radius:50%;border:1px solid #AEB6BD}
.gv-preference-option.active>b{background:#6676A5;border-color:#6676A5;box-shadow:0 0 0 3px #E8ECF5}
.gv-preferences-note{margin-top:16px;padding:15px 18px;border-top:1px solid var(--gv-line);border-bottom:1px solid var(--gv-line);display:flex;align-items:center;justify-content:space-between;gap:18px;color:#68727C;font-size:11.5px}
.gv-preferences-note strong{color:#41484F}
@media(max-width:959px){.gv-preferences-summary,.gv-preferences-grid{grid-template-columns:1fr}}
@media(max-width:599px){.gv-preferences-intro{padding:18px;align-items:flex-start;flex-direction:column}.gv-preferences-intro strong{font-size:19px}.gv-preferences-preview{padding:16px}.gv-preference-card-head{padding:14px 16px}.gv-preferences-note{align-items:flex-start;flex-direction:column}}
.gv-preferences-note strong + span{margin-left:7px}
@media(max-width:599px){.gv-preferences-note strong + span{display:block;margin:4px 0 0}}

/* =========================================================
   V1.7 — Account profile synchronization
   ========================================================= */
.gv-profile-sync-card{margin-top:16px;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.gv-profile-sync-copy>span{display:block;font-size:9.5px;font-weight:780;letter-spacing:.12em;color:#8A939C}
.gv-profile-sync-copy>strong{display:block;margin-top:5px;font-size:16px;color:#343B42}
.gv-profile-sync-copy>p{margin:6px 0 0;max-width:760px;font-size:11.5px;line-height:1.55;color:#6E7881}
.gv-profile-sync-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.gv-profile-sync-badge{display:inline-flex;align-items:center;justify-content:center;min-width:64px;height:28px;padding:0 9px;border-radius:999px;border:1px solid #DCE1E5;background:#F5F6F7;font-size:9px;font-weight:800;letter-spacing:.1em;color:#737D86}
.gv-profile-sync-badge.synced{background:#EEF4F1;border-color:#D9E8E0;color:#4F7563}
.gv-profile-sync-badge.ready{background:#F1F3F8;border-color:#E0E4EF;color:#6674A0}
.gv-profile-sync-badge.saving{background:#F6F4EC;border-color:#EAE4CF;color:#85764C}
.gv-profile-sync-badge.error{background:#F8F0F0;border-color:#EEDDDD;color:#9A6262}
.gv-profile-sync-actions .gv-btn:disabled{opacity:.48;cursor:not-allowed}
html[data-view="large"] .gv-profile-sync-copy>strong{font-size:18px}
html[data-view="large"] .gv-profile-sync-copy>p{font-size:14px}
@media(max-width:767px){.gv-profile-sync-card{align-items:flex-start;flex-direction:column;padding:18px}.gv-profile-sync-actions{width:100%;justify-content:space-between}.gv-profile-sync-actions .gv-btn{flex:1}.gv-profile-sync-copy>p{font-size:12px}}

/* V1.7 — Profile foundation / staged role provisioning */
.gv-profile-foundation-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}
.gv-profile-foundation-state{flex:0 0 auto;text-align:right}.gv-profile-foundation-state span{display:block;font-size:9px;font-weight:800;letter-spacing:.12em;color:#87919A}.gv-profile-foundation-state strong{display:block;margin-top:6px;font-size:13px;color:#4E5962}
.gv-profile-foundation-metrics{margin-bottom:16px}.gv-profile-foundation-metrics .gv-metric-value{font-size:24px;letter-spacing:-.03em}
.gv-profile-foundation-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);gap:16px}
.gv-profile-foundation-steps{list-style:none;margin:0;padding:8px 20px 18px}.gv-profile-foundation-steps li{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-profile-foundation-steps li:last-child{border-bottom:0}.gv-profile-foundation-steps li>b{font-size:10px;letter-spacing:.08em;color:#9099A1}.gv-profile-foundation-steps strong{display:block;font-size:13px;color:#3C444B}.gv-profile-foundation-steps span{display:block;margin-top:4px;font-size:11px;line-height:1.55;color:#747F88}.gv-profile-foundation-steps code{font-size:.95em}
.gv-profile-foundation-security{padding-bottom:18px}.gv-profile-key,.gv-profile-sql{margin:0 20px 14px;padding:13px 14px;border:1px solid var(--gv-line-soft);border-radius:7px;background:#F8F9FA}.gv-profile-key span,.gv-profile-sql span{display:block;margin-bottom:7px;font-size:9px;font-weight:800;letter-spacing:.1em;color:#8B949D}.gv-profile-key code,.gv-profile-sql code{display:block;font-size:10.5px;line-height:1.55;color:#505A63;word-break:break-all;white-space:normal}.gv-profile-foundation-security .gv-inline-notice{margin:0 20px}
html[data-view="large"] .gv-profile-foundation-steps strong{font-size:16px}html[data-view="large"] .gv-profile-foundation-steps span{font-size:14px}html[data-view="large"] .gv-profile-key code,html[data-view="large"] .gv-profile-sql code{font-size:12.5px}
@media(max-width:1199px){.gv-profile-foundation-grid{grid-template-columns:1fr}.gv-profile-foundation-hero{align-items:flex-start}.gv-profile-foundation-state{text-align:left}}
@media(max-width:599px){.gv-profile-foundation-hero{flex-direction:column}.gv-profile-foundation-state{width:100%}.gv-profile-foundation-security .gv-inline-notice,.gv-profile-key,.gv-profile-sql{margin-left:14px;margin-right:14px}}
/* V1.7 profile foundation optical correction */
.gv-profile-foundation-hero{margin-bottom:16px;padding:20px 2px 18px;border-bottom:1px solid var(--gv-line);display:flex;align-items:flex-end;justify-content:space-between;gap:28px}
.gv-profile-foundation-hero .gv-eyebrow{font-size:9.5px;font-weight:800;letter-spacing:.14em;color:#8A939C}
.gv-profile-foundation-hero h1{margin:6px 0 0;font-size:24px;line-height:1.2;letter-spacing:-.03em;color:#30363C;font-weight:680}
.gv-profile-foundation-hero p{margin:7px 0 0;max-width:860px;font-size:12px;line-height:1.6;color:#707A83}
.gv-profile-foundation-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}
.gv-profile-foundation-metrics .gv-metric-card{min-height:124px;padding:18px 20px;display:flex;flex-direction:column;border-right:1px solid var(--gv-line-soft)}
.gv-profile-foundation-metrics .gv-metric-card:last-child{border-right:0}
.gv-profile-foundation-metrics .gv-metric-label{font-size:10.5px;color:#6C7680}
.gv-profile-foundation-metrics .gv-metric-value{margin-top:14px;font-size:22px;line-height:1;font-weight:670;color:#343B42}
.gv-profile-foundation-metrics .gv-metric-foot{margin-top:auto;padding-top:13px;font-size:10.5px;color:#7B858E}
html[data-view="large"] .gv-profile-foundation-hero h1{font-size:30px}
html[data-view="large"] .gv-profile-foundation-hero p{font-size:14px}
html[data-view="large"] .gv-profile-foundation-metrics .gv-metric-label{font-size:13px}
html[data-view="large"] .gv-profile-foundation-metrics .gv-metric-foot{font-size:12.5px}
@media(max-width:1199px){.gv-profile-foundation-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-profile-foundation-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-profile-foundation-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:599px){.gv-profile-foundation-hero{align-items:flex-start;flex-direction:column}.gv-profile-foundation-hero h1{font-size:22px}.gv-profile-foundation-metrics{grid-template-columns:1fr}.gv-profile-foundation-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-profile-foundation-metrics .gv-metric-card:last-child{border-bottom:0}}

/* =========================================================
   V1.8 — Greenfield Security / Auth Foundation
   ========================================================= */
.gv-security-hero{margin-bottom:16px;padding:20px 2px 18px;border-bottom:1px solid var(--gv-line);display:flex;align-items:flex-end;justify-content:space-between;gap:28px}
.gv-security-hero .gv-eyebrow{font-size:9.5px;font-weight:800;letter-spacing:.14em;color:#8A939C}
.gv-security-hero h1{margin:6px 0 0;font-size:24px;line-height:1.2;letter-spacing:-.03em;color:#30363C;font-weight:680}
.gv-security-hero p{margin:7px 0 0;max-width:860px;font-size:12px;line-height:1.6;color:#707A83}
.gv-security-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}
.gv-security-metrics .gv-metric-card{min-height:126px;padding:18px 20px;display:flex;flex-direction:column;border-right:1px solid var(--gv-line-soft)}
.gv-security-metrics .gv-metric-card:last-child{border-right:0}
.gv-security-metrics .gv-metric-label{font-size:10.5px;color:#6C7680}
.gv-security-metrics .gv-metric-value{margin-top:14px;font-size:21px;line-height:1;font-weight:670;letter-spacing:-.025em;color:#343B42}
.gv-security-metrics .gv-metric-foot{margin-top:auto;padding-top:13px;font-size:10.5px;color:#7B858E}
.gv-security-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:16px;margin-bottom:16px}
.gv-security-list{padding:4px 20px 16px}
.gv-security-list>div{min-height:62px;padding:12px 0;border-bottom:1px solid var(--gv-line-soft);display:grid;grid-template-columns:minmax(150px,.85fr) minmax(220px,1.4fr) auto;align-items:center;gap:16px}
.gv-security-list>div:last-child{border-bottom:0}
.gv-security-list strong{font-size:12.5px;color:#3D454C}.gv-security-list>div>span:not(.gv-badge){font-size:11px;line-height:1.5;color:#747E87}
.gv-security-callout{margin:8px 20px 18px;padding:16px;border:1px solid var(--gv-line-soft);border-radius:8px;background:#F7F8F9}
.gv-security-callout>span{display:block;font-size:9px;font-weight:800;letter-spacing:.12em;color:#87919A}
.gv-security-callout h3{margin:6px 0 0;font-size:14px;color:#3A4249}.gv-security-callout p{margin:7px 0 0;font-size:11px;line-height:1.58;color:#6E7881}
.gv-security-callout.is-ready{background:#F3F7F5;border-color:#DFEAE4}.gv-security-callout.is-review{background:#F8F7F3;border-color:#E9E5D8}
.gv-mini-rule{margin:0 20px;padding:11px 0;border-top:1px solid var(--gv-line-soft);display:flex;align-items:center;justify-content:space-between;gap:14px}.gv-mini-rule span{font-size:10.5px;color:#79838C}.gv-mini-rule strong{font-size:11px;color:#454E56}
.gv-security-rollout{margin-bottom:16px}.gv-security-steps{padding:6px 20px 20px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0}.gv-security-steps>div{min-height:112px;padding:14px;border-left:1px solid var(--gv-line-soft)}.gv-security-steps>div:first-child{border-left:0}.gv-security-steps b{display:block;font-size:9px;letter-spacing:.1em;color:#919AA2}.gv-security-steps strong{display:block;margin-top:14px;font-size:11.5px;color:#40484F}.gv-security-steps span{display:block;margin-top:5px;font-size:10px;line-height:1.45;color:#7A848D}
.gv-security-guardrail{padding:18px 20px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:14px;align-items:start}.gv-security-guardrail .gv-state-icon{width:30px;height:30px;border:1px solid #D9DEE2;border-radius:8px;display:grid;place-items:center;font-size:13px;font-weight:800;color:#69737C;background:#F7F8F9}.gv-security-guardrail span{display:block;font-size:9px;font-weight:800;letter-spacing:.12em;color:#8A939C}.gv-security-guardrail h2{margin:4px 0 0;font-size:13px;color:#3C444B}.gv-security-guardrail p{margin:5px 0 0;font-size:11px;line-height:1.55;color:#747E87}
html[data-view="large"] .gv-security-hero h1{font-size:30px}html[data-view="large"] .gv-security-hero p{font-size:14px}html[data-view="large"] .gv-security-list strong{font-size:16px}html[data-view="large"] .gv-security-list>div>span:not(.gv-badge){font-size:14px}html[data-view="large"] .gv-security-steps strong{font-size:14px}html[data-view="large"] .gv-security-steps span{font-size:12.5px}
@media(max-width:1439px){.gv-security-grid{grid-template-columns:1fr}}
@media(max-width:1199px){.gv-security-grid{grid-template-columns:1fr}.gv-security-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-security-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-security-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-security-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.gv-security-steps>div:nth-child(4){border-left:0;border-top:1px solid var(--gv-line-soft)}.gv-security-steps>div:nth-child(5),.gv-security-steps>div:nth-child(6){border-top:1px solid var(--gv-line-soft)}}
@media(max-width:767px){.gv-security-hero{align-items:flex-start;flex-direction:column}.gv-security-list>div{grid-template-columns:1fr;gap:5px;padding:14px 0}.gv-security-list .gv-badge{justify-self:start}.gv-security-steps{grid-template-columns:1fr;padding:2px 16px 16px}.gv-security-steps>div,.gv-security-steps>div:nth-child(4),.gv-security-steps>div:nth-child(5),.gv-security-steps>div:nth-child(6){min-height:auto;border-left:0;border-top:1px solid var(--gv-line-soft)}.gv-security-steps>div:first-child{border-top:0}.gv-security-steps strong{margin-top:8px}}
@media(max-width:599px){.gv-security-metrics{grid-template-columns:1fr}.gv-security-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-security-metrics .gv-metric-card:last-child{border-bottom:0}.gv-security-callout,.gv-mini-rule{margin-left:14px;margin-right:14px}}
.gv-security-list .gv-badge{display:inline-flex;align-items:center;justify-content:center;min-width:62px;height:25px;padding:0 8px;border-radius:999px;border:1px solid #DDE2E5;background:#F5F6F7;font-size:8.5px;font-weight:800;letter-spacing:.08em;color:#6E7881;white-space:nowrap}
.gv-security-list .gv-badge-green{background:#EEF4F1;border-color:#D9E8E0;color:#4F7563}
.gv-security-list .gv-badge-amber{background:#F6F3EA;border-color:#E8E0C9;color:#826F45}

/* =========================================================
   V1.9 — Greenfield Auth Pilot + MFA
   ========================================================= */
.gv-auth-body{margin:0;min-height:100vh;background:#F2F3F4;color:#343A40;font-family:var(--gv-font,SUIT,system-ui,-apple-system,"Segoe UI",sans-serif);-webkit-font-smoothing:antialiased}
.gv-auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,42vw) minmax(520px,1fr)}
.gv-auth-brand-panel{position:relative;min-height:100vh;padding:36px 44px;display:flex;flex-direction:column;justify-content:space-between;background:#E9ECEE;border-right:1px solid #DDE1E4;overflow:hidden}
.gv-auth-brand-panel:after{content:"";position:absolute;right:-18%;bottom:-22%;width:68%;aspect-ratio:1;border:1px solid rgba(55,64,72,.09);border-radius:50%}
.gv-auth-brand{position:relative;z-index:1;font-size:13px;font-weight:780;letter-spacing:.2em;color:#30363B}.gv-auth-brand.compact{font-size:11px}
.gv-auth-brand-copy{position:relative;z-index:1;max-width:560px;padding-bottom:8vh}.gv-auth-brand-copy>span{font-size:9px;font-weight:800;letter-spacing:.15em;color:#8A939B}.gv-auth-brand-copy h1{margin:12px 0 0;font-size:clamp(34px,3vw,54px);line-height:1.12;letter-spacing:-.045em;font-weight:610;color:#2F353A}.gv-auth-brand-copy p{margin:18px 0 0;max-width:470px;font-size:14px;line-height:1.75;color:#6D7780}
.gv-auth-brand-foot{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:18px;border-top:1px solid rgba(63,72,80,.13)}.gv-auth-brand-foot span{font-size:8.5px;font-weight:800;letter-spacing:.14em;color:#7B858D}.gv-auth-brand-foot em{font-size:10px;font-style:normal;color:#8A939B}
.gv-auth-main{min-width:0;min-height:100vh;padding:30px 5vw 50px;display:flex;flex-direction:column}.gv-auth-shell-single{grid-template-columns:1fr}.gv-auth-shell-single .gv-auth-main{width:min(760px,100%);margin:0 auto;padding-left:24px;padding-right:24px}
.gv-auth-topbar{height:42px;display:flex;align-items:center;justify-content:space-between}.gv-auth-lang{margin-left:auto;display:flex;align-items:center;gap:8px;color:#A0A7AD}.gv-auth-lang button{border:0;background:transparent;padding:6px 1px;font:inherit;font-size:10px;font-weight:750;color:#9AA2A9;cursor:pointer}.gv-auth-lang button.active{color:#343B41}
.gv-auth-card{width:min(470px,100%);margin:auto;background:#FCFCFD;border:1px solid #DDE1E4;border-radius:10px;padding:34px 36px;box-shadow:0 10px 34px rgba(38,45,51,.025)}.gv-auth-shell-single .gv-auth-card{width:min(620px,100%)}
.gv-auth-card-head>span{font-size:8.5px;font-weight:800;letter-spacing:.14em;color:#8B949C}.gv-auth-card-head h2{margin:9px 0 0;font-size:26px;letter-spacing:-.035em;font-weight:650;color:#31373C}.gv-auth-card-head p{margin:8px 0 0;font-size:12px;line-height:1.65;color:#747E86}
.gv-auth-form{margin-top:28px;display:grid;gap:17px}.gv-auth-form label,.gv-auth-bootstrap-form label{display:grid;gap:7px}.gv-auth-form label>span,.gv-auth-bootstrap-form label>span{font-size:10.5px;font-weight:650;color:#5D6770}.gv-auth-form input,.gv-auth-bootstrap-form input,.gv-auth-bootstrap-form select{width:100%;height:46px;box-sizing:border-box;border:1px solid #D8DDE1;border-radius:7px;background:#FFF;padding:0 13px;font:inherit;font-size:13px;color:#333A40;outline:none;transition:border-color .15s,box-shadow .15s}.gv-auth-form input:focus,.gv-auth-bootstrap-form input:focus,.gv-auth-bootstrap-form select:focus{border-color:#AAB2B9;box-shadow:0 0 0 3px rgba(70,80,88,.055)}.gv-auth-submit{width:100%;height:46px;justify-content:center;margin-top:3px}.gv-auth-back{width:100%;justify-content:center}.gv-auth-form-status{min-height:18px;font-size:11px;line-height:1.45;color:#737D85}.gv-auth-form-status[data-state="error"]{color:#9A5B57}.gv-auth-form-status[data-state="success"]{color:#557563}
.gv-auth-card-foot{margin-top:25px;padding-top:17px;border-top:1px solid #ECEEEF;display:flex;justify-content:space-between;gap:14px;align-items:center}.gv-auth-card-foot span,.gv-auth-card-foot a{font-size:9.5px;color:#879098}.gv-auth-card-foot a{text-decoration:none;border-bottom:1px solid #D4D9DC}
.gv-auth-readiness{margin-top:26px;padding:15px;border:1px solid #E6E1D4;border-radius:8px;background:#F8F6F0;display:grid;grid-template-columns:28px 1fr;gap:12px}.gv-auth-readiness.is-ready{background:#F2F6F4;border-color:#DEE9E3}.gv-auth-state-mark{width:26px;height:26px;border:1px solid #DED8C8;border-radius:50%;display:grid;place-items:center;font-size:12px;color:#7E7255}.gv-auth-readiness.is-ready .gv-auth-state-mark{border-color:#D2E2D9;color:#597565}.gv-auth-readiness strong{font-size:12px;color:#454C52}.gv-auth-readiness p{margin:4px 0 0;font-size:10.5px;line-height:1.55;color:#778089}.gv-auth-checks{margin:18px 0 0}.gv-auth-checks>div{padding:10px 0;border-bottom:1px solid #ECEEEF;display:flex;justify-content:space-between;gap:20px}.gv-auth-checks dt{font-size:10px;color:#7A848C}.gv-auth-checks dd{margin:0;font-size:9px;font-weight:800;letter-spacing:.08em;color:#59636B}.gv-auth-primary-link{margin-top:22px;height:44px;border-radius:7px;background:#30363B;color:#FFF;text-decoration:none;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}
.gv-auth-mfa-intro{padding:14px 15px;border:1px solid #E3E6E8;border-radius:8px;background:#F7F8F9}.gv-auth-mfa-intro span{font-size:8px;font-weight:800;letter-spacing:.13em;color:#8B949C}.gv-auth-mfa-intro strong{display:block;margin-top:6px;font-size:12px;color:#424A50}.gv-auth-mfa-intro p{margin:4px 0 0;font-size:10px;line-height:1.5;color:#778089}.gv-auth-method-toggle{justify-self:start}
.gv-mfa-secret-box{margin-top:26px;padding:20px;border:1px solid #DDE2E5;border-radius:8px;background:#F7F8F9;text-align:center}.gv-mfa-secret-box>span{font-size:8px;font-weight:800;letter-spacing:.14em;color:#8A939B}.gv-mfa-secret-box>strong{display:block;margin:12px 0 0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:17px;letter-spacing:.12em;line-height:1.6;word-break:break-all;color:#343B41}.gv-mfa-secret-box p{margin:9px 0 0;font-size:10px;line-height:1.55;color:#758089}.gv-mfa-secret-box button{margin-top:8px}.gv-mfa-uri{margin:12px 0 0;padding:10px 12px;border:1px solid #E6E9EB;border-radius:7px}.gv-mfa-uri summary{font-size:9.5px;color:#76818A;cursor:pointer}.gv-mfa-uri code{display:block;margin-top:8px;font-size:9px;line-height:1.5;word-break:break-all;color:#69737B}
.gv-recovery-head{margin-top:26px}.gv-recovery-head>span{font-size:8px;font-weight:800;letter-spacing:.13em;color:#8A939B}.gv-recovery-head h3{margin:7px 0 0;font-size:17px;color:#373E44}.gv-recovery-head p{margin:7px 0 0;font-size:10.5px;line-height:1.6;color:#737E87}.gv-recovery-grid{margin-top:17px;padding:16px;border:1px solid #DDE2E5;border-radius:8px;background:#F7F8F9;display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}.gv-recovery-grid code{font-size:11px;color:#4B545B}.gv-recovery-actions{margin-top:17px;display:flex;justify-content:flex-end;gap:8px}
.gv-auth-bootstrap-form{padding:4px 20px 20px;display:grid;gap:16px}.gv-auth-admin-note{margin:10px 20px 18px}.gv-auth-admin-link{margin:0 20px 20px}.gv-auth-wide-label small{font-size:9.5px;line-height:1.45;color:#838C94}
.gv-auth-session-list{padding:4px 20px 18px}.gv-auth-session-row{min-height:76px;padding:13px 0;border-bottom:1px solid var(--gv-line-soft);display:flex;align-items:center;justify-content:space-between;gap:20px}.gv-auth-session-row:last-child{border-bottom:0}.gv-auth-session-row>div:first-child>span{display:block;font-size:8px;font-weight:800;letter-spacing:.12em;color:#8A939B}.gv-auth-session-row strong{display:block;margin-top:5px;font-size:12px;color:#424A51}.gv-auth-session-row small{display:block;margin-top:4px;font-size:10px;color:#7B858D}
html[data-view="large"] .gv-auth-session-row strong{font-size:16px}html[data-view="large"] .gv-auth-session-row small{font-size:13px}
@media(max-width:900px){.gv-auth-shell{grid-template-columns:1fr}.gv-auth-brand-panel{display:none}.gv-auth-main{padding:24px}.gv-auth-card{margin:8vh auto auto}}
@media(max-width:599px){.gv-auth-main{padding:18px 16px 30px}.gv-auth-card{padding:26px 20px;margin:5vh auto auto;border-radius:9px}.gv-auth-card-head h2{font-size:23px}.gv-recovery-grid{grid-template-columns:1fr}.gv-recovery-actions{flex-direction:column-reverse}.gv-recovery-actions .gv-btn{width:100%;justify-content:center}.gv-auth-session-row{align-items:flex-start;flex-direction:column}.gv-auth-session-row>div:last-child{width:100%}.gv-auth-session-row .gv-btn{width:100%;justify-content:center}}
.gv-auth-security-actions{padding:0 20px 20px;display:flex;gap:8px;flex-wrap:wrap}.gv-auth-pilot-overview{margin-bottom:16px}.gv-btn-sm{min-height:32px;padding:0 10px;font-size:10px}
@media(max-width:599px){.gv-auth-security-actions{padding-left:14px;padding-right:14px}.gv-auth-security-actions .gv-btn{flex:1;justify-content:center}}
.gv-auth-body [hidden]{display:none!important}
.gv-auth-brand-copy{max-width:660px}
.gv-auth-brand-copy h1{word-break:keep-all}
.gv-security-session-notice{margin-bottom:14px;min-height:58px;padding:12px 14px;border:1px solid #E5DDC8;border-radius:8px;background:#F8F6EF;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px}.gv-security-session-notice>span{font-size:8px;font-weight:800;letter-spacing:.13em;color:#88764F}.gv-security-session-notice strong{display:block;font-size:11.5px;color:#454C52}.gv-security-session-notice small{display:block;margin-top:3px;font-size:10px;line-height:1.4;color:#78828A}.gv-security-session-notice a{font-size:10px;font-weight:700;color:#555F67;text-decoration:none;border-bottom:1px solid #C9CED2}
html[data-view="large"] .gv-security-session-notice strong{font-size:15px}html[data-view="large"] .gv-security-session-notice small{font-size:12.5px}
@media(max-width:599px){.gv-security-session-notice{grid-template-columns:1fr;align-items:start}.gv-security-session-notice>span{margin-bottom:-4px}.gv-security-session-notice a{justify-self:start}}

/* V1.10 · Greenfield Data Intake */
.gv-import-results[hidden]{display:none!important}.gv-import-overview{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.gv-import-overview .gv-card{min-height:154px}.gv-import-overview h2{margin:7px 0 8px;font-size:16px}.gv-import-overview p{margin:0;color:var(--gv-muted);line-height:1.65;font-size:11px}.gv-import-workbench{margin-top:14px}.gv-import-form{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(0,1fr);gap:14px;align-items:stretch}.gv-import-form>.gv-field{padding:18px;border:1px solid var(--gv-line-soft);border-radius:8px;background:#FBFCFC}.gv-import-form>.gv-field span{display:block;margin-bottom:8px;font-size:10px;font-weight:700;color:#606970}.gv-import-form select,.gv-import-map select{width:100%;height:42px;border:1px solid var(--gv-line);border-radius:7px;background:#fff;padding:0 11px;color:#424B52;font:inherit}.gv-import-drop{min-height:146px;border:1px dashed #C9CFD3;border-radius:9px;background:#FCFDFD;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px;cursor:pointer;transition:.16s ease}.gv-import-drop:hover,.gv-import-drop.is-drag{border-color:#88958E;background:#F7F9F8}.gv-import-drop input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.gv-import-drop-icon{display:grid;place-items:center;width:44px;height:32px;border-radius:6px;background:#EEF2F0;color:#66766E;font-size:9px;font-weight:800;letter-spacing:.08em}.gv-import-drop strong{margin-top:9px;font-size:13px;color:#485159}.gv-import-drop small{margin-top:5px;max-width:560px;font-size:9px;color:#8A939A;line-height:1.6}.gv-import-drop em{margin-top:8px;font-style:normal;font-size:9px;color:#68746D}.gv-import-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:7px}.gv-import-results{margin-top:14px}.gv-import-kpis{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--gv-line-soft);border-radius:8px;overflow:hidden;margin-bottom:18px}.gv-import-kpi{padding:14px 16px;border-right:1px solid var(--gv-line-soft);background:#FBFCFC}.gv-import-kpi:last-child{border-right:0}.gv-import-kpi span{display:block;font-size:8px;color:#8E979E;letter-spacing:.06em}.gv-import-kpi strong{display:block;margin-top:5px;font-size:20px;color:#40494F}.gv-import-kpi.is-good strong{color:#577064}.gv-import-kpi.is-review strong{color:#8A7659}.gv-import-kpi.is-error strong{color:#94685D}.gv-import-mapping-block{padding:4px 0 18px}.gv-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:10px 0}.gv-section-title h3{margin:0;font-size:13px}.gv-section-title p{margin:4px 0 0;font-size:9px;color:#8B949B}.gv-import-mapping{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gv-import-map{padding:10px;border:1px solid var(--gv-line-soft);border-radius:7px;background:#FCFDFD}.gv-import-map>span{display:block;margin-bottom:6px;font-size:9px;color:#616B72;font-weight:700}.gv-import-map b{font-size:7px;color:#8A6458;margin-left:3px}.gv-import-map select{height:36px;font-size:10px}.gv-import-issues{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 18px}.gv-import-alert{padding:12px 14px;border:1px solid var(--gv-line-soft);border-radius:7px;background:#FAFBFB}.gv-import-alert strong{display:block;font-size:10px;color:#4B555C}.gv-import-alert span{display:block;margin-top:4px;font-size:8.5px;color:#89929A;line-height:1.55}.gv-import-alert.is-good{background:#F7FAF8}.gv-import-alert.is-review{background:#FBF8F3}.gv-import-alert.is-error{background:#FBF5F3}.gv-import-table{min-width:900px}.gv-import-table td{vertical-align:top}.gv-import-note{max-width:340px;color:#7A848B}.gv-import-footer-note{display:flex;align-items:center;gap:10px;margin-top:12px;padding:11px 13px;border-top:1px solid var(--gv-line-soft);font-size:9px;color:#7B858C}.gv-import-footer-note strong{font-size:7.5px;letter-spacing:.1em;color:#66766E}.gv-overline{font-size:7.5px;letter-spacing:.12em;font-weight:760;color:#929B9F}
@media(max-width:1439px){.gv-import-overview{grid-template-columns:1fr 1fr}.gv-import-overview article:last-child{grid-column:1/-1}.gv-import-mapping{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.gv-import-overview,.gv-import-form,.gv-import-mapping,.gv-import-issues{grid-template-columns:1fr}.gv-import-overview article:last-child{grid-column:auto}.gv-import-actions{grid-column:auto}.gv-import-kpis{grid-template-columns:repeat(2,1fr)}.gv-import-kpi{border-bottom:1px solid var(--gv-line-soft)}.gv-import-kpi:nth-child(even){border-right:0}.gv-import-kpi:nth-last-child(-n+2){border-bottom:0}.gv-import-drop{min-height:170px}.gv-section-title{align-items:flex-start;flex-direction:column}.gv-import-mapping-block .gv-btn{width:100%}}
body.gv-pref-large .gv-import-overview h2{font-size:21px}body.gv-pref-large .gv-import-overview p{font-size:15px}body.gv-pref-large .gv-import-drop strong{font-size:18px}body.gv-pref-large .gv-import-drop small,body.gv-pref-large .gv-import-drop em{font-size:13px}body.gv-pref-large .gv-import-map>span{font-size:13px}body.gv-pref-large .gv-import-map select{font-size:14px;height:46px}body.gv-pref-large .gv-import-alert strong{font-size:14px}body.gv-pref-large .gv-import-alert span{font-size:12px}

/* V1.11 · Secure Import Review Gate */
.gv-import-stagebar{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 20px;margin-top:18px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.52)}
.gv-import-stagebar>div{display:grid;gap:5px}.gv-import-stagebar strong{font-size:14px}.gv-import-stagebar span{font-size:12px;color:var(--muted);line-height:1.6}
.gv-import-batches{margin-top:18px}.gv-import-gate-note{display:flex;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--soft);font-size:12px}.gv-import-gate-note span{color:var(--muted)}
.gv-import-batch-list{display:grid;margin-top:14px}.gv-import-batch{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 4px;border-top:1px solid var(--line)}.gv-import-batch:first-child{border-top:0}.gv-import-batch-main{min-width:0;display:grid;gap:7px}.gv-import-batch-title{display:flex;gap:9px;align-items:center}.gv-import-batch-title strong{font-size:14px}.gv-import-batch-main p{margin:0;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gv-import-batch-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:11px}.gv-import-batch-actions{display:flex;gap:8px;flex:0 0 auto}.gv-import-self-note{font-size:11px;color:var(--muted);white-space:nowrap}.gv-empty-mini{padding:24px 4px;color:var(--muted);font-size:13px}
html[data-view="large"] .gv-import-stagebar span,html[data-view="large"] .gv-import-gate-note,html[data-view="large"] .gv-import-batch-main p{font-size:15px}html[data-view="large"] .gv-import-batch-title strong{font-size:18px}html[data-view="large"] .gv-import-batch-meta,html[data-view="large"] .gv-import-self-note{font-size:14px}
@media(max-width:760px){.gv-import-stagebar,.gv-import-batch{align-items:stretch;flex-direction:column}.gv-import-stagebar .gv-btn{width:100%}.gv-import-gate-note{align-items:flex-start;flex-direction:column;gap:4px}.gv-import-batch-actions{width:100%}.gv-import-batch-actions .gv-btn{flex:1}.gv-import-self-note{white-space:normal}}

/* V1.12 · Secure Row Review / Commit Readiness */
.gv-row-review-overview{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.gv-row-review-overview .gv-card{min-height:148px}.gv-row-review-overview h2{margin:7px 0 8px;font-size:16px}.gv-row-review-overview p{margin:0;color:var(--gv-muted);font-size:11px;line-height:1.65}
.gv-row-review-summary,.gv-row-review-list-card,.gv-commit-readiness{margin-top:14px}.gv-row-review-list{display:grid}.gv-row-review-item{padding:20px 4px;border-top:1px solid var(--gv-line-soft)}.gv-row-review-item:first-child{border-top:0}.gv-row-review-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.gv-row-review-top h3{margin:6px 0 0;font-size:15px}.gv-review-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.gv-review-field{min-height:74px;padding:11px 12px;border:1px solid var(--gv-line-soft);border-radius:8px;background:#FBFCFC;display:grid;align-content:start;gap:5px}.gv-review-field>span{font-size:8px;color:#8B949B}.gv-review-field>strong{font-size:11px;color:#495159;word-break:break-word}.gv-text-action{appearance:none;border:0;background:none;padding:0;color:#697B72;font:inherit;font-size:8.5px;text-decoration:underline;text-underline-offset:2px;cursor:pointer;justify-self:start}.gv-review-warning{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.gv-review-warning span{padding:6px 8px;border-radius:6px;background:#FBF7F0;border:1px solid #ECE2D4;color:#806F58;font-size:8.5px}.gv-review-decision{margin-top:14px;padding:14px;border:1px solid var(--gv-line-soft);border-radius:9px;background:#FCFDFD}.gv-review-options{display:flex;gap:8px;flex-wrap:wrap}.gv-review-options label{cursor:pointer}.gv-review-options input{position:absolute;opacity:0;pointer-events:none}.gv-review-options span{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid var(--gv-line);border-radius:7px;background:#fff;color:#68727A;font-size:10px}.gv-review-options input:checked+span{border-color:#7D8B84;background:#F0F4F2;color:#46534D;font-weight:700}.gv-review-candidates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}.gv-review-candidates[hidden]{display:none!important}.gv-review-candidate{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid var(--gv-line-soft);border-radius:7px;background:#fff;cursor:pointer}.gv-review-candidate input{margin-top:2px}.gv-review-candidate span{display:grid;gap:3px;min-width:0}.gv-review-candidate b{font-size:10px;color:#4A535A}.gv-review-candidate small{font-size:8px;color:#929A9F;white-space:normal}.gv-review-decision>[data-save-resolution]{margin-top:10px}.gv-inline-actions{display:flex;gap:7px;align-items:center}.gv-commit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line-soft);border-radius:8px;overflow:hidden}.gv-commit-grid>div{padding:15px 16px;border-right:1px solid var(--gv-line-soft);background:#FBFCFC}.gv-commit-grid>div:last-child{border-right:0}.gv-commit-grid span{display:block;font-size:8px;color:#8D969C}.gv-commit-grid strong{display:block;margin-top:5px;font-size:18px;color:#414A50}.gv-commit-hash{display:grid;gap:7px;margin-top:14px;padding:13px 14px;border:1px solid var(--gv-line-soft);border-radius:8px;background:#FCFDFD}.gv-commit-hash span{font-size:8px;color:#8B949B}.gv-commit-hash code{font-size:9px;color:#536059;word-break:break-all}.gv-pii-panel{max-width:520px}.gv-pii-step,.gv-pii-reason{display:grid;gap:12px;padding:18px 0}.gv-pii-step p,.gv-pii-reason p{margin:0;color:var(--gv-muted);font-size:11px;line-height:1.65}.gv-pii-value{display:grid;gap:6px;margin-top:12px;padding:16px;border-radius:8px;background:#F7F9F8;border:1px solid var(--gv-line-soft)}.gv-pii-value span,.gv-pii-value small{font-size:9px;color:#8B949B}.gv-pii-value strong{font-size:20px;letter-spacing:.02em;color:#37413D;word-break:break-all}
html[data-view="large"] .gv-row-review-overview h2{font-size:21px}html[data-view="large"] .gv-row-review-overview p{font-size:15px}html[data-view="large"] .gv-row-review-top h3{font-size:20px}html[data-view="large"] .gv-review-field>span{font-size:12px}html[data-view="large"] .gv-review-field>strong{font-size:15px}html[data-view="large"] .gv-text-action{font-size:12px}html[data-view="large"] .gv-review-options span{min-height:46px;font-size:14px}html[data-view="large"] .gv-review-candidate b{font-size:14px}html[data-view="large"] .gv-review-candidate small{font-size:12px}html[data-view="large"] .gv-commit-grid span{font-size:12px}html[data-view="large"] .gv-commit-grid strong{font-size:23px}html[data-view="large"] .gv-commit-hash span{font-size:12px}html[data-view="large"] .gv-commit-hash code{font-size:13px}html[data-view="large"] .gv-pii-step p,html[data-view="large"] .gv-pii-reason p{font-size:15px}
@media(max-width:1439px){.gv-row-review-overview{grid-template-columns:1fr 1fr}.gv-row-review-overview article:last-child{grid-column:1/-1}.gv-review-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-review-candidates{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.gv-row-review-overview,.gv-review-fields,.gv-review-candidates,.gv-commit-grid{grid-template-columns:1fr}.gv-row-review-overview article:last-child{grid-column:auto}.gv-row-review-top{flex-direction:column}.gv-review-options{display:grid;grid-template-columns:1fr}.gv-review-options span{width:100%;justify-content:center}.gv-review-decision>[data-save-resolution]{width:100%}.gv-commit-grid>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-commit-grid>div:last-child{border-bottom:0}.gv-inline-actions{width:100%;justify-content:space-between}.gv-row-review-list-card .gv-card-head{align-items:flex-start;flex-direction:column}}

/* V1.13 · Canonical Client Commit Pilot */
.gv-canonical-hero{margin-bottom:16px}
.gv-canonical-principles{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}
.gv-canonical-principles .gv-card{min-height:164px}
.gv-canonical-preflight-card,.gv-canonical-execute-card,.gv-canonical-result{margin-top:16px}
.gv-security-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.gv-security-check{border:1px solid var(--gv-border,#dfe3e6);border-radius:8px;padding:14px 15px;display:grid;gap:5px;min-width:0;background:var(--gv-panel,#fff)}
.gv-security-check span{font-size:12px;color:var(--gv-muted,#7d858d)}
.gv-security-check strong{font-size:15px;font-weight:650;color:var(--gv-text,#30363c)}
.gv-security-check small{font-size:12px;line-height:1.5;color:var(--gv-muted,#7d858d)}
.gv-security-check.is-good{border-color:#d6ded8;background:#fbfcfb}
.gv-security-check.is-warn{border-color:#e5d8d2;background:#fdfbf9}
.gv-canonical-counts{margin-top:16px}
.gv-canonical-form-grid{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:14px;margin-top:16px}
.gv-canonical-form-grid .gv-inline-actions{align-items:stretch}
.gv-canonical-form-grid .gv-inline-actions input{min-width:0;flex:1}
.gv-canonical-warning{margin-top:16px}
.gv-checkbox-row{display:flex;align-items:flex-start;gap:10px;margin:16px 0;padding:14px 16px;border:1px solid var(--gv-border,#dfe3e6);border-radius:8px;background:var(--gv-panel,#fff);font-size:14px;line-height:1.55;color:var(--gv-text,#30363c)}
.gv-checkbox-row input{margin-top:3px;width:18px;height:18px;flex:0 0 auto}
.gv-canonical-result[hidden]{display:none!important}
@media (max-width:1439px){.gv-security-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-canonical-form-grid{grid-template-columns:1fr 1fr}.gv-canonical-form-grid .gv-field:last-child{grid-column:1/-1}}
@media (max-width:767px){.gv-canonical-principles,.gv-security-check-grid,.gv-canonical-form-grid{grid-template-columns:1fr}.gv-canonical-form-grid .gv-field:last-child{grid-column:auto}.gv-canonical-principles .gv-card{min-height:0}.gv-checkbox-row{font-size:15px}.gv-canonical-form-grid .gv-inline-actions{display:grid;grid-template-columns:1fr auto}}
html[data-view="large"] .gv-security-check strong{font-size:18px}
html[data-view="large"] .gv-security-check span,html[data-view="large"] .gv-security-check small{font-size:15px}
html[data-view="large"] .gv-checkbox-row{font-size:18px}

/* ========================================================================== */
/* V1.14 · Canonical Client Read Model / Production Pilot Verification        */
/* ========================================================================== */
.gv-v114-client-hero code,.gv-v114-verification-hero code,.gv-v114-boundary-note code,.gv-v114-readonly-note code{font-size:.92em;background:var(--gv-surface-quiet);padding:2px 5px;border-radius:4px}
.gv-v114-client-metrics{margin-top:16px}
.gv-v114-client-commandbar{margin-top:16px}
.gv-v114-client-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(340px,.8fr);gap:16px;margin-top:16px;align-items:start}
.gv-v114-client-list-card,.gv-v114-client-detail{min-width:0}
.gv-v114-client-list{display:flex;flex-direction:column;border-top:1px solid var(--gv-line-soft)}
.gv-v114-client-row{width:100%;min-height:74px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;display:grid;grid-template-columns:46px minmax(0,1.6fr) minmax(130px,.65fr) auto;gap:14px;align-items:center;padding:12px 4px;text-align:left;cursor:pointer;color:inherit}
.gv-v114-client-row[hidden]{display:none!important}
.gv-v114-client-row:hover{background:var(--gv-surface-soft)}
.gv-v114-client-row.is-active{background:var(--gv-accent-soft)}
.gv-v114-client-monogram{width:40px;height:40px;border:1px solid var(--gv-line);background:var(--gv-surface);border-radius:9px;display:grid;place-items:center;font-size:12px;font-weight:780;letter-spacing:.02em;color:var(--gv-text)}
.gv-v114-client-row-main,.gv-v114-client-row-meta{display:flex;flex-direction:column;min-width:0}
.gv-v114-client-row-main strong{font-size:14px;color:var(--gv-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v114-client-row-main small,.gv-v114-client-row-meta small{font-size:11px;color:var(--gv-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v114-client-row-meta b{font-size:12px;font-weight:640;color:var(--gv-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v114-list-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 4px 2px;font-size:11px;color:var(--gv-muted)}
.gv-v114-client-detail{position:sticky;top:calc(var(--gv-topbar) + 16px)}
.gv-v114-detail-grid{margin:16px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--gv-line-soft);border:1px solid var(--gv-line-soft);border-radius:8px;overflow:hidden}
.gv-v114-detail-grid>div{background:var(--gv-surface);padding:14px}
.gv-v114-detail-grid dt{font-size:10px;letter-spacing:.08em;color:var(--gv-faint);text-transform:uppercase;margin-bottom:5px}
.gv-v114-detail-grid dd{margin:0;font-size:13px;color:var(--gv-ink);word-break:break-word}
.gv-v114-detail-grid code{font-size:11px}
.gv-v114-provenance{margin-top:14px;padding:16px;border:1px solid var(--gv-line);border-radius:8px;background:var(--gv-surface-soft);display:flex;flex-direction:column;gap:3px}
.gv-v114-provenance>span{font-size:10px;letter-spacing:.1em;color:var(--gv-faint)}
.gv-v114-provenance>strong{font-size:14px;color:var(--gv-ink)}
.gv-v114-provenance>small{font-size:11px;color:var(--gv-muted);word-break:break-all}
.gv-v114-provenance .gv-text-btn{margin-top:8px;align-self:flex-start}
.gv-v114-readonly-note{margin-top:14px;padding:14px;border-left:2px solid var(--gv-accent);background:var(--gv-accent-soft);display:flex;flex-direction:column;gap:2px}
.gv-v114-readonly-note strong{font-size:12px;color:var(--gv-ink)}
.gv-v114-readonly-note span{font-size:11px;color:var(--gv-muted)}

.gv-v114-readiness-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:16px}
.gv-v114-readiness-metrics .gv-metric-card{min-height:126px;padding:18px 20px;display:flex;flex-direction:column;border-right:1px solid var(--gv-line-soft)}
.gv-v114-readiness-metrics .gv-metric-card:last-child{border-right:0}
.gv-v114-readiness-metrics .gv-metric-label{font-size:10.5px;color:#6C7680}
.gv-v114-readiness-metrics .gv-metric-value{margin-top:14px;font-size:21px;line-height:1;font-weight:670;letter-spacing:-.025em;color:#343B42}
.gv-v114-readiness-metrics .gv-metric-foot{margin-top:auto;padding-top:13px;font-size:10.5px;color:#7B858E}
html[data-view="large"] .gv-v114-readiness-metrics .gv-metric-label{font-size:13px}
html[data-view="large"] .gv-v114-readiness-metrics .gv-metric-value{font-size:27px}
html[data-view="large"] .gv-v114-readiness-metrics .gv-metric-foot{font-size:12.5px}
.gv-v114-readiness-grid{margin-top:16px;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}
.gv-v114-checklist>div{grid-template-columns:minmax(140px,.45fr) minmax(0,1fr) auto}
.gv-v114-runbook{display:flex;flex-direction:column;margin-top:4px}
.gv-v114-runbook>div{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--gv-line-soft)}
.gv-v114-runbook b{font-size:11px;color:var(--gv-faint);letter-spacing:.08em}
.gv-v114-runbook span{display:flex;flex-direction:column;gap:1px}
.gv-v114-runbook strong{font-size:13px;color:var(--gv-ink)}
.gv-v114-runbook small{font-size:11px;color:var(--gv-muted)}
.gv-v114-boundary-note{margin-top:14px;padding:13px 14px;border:1px solid var(--gv-line);background:var(--gv-surface-soft);border-radius:8px;font-size:11px;color:var(--gv-muted);line-height:1.65}
.gv-v114-verifier,.gv-v114-restore{margin-top:16px}
.gv-v114-select{min-width:310px;max-width:520px;height:38px;padding:0 34px 0 11px;border:1px solid var(--gv-line);background:var(--gv-surface);border-radius:7px;font-size:12px}
.gv-v114-verdict{margin-top:14px;border:1px solid var(--gv-line);border-radius:9px;padding:18px 20px;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;background:var(--gv-surface-soft)}
.gv-v114-verdict>span{font-size:10px;letter-spacing:.12em;color:var(--gv-faint)}
.gv-v114-verdict>strong{font-size:24px;letter-spacing:-.02em;color:var(--gv-ink)}
.gv-v114-verdict>small{font-size:11px;color:var(--gv-muted)}
.gv-v114-verdict.is-verified{background:var(--gv-success-soft);border-color:#D8E4DC}
.gv-v114-verdict.is-warning{background:var(--gv-warning-soft);border-color:#E8DFC9}
.gv-v114-verdict.is-failed{background:var(--gv-danger-soft);border-color:#ECDADA}
.gv-v114-count-compare{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}
.gv-v114-count-compare>div{border:1px solid var(--gv-line);background:var(--gv-surface);border-radius:8px;padding:13px 15px;display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:end}
.gv-v114-count-compare span{grid-column:1/-1;font-size:10px;letter-spacing:.08em;color:var(--gv-faint)}
.gv-v114-count-compare strong{font-size:20px;color:var(--gv-ink)}
.gv-v114-count-compare strong small{font-size:10px;font-weight:500;color:var(--gv-muted)}
.gv-v114-count-compare b{font-size:11px;color:var(--gv-muted)}
.gv-v114-check-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
.gv-v114-check-results article{min-height:58px;border:1px solid var(--gv-line);border-radius:8px;padding:11px 12px;display:grid;grid-template-columns:64px 1fr;gap:8px;background:var(--gv-surface)}
.gv-v114-check-results article>span{font-size:9px;letter-spacing:.08em;font-weight:760;color:var(--gv-faint)}
.gv-v114-check-results article div{display:flex;flex-direction:column;min-width:0}
.gv-v114-check-results article strong{font-size:12px;color:var(--gv-ink)}
.gv-v114-check-results article small{font-size:10px;color:var(--gv-faint)}
.gv-v114-check-results article.pass{border-left:3px solid var(--gv-success)}
.gv-v114-check-results article.warning{border-left:3px solid var(--gv-warning);background:var(--gv-warning-soft)}
.gv-v114-check-results article.failed{border-left:3px solid var(--gv-danger);background:var(--gv-danger-soft)}
.gv-v114-trace-wrap{margin-top:14px;overflow:auto;border:1px solid var(--gv-line);border-radius:8px}
.gv-v114-trace-table{width:100%;border-collapse:collapse;min-width:760px;font-size:11px;background:var(--gv-surface)}
.gv-v114-trace-table th{position:sticky;top:0;background:var(--gv-surface-soft);font-size:9px;letter-spacing:.08em;color:var(--gv-faint);text-align:left;padding:10px 12px;border-bottom:1px solid var(--gv-line)}
.gv-v114-trace-table td{padding:10px 12px;border-bottom:1px solid var(--gv-line-soft);vertical-align:top;color:var(--gv-text)}
.gv-v114-trace-table tr:last-child td{border-bottom:0}
.gv-v114-trace-table td small{display:block;color:var(--gv-faint);margin-top:2px}
.gv-v114-trace-table code{font-size:10px}
.gv-v114-trace-table .danger{color:var(--gv-danger)}
.gv-v114-action{font-weight:700;color:var(--gv-ink)}
.gv-v114-hash-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.gv-v114-hash-grid>div{padding:12px 14px;border:1px solid var(--gv-line);border-radius:8px;display:flex;flex-direction:column;gap:4px;background:var(--gv-surface-soft)}
.gv-v114-hash-grid span{font-size:10px;color:var(--gv-faint);letter-spacing:.06em}
.gv-v114-hash-grid code{font-size:10px;color:var(--gv-text);word-break:break-all}
.gv-v114-restore-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px;padding:14px;border:1px solid var(--gv-line);border-radius:9px;background:var(--gv-surface-soft)}
.gv-v114-restore-submit{display:flex;flex-direction:column;justify-content:flex-end;gap:4px}
.gv-v114-restore-submit small{font-size:10px;color:var(--gv-muted)}
.gv-v114-drill-list{display:flex;flex-direction:column;margin-top:12px}
.gv-v114-drill-list article{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(0,1.2fr) auto;gap:14px;align-items:center;padding:13px 2px;border-bottom:1px solid var(--gv-line-soft)}
.gv-v114-drill-list article>div{display:flex;flex-direction:column;min-width:0}
.gv-v114-drill-list span,.gv-v114-drill-list small{font-size:10px;color:var(--gv-muted)}
.gv-v114-drill-list strong{font-size:13px;color:var(--gv-ink)}

html[data-view="large"] .gv-v114-client-layout{grid-template-columns:minmax(0,1.35fr) minmax(390px,.9fr);gap:22px}
html[data-view="large"] .gv-v114-client-row{min-height:92px;grid-template-columns:58px minmax(0,1.5fr) minmax(150px,.65fr) auto;padding:16px 8px;gap:18px}
html[data-view="large"] .gv-v114-client-monogram{width:50px;height:50px;font-size:14px}
html[data-view="large"] .gv-v114-client-row-main strong{font-size:17px}
html[data-view="large"] .gv-v114-client-row-main small,html[data-view="large"] .gv-v114-client-row-meta b{font-size:14px}
html[data-view="large"] .gv-v114-client-row-meta small{font-size:12px}
html[data-view="large"] .gv-v114-detail-grid>div{padding:18px}
html[data-view="large"] .gv-v114-detail-grid dd{font-size:15px}
html[data-view="large"] .gv-v114-verdict{padding:22px 24px}
html[data-view="large"] .gv-v114-verdict>strong{font-size:30px}
html[data-view="large"] .gv-v114-check-results article{min-height:74px;padding:14px 16px;grid-template-columns:76px 1fr}
html[data-view="large"] .gv-v114-check-results article strong{font-size:14px}
html[data-view="large"] .gv-v114-check-results article small{font-size:11px}
html[data-view="large"] .gv-v114-trace-table{font-size:13px;min-width:900px}
html[data-view="large"] .gv-v114-trace-table th{font-size:10px;padding:13px 15px}
html[data-view="large"] .gv-v114-trace-table td{padding:13px 15px}

@media(max-width:1180px){
  .gv-v114-client-layout,.gv-v114-readiness-grid{grid-template-columns:1fr}
  .gv-v114-readiness-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gv-v114-readiness-metrics .gv-metric-card:nth-child(2){border-right:0}
  .gv-v114-readiness-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}
  .gv-v114-client-detail{position:static}
  .gv-v114-restore-form{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:599px){
  .gv-v114-readiness-metrics{grid-template-columns:1fr}
  .gv-v114-readiness-metrics .gv-metric-card{min-height:112px;border-right:0;border-bottom:1px solid var(--gv-line-soft)}
  .gv-v114-readiness-metrics .gv-metric-card:last-child{border-bottom:0}
}
@media(max-width:760px){
  .gv-v114-client-row{grid-template-columns:42px minmax(0,1fr) auto;gap:10px}
  .gv-v114-client-row-meta{display:none}
  .gv-v114-client-row .gv-status{font-size:9px}
  .gv-v114-detail-grid,.gv-v114-count-compare,.gv-v114-check-results,.gv-v114-hash-grid,.gv-v114-restore-form{grid-template-columns:1fr}
  .gv-v114-verdict{grid-template-columns:1fr;gap:4px}
  .gv-v114-select{min-width:0;width:100%;max-width:none}
  .gv-v114-verifier .gv-card-head,.gv-v114-restore .gv-card-head{align-items:stretch}
  .gv-v114-verifier .gv-inline-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .gv-v114-verifier .gv-inline-actions select{grid-column:1/-1}
  .gv-v114-drill-list article{grid-template-columns:1fr;gap:8px}
  .gv-v114-list-foot{align-items:flex-start;flex-direction:column}
}
@media(max-width:430px){
  .gv-v114-client-row{min-height:68px;padding:10px 0;grid-template-columns:38px minmax(0,1fr)}
  .gv-v114-client-monogram{width:34px;height:34px;font-size:10px}
  .gv-v114-client-row>.gv-status{grid-column:2;justify-self:start;margin-top:-6px}
  .gv-v114-client-row-main strong{font-size:13px}
  .gv-v114-client-row-main small{font-size:10px}
  .gv-v114-checklist>div{grid-template-columns:1fr auto}
  .gv-v114-checklist>div>span:nth-child(2){grid-column:1/-1;grid-row:2}
  .gv-v114-verifier .gv-inline-actions{grid-template-columns:1fr}
  .gv-v114-verifier .gv-inline-actions select{grid-column:auto}
}
.gv-v114-security-pilot{margin-top:16px}
.gv-v114-security-pilot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:8px}
.gv-v114-security-pilot-grid>div{padding:14px;border:1px solid var(--gv-line);border-radius:8px;background:var(--gv-surface-soft);display:flex;flex-direction:column;gap:2px}
.gv-v114-security-pilot-grid span{font-size:9px;letter-spacing:.09em;color:var(--gv-faint)}
.gv-v114-security-pilot-grid strong{font-size:17px;color:var(--gv-ink)}
.gv-v114-security-pilot-grid small{font-size:10px;color:var(--gv-muted)}
@media(max-width:900px){.gv-v114-security-pilot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.gv-v114-security-pilot-grid{grid-template-columns:1fr}}

/* V1.14 inline post-commit verification state */
.gv-post-commit-inline{margin-top:14px;padding:14px 16px;border:1px solid var(--gv-line);border-radius:9px;background:var(--gv-surface-soft);display:flex;align-items:center;justify-content:space-between;gap:18px}
.gv-post-commit-inline>div{min-width:0;display:flex;flex-direction:column;gap:3px}
.gv-post-commit-inline .gv-overline{font-size:9.5px;letter-spacing:.11em;color:var(--gv-faint)}
.gv-post-commit-inline strong{font-size:18px;color:var(--gv-ink)}
.gv-post-commit-inline p{margin:0;font-size:11px;color:var(--gv-muted);line-height:1.55}
.gv-post-commit-inline .gv-verdict-verified{color:var(--gv-success)}
.gv-post-commit-inline .gv-verdict-warning{color:#9B742E}
.gv-post-commit-inline .gv-verdict-failed{color:var(--gv-danger)}
html[data-view="large"] .gv-post-commit-inline{padding:18px 20px;gap:22px}
html[data-view="large"] .gv-post-commit-inline strong{font-size:22px}
html[data-view="large"] .gv-post-commit-inline p{font-size:13px}
@media(max-width:700px){.gv-post-commit-inline{align-items:stretch;flex-direction:column}.gv-post-commit-inline .gv-btn{width:100%;justify-content:center}}

/* ---------- V1.15 Production Pilot Evidence / Observability ---------- */
.gv-locale-en{display:none!important}html[data-lang="en"] .gv-locale-ko{display:none!important}html[data-lang="en"] .gv-locale-en{display:block!important}
.gv-badge-red{background:var(--gv-danger-soft);color:var(--gv-danger);border-color:#ead7d7}
.gv-v115-hero{margin-bottom:24px}
.gv-v115-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}
.gv-v115-metrics .gv-metric-card{min-height:126px;padding:18px 20px;display:flex;flex-direction:column;border-right:1px solid var(--gv-line-soft)}
.gv-v115-metrics .gv-metric-card:last-child{border-right:0}
.gv-v115-metrics .gv-metric-label{font-size:10.5px;color:#6C7680}
.gv-v115-metrics .gv-metric-value{margin-top:14px;font-size:21px;line-height:1;font-weight:670;letter-spacing:-.025em;color:#343B42}
.gv-v115-metrics .gv-metric-foot{margin-top:auto;padding-top:13px;font-size:10.5px;color:#7B858E}
.gv-v115-overview-grid,.gv-v115-recovery-grid,.gv-v115-ops-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}
.gv-v115-overview-grid>.gv-card,.gv-v115-recovery-grid>.gv-card,.gv-v115-ops-grid>.gv-card{grid-column:auto}
.gv-v115-trend{min-height:138px;display:flex;align-items:flex-end;gap:8px;padding:18px 4px 8px;border-top:1px solid var(--gv-line-soft);border-bottom:1px solid var(--gv-line-soft);overflow-x:auto}
.gv-v115-trend-point{min-width:34px;height:100px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px;text-decoration:none;color:var(--gv-muted)}
.gv-v115-trend-point span{display:block;width:14px;min-height:26px;border-radius:4px;background:#c9cfd4;transition:transform .12s ease}
.gv-v115-trend-point:hover span{transform:translateY(-2px)}
.gv-v115-trend-point.is-verified span{height:72px;background:#8ea092}.gv-v115-trend-point.is-warning span{height:50px;background:#b7aa90}.gv-v115-trend-point.is-failed span{height:34px;background:#bd8e8e}
.gv-v115-trend-point small{font-size:9px;letter-spacing:.04em;color:var(--gv-faint)}
.gv-v115-trend-summary{display:flex;gap:18px;padding-top:14px;font-size:11px;color:var(--gv-muted)}.gv-v115-trend-summary b{margin-left:4px;color:var(--gv-ink)}
.gv-v115-exit-list>div{grid-template-columns:minmax(150px,.9fr) minmax(0,1.6fr) auto}.gv-v115-exit-list>div>b{font-size:10px;letter-spacing:.08em;color:var(--gv-muted)}
.gv-v115-anomaly-card,.gv-v115-duplicate-card,.gv-v115-runbook-card{margin-top:18px}
.gv-v115-anomaly-list,.gv-v115-duplicate-list,.gv-v115-runbook-list{display:flex;flex-direction:column;border-top:1px solid var(--gv-line-soft)}
.gv-v115-anomaly-list>article,.gv-v115-duplicate-list>article{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(420px,.9fr);gap:20px;align-items:center;padding:15px 0;border-bottom:1px solid var(--gv-line-soft)}
.gv-v115-anomaly-main{display:flex;gap:12px;align-items:flex-start}.gv-v115-anomaly-main>div{min-width:0}.gv-v115-anomaly-main strong,.gv-v115-duplicate-list article>div:first-child strong{display:block;font-size:13px;color:var(--gv-ink);font-weight:680}.gv-v115-anomaly-main small,.gv-v115-duplicate-list article>div:first-child small{display:block;margin-top:4px;font-size:10.5px;color:var(--gv-faint)}
.gv-v115-review-controls{display:grid;grid-template-columns:minmax(145px,.8fr) minmax(180px,1fr) auto;gap:8px;align-items:center}.gv-v115-review-controls select,.gv-v115-review-controls input,.gv-v115-export select,.gv-v115-search input{height:40px;border:1px solid var(--gv-line);border-radius:7px;background:var(--gv-surface);padding:0 11px;font-size:12px;min-width:0}.gv-v115-review-controls input::placeholder,.gv-v115-search input::placeholder{color:#9aa1a8}
.gv-v115-recovery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--gv-line-soft);margin-top:4px}.gv-v115-recovery>div{padding:18px 14px;border-right:1px solid var(--gv-line-soft)}.gv-v115-recovery>div:last-child{border-right:0}.gv-v115-recovery span{display:block;font-size:9px;letter-spacing:.09em;color:var(--gv-faint);font-weight:720}.gv-v115-recovery strong{display:block;margin-top:7px;font-size:21px;color:var(--gv-ink);font-weight:680}.gv-v115-recovery small{display:block;margin-top:3px;font-size:10px;color:var(--gv-muted)}
.gv-v115-export{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.gv-v115-boundary{margin-top:14px;padding:14px;border:1px solid var(--gv-line-soft);border-radius:7px;background:var(--gv-surface-soft);display:grid;grid-template-columns:48px 1fr;gap:7px 10px;font-size:10.5px;color:var(--gv-muted)}.gv-v115-boundary b{font-size:10px;color:var(--gv-ink)}
.gv-v115-duplicate-list article>div:first-child{min-width:0}.gv-v115-duplicate-list article>div:first-child .gv-badge{margin-bottom:7px}
.gv-v115-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:14px}.gv-v115-correlation-results{display:flex;flex-direction:column}.gv-v115-correlation-results article{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:18px;padding:13px 0;border-top:1px solid var(--gv-line-soft)}.gv-v115-correlation-results article>div{min-width:0}.gv-v115-correlation-results span{font-size:9px;letter-spacing:.08em;color:var(--gv-faint)}.gv-v115-correlation-results strong{display:block;font-size:12px;color:var(--gv-ink)}.gv-v115-correlation-results small{display:block;font-size:10px;color:var(--gv-muted);margin-top:3px}.gv-v115-correlation-results code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;color:#65707a;margin-bottom:3px}
.gv-v115-performance{min-height:96px}.gv-v115-perf-head{display:flex;justify-content:space-between;align-items:center;padding:10px 0 12px;border-bottom:1px solid var(--gv-line-soft)}.gv-v115-perf-head strong{font-size:18px;color:var(--gv-ink)}.gv-v115-perf-head span{font-size:11px;color:var(--gv-muted)}.gv-v115-performance article{display:grid;grid-template-columns:1fr auto;gap:3px 14px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v115-performance article>span{font-size:11px;color:var(--gv-muted)}.gv-v115-performance article>strong{font-size:12px;color:var(--gv-ink)}.gv-v115-performance article>small{grid-column:1/-1;font-size:9.5px;color:var(--gv-faint)}
.gv-v115-runbook-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:4px}.gv-v115-runbook-checks{grid-column:1/-1;border:1px solid var(--gv-line-soft);border-radius:8px;padding:14px 16px;margin:2px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px}.gv-v115-runbook-checks legend{padding:0 6px;font-size:10px;letter-spacing:.08em;color:var(--gv-faint);font-weight:720}.gv-v115-runbook-checks label{font-size:11px;color:var(--gv-muted);display:flex;align-items:flex-start;gap:7px}.gv-v115-runbook-checks input{margin-top:3px}.gv-v115-runbook-submit{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:10px}.gv-v115-runbook-submit small{font-size:10px;color:var(--gv-faint)}
.gv-v115-runbook-list{margin-top:16px}.gv-v115-runbook-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v115-runbook-list article>div:first-child span{font-size:9px;letter-spacing:.08em;color:var(--gv-faint)}.gv-v115-runbook-list strong{display:block;font-size:12.5px;color:var(--gv-ink)}.gv-v115-runbook-list small{display:block;font-size:10px;color:var(--gv-muted);margin-top:3px}.gv-v115-runbook-list article>div:last-child{display:flex;align-items:center;gap:8px}

html[data-view="large"] .gv-v115-metrics .gv-metric-label{font-size:13px}html[data-view="large"] .gv-v115-metrics .gv-metric-value{font-size:27px}html[data-view="large"] .gv-v115-metrics .gv-metric-foot{font-size:12.5px}
html[data-view="large"] .gv-v115-anomaly-main strong,html[data-view="large"] .gv-v115-duplicate-list article>div:first-child strong{font-size:16px}html[data-view="large"] .gv-v115-anomaly-main small,html[data-view="large"] .gv-v115-duplicate-list article>div:first-child small{font-size:12.5px}html[data-view="large"] .gv-v115-review-controls select,html[data-view="large"] .gv-v115-review-controls input{height:46px;font-size:14px}html[data-view="large"] .gv-v115-recovery strong{font-size:27px}html[data-view="large"] .gv-v115-runbook-checks label{font-size:14px}html[data-view="large"] .gv-v115-runbook-list strong{font-size:15px}

@media(max-width:1439px){.gv-v115-overview-grid,.gv-v115-recovery-grid,.gv-v115-ops-grid{grid-template-columns:1fr}.gv-v115-anomaly-list>article,.gv-v115-duplicate-list>article{grid-template-columns:1fr}.gv-v115-runbook-form{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v115-runbook-checks{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1199px){.gv-v115-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v115-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-v115-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:900px){.gv-v115-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v115-recovery{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v115-recovery>div:nth-child(2){border-right:0}.gv-v115-recovery>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:767px){.gv-v115-hero{align-items:flex-start;flex-direction:column}.gv-v115-review-controls{grid-template-columns:1fr}.gv-v115-review-controls .gv-btn{width:100%;justify-content:center}.gv-v115-correlation-results article{grid-template-columns:1fr}.gv-v115-runbook-form{grid-template-columns:1fr}.gv-v115-runbook-checks{grid-template-columns:1fr}.gv-v115-runbook-submit{align-items:stretch;flex-direction:column}.gv-v115-runbook-submit .gv-btn{width:100%;justify-content:center}}
@media(max-width:599px){.gv-v115-metrics{grid-template-columns:1fr}.gv-v115-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v115-metrics .gv-metric-card:last-child{border-bottom:0}.gv-v115-trend{gap:6px}.gv-v115-trend-point{min-width:28px}.gv-v115-recovery{grid-template-columns:1fr}.gv-v115-recovery>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v115-recovery>div:last-child{border-bottom:0}.gv-v115-export,.gv-v115-search{grid-template-columns:1fr}.gv-v115-export .gv-btn,.gv-v115-search .gv-btn{width:100%;justify-content:center}.gv-v115-anomaly-list>article,.gv-v115-duplicate-list>article{gap:12px}.gv-v115-anomaly-main{align-items:flex-start}.gv-v115-runbook-list article{grid-template-columns:1fr}.gv-v115-runbook-list article>div:last-child{justify-content:space-between}}

/* V1.16 · Client Pilot Exit Review + Project Write Design Gate */
.gv-v116-hero{align-items:flex-end}.gv-v116-hero .gv-hero-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.gv-v116-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px;border:1px solid var(--gv-line);border-radius:9px;background:var(--gv-surface);overflow:hidden}
.gv-v116-metrics .gv-metric-card{min-width:0;padding:20px 21px;border:0;border-right:1px solid var(--gv-line-soft);border-radius:0;box-shadow:none;background:transparent;display:flex;flex-direction:column;min-height:132px}.gv-v116-metrics .gv-metric-card:last-child{border-right:0}
.gv-v116-metrics .gv-metric-label{font-size:10px;letter-spacing:.095em;text-transform:uppercase;color:var(--gv-faint);font-weight:740}.gv-v116-metrics .gv-metric-value{display:block;margin-top:10px;font-size:24px;line-height:1.1;letter-spacing:-.035em;color:var(--gv-ink);font-weight:690;overflow-wrap:anywhere}.gv-v116-metrics .gv-metric-foot{display:block;margin-top:auto;padding-top:14px;font-size:10.5px;line-height:1.5;color:var(--gv-muted)}.gv-v116-metric-small{font-size:17px!important;line-height:1.25!important}
.gv-v116-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.gv-v116-section{margin-top:18px}
.gv-v116-checklist{display:flex;flex-direction:column;border-top:1px solid var(--gv-line-soft)}.gv-v116-checklist>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v116-checklist span{font-size:12px;color:var(--gv-muted)}.gv-v116-checklist b{font-size:10px;letter-spacing:.08em}.gv-v116-checklist b.is-pass{color:#64796a}.gv-v116-checklist b.is-block{color:#9b6a6a}
.gv-v116-hash{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;margin-top:14px;padding:12px 13px;border:1px solid var(--gv-line-soft);border-radius:7px;background:var(--gv-surface-soft)}.gv-v116-hash span{font-size:10px;letter-spacing:.07em;color:var(--gv-faint);font-weight:720}.gv-v116-hash code{font-size:9.5px;color:#65707a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gv-v116-sla{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--gv-line-soft);border-bottom:1px solid var(--gv-line-soft)}.gv-v116-sla>div{padding:15px 13px;border-right:1px solid var(--gv-line-soft)}.gv-v116-sla>div:last-child{border-right:0}.gv-v116-sla span{display:block;font-size:9px;letter-spacing:.09em;color:var(--gv-faint);font-weight:720}.gv-v116-sla strong{display:block;margin-top:5px;font-size:18px;color:var(--gv-ink)}
.gv-v116-anomaly-mini{display:flex;flex-direction:column}.gv-v116-anomaly-mini>div:not(.gv-empty-mini){display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v116-anomaly-mini strong{font-size:11px;color:var(--gv-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gv-v116-anomaly-mini small{font-size:9.5px;color:var(--gv-faint)}
.gv-v116-form{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(210px,1fr) minmax(210px,1fr) auto;gap:10px;align-items:end}.gv-v116-form .gv-btn{height:42px;white-space:nowrap}.gv-v116-form input,.gv-v116-form select,.gv-v116-hold-form input,.gv-v116-hold-form select{height:42px}
.gv-v116-record-list{display:flex;flex-direction:column;margin-top:16px;border-top:1px solid var(--gv-line-soft)}.gv-v116-record-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:13px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v116-record-list>article>div:first-child{min-width:0}.gv-v116-record-list>article>div:first-child>span{display:block;font-size:9px;letter-spacing:.08em;color:var(--gv-faint)}.gv-v116-record-list strong{display:block;margin-top:2px;font-size:12.5px;color:var(--gv-ink)}.gv-v116-record-list small{display:block;margin-top:3px;font-size:10px;color:var(--gv-muted)}.gv-v116-record-list>article>div:last-child{display:flex;align-items:center;gap:8px}
.gv-v116-policy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--gv-line-soft);border-bottom:1px solid var(--gv-line-soft)}.gv-v116-policy>div{padding:16px 13px;border-right:1px solid var(--gv-line-soft)}.gv-v116-policy>div:last-child{border-right:0}.gv-v116-policy span{display:block;font-size:9px;letter-spacing:.08em;color:var(--gv-faint);font-weight:720}.gv-v116-policy strong{display:block;margin-top:6px;font-size:15px;color:var(--gv-ink)}
.gv-v116-hold-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gv-v116-hold-form .gv-btn{grid-column:1/-1;justify-self:end}.gv-v116-hold-list{margin-top:10px;padding:0 18px;border:1px solid var(--gv-line);border-radius:9px;background:var(--gv-surface)}
.gv-v116-contract{display:flex;flex-direction:column;border-top:1px solid var(--gv-line-soft)}.gv-v116-contract>div{display:grid;grid-template-columns:minmax(120px,.6fr) minmax(0,1.4fr);gap:14px;padding:12px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v116-contract span{font-size:10px;color:var(--gv-faint);font-weight:720}.gv-v116-contract strong{font-size:11.5px;line-height:1.55;color:var(--gv-ink);font-weight:620;overflow-wrap:anywhere}
.gv-v116-threats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;border-top:1px solid var(--gv-line-soft)}.gv-v116-threats article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:flex-start;padding:15px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v116-threats strong{display:block;font-size:12px;color:var(--gv-ink)}.gv-v116-threats p{margin:5px 0 0;font-size:10.5px;line-height:1.6;color:var(--gv-muted)}.gv-v116-threats small{display:block;margin-top:6px;font-size:9px;letter-spacing:.05em;color:var(--gv-faint)}
.gv-v116-criteria{display:flex;flex-direction:column;border-top:1px solid var(--gv-line-soft)}.gv-v116-criteria>div{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(0,1.3fr) auto;gap:18px;align-items:center;padding:12px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v116-criteria span{font-size:11px;color:var(--gv-ink);font-weight:650}.gv-v116-criteria strong{font-size:10.5px;line-height:1.5;color:var(--gv-muted);font-weight:520}.gv-v116-criteria b{font-size:9px;letter-spacing:.08em;color:#8b7f6f}
html[data-view="large"] .gv-v116-metrics .gv-metric-label{font-size:13px}html[data-view="large"] .gv-v116-metrics .gv-metric-value{font-size:29px}html[data-view="large"] .gv-v116-metrics .gv-v116-metric-small{font-size:21px!important}html[data-view="large"] .gv-v116-metrics .gv-metric-foot{font-size:12.5px}html[data-view="large"] .gv-v116-checklist span{font-size:14px}html[data-view="large"] .gv-v116-form input,html[data-view="large"] .gv-v116-form select,html[data-view="large"] .gv-v116-hold-form input,html[data-view="large"] .gv-v116-hold-form select{height:48px;font-size:14px}html[data-view="large"] .gv-v116-record-list strong{font-size:15px}html[data-view="large"] .gv-v116-threats strong{font-size:15px}html[data-view="large"] .gv-v116-threats p{font-size:13px}html[data-view="large"] .gv-v116-criteria span{font-size:14px}html[data-view="large"] .gv-v116-criteria strong{font-size:13px}
@media(max-width:1439px){.gv-v116-grid{grid-template-columns:1fr}.gv-v116-threats{grid-template-columns:1fr}.gv-v116-form{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v116-form .gv-btn{grid-column:1/-1;justify-self:end}}
@media(max-width:1199px){.gv-v116-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v116-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-v116-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:767px){.gv-v116-hero{align-items:flex-start;flex-direction:column}.gv-v116-hero .gv-hero-actions{justify-content:flex-start}.gv-v116-form,.gv-v116-hold-form{grid-template-columns:1fr}.gv-v116-form .gv-btn,.gv-v116-hold-form .gv-btn{grid-column:auto;width:100%;justify-self:stretch;justify-content:center}.gv-v116-record-list>article{grid-template-columns:1fr}.gv-v116-record-list>article>div:last-child{justify-content:space-between}.gv-v116-criteria>div{grid-template-columns:1fr;gap:4px;padding:14px 0}.gv-v116-anomaly-mini>div:not(.gv-empty-mini){grid-template-columns:auto minmax(0,1fr)}.gv-v116-anomaly-mini small{grid-column:2}}
@media(max-width:599px){.gv-v116-metrics{grid-template-columns:1fr}.gv-v116-metrics .gv-metric-card{border-right:0!important;border-bottom:1px solid var(--gv-line-soft)!important;min-height:116px}.gv-v116-metrics .gv-metric-card:last-child{border-bottom:0!important}.gv-v116-policy,.gv-v116-sla{grid-template-columns:1fr}.gv-v116-policy>div,.gv-v116-sla>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v116-policy>div:last-child,.gv-v116-sla>div:last-child{border-bottom:0}.gv-v116-hash{grid-template-columns:1fr}.gv-v116-threats article{grid-template-columns:1fr}.gv-v116-contract>div{grid-template-columns:1fr;gap:4px}}

/* V1.17 · Project Pilot Readiness · Track B / no executable Project Write */
.gv-v117-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.gv-v117-hero>div:first-child{max-width:820px}.gv-v117-hero .gv-hero-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.gv-v117-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0;border:1px solid var(--gv-line);border-radius:9px;background:var(--gv-surface);overflow:hidden}.gv-v117-metrics .gv-metric-card{border:0;border-right:1px solid var(--gv-line-soft);border-radius:0;min-height:128px}.gv-v117-metrics .gv-metric-card:last-child{border-right:0}.gv-v117-metric-small{font-size:17px!important;overflow-wrap:anywhere}
.gv-v117-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.gv-v117-section{margin-top:16px}.gv-v117-checklist{display:flex;flex-direction:column;border-top:1px solid var(--gv-line-soft)}.gv-v117-checklist>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v117-checklist span{font-size:11.5px;color:var(--gv-muted)}.gv-v117-checklist b{font-size:9.5px;letter-spacing:.08em}.gv-v117-checklist b.is-pass{color:#64796a}.gv-v117-checklist b.is-block{color:#9b6a6a}
.gv-v117-hash{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;margin-top:14px;padding:12px 13px;border:1px solid var(--gv-line-soft);border-radius:7px;background:var(--gv-surface-soft)}.gv-v117-hash span{font-size:10px;letter-spacing:.07em;color:var(--gv-faint);font-weight:720}.gv-v117-hash code{font-size:9.5px;color:#65707a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gv-v117-boundary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--gv-line-soft)}.gv-v117-boundary>div{padding:13px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v117-boundary>div:nth-child(odd){padding-right:18px}.gv-v117-boundary>div:nth-child(even){padding-left:18px;border-left:1px solid var(--gv-line-soft)}.gv-v117-boundary span{display:block;font-size:9px;letter-spacing:.08em;color:var(--gv-faint);font-weight:720}.gv-v117-boundary strong{display:block;margin-top:4px;font-size:12px;color:var(--gv-ink)}
.gv-v117-form{display:grid;grid-template-columns:minmax(190px,1fr) minmax(220px,1.2fr) auto;gap:10px;align-items:end}.gv-v117-form input{height:42px}.gv-v117-form .gv-btn{height:42px;white-space:nowrap}.gv-v117-records{display:flex;flex-direction:column;margin-top:14px;border-top:1px solid var(--gv-line-soft)}.gv-v117-records>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:13px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v117-records article>div:first-child{min-width:0}.gv-v117-records span{display:block;font-size:9px;letter-spacing:.07em;color:var(--gv-faint)}.gv-v117-records strong{display:block;margin-top:2px;font-size:12px;color:var(--gv-ink)}.gv-v117-records small{display:block;margin-top:3px;font-size:10px;color:var(--gv-muted)}.gv-v117-records article>div:last-child{display:flex;align-items:center;gap:8px}.gv-v117-records code{font-size:9px;color:var(--gv-faint)}
.gv-v117-matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px;border-top:1px solid var(--gv-line-soft)}.gv-v117-matrix>div{display:grid;grid-template-columns:38px minmax(0,1fr);gap:4px 10px;padding:12px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v117-matrix span{grid-row:1/3;font-size:9px;letter-spacing:.08em;color:#8b7f6f;font-weight:750}.gv-v117-matrix strong{font-size:11.5px;color:var(--gv-ink)}.gv-v117-matrix small{font-size:10px;line-height:1.5;color:var(--gv-muted)}
.gv-v117-sequence{counter-reset:v117;margin:0;padding:0;list-style:none;border-top:1px solid var(--gv-line-soft)}.gv-v117-sequence li{counter-increment:v117;display:grid;grid-template-columns:28px minmax(160px,.65fr) minmax(0,1.35fr);gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v117-sequence li:before{content:counter(v117,decimal-leading-zero);font-size:9px;letter-spacing:.08em;color:#8b7f6f;font-weight:750}.gv-v117-sequence strong{font-size:11.5px;color:var(--gv-ink)}.gv-v117-sequence span{font-size:10.5px;line-height:1.55;color:var(--gv-muted)}
html[data-view="large"] .gv-v117-metrics .gv-metric-label{font-size:13px}html[data-view="large"] .gv-v117-metrics .gv-metric-value{font-size:29px}html[data-view="large"] .gv-v117-metrics .gv-v117-metric-small{font-size:20px!important}html[data-view="large"] .gv-v117-metrics .gv-metric-foot{font-size:12.5px}html[data-view="large"] .gv-v117-checklist span{font-size:14px}html[data-view="large"] .gv-v117-boundary strong{font-size:14px}html[data-view="large"] .gv-v117-form input{height:48px;font-size:14px}html[data-view="large"] .gv-v117-matrix strong{font-size:14px}html[data-view="large"] .gv-v117-matrix small{font-size:12.5px}html[data-view="large"] .gv-v117-sequence strong{font-size:14px}html[data-view="large"] .gv-v117-sequence span{font-size:13px}
@media(max-width:1439px){.gv-v117-grid{grid-template-columns:1fr}.gv-v117-matrix{grid-template-columns:1fr}}
@media(max-width:1199px){.gv-v117-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v117-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-v117-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:767px){.gv-v117-hero{align-items:flex-start;flex-direction:column}.gv-v117-hero .gv-hero-actions{justify-content:flex-start}.gv-v117-form{grid-template-columns:1fr}.gv-v117-form .gv-btn{width:100%;justify-content:center}.gv-v117-records>article{grid-template-columns:1fr}.gv-v117-records article>div:last-child{justify-content:space-between}.gv-v117-sequence li{grid-template-columns:28px minmax(0,1fr)}.gv-v117-sequence span{grid-column:2}}
@media(max-width:599px){.gv-v117-metrics{grid-template-columns:1fr}.gv-v117-metrics .gv-metric-card{border-right:0!important;border-bottom:1px solid var(--gv-line-soft)!important}.gv-v117-metrics .gv-metric-card:last-child{border-bottom:0!important}.gv-v117-boundary{grid-template-columns:1fr}.gv-v117-boundary>div:nth-child(odd),.gv-v117-boundary>div:nth-child(even){padding-left:0;padding-right:0;border-left:0}.gv-v117-hash{grid-template-columns:1fr}.gv-v117-matrix>div{grid-template-columns:34px minmax(0,1fr)}}

/* V1.18 · Project Non-Production Implementation Gate */
.gv-v118-fingerprints{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.gv-v118-fingerprints>div{padding:12px 13px;border:1px solid var(--gv-line-soft);border-radius:7px;background:var(--gv-surface-soft);min-width:0}.gv-v118-fingerprints span{display:block;font-size:9px;letter-spacing:.08em;color:var(--gv-faint);font-weight:720}.gv-v118-fingerprints code{display:block;margin-top:5px;font-size:10px;color:#65707a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-view="large"] .gv-v118-fingerprints span{font-size:11px}html[data-view="large"] .gv-v118-fingerprints code{font-size:12px}@media(max-width:599px){.gv-v118-fingerprints{grid-template-columns:1fr}}

/* V1.19 · Project Pilot Gate Recovery · Track B read-only diagnostics */
.gv-v119-chain{display:flex;flex-direction:column;border-top:1px solid var(--gv-line-soft)}
.gv-v119-gate{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--gv-line-soft)}
.gv-v119-gate>div{min-width:0}.gv-v119-gate span{display:block;font-size:9px;letter-spacing:.08em;color:var(--gv-faint);font-weight:740}.gv-v119-gate strong{display:block;margin-top:3px;font-size:13px}.gv-v119-gate small{display:block;margin-top:4px;font-size:10.5px;color:var(--gv-muted);line-height:1.5}.gv-v119-gate.is-current strong{color:#64796a}.gv-v119-gate.is-blocked strong{color:#9b6a6a}
.gv-v119-evidence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gv-v119-evidence>div{min-width:0;padding:14px;border:1px solid var(--gv-line-soft);border-radius:8px;background:var(--gv-surface-soft)}.gv-v119-evidence span{display:block;font-size:9px;letter-spacing:.08em;color:var(--gv-faint);font-weight:740}.gv-v119-evidence strong{display:block;margin-top:5px;font-size:11.5px;color:var(--gv-ink);overflow:hidden;text-overflow:ellipsis}.gv-v119-evidence code{display:block;margin-top:5px;font-size:9.5px;color:#65707a;overflow:hidden;text-overflow:ellipsis}.gv-v119-evidence small{display:block;margin-top:5px;font-size:9.5px;color:var(--gv-muted)}
html[data-view="large"] .gv-v119-gate span{font-size:11px}html[data-view="large"] .gv-v119-gate strong{font-size:16px}html[data-view="large"] .gv-v119-gate small{font-size:13px}html[data-view="large"] .gv-v119-evidence strong{font-size:14px}html[data-view="large"] .gv-v119-evidence code,html[data-view="large"] .gv-v119-evidence small{font-size:11.5px}
@media(max-width:999px){.gv-v119-evidence{grid-template-columns:1fr}}
@media(max-width:599px){.gv-v119-gate{grid-template-columns:1fr}.gv-v119-gate .gv-btn{width:100%;justify-content:center}}

/* V1.19 QA correction · normalize V1.17+ metric-card composition */
.gv-v117-metrics .gv-metric-card{padding:18px 20px;display:flex;flex-direction:column;min-width:0}
.gv-v117-metrics .gv-metric-label{font-size:10.5px;color:#6c7680}
.gv-v117-metrics .gv-metric-value{margin-top:14px;font-size:24px;line-height:1;font-weight:670;letter-spacing:-.03em;color:#343b42;overflow-wrap:anywhere}
.gv-v117-metrics .gv-metric-foot{margin-top:auto;padding-top:14px;font-size:10.5px;line-height:1.45;color:var(--gv-muted)}
html[data-view="large"] .gv-v117-metrics .gv-metric-label{font-size:13px}
html[data-view="large"] .gv-v117-metrics .gv-metric-value{font-size:29px}
html[data-view="large"] .gv-v117-metrics .gv-metric-foot{font-size:12.5px}

/* V1.20 · Project Commit Preflight / Track B */
.gv-v120-note{margin-top:16px}.gv-v120-preflight-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.gv-v120-preflight-form label{display:flex;flex-direction:column;gap:7px}.gv-v120-preflight-form label>span,.gv-review-public-id>span{font-size:9.5px;letter-spacing:.07em;color:var(--gv-faint);font-weight:720}.gv-v120-preflight-form input,.gv-review-public-id input{height:42px}.gv-v120-preflight-form .gv-btn{height:42px;white-space:nowrap}.gv-v120-preflight-result{margin-top:16px;border-top:1px solid var(--gv-line-soft);padding-top:16px}.gv-v120-result-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.gv-v120-result-head>div>span{font-size:9px;letter-spacing:.08em;color:var(--gv-faint);font-weight:740}.gv-v120-result-head h3{margin:4px 0 0;font-size:17px}.gv-v120-result-head p{margin:5px 0 0;font-size:10.5px;color:var(--gv-muted)}.gv-v120-checks{display:flex;flex-direction:column;margin-top:14px;border-top:1px solid var(--gv-line-soft)}.gv-v120-checks>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v120-checks span{font-size:11px}.gv-v120-checks b{font-size:9px;letter-spacing:.07em}.gv-v120-checks b.is-pass{color:#64796a}.gv-v120-checks b.is-block{color:#9b6a6a}.gv-v120-checks small{grid-column:1/3;font-size:9.5px;color:var(--gv-faint);overflow-wrap:anywhere}.gv-v120-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.gv-v120-result-grid>div{min-width:0;padding:12px 13px;border:1px solid var(--gv-line-soft);border-radius:7px;background:var(--gv-surface-soft)}.gv-v120-result-grid span,.gv-v120-expected span{display:block;font-size:9px;letter-spacing:.07em;color:var(--gv-faint);font-weight:720}.gv-v120-result-grid code{display:block;margin-top:5px;font-size:9.5px;color:#65707a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-v120-expected{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}.gv-v120-expected>div{padding:11px 12px;border:1px solid var(--gv-line-soft);border-radius:7px;background:var(--gv-surface-soft)}.gv-v120-expected strong{display:block;margin-top:4px;font-size:17px}.gv-v120-findings{margin-top:14px}.gv-v120-row-finding{display:grid;grid-template-columns:54px minmax(0,.4fr) minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid var(--gv-line-soft);align-items:center}.gv-v120-row-finding>span{font-size:9px;letter-spacing:.07em;color:var(--gv-faint);font-weight:720}.gv-v120-row-finding strong{font-size:11px}.gv-v120-row-finding small{font-size:10px;color:var(--gv-muted);overflow-wrap:anywhere}.gv-v120-contract-list{display:flex;flex-wrap:wrap;gap:7px}.gv-v120-contract-list span{display:inline-flex;padding:7px 9px;border:1px solid var(--gv-line-soft);border-radius:6px;background:var(--gv-surface-soft);font-size:9.5px;color:#65707a}.gv-v120-sequence li{grid-template-columns:28px minmax(150px,.55fr) minmax(0,1.25fr) auto}.gv-v120-sequence em{font-size:8.5px;font-style:normal;letter-spacing:.07em;color:#8b7f6f;font-weight:760}.gv-review-parent{margin:14px 0 4px;padding:14px;border:1px solid var(--gv-line-soft);border-radius:8px;background:var(--gv-surface-soft)}.gv-review-subhead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.gv-review-subhead>span{font-size:10px;font-weight:730;color:var(--gv-ink)}.gv-review-subhead>small{font-size:9.5px;color:var(--gv-muted);text-align:right}.gv-review-candidates.is-parent{margin-bottom:10px}.gv-review-public-id{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;align-items:center}.gv-review-public-id input{width:100%}
html[data-view="large"] .gv-v120-preflight-form input,html[data-view="large"] .gv-review-public-id input{height:48px;font-size:14px}html[data-view="large"] .gv-v120-result-head h3{font-size:20px}html[data-view="large"] .gv-v120-checks span{font-size:14px}html[data-view="large"] .gv-v120-checks small{font-size:11.5px}html[data-view="large"] .gv-v120-result-grid code{font-size:11.5px}html[data-view="large"] .gv-v120-expected strong{font-size:21px}html[data-view="large"] .gv-v120-contract-list span{font-size:11.5px}html[data-view="large"] .gv-v120-row-finding strong{font-size:13px}html[data-view="large"] .gv-v120-row-finding small{font-size:12px}
@media(max-width:767px){.gv-v120-preflight-form{grid-template-columns:1fr}.gv-v120-preflight-form .gv-btn{width:100%;justify-content:center}.gv-v120-result-grid{grid-template-columns:1fr}.gv-v120-expected{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v120-sequence li{grid-template-columns:28px minmax(0,1fr)}.gv-v120-sequence span,.gv-v120-sequence em{grid-column:2}.gv-v120-row-finding{grid-template-columns:52px minmax(0,1fr)}.gv-v120-row-finding small{grid-column:2}.gv-review-subhead{flex-direction:column}.gv-review-subhead>small{text-align:left}.gv-review-public-id{grid-template-columns:1fr}}
@media(max-width:459px){.gv-v120-expected{grid-template-columns:1fr}}

/* V1.21 · Project Post-Commit Verification Contract / CI Safety Gate · Track B */
.gv-v121-selftest{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.gv-v121-selftest>div{padding:14px;border:1px solid var(--gv-line-soft);border-radius:8px;background:var(--gv-surface-soft);min-width:0}.gv-v121-selftest span{display:block;font-size:9px;letter-spacing:.08em;color:var(--gv-faint);font-weight:740}.gv-v121-selftest strong{display:block;margin-top:6px;font-size:18px;color:var(--gv-ink)}.gv-v121-selftest small{display:block;margin-top:7px;font-size:9.5px;color:#64796a;font-weight:720}.gv-v121-command{display:block;margin-top:14px;padding:11px 12px;border:1px solid var(--gv-line-soft);border-radius:7px;background:var(--gv-surface-soft);font-size:10px;color:#65707a;overflow-x:auto;white-space:nowrap}html[data-view="large"] .gv-v121-selftest strong{font-size:22px}html[data-view="large"] .gv-v121-selftest span,html[data-view="large"] .gv-v121-selftest small,html[data-view="large"] .gv-v121-command{font-size:11.5px}@media(max-width:599px){.gv-v121-selftest{grid-template-columns:1fr}}

/* =========================================================
   V1.22 · Security + Real-use + Accessibility workspace
   Admin UI only. Print/client-facing document typography is excluded.
   ========================================================= */
.gv-brand{position:relative}.gv-brand-home{display:flex;align-items:center;color:inherit;text-decoration:none;min-width:0}.gv-sidebar-inline-toggle{margin-left:auto;width:30px;height:30px;border:0;background:transparent;border-radius:6px;color:#7a838b;font-size:18px;line-height:1;cursor:pointer}.gv-sidebar-inline-toggle:hover{background:#eef1f3;color:#32383e}html[data-sidebar="icon"] .gv-sidebar-inline-toggle{display:none}
.gv-header-reveal{position:fixed;z-index:95;top:0;left:calc(var(--sidebar-width) + (100vw - var(--sidebar-width))/2);transform:translateX(-50%);width:58px;height:10px;padding:0;border:0;border-radius:0 0 9px 9px;background:rgba(238,238,236,.72);box-shadow:none;cursor:pointer}.gv-header-edge-grip{position:absolute;top:2px;left:50%;width:34px;height:3px;transform:translateX(-50%);border-radius:99px;background:rgba(63,69,74,.27);box-shadow:0 1px 0 rgba(255,255,255,.7);transition:background .15s ease,width .15s ease}.gv-header-reveal:hover .gv-header-edge-grip{width:38px;background:rgba(48,54,59,.4)}.gv-header-reveal:focus-visible{outline:2px solid rgba(75,88,102,.44);outline-offset:2px}.gv-header-reveal[hidden]{display:none!important}.gv-header-collapse{display:none}.gv-header-collapse-grip{display:block;width:18px;height:3px;border-radius:99px;background:currentColor;opacity:.56}html[data-header="hidden"] body.gv-header-peek .gv-header-collapse{display:grid}

/* Three canonical width presets. Presets adjust only the shared gutter; the
   workspace itself always stays fluid and never becomes a centered web page. */
html[data-width="balanced"]{--workspace-gutter:var(--workspace-gutter-balanced)}
html[data-width="wide"]{--workspace-gutter:var(--workspace-gutter-wide)}
html[data-width="full"]{--workspace-gutter:var(--workspace-gutter-full)}
@media(max-width:767px){
  :root{
    --workspace-gutter-balanced:13px;
    --workspace-gutter-wide:13px;
    --workspace-gutter-full:13px;
  }
}

/* Accessibility floors: eliminate microcopy in operational UI. */
html[data-view="comfort"] body:not(.gv-print-document) small,
html[data-view="comfort"] body:not(.gv-print-document) .gv-panel-subtitle,
html[data-view="comfort"] body:not(.gv-print-document) .gv-metric-label,
html[data-view="comfort"] body:not(.gv-print-document) .gv-metric-foot,
html[data-view="comfort"] body:not(.gv-print-document) .gv-nav-label,
html[data-view="comfort"] body:not(.gv-print-document) [class*="subtitle"],
html[data-view="comfort"] body:not(.gv-print-document) [class*="eyebrow"]{font-size:max(14px,1em)!important;line-height:1.5!important}
html[data-view="large"] body:not(.gv-print-document) small,
html[data-view="large"] body:not(.gv-print-document) .gv-panel-subtitle,
html[data-view="large"] body:not(.gv-print-document) .gv-metric-label,
html[data-view="large"] body:not(.gv-print-document) .gv-metric-foot,
html[data-view="large"] body:not(.gv-print-document) .gv-nav-label,
html[data-view="large"] body:not(.gv-print-document) [class*="subtitle"],
html[data-view="large"] body:not(.gv-print-document) [class*="eyebrow"]{font-size:max(15.5px,1em)!important;line-height:1.55!important}
html[data-view="accessible"]{--gv-body-size:21px;--gv-page-title:23px;--gv-content-x:28px}
html[data-view="accessible"] body{font-size:21px;line-height:1.58}
html[data-view="accessible"] .gv-main{padding:26px var(--gv-content-x) 54px}
html[data-view="accessible"] .gv-nav-item{font-size:18px;height:56px}
html[data-view="accessible"] .gv-nav-label{font-size:14px!important}
html[data-view="accessible"] .gv-page-title{font-size:23px}
html[data-view="accessible"] .gv-btn{min-height:52px;font-size:17px;padding:0 18px}
html[data-view="accessible"] .gv-icon-btn{width:50px;height:50px}
html[data-view="accessible"] .gv-command-trigger{height:50px;font-size:16px}
html[data-view="accessible"] input,html[data-view="accessible"] select,html[data-view="accessible"] textarea{font-size:18px!important;min-height:52px}
html[data-view="accessible"] table th{font-size:16px!important;line-height:1.45}
html[data-view="accessible"] table td{font-size:17px!important;line-height:1.55}
html[data-view="accessible"] .gv-panel-title{font-size:20px!important;line-height:1.4}
html[data-view="accessible"] body:not(.gv-print-document) small,
html[data-view="accessible"] body:not(.gv-print-document) .gv-panel-subtitle,
html[data-view="accessible"] body:not(.gv-print-document) .gv-metric-label,
html[data-view="accessible"] body:not(.gv-print-document) .gv-metric-foot,
html[data-view="accessible"] body:not(.gv-print-document) .gv-nav-label,
html[data-view="accessible"] body:not(.gv-print-document) [class*="subtitle"],
html[data-view="accessible"] body:not(.gv-print-document) [class*="eyebrow"]{font-size:max(17px,1em)!important;line-height:1.6!important}
html[data-view="accessible"] .gv-metric-value{font-size:42px}
html[data-view="accessible"] .gv-panel-head{min-height:82px;height:auto;padding-top:16px;padding-bottom:16px}
html[data-view="accessible"] .gv-user-meta strong,html[data-view="accessible"] .gv-logout{font-size:16px}
html[data-view="accessible"] .gv-user-meta span{font-size:14px}

/* V1.22 real settings / privacy */
.gv-v122-settings-hero,.gv-v122-privacy-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:18px}.gv-v122-settings-hero h1,.gv-v122-privacy-hero h1{margin:6px 0 8px}.gv-v122-settings-hero p,.gv-v122-privacy-hero p{max-width:860px;color:var(--gv-muted);line-height:1.7}
.gv-v122-settings-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:16px}.gv-v122-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:18px}.gv-v122-form-grid .gv-field{min-width:0}.gv-v122-form-grid .gv-field>span{font-weight:650}.gv-v122-form-grid .gv-field small{display:block;margin-top:6px;color:var(--gv-muted)}.gv-v122-preview{margin:18px;padding:20px;border:1px solid var(--gv-line);border-radius:10px;background:var(--gv-surface-soft);display:flex;flex-direction:column;gap:6px}.gv-v122-preview>span{color:var(--gv-faint);font-size:12px;letter-spacing:.08em}.gv-v122-preview>strong{font-size:24px;letter-spacing:.08em}.gv-v122-preview>small{font-weight:720}.gv-v122-note,.gv-v122-legal-note{margin-top:16px;padding:16px 18px;border:1px solid var(--gv-line);border-radius:9px;background:var(--gv-surface-soft);display:flex;gap:12px;align-items:flex-start}.gv-v122-note strong,.gv-v122-legal-note strong{white-space:nowrap}.gv-v122-note span,.gv-v122-legal-note p{margin:0;color:var(--gv-muted);line-height:1.65}
.gv-v122-privacy-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:10px;background:var(--gv-surface);margin-bottom:16px;overflow:hidden}.gv-v122-privacy-summary article{min-height:118px;padding:18px;border-right:1px solid var(--gv-line);display:flex;flex-direction:column}.gv-v122-privacy-summary article:last-child{border-right:0}.gv-v122-privacy-summary span{font-size:12px;color:var(--gv-faint);letter-spacing:.08em}.gv-v122-privacy-summary strong{font-size:22px;margin-top:12px}.gv-v122-privacy-summary small{margin-top:auto;color:var(--gv-muted)}.gv-v122-privacy-form{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v122-review-grid{margin-top:16px;grid-template-columns:1fr 1fr}.gv-v122-review-grid .gv-panel{padding-bottom:18px}.gv-v122-review-grid .gv-field,.gv-v122-review-grid .gv-btn,.gv-v122-review-current{margin-left:18px;margin-right:18px}.gv-v122-review-current{display:grid;grid-template-columns:90px minmax(0,1fr);gap:9px 12px;padding:14px;border:1px solid var(--gv-line);border-radius:8px;background:var(--gv-surface-soft);margin-bottom:14px}.gv-v122-review-current span{font-size:12px;color:var(--gv-faint)}.gv-v122-review-current code{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gv-pref-card-wide{grid-column:1/-1}.gv-preference-options-four{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}

@media(max-width:1100px){.gv-v122-settings-grid{grid-template-columns:1fr}.gv-v122-privacy-summary{grid-template-columns:repeat(2,1fr)}.gv-v122-privacy-summary article:nth-child(2){border-right:0}.gv-v122-privacy-summary article:nth-child(-n+2){border-bottom:1px solid var(--gv-line)}}
@media(max-width:767px){.gv-v122-settings-hero,.gv-v122-privacy-hero{flex-direction:column}.gv-v122-form-grid,.gv-v122-privacy-form,.gv-v122-review-grid{grid-template-columns:1fr}.gv-v122-privacy-summary{grid-template-columns:1fr}.gv-v122-privacy-summary article{border-right:0!important;border-bottom:1px solid var(--gv-line)}.gv-v122-privacy-summary article:last-child{border-bottom:0}.gv-preference-options-four{grid-template-columns:1fr}.gv-v122-note,.gv-v122-legal-note{flex-direction:column}.gv-sidebar-inline-toggle{display:none}}
@media(max-width:599px){html[data-view="accessible"]{--gv-body-size:18.5px;--gv-page-title:21px;--gv-content-x:14px}html[data-view="accessible"] body{font-size:18.5px}html[data-view="accessible"] .gv-nav-item{font-size:17px}html[data-view="accessible"] input,html[data-view="accessible"] select,html[data-view="accessible"] textarea{font-size:17px!important}}
@media print{html[data-view] .gv-main{font-size:initial}.gv-header-reveal{display:none!important}}
/* V1.22 reviewed tenant accent presets: restrained UI tokens only. */
html[data-accent="slate"]{--gv-accent:#596b7a;--gv-accent-soft:#eef2f4}
html[data-accent="blue"]{--gv-accent:#546f87;--gv-accent-soft:#edf2f6}
html[data-accent="olive"]{--gv-accent:#6e7863;--gv-accent-soft:#f0f2ed}
html[data-accent="warm"]{--gv-accent:#806f63;--gv-accent-soft:#f4f0ed}

/* ==============================
   V1.23 · Real-Use Lane A
   ============================== */
.gv-v123-hero{margin-bottom:22px}
.gv-v123-hero h1{font-size:clamp(28px,2.1vw,36px);line-height:1.08;letter-spacing:-.035em}
.gv-v123-hero p{font-size:13px;line-height:1.7;max-width:820px}
.gv-v123-metrics{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}
.gv-v123-metrics>div,.gv-v123-metrics>button{min-width:0}
.gv-v123-admin-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.72fr);gap:16px;align-items:start}
.gv-v123-editor{position:sticky;top:calc(var(--gv-topbar) + 16px);overflow:hidden}
.gv-v123-form{padding:16px 18px 18px;display:grid;gap:13px}
.gv-v123-form>label,.gv-v123-task-edit label{display:grid;gap:6px}
.gv-v123-form>label>span,.gv-v123-task-edit label>span{font-size:11px;font-weight:680;color:#59636c}
.gv-v123-form input,.gv-v123-form select,.gv-v123-form textarea,.gv-v123-task-edit input,.gv-v123-task-edit select,.gv-v123-task-edit textarea{width:100%;min-height:42px;border:1px solid var(--gv-line);border-radius:7px;background:#fff;color:#3f474f;padding:9px 11px;font:inherit;outline:none}
.gv-v123-form textarea,.gv-v123-task-edit textarea{resize:vertical;line-height:1.55}
.gv-v123-form input:focus,.gv-v123-form select:focus,.gv-v123-form textarea:focus,.gv-v123-task-edit input:focus,.gv-v123-task-edit select:focus,.gv-v123-task-edit textarea:focus{border-color:#aeb8bf;box-shadow:0 0 0 3px rgba(82,101,116,.08)}
.gv-v123-readonly-strip{border:1px solid #e1e5e7;border-radius:7px;background:#f6f8f8;padding:11px 12px;display:grid;gap:4px}
.gv-v123-readonly-strip strong{font-size:10px;letter-spacing:.08em;color:#536069}
.gv-v123-readonly-strip span{font-size:11px;line-height:1.55;color:#737d85}
.gv-v123-form-alert{border:1px solid #ead9d5;background:#faf4f2;color:#775c55;border-radius:7px;padding:10px 11px;font-size:11px;line-height:1.55}
.gv-v123-form-alert[hidden]{display:none}
.gv-v123-form-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:2px}
.gv-v123-lock-note{margin-top:16px;padding:15px 18px;display:grid;gap:5px}
.gv-v123-lock-note strong{font-size:12px;color:#4d565e}
.gv-v123-lock-note span{font-size:11px;color:#77818a;line-height:1.6}
.gv-v123-review-panel{margin-top:16px;overflow:hidden}
.gv-v123-review-list{padding:4px 16px 12px;display:grid}
.gv-v123-review-list article{min-height:64px;border-bottom:1px solid var(--gv-line-soft);display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:9px 2px}
.gv-v123-review-list article:last-child{border-bottom:0}
.gv-v123-review-list strong{display:block;font-size:12px;color:#414950}
.gv-v123-review-list small{display:block;font-size:11px;color:#7d868e;margin-top:3px}
.gv-v123-review-actions{display:flex;gap:5px}
.gv-v123-review-actions button{height:30px;border:1px solid var(--gv-line);border-radius:6px;background:#fff;padding:0 9px;font-size:10px;color:#5b6670;cursor:pointer}
.gv-v123-review-actions button:hover{background:#f1f3f4}
.gv-empty-mini{padding:18px;color:#818b93;font-size:11px;line-height:1.6;text-align:center}
.gv-v123-client-layout{grid-template-columns:minmax(360px,.85fr) minmax(380px,1.15fr)!important}
.gv-v123-task-edit{margin-top:12px;margin-bottom:12px}
.gv-v123-task-edit .wide{grid-column:1/-1}
.gv-task-snooze-controls input{min-width:0;height:38px;border:1px solid var(--gv-line);border-radius:6px;background:#fafbfc;padding:0 9px;font-size:10px;color:#515a62}

html[data-view="comfort"] .gv-v123-form>label>span,
html[data-view="comfort"] .gv-v123-task-edit label>span,
html[data-view="comfort"] .gv-v123-readonly-strip span,
html[data-view="comfort"] .gv-v123-form-alert,
html[data-view="comfort"] .gv-v123-review-list small,
html[data-view="comfort"] .gv-empty-mini{font-size:max(14px,1em)}
html[data-view="large"] .gv-v123-hero h1{font-size:36px}
html[data-view="accessible"] .gv-v123-hero h1{font-size:40px}
html[data-view="large"] .gv-v123-form>label>span,
html[data-view="large"] .gv-v123-task-edit label>span,
html[data-view="large"] .gv-v123-readonly-strip span,
html[data-view="large"] .gv-v123-form-alert,
html[data-view="large"] .gv-v123-review-list small,
html[data-view="large"] .gv-empty-mini{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v123-form>label>span,
html[data-view="accessible"] .gv-v123-task-edit label>span,
html[data-view="accessible"] .gv-v123-readonly-strip span,
html[data-view="accessible"] .gv-v123-form-alert,
html[data-view="accessible"] .gv-v123-review-list small,
html[data-view="accessible"] .gv-empty-mini{font-size:max(17px,1em)}

@media(max-width:1180px){
  .gv-v123-admin-grid{grid-template-columns:minmax(0,1fr) 300px}
  .gv-v123-client-layout{grid-template-columns:minmax(320px,.85fr) minmax(360px,1.15fr)!important}
}
@media(max-width:900px){
  .gv-v123-admin-grid,.gv-v123-client-layout{grid-template-columns:1fr!important}
  .gv-v123-editor{position:static}
  .gv-v123-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .gv-v123-metrics{grid-template-columns:1fr!important}
  .gv-v123-review-list article{grid-template-columns:minmax(0,1fr) auto}
  .gv-v123-review-actions{grid-column:1/-1}
  .gv-v123-form-actions .gv-btn{flex:1;justify-content:center}
  .gv-v123-task-edit{grid-template-columns:1fr!important}
  .gv-v123-task-edit .wide{grid-column:auto}
}
/* V1.24 · Real-use expansion */
.gv-v124-dashboard-activity{display:grid}.gv-v124-dashboard-activity>a{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:center;padding:13px 4px;border-bottom:1px solid var(--line,#e4e5e6);color:inherit;text-decoration:none}.gv-v124-dashboard-activity>a:last-child{border-bottom:0}.gv-v124-dashboard-activity>a>span{font-size:.78rem;color:var(--muted,#7a8188)}.gv-v124-dashboard-activity strong,.gv-v124-dashboard-activity small{display:block}.gv-v124-dashboard-activity small{margin-top:4px;color:var(--muted,#7a8188)}.gv-v124-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;padding-top:8px}.gv-v124-status-grid>div{border:1px solid var(--line,#e2e4e6);border-radius:10px;padding:16px;background:rgba(255,255,255,.45)}.gv-v124-status-grid span,.gv-v124-status-grid strong{display:block}.gv-v124-status-grid span{font-size:.76rem;letter-spacing:.05em;color:var(--muted,#767e86)}.gv-v124-status-grid strong{margin-top:8px;font-size:1.45rem}.gv-v124-inbox-panel{margin-top:18px}.gv-v124-inbox-list{display:grid}.gv-v124-inbox-item{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:14px;padding:18px 4px;border-bottom:1px solid var(--line,#e4e5e6);align-items:center}.gv-v124-inbox-mark{width:7px;height:7px;border-radius:50%;background:#c7ccd0}.gv-v124-inbox-item.unread .gv-v124-inbox-mark{background:#343b42}.gv-v124-inbox-copy>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.gv-v124-inbox-copy strong{font-size:.96rem}.gv-v124-inbox-copy small,.gv-v124-inbox-copy p,.gv-v124-inbox-copy>span{color:var(--muted,#737b83)}.gv-v124-inbox-copy p{margin:5px 0 7px;line-height:1.55}.gv-v124-inbox-copy>span{font-size:.7rem;letter-spacing:.08em}.gv-v124-inbox-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.gv-v124-inbox-actions a,.gv-v124-inbox-actions button,.gv-v124-invite-actions button,.gv-v124-pager button{border:1px solid var(--line,#dcdfe2);background:#fff;color:inherit;border-radius:7px;padding:8px 10px;font:inherit;font-size:.8rem;text-decoration:none;cursor:pointer}.gv-v124-inbox-actions button:disabled,.gv-v124-pager button:disabled{opacity:.4;cursor:default}.gv-v124-invite-panel{margin-top:18px}.gv-v124-invite-list{display:grid}.gv-v124-invite-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:14px 2px;border-bottom:1px solid var(--line,#e3e5e7)}.gv-v124-invite-list strong,.gv-v124-invite-list small{display:block}.gv-v124-invite-list small{margin-top:4px;color:var(--muted,#727a82)}.gv-v124-invite-state{text-align:right}.gv-v124-invite-actions{display:flex;gap:6px}.gv-v124-invite-secret{display:grid;gap:8px;padding:14px;border:1px solid var(--line,#dfe2e4);border-radius:9px;background:#f7f7f6}.gv-v124-invite-secret input{width:100%}.gv-v124-invite-secret small{color:var(--muted,#747c83);line-height:1.5}.gv-v124-inline-guard{margin:0;border:0;border-top:1px solid var(--line,#e1e3e5);border-radius:0}.gv-v124-pager{display:flex;justify-content:center;align-items:center;gap:12px;padding:16px}.gv-v124-trace-actions{display:flex;gap:8px;flex-wrap:wrap}.gv-command-result .gv-command-key{min-width:72px;width:auto;padding:0 8px}.gv-command-search-label[hidden]{display:none!important}@media(max-width:720px){.gv-v124-inbox-item{grid-template-columns:8px minmax(0,1fr)}.gv-v124-inbox-actions{grid-column:2;justify-content:flex-start}.gv-v124-invite-list>article{grid-template-columns:1fr}.gv-v124-invite-state{text-align:left}.gv-v124-invite-actions{justify-content:flex-start}.gv-v124-dashboard-activity>a{grid-template-columns:58px minmax(0,1fr)}}
/* V1.24 canonical Project read-only */
.gv-v124-project-table-wrap{overflow:auto}.gv-v124-project-table{width:100%;border-collapse:collapse;min-width:920px}.gv-v124-project-table th,.gv-v124-project-table td{padding:16px 14px;border-bottom:1px solid var(--line,#e8e3dc);text-align:left;vertical-align:middle}.gv-v124-project-table th{font-size:.76rem;letter-spacing:.08em;font-weight:700;color:var(--muted,#777)}.gv-v124-project-table td{font-size:.9rem}.gv-v124-project-primary{display:flex;flex-direction:column;gap:4px}.gv-v124-project-primary strong{font-size:1rem}.gv-v124-project-primary small,.gv-v124-project-table td small{display:block;color:var(--muted,#777);margin-top:4px}.gv-v124-project-schedule{display:grid;gap:14px}.gv-v124-project-schedule>div{padding:14px;border:1px solid var(--line,#e8e3dc);border-radius:12px}.gv-v124-project-schedule span,.gv-v124-project-schedule strong{display:block}.gv-v124-project-schedule span{font-size:.72rem;letter-spacing:.08em;color:var(--muted,#777);margin-bottom:6px}.gv-v124-linked-tasks,.gv-v124-project-activity{display:grid;gap:8px}.gv-v124-linked-tasks>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line,#e8e3dc)}.gv-v124-linked-tasks a div{min-width:0}.gv-v124-linked-tasks strong,.gv-v124-linked-tasks small{display:block}.gv-v124-linked-tasks strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gv-v124-linked-tasks small{margin-top:4px;color:var(--muted,#777)}.gv-v124-write-lock{padding:18px;border:1px solid var(--line,#e8e3dc);border-radius:14px}.gv-v124-write-lock strong{display:block;letter-spacing:.06em}.gv-v124-write-lock p{color:var(--muted,#777);line-height:1.65}.gv-v124-project-activity>a{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--line,#e8e3dc)}.gv-v124-project-activity strong,.gv-v124-project-activity small{display:block}.gv-v124-project-activity small{margin-top:4px;color:var(--muted,#777)}@media(max-width:760px){.gv-v124-project-detail-hero .gv-project-actions{align-items:stretch}.gv-v124-project-activity>a{grid-template-columns:1fr}.gv-v124-linked-tasks>a{grid-template-columns:1fr}.gv-v124-project-table{min-width:760px}}

/* V1.25 · Quote Draft Center */
.gv-v125-quote-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px}.gv-v125-quote-hero h1{margin:5px 0 7px;font-size:30px;letter-spacing:-.03em}.gv-v125-quote-hero p{margin:0;max-width:720px;color:#6f7880;font-size:11px;line-height:1.65}.gv-v125-quote-kpis{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--gv-line);border-radius:8px;background:#fff;margin-bottom:12px;overflow:hidden}.gv-v125-quote-kpis>div{padding:13px 16px;border-right:1px solid var(--gv-line-soft)}.gv-v125-quote-kpis>div:last-child{border-right:0}.gv-v125-quote-kpis span{display:block;font-size:8.5px;color:#8a939b}.gv-v125-quote-kpis strong{display:block;margin-top:4px;font-size:21px;color:#394147}.gv-v125-quote-commandbar{grid-template-columns:minmax(220px,1fr) auto auto}.gv-v125-quote-layout{display:grid;grid-template-columns:minmax(230px,280px) minmax(0,1fr);gap:12px;align-items:start}.gv-v125-quote-list-panel{position:sticky;top:88px;max-height:calc(100vh - 110px);overflow:hidden}.gv-v125-quote-list{padding:6px;overflow:auto;max-height:calc(100vh - 175px)}.gv-v125-quote-list>button{display:block;width:100%;border:1px solid transparent;border-bottom-color:var(--gv-line-soft);background:transparent;border-radius:6px;padding:13px 11px;text-align:left;cursor:pointer}.gv-v125-quote-list>button:hover{background:#f5f7f8}.gv-v125-quote-list>button.active{background:#edf1f3;border-color:#e1e5e8}.gv-v125-quote-list .gv-quote-list-foot i.review_ready{background:#8b734d}.gv-v125-quote-list .gv-quote-list-foot i.issued{background:#5e7666}.gv-v125-quote-list .gv-quote-list-foot i.void{background:#8f6666}.gv-v125-empty,.gv-v125-editor-empty{padding:30px 20px;text-align:center;color:#7c858d;font-size:10px}.gv-v125-editor-empty strong{display:block;font-size:14px;color:#505960}.gv-v125-editor-empty span{display:block;margin-top:6px}.gv-v125-editor-head{display:flex;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid var(--gv-line)}.gv-v125-title-input{display:block;width:min(620px,100%);border:0;background:transparent;font-size:23px;font-weight:660;letter-spacing:-.02em;color:#30373d;padding:3px 0;outline:0}.gv-v125-editor-head p{margin:4px 0 0;font-size:10px;color:#768089}.gv-v125-version-box{display:grid;justify-items:end;align-content:start;gap:5px}.gv-v125-version-box label{font-size:8px;letter-spacing:.12em;color:#8c959c;font-weight:760}.gv-v125-version-box select{height:36px;border:1px solid var(--gv-line);border-radius:6px;background:#fff;padding:0 9px;color:#59636b}.gv-v125-meta-grid{display:grid;grid-template-columns:1.15fr 1.3fr .8fr .6fr;gap:10px;padding:18px 22px;border-bottom:1px solid var(--gv-line-soft)}.gv-v125-lines-section{padding:0 22px 12px}.gv-v125-quote-table{min-width:820px}.gv-v125-quote-table input{width:100%;border:0;background:transparent;padding:5px 4px;color:#454d54}.gv-v125-quote-table td:nth-child(1){min-width:160px}.gv-v125-quote-table td:nth-child(2){min-width:190px}.gv-v125-quote-table .q-qty{width:70px;text-align:right}.gv-v125-quote-table .q-unit{width:85px}.gv-v125-quote-table .q-price{width:115px;text-align:right}.gv-v125-commercial{display:grid;grid-template-columns:150px 150px minmax(240px,1fr);gap:10px;padding:18px 22px;border-top:1px solid var(--gv-line-soft);background:#fafbfb}.gv-v125-inline-input{display:flex;align-items:center;border:1px solid var(--gv-line);border-radius:6px;background:#fff;overflow:hidden}.gv-v125-inline-input input{width:100%;border:0!important;box-shadow:none!important}.gv-v125-inline-input em{font-style:normal;padding:0 11px;color:#788188}.gv-v125-total-card{display:grid;justify-items:end;align-content:center}.gv-v125-total-card span{font-size:9px;color:#7c858d}.gv-v125-total-card strong{font-size:25px;margin-top:3px}.gv-v125-total-card small{font-size:8.5px;color:#8d959b;margin-top:3px}.gv-v125-notes{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px 22px}.gv-v125-notes textarea{resize:vertical;min-height:100px;border:1px solid var(--gv-line);border-radius:7px;padding:10px 11px;background:#fff}.gv-v125-editor-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;border-top:1px solid var(--gv-line);background:#fbfcfc}.gv-v125-editor-foot>div:first-child{font-size:8.5px;color:#8b949b}.gv-v125-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1439px){.gv-v125-quote-layout{grid-template-columns:240px minmax(0,1fr)}.gv-v125-meta-grid{grid-template-columns:1fr 1fr}.gv-v125-commercial{grid-template-columns:1fr 1fr}.gv-v125-total-card{grid-column:1/-1;justify-items:start}.gv-v125-notes{grid-template-columns:1fr}}
@media(max-width:1100px){.gv-v125-quote-layout{grid-template-columns:1fr}.gv-v125-quote-list-panel{position:relative;top:auto;max-height:none}.gv-v125-quote-list{max-height:330px}.gv-v125-quote-commandbar{grid-template-columns:1fr}.gv-v125-quote-hero{align-items:flex-start;flex-direction:column}.gv-v125-quote-hero-actions{flex-wrap:wrap}}
@media(max-width:640px){.gv-v125-quote-kpis{grid-template-columns:1fr 1fr}.gv-v125-quote-kpis>div:nth-child(2){border-right:0}.gv-v125-quote-kpis>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-v125-meta-grid,.gv-v125-commercial{grid-template-columns:1fr}.gv-v125-total-card{grid-column:auto}.gv-v125-editor-head{flex-direction:column}.gv-v125-version-box{justify-items:start}.gv-v125-editor-foot{align-items:stretch;flex-direction:column}.gv-v125-actions{display:grid;grid-template-columns:1fr 1fr}.gv-v125-actions .gv-btn{justify-content:center}.gv-v125-quote-hero h1{font-size:26px}}
html[data-view="accessible"] .gv-v125-quote-hero p,html[data-view="accessible"] .gv-v125-empty,html[data-view="accessible"] .gv-v125-editor-empty,html[data-view="accessible"] .gv-v125-editor-head p,html[data-view="accessible"] .gv-v125-editor-foot>div:first-child,html[data-view="accessible"] .gv-v125-total-card span,html[data-view="accessible"] .gv-v125-total-card small,html[data-view="accessible"] .gv-v125-quote-kpis span{font-size:max(17px,1em)!important;line-height:1.6!important}html[data-view="accessible"] .gv-v125-title-input{font-size:30px!important}

/* V1.26 Quote Delivery Evidence */
.gv-v126-delivery{border-top:1px solid var(--gv-line);padding:18px 22px 22px;background:#f8f9f9}.gv-v126-delivery-state{font-size:9px;color:#6f7880;border:1px solid var(--gv-line);background:#fff;padding:5px 8px;border-radius:999px}.gv-v126-artifact-card{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:15px 16px;border:1px solid var(--gv-line);background:#fff;border-radius:8px}.gv-v126-artifact-card>div:first-child{min-width:0}.gv-v126-artifact-card span{display:block;font-size:8px;color:#899198;letter-spacing:.08em}.gv-v126-artifact-card strong{display:block;margin-top:5px;font:600 10px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;color:#394147;overflow-wrap:anywhere}.gv-v126-artifact-card small{display:block;margin-top:4px;font-size:8.5px;color:#858e95}.gv-v126-artifact-actions{display:flex;gap:7px;flex-wrap:wrap;flex:0 0 auto}.gv-v126-delivery-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:12px;margin-top:12px}.gv-v126-delivery-history,.gv-v126-delivery-form{border:1px solid var(--gv-line);background:#fff;border-radius:8px;padding:14px}.gv-v126-subhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.gv-v126-subhead strong{font-size:11px}.gv-v126-subhead span{font-size:8.5px;color:#899198}.gv-v126-delivery-form{display:grid;gap:10px}.gv-v126-delivery-form .gv-field small{font-size:8px;line-height:1.5;color:#8b949b}.gv-v126-delivery-event{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 2px;border-bottom:1px solid var(--gv-line-soft)}.gv-v126-delivery-event:last-child{border-bottom:0}.gv-v126-delivery-event>span{font-size:9px;font-weight:700;color:#657078}.gv-v126-delivery-event strong{display:block;font-size:10px}.gv-v126-delivery-event small{display:block;margin-top:3px;font-size:8.5px;color:#858e95;overflow-wrap:anywhere}.gv-v126-delivery-event code{font-size:8px;color:#7f888f}.gv-v126-quote-attention{margin-top:12px}.gv-v126-quote-attention-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 14px 14px}.gv-v126-quote-attention-list a{display:block;border:1px solid var(--gv-line);border-radius:7px;padding:12px;text-decoration:none;background:#fff;color:inherit}.gv-v126-quote-attention-list a:hover{background:#f7f8f8}.gv-v126-quote-attention-list strong{display:block;font-size:11px}.gv-v126-quote-attention-list span{display:block;margin-top:4px;font-size:8.5px;color:#7f888f}.gv-v126-quote-attention-list em{display:block;margin-top:8px;font-style:normal;font-size:8px;color:#69747c;text-transform:uppercase;letter-spacing:.06em}
@media(max-width:1100px){.gv-v126-delivery-grid{grid-template-columns:1fr}.gv-v126-quote-attention-list{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.gv-v126-artifact-card{align-items:flex-start;flex-direction:column}.gv-v126-artifact-actions{width:100%}.gv-v126-artifact-actions .gv-btn{flex:1;justify-content:center}.gv-v126-delivery-event{grid-template-columns:1fr}.gv-v126-quote-attention-list{grid-template-columns:1fr}}
html[data-view="accessible"] .gv-v126-delivery-state,html[data-view="accessible"] .gv-v126-artifact-card span,html[data-view="accessible"] .gv-v126-artifact-card strong,html[data-view="accessible"] .gv-v126-artifact-card small,html[data-view="accessible"] .gv-v126-subhead span,html[data-view="accessible"] .gv-v126-delivery-form .gv-field small,html[data-view="accessible"] .gv-v126-delivery-event>span,html[data-view="accessible"] .gv-v126-delivery-event strong,html[data-view="accessible"] .gv-v126-delivery-event small,html[data-view="accessible"] .gv-v126-delivery-event code,html[data-view="accessible"] .gv-v126-quote-attention-list span,html[data-view="accessible"] .gv-v126-quote-attention-list em{font-size:max(17px,1em)!important;line-height:1.55!important}
/* V1.26 readability floors: preserve the V1.22 workspace typography contract. */
html[data-view="standard"] .gv-v126-delivery-state,
html[data-view="standard"] .gv-v126-artifact-card span,
html[data-view="standard"] .gv-v126-artifact-card strong,
html[data-view="standard"] .gv-v126-artifact-card small,
html[data-view="standard"] .gv-v126-subhead strong,
html[data-view="standard"] .gv-v126-subhead span,
html[data-view="standard"] .gv-v126-delivery-form .gv-field small,
html[data-view="standard"] .gv-v126-delivery-event>span,
html[data-view="standard"] .gv-v126-delivery-event strong,
html[data-view="standard"] .gv-v126-delivery-event small,
html[data-view="standard"] .gv-v126-delivery-event code,
html[data-view="standard"] .gv-v126-quote-attention-list strong,
html[data-view="standard"] .gv-v126-quote-attention-list span,
html[data-view="standard"] .gv-v126-quote-attention-list em{font-size:12px!important;line-height:1.5!important}
html[data-view="comfort"] .gv-v126-delivery-state,
html[data-view="comfort"] .gv-v126-artifact-card span,
html[data-view="comfort"] .gv-v126-artifact-card strong,
html[data-view="comfort"] .gv-v126-artifact-card small,
html[data-view="comfort"] .gv-v126-subhead strong,
html[data-view="comfort"] .gv-v126-subhead span,
html[data-view="comfort"] .gv-v126-delivery-form .gv-field small,
html[data-view="comfort"] .gv-v126-delivery-event>span,
html[data-view="comfort"] .gv-v126-delivery-event strong,
html[data-view="comfort"] .gv-v126-delivery-event small,
html[data-view="comfort"] .gv-v126-delivery-event code,
html[data-view="comfort"] .gv-v126-quote-attention-list strong,
html[data-view="comfort"] .gv-v126-quote-attention-list span,
html[data-view="comfort"] .gv-v126-quote-attention-list em{font-size:14px!important;line-height:1.55!important}
html[data-view="large"] .gv-v126-delivery-state,
html[data-view="large"] .gv-v126-artifact-card span,
html[data-view="large"] .gv-v126-artifact-card strong,
html[data-view="large"] .gv-v126-artifact-card small,
html[data-view="large"] .gv-v126-subhead strong,
html[data-view="large"] .gv-v126-subhead span,
html[data-view="large"] .gv-v126-delivery-form .gv-field small,
html[data-view="large"] .gv-v126-delivery-event>span,
html[data-view="large"] .gv-v126-delivery-event strong,
html[data-view="large"] .gv-v126-delivery-event small,
html[data-view="large"] .gv-v126-delivery-event code,
html[data-view="large"] .gv-v126-quote-attention-list strong,
html[data-view="large"] .gv-v126-quote-attention-list span,
html[data-view="large"] .gv-v126-quote-attention-list em{font-size:15.5px!important;line-height:1.55!important}
html[data-view="accessible"] .gv-v126-delivery-state,
html[data-view="accessible"] .gv-v126-artifact-card span,
html[data-view="accessible"] .gv-v126-artifact-card strong,
html[data-view="accessible"] .gv-v126-artifact-card small,
html[data-view="accessible"] .gv-v126-subhead strong,
html[data-view="accessible"] .gv-v126-subhead span,
html[data-view="accessible"] .gv-v126-delivery-form .gv-field small,
html[data-view="accessible"] .gv-v126-delivery-event>span,
html[data-view="accessible"] .gv-v126-delivery-event strong,
html[data-view="accessible"] .gv-v126-delivery-event small,
html[data-view="accessible"] .gv-v126-delivery-event code,
html[data-view="accessible"] .gv-v126-quote-attention-list strong,
html[data-view="accessible"] .gv-v126-quote-attention-list span,
html[data-view="accessible"] .gv-v126-quote-attention-list em{font-size:17px!important;line-height:1.6!important}

/* V1.27 · Rate Library Real-Use Pricing Catalog */
.gv-v127-rate-hero{margin-bottom:14px}.gv-v127-rate-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.gv-v127-rate-commandbar{grid-template-columns:minmax(260px,1fr) auto minmax(0,auto) auto}.gv-v127-rate-table{min-width:920px}.gv-v127-rate-table td:first-child{min-width:220px}.gv-v127-rate-table td:first-child small{max-width:320px;white-space:normal;line-height:1.45}.gv-v127-rate-table td:nth-child(4)>strong{font-size:12px;color:#3f474e}.gv-v127-rate-table .is-archived{opacity:.66;background:#fafafa}.gv-v127-rate-status{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;border:1px solid var(--gv-line);font-size:9px;color:#667179;background:#fff;white-space:nowrap}.gv-v127-rate-status.active{border-color:#d8e1db;background:#f4f7f5;color:#52665a}.gv-v127-rate-status.archived{border-color:#e1dddd;background:#f8f6f6;color:#7f6d6d}.gv-v127-rate-side{grid-template-columns:1fr!important}.gv-v127-rate-guide{overflow:hidden}.gv-v127-rate-rule{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px;padding:14px 16px;border-top:1px solid var(--gv-line-soft)}.gv-v127-rate-rule>span{width:28px;height:24px;display:grid;place-items:center;border-radius:5px;background:#eef1f2;font-size:9px;color:#66717a;font-weight:760}.gv-v127-rate-rule strong{display:block;font-size:11px;color:#454e55}.gv-v127-rate-rule p{margin:4px 0 0;font-size:9px;line-height:1.55;color:#7c858d}.gv-v127-rate-drawer .gv-rate-editor-grid{grid-template-columns:1fr 1fr}.gv-v127-rate-drawer .gv-v127-rate-owner{grid-column:1/-1}.gv-v127-rate-drawer .gv-field small{display:block;margin-top:6px;font-size:9px;color:#838c93;line-height:1.55}.gv-v127-rate-drawer .gv-inline-notice{margin-top:14px}.gv-v127-quote-line-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.gv-v127-rate-picker{width:min(560px,calc(100vw - 18px))}.gv-v127-rate-picker .gv-drawer-body{display:grid;align-content:start;gap:12px;overflow:auto}.gv-v127-rate-picker-search{width:100%;margin:0}.gv-v127-rate-picker-note{display:grid;gap:4px;padding:12px 13px;border:1px solid #ddd7cf;border-radius:7px;background:#f7f4f0}.gv-v127-rate-picker-note strong{font-size:10px;color:#5e554c}.gv-v127-rate-picker-note span{font-size:9px;line-height:1.55;color:#7f756a}.gv-v127-rate-picker-list{display:grid}.gv-v127-rate-pick{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;text-align:left;padding:14px 4px;cursor:pointer}.gv-v127-rate-pick:hover{background:#f7f8f8}.gv-v127-rate-pick strong{display:block;font-size:11px;color:#424b52}.gv-v127-rate-pick small{display:block;margin-top:4px;font-size:9px;color:#858e95;line-height:1.45}.gv-v127-rate-pick em{font-style:normal;font-size:9px;color:#758089;white-space:nowrap}.gv-v127-rate-pick b{font-size:11px;color:#414950;white-space:nowrap}
@media(max-width:1280px){.gv-v127-rate-commandbar{grid-template-columns:1fr 1fr}.gv-v127-rate-layout{grid-template-columns:1fr}.gv-v127-rate-side{position:static}.gv-v127-rate-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.gv-v127-rate-commandbar{grid-template-columns:1fr}.gv-v127-rate-drawer .gv-rate-editor-grid{grid-template-columns:1fr}.gv-v127-rate-drawer .gv-v127-rate-owner{grid-column:auto}.gv-v127-rate-pick{grid-template-columns:1fr}.gv-v127-rate-pick em,.gv-v127-rate-pick b{white-space:normal}.gv-v127-quote-line-actions{width:100%;justify-content:flex-start}.gv-v127-quote-line-actions .gv-btn{flex:1;justify-content:center}}
/* V1.27 readability floors */
html[data-view="standard"] .gv-v127-rate-rule>span,html[data-view="standard"] .gv-v127-rate-rule strong,html[data-view="standard"] .gv-v127-rate-rule p,html[data-view="standard"] .gv-v127-rate-status,html[data-view="standard"] .gv-v127-rate-drawer .gv-field small,html[data-view="standard"] .gv-v127-rate-picker-note strong,html[data-view="standard"] .gv-v127-rate-picker-note span,html[data-view="standard"] .gv-v127-rate-pick strong,html[data-view="standard"] .gv-v127-rate-pick small,html[data-view="standard"] .gv-v127-rate-pick em,html[data-view="standard"] .gv-v127-rate-pick b{font-size:12px!important;line-height:1.5!important}
html[data-view="comfort"] .gv-v127-rate-rule>span,html[data-view="comfort"] .gv-v127-rate-rule strong,html[data-view="comfort"] .gv-v127-rate-rule p,html[data-view="comfort"] .gv-v127-rate-status,html[data-view="comfort"] .gv-v127-rate-drawer .gv-field small,html[data-view="comfort"] .gv-v127-rate-picker-note strong,html[data-view="comfort"] .gv-v127-rate-picker-note span,html[data-view="comfort"] .gv-v127-rate-pick strong,html[data-view="comfort"] .gv-v127-rate-pick small,html[data-view="comfort"] .gv-v127-rate-pick em,html[data-view="comfort"] .gv-v127-rate-pick b{font-size:14px!important;line-height:1.55!important}
html[data-view="large"] .gv-v127-rate-rule>span,html[data-view="large"] .gv-v127-rate-rule strong,html[data-view="large"] .gv-v127-rate-rule p,html[data-view="large"] .gv-v127-rate-status,html[data-view="large"] .gv-v127-rate-drawer .gv-field small,html[data-view="large"] .gv-v127-rate-picker-note strong,html[data-view="large"] .gv-v127-rate-picker-note span,html[data-view="large"] .gv-v127-rate-pick strong,html[data-view="large"] .gv-v127-rate-pick small,html[data-view="large"] .gv-v127-rate-pick em,html[data-view="large"] .gv-v127-rate-pick b{font-size:15.5px!important;line-height:1.55!important}
html[data-view="accessible"] .gv-v127-rate-rule>span,html[data-view="accessible"] .gv-v127-rate-rule strong,html[data-view="accessible"] .gv-v127-rate-rule p,html[data-view="accessible"] .gv-v127-rate-status,html[data-view="accessible"] .gv-v127-rate-drawer .gv-field small,html[data-view="accessible"] .gv-v127-rate-picker-note strong,html[data-view="accessible"] .gv-v127-rate-picker-note span,html[data-view="accessible"] .gv-v127-rate-pick strong,html[data-view="accessible"] .gv-v127-rate-pick small,html[data-view="accessible"] .gv-v127-rate-pick em,html[data-view="accessible"] .gv-v127-rate-pick b{font-size:17px!important;line-height:1.6!important}
.gv-v127-rate-table tr.is-target{outline:2px solid #a9b2b8;outline-offset:-2px;background:#f6f8f8}
/* V1.27 · inherited Rate surfaces must obey workspace readability floors too */
html[data-view="standard"] .gv-v127-rate-table small,html[data-view="standard"] .gv-rate-principle span,html[data-view="standard"] .gv-rate-principle strong,html[data-view="standard"] .gv-rate-principle p{font-size:12px!important;line-height:1.5!important}
html[data-view="comfort"] .gv-v127-rate-table small,html[data-view="comfort"] .gv-rate-principle span,html[data-view="comfort"] .gv-rate-principle strong,html[data-view="comfort"] .gv-rate-principle p{font-size:14px!important;line-height:1.55!important}
html[data-view="large"] .gv-v127-rate-table small,html[data-view="large"] .gv-rate-principle span,html[data-view="large"] .gv-rate-principle strong,html[data-view="large"] .gv-rate-principle p{font-size:15.5px!important;line-height:1.55!important}
html[data-view="accessible"] .gv-v127-rate-table small,html[data-view="accessible"] .gv-rate-principle span,html[data-view="accessible"] .gv-rate-principle strong,html[data-view="accessible"] .gv-rate-principle p{font-size:17px!important;line-height:1.6!important}

/* V1.28 · Quote Templates & Reusable Service Bundles */
.gv-v128-template-hero{margin-bottom:14px}.gv-v128-template-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.gv-v128-template-commandbar{grid-template-columns:minmax(280px,1fr) auto auto minmax(150px,auto)}.gv-v128-template-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}.gv-v128-template-side{grid-template-columns:1fr!important;position:sticky;top:78px}.gv-v128-template-list{display:grid}.gv-v128-template-card{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 18px;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;text-align:left;cursor:pointer}.gv-v128-template-card:hover{background:#f7f8f8}.gv-v128-template-card.is-archived{opacity:.64;background:#fafafa}.gv-v128-template-card strong{display:block;font-size:12px;color:#424b52}.gv-v128-template-card small{display:block;margin-top:5px;font-size:10px;line-height:1.5;color:#7e878e}.gv-v128-template-card-meta{display:flex;gap:10px;align-items:center;justify-content:flex-end}.gv-v128-template-card-meta em,.gv-v128-template-card-meta i{font-style:normal;font-size:10px;color:#768089;white-space:nowrap}.gv-v128-template-card-meta i{padding:4px 7px;border:1px solid var(--gv-line);border-radius:999px;background:#fff}.gv-v128-template-card-meta i.archived{background:#f8f6f6;color:#7f6d6d}.gv-v128-template-drawer{width:min(760px,calc(100vw - 18px))}.gv-v128-template-drawer .gv-drawer-body{overflow:auto}.gv-v128-template-meta{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px}.gv-v128-template-lines-head{margin-top:18px}.gv-v128-template-lines-head>div:last-child{display:flex;gap:7px;flex-wrap:wrap}.gv-v128-template-lines{display:grid;border:1px solid var(--gv-line);border-radius:8px;overflow:hidden;background:#fff}.gv-v128-template-line{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.9fr) auto;gap:10px;align-items:center;padding:12px;border-bottom:1px solid var(--gv-line-soft)}.gv-v128-template-line:last-child{border-bottom:0}.gv-v128-template-line-main{display:grid;gap:7px}.gv-v128-template-line-values{display:grid;grid-template-columns:80px 90px minmax(110px,1fr) auto;gap:7px;align-items:center}.gv-v128-template-line input{width:100%;min-width:0;border:1px solid var(--gv-line);border-radius:6px;background:#fff;padding:9px 10px;color:#3f474e}.gv-v128-template-line-values strong{font-size:11px;color:#485158;white-space:nowrap;text-align:right}.gv-v128-template-line-actions{display:flex;align-items:center;gap:6px}.gv-v128-template-line-actions button{border:1px solid var(--gv-line);background:#fff;border-radius:6px;padding:8px 9px;font-size:9px;color:#69737b;cursor:pointer;white-space:nowrap}.gv-v128-template-line-actions .tpl-remove{width:32px;height:32px;padding:0;font-size:18px}.gv-v128-template-picker-list{display:grid}.gv-v128-template-pick{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;border:0;border-bottom:1px solid var(--gv-line-soft);background:transparent;text-align:left;padding:14px 4px;cursor:pointer}.gv-v128-template-pick:hover{background:#f7f8f8}.gv-v128-template-pick strong{display:block;font-size:11px;color:#424b52}.gv-v128-template-pick small{display:block;margin-top:4px;font-size:9px;color:#858e95;line-height:1.45}.gv-v128-template-pick em{font-style:normal;font-size:9px;color:#758089;white-space:nowrap}.gv-v128-template-pick b{font-size:11px;color:#414950;white-space:nowrap}
@media(max-width:1280px){.gv-v128-template-layout{grid-template-columns:1fr}.gv-v128-template-side{position:static}.gv-v128-template-commandbar{grid-template-columns:1fr 1fr}.gv-v128-template-line{grid-template-columns:1fr}.gv-v128-template-line-actions{justify-content:flex-end}}
@media(max-width:700px){.gv-v128-template-metrics{grid-template-columns:1fr 1fr}.gv-v128-template-commandbar{grid-template-columns:1fr}.gv-v128-template-card{grid-template-columns:1fr}.gv-v128-template-card-meta{justify-content:flex-start;flex-wrap:wrap}.gv-v128-template-meta{grid-template-columns:1fr}.gv-v128-template-line-values{grid-template-columns:1fr 1fr}.gv-v128-template-line-values strong{grid-column:1/-1;text-align:left}.gv-v128-template-lines-head{align-items:flex-start;flex-direction:column}.gv-v128-template-lines-head>div:last-child{width:100%}.gv-v128-template-lines-head .gv-btn{flex:1;justify-content:center}.gv-v128-template-pick{grid-template-columns:1fr}.gv-v128-template-pick em,.gv-v128-template-pick b{white-space:normal}}
html[data-view="standard"] .gv-v128-template-card strong,html[data-view="standard"] .gv-v128-template-card small,html[data-view="standard"] .gv-v128-template-card-meta em,html[data-view="standard"] .gv-v128-template-card-meta i,html[data-view="standard"] .gv-v128-template-line-values strong,html[data-view="standard"] .gv-v128-template-line-actions button,html[data-view="standard"] .gv-v128-template-pick strong,html[data-view="standard"] .gv-v128-template-pick small,html[data-view="standard"] .gv-v128-template-pick em,html[data-view="standard"] .gv-v128-template-pick b{font-size:12px!important;line-height:1.5!important}
html[data-view="comfort"] .gv-v128-template-card strong,html[data-view="comfort"] .gv-v128-template-card small,html[data-view="comfort"] .gv-v128-template-card-meta em,html[data-view="comfort"] .gv-v128-template-card-meta i,html[data-view="comfort"] .gv-v128-template-line-values strong,html[data-view="comfort"] .gv-v128-template-line-actions button,html[data-view="comfort"] .gv-v128-template-pick strong,html[data-view="comfort"] .gv-v128-template-pick small,html[data-view="comfort"] .gv-v128-template-pick em,html[data-view="comfort"] .gv-v128-template-pick b{font-size:14px!important;line-height:1.55!important}
html[data-view="large"] .gv-v128-template-card strong,html[data-view="large"] .gv-v128-template-card small,html[data-view="large"] .gv-v128-template-card-meta em,html[data-view="large"] .gv-v128-template-card-meta i,html[data-view="large"] .gv-v128-template-line-values strong,html[data-view="large"] .gv-v128-template-line-actions button,html[data-view="large"] .gv-v128-template-pick strong,html[data-view="large"] .gv-v128-template-pick small,html[data-view="large"] .gv-v128-template-pick em,html[data-view="large"] .gv-v128-template-pick b{font-size:15.5px!important;line-height:1.55!important}
html[data-view="accessible"] .gv-v128-template-card strong,html[data-view="accessible"] .gv-v128-template-card small,html[data-view="accessible"] .gv-v128-template-card-meta em,html[data-view="accessible"] .gv-v128-template-card-meta i,html[data-view="accessible"] .gv-v128-template-line-values strong,html[data-view="accessible"] .gv-v128-template-line-actions button,html[data-view="accessible"] .gv-v128-template-pick strong,html[data-view="accessible"] .gv-v128-template-pick small,html[data-view="accessible"] .gv-v128-template-pick em,html[data-view="accessible"] .gv-v128-template-pick b{font-size:17px!important;line-height:1.6!important}

/* V1.29 · Quote Review & Approval Evidence */
.gv-v129-review{margin-top:18px;border:1px solid var(--gv-line);border-radius:10px;background:#fbfbfa;padding:16px;display:grid;gap:14px}.gv-v129-review[hidden]{display:none!important}.gv-v129-review-state{font-size:11px;font-weight:700;color:#505a61;border:1px solid var(--gv-line);background:#fff;border-radius:999px;padding:6px 10px;white-space:nowrap}.gv-v129-review-identity{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.7fr);gap:12px}.gv-v129-review-identity>div{border:1px solid var(--gv-line-soft);background:#fff;border-radius:8px;padding:13px 14px;display:grid;gap:5px}.gv-v129-review-identity span{font-size:9px;letter-spacing:.08em;color:#8a9298}.gv-v129-review-identity strong{font-size:12px;color:#414b52}.gv-v129-review-identity small{font-size:10px;line-height:1.5;color:#78828a}.gv-v129-review-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:12px;align-items:start}.gv-v129-review-workflow,.gv-v129-review-history{border:1px solid var(--gv-line-soft);background:#fff;border-radius:8px;padding:14px;display:grid;gap:12px}.gv-v129-review-request{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:end}.gv-v129-review-request[hidden],.gv-v129-review-decision[hidden]{display:none!important}.gv-v129-review-decision{display:grid;gap:9px}.gv-v129-review-decision>div{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.gv-v129-review-decision .gv-field small{font-size:10px;line-height:1.5;color:#818a91}.gv-v129-review-history>div:last-child{display:grid}.gv-v129-review-event{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:11px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v129-review-event:last-child{border-bottom:0}.gv-v129-review-event>span{font-size:10px;font-weight:700;color:#5d676e;border:1px solid var(--gv-line);border-radius:999px;padding:4px 7px;white-space:nowrap}.gv-v129-review-event strong{display:block;font-size:11px;color:#424b52}.gv-v129-review-event small{display:block;margin-top:3px;font-size:9px;color:#899198}.gv-v129-review-event p{margin:6px 0 0;font-size:10px;line-height:1.5;color:#667077;white-space:pre-wrap;overflow-wrap:anywhere}.gv-v129-review-event code{font-size:9px;color:#879097;background:#f5f6f6;border-radius:5px;padding:4px 6px}.gv-v129-review-policy{border-top:1px solid var(--gv-line-soft);padding-top:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center}.gv-v129-review-policy label{font-size:11px;font-weight:650;color:#4e585f;display:flex;gap:8px;align-items:center}.gv-v129-review-policy small{grid-column:1/-1;font-size:10px;line-height:1.5;color:#818a91}.gv-v129-review-policy input{width:16px;height:16px}.gv-v125-actions .gv-btn:disabled{opacity:.48;cursor:not-allowed;filter:saturate(.5)}
@media(max-width:1366px){.gv-v129-review-identity,.gv-v129-review-grid{grid-template-columns:1fr}.gv-v129-review-request{grid-template-columns:1fr 1fr}.gv-v129-review-request .gv-field{grid-column:1/-1}}
@media(max-width:700px){.gv-v129-review{padding:12px}.gv-v129-review-request{grid-template-columns:1fr}.gv-v129-review-request .gv-field{grid-column:auto}.gv-v129-review-request .gv-btn{width:100%;justify-content:center}.gv-v129-review-policy{grid-template-columns:1fr}.gv-v129-review-policy .gv-btn{width:100%;justify-content:center}.gv-v129-review-event{grid-template-columns:1fr}.gv-v129-review-event code{justify-self:start}}
html[data-view="standard"] .gv-v129-review-state,html[data-view="standard"] .gv-v129-review-identity span,html[data-view="standard"] .gv-v129-review-identity strong,html[data-view="standard"] .gv-v129-review-identity small,html[data-view="standard"] .gv-v129-review-decision .gv-field small,html[data-view="standard"] .gv-v129-review-event>span,html[data-view="standard"] .gv-v129-review-event strong,html[data-view="standard"] .gv-v129-review-event small,html[data-view="standard"] .gv-v129-review-event p,html[data-view="standard"] .gv-v129-review-event code,html[data-view="standard"] .gv-v129-review-policy label,html[data-view="standard"] .gv-v129-review-policy small{font-size:12px!important;line-height:1.5!important}
html[data-view="comfort"] .gv-v129-review-state,html[data-view="comfort"] .gv-v129-review-identity span,html[data-view="comfort"] .gv-v129-review-identity strong,html[data-view="comfort"] .gv-v129-review-identity small,html[data-view="comfort"] .gv-v129-review-decision .gv-field small,html[data-view="comfort"] .gv-v129-review-event>span,html[data-view="comfort"] .gv-v129-review-event strong,html[data-view="comfort"] .gv-v129-review-event small,html[data-view="comfort"] .gv-v129-review-event p,html[data-view="comfort"] .gv-v129-review-event code,html[data-view="comfort"] .gv-v129-review-policy label,html[data-view="comfort"] .gv-v129-review-policy small{font-size:14px!important;line-height:1.55!important}
html[data-view="large"] .gv-v129-review-state,html[data-view="large"] .gv-v129-review-identity span,html[data-view="large"] .gv-v129-review-identity strong,html[data-view="large"] .gv-v129-review-identity small,html[data-view="large"] .gv-v129-review-decision .gv-field small,html[data-view="large"] .gv-v129-review-event>span,html[data-view="large"] .gv-v129-review-event strong,html[data-view="large"] .gv-v129-review-event small,html[data-view="large"] .gv-v129-review-event p,html[data-view="large"] .gv-v129-review-event code,html[data-view="large"] .gv-v129-review-policy label,html[data-view="large"] .gv-v129-review-policy small{font-size:15.5px!important;line-height:1.55!important}
html[data-view="accessible"] .gv-v129-review-state,html[data-view="accessible"] .gv-v129-review-identity span,html[data-view="accessible"] .gv-v129-review-identity strong,html[data-view="accessible"] .gv-v129-review-identity small,html[data-view="accessible"] .gv-v129-review-decision .gv-field small,html[data-view="accessible"] .gv-v129-review-event>span,html[data-view="accessible"] .gv-v129-review-event strong,html[data-view="accessible"] .gv-v129-review-event small,html[data-view="accessible"] .gv-v129-review-event p,html[data-view="accessible"] .gv-v129-review-event code,html[data-view="accessible"] .gv-v129-review-policy label,html[data-view="accessible"] .gv-v129-review-policy small{font-size:17px!important;line-height:1.6!important}

/* V1.30 · Quote Follow-up & Expiry Operations */
.gv-v130-followup{margin-top:18px;border:1px solid var(--gv-line);border-radius:10px;background:#fbfbfa;padding:16px;display:grid;gap:14px}.gv-v130-followup[hidden]{display:none!important}.gv-v130-followup-state{font-size:11px;font-weight:700;color:#505a61;border:1px solid var(--gv-line);background:#fff;border-radius:999px;padding:6px 10px;white-space:nowrap}.gv-v130-followup-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gv-v130-followup-summary>div{border:1px solid var(--gv-line-soft);background:#fff;border-radius:8px;padding:13px 14px;display:grid;gap:5px}.gv-v130-followup-summary span{font-size:9px;letter-spacing:.08em;color:#8a9298}.gv-v130-followup-summary strong{font-size:12px;color:#414b52}.gv-v130-followup-summary small{font-size:10px;line-height:1.5;color:#78828a}.gv-v130-followup-form{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(220px,.8fr) minmax(0,1.5fr);gap:12px;align-items:start}.gv-v130-followup-note{grid-row:span 2}.gv-v130-followup-note small{font-size:10px;line-height:1.5;color:#818a91}.gv-v130-followup-actions{grid-column:1/-1;display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.gv-v130-followup-form .gv-field>span{font-size:11px;font-weight:650;color:#56616a}.gv-v130-followup-form input,.gv-v130-followup-form select,.gv-v130-followup-form textarea{width:100%;min-height:42px;border:1px solid var(--gv-line);border-radius:7px;background:#fff;padding:9px 11px;font:inherit;color:#414950}.gv-v130-followup-form textarea{resize:vertical;line-height:1.55}.gv-v130-followup-form :disabled{background:#f2f4f4;color:#879097}.gv-v130-followup-board{margin-top:16px}.gv-v130-dashboard-summary{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--gv-line-soft)}.gv-v130-dashboard-summary>div{padding:14px 18px;border-right:1px solid var(--gv-line-soft);display:grid;gap:4px}.gv-v130-dashboard-summary>div:last-child{border-right:0}.gv-v130-dashboard-summary span{font-size:10px;letter-spacing:.08em;color:#899198}.gv-v130-dashboard-summary strong{font-size:22px}.gv-v130-dashboard-summary small{font-size:10px;color:#7f8990}.gv-v130-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}.gv-v130-dashboard-grid>div{padding:14px 18px}.gv-v130-dashboard-grid>div:first-child{border-right:1px solid var(--gv-line-soft)}.gv-v130-dashboard-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--gv-line-soft);text-decoration:none;color:inherit}.gv-v130-dashboard-row:last-child{border-bottom:0}.gv-v130-dashboard-row strong{display:block;font-size:11px}.gv-v130-dashboard-row small{display:block;margin-top:3px;font-size:10px;color:#7e878f}.gv-v130-dashboard-row>span{font-size:10px;color:#69737a;white-space:nowrap}.gv-v130-dashboard-row em{font-size:10px;font-style:normal;border:1px solid var(--gv-line);border-radius:999px;padding:4px 7px;color:#5f696f;white-space:nowrap}.gv-v130-dashboard-foot{margin:0;padding:11px 18px;border-top:1px solid var(--gv-line-soft);font-size:10px;line-height:1.55;color:#7f8990}
@media(max-width:1366px){.gv-v130-followup-summary,.gv-v130-dashboard-grid{grid-template-columns:1fr}.gv-v130-followup-form{grid-template-columns:1fr 1fr}.gv-v130-followup-note{grid-column:1/-1;grid-row:auto}.gv-v130-dashboard-grid>div:first-child{border-right:0;border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:700px){.gv-v130-followup{padding:12px}.gv-v130-followup-form,.gv-v130-dashboard-summary{grid-template-columns:1fr}.gv-v130-followup-note{grid-column:auto}.gv-v130-followup-actions{justify-content:stretch}.gv-v130-followup-actions .gv-btn{width:100%;justify-content:center}.gv-v130-dashboard-row{grid-template-columns:1fr}.gv-v130-dashboard-row>span,.gv-v130-dashboard-row em{justify-self:start}.gv-v130-dashboard-summary>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v130-dashboard-summary>div:last-child{border-bottom:0}}
html[data-view="standard"] .gv-v130-followup-state,html[data-view="standard"] .gv-v130-followup-summary span,html[data-view="standard"] .gv-v130-followup-summary strong,html[data-view="standard"] .gv-v130-followup-summary small,html[data-view="standard"] .gv-v130-followup-form .gv-field>span,html[data-view="standard"] .gv-v130-followup-note small,html[data-view="standard"] .gv-v130-dashboard-summary span,html[data-view="standard"] .gv-v130-dashboard-summary small,html[data-view="standard"] .gv-v130-dashboard-row strong,html[data-view="standard"] .gv-v130-dashboard-row small,html[data-view="standard"] .gv-v130-dashboard-row>span,html[data-view="standard"] .gv-v130-dashboard-row em,html[data-view="standard"] .gv-v130-dashboard-foot{font-size:12px!important;line-height:1.5!important}
html[data-view="comfort"] .gv-v130-followup-state,html[data-view="comfort"] .gv-v130-followup-summary span,html[data-view="comfort"] .gv-v130-followup-summary strong,html[data-view="comfort"] .gv-v130-followup-summary small,html[data-view="comfort"] .gv-v130-followup-form .gv-field>span,html[data-view="comfort"] .gv-v130-followup-note small,html[data-view="comfort"] .gv-v130-dashboard-summary span,html[data-view="comfort"] .gv-v130-dashboard-summary small,html[data-view="comfort"] .gv-v130-dashboard-row strong,html[data-view="comfort"] .gv-v130-dashboard-row small,html[data-view="comfort"] .gv-v130-dashboard-row>span,html[data-view="comfort"] .gv-v130-dashboard-row em,html[data-view="comfort"] .gv-v130-dashboard-foot{font-size:14px!important;line-height:1.55!important}
html[data-view="large"] .gv-v130-followup-state,html[data-view="large"] .gv-v130-followup-summary span,html[data-view="large"] .gv-v130-followup-summary strong,html[data-view="large"] .gv-v130-followup-summary small,html[data-view="large"] .gv-v130-followup-form .gv-field>span,html[data-view="large"] .gv-v130-followup-note small,html[data-view="large"] .gv-v130-dashboard-summary span,html[data-view="large"] .gv-v130-dashboard-summary small,html[data-view="large"] .gv-v130-dashboard-row strong,html[data-view="large"] .gv-v130-dashboard-row small,html[data-view="large"] .gv-v130-dashboard-row>span,html[data-view="large"] .gv-v130-dashboard-row em,html[data-view="large"] .gv-v130-dashboard-foot{font-size:15.5px!important;line-height:1.55!important}
html[data-view="accessible"] .gv-v130-followup-state,html[data-view="accessible"] .gv-v130-followup-summary span,html[data-view="accessible"] .gv-v130-followup-summary strong,html[data-view="accessible"] .gv-v130-followup-summary small,html[data-view="accessible"] .gv-v130-followup-form .gv-field>span,html[data-view="accessible"] .gv-v130-followup-note small,html[data-view="accessible"] .gv-v130-dashboard-summary span,html[data-view="accessible"] .gv-v130-dashboard-summary small,html[data-view="accessible"] .gv-v130-dashboard-row strong,html[data-view="accessible"] .gv-v130-dashboard-row small,html[data-view="accessible"] .gv-v130-dashboard-row>span,html[data-view="accessible"] .gv-v130-dashboard-row em,html[data-view="accessible"] .gv-v130-dashboard-foot{font-size:17px!important;line-height:1.6!important}

/* V1.31 · Quote Follow-up Reminder & Digest */
.gv-v131-hero{margin-bottom:18px}.gv-v131-context{margin-bottom:16px}.gv-v131-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.gv-v131-kpis>div{background:var(--gv-surface,#fff);border:1px solid var(--gv-border,#e4e7e9);border-radius:12px;padding:15px 17px;display:grid;gap:4px}.gv-v131-kpis span,.gv-v131-kpis small{color:var(--gv-muted,#7a838b);font-size:12px}.gv-v131-kpis strong{font-size:27px;font-weight:650;letter-spacing:-.03em}.gv-v131-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.8fr);gap:16px;align-items:start}.gv-v131-side{display:grid;gap:16px}.gv-v131-digest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:2px 0 16px}.gv-v131-list{display:grid;gap:7px}.gv-v131-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--gv-border,#e5e8ea);border-radius:10px;color:inherit;text-decoration:none;background:rgba(255,255,255,.38)}.gv-v131-row:hover{background:rgba(255,255,255,.72)}.gv-v131-row>div{min-width:0;display:grid;gap:3px}.gv-v131-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.gv-v131-row small,.gv-v131-row span,.gv-v131-row em{font-size:12px;color:var(--gv-muted,#7a838b);font-style:normal}.gv-v131-row em{border:1px solid var(--gv-border,#e5e8ea);border-radius:999px;padding:4px 7px;white-space:nowrap}.gv-v131-expiry{border-top:1px solid var(--gv-border,#e5e8ea);padding-top:16px}.gv-v131-foot{margin:14px 0 0;color:var(--gv-muted,#737c84);font-size:12px;line-height:1.65}.gv-v131-recent-list{display:grid;gap:7px}.gv-v131-recent-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 9px;padding:10px 0;border-bottom:1px solid var(--gv-border,#e8eaec);color:inherit;text-decoration:none}.gv-v131-recent-row:last-child{border-bottom:0}.gv-v131-recent-row span{grid-row:1/3;align-self:center;font-size:11px;border-radius:999px;padding:4px 7px;background:rgba(30,37,43,.06)}.gv-v131-recent-row strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gv-v131-recent-row small{font-size:12px;color:var(--gv-muted,#7a838b)}.gv-v131-rule-readonly{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px}.gv-v131-rule-readonly>div{border:1px solid var(--gv-border,#e5e8ea);border-radius:9px;padding:9px 10px;display:grid;gap:3px}.gv-v131-rule-readonly span{font-size:11px;color:var(--gv-muted,#7a838b)}.gv-v131-rule-readonly strong{font-size:13px}.gv-v131-rule form{display:grid;gap:12px;border-top:1px solid var(--gv-border,#e5e8ea);padding-top:14px}.gv-v131-check,.gv-v131-rule-checks label{display:flex;align-items:center;gap:8px;font-size:13px}.gv-v131-rule-checks{display:grid;grid-template-columns:1fr;gap:7px}.gv-v131-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.gv-v131-rule-note{color:var(--gv-muted,#7a838b);font-size:12px;line-height:1.6}
@media(max-width:1366px){.gv-v131-layout{grid-template-columns:1fr}.gv-v131-side{grid-template-columns:1fr 1fr}.gv-v131-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.gv-v131-kpis{grid-template-columns:1fr 1fr}.gv-v131-digest-grid,.gv-v131-side{grid-template-columns:1fr}.gv-v131-row{grid-template-columns:minmax(0,1fr) auto}.gv-v131-row em{grid-column:2;grid-row:1/3}.gv-v131-row>span{grid-column:1}.gv-v131-rule-readonly{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.gv-v131-kpis{grid-template-columns:1fr 1fr}.gv-v131-kpis>div{padding:12px}.gv-v131-kpis strong{font-size:23px}.gv-v131-time-grid,.gv-v131-rule-readonly{grid-template-columns:1fr}.gv-v131-row{padding:10px}.gv-v131-row strong{white-space:normal}}
html[data-view="standard"] .gv-v131-row small,html[data-view="standard"] .gv-v131-row span,html[data-view="standard"] .gv-v131-row em,html[data-view="standard"] .gv-v131-foot,html[data-view="standard"] .gv-v131-rule-note,html[data-view="standard"] .gv-v131-recent-row small{font-size:12px!important}
html[data-view="comfort"] .gv-v131-row small,html[data-view="comfort"] .gv-v131-row span,html[data-view="comfort"] .gv-v131-row em,html[data-view="comfort"] .gv-v131-foot,html[data-view="comfort"] .gv-v131-rule-note,html[data-view="comfort"] .gv-v131-recent-row small{font-size:14px!important}
html[data-view="large"] .gv-v131-row small,html[data-view="large"] .gv-v131-row span,html[data-view="large"] .gv-v131-row em,html[data-view="large"] .gv-v131-foot,html[data-view="large"] .gv-v131-rule-note,html[data-view="large"] .gv-v131-recent-row small{font-size:15.5px!important}
html[data-view="accessible"] .gv-v131-row small,html[data-view="accessible"] .gv-v131-row span,html[data-view="accessible"] .gv-v131-row em,html[data-view="accessible"] .gv-v131-foot,html[data-view="accessible"] .gv-v131-rule-note,html[data-view="accessible"] .gv-v131-recent-row small{font-size:17px!important}

.gv-v131-dashboard-reminder{margin-top:16px}.gv-v131-dashboard-reminder-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gv-v131-dashboard-reminder-grid>div{border:1px solid var(--gv-border,#e5e8ea);border-radius:10px;padding:12px;display:grid;gap:3px}.gv-v131-dashboard-reminder-grid span{font-size:11px;color:var(--gv-muted,#7a838b)}.gv-v131-dashboard-reminder-grid strong{font-size:22px}.gv-v131-dashboard-reminder-foot{margin:12px 0 0;color:var(--gv-muted,#7a838b);font-size:12px}@media(max-width:760px){.gv-v131-dashboard-reminder-grid{grid-template-columns:1fr 1fr}}
html[data-view="comfort"] .gv-v131-dashboard-reminder-foot{font-size:14px!important}html[data-view="large"] .gv-v131-dashboard-reminder-foot{font-size:15.5px!important}html[data-view="accessible"] .gv-v131-dashboard-reminder-foot{font-size:17px!important}

/* V1.31 · comprehensive reminder readability floor */
html[data-view="standard"] :is(.gv-v131-kpis span,.gv-v131-kpis small,.gv-v131-recent-row span,.gv-v131-recent-row small,.gv-v131-rule-readonly span,.gv-v131-rule-readonly strong,.gv-v131-check,.gv-v131-rule-checks label,.gv-v131-rule-note){font-size:12px!important;line-height:1.5!important}
html[data-view="comfort"] :is(.gv-v131-kpis span,.gv-v131-kpis small,.gv-v131-recent-row span,.gv-v131-recent-row small,.gv-v131-rule-readonly span,.gv-v131-rule-readonly strong,.gv-v131-check,.gv-v131-rule-checks label,.gv-v131-rule-note){font-size:14px!important;line-height:1.55!important}
html[data-view="large"] :is(.gv-v131-kpis span,.gv-v131-kpis small,.gv-v131-recent-row span,.gv-v131-recent-row small,.gv-v131-rule-readonly span,.gv-v131-rule-readonly strong,.gv-v131-check,.gv-v131-rule-checks label,.gv-v131-rule-note){font-size:15.5px!important;line-height:1.6!important}
html[data-view="accessible"] :is(.gv-v131-kpis span,.gv-v131-kpis small,.gv-v131-recent-row span,.gv-v131-recent-row small,.gv-v131-rule-readonly span,.gv-v131-rule-readonly strong,.gv-v131-check,.gv-v131-rule-checks label,.gv-v131-rule-note){font-size:17px!important;line-height:1.65!important}

/* V1.32 Quote Operations Board */
.gv-v132-hero{align-items:flex-end}.gv-v132-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0}.gv-v132-kpis>div{background:var(--gv-panel,#fff);border:1px solid var(--gv-border,#e2e5e7);border-radius:10px;padding:14px 16px;display:grid;gap:3px}.gv-v132-kpis span{font-size:11px;letter-spacing:.08em;color:var(--gv-muted,#7a838b)}.gv-v132-kpis strong{font-size:24px;font-weight:650}.gv-v132-kpis small{font-size:12px;color:var(--gv-muted,#7a838b)}.gv-v132-controls{padding:14px;margin-bottom:12px}.gv-v132-preset-row{display:flex;gap:7px;overflow:auto;padding-bottom:2px}.gv-v132-preset-row button{white-space:nowrap;border:1px solid var(--gv-border,#dfe3e6);background:#fff;border-radius:999px;padding:8px 11px;color:#5e6871;font:inherit;font-size:12px;cursor:pointer}.gv-v132-preset-row button.active{background:#30363b;color:#fff;border-color:#30363b}.gv-v132-filter-grid{display:grid;grid-template-columns:1.4fr repeat(5,minmax(130px,1fr));gap:10px;margin-top:12px}.gv-v132-date-row{display:flex;gap:10px;align-items:end;margin-top:10px;flex-wrap:wrap}.gv-v132-date-row .gv-field{width:170px}.gv-v132-sync{margin-left:auto;align-self:center;font-size:12px;color:#78828a}.gv-v132-layout{display:grid;grid-template-columns:minmax(220px,260px) minmax(0,1fr);gap:12px}.gv-v132-saved-panel,.gv-v132-board-panel{padding:14px}.gv-v132-saved-list{display:grid;gap:7px;margin-bottom:10px}.gv-v132-saved-row{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid #e3e6e8;border-radius:8px;background:#fff;overflow:hidden}.gv-v132-saved-row.default{border-color:#b9c0c6}.gv-v132-saved-row>button{border:0;background:transparent;text-align:left;padding:10px;display:grid;gap:2px;cursor:pointer}.gv-v132-saved-row strong{font-size:13px}.gv-v132-saved-row small{font-size:12px;color:#7c858c}.gv-v132-saved-row>div{display:flex;padding-right:5px}.gv-v132-saved-row>div button{border:0;background:transparent;width:30px;height:30px;cursor:pointer;color:#7a838b}.gv-v132-safe-note,.gv-v132-modal-note{display:block;font-size:12px;line-height:1.55;color:#7b858d;margin-top:9px}.gv-v132-board{display:grid;gap:9px}.gv-v132-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;border:1px solid #e1e5e8;border-radius:10px;padding:12px;background:#fff}.gv-v132-row.priority-critical{border-left:3px solid #8c4a4a}.gv-v132-row.priority-high{border-left:3px solid #a57a49}.gv-v132-row.priority-attention{border-left:3px solid #788b78}.gv-v132-priority{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #eceeef}.gv-v132-priority strong{font-size:20px}.gv-v132-priority span{font-size:9px;letter-spacing:.08em;color:#8b9399}.gv-v132-title{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.gv-v132-title>div{display:grid;gap:3px}.gv-v132-title a{font-size:15px;font-weight:650;color:#30363b;text-decoration:none}.gv-v132-title small{font-size:12px;color:#747e86}.gv-v132-status{white-space:nowrap;font-size:11px;color:#69737b}.gv-v132-tags{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0}.gv-v132-tags em{font-style:normal;font-size:10.5px;padding:4px 7px;border-radius:999px;background:#f2f3f4;color:#59636b}.gv-v132-tags em.muted{color:#8a9298}.gv-v132-facts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.gv-v132-facts>div{display:grid;gap:2px;min-width:0}.gv-v132-facts span{font-size:10.5px;color:#8a9298}.gv-v132-facts strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-v132-facts small{font-size:10.5px;color:#818a91;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-v132-links{display:flex;flex-direction:column;justify-content:center;gap:5px}.gv-v132-links a{font-size:11px;color:#5b6670;text-decoration:none;white-space:nowrap}.gv-v132-view-modal{width:min(460px,calc(100vw - 32px))}.gv-v132-view-modal .gv-modal-body{padding:18px}.gv-v132-view-modal .gv-modal-actions{padding:0 18px 18px;display:flex;justify-content:flex-end;gap:8px}
html[data-view="comfort"] .gv-v132-kpis small,html[data-view="comfort"] .gv-v132-preset-row button,html[data-view="comfort"] .gv-v132-sync,html[data-view="comfort"] .gv-v132-saved-row small,html[data-view="comfort"] .gv-v132-safe-note,html[data-view="comfort"] .gv-v132-title small,html[data-view="comfort"] .gv-v132-status,html[data-view="comfort"] .gv-v132-tags em,html[data-view="comfort"] .gv-v132-facts span,html[data-view="comfort"] .gv-v132-facts strong,html[data-view="comfort"] .gv-v132-facts small,html[data-view="comfort"] .gv-v132-links a{font-size:max(14px,1em)}
html[data-view="large"] .gv-v132-kpis small,html[data-view="large"] .gv-v132-preset-row button,html[data-view="large"] .gv-v132-sync,html[data-view="large"] .gv-v132-saved-row small,html[data-view="large"] .gv-v132-safe-note,html[data-view="large"] .gv-v132-title small,html[data-view="large"] .gv-v132-status,html[data-view="large"] .gv-v132-tags em,html[data-view="large"] .gv-v132-facts span,html[data-view="large"] .gv-v132-facts strong,html[data-view="large"] .gv-v132-facts small,html[data-view="large"] .gv-v132-links a{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v132-kpis small,html[data-view="accessible"] .gv-v132-preset-row button,html[data-view="accessible"] .gv-v132-sync,html[data-view="accessible"] .gv-v132-saved-row small,html[data-view="accessible"] .gv-v132-safe-note,html[data-view="accessible"] .gv-v132-title small,html[data-view="accessible"] .gv-v132-status,html[data-view="accessible"] .gv-v132-tags em,html[data-view="accessible"] .gv-v132-facts span,html[data-view="accessible"] .gv-v132-facts strong,html[data-view="accessible"] .gv-v132-facts small,html[data-view="accessible"] .gv-v132-links a{font-size:max(17px,1em)}
@media(max-width:1500px){.gv-v132-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gv-v132-facts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.gv-v132-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v132-layout{grid-template-columns:1fr}.gv-v132-saved-panel{order:2}.gv-v132-board-panel{order:1}.gv-v132-row{grid-template-columns:48px minmax(0,1fr)}.gv-v132-links{grid-column:2;flex-direction:row;flex-wrap:wrap}}
@media(max-width:680px){.gv-v132-kpis{grid-template-columns:1fr 1fr}.gv-v132-filter-grid{grid-template-columns:1fr}.gv-v132-date-row .gv-field{width:100%}.gv-v132-sync{margin-left:0;width:100%}.gv-v132-row{grid-template-columns:1fr}.gv-v132-priority{border-right:0;border-bottom:1px solid #eceeef;flex-direction:row;justify-content:flex-start;gap:7px;padding-bottom:7px}.gv-v132-links{grid-column:1}.gv-v132-title{display:grid}.gv-v132-facts{grid-template-columns:1fr 1fr}.gv-v132-preset-row{margin-right:-8px}}

/* V1.33 · Quote Operations SLA & Aging Insights */
.gv-v133-hero{align-items:flex-end}.gv-v133-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0}.gv-v133-kpis>div{background:var(--gv-panel,#fff);border:1px solid var(--gv-border,#e2e5e7);border-radius:10px;padding:14px 16px;display:grid;gap:3px}.gv-v133-kpis span{font-size:11px;letter-spacing:.06em;color:var(--gv-muted,#7a838b)}.gv-v133-kpis strong{font-size:22px;font-weight:650}.gv-v133-kpis small{font-size:12px;color:var(--gv-muted,#7a838b)}
.gv-v133-lanes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.gv-v133-lane-card{appearance:none;text-align:left;border:1px solid #e1e5e8;border-radius:10px;background:#fff;padding:13px 14px;display:grid;gap:6px;cursor:pointer;color:inherit}.gv-v133-lane-card:hover,.gv-v133-lane-card.active{border-color:#aeb7be;background:#fafbfb}.gv-v133-lane-card>span{font-size:12px;color:#717b83}.gv-v133-lane-card>strong{font-size:24px;font-weight:650}.gv-v133-lane-card>div{display:flex;gap:10px;flex-wrap:wrap}.gv-v133-lane-card small{font-size:11px;color:#7f888f}.gv-v133-lane-card em{font-style:normal;font-size:11px;color:#845e48}
.gv-v133-controls{padding:14px;margin-bottom:12px}.gv-v133-filter-grid{display:grid;grid-template-columns:1.45fr repeat(5,minmax(130px,1fr));gap:10px}.gv-v133-filter-secondary{margin-top:10px}.gv-v133-control-actions{display:flex;align-items:end;gap:10px;min-width:0}.gv-v133-control-actions span{font-size:12px;color:#7a848c;align-self:center}.gv-v133-safe-note{display:block;font-size:12px;line-height:1.55;color:#78828a;margin-top:10px}.gv-v133-layout{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:12px}.gv-v133-distribution,.gv-v133-board-panel{padding:14px}.gv-v133-distribution #gvAgingDistribution{display:grid;gap:10px}.gv-v133-dist-row{display:grid;grid-template-columns:78px minmax(0,1fr) 28px;gap:8px;align-items:center}.gv-v133-dist-row span,.gv-v133-dist-row strong{font-size:11px}.gv-v133-dist-row strong{text-align:right}.gv-v133-dist-row>div{height:7px;background:#eef0f1;border-radius:999px;overflow:hidden}.gv-v133-dist-row i{display:block;height:100%;background:#747d84;border-radius:999px;min-width:2px}.gv-v133-board{display:grid;gap:9px}.gv-v133-row{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:12px;border:1px solid #e0e4e7;border-radius:10px;background:#fff;padding:12px}.gv-v133-row.sla-severe{border-left:3px solid #8d4d4d}.gv-v133-row.sla-breached{border-left:3px solid #a5754d}.gv-v133-row.sla-warning{border-left:3px solid #9a8a60}.gv-v133-age{display:flex;flex-direction:column;justify-content:center;border-right:1px solid #eceeef}.gv-v133-age strong{font-size:18px}.gv-v133-age span{font-size:10.5px;color:#808990}.gv-v133-main{min-width:0}.gv-v133-title{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.gv-v133-title>div:first-child{display:grid;gap:3px;min-width:0}.gv-v133-title a{font-size:15px;font-weight:650;color:#30363b;text-decoration:none}.gv-v133-title small{font-size:12px;color:#758088;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-v133-title>div:last-child{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.gv-v133-lane,.gv-v133-sla{font-size:10.5px;padding:4px 7px;border-radius:999px;background:#f1f3f4;color:#606a72;white-space:nowrap}.gv-v133-sla.severe{background:#f4e9e9;color:#824c4c}.gv-v133-sla.breached{background:#f3ece5;color:#8d623e}.gv-v133-sla.warning{background:#f3f0e7;color:#7c714d}.gv-v133-facts{display:grid;grid-template-columns:1.4fr .8fr .8fr .8fr;gap:10px;margin-top:10px}.gv-v133-facts>div{display:grid;gap:2px;min-width:0}.gv-v133-facts span{font-size:10.5px;color:#8a9298}.gv-v133-facts strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-v133-facts small{font-size:10.5px;color:#818a91;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-v133-flag{display:inline-flex;margin-top:8px;font-style:normal;font-size:10.5px;padding:4px 7px;border-radius:999px;background:#f4ece7;color:#8a6248}.gv-v133-links{display:flex;flex-direction:column;justify-content:center;gap:5px}.gv-v133-links a{font-size:11px;color:#5b6670;text-decoration:none;white-space:nowrap}
html[data-view="standard"] .gv-v133-kpis small,html[data-view="standard"] .gv-v133-lane-card span,html[data-view="standard"] .gv-v133-lane-card small,html[data-view="standard"] .gv-v133-lane-card em,html[data-view="standard"] .gv-v133-control-actions span,html[data-view="standard"] .gv-v133-safe-note,html[data-view="standard"] .gv-v133-dist-row span,html[data-view="standard"] .gv-v133-dist-row strong,html[data-view="standard"] .gv-v133-age span,html[data-view="standard"] .gv-v133-title small,html[data-view="standard"] .gv-v133-lane,html[data-view="standard"] .gv-v133-sla,html[data-view="standard"] .gv-v133-facts span,html[data-view="standard"] .gv-v133-facts strong,html[data-view="standard"] .gv-v133-facts small,html[data-view="standard"] .gv-v133-flag,html[data-view="standard"] .gv-v133-links a{font-size:max(12px,1em)}
html[data-view="comfort"] .gv-v133-kpis small,html[data-view="comfort"] .gv-v133-lane-card span,html[data-view="comfort"] .gv-v133-lane-card small,html[data-view="comfort"] .gv-v133-lane-card em,html[data-view="comfort"] .gv-v133-control-actions span,html[data-view="comfort"] .gv-v133-safe-note,html[data-view="comfort"] .gv-v133-dist-row span,html[data-view="comfort"] .gv-v133-dist-row strong,html[data-view="comfort"] .gv-v133-age span,html[data-view="comfort"] .gv-v133-title small,html[data-view="comfort"] .gv-v133-lane,html[data-view="comfort"] .gv-v133-sla,html[data-view="comfort"] .gv-v133-facts span,html[data-view="comfort"] .gv-v133-facts strong,html[data-view="comfort"] .gv-v133-facts small,html[data-view="comfort"] .gv-v133-flag,html[data-view="comfort"] .gv-v133-links a{font-size:max(14px,1em)}
html[data-view="large"] .gv-v133-kpis small,html[data-view="large"] .gv-v133-lane-card span,html[data-view="large"] .gv-v133-lane-card small,html[data-view="large"] .gv-v133-lane-card em,html[data-view="large"] .gv-v133-control-actions span,html[data-view="large"] .gv-v133-safe-note,html[data-view="large"] .gv-v133-dist-row span,html[data-view="large"] .gv-v133-dist-row strong,html[data-view="large"] .gv-v133-age span,html[data-view="large"] .gv-v133-title small,html[data-view="large"] .gv-v133-lane,html[data-view="large"] .gv-v133-sla,html[data-view="large"] .gv-v133-facts span,html[data-view="large"] .gv-v133-facts strong,html[data-view="large"] .gv-v133-facts small,html[data-view="large"] .gv-v133-flag,html[data-view="large"] .gv-v133-links a{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v133-kpis small,html[data-view="accessible"] .gv-v133-lane-card span,html[data-view="accessible"] .gv-v133-lane-card small,html[data-view="accessible"] .gv-v133-lane-card em,html[data-view="accessible"] .gv-v133-control-actions span,html[data-view="accessible"] .gv-v133-safe-note,html[data-view="accessible"] .gv-v133-dist-row span,html[data-view="accessible"] .gv-v133-dist-row strong,html[data-view="accessible"] .gv-v133-age span,html[data-view="accessible"] .gv-v133-title small,html[data-view="accessible"] .gv-v133-lane,html[data-view="accessible"] .gv-v133-sla,html[data-view="accessible"] .gv-v133-facts span,html[data-view="accessible"] .gv-v133-facts strong,html[data-view="accessible"] .gv-v133-facts small,html[data-view="accessible"] .gv-v133-flag,html[data-view="accessible"] .gv-v133-links a{font-size:max(17px,1em)}
@media(max-width:1500px){.gv-v133-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gv-v133-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.gv-v133-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v133-lanes{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v133-layout{grid-template-columns:1fr}.gv-v133-row{grid-template-columns:90px minmax(0,1fr)}.gv-v133-links{grid-column:2;flex-direction:row;flex-wrap:wrap}}
@media(max-width:680px){.gv-v133-kpis,.gv-v133-lanes{grid-template-columns:1fr 1fr}.gv-v133-filter-grid{grid-template-columns:1fr}.gv-v133-control-actions{align-items:center;flex-wrap:wrap}.gv-v133-row{grid-template-columns:1fr}.gv-v133-age{border-right:0;border-bottom:1px solid #eceeef;flex-direction:row;align-items:center;gap:8px;padding-bottom:7px}.gv-v133-title{display:grid}.gv-v133-title>div:last-child{justify-content:flex-start}.gv-v133-facts{grid-template-columns:1fr}.gv-v133-links{grid-column:1}.gv-v133-distribution{order:2}.gv-v133-board-panel{order:1}}

/* =========================================================
   V1.34 · Quote Weekly Operating Review
   ========================================================= */
.gv-v134-hero{align-items:flex-end}.gv-v134-period{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.gv-v134-period>div{background:var(--gv-panel,#fff);border:1px solid var(--gv-border,#e2e5e7);border-radius:10px;padding:13px 15px;display:grid;gap:4px}.gv-v134-period span{font-size:11px;color:#7c858c;letter-spacing:.04em}.gv-v134-period strong{font-size:14px;font-weight:650}.gv-v134-period small{font-size:11px;color:#8b9298}.gv-v134-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:12px}.gv-v134-kpis>div{background:#fff;border:1px solid #e1e5e8;border-radius:10px;padding:14px 15px;display:grid;gap:3px}.gv-v134-kpis span{font-size:11px;letter-spacing:.05em;color:#788188}.gv-v134-kpis strong{font-size:22px;font-weight:650}.gv-v134-kpis small{font-size:11px;color:#858e95}.gv-v134-controls{padding:14px;margin-bottom:12px}.gv-v134-filter-grid{display:grid;grid-template-columns:1.45fr repeat(7,minmax(120px,1fr));gap:10px}.gv-v134-control-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.gv-v134-control-foot>span,.gv-v134-control-foot>small{font-size:11px;color:#7b858d}.gv-v134-control-foot>small{margin-left:auto;line-height:1.5}.gv-v134-review{display:grid;gap:12px}.gv-v134-lanes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gv-v134-lane{appearance:none;border:1px solid #e0e4e7;background:#fff;border-radius:10px;padding:14px;text-align:left;color:inherit;cursor:pointer}.gv-v134-lane:hover,.gv-v134-lane.active{border-color:#aeb8bf;background:#fafbfb}.gv-v134-lane>div{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.gv-v134-lane>div span{font-size:12px;color:#707a82}.gv-v134-lane>div strong{font-size:24px;font-weight:650}.gv-v134-lane dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px;margin:12px 0 0;padding-top:10px;border-top:1px solid #eef0f1}.gv-v134-lane dl div{display:flex;justify-content:space-between;gap:6px}.gv-v134-lane dt,.gv-v134-lane dd{font-size:10.5px;margin:0}.gv-v134-lane dt{color:#8a9298}.gv-v134-lane dd{font-weight:650;color:#545d64}.gv-v134-grid{display:grid;grid-template-columns:minmax(300px,.42fr) minmax(0,.58fr);gap:12px}.gv-v134-owner-panel,.gv-v134-exception-panel{padding:14px}.gv-v134-owners,.gv-v134-exceptions{display:grid;gap:8px}.gv-v134-owner{appearance:none;width:100%;border:1px solid #e4e7e9;border-radius:9px;background:#fff;color:inherit;padding:11px 12px;text-align:left;cursor:pointer}.gv-v134-owner:hover{border-color:#b9c1c7;background:#fbfbfc}.gv-v134-owner-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.gv-v134-owner-head strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-v134-owner-head span{font-size:10.5px;color:#7b858c;white-space:nowrap}.gv-v134-owner-bar{height:5px;background:#eef0f2;border-radius:99px;overflow:hidden;margin:9px 0}.gv-v134-owner-bar i{display:block;height:100%;background:#727c84;border-radius:99px;min-width:2px}.gv-v134-owner-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.gv-v134-owner-stats span{font-size:10.5px;color:#818a91;white-space:nowrap}.gv-v134-owner-stats b{color:#4f585f}.gv-v134-exception{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:10px;border:1px solid #e2e5e8;border-radius:9px;background:#fff;padding:11px}.gv-v134-exception.risk-severe{border-left:3px solid #8d4d4d}.gv-v134-exception.risk-breached{border-left:3px solid #a5754d}.gv-v134-exception.risk-warning{border-left:3px solid #9a8a60}.gv-v134-ex-age{display:grid;align-content:center;border-right:1px solid #eceeef}.gv-v134-ex-age strong{font-size:16px}.gv-v134-ex-age span{font-size:10.5px;color:#7c858c}.gv-v134-ex-main{min-width:0;display:grid;gap:7px}.gv-v134-ex-main>div{display:grid;gap:2px}.gv-v134-ex-main a{font-size:13px;font-weight:650;color:#30373c;text-decoration:none}.gv-v134-ex-main small{font-size:10.5px;color:#7a848c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-v134-ex-main p{display:flex;gap:8px;flex-wrap:wrap;margin:0}.gv-v134-ex-main p span{font-size:10.5px;color:#6f7981;padding:3px 6px;border-radius:999px;background:#f2f4f5}.gv-v134-ex-links{display:flex;flex-direction:column;justify-content:center;gap:5px}.gv-v134-ex-links a{font-size:10.5px;color:#59656e;text-decoration:none;white-space:nowrap}.gv-v134-method{display:flex;gap:12px;align-items:flex-start;border:1px solid #e1e5e8;background:#fafbfb;border-radius:10px;padding:13px 15px}.gv-v134-method strong{font-size:11px;white-space:nowrap}.gv-v134-method span{font-size:11px;line-height:1.55;color:#79838a}
html[data-view="standard"] .gv-v134-period span,html[data-view="standard"] .gv-v134-period small,html[data-view="standard"] .gv-v134-kpis span,html[data-view="standard"] .gv-v134-kpis small,html[data-view="standard"] .gv-v134-control-foot>span,html[data-view="standard"] .gv-v134-control-foot>small,html[data-view="standard"] .gv-v134-lane>div span,html[data-view="standard"] .gv-v134-lane dt,html[data-view="standard"] .gv-v134-lane dd,html[data-view="standard"] .gv-v134-owner-head span,html[data-view="standard"] .gv-v134-owner-stats span,html[data-view="standard"] .gv-v134-ex-age span,html[data-view="standard"] .gv-v134-ex-main small,html[data-view="standard"] .gv-v134-ex-main p span,html[data-view="standard"] .gv-v134-ex-links a,html[data-view="standard"] .gv-v134-method strong,html[data-view="standard"] .gv-v134-method span{font-size:max(12px,1em)}
html[data-view="comfort"] .gv-v134-period span,html[data-view="comfort"] .gv-v134-period small,html[data-view="comfort"] .gv-v134-kpis span,html[data-view="comfort"] .gv-v134-kpis small,html[data-view="comfort"] .gv-v134-control-foot>span,html[data-view="comfort"] .gv-v134-control-foot>small,html[data-view="comfort"] .gv-v134-lane>div span,html[data-view="comfort"] .gv-v134-lane dt,html[data-view="comfort"] .gv-v134-lane dd,html[data-view="comfort"] .gv-v134-owner-head span,html[data-view="comfort"] .gv-v134-owner-stats span,html[data-view="comfort"] .gv-v134-ex-age span,html[data-view="comfort"] .gv-v134-ex-main small,html[data-view="comfort"] .gv-v134-ex-main p span,html[data-view="comfort"] .gv-v134-ex-links a,html[data-view="comfort"] .gv-v134-method strong,html[data-view="comfort"] .gv-v134-method span{font-size:max(14px,1em)}
html[data-view="large"] .gv-v134-period span,html[data-view="large"] .gv-v134-period small,html[data-view="large"] .gv-v134-kpis span,html[data-view="large"] .gv-v134-kpis small,html[data-view="large"] .gv-v134-control-foot>span,html[data-view="large"] .gv-v134-control-foot>small,html[data-view="large"] .gv-v134-lane>div span,html[data-view="large"] .gv-v134-lane dt,html[data-view="large"] .gv-v134-lane dd,html[data-view="large"] .gv-v134-owner-head span,html[data-view="large"] .gv-v134-owner-stats span,html[data-view="large"] .gv-v134-ex-age span,html[data-view="large"] .gv-v134-ex-main small,html[data-view="large"] .gv-v134-ex-main p span,html[data-view="large"] .gv-v134-ex-links a,html[data-view="large"] .gv-v134-method strong,html[data-view="large"] .gv-v134-method span{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v134-period span,html[data-view="accessible"] .gv-v134-period small,html[data-view="accessible"] .gv-v134-kpis span,html[data-view="accessible"] .gv-v134-kpis small,html[data-view="accessible"] .gv-v134-control-foot>span,html[data-view="accessible"] .gv-v134-control-foot>small,html[data-view="accessible"] .gv-v134-lane>div span,html[data-view="accessible"] .gv-v134-lane dt,html[data-view="accessible"] .gv-v134-lane dd,html[data-view="accessible"] .gv-v134-owner-head span,html[data-view="accessible"] .gv-v134-owner-stats span,html[data-view="accessible"] .gv-v134-ex-age span,html[data-view="accessible"] .gv-v134-ex-main small,html[data-view="accessible"] .gv-v134-ex-main p span,html[data-view="accessible"] .gv-v134-ex-links a,html[data-view="accessible"] .gv-v134-method strong,html[data-view="accessible"] .gv-v134-method span{font-size:max(17px,1em)}
@media(max-width:1600px){.gv-v134-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gv-v134-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.gv-v134-period{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v134-lanes{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v134-grid{grid-template-columns:1fr}.gv-v134-owner-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.gv-v134-period,.gv-v134-kpis,.gv-v134-lanes,.gv-v134-filter-grid{grid-template-columns:1fr}.gv-v134-control-foot>small{margin-left:0;width:100%}.gv-v134-exception{grid-template-columns:1fr}.gv-v134-ex-age{border-right:0;border-bottom:1px solid #eceeef;padding-bottom:7px;display:flex;align-items:center;gap:8px}.gv-v134-ex-links{flex-direction:row;flex-wrap:wrap}.gv-v134-owner-head{align-items:flex-start;flex-direction:column}.gv-v134-owner-head span{white-space:normal}.gv-v134-method{flex-direction:column}}
@media print{body.gv-print-weekly-review *{visibility:hidden!important}body.gv-print-weekly-review #gvWeeklyReviewDocument,body.gv-print-weekly-review #gvWeeklyReviewDocument *,body.gv-print-weekly-review .gv-v134-period,body.gv-print-weekly-review .gv-v134-period *,body.gv-print-weekly-review .gv-v134-kpis,body.gv-print-weekly-review .gv-v134-kpis *{visibility:visible!important}body.gv-print-weekly-review .gv-v134-period,body.gv-print-weekly-review .gv-v134-kpis,body.gv-print-weekly-review #gvWeeklyReviewDocument{position:relative;left:auto;top:auto;width:100%;margin:0 0 8mm}body.gv-print-weekly-review .gv-main{max-width:none!important;width:100%!important;padding:8mm 10mm!important}body.gv-print-weekly-review .gv-v134-grid{grid-template-columns:1fr}body.gv-print-weekly-review .gv-v134-ex-links{display:none!important}body.gv-print-weekly-review .gv-v134-owner,body.gv-print-weekly-review .gv-v134-lane{break-inside:avoid}body.gv-print-weekly-review .gv-v134-exception{break-inside:avoid}}

/* V1.35 · Quote Weekly Snapshot History */
.gv-v135-history-panel{margin-bottom:12px;padding:18px 20px}.gv-v135-history-panel .gv-panel-head{margin-bottom:14px}.gv-v135-history-panel .gv-panel-head>span{font-size:10px;letter-spacing:.04em;color:#68727a;border:1px solid var(--gv-line-soft);border-radius:999px;padding:6px 9px;background:#fafaf9}.gv-v135-deltas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line-soft);border-radius:8px;overflow:hidden;background:#fcfcfb}.gv-v135-deltas>div{padding:13px 15px;border-right:1px solid var(--gv-line-soft)}.gv-v135-deltas>div:last-child{border-right:0}.gv-v135-deltas span,.gv-v135-deltas strong{display:block}.gv-v135-deltas span{font-size:9px;color:#838b92}.gv-v135-deltas strong{margin-top:5px;font-size:18px;color:#424a50}.gv-v135-deltas .better strong{color:#4e6f5a}.gv-v135-deltas .worse strong{color:#8a5c50}.gv-v135-history-note{margin:12px 0;color:#737c84;font-size:10px;line-height:1.65}.gv-v135-history{display:grid;border-top:1px solid var(--gv-line-soft)}.gv-v135-history-row{display:grid;grid-template-columns:minmax(190px,1.3fr) repeat(5,minmax(95px,.7fr));gap:12px;align-items:center;padding:13px 2px;border-bottom:1px solid var(--gv-line-soft)}.gv-v135-history-row>div{min-width:0}.gv-v135-history-row strong,.gv-v135-history-row span,.gv-v135-history-row b,.gv-v135-history-row small{display:block}.gv-v135-history-row strong{font-size:12px;color:#41494f}.gv-v135-history-row span{font-size:8.5px;color:#8a9299}.gv-v135-history-row b{margin-top:4px;font-size:11px;color:#4b5359;font-weight:650}.gv-v135-history-row small{margin-top:3px;font-size:8.5px;color:#858e95;overflow-wrap:anywhere}.gv-v135-history-row>div:first-child small{margin-top:4px}.gv-v135-history-row [data-i18n-skip]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html[data-view="comfort"] .gv-v135-history-panel .gv-panel-head>span,html[data-view="comfort"] .gv-v135-deltas span,html[data-view="comfort"] .gv-v135-history-note,html[data-view="comfort"] .gv-v135-history-row span,html[data-view="comfort"] .gv-v135-history-row small{font-size:max(14px,1em)}
html[data-view="large"] .gv-v135-history-panel .gv-panel-head>span,html[data-view="large"] .gv-v135-deltas span,html[data-view="large"] .gv-v135-history-note,html[data-view="large"] .gv-v135-history-row span,html[data-view="large"] .gv-v135-history-row small{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v135-history-panel .gv-panel-head>span,html[data-view="accessible"] .gv-v135-deltas span,html[data-view="accessible"] .gv-v135-history-note,html[data-view="accessible"] .gv-v135-history-row span,html[data-view="accessible"] .gv-v135-history-row small{font-size:max(17px,1em)}
@media(max-width:1100px){.gv-v135-deltas{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v135-deltas>div:nth-child(2){border-right:0}.gv-v135-deltas>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-v135-history-row{grid-template-columns:minmax(180px,1.25fr) repeat(3,minmax(90px,.75fr))}.gv-v135-history-row>div:nth-child(5),.gv-v135-history-row>div:nth-child(6){grid-column:auto}}
@media(max-width:680px){.gv-v135-history-panel{padding:16px}.gv-v135-deltas{grid-template-columns:1fr}.gv-v135-deltas>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v135-deltas>div:last-child{border-bottom:0}.gv-v135-history-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.gv-v135-history-row>div:first-child{grid-column:1/-1}.gv-v135-history-row [data-i18n-skip]{white-space:normal}.gv-v135-history-panel .gv-panel-head{align-items:flex-start;gap:8px;flex-direction:column}}
@media print{body.gv-print-weekly-review #gvWeeklySnapshotPanel,body.gv-print-weekly-review #gvWeeklySnapshotPanel *{visibility:visible!important}body.gv-print-weekly-review #gvWeeklySnapshotPanel{position:relative;left:auto;top:auto;width:100%;margin:0 0 8mm}body.gv-print-weekly-review .gv-v135-history-row{break-inside:avoid}}


/* V1.36 · Quote Weekly Trend Intelligence */
.gv-v136-trend-panel{margin-bottom:12px;padding:18px 20px}.gv-v136-trend-head{align-items:center}.gv-v136-range{display:flex;gap:5px;padding:3px;border:1px solid var(--gv-line-soft);border-radius:999px;background:#fafaf9}.gv-v136-range button{border:0;background:transparent;color:#737c83;font:inherit;font-size:10px;padding:6px 10px;border-radius:999px;cursor:pointer;white-space:nowrap}.gv-v136-range button.active{background:#353b40;color:#fff}.gv-v136-coverage{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:2px 0 12px}.gv-v136-coverage strong{font-size:11px;color:#4b5359}.gv-v136-coverage span{font-size:9.5px;color:#858d94}.gv-v136-context{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line-soft);border-radius:8px;overflow:hidden;background:#fcfcfb;margin-bottom:14px}.gv-v136-context>div{padding:12px 14px;border-right:1px solid var(--gv-line-soft)}.gv-v136-context>div:last-child{border-right:0}.gv-v136-context span,.gv-v136-context small,.gv-v136-context strong{display:block}.gv-v136-context span{font-size:9px;color:#858d94}.gv-v136-context strong{font-size:18px;margin:4px 0 2px;color:#434b51}.gv-v136-context small{font-size:9px;color:#858d94}.gv-v136-context .better strong{color:#4e6f5a}.gv-v136-context .worse strong{color:#8a5c50}.gv-v136-trend-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:12px}.gv-v136-trend-grid>section,.gv-v136-owner-trend{border:1px solid var(--gv-line-soft);border-radius:9px;padding:14px;background:#fff}.gv-v136-subhead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.gv-v136-subhead strong{font-size:12px;color:#41494f}.gv-v136-subhead span{font-size:9px;color:#889096}.gv-v136-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gv-v136-metric{border:1px solid #eceeed;border-radius:8px;padding:10px 11px;min-width:0}.gv-v136-metric>div:first-child{display:grid;grid-template-columns:1fr auto;gap:2px 8px;align-items:baseline}.gv-v136-metric span{font-size:9px;color:#858d94}.gv-v136-metric strong{font-size:17px;color:#41494f}.gv-v136-metric small{grid-column:1/-1;font-size:9px;color:#858d94}.gv-v136-spark{display:block;width:100%;height:58px;margin-top:7px;color:#5e686f;overflow:visible}.gv-v136-spark polyline{stroke:currentColor;stroke-width:1.65}.gv-v136-spark circle{fill:#fff;stroke:currentColor;stroke-width:1.4;vector-effect:non-scaling-stroke}.gv-v136-spark .gap{stroke:#c7cccf;stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.gv-v136-spark-empty{height:58px;display:flex;align-items:center;color:#92999e;font-size:9px}.gv-v136-lane-trends{display:grid;gap:7px}.gv-v136-lane-trends article{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(0,1.3fr);gap:10px;align-items:center;border-top:1px solid #eef0ef;padding-top:7px}.gv-v136-lane-trends article:first-child{border-top:0;padding-top:0}.gv-v136-lane-trends article>div{min-width:0}.gv-v136-lane-trends strong,.gv-v136-lane-trends span,.gv-v136-lane-trends small{display:block}.gv-v136-lane-trends strong{font-size:10px;color:#4c545a}.gv-v136-lane-trends span{font-size:15px;color:#41494f;margin-top:3px}.gv-v136-lane-trends small{font-size:8.5px;color:#858d94;margin-top:2px}.gv-v136-lane-trends .gv-v136-spark{height:42px;margin-top:0}.gv-v136-owner-trend{margin-top:12px}.gv-v136-owner-summary{display:grid;grid-template-columns:minmax(200px,.65fr) minmax(0,1.35fr);gap:14px;align-items:center}.gv-v136-owner-summary span,.gv-v136-owner-summary strong,.gv-v136-owner-summary small{display:block}.gv-v136-owner-summary span{font-size:9px;color:#858d94}.gv-v136-owner-summary strong{font-size:15px;margin-top:4px;color:#41494f;overflow-wrap:anywhere}.gv-v136-owner-summary small{font-size:9px;color:#858d94;margin-top:3px}.gv-v136-owner-points{display:flex;gap:6px;overflow:auto;padding-top:9px;margin-top:8px;border-top:1px solid #eef0ef}.gv-v136-owner-points>span{min-width:max-content;display:grid;grid-template-columns:auto auto;gap:1px 6px;padding:6px 8px;border:1px solid #eceeed;border-radius:7px}.gv-v136-owner-points b,.gv-v136-owner-points em,.gv-v136-owner-points i{font-size:8.5px;font-style:normal}.gv-v136-owner-points b{color:#707980}.gv-v136-owner-points em{color:#4d565c}.gv-v136-owner-points i{grid-column:1/-1;color:#858d94}.gv-v136-trend-note{font-size:9.5px;line-height:1.65;color:#7d868d;margin-top:11px}.gv-v136-trend-panel .gv-v125-empty{grid-column:1/-1}
html[data-view="comfort"] :is(.gv-v136-range button,.gv-v136-coverage strong,.gv-v136-coverage span,.gv-v136-context span,.gv-v136-context small,.gv-v136-subhead strong,.gv-v136-subhead span,.gv-v136-metric span,.gv-v136-metric small,.gv-v136-spark-empty,.gv-v136-lane-trends strong,.gv-v136-lane-trends small,.gv-v136-owner-summary span,.gv-v136-owner-summary small,.gv-v136-owner-points b,.gv-v136-owner-points em,.gv-v136-owner-points i,.gv-v136-trend-note){font-size:max(14px,1em)}
html[data-view="large"] :is(.gv-v136-range button,.gv-v136-coverage strong,.gv-v136-coverage span,.gv-v136-context span,.gv-v136-context small,.gv-v136-subhead strong,.gv-v136-subhead span,.gv-v136-metric span,.gv-v136-metric small,.gv-v136-spark-empty,.gv-v136-lane-trends strong,.gv-v136-lane-trends small,.gv-v136-owner-summary span,.gv-v136-owner-summary small,.gv-v136-owner-points b,.gv-v136-owner-points em,.gv-v136-owner-points i,.gv-v136-trend-note){font-size:max(15.5px,1em)}
html[data-view="accessible"] :is(.gv-v136-range button,.gv-v136-coverage strong,.gv-v136-coverage span,.gv-v136-context span,.gv-v136-context small,.gv-v136-subhead strong,.gv-v136-subhead span,.gv-v136-metric span,.gv-v136-metric small,.gv-v136-spark-empty,.gv-v136-lane-trends strong,.gv-v136-lane-trends small,.gv-v136-owner-summary span,.gv-v136-owner-summary small,.gv-v136-owner-points b,.gv-v136-owner-points em,.gv-v136-owner-points i,.gv-v136-trend-note){font-size:max(17px,1em)}
@media(max-width:1180px){.gv-v136-trend-grid{grid-template-columns:1fr}.gv-v136-owner-summary{grid-template-columns:1fr}.gv-v136-context{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v136-context>div:nth-child(2){border-right:0}.gv-v136-context>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:680px){.gv-v136-trend-panel{padding:16px}.gv-v136-trend-head{align-items:flex-start;flex-direction:column}.gv-v136-range{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.gv-v136-range button{text-align:center}.gv-v136-context{grid-template-columns:1fr}.gv-v136-context>div{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v136-context>div:last-child{border-bottom:0}.gv-v136-metric-grid{grid-template-columns:1fr}.gv-v136-lane-trends article{grid-template-columns:1fr}.gv-v136-owner-points{margin-right:-4px}.gv-v136-subhead{align-items:flex-start;flex-direction:column}.gv-v136-spark{height:66px}}
@media print{body.gv-print-weekly-review #gvWeeklyTrendPanel,body.gv-print-weekly-review #gvWeeklyTrendPanel *{visibility:visible!important}body.gv-print-weekly-review #gvWeeklyTrendPanel{position:relative;left:auto;top:auto;width:100%;margin:0 0 8mm}body.gv-print-weekly-review .gv-v136-trend-grid{grid-template-columns:1fr 1fr}body.gv-print-weekly-review .gv-v136-owner-points{overflow:visible;flex-wrap:wrap}body.gv-print-weekly-review .gv-v136-metric,body.gv-print-weekly-review .gv-v136-lane-trends article{break-inside:avoid}}

/* V1.37 · Quote Weekly Management Brief */
.gv-v137-brief-panel{margin-bottom:12px;padding:18px 20px;background:linear-gradient(180deg,#fff 0%,#fcfcfb 100%)}
.gv-v137-brief-head{align-items:center}.gv-v137-brief-actions{display:flex;gap:6px;flex-wrap:wrap}
.gv-v137-evidence{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 11px;margin:2px 0 12px;border:1px solid var(--gv-line-soft);border-radius:8px;background:#fafaf9}
.gv-v137-evidence strong{font-size:10px;color:#4c545a}.gv-v137-evidence span{font-size:9px;color:#858d94}
.gv-v137-lead{padding:14px 15px;border-left:2px solid #596269;background:#f7f8f7;border-radius:0 8px 8px 0;font-size:13px;line-height:1.65;color:#41494f;margin-bottom:10px}
.gv-v137-brief-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.gv-v137-brief-card{border:1px solid var(--gv-line-soft);border-radius:9px;padding:12px 13px;background:#fff;min-width:0}
.gv-v137-brief-card>span{display:block;font-size:9px;color:#858d94;margin-bottom:7px}
.gv-v137-brief-card strong,.gv-v137-brief-card small{display:block}.gv-v137-brief-card strong{font-size:13px;line-height:1.35;color:#424a50}.gv-v137-brief-card small{font-size:9px;line-height:1.55;color:#7d868d;margin-top:5px;overflow-wrap:anywhere}
.gv-v137-current{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--gv-line-soft);border-radius:8px;overflow:hidden;margin-top:10px;background:#fff}
.gv-v137-current>span{padding:10px 12px;font-size:9px;color:#81898f}.gv-v137-current>span+span{border-left:1px solid var(--gv-line-soft)}.gv-v137-current b{display:block;font-size:10px;color:#51595f;margin-top:3px;font-weight:650}
.gv-v137-brief-note{font-size:9.5px;line-height:1.65;color:#7d868d;margin-top:10px}
html[data-view="comfort"] :is(.gv-v137-evidence strong,.gv-v137-evidence span,.gv-v137-brief-card>span,.gv-v137-brief-card small,.gv-v137-current>span,.gv-v137-current b,.gv-v137-brief-note){font-size:max(14px,1em)}
html[data-view="large"] :is(.gv-v137-evidence strong,.gv-v137-evidence span,.gv-v137-brief-card>span,.gv-v137-brief-card small,.gv-v137-current>span,.gv-v137-current b,.gv-v137-brief-note){font-size:max(15.5px,1em)}
html[data-view="accessible"] :is(.gv-v137-evidence strong,.gv-v137-evidence span,.gv-v137-brief-card>span,.gv-v137-brief-card small,.gv-v137-current>span,.gv-v137-current b,.gv-v137-brief-note){font-size:max(17px,1em)}
html[data-view="comfort"] .gv-v137-lead{font-size:max(14px,1em)}html[data-view="large"] .gv-v137-lead{font-size:max(15.5px,1em)}html[data-view="accessible"] .gv-v137-lead{font-size:max(17px,1em)}
@media(max-width:1180px){.gv-v137-brief-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.gv-v137-brief-panel{padding:16px}.gv-v137-brief-head{height:auto;min-height:0;padding:0 0 12px;margin-bottom:12px;align-items:flex-start;flex-direction:column;gap:12px}.gv-v137-brief-actions{width:100%}.gv-v137-brief-actions .gv-btn{flex:1}.gv-v137-brief-grid{grid-template-columns:1fr}.gv-v137-current{grid-template-columns:1fr}.gv-v137-current>span+span{border-left:0;border-top:1px solid var(--gv-line-soft)}}
@media print{body.gv-print-weekly-review #gvWeeklyBriefPanel,body.gv-print-weekly-review #gvWeeklyBriefPanel *{visibility:visible!important}body.gv-print-weekly-review #gvWeeklyBriefPanel{position:relative;left:auto;top:auto;width:100%;margin:0 0 8mm}body.gv-print-weekly-review .gv-v137-brief-grid{grid-template-columns:repeat(2,1fr)}body.gv-print-weekly-review .gv-v137-brief-card{break-inside:avoid}}
@media print{body.gv-print-weekly-brief *{visibility:hidden!important}body.gv-print-weekly-brief #gvWeeklyBriefPanel,body.gv-print-weekly-brief #gvWeeklyBriefPanel *{visibility:visible!important}body.gv-print-weekly-brief #gvWeeklyBriefPanel{position:absolute;left:0;top:0;width:100%;margin:0;border:0;box-shadow:none}body.gv-print-weekly-brief .gv-main{max-width:none!important;width:100%!important;padding:8mm 10mm!important}body.gv-print-weekly-brief .gv-v137-brief-grid{grid-template-columns:repeat(2,1fr)}body.gv-print-weekly-brief .gv-v137-brief-card{break-inside:avoid}}

/* V1.38 · Project Write Promotion Readiness */
.gv-v138-hero{margin-bottom:14px}.gv-v138-hero h1{max-width:980px}.gv-v138-verdict{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:24px 26px;border:1px solid var(--gv-line);border-radius:12px;background:#fff;margin-bottom:12px}.gv-v138-verdict>div:first-child>span{display:block;font-size:10px;letter-spacing:.12em;color:#818990}.gv-v138-verdict>div:first-child>strong{display:block;font-size:34px;letter-spacing:-.04em;margin:5px 0 7px}.gv-v138-verdict>div:first-child>p{margin:0;max-width:880px;color:#67717a;line-height:1.7;font-size:12px}.gv-v138-verdict.is-ready{border-color:#cad8cd;background:#fbfdfb}.gv-v138-verdict.is-blocked{border-color:#dfd3cb;background:#fffdfb}.gv-v138-score{text-align:right;min-width:110px}.gv-v138-score strong{display:block;font-size:34px;letter-spacing:-.04em}.gv-v138-score strong small{font-size:15px;color:#90979d}.gv-v138-score span{display:block;margin-top:3px;color:#7b848b;font-size:10px}.gv-v138-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:10px;background:#fff;overflow:hidden;margin-bottom:12px}.gv-v138-kpis article{padding:16px 18px;border-right:1px solid var(--gv-line-soft)}.gv-v138-kpis article:last-child{border-right:0}.gv-v138-kpis span,.gv-v138-kpis strong,.gv-v138-kpis small{display:block}.gv-v138-kpis span{font-size:9px;color:#838c93}.gv-v138-kpis strong{font-size:25px;margin:5px 0 3px;color:#3c444b}.gv-v138-kpis small{font-size:10px;color:#7d858c;line-height:1.55}.gv-v138-blockers,.gv-v138-grid-panel,.gv-v138-evidence{margin-top:12px}.gv-v138-blocker-list{display:grid}.gv-v138-blocker-list article{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v138-blocker-list article:last-child{border-bottom:0}.gv-v138-status-dot{width:8px;height:8px;border-radius:50%;background:#9a6b57}.gv-v138-blocker-list strong,.gv-v138-blocker-list p,.gv-v138-blocker-list small{display:block}.gv-v138-blocker-list strong{font-size:13px}.gv-v138-blocker-list p{margin:5px 0 4px;color:#5f6870;font-size:11px;line-height:1.6}.gv-v138-blocker-list small{color:#8b9298;font-size:10px;line-height:1.55}.gv-v138-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gv-v138-check-grid article{border:1px solid var(--gv-line);border-radius:10px;padding:16px;background:#fff;min-width:0}.gv-v138-check-grid article.is-pass{background:#fcfdfc}.gv-v138-check-grid article.is-blocked{background:#fffdfb}.gv-v138-check-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:10px}.gv-v138-check-head span{font-size:8.5px;letter-spacing:.11em;color:#8a9298}.gv-v138-check-head b{font-size:9px;letter-spacing:.08em;color:#697178}.gv-v138-check-grid article.is-blocked .gv-v138-check-head b{color:#9a654f}.gv-v138-check-grid article>strong{display:block;font-size:13px;line-height:1.4}.gv-v138-check-grid article>p{margin:7px 0 0;color:#69727a;font-size:10.5px;line-height:1.6}.gv-v138-check-grid article>small{display:block;margin-top:7px;padding-top:7px;border-top:1px solid var(--gv-line-soft);color:#7f695f;font-size:9.5px;line-height:1.55}.gv-v138-check-grid article>a{display:inline-flex;margin-top:10px;color:#626d75;font-size:10px;text-decoration:none;border-bottom:1px solid #cfd4d8}.gv-v138-evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gv-v138-evidence-grid>div{border:1px solid var(--gv-line);border-radius:9px;padding:14px;background:#fbfbfb}.gv-v138-evidence-grid span,.gv-v138-evidence-grid strong,.gv-v138-evidence-grid small{display:block}.gv-v138-evidence-grid span{font-size:9px;color:#838b91}.gv-v138-evidence-grid strong{font-size:13px;margin-top:5px;letter-spacing:.02em}.gv-v138-evidence-grid small{margin-top:4px;color:#8b9298;font-size:9.5px;line-height:1.45}.gv-v138-guard{margin-top:12px}.gv-v138-stop{display:flex;gap:18px;align-items:flex-start}.gv-v138-stop h2{margin:4px 0 8px}.gv-v138-stop p{margin:0;color:#6d757c;line-height:1.7}
html[data-view="comfort"] :is(.gv-v138-verdict p,.gv-v138-kpis small,.gv-v138-blocker-list p,.gv-v138-blocker-list small,.gv-v138-check-grid article>p,.gv-v138-check-grid article>small,.gv-v138-evidence-grid small){font-size:max(14px,1em)}
html[data-view="large"] :is(.gv-v138-verdict p,.gv-v138-kpis small,.gv-v138-blocker-list p,.gv-v138-blocker-list small,.gv-v138-check-grid article>p,.gv-v138-check-grid article>small,.gv-v138-evidence-grid small){font-size:max(15.5px,1em)}
html[data-view="accessible"] :is(.gv-v138-verdict p,.gv-v138-kpis small,.gv-v138-blocker-list p,.gv-v138-blocker-list small,.gv-v138-check-grid article>p,.gv-v138-check-grid article>small,.gv-v138-evidence-grid small){font-size:max(17px,1em)}
html[data-view="accessible"] :is(.gv-v138-check-grid article>strong,.gv-v138-blocker-list strong,.gv-v138-evidence-grid strong){font-size:max(18px,1em)}
@media(max-width:1080px){.gv-v138-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v138-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.gv-v138-verdict{grid-template-columns:1fr}.gv-v138-score{text-align:left}.gv-v138-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v138-kpis article:nth-child(2){border-right:0}.gv-v138-kpis article:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-v138-check-grid,.gv-v138-evidence-grid{grid-template-columns:1fr}.gv-v138-blocker-list article{grid-template-columns:10px minmax(0,1fr)}.gv-v138-blocker-list article .gv-btn{grid-column:2;justify-self:start}.gv-v138-hero .gv-hero-actions{align-items:stretch}}
@media(max-width:460px){.gv-v138-kpis{grid-template-columns:1fr}.gv-v138-kpis article{border-right:0!important;border-bottom:1px solid var(--gv-line-soft)!important}.gv-v138-kpis article:last-child{border-bottom:0!important}.gv-v138-verdict{padding:20px}.gv-v138-verdict>div:first-child>strong{font-size:30px}}
/* V1.38 security checkpoint is intentionally self-explanatory for non-developers. */
.gv-functional-hero.gv-v138-hero{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;justify-content:stretch!important;
  gap:20px!important;padding:20px 22px!important;margin:0 0 12px!important;border:1px solid var(--gv-line);border-radius:12px;background:#fff
}
.gv-functional-hero.gv-v138-hero>:first-child{display:block!important}
.gv-functional-hero.gv-v138-hero>:last-child{margin-left:0!important}
.gv-v138-hero .gv-eyebrow{font-size:9px;letter-spacing:.11em;color:#858d94;margin-bottom:8px}
.gv-v138-hero h1{margin:0;font-size:22px;line-height:1.35;letter-spacing:-.025em;color:#343c43}
.gv-v138-hero p{margin:9px 0 0;max-width:980px;color:#68727a;font-size:12px;line-height:1.72}
html[data-view="comfort"] .gv-v138-hero p{font-size:max(14px,1em)}
html[data-view="large"] .gv-v138-hero p{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v138-hero p{font-size:max(17px,1em)}
@media(max-width:760px){
  .gv-functional-hero.gv-v138-hero{grid-template-columns:1fr!important;padding:18px!important;gap:14px!important}
  .gv-v138-hero h1{font-size:20px}
  .gv-v138-hero .gv-hero-actions{width:100%;margin-left:0!important;justify-content:flex-start!important}
}


/* V1.39 · Project Promotion Evidence Closure */
.gv-v139-hero{margin-bottom:14px}.gv-v139-hero h1{max-width:980px}.gv-v139-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:10px;background:#fff;overflow:hidden;margin-bottom:12px}.gv-v139-summary article{padding:16px 18px;border-right:1px solid var(--gv-line-soft)}.gv-v139-summary article:last-child{border-right:0}.gv-v139-summary span,.gv-v139-summary strong,.gv-v139-summary small,.gv-v139-summary p{display:block}.gv-v139-summary span{font-size:9px;color:#838c93}.gv-v139-summary strong{font-size:25px;margin:5px 0 3px;color:#3c444b}.gv-v139-summary strong small{display:inline;font-size:13px;color:#8c949a}.gv-v139-summary p{margin:0;font-size:10px;line-height:1.55;color:#7d858c}.gv-v139-next{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:18px 20px;border:1px solid #e0d3ca;border-radius:10px;background:#fffdfb;margin-bottom:12px}.gv-v139-next.is-complete{border-color:#cdd9cf;background:#fbfdfb}.gv-v139-next span,.gv-v139-next strong,.gv-v139-next p{display:block}.gv-v139-next span{font-size:9px;letter-spacing:.1em;color:#8a817b}.gv-v139-next strong{font-size:15px;margin:5px 0;color:#3d454b}.gv-v139-next p{font-size:10.5px;line-height:1.6;color:#6f777d;margin:0}.gv-v139-matrix,.gv-v139-safe{margin-top:12px}.gv-v139-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gv-v139-list article{border:1px solid var(--gv-line);border-radius:10px;background:#fff;overflow:hidden}.gv-v139-list article.is-current{background:#fcfdfc;border-color:#d6ded7}.gv-v139-list article.is-stale,.gv-v139-list article.is-missing{background:#fffdfb;border-color:#e2d8d0}.gv-v139-list article.is-danger{background:#fffafa;border-color:#e3cccc}.gv-v139-card-head{display:flex;justify-content:space-between;gap:14px;padding:14px 15px;border-bottom:1px solid var(--gv-line-soft)}.gv-v139-card-head span,.gv-v139-card-head strong{display:block}.gv-v139-card-head span{font-size:8.5px;letter-spacing:.08em;color:#899198}.gv-v139-card-head strong{font-size:13px;line-height:1.4;margin-top:4px}.gv-v139-card-head b{font-size:9px;letter-spacing:.08em;white-space:nowrap;color:#7b848a}.gv-v139-list article:not(.is-current) .gv-v139-card-head b{color:#986953}.gv-v139-card-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0 15px}.gv-v139-card-body>div{padding:12px 0;border-bottom:1px solid var(--gv-line-soft)}.gv-v139-card-body>div:nth-child(odd):not(.is-wide){padding-right:12px;border-right:1px solid var(--gv-line-soft)}.gv-v139-card-body>div:nth-child(even):not(.is-wide){padding-left:12px}.gv-v139-card-body .is-wide{grid-column:1/-1}.gv-v139-card-body span,.gv-v139-card-body strong,.gv-v139-card-body p{display:block}.gv-v139-card-body span{font-size:8.5px;color:#8a9298;margin-bottom:4px}.gv-v139-card-body strong,.gv-v139-card-body p{font-size:10px;line-height:1.6;color:#5f6970;margin:0}.gv-v139-card-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 15px;background:#fafafa}.gv-v139-card-foot span{font-size:9.5px;line-height:1.5;color:#7a8288}.gv-v139-card-foot a{font-size:9.5px;color:#58636b;text-decoration:none;white-space:nowrap}.gv-v139-pointer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gv-v139-pointer-grid>div{padding:12px 13px;border:1px solid var(--gv-line-soft);border-radius:8px;background:#fff}.gv-v139-pointer-grid span,.gv-v139-pointer-grid strong,.gv-v139-pointer-grid small{display:block}.gv-v139-pointer-grid span{font-size:8.5px;color:#8b9297}.gv-v139-pointer-grid strong{font-size:11px;margin:5px 0;color:#4b545a}.gv-v139-pointer-grid small{font-size:9px;color:#858d93;line-height:1.5}.gv-v139-guard{margin-top:12px}
html[data-view="comfort"] :is(.gv-v139-summary span,.gv-v139-summary p,.gv-v139-next span,.gv-v139-next p,.gv-v139-card-head span,.gv-v139-card-head b,.gv-v139-card-body span,.gv-v139-card-body strong,.gv-v139-card-body p,.gv-v139-card-foot span,.gv-v139-card-foot a,.gv-v139-pointer-grid span,.gv-v139-pointer-grid strong,.gv-v139-pointer-grid small){font-size:max(14px,1em)}
html[data-view="large"] :is(.gv-v139-summary span,.gv-v139-summary p,.gv-v139-next span,.gv-v139-next p,.gv-v139-card-head span,.gv-v139-card-head b,.gv-v139-card-body span,.gv-v139-card-body strong,.gv-v139-card-body p,.gv-v139-card-foot span,.gv-v139-card-foot a,.gv-v139-pointer-grid span,.gv-v139-pointer-grid strong,.gv-v139-pointer-grid small){font-size:max(15.5px,1em)}
html[data-view="accessible"] :is(.gv-v139-summary span,.gv-v139-summary p,.gv-v139-next span,.gv-v139-next p,.gv-v139-card-head span,.gv-v139-card-head b,.gv-v139-card-body span,.gv-v139-card-body strong,.gv-v139-card-body p,.gv-v139-card-foot span,.gv-v139-card-foot a,.gv-v139-pointer-grid span,.gv-v139-pointer-grid strong,.gv-v139-pointer-grid small){font-size:max(17px,1em)}
@media(max-width:980px){.gv-v139-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v139-summary article:nth-child(2){border-right:0}.gv-v139-summary article:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-v139-list{grid-template-columns:1fr}.gv-v139-pointer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.gv-functional-hero.gv-v139-hero{grid-template-columns:1fr!important;padding:18px!important;gap:14px!important}.gv-v139-hero .gv-hero-actions{width:100%;justify-content:flex-start!important}.gv-v139-summary{grid-template-columns:1fr}.gv-v139-summary article{border-right:0;border-bottom:1px solid var(--gv-line-soft)!important}.gv-v139-summary article:last-child{border-bottom:0!important}.gv-v139-next{grid-template-columns:1fr}.gv-v139-next .gv-btn{width:100%}.gv-v139-card-body{grid-template-columns:1fr}.gv-v139-card-body>div,.gv-v139-card-body>div:nth-child(odd):not(.is-wide),.gv-v139-card-body>div:nth-child(even):not(.is-wide){grid-column:1;padding:12px 0;border-right:0}.gv-v139-card-foot{align-items:flex-start;flex-direction:column}.gv-v139-pointer-grid{grid-template-columns:1fr}}
/* V1.39 evidence-closure page must stay self-explanatory for non-developers. */
.gv-functional-hero.gv-v139-hero{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;justify-content:stretch!important;
  gap:20px!important;padding:20px 22px!important;margin:0 0 12px!important;border:1px solid var(--gv-line);border-radius:12px;background:#fff
}
.gv-functional-hero.gv-v139-hero>:first-child{display:block!important}
.gv-functional-hero.gv-v139-hero>:last-child{margin-left:0!important}
.gv-v139-hero .gv-eyebrow{font-size:9px;letter-spacing:.11em;color:#858d94;margin-bottom:8px}
.gv-v139-hero h1{margin:0;font-size:22px;line-height:1.35;letter-spacing:-.025em;color:#343c43}
.gv-v139-hero p{margin:9px 0 0;max-width:980px;color:#68727a;font-size:12px;line-height:1.72}
html[data-view="comfort"] .gv-v139-hero p{font-size:max(14px,1em)}
html[data-view="large"] .gv-v139-hero p{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v139-hero p{font-size:max(17px,1em)}
@media(max-width:620px){
  .gv-functional-hero.gv-v139-hero{grid-template-columns:1fr!important;padding:18px!important;gap:14px!important}
  .gv-v139-hero h1{font-size:20px}
  .gv-v139-hero .gv-hero-actions{width:100%;margin-left:0!important;justify-content:flex-start!important}
}
@media(max-width:620px){
  .gv-v139-matrix .gv-panel-head,.gv-v139-safe .gv-panel-head{height:auto!important;min-height:0!important;padding-bottom:12px!important;margin-bottom:12px!important;align-items:flex-start!important;flex-direction:column!important;gap:8px!important}
  .gv-v139-hero .gv-hero-actions{display:grid!important;grid-template-columns:1fr!important;align-items:stretch!important}
  .gv-v139-hero .gv-hero-actions .gv-btn{width:100%;white-space:nowrap}
}

/* V1.40 · Project Non-Production Pilot Release Authorization */
.gv-v140-hero{align-items:flex-start}
.gv-v140-hero>:first-child{display:block!important}
.gv-v140-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}
.gv-v140-grid,.gv-v140-actions{margin-top:16px}
.gv-v140-intro{margin-top:16px}
.gv-v140-scope{display:grid;gap:0;border:1px solid var(--gv-line,#e4e1db);border-radius:12px;overflow:hidden}
.gv-v140-scope>div{display:grid;grid-template-columns:minmax(150px,.7fr) 1fr;gap:16px;padding:13px 15px;border-bottom:1px solid var(--gv-line,#e4e1db)}
.gv-v140-scope>div:last-child{border-bottom:0}.gv-v140-scope span{color:var(--gv-muted,#77716a);font-size:14px}.gv-v140-scope strong{font-size:14px;letter-spacing:.01em}
.gv-v140-status{min-height:24px;margin:10px 0 0;color:var(--gv-muted,#77716a);font-size:14px;line-height:1.55}
.gv-v140-list{display:grid;gap:10px}.gv-v140-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1fr) auto;align-items:center;gap:16px;padding:14px;border:1px solid var(--gv-line,#e4e1db);border-radius:12px;background:rgba(255,255,255,.48)}
.gv-v140-row>div:first-child{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:8px}.gv-v140-row>div:first-child small{grid-column:1/-1;color:var(--gv-muted,#77716a);font-size:14px}
.gv-v140-row-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--gv-muted,#77716a);font-size:14px}.gv-v140-review{display:flex;gap:8px;align-items:center}.gv-v140-review input{min-width:210px}
.gv-v140-guard{margin-top:16px}.gv-text-danger{color:#a4423f!important}
html[data-view="accessible"] :is(.gv-v140-scope span,.gv-v140-scope strong,.gv-v140-status,.gv-v140-row-meta,.gv-v140-row small){font-size:max(17px,1em)}
@media(max-width:1100px){.gv-v140-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v140-row{grid-template-columns:1fr}.gv-v140-review{justify-content:flex-start}}
@media(max-width:620px){.gv-v140-metrics{grid-template-columns:1fr}.gv-v140-grid,.gv-v140-actions{grid-template-columns:1fr}.gv-v140-scope>div{grid-template-columns:1fr;gap:5px}.gv-v140-row{padding:12px}.gv-v140-row>div:first-child{grid-template-columns:1fr}.gv-v140-review{display:grid;grid-template-columns:1fr 1fr}.gv-v140-review input{grid-column:1/-1;min-width:0;width:100%}.gv-v140-hero .gv-hero-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}}
/* V1.40 visual QA correction: this page owns its two-column panels instead of inheriting the generic 12-column grid. */
.gv-v140-grid,.gv-v140-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.gv-v140-metrics .gv-metric-card{min-width:0;min-height:118px;padding:16px 18px;display:flex;flex-direction:column;justify-content:flex-start}
.gv-v140-metrics :is(.gv-metric-label,.gv-metric-value,.gv-metric-foot){display:block}
.gv-v140-metrics .gv-metric-value{margin:6px 0 4px;line-height:1.15}
@media(max-width:820px){.gv-v140-grid,.gv-v140-actions{grid-template-columns:1fr}}


/* V1.41 · Project Non-Production Canonical Write Pilot */
.gv-v141-hero{margin-bottom:18px}.gv-v141-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.gv-v141-grid{margin-bottom:16px}.gv-v141-scope{display:grid;gap:10px}.gv-v141-scope>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--gv-border,#e1e4e6)}.gv-v141-scope span{color:var(--gv-muted,#737b83);font-size:max(14px,.92em)}.gv-v141-scope strong{text-align:right;font-size:max(14px,.94em)}.gv-v141-form-card{margin-bottom:16px}.gv-v141-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gv-v141-form .gv-v141-wide{grid-column:1/-1}.gv-v141-execute{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px}.gv-v141-status{margin:0;min-height:22px;color:var(--gv-muted,#737b83);font-size:max(14px,.92em)}.gv-v141-status.is-error{color:#9d3d3d}.gv-v141-status.is-success{color:#346a4a}.gv-v141-list{display:grid;gap:10px}.gv-v141-list>article{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--gv-border,#e1e4e6)}.gv-v141-list>article>div{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap}.gv-v141-list small{color:var(--gv-muted,#737b83)}.gv-v141-guard{margin-top:16px}html[data-view="accessible"] :is(.gv-v141-scope span,.gv-v141-scope strong,.gv-v141-status,.gv-v141-form .gv-field span,.gv-v141-list small){font-size:max(17px,1em)}
@media(max-width:900px){.gv-v141-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v141-form{grid-template-columns:1fr}.gv-v141-form .gv-v141-wide{grid-column:auto}}
@media(max-width:620px){.gv-v141-metrics{grid-template-columns:1fr}.gv-v141-list>article{grid-template-columns:1fr}.gv-v141-scope>div{align-items:flex-start;flex-direction:column;gap:4px}.gv-v141-scope strong{text-align:left}.gv-v141-execute .gv-btn{width:100%}.gv-v141-hero .gv-hero-actions{align-items:stretch}.gv-v141-hero .gv-hero-actions .gv-btn{width:100%}}

/* V1.41 visual/browser QA correction: own the two-column LAB layout and mobile wrapping. */
.gv-v141-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.gv-v141-grid>.gv-card{min-width:0}
.gv-v141-migration code{white-space:normal;overflow-wrap:anywhere;word-break:break-word}
html[data-view="standard"] :is(.gv-v141-grid .gv-security-list span,.gv-v141-grid .gv-security-list strong,.gv-v141-grid .gv-security-list b,.gv-v141-scope span,.gv-v141-scope strong,.gv-v141-status,.gv-v141-form .gv-field span,.gv-v141-list small){font-size:max(12px,1em);line-height:1.5}
html[data-view="comfort"] :is(.gv-v141-grid .gv-security-list span,.gv-v141-grid .gv-security-list strong,.gv-v141-grid .gv-security-list b,.gv-v141-scope span,.gv-v141-scope strong,.gv-v141-status,.gv-v141-form .gv-field span,.gv-v141-list small){font-size:max(14px,1em);line-height:1.55}
html[data-view="large"] :is(.gv-v141-grid .gv-security-list span,.gv-v141-grid .gv-security-list strong,.gv-v141-grid .gv-security-list b,.gv-v141-scope span,.gv-v141-scope strong,.gv-v141-status,.gv-v141-form .gv-field span,.gv-v141-list small){font-size:max(15.5px,1em);line-height:1.55}
html[data-view="accessible"] :is(.gv-v141-grid .gv-security-list span,.gv-v141-grid .gv-security-list strong,.gv-v141-grid .gv-security-list b,.gv-v141-scope span,.gv-v141-scope strong,.gv-v141-status,.gv-v141-form .gv-field span,.gv-v141-list small){font-size:max(17px,1em);line-height:1.6}
@media(max-width:820px){.gv-v141-grid{grid-template-columns:1fr}}
@media(max-width:620px){.gv-v141-migration{min-width:0}.gv-v141-migration code{display:inline;max-width:100%}}

/* V1.42 · Project Non-Production Pilot Verification & Exit Review */
.gv-v142-hero{margin-bottom:18px}.gv-v142-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.gv-v142-intro,.gv-v142-blocked,.gv-v142-grid,.gv-v142-verdict{margin-bottom:16px}.gv-v142-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.gv-v142-grid>.gv-card{min-width:0}.gv-v142-select{display:grid;gap:14px}.gv-v142-select .gv-btn{justify-self:start}.gv-v142-scope{display:grid;gap:10px}.gv-v142-scope>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--gv-border,#e1e4e6)}.gv-v142-scope span{color:var(--gv-muted,#737b83);font-size:max(14px,.92em)}.gv-v142-scope strong{text-align:right;font-size:max(14px,.94em)}.gv-v142-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.gv-v142-summary>div,.gv-v142-evidence>div{min-width:0;padding:12px;border:1px solid var(--gv-border,#e1e4e6);border-radius:8px;background:var(--gv-surface-soft,#f7f8f8)}.gv-v142-summary span,.gv-v142-evidence span{display:block;color:var(--gv-muted,#737b83);font-size:max(14px,.9em);margin-bottom:4px}.gv-v142-summary strong,.gv-v142-evidence strong{display:block;overflow-wrap:anywhere}.gv-v142-checks{display:grid;gap:8px}.gv-v142-checks>article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--gv-border,#e1e4e6);border-radius:8px}.gv-v142-checks>article.is-pass{background:rgba(68,116,85,.06)}.gv-v142-checks>article.is-warn{background:rgba(161,118,49,.08)}.gv-v142-checks>article.is-fail{background:rgba(157,61,61,.07)}.gv-v142-checks>article>div{min-width:0}.gv-v142-checks strong{display:block;overflow-wrap:anywhere}.gv-v142-checks small{display:block;color:var(--gv-muted,#737b83);margin-top:3px;overflow-wrap:anywhere}.gv-v142-checks b{flex:0 0 auto;font-size:max(14px,.9em)}.gv-v142-evidence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.gv-v142-evidence small{display:block;color:var(--gv-muted,#737b83);margin-top:4px;overflow-wrap:anywhere}.gv-v142-list{display:grid;gap:8px}.gv-v142-list>a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--gv-border,#e1e4e6);text-decoration:none;color:inherit}.gv-v142-list>a>div{display:flex;gap:9px;align-items:center;min-width:0;flex-wrap:wrap}.gv-v142-list small{color:var(--gv-muted,#737b83)}.gv-v142-guard{margin-top:16px}html[data-view="accessible"] :is(.gv-v142-scope span,.gv-v142-scope strong,.gv-v142-summary span,.gv-v142-evidence span,.gv-v142-checks small,.gv-v142-checks b,.gv-v142-list small){font-size:max(17px,1em)}
@media(max-width:900px){.gv-v142-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v142-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v142-evidence{grid-template-columns:1fr}}
@media(max-width:820px){.gv-v142-grid{grid-template-columns:1fr}}
@media(max-width:620px){.gv-v142-metrics,.gv-v142-summary{grid-template-columns:1fr}.gv-v142-scope>div{flex-direction:column;gap:4px}.gv-v142-scope strong{text-align:left}.gv-v142-list>a{grid-template-columns:1fr}.gv-v142-select .gv-btn{width:100%}.gv-v142-checks>article{align-items:flex-start}.gv-v142-checks b{padding-top:1px}}

/* V1.44 · Project Exit Decision & Crew Write Readiness Bridge */
.gv-v144-hero{margin-bottom:18px}.gv-v144-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.gv-v144-intro,.gv-v144-bridge,.gv-v144-check-panel,.gv-v144-runtime{margin-bottom:16px}.gv-v144-bridge,.gv-v144-runtime{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.gv-v144-bridge>.gv-card,.gv-v144-runtime>.gv-card{min-width:0}.gv-v144-bridge-list,.gv-v144-runtime-list{display:grid;gap:0}.gv-v144-bridge-list>div,.gv-v144-runtime-list>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--gv-border,#e1e4e6)}.gv-v144-bridge-list span,.gv-v144-runtime-list span{color:var(--gv-muted,#737b83);font-size:max(14px,.92em)}.gv-v144-bridge-list strong,.gv-v144-runtime-list strong{text-align:right;font-size:max(14px,.94em);overflow-wrap:anywhere}.gv-v144-findings{display:grid;gap:10px}.gv-v144-findings>div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:12px;border:1px solid var(--gv-border,#e1e4e6);border-radius:9px;background:rgba(157,61,61,.045)}.gv-v144-findings b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--gv-border,#d9dde0);font-size:max(12px,.82em)}.gv-v144-findings p{margin:0;min-width:0}.gv-v144-findings strong,.gv-v144-findings span{display:block}.gv-v144-findings span{margin-top:4px;color:var(--gv-muted,#737b83);font-size:max(14px,.9em);line-height:1.55}.gv-v144-findings code{white-space:normal;overflow-wrap:anywhere}.gv-v144-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:4px}.gv-v144-checks>article{min-width:0;border:1px solid var(--gv-border,#e1e4e6);border-radius:10px;padding:14px;background:var(--gv-surface,#fff)}.gv-v144-checks>article.is-pass{background:rgba(68,116,85,.045)}.gv-v144-checks>article.is-blocked{background:rgba(161,118,49,.07)}.gv-v144-checks>article.is-fail{background:rgba(157,61,61,.07)}.gv-v144-check-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.gv-v144-check-head>div{min-width:0}.gv-v144-check-head span{display:block;color:var(--gv-muted,#737b83);font-size:max(14px,.86em);letter-spacing:.07em}.gv-v144-check-head strong{display:block;margin-top:4px;overflow-wrap:anywhere}.gv-v144-check-head b{flex:0 0 auto;font-size:max(14px,.86em)}.gv-v144-checks p{margin:10px 0 0;color:var(--gv-muted,#66717b);line-height:1.58;font-size:max(14px,.92em)}.gv-v144-checks small{display:block;margin-top:9px;padding-top:9px;border-top:1px solid var(--gv-border,#e1e4e6);color:var(--gv-muted,#66717b);line-height:1.55;font-size:max(14px,.9em)}.gv-v144-guard{margin-top:16px}html[data-view="accessible"] :is(.gv-v144-bridge-list span,.gv-v144-bridge-list strong,.gv-v144-runtime-list span,.gv-v144-runtime-list strong,.gv-v144-findings span,.gv-v144-check-head span,.gv-v144-check-head b,.gv-v144-checks p,.gv-v144-checks small){font-size:max(17px,1em)}
@media(max-width:980px){.gv-v144-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v144-checks{grid-template-columns:1fr}}
@media(max-width:820px){.gv-v144-bridge,.gv-v144-runtime{grid-template-columns:1fr}}
@media(max-width:620px){.gv-v144-metrics{grid-template-columns:1fr}.gv-v144-bridge-list>div,.gv-v144-runtime-list>div{flex-direction:column;gap:4px}.gv-v144-bridge-list strong,.gv-v144-runtime-list strong{text-align:left}.gv-v144-check-head{gap:8px}.gv-v144-hero .gv-hero-actions{width:100%;align-items:stretch}.gv-v144-hero .gv-hero-actions .gv-btn{width:100%}}

/* V1.45 · Crew Write Design Gate & Constraint Preflight */
.gv-lang-en{display:none!important}html[data-lang="en"] .gv-lang-ko{display:none!important}html[data-lang="en"] .gv-lang-en{display:initial!important}.gv-lang-ko,.gv-lang-en{white-space:normal}
.gv-v145-hero{margin-bottom:18px}.gv-v145-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.gv-v145-intro{margin-bottom:14px}.gv-v145-top-grid,.gv-v145-contract-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.gv-v145-scan-list,.gv-v145-contract-lines{display:grid;gap:0;margin-top:8px}.gv-v145-scan-list>div,.gv-v145-contract-lines>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--gv-line,#e6e9ec);font-size:max(14px,1em)}.gv-v145-scan-list>div:last-child,.gv-v145-contract-lines>div:last-child{border-bottom:0}.gv-v145-scan-list strong,.gv-v145-contract-lines strong{font-variant-numeric:tabular-nums;text-align:right}.gv-v145-note{font-size:max(14px,1em);line-height:1.65;color:var(--gv-muted,#69737d);margin:12px 0 0}.gv-v145-policy{display:grid;gap:8px;margin-top:10px}.gv-v145-policy>div{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start;padding:10px 0;border-bottom:1px solid var(--gv-line,#e6e9ec)}.gv-v145-policy>div:last-child{border-bottom:0}.gv-v145-policy b{font-size:12px;letter-spacing:.08em;color:var(--gv-muted,#7a848e)}.gv-v145-policy p{margin:0;display:grid;gap:3px}.gv-v145-policy strong{font-size:max(14px,1em)}.gv-v145-policy span{font-size:max(14px,1em);color:var(--gv-muted,#69737d);line-height:1.5}.gv-v145-check-panel{margin-bottom:14px}.gv-v145-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.gv-v145-checks>article{border:1px solid var(--gv-line,#e1e5e8);border-radius:10px;padding:14px;background:rgba(255,255,255,.72);min-width:0}.gv-v145-checks>article.is-pass{border-color:rgba(72,117,94,.25)}.gv-v145-checks>article.is-blocked,.gv-v145-checks>article.is-fail{border-color:rgba(152,92,79,.28)}.gv-v145-check-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.gv-v145-check-head>div{display:grid;gap:4px;min-width:0}.gv-v145-check-head span{font-size:max(12px,.86em);letter-spacing:.08em;color:var(--gv-muted,#7a848e)}.gv-v145-check-head strong{font-size:max(15px,1em);line-height:1.45}.gv-v145-check-head b{font-size:max(12px,.86em);letter-spacing:.06em}.gv-v145-checks article>p{font-size:max(14px,1em);line-height:1.65;color:var(--gv-muted,#616c76);margin:10px 0}.gv-v145-checks article>small{display:block;font-size:max(14px,1em);line-height:1.6}.gv-v145-contract-list{margin:8px 0 0;padding-left:20px;display:grid;gap:9px;font-size:max(14px,1em);line-height:1.6}.gv-v145-guard{margin-top:2px}.gv-v145-guard p{font-size:max(14px,1em);line-height:1.7}
html[data-view="large"] .gv-v145-note,html[data-view="large"] .gv-v145-checks article>p,html[data-view="large"] .gv-v145-checks article>small,html[data-view="large"] .gv-v145-scan-list>div,html[data-view="large"] .gv-v145-contract-lines>div,html[data-view="large"] .gv-v145-policy span,html[data-view="large"] .gv-v145-contract-list{font-size:max(17px,1em)}
@media(max-width:1100px){.gv-v145-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v145-checks{grid-template-columns:1fr}}
@media(max-width:720px){.gv-v145-metrics,.gv-v145-top-grid,.gv-v145-contract-grid{grid-template-columns:1fr}.gv-v145-checks{padding:10px}.gv-v145-scan-list>div,.gv-v145-contract-lines>div{align-items:flex-start}.gv-v145-check-head{gap:8px}.gv-v145-check-head b{flex:0 0 auto}.gv-v145-policy>div{grid-template-columns:26px minmax(0,1fr)}}
/* V1.45 readability floor correction */
.gv-v145-policy b,.gv-v145-check-head span,.gv-v145-check-head b{font-size:max(14px,.86em)}
html[data-view="accessible"] .gv-v145-policy b,html[data-view="accessible"] .gv-v145-check-head span,html[data-view="accessible"] .gv-v145-check-head b,html[data-view="accessible"] .gv-v145-note,html[data-view="accessible"] .gv-v145-checks article>p,html[data-view="accessible"] .gv-v145-checks article>small,html[data-view="accessible"] .gv-v145-scan-list>div,html[data-view="accessible"] .gv-v145-contract-lines>div,html[data-view="accessible"] .gv-v145-policy span,html[data-view="accessible"] .gv-v145-contract-list{font-size:max(17px,1em)}

/* V1.46 · Crew Constraint Evidence Closure & Manual Migration Readiness */
.gv-v146-hero{margin-bottom:14px}.gv-v146-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:10px;overflow:hidden;background:var(--gv-surface);margin-bottom:14px}.gv-v146-metrics .gv-metric-card{border-radius:0;border:0;border-right:1px solid var(--gv-line-soft)}.gv-v146-metrics .gv-metric-card:last-child{border-right:0}.gv-v146-hash{font-size:14px!important;word-break:break-all}.gv-v146-intro{margin-bottom:14px}.gv-v146-panel{margin-bottom:14px}.gv-v146-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.gv-v146-checks article{border:1px solid var(--gv-line);border-radius:9px;padding:14px 15px;background:var(--gv-surface);min-width:0}.gv-v146-checks article.is-clean{border-color:#d6e1d9;background:#f6f9f7}.gv-v146-checks article.is-dirty{border-color:#ead5d2;background:#fbf5f4}.gv-v146-checks article.is-stale{border-color:#e5dcc8;background:#faf7f0}.gv-v146-checks article.is-blocked{border-color:#e1d9cf;background:#faf7f4}.gv-v146-check-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.gv-v146-check-head strong{font-size:13px;color:var(--gv-ink)}.gv-v146-check-head b{font-size:10px;letter-spacing:.06em;color:var(--gv-muted);white-space:nowrap}.gv-v146-checks article>p{margin:9px 0 0;font-size:12px;line-height:1.62;color:var(--gv-text)}.gv-v146-checks article>small{display:block;margin-top:10px;padding-top:9px;border-top:1px solid var(--gv-line-soft);font-size:12px;line-height:1.62;color:var(--gv-muted)}.gv-v146-bottom{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gv-v146-lines{display:grid;margin-top:8px}.gv-v146-lines>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft);font-size:12px}.gv-v146-lines>div:last-child{border-bottom:0}.gv-v146-lines span{color:var(--gv-muted)}.gv-v146-lines strong{color:var(--gv-ink);text-align:right}.gv-v146-guard{margin-top:14px}
html[data-view="comfort"] .gv-v146-check-head strong,html[data-view="comfort"] .gv-v146-check-head b,html[data-view="comfort"] .gv-v146-checks article>p,html[data-view="comfort"] .gv-v146-checks article>small,html[data-view="comfort"] .gv-v146-lines>div{font-size:max(14px,1em)}
html[data-view="large"] .gv-v146-check-head strong,html[data-view="large"] .gv-v146-check-head b,html[data-view="large"] .gv-v146-checks article>p,html[data-view="large"] .gv-v146-checks article>small,html[data-view="large"] .gv-v146-lines>div{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v146-check-head strong,html[data-view="accessible"] .gv-v146-check-head b,html[data-view="accessible"] .gv-v146-checks article>p,html[data-view="accessible"] .gv-v146-checks article>small,html[data-view="accessible"] .gv-v146-lines>div{font-size:max(17px,1em)}
@media(max-width:1180px){.gv-v146-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v146-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-v146-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:760px){.gv-v146-checks,.gv-v146-bottom{grid-template-columns:1fr}.gv-v146-checks{padding:9px}.gv-v146-check-head{gap:8px}.gv-v146-check-head b{white-space:normal;text-align:right}}
@media(max-width:520px){.gv-v146-metrics{grid-template-columns:1fr}.gv-v146-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v146-metrics .gv-metric-card:last-child{border-bottom:0}.gv-v146-lines>div{align-items:flex-start;flex-direction:column;gap:4px}.gv-v146-lines strong{text-align:left;word-break:break-word}}

/* V1.47 · Crew Constraint Manual Migration Draft Review Gate */
.gv-v147-hero{margin-bottom:14px}.gv-v147-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:10px;overflow:hidden;background:var(--gv-surface);margin-bottom:14px}.gv-v147-metrics .gv-metric-card{border-radius:0;border:0;border-right:1px solid var(--gv-line-soft)}.gv-v147-metrics .gv-metric-card:last-child{border-right:0}.gv-v147-hash{font-size:14px!important;word-break:break-all}.gv-v147-intro{margin-bottom:14px}.gv-v147-basis,.gv-v147-bottom{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.gv-v147-lines{display:grid;margin-top:8px}.gv-v147-lines>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft);font-size:12px}.gv-v147-lines>div:last-child{border-bottom:0}.gv-v147-lines span{color:var(--gv-muted)}.gv-v147-lines strong{color:var(--gv-ink);text-align:right}.gv-v147-panel{margin-bottom:14px}.gv-v147-plan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}.gv-v147-plan article{min-width:0;border:1px solid var(--gv-line);border-radius:9px;padding:14px;background:var(--gv-surface)}.gv-v147-step{display:flex;gap:12px;align-items:flex-start}.gv-v147-step>b{display:grid;place-items:center;width:34px;height:30px;border:1px solid var(--gv-line);border-radius:7px;font-size:11px;color:var(--gv-muted);flex:0 0 auto}.gv-v147-step>div{display:grid;gap:3px;min-width:0}.gv-v147-step strong{font-size:13px;line-height:1.45;word-break:break-word}.gv-v147-step span{font-size:11px;color:var(--gv-muted);letter-spacing:.02em}.gv-v147-plan article>p{font-size:12px;line-height:1.62;color:var(--gv-text);margin:10px 0}.gv-v147-list{margin:10px 0 0;padding-left:20px;display:grid;gap:9px;font-size:12px;line-height:1.62;color:var(--gv-text)}.gv-v147-guard{margin-top:2px}
html[data-view="comfort"] .gv-v147-lines>div,html[data-view="comfort"] .gv-v147-step strong,html[data-view="comfort"] .gv-v147-step span,html[data-view="comfort"] .gv-v147-plan article>p,html[data-view="comfort"] .gv-v147-list{font-size:max(14px,1em)}
html[data-view="large"] .gv-v147-lines>div,html[data-view="large"] .gv-v147-step strong,html[data-view="large"] .gv-v147-step span,html[data-view="large"] .gv-v147-plan article>p,html[data-view="large"] .gv-v147-list{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v147-lines>div,html[data-view="accessible"] .gv-v147-step strong,html[data-view="accessible"] .gv-v147-step span,html[data-view="accessible"] .gv-v147-plan article>p,html[data-view="accessible"] .gv-v147-list{font-size:max(17px,1em)}
@media(max-width:1180px){.gv-v147-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v147-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-v147-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-v147-plan{grid-template-columns:1fr}}
@media(max-width:760px){.gv-v147-basis,.gv-v147-bottom{grid-template-columns:1fr}.gv-v147-plan{padding:9px}.gv-v147-lines>div{align-items:flex-start;flex-direction:column;gap:4px}.gv-v147-lines strong{text-align:left;word-break:break-word}}
@media(max-width:520px){.gv-v147-metrics{grid-template-columns:1fr}.gv-v147-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v147-metrics .gv-metric-card:last-child{border-bottom:0}}

/* V1.48 · Crew Constraint Manual Migration Release Authorization */
.gv-v148-hero{margin-bottom:14px}.gv-v148-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:10px;overflow:hidden;background:var(--gv-surface);margin-bottom:14px}.gv-v148-metrics .gv-metric-card{border-radius:0;border:0;border-right:1px solid var(--gv-line-soft)}.gv-v148-metrics .gv-metric-card:last-child{border-right:0}.gv-v148-intro{margin-bottom:14px}.gv-v148-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.gv-v148-lines{display:grid;margin-top:8px}.gv-v148-lines>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft);font-size:12px}.gv-v148-lines>div:last-child{border-bottom:0}.gv-v148-lines span{color:var(--gv-muted)}.gv-v148-lines strong{color:var(--gv-ink);text-align:right;word-break:break-word}.gv-v148-panel{margin-bottom:14px}.gv-v148-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}.gv-v148-checks article{border:1px solid var(--gv-line);border-radius:9px;padding:14px 15px;background:var(--gv-surface);min-width:0}.gv-v148-checks strong{display:block;font-size:12px;letter-spacing:.04em;color:var(--gv-ink)}.gv-v148-checks p{margin:8px 0 0;font-size:12px;line-height:1.65;color:var(--gv-text)}.gv-v148-guard{margin-top:2px}
html[data-view="comfort"] .gv-v148-lines>div,html[data-view="comfort"] .gv-v148-checks strong,html[data-view="comfort"] .gv-v148-checks p{font-size:max(14px,1em)}
html[data-view="large"] .gv-v148-lines>div,html[data-view="large"] .gv-v148-checks strong,html[data-view="large"] .gv-v148-checks p{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v148-lines>div,html[data-view="accessible"] .gv-v148-checks strong,html[data-view="accessible"] .gv-v148-checks p{font-size:max(17px,1em)}
@media(max-width:1180px){.gv-v148-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v148-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-v148-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:760px){.gv-v148-grid,.gv-v148-checks{grid-template-columns:1fr}.gv-v148-checks{padding:9px}.gv-v148-lines>div{align-items:flex-start;flex-direction:column;gap:4px}.gv-v148-lines strong{text-align:left}}
@media(max-width:520px){.gv-v148-metrics{grid-template-columns:1fr}.gv-v148-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v148-metrics .gv-metric-card:last-child{border-bottom:0}}
/* V1.48 accessibility closeout: release-authorization guardrail must remain readable in every density mode. */
.gv-v148-guard span{font-size:12px;line-height:1.45;letter-spacing:.09em}
.gv-v148-guard h2{font-size:14px;line-height:1.45}
.gv-v148-guard p{font-size:13px;line-height:1.65}
html[data-view="comfort"] .gv-v148-guard span,html[data-view="comfort"] .gv-v148-guard h2,html[data-view="comfort"] .gv-v148-guard p{font-size:max(14px,1em)}
html[data-view="large"] .gv-v148-guard span,html[data-view="large"] .gv-v148-guard h2,html[data-view="large"] .gv-v148-guard p{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v148-guard span,html[data-view="accessible"] .gv-v148-guard h2,html[data-view="accessible"] .gv-v148-guard p{font-size:max(17px,1em)}
.gv-v148-hero .gv-btn,.gv-v148-guard .gv-state-icon{font-size:14px}
html[data-view="large"] .gv-v148-hero .gv-btn,html[data-view="large"] .gv-v148-guard .gv-state-icon{font-size:15.5px}
html[data-view="accessible"] .gv-v148-hero .gv-btn,html[data-view="accessible"] .gv-v148-guard .gv-state-icon{font-size:17px}

/* V1.49 · Crew Constraint Post-Migration Execution Evidence & Verification Gate */
.gv-v149-hero{margin-bottom:14px}.gv-v149-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:10px;overflow:hidden;background:var(--gv-surface);margin-bottom:14px}.gv-v149-metrics .gv-metric-card{border-radius:0;border:0;border-right:1px solid var(--gv-line-soft)}.gv-v149-metrics .gv-metric-card:last-child{border-right:0}.gv-v149-intro{margin-bottom:14px}.gv-v149-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.gv-v149-lines{display:grid;margin-top:8px}.gv-v149-lines>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft);font-size:14px}.gv-v149-lines>div:last-child{border-bottom:0}.gv-v149-lines span{color:var(--gv-muted)}.gv-v149-lines strong{color:var(--gv-ink);text-align:right;word-break:break-word}.gv-v149-panel{margin-bottom:14px}.gv-v149-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}.gv-v149-checks article{border:1px solid var(--gv-line);border-radius:9px;padding:14px 15px;background:var(--gv-surface);min-width:0}.gv-v149-checks strong{display:block;font-size:14px;letter-spacing:.04em;color:var(--gv-ink)}.gv-v149-checks p{margin:8px 0 0;font-size:14px;line-height:1.65;color:var(--gv-text)}.gv-v149-guard{margin-top:2px}.gv-v149-guard span,.gv-v149-guard h2,.gv-v149-guard p{font-size:14px;line-height:1.6}.gv-v149-hero .gv-btn,.gv-v149-guard .gv-state-icon{font-size:14px}
html[data-view="large"] .gv-v149-lines>div,html[data-view="large"] .gv-v149-checks strong,html[data-view="large"] .gv-v149-checks p,html[data-view="large"] .gv-v149-guard span,html[data-view="large"] .gv-v149-guard h2,html[data-view="large"] .gv-v149-guard p,html[data-view="large"] .gv-v149-hero .gv-btn,html[data-view="large"] .gv-v149-guard .gv-state-icon{font-size:max(15.5px,1em)}
html[data-view="accessible"] .gv-v149-lines>div,html[data-view="accessible"] .gv-v149-checks strong,html[data-view="accessible"] .gv-v149-checks p,html[data-view="accessible"] .gv-v149-guard span,html[data-view="accessible"] .gv-v149-guard h2,html[data-view="accessible"] .gv-v149-guard p,html[data-view="accessible"] .gv-v149-hero .gv-btn,html[data-view="accessible"] .gv-v149-guard .gv-state-icon{font-size:max(17px,1em)}
@media(max-width:1180px){.gv-v149-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v149-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-v149-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:760px){.gv-v149-grid,.gv-v149-checks{grid-template-columns:1fr}.gv-v149-checks{padding:9px}.gv-v149-lines>div{align-items:flex-start;flex-direction:column;gap:4px}.gv-v149-lines strong{text-align:left}}
@media(max-width:520px){.gv-v149-metrics{grid-template-columns:1fr}.gv-v149-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v149-metrics .gv-metric-card:last-child{border-bottom:0}}

/* V1.50 · Crew Canonical Write Promotion Readiness & Non-Production Pilot Design Gate */
.gv-v150-hero{margin-bottom:14px}.gv-v150-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:10px;overflow:hidden;background:var(--gv-surface);margin-bottom:14px}.gv-v150-metrics .gv-metric-card{border-radius:0;border:0;border-right:1px solid var(--gv-line-soft)}.gv-v150-metrics .gv-metric-card:last-child{border-right:0}.gv-v150-intro,.gv-v150-panel{margin-bottom:14px}.gv-v150-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.gv-v150-grid>.gv-card{min-width:0}.gv-v150-lines{display:grid;margin-top:8px}.gv-v150-lines>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft);font-size:14px}.gv-v150-lines>div:last-child{border-bottom:0}.gv-v150-lines span{color:var(--gv-muted)}.gv-v150-lines strong{color:var(--gv-ink);text-align:right;word-break:break-word}.gv-v150-lines strong.is-pass{color:var(--gv-success,#426e54)}.gv-v150-lines strong.is-block{color:var(--gv-danger,#9d3d3d)}.gv-v150-contract-grid,.gv-v150-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}.gv-v150-contract-grid article,.gv-v150-checks article{border:1px solid var(--gv-line);border-radius:9px;padding:14px 15px;background:var(--gv-surface);min-width:0}.gv-v150-contract-grid strong,.gv-v150-checks strong{display:block;font-size:14px;letter-spacing:.025em;color:var(--gv-ink)}.gv-v150-contract-grid p,.gv-v150-checks p{margin:8px 0 0;font-size:14px;line-height:1.65;color:var(--gv-text);overflow-wrap:anywhere}.gv-v150-contract-grid small{display:block;margin-top:8px;font-size:14px;line-height:1.55;color:var(--gv-muted)}.gv-v150-rule-list{display:grid;margin-top:8px}.gv-v150-rule-list>div{display:grid;grid-template-columns:minmax(170px,.85fr) minmax(0,1.15fr);gap:14px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft);font-size:14px;line-height:1.55}.gv-v150-rule-list>div:last-child{border-bottom:0}.gv-v150-rule-list b{color:var(--gv-ink);overflow-wrap:anywhere}.gv-v150-rule-list span{color:var(--gv-muted);text-align:right;overflow-wrap:anywhere}.gv-v150-guard{margin-top:2px}.gv-v150-guard span,.gv-v150-guard h2,.gv-v150-guard p,.gv-v150-hero .gv-btn,.gv-v150-guard .gv-state-icon{font-size:14px;line-height:1.6}
html[data-view="large"] :is(.gv-v150-lines>div,.gv-v150-contract-grid strong,.gv-v150-contract-grid p,.gv-v150-contract-grid small,.gv-v150-checks strong,.gv-v150-checks p,.gv-v150-rule-list>div,.gv-v150-guard span,.gv-v150-guard h2,.gv-v150-guard p,.gv-v150-hero .gv-btn,.gv-v150-guard .gv-state-icon){font-size:max(15.5px,1em)}
html[data-view="accessible"] :is(.gv-v150-lines>div,.gv-v150-contract-grid strong,.gv-v150-contract-grid p,.gv-v150-contract-grid small,.gv-v150-checks strong,.gv-v150-checks p,.gv-v150-rule-list>div,.gv-v150-guard span,.gv-v150-guard h2,.gv-v150-guard p,.gv-v150-hero .gv-btn,.gv-v150-guard .gv-state-icon){font-size:max(17px,1em)}
@media(max-width:1180px){.gv-v150-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v150-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-v150-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}}
@media(max-width:820px){.gv-v150-grid,.gv-v150-contract-grid,.gv-v150-checks{grid-template-columns:1fr}.gv-v150-contract-grid,.gv-v150-checks{padding:9px}.gv-v150-lines>div{align-items:flex-start;flex-direction:column;gap:4px}.gv-v150-lines strong{text-align:left}.gv-v150-rule-list>div{grid-template-columns:1fr;gap:4px}.gv-v150-rule-list span{text-align:left}}
@media(max-width:520px){.gv-v150-metrics{grid-template-columns:1fr}.gv-v150-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v150-metrics .gv-metric-card:last-child{border-bottom:0}.gv-v150-hero .gv-hero-actions{width:100%;align-items:stretch}.gv-v150-hero .gv-hero-actions .gv-btn{width:100%}}
/* V1.50 browser-QA closeout: prevent long metric values from colliding at enlarged text sizes. */
.gv-v150-metrics .gv-metric-card{min-width:0}.gv-v150-metrics .gv-metric-value{min-width:0;overflow-wrap:anywhere;word-break:break-word;line-height:1.08}
html[data-view="accessible"] .gv-v150-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
html[data-view="accessible"] .gv-v150-metrics .gv-metric-card{border-right:1px solid var(--gv-line-soft);border-bottom:1px solid var(--gv-line-soft)}
html[data-view="accessible"] .gv-v150-metrics .gv-metric-card:nth-child(2n){border-right:0}
html[data-view="accessible"] .gv-v150-metrics .gv-metric-card:nth-last-child(-n+2){border-bottom:0}
@media(max-width:520px){html[data-view="accessible"] .gv-v150-metrics{grid-template-columns:1fr}html[data-view="accessible"] .gv-v150-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}html[data-view="accessible"] .gv-v150-metrics .gv-metric-card:last-child{border-bottom:0}}

/* V1.51 · Crew Non-Production Pilot Infrastructure Verification & Release Authorization */
.gv-v151-hero{margin-bottom:14px}.gv-v151-manual,.gv-v151-intro,.gv-v151-panel{margin-bottom:14px}.gv-v151-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:10px;overflow:hidden;background:var(--gv-surface);margin-bottom:14px}.gv-v151-metrics .gv-metric-card{min-width:0;border-radius:0;border:0;border-right:1px solid var(--gv-line-soft)}.gv-v151-metrics .gv-metric-card:last-child{border-right:0}.gv-v151-metrics .gv-metric-value{min-width:0;overflow-wrap:anywhere;word-break:break-word;line-height:1.08}.gv-v151-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.gv-v151-grid>.gv-card{min-width:0}.gv-v151-lines{display:grid;margin-top:8px}.gv-v151-lines>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft);font-size:14px}.gv-v151-lines>div:last-child{border-bottom:0}.gv-v151-lines span{color:var(--gv-muted)}.gv-v151-lines strong{color:var(--gv-ink);text-align:right;overflow-wrap:anywhere}.gv-v151-lines strong.is-pass{color:var(--gv-success,#426e54)}.gv-v151-lines strong.is-block{color:var(--gv-danger,#9d3d3d)}.gv-v151-contract-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}.gv-v151-contract-grid article{border:1px solid var(--gv-line);border-radius:9px;padding:14px 15px;background:var(--gv-surface);min-width:0}.gv-v151-contract-grid strong{display:block;font-size:14px;color:var(--gv-ink)}.gv-v151-contract-grid p{margin:8px 0 0;font-size:14px;line-height:1.65;color:var(--gv-text);overflow-wrap:anywhere}.gv-v151-actions .gv-field{margin-bottom:12px}.gv-v151-status{min-height:24px;font-size:14px;line-height:1.6;color:var(--gv-muted)}.gv-v151-list{display:grid;gap:10px;padding:12px}.gv-v151-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;border:1px solid var(--gv-line);border-radius:9px;padding:13px 14px;background:var(--gv-surface)}.gv-v151-row>div:first-child{display:grid;grid-template-columns:auto auto 1fr;gap:9px;align-items:center;min-width:0}.gv-v151-row small{color:var(--gv-muted);overflow-wrap:anywhere}.gv-v151-row-meta{display:flex;gap:12px;color:var(--gv-muted);font-size:14px}.gv-v151-review{display:flex;gap:8px;align-items:center}.gv-v151-review input{min-width:180px}.gv-v151-guard span,.gv-v151-guard h2,.gv-v151-guard p,.gv-v151-hero .gv-btn,.gv-v151-guard .gv-state-icon{font-size:14px;line-height:1.6}
html[data-view="large"] :is(.gv-v151-lines>div,.gv-v151-contract-grid strong,.gv-v151-contract-grid p,.gv-v151-row-meta,.gv-v151-status,.gv-v151-guard span,.gv-v151-guard h2,.gv-v151-guard p,.gv-v151-hero .gv-btn,.gv-v151-guard .gv-state-icon){font-size:max(15.5px,1em)}
html[data-view="accessible"] :is(.gv-v151-lines>div,.gv-v151-contract-grid strong,.gv-v151-contract-grid p,.gv-v151-row-meta,.gv-v151-status,.gv-v151-guard span,.gv-v151-guard h2,.gv-v151-guard p,.gv-v151-hero .gv-btn,.gv-v151-guard .gv-state-icon){font-size:max(17px,1em)}
@media(max-width:1180px){.gv-v151-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v151-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-v151-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-v151-contract-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v151-row{grid-template-columns:1fr}.gv-v151-row-meta,.gv-v151-review{flex-wrap:wrap}}
html[data-view="accessible"] .gv-v151-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:820px){.gv-v151-grid,.gv-v151-contract-grid{grid-template-columns:1fr}.gv-v151-lines>div{align-items:flex-start;flex-direction:column;gap:4px}.gv-v151-lines strong{text-align:left}.gv-v151-review{align-items:stretch;flex-direction:column}.gv-v151-review input{min-width:0;width:100%}}
@media(max-width:520px){.gv-v151-metrics,html[data-view="accessible"] .gv-v151-metrics{grid-template-columns:1fr}.gv-v151-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v151-metrics .gv-metric-card:last-child{border-bottom:0}.gv-v151-contract-grid,.gv-v151-list{padding:9px}.gv-v151-row>div:first-child{grid-template-columns:1fr}.gv-v151-hero .gv-hero-actions{width:100%;align-items:stretch}.gv-v151-hero .gv-hero-actions .gv-btn{width:100%}}
/* V1.51 readability closeout: all newly introduced supporting text stays at 14px+ in normal mode. */
:is(.gv-v151-hero,.gv-v151-metrics,.gv-v151-intro,.gv-v151-grid,.gv-v151-panel,.gv-v151-manual,.gv-v151-guard) :is(.gv-eyebrow,.gv-chip,.gv-metric-label,.gv-metric-foot,small,p,span,label,input,button,a){font-size:max(14px,1em)}
html[data-view="accessible"] :is(.gv-v151-hero,.gv-v151-metrics,.gv-v151-intro,.gv-v151-grid,.gv-v151-panel,.gv-v151-manual,.gv-v151-guard) :is(.gv-eyebrow,.gv-chip,.gv-metric-label,.gv-metric-foot,small,p,span,label,input,button,a){font-size:max(17px,1em)}

/* V1.52 · Crew Non-Production Canonical Create One-Shot Pilot */
.gv-v152-hero{margin-bottom:14px}.gv-v152-intro,.gv-v152-boundary,.gv-v152-form-card,.gv-v152-recent{margin-bottom:14px}.gv-v152-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--gv-line);border-radius:10px;overflow:hidden;background:var(--gv-surface);margin-bottom:14px}.gv-v152-metrics .gv-metric-card{min-width:0;border-radius:0;border:0;border-right:1px solid var(--gv-line-soft)}.gv-v152-metrics .gv-metric-card:last-child{border-right:0}.gv-v152-metrics .gv-metric-value{min-width:0;overflow-wrap:anywhere;word-break:break-word;line-height:1.08}.gv-v152-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.gv-v152-grid>.gv-card{min-width:0}.gv-v152-lines{display:grid;margin-top:8px}.gv-v152-lines>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--gv-line-soft);font-size:14px}.gv-v152-lines>div:last-child{border-bottom:0}.gv-v152-lines span{color:var(--gv-muted)}.gv-v152-lines strong{text-align:right;overflow-wrap:anywhere}.gv-v152-lines strong.is-pass{color:var(--gv-success,#426e54)}.gv-v152-lines strong.is-block{color:var(--gv-danger,#9d3d3d)}.gv-v152-steps{display:grid;gap:10px;margin:12px 0 0;padding-left:24px}.gv-v152-steps li{font-size:14px;line-height:1.6;color:var(--gv-text)}.gv-v152-contract-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}.gv-v152-contract-grid article{border:1px solid var(--gv-line);border-radius:9px;padding:14px 15px;background:var(--gv-surface);min-width:0}.gv-v152-contract-grid strong{display:block;font-size:14px;color:var(--gv-ink)}.gv-v152-contract-grid p{margin:8px 0 0;font-size:14px;line-height:1.6;color:var(--gv-text);overflow-wrap:anywhere}.gv-v152-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px}.gv-v152-form .gv-field{min-width:0}.gv-v152-wide{grid-column:1/-1}.gv-v152-execute{display:flex;align-items:center;gap:14px;padding:0 12px 14px}.gv-v152-status{min-height:24px;margin:0;font-size:14px;line-height:1.6;color:var(--gv-muted)}.gv-v152-status.is-error{color:var(--gv-danger,#9d3d3d)}.gv-v152-status.is-success{color:var(--gv-success,#426e54)}.gv-v152-list{display:grid;gap:10px;padding:12px}.gv-v152-list article{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);gap:14px;align-items:center;border:1px solid var(--gv-line);border-radius:9px;padding:13px 14px;background:var(--gv-surface)}.gv-v152-list article>div:first-child{display:grid;grid-template-columns:auto auto 1fr;gap:9px;align-items:center;min-width:0}.gv-v152-list article>div:last-child{display:grid;gap:5px}.gv-v152-list small,.gv-v152-list article>div:last-child span{color:var(--gv-muted)}.gv-v152-list strong{overflow-wrap:anywhere}.gv-v152-guard span,.gv-v152-guard h2,.gv-v152-guard p,.gv-v152-hero .gv-btn,.gv-v152-guard .gv-state-icon{font-size:14px;line-height:1.6}
:is(.gv-v152-hero,.gv-v152-metrics,.gv-v152-intro,.gv-v152-grid,.gv-v152-boundary,.gv-v152-form-card,.gv-v152-recent,.gv-v152-guard) :is(.gv-eyebrow,.gv-chip,.gv-metric-label,.gv-metric-foot,small,p,span,label,input,button,a,li){font-size:max(14px,1em)}
html[data-view="large"] :is(.gv-v152-lines>div,.gv-v152-contract-grid strong,.gv-v152-contract-grid p,.gv-v152-status,.gv-v152-steps li,.gv-v152-guard span,.gv-v152-guard h2,.gv-v152-guard p,.gv-v152-hero .gv-btn){font-size:max(15.5px,1em)}
html[data-view="accessible"] :is(.gv-v152-hero,.gv-v152-metrics,.gv-v152-intro,.gv-v152-grid,.gv-v152-boundary,.gv-v152-form-card,.gv-v152-recent,.gv-v152-guard) :is(.gv-eyebrow,.gv-chip,.gv-metric-label,.gv-metric-foot,small,p,span,label,input,button,a,li,strong){font-size:max(17px,1em)}
html[data-view="accessible"] .gv-v152-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-view="accessible"] .gv-v152-metrics .gv-metric-card{border-right:1px solid var(--gv-line-soft);border-bottom:1px solid var(--gv-line-soft)}html[data-view="accessible"] .gv-v152-metrics .gv-metric-card:nth-child(2n){border-right:0}html[data-view="accessible"] .gv-v152-metrics .gv-metric-card:nth-last-child(-n+2){border-bottom:0}
@media(max-width:1180px){.gv-v152-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v152-metrics .gv-metric-card:nth-child(2){border-right:0}.gv-v152-metrics .gv-metric-card:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-v152-contract-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-v152-list article{grid-template-columns:1fr}}
@media(max-width:820px){.gv-v152-grid,.gv-v152-contract-grid,.gv-v152-form{grid-template-columns:1fr}.gv-v152-wide{grid-column:auto}.gv-v152-lines>div{align-items:flex-start;flex-direction:column;gap:4px}.gv-v152-lines strong{text-align:left}.gv-v152-execute{align-items:stretch;flex-direction:column}.gv-v152-list article>div:first-child{grid-template-columns:1fr}.gv-v152-contract-grid,.gv-v152-list,.gv-v152-form{padding:9px}}
@media(max-width:520px){.gv-v152-metrics,html[data-view="accessible"] .gv-v152-metrics{grid-template-columns:1fr}.gv-v152-metrics .gv-metric-card,html[data-view="accessible"] .gv-v152-metrics .gv-metric-card{border-right:0;border-bottom:1px solid var(--gv-line-soft)}.gv-v152-metrics .gv-metric-card:last-child,html[data-view="accessible"] .gv-v152-metrics .gv-metric-card:last-child{border-bottom:0}.gv-v152-hero .gv-hero-actions{width:100%;align-items:stretch}.gv-v152-hero .gv-hero-actions .gv-btn{width:100%}.gv-v152-execute .gv-btn{width:100%}}
/* V1.52 browser-QA closeout: metric cards keep label/value/foot on separate rows, including Accessible view. */
.gv-v152-metrics .gv-metric-card{min-height:122px;padding:16px 18px;display:flex;flex-direction:column;justify-content:flex-start}
.gv-v152-metrics .gv-metric-label{display:block;line-height:1.35}
.gv-v152-metrics .gv-metric-value{display:block;margin-top:9px;font-size:24px;line-height:1.08!important}
.gv-v152-metrics .gv-metric-foot{display:block;margin-top:auto;padding-top:12px;line-height:1.5}
html[data-view="accessible"] .gv-v152-metrics .gv-metric-card{min-height:158px;padding:18px 20px}
html[data-view="accessible"] .gv-v152-metrics .gv-metric-value{font-size:30px!important;line-height:1.15!important}
@media(max-width:520px){.gv-v152-metrics .gv-metric-card,html[data-view="accessible"] .gv-v152-metrics .gv-metric-card{min-height:116px}}
html[data-view="accessible"] .gv-v152-guard h2{font-size:21px!important;line-height:1.45!important}
html[data-view="accessible"] .gv-v152-guard .gv-state-icon{font-size:17px!important;line-height:1!important}
.gv-casting-head-status{display:flex;gap:8px;align-items:center}.gv-casting-notice{margin:14px 0;padding:13px 15px;border:1px solid var(--line,#dfe3e6);border-radius:9px;background:#f8f9fa;color:#5e6870;font-size:12px;line-height:1.6}.gv-casting-notice[data-state="error"]{border-color:#e8c7c5;background:#fff7f6;color:#8f3d38}.gv-casting-notice[data-state="ok"]{border-color:#bcdcc8;background:#f5fbf7;color:#276743}.gv-casting-token{display:grid;grid-template-columns:minmax(210px,1fr) minmax(220px,2fr) auto;gap:12px;align-items:center;margin:14px 0;padding:14px;border:1px solid #bcdcc8;border-radius:9px;background:#f5fbf7}.gv-casting-token div{display:grid;gap:4px}.gv-casting-token strong{font-size:12px}.gv-casting-token small{font-size:10px;color:#65736b}.gv-casting-token input{width:100%;box-sizing:border-box;border:1px solid #cfd8d2;border-radius:7px;padding:10px;background:#fff;font:11px ui-monospace,monospace}.gv-casting-layout{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);gap:18px;align-items:start}.gv-casting-editor{display:grid;gap:13px;padding:16px;border:1px solid #dfe3e6;border-radius:10px;background:#fafbfb}.gv-casting-editor-head,.gv-casting-candidate-head,.gv-casting-list-head{display:flex;justify-content:space-between;gap:14px;align-items:center}.gv-casting-editor-head>div,.gv-casting-candidate-head>div{display:grid;gap:3px}.gv-casting-editor-head span,.gv-casting-candidate-head span,.gv-casting-list-head span{font-size:9px;letter-spacing:.12em;color:#899198}.gv-casting-editor-head strong{font-size:16px}.gv-casting-candidate-head small{font-size:10px;color:#737d84}.gv-casting-editor label{display:grid;gap:6px}.gv-casting-editor label>span{font-size:10px;font-weight:700;color:#68727a}.gv-casting-editor input,.gv-casting-editor select{width:100%;box-sizing:border-box;min-height:38px;border:1px solid #d9dee2;border-radius:7px;background:#fff;padding:8px 10px;color:#252b30;font:12px inherit}.gv-casting-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.gv-casting-candidates{display:grid;gap:8px}.gv-casting-candidate-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(110px,.55fr) auto;gap:8px;align-items:end;padding:10px;border:1px solid #e1e5e8;border-radius:8px;background:#fff}.gv-casting-candidate-row button{min-height:38px;border:1px solid #e0c9c7;border-radius:7px;background:#fff7f6;color:#94443d;padding:0 11px;cursor:pointer}.gv-casting-sessions{display:grid;gap:10px}.gv-casting-list-head{padding:3px 2px}.gv-casting-list-head strong{font-size:20px}.gv-casting-session-card{display:grid;gap:12px;padding:15px;border:1px solid #dfe3e6;border-radius:10px;background:#fff}.gv-casting-session-top{display:flex;justify-content:space-between;gap:12px}.gv-casting-session-top>div{display:grid;gap:3px}.gv-casting-session-top strong{font-size:14px}.gv-casting-session-top small{font:10px ui-monospace,monospace;color:#778087}.gv-casting-session-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.gv-casting-session-meta div{display:grid;gap:3px;padding:9px;background:#f7f8f9;border-radius:7px}.gv-casting-session-meta span{font-size:8px;letter-spacing:.1em;color:#899198}.gv-casting-session-meta strong{font-size:11px}.gv-casting-card-actions{display:flex;flex-wrap:wrap;gap:7px}.gv-casting-card-actions button{min-height:32px}.gv-casting-candidate-list{display:grid;gap:5px}.gv-casting-candidate-item{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;gap:9px;align-items:center;padding:8px 0;border-top:1px solid #edf0f2}.gv-casting-candidate-item>span{font-size:9px;color:#7a848b}.gv-casting-candidate-item>div{display:grid;gap:2px}.gv-casting-candidate-item strong{font-size:11px}.gv-casting-candidate-item small{font-size:9px;color:#7a848b}.gv-casting-decisions{display:flex;gap:4px}.gv-casting-decisions button{border:1px solid #dfe3e6;border-radius:999px;background:#fff;padding:5px 7px;font-size:8px;cursor:pointer}.gv-casting-decisions button.on{background:#242a2f;color:#fff;border-color:#242a2f}.gv-casting-empty{padding:26px;border:1px dashed #d7dce0;border-radius:9px;text-align:center;color:#7a848b;font-size:12px}@media(max-width:980px){.gv-casting-layout{grid-template-columns:1fr}.gv-casting-token{grid-template-columns:1fr}.gv-casting-session-meta{grid-template-columns:1fr 1fr}}@media(max-width:620px){.gv-casting-form-grid{grid-template-columns:1fr}.gv-casting-candidate-row{grid-template-columns:1fr}.gv-casting-session-meta{grid-template-columns:1fr}.gv-casting-candidate-item{grid-template-columns:1fr}.gv-casting-decisions{flex-wrap:wrap}}

/* =========================================================
   ADMIN UX FOUNDATION · Hub navigation / data trust / legibility
   ========================================================= */
:root{--gv-ops-caption:12px;--gv-ops-small:13px;--gv-ops-body:14px}
html[data-view="comfort"]{--gv-ops-caption:13px;--gv-ops-small:14px;--gv-ops-body:15px}
html[data-view="large"]{--gv-ops-caption:14.5px;--gv-ops-small:15.5px;--gv-ops-body:17px}
html[data-view="accessible"]{--gv-ops-caption:17px;--gv-ops-small:18px;--gv-ops-body:19px}

.gv-nav{gap:3px;padding-top:16px}
.gv-nav-label{margin-top:4px;padding-top:10px;padding-bottom:6px;font-size:12px}
.gv-nav-label-bottom{margin-top:16px}
.gv-nav-hub{border:1px solid transparent;border-radius:9px}
.gv-nav-hub[open]{border-color:#E3E7EA;background:#FCFCFD}
.gv-nav-hub.active{border-color:#DDE2E5;background:#FDFDFE}
.gv-nav-hub>summary{list-style:none;min-height:48px;padding:7px 10px;display:flex;align-items:center;gap:11px;border-radius:8px;color:#525D66;cursor:pointer;user-select:none}
.gv-nav-hub>summary::-webkit-details-marker{display:none}
.gv-nav-hub>summary:hover{background:#EDF0F2;color:#272C31}
.gv-nav-hub-copy{min-width:0;display:flex;flex:1;flex-direction:column;line-height:1.3}
.gv-nav-hub-copy strong{font-size:14px;font-weight:680;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-nav-hub-copy small{margin-top:2px;font-size:12px;color:#818B94;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-nav-hub-arrow{flex:0 0 auto;font-size:18px;color:#8A939B;transform:rotate(0);transition:transform .14s ease}
.gv-nav-hub[open]>summary .gv-nav-hub-arrow{transform:rotate(90deg)}
.gv-nav-hub-items{display:grid;gap:2px;padding:2px 6px 7px 34px}
.gv-nav-subitem{height:38px;padding:0 9px;gap:9px;font-size:13px}
.gv-nav-subitem .gv-nav-icon{width:17px;height:17px}
.gv-nav-subitem .gv-nav-icon svg{width:16px;height:16px}
.gv-nav-subitem.active:before{left:-41px;height:20px}
.gv-nav-hub-link{min-height:52px;height:auto;padding-top:7px;padding-bottom:7px}
.gv-nav-hub-link.active:before{height:28px}

.gv-data-boundary{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:center;margin:0 0 14px;padding:15px 17px;border:1px solid #DDE2E5;border-radius:9px;background:#FAFBFB;color:#556068}
.gv-data-boundary-mark{width:40px;height:40px;display:grid;place-items:center;border:1px solid #D9DEE1;border-radius:50%;background:#FFF;color:#68737C}
.gv-data-boundary>div{min-width:0}.gv-data-boundary>div>span{display:block;font-size:var(--gv-ops-caption);font-weight:760;letter-spacing:.09em;color:#7E878E}.gv-data-boundary strong{display:block;margin-top:2px;font-size:var(--gv-ops-body);color:#343B41}.gv-data-boundary p{margin:3px 0 0;font-size:var(--gv-ops-small);line-height:1.55;color:#707A82}.gv-data-boundary small{display:block;margin-top:4px;font-size:var(--gv-ops-caption);color:#899198}.gv-data-boundary>em{font-style:normal;font-size:var(--gv-ops-caption);font-weight:720;letter-spacing:.06em;white-space:nowrap;color:#68727A}
.gv-data-boundary.is-live{border-color:#D7E3DC;background:#FAFCFB}.gv-data-boundary.is-live .gv-data-boundary-mark{border-color:#D7E3DC;color:#4F6A59}
.gv-data-boundary.is-prototype{border-style:dashed;border-color:#C9CFD4;background:#F6F7F8}.gv-data-boundary.is-prototype .gv-data-boundary-mark{background:#F0F2F3;color:#606A72}
.gv-data-boundary.is-unavailable{background:#F8F9FA;color:#69737B}
.gv-prototype-surface{position:relative;margin-top:14px;padding:14px;border:1px dashed #C9CFD4;border-radius:11px;background:#F4F6F7}
.gv-prototype-surface>.gv-data-boundary{margin-bottom:14px;background:#FFF}
.gv-prototype-surface .gv-prototype-divider{margin-top:4px}
button:disabled,[aria-disabled="true"]{cursor:not-allowed!important;opacity:.5}

.gv-main :is(.gv-live-domain,.gv-prototype-surface,.gv-calendar-layout,.gv-casting-foundation,.gv-task-layout,.gv-v125-quote-layout,.gv-v124-project-list-panel,.gv-v123-admin-grid,.gv-v123-client-layout) :is(th,small,label>span,button:not(.gv-icon-btn),[class*="-kicker"],[class*="-subtitle"],.gv-status,.gv-badge,.gv-live-state){
  font-size:var(--gv-ops-caption);line-height:1.45
}
.gv-main :is(.gv-live-domain,.gv-prototype-surface,.gv-calendar-layout,.gv-casting-foundation,.gv-task-layout,.gv-v125-quote-layout,.gv-v124-project-list-panel,.gv-v123-admin-grid,.gv-v123-client-layout) :is(td,p,input,select,textarea){
  font-size:var(--gv-ops-small);line-height:1.5
}

@media(max-width:1199px){
  .gv-nav-hub-copy,.gv-nav-hub-arrow{display:none}.gv-nav-hub>summary,.gv-nav-hub-link{justify-content:center;padding-left:0;padding-right:0}.gv-nav-hub-items{padding:2px 4px 7px}.gv-nav-subitem{justify-content:center;padding:0}.gv-nav-subitem .gv-nav-text{display:none}.gv-nav-subitem.active:before{left:-15px}
}
@media(max-width:767px){
  .gv-nav-hub-copy,.gv-nav-hub-arrow,.gv-nav-subitem .gv-nav-text{display:flex}.gv-nav-hub>summary,.gv-nav-hub-link{justify-content:flex-start;padding-left:10px;padding-right:10px}.gv-nav-hub-items{padding-left:34px}.gv-nav-subitem{justify-content:flex-start;padding:0 9px}.gv-data-boundary{grid-template-columns:36px minmax(0,1fr)}.gv-data-boundary-mark{width:34px;height:34px}.gv-data-boundary>em{grid-column:2}.gv-prototype-surface{padding:9px}
}

/* =========================================================
   ADMIN UX FOUNDATION · Work-surface legibility floor
   `.gv-main[data-surface]` separates the daily Operations environment from
   Governance and Developer screens. Operations text never falls back to the
   legacy 8-11px scale; Governance/Developer diagnostics keep their dense scale.
   ========================================================= */
.gv-main[data-surface="operations"] :is(th,small,legend,figcaption,label>span,.gv-eyebrow,.gv-count,.gv-status,.gv-badge,.gv-chip,.gv-live-state,[class*="-kicker"],[class*="-subtitle"],[class*="-caption"],[class*="-label"]){
  font-size:var(--gv-ops-caption);line-height:1.45
}
.gv-main[data-surface="operations"] :is(td,input,select,textarea,button:not(.gv-icon-btn),.gv-text-btn){
  font-size:var(--gv-ops-small);line-height:1.5
}
.gv-main[data-surface="operations"] :is(.gv-panel,.gv-card,.gv-drawer,.gv-modal,table) p{
  font-size:var(--gv-ops-small);line-height:1.55
}

/* QHD and FHD use the same responsive preset tokens; there is no page-level
   breakpoint that reintroduces a fixed content column. */

/* =========================================================
   PROJECT COCKPIT · operating state, attention signals, flow
   Every value rendered here is derived from canonical Project and Task data.
   Stages without a canonical read model are shown as not connected.
   ========================================================= */
.gv-project-cockpit-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;margin-bottom:16px;padding:22px 24px;border:1px solid #DDE2E5;border-radius:12px;background:#FCFCFD}
.gv-project-cockpit-identity{min-width:0}
.gv-project-cockpit-identity h1{margin:6px 0 0;font-size:28px;line-height:1.25;letter-spacing:-.01em}
.gv-project-cockpit-identity p{margin:6px 0 0;font-size:var(--gv-ops-body);color:#616C75}
.gv-project-cockpit-state{display:grid;justify-items:end;gap:12px}
.gv-project-cockpit-phase{display:grid;justify-items:end;gap:2px;padding:10px 14px;border:1px solid #DDE2E5;border-radius:10px;background:#FFF;text-align:right}
.gv-project-cockpit-phase span{font-size:var(--gv-ops-caption);font-weight:780;letter-spacing:.08em;color:#68737C}
.gv-project-cockpit-phase strong{font-size:17px}
.gv-project-cockpit-phase small{font-size:var(--gv-ops-caption);color:#7E878F}
.gv-project-cockpit-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}
.gv-project-cockpit-hero[data-phase="in_progress"]{border-color:#C9DCCE;background:#FBFDFB}
.gv-project-cockpit-hero[data-phase="in_progress"] .gv-project-cockpit-phase{border-color:#C9DCCE;color:#2F6344}
.gv-project-cockpit-hero[data-phase="undated"],.gv-project-cockpit-hero[data-phase="archived"]{background:#F7F8F9}

.gv-project-attention{margin-bottom:16px}
.gv-project-signal-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.gv-project-signal{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:13px;align-items:center;padding:12px 14px;border:1px solid #E3E7EA;border-radius:9px;background:#FFF}
.gv-project-signal-mark{width:10px;height:10px;border-radius:50%;background:#9AA3AB}
.gv-project-signal strong{display:block;font-size:var(--gv-ops-body)}
.gv-project-signal small{display:block;margin-top:2px;font-size:var(--gv-ops-caption);color:#78828A}
.gv-project-signal a,.gv-project-signal em{font-style:normal;font-size:var(--gv-ops-caption);font-weight:700;white-space:nowrap;color:#4A545C;text-decoration:none}
.gv-project-signal a{padding:7px 11px;border:1px solid #D9DEE2;border-radius:7px}
.gv-project-signal[data-level="critical"]{border-color:#E4C6C3;background:#FFFAF9}
.gv-project-signal[data-level="critical"] .gv-project-signal-mark{background:#B4544B}
.gv-project-signal[data-level="warn"]{border-color:#E6D8BE;background:#FFFDF8}
.gv-project-signal[data-level="warn"] .gv-project-signal-mark{background:#B08A3C}

.gv-project-flow{margin-bottom:16px}
.gv-project-flow-track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.gv-project-flow-track li{display:grid;gap:3px;padding:13px;border:1px solid #E3E7EA;border-radius:9px;background:#FFF}
.gv-project-flow-track strong{font-size:var(--gv-ops-body)}
.gv-project-flow-track small{font-size:var(--gv-ops-caption);color:#78828A}
.gv-project-flow-track em{font-style:normal;margin-top:5px;font-size:var(--gv-ops-caption);font-weight:760;letter-spacing:.05em;color:#68737C}
.gv-project-flow-track li[data-state="connected"]{border-color:#C9DCCE;background:#FBFDFB}
.gv-project-flow-track li[data-state="connected"] em{color:#2F6344}
.gv-project-flow-track li[data-state="unavailable"]{border-style:dashed;background:#F7F8F9}
.gv-project-flow-track li[data-state="unavailable"] strong,.gv-project-flow-track li[data-state="unavailable"] em{color:#78828A}

.gv-project-task-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 14px}
.gv-project-task-summary div{display:grid;gap:2px;padding:11px;border:1px solid #E7EAEC;border-radius:8px;background:#FAFBFB}
.gv-project-task-summary span{font-size:var(--gv-ops-caption);color:#78828A}
.gv-project-task-summary strong{font-size:19px}
.gv-project-task-summary div[data-alert="1"]{border-color:#E4C6C3;background:#FFFAF9}

@media(max-width:1199px){
  .gv-project-flow-track{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gv-project-task-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:767px){
  .gv-project-cockpit-hero{grid-template-columns:1fr}
  .gv-project-cockpit-state{justify-items:stretch}
  .gv-project-cockpit-phase{justify-items:start;text-align:left}
  .gv-project-cockpit-actions{justify-content:flex-start}
  .gv-project-flow-track,.gv-project-task-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gv-project-signal{grid-template-columns:10px minmax(0,1fr)}
  .gv-project-signal a,.gv-project-signal em{grid-column:2}
}

/* =========================================================
   PEOPLE WORKSPACE · directory, readiness signals, facets
   The live list is read from the legacy ledger, masked and read-only.
   Prototype roster and availability remain developer-mode only.
   ========================================================= */
.gv-people-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;margin-bottom:16px;padding:22px 24px;border:1px solid #DDE2E5;border-radius:12px;background:#FCFCFD}
.gv-people-hero-identity h1{margin:6px 0 0;font-size:28px;line-height:1.25;letter-spacing:-.01em}
.gv-people-hero-identity p{margin:6px 0 0;font-size:var(--gv-ops-body);color:#616C75;max-width:62ch}
.gv-people-hero .gv-crew-master-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}

.gv-people-attention{margin-bottom:16px}
.gv-people-directory{margin-bottom:16px}
.gv-people-toolbar{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:0 0 12px}
.gv-people-search{display:flex;flex:1 1 280px;min-width:0;gap:9px;align-items:center;padding:0 12px;border:1px solid #D9DEE2;border-radius:8px;background:#FFF}
.gv-people-search svg{width:17px;height:17px;flex:0 0 auto;color:#8A939B}
.gv-people-search input{flex:1;min-width:0;border:0;background:transparent;padding:11px 0;outline:none}
.gv-people-facets{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 13px}
.gv-people-facets a{display:inline-flex;gap:7px;align-items:center;padding:8px 12px;border:1px solid #DFE3E6;border-radius:999px;background:#FFF;color:#4E5860;font-size:var(--gv-ops-caption);font-weight:640;text-decoration:none}
.gv-people-facets a em{font-style:normal;font-weight:780;color:#79838B}
.gv-people-facets a:hover{background:#F1F3F5}
.gv-people-facets a.active{background:#292F35;border-color:#292F35;color:#FFF}
.gv-people-facets a.active em{color:#C7CDD2}

@media(max-width:767px){
  .gv-people-hero{grid-template-columns:1fr}
  .gv-people-hero .gv-crew-master-actions{justify-content:flex-start}
  .gv-people-toolbar{flex-direction:column;align-items:stretch}
}

/* =========================================================
   PROJECT STAFFING · internal assignment execution view
   Separate from the Casting Session layer, which owns client-facing proposals.
   Legacy staffing rows are a read projection, never a canonical Assignment source.
   ========================================================= */
.gv-staffing-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;margin-bottom:16px;padding:22px 24px;border:1px solid #DDE2E5;border-radius:12px;background:#FCFCFD}
.gv-staffing-hero-identity h1{margin:6px 0 0;font-size:28px;line-height:1.25;letter-spacing:-.01em}
.gv-staffing-hero-identity p{margin:6px 0 0;font-size:var(--gv-ops-body);color:#616C75;max-width:72ch}
.gv-staffing-hero .gv-schedule-hero-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}
.gv-staffing-attention,.gv-staffing-scope{margin-bottom:16px}
.gv-staffing-toolbar{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:0 0 12px}
.gv-staffing-project{display:flex;flex:1 1 320px;min-width:0;gap:9px;align-items:center}
.gv-staffing-project>span{flex:0 0 auto;font-size:var(--gv-ops-caption);font-weight:700;color:#68737C}
.gv-staffing-project select{flex:1;min-width:0}

.gv-casting-scope-note{margin-top:5px;font-size:var(--gv-ops-caption);line-height:1.5;color:#78828A}
.gv-casting-scope-note a{color:#3F4952;font-weight:700}

.gv-project-flow-track li[data-state="legacy"]{border-color:#DCD5C4;background:#FDFCF8}
.gv-project-flow-track li[data-state="legacy"] a{margin-top:5px;font-size:var(--gv-ops-caption);font-weight:760;letter-spacing:.05em;color:#7A6A44;text-decoration:none}
.gv-project-flow-track li[data-state="legacy"] a:hover{text-decoration:underline}

@media(max-width:767px){
  .gv-staffing-hero{grid-template-columns:1fr}
  .gv-staffing-hero .gv-schedule-hero-actions{justify-content:flex-start}
  .gv-staffing-toolbar{flex-direction:column;align-items:stretch}
  .gv-staffing-project{flex-direction:column;align-items:stretch}
}

/* =========================================================
   SETTLEMENT OPERATIONS · exception-first ledger
   Money semantics are explicit: gross payable is the direct-cost basis,
   net transfer is what leaves the bank, withholding is neither profit nor cost saving.
   ========================================================= */
.gv-settlement-ops-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;margin-bottom:16px;padding:22px 24px;border:1px solid #DDE2E5;border-radius:12px;background:#FCFCFD}
.gv-settlement-ops-identity h1{margin:6px 0 0;font-size:28px;line-height:1.25;letter-spacing:-.01em}
.gv-settlement-ops-identity p{margin:6px 0 0;font-size:var(--gv-ops-body);color:#616C75;max-width:72ch}
.gv-settlement-ops-hero .gv-settlement-hero-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}
.gv-settlement-accounting-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;align-items:start;margin:0 0 16px;padding:13px 16px;border:1px solid #E2DCC9;border-radius:9px;background:#FDFCF6;color:#5E5844}
.gv-settlement-accounting-note strong{font-size:var(--gv-ops-caption);font-weight:780;letter-spacing:.07em;white-space:nowrap;padding-top:1px}
.gv-settlement-accounting-note span{font-size:var(--gv-ops-small);line-height:1.6}
.gv-settlement-accounting-note b{font-weight:760}
.gv-settlement-attention,.gv-settlement-ledger{margin-bottom:16px}
@media(max-width:767px){
  .gv-settlement-ops-hero{grid-template-columns:1fr}
  .gv-settlement-ops-hero .gv-settlement-hero-actions{justify-content:flex-start}
  .gv-settlement-accounting-note{grid-template-columns:1fr}
}

/* =========================================================
   CANONICAL READINESS · bridge-retirement tracking panel
   Shows how far a domain is from swapping its temporary legacy bridge
   for the canonical GOLDVISION DB. Read-only information, not a gate.
   ========================================================= */
.gv-canonical-readiness{margin-bottom:16px}
.gv-canonical-readiness-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 13px}
.gv-canonical-readiness-grid div{display:grid;gap:2px;padding:11px;border:1px solid #E7EAEC;border-radius:8px;background:#FAFBFB}
.gv-canonical-readiness-grid span{font-size:var(--gv-ops-caption);color:#78828A}
.gv-canonical-readiness-grid strong{font-size:17px}
.gv-canonical-readiness-grid small{font-size:var(--gv-ops-caption);color:#8A939B}
@media(max-width:1199px){.gv-canonical-readiness-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.gv-canonical-readiness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* =========================================================
   EXECUTIVE SURFACE · canonical projection, honest readiness
   Same canonical data as operations, projected for CEO/DIRECTOR/finance.
   Metrics without an authoritative source show their state, never a number.
   ========================================================= */
.gv-executive-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;margin-bottom:16px;padding:22px 24px;border:1px solid #D8D3C4;border-radius:12px;background:#FCFBF7}
.gv-executive-hero-identity h1{margin:6px 0 0;font-size:28px;line-height:1.25;letter-spacing:-.01em}
.gv-executive-hero-identity p{margin:6px 0 0;font-size:var(--gv-ops-body);color:#6A6558;max-width:72ch}
.gv-executive-hero-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}
.gv-executive-readiness,.gv-executive-cost,.gv-executive-payruns{margin-bottom:16px}
.gv-executive-metric-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.gv-executive-metric-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:12px 14px;border:1px solid #E3E7EA;border-radius:9px;background:#FFF}
.gv-executive-metric-list strong{font-size:var(--gv-ops-body)}
.gv-executive-metric-list em{font-style:normal;font-size:var(--gv-ops-caption);font-weight:780;letter-spacing:.06em;color:#7A848B;white-space:nowrap}
.gv-executive-metric-list small{grid-column:1/-1;font-size:var(--gv-ops-caption);line-height:1.5;color:#78828A}
.gv-executive-metric-list li[data-state="canonical"]{border-color:#C9DCCE;background:#FBFDFB}
.gv-executive-metric-list li[data-state="canonical"] em{color:#2F6344}
.gv-executive-metric-list li[data-state="unlinked"]{border-style:dashed;background:#F7F8F9}
.gv-executive-perf-grid{margin-bottom:16px}
.gv-executive-rank{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.gv-executive-rank li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:9px 11px;border:1px solid #E7EAEC;border-radius:8px;background:#FAFBFB}
.gv-executive-rank span{font-size:var(--gv-ops-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-executive-rank em{font-style:normal;font-size:var(--gv-ops-body);font-weight:740;white-space:nowrap}
.gv-executive-rank small{grid-column:1/-1;font-size:var(--gv-ops-caption);color:#8A939B}
@media(max-width:1199px){.gv-executive-metric-list{grid-template-columns:1fr}}
@media(max-width:767px){
  .gv-executive-hero{grid-template-columns:1fr}
  .gv-executive-hero-actions{justify-content:flex-start}
}

/* =========================================================
   UX V2 · shared refinement tokens and shell polish
   Light foundation kept. Low-contrast borders, unified radii, muted status
   colors; hierarchy comes from spacing and type, not decoration.
   ========================================================= */
:root{
  --gv2-radius-s:8px;--gv2-radius-m:10px;--gv2-radius-l:12px;
  --gv2-line:rgba(18,24,31,.09);--gv2-line-soft:rgba(18,24,31,.055);
  --gv2-surface:#FFFFFF;--gv2-surface-soft:#F7F8F9;
  --gv2-ink:#1D2126;--gv2-ink-soft:#5B646C;--gv2-ink-faint:#8A929A;
  --gv2-ok:#3E6B4F;--gv2-warn:#8A6D3B;--gv2-risk:#9A4B44;--gv2-info:#4A6072;
  --gv2-page:#F5F5F7;--gv2-rail:#FAFAFC;
  --gv2-shadow-1:0 1px 2px rgba(16,22,30,.05);
  --gv2-shadow-2:0 1px 2px rgba(16,22,30,.04),0 4px 14px rgba(16,22,30,.05);
  --gv2-sp-1:4px;--gv2-sp-2:8px;--gv2-sp-3:12px;--gv2-sp-4:16px;--gv2-sp-5:20px;--gv2-sp-6:24px;
}
.gv-panel,.gv-card{border-color:var(--gv2-line);border-radius:var(--gv2-radius-m)}
.gv-context-strip{border-color:var(--gv2-line);border-radius:var(--gv2-radius-m)}
.gv-context-strip>div>span{letter-spacing:.06em}

/* Icon rail: the folded sidebar keeps V2 hubs usable as icons. */
@media (min-width:768px){
  html[data-sidebar="icon"] .gv-nav-hub-copy,
  html[data-sidebar="icon"] .gv-nav-hub-arrow{display:none}
  html[data-sidebar="icon"] .gv-nav-hub>summary,
  html[data-sidebar="icon"] .gv-nav-hub-link{justify-content:center;padding-left:0;padding-right:0}
  html[data-sidebar="icon"] .gv-nav-hub-items{padding:2px 4px 7px}
  html[data-sidebar="icon"] .gv-nav-subitem{justify-content:center;padding:0}
  html[data-sidebar="icon"] .gv-nav-subitem .gv-nav-text{display:none}
  html[data-sidebar="icon"] .gv-nav-label{text-align:center;font-size:10px;letter-spacing:.04em}
}

/* =========================================================
   UX V2 · Dashboard: today's priorities first
   ========================================================= */
.gv-v2-dashboard-hero{margin-bottom:14px}
.gv-v2-dashboard-hero h1{font-size:30px}
.gv-v2-dashboard-summary{margin-bottom:14px}
.gv-v2-action-queue{margin-bottom:16px}
.gv-v2-queue-list{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.gv-v2-queue-list a{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:13px;align-items:center;padding:12px 14px;border:1px solid var(--gv2-line);border-radius:var(--gv2-radius-s);background:var(--gv2-surface);text-decoration:none;color:inherit}
.gv-v2-queue-list a:hover{background:var(--gv2-surface-soft);border-color:#D5DADE}
.gv-v2-queue-mark{width:10px;height:10px;border-radius:50%;background:#9AA3AB}
.gv-v2-queue-list li[data-urgency="critical"] .gv-v2-queue-mark{background:var(--gv2-risk)}
.gv-v2-queue-list li[data-urgency="warn"] .gv-v2-queue-mark{background:var(--gv2-warn)}
.gv-v2-queue-copy{min-width:0;display:grid;gap:1px}
.gv-v2-queue-copy em{font-style:normal;font-size:var(--gv-ops-caption);font-weight:720;color:var(--gv2-ink-soft)}
.gv-v2-queue-copy strong{font-size:var(--gv-ops-body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v2-queue-copy small{font-size:var(--gv-ops-caption);color:var(--gv2-ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v2-queue-go{font-size:18px;color:var(--gv2-ink-faint)}
.gv-v2-dashboard-grid{margin-bottom:8px}
.gv-v2-project-list{display:grid;gap:7px}
.gv-v2-project-row{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:13px;align-items:center;padding:12px 14px;border:1px solid var(--gv2-line);border-radius:var(--gv2-radius-s);background:var(--gv2-surface);text-decoration:none;color:inherit}
.gv-v2-project-row:hover{background:var(--gv2-surface-soft)}
.gv-v2-project-dday{justify-self:start;padding:5px 10px;border:1px solid var(--gv2-line);border-radius:999px;font-size:var(--gv-ops-caption);font-weight:780;letter-spacing:.04em;color:var(--gv2-ink-soft);white-space:nowrap}
.gv-v2-project-row[data-phase="in_progress"] .gv-v2-project-dday{border-color:#CBDCD0;color:var(--gv2-ok)}
.gv-v2-project-main{min-width:0;display:grid;gap:1px}
.gv-v2-project-main strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v2-project-main small{font-size:var(--gv-ops-caption);color:var(--gv2-ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v2-project-when{font-size:var(--gv-ops-caption);color:var(--gv2-ink-soft);white-space:nowrap}
.gv-v2-week{display:grid;gap:9px}
.gv-v2-week-day{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--gv2-line);border-radius:var(--gv2-radius-s);background:var(--gv2-surface)}
.gv-v2-week-day>span{font-size:var(--gv-ops-caption);font-weight:720;color:var(--gv2-ink-soft)}
.gv-v2-week-day>span b{font-weight:780;color:var(--gv2-ink)}
.gv-v2-week-day>a{font-size:var(--gv-ops-body);color:var(--gv2-ink);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v2-week-day>a:hover{text-decoration:underline}
.gv-v2-dashboard-foot{display:flex;gap:10px;align-items:center;margin:4px 2px 0;font-size:var(--gv-ops-caption);color:var(--gv2-ink-faint)}
.gv-v2-dashboard-foot a{color:var(--gv2-ink-soft);text-decoration:none}
.gv-v2-dashboard-foot a:hover{color:var(--gv2-ink)}
@media(max-width:767px){
  .gv-v2-project-row{grid-template-columns:minmax(0,1fr) auto}
  .gv-v2-project-dday{grid-row:2;justify-self:start}
}

/* UX V2 · Calendar: the month starts immediately */
.gv-v2-calendar-bar{margin-bottom:12px}
.gv-v2-calendar-title{margin:0 10px 0 0;font-size:22px;letter-spacing:-.01em}
.gv-v2-calendar-bar .gv-calendar-nav{align-items:center;gap:8px}
.gv-btn-small{min-height:34px;padding:0 12px;font-size:var(--gv-ops-caption)}
.gv-v2-phase-note{display:block;margin-top:2px;font-size:var(--gv-ops-caption);color:var(--gv2-ink-faint)}

/* UX V2 · Project detail tabs */
.gv-v2-detail-tabs{display:flex;gap:4px;margin:0 0 16px;padding:4px;border:1px solid var(--gv2-line);border-radius:var(--gv2-radius-m);background:var(--gv2-surface);overflow-x:auto}
.gv-v2-detail-tabs a{flex:0 0 auto;padding:9px 16px;border-radius:var(--gv2-radius-s);font-size:var(--gv-ops-body);font-weight:660;color:var(--gv2-ink-soft);text-decoration:none;white-space:nowrap}
.gv-v2-detail-tabs a:hover{background:var(--gv2-surface-soft);color:var(--gv2-ink)}
.gv-v2-detail-tabs a.active{background:#292F35;color:#FFF}
.gv-v2-tab-link{display:grid;gap:12px;justify-items:start}
.gv-v2-tab-link-copy{margin:0;font-size:var(--gv-ops-body);color:var(--gv2-ink-soft)}
.gv-v2-staffing-summary{margin-bottom:2px}

/* UX V2 phase 8: analytics live panel */
.gv-v2-analytics-live{margin-bottom:18px;}
.gv-v2-analytics-metrics{margin:0 0 14px;}
.gv-v2-analytics-phases{display:flex;flex-direction:column;gap:8px;}
.gv-v2-analytics-phase-row{display:grid;grid-template-columns:minmax(90px,140px) 1fr 40px;align-items:center;gap:12px;font-size:13px;color:var(--gv2-ink-soft,#4b5563);}
.gv-v2-analytics-phase-row i{display:block;height:8px;border-radius:var(--gv2-radius-s,6px);background:var(--gv2-surface-soft,#f1f3f6);overflow:hidden;}
.gv-v2-analytics-phase-row b{display:block;height:100%;border-radius:inherit;background:var(--gv2-info,#3b82f6);opacity:.65;}
.gv-v2-analytics-phase-row em{font-style:normal;font-weight:600;text-align:right;color:var(--gv2-ink,#1f2937);}

/* =========================================================
   UX V2.1 visual refinement layer.
   Light foundation kept. One quiet depth step between page,
   rail and cards; unified radius/spacing; hierarchy from
   type scale, not decoration. No gradients, no gold, no glass.
   ========================================================= */

/* Depth: page < rail < card. All within a few points of grey. */
html,body{background:var(--gv2-page)}
.gv-sidebar{background:var(--gv2-rail);border-right:1px solid var(--gv2-line-soft)}
.gv-topbar{background:rgba(250,250,252,.88);border-bottom:1px solid var(--gv2-line-soft)}

/* Cards and panels: one surface language. */
.gv-panel,.gv-card,.gv-functional-hero,.gv-hero,.gv-context-strip,.gv-data-boundary{
  background:var(--gv2-surface);
  border:1px solid var(--gv2-line);
  border-radius:var(--gv2-radius-l);
  box-shadow:var(--gv2-shadow-1);
}
.gv-panel .gv-panel,.gv-panel .gv-card{box-shadow:none;border-color:var(--gv2-line-soft)}
.gv-security-guardrail{box-shadow:var(--gv2-shadow-1)}

/* Typography hierarchy. */
.gv-page-title{font-size:15px;font-weight:650;letter-spacing:-.01em;color:var(--gv2-ink)}
.gv-functional-hero h1,.gv-hero h1,.gv-executive-hero h1{font-size:21px;font-weight:680;letter-spacing:-.015em;color:var(--gv2-ink)}
.gv-functional-hero p,.gv-executive-hero p{font-size:13.5px;color:var(--gv2-ink-soft)}
.gv-panel-title{font-size:14.5px;font-weight:640;letter-spacing:-.008em;color:var(--gv2-ink)}
.gv-panel-subtitle{font-size:12.5px;color:var(--gv2-ink-faint)}

/* Key numbers first: metric strips share one scale. */
.gv-v123-metrics>div,.gv-v123-metrics>button,
.gv-task-metrics>button,.gv-client-metrics>div,
.gv-activity-metrics>div,.gv-contract-metrics>div{
  background:var(--gv2-surface);border:1px solid var(--gv2-line);
  border-radius:var(--gv2-radius-m);
}
.gv-v123-metrics>div span,.gv-v123-metrics>button span,
.gv-task-metrics>button span,.gv-client-metrics>div span,
.gv-activity-metrics>div span,.gv-contract-metrics>div span{
  font-size:11.5px;font-weight:600;letter-spacing:.035em;color:var(--gv2-ink-faint);
}
.gv-v123-metrics>div strong,.gv-v123-metrics>button strong,
.gv-task-metrics>button strong,.gv-client-metrics>div strong,
.gv-activity-metrics>div strong,.gv-contract-metrics>div strong{
  font-size:25px;font-weight:650;line-height:1.15;letter-spacing:-.02em;
  color:var(--gv2-ink);font-variant-numeric:tabular-nums;
}
.gv-v123-metrics>div small,.gv-v123-metrics>button small,
.gv-task-metrics>button small,.gv-client-metrics>div small,
.gv-activity-metrics>div small,.gv-contract-metrics>div small{
  font-size:12px;color:var(--gv2-ink-faint);
}

/* Buttons: two weights, quiet by default. */
.gv-btn{border-radius:var(--gv2-radius-s);font-weight:600;letter-spacing:-.005em;transition:background .12s,border-color .12s,color .12s}
.gv-btn-primary{background:#26292E;border-color:#26292E;color:#fff;box-shadow:none}
.gv-btn-primary:hover{background:#34383E;border-color:#34383E}
.gv-btn-secondary{background:var(--gv2-surface);border:1px solid var(--gv2-line);color:var(--gv2-ink)}
.gv-btn-secondary:hover{background:var(--gv2-surface-soft);border-color:rgba(18,24,31,.16)}
.gv-icon-btn{border-radius:var(--gv2-radius-s)}

/* Status and chips: pills, tint over paint. */
.gv-status,.gv-chip,.gv-badge{border-radius:999px;font-weight:620;letter-spacing:.02em}
.gv-chip{background:var(--gv2-surface-soft);border:1px solid var(--gv2-line-soft);color:var(--gv2-ink-soft)}

/* Action queue: the next action is the loudest thing on the page. */
.gv-v2-queue-list a{border-radius:var(--gv2-radius-m);border-color:var(--gv2-line-soft);transition:background .12s,border-color .12s}
.gv-v2-queue-list a:hover{background:var(--gv2-surface-soft);border-color:var(--gv2-line)}
.gv-v2-queue-copy strong{font-size:14px;font-weight:620;letter-spacing:-.008em;color:var(--gv2-ink)}
.gv-v2-queue-copy em{font-weight:640;letter-spacing:.03em;font-size:11px}
.gv-v2-queue-list li[data-urgency="critical"] a{border-left:3px solid var(--gv2-risk);padding-left:12px}
.gv-v2-queue-list li[data-urgency="warn"] a{border-left:3px solid var(--gv2-warn);padding-left:12px}

/* Inputs: same radius language as buttons. */
.gv-main input[type="search"],.gv-main input[type="text"],.gv-main input[type="datetime-local"],
.gv-main select,.gv-main textarea{border-radius:var(--gv2-radius-s)}

/* Sidebar: names only, tighter rhythm. */
.gv-nav{padding:14px 12px;gap:2px}
.gv-nav-label{font-size:10.5px;letter-spacing:.11em;color:#9AA1A9;padding:6px 12px}
.gv-nav-label-bottom{margin-top:16px}
.gv-nav-hub-copy strong{font-size:13.5px;font-weight:590}
.gv-nav-hub-link{min-height:40px;padding-top:0;padding-bottom:0}
.gv-nav-hub summary{min-height:40px}
.gv-nav-item{height:40px;font-size:13.5px}
.gv-nav-item.active,.gv-nav-hub.active summary{background:#ECEEF1;color:var(--gv2-ink)}
.gv-nav-hub-arrow{color:#A6ADB5}
.gv-sidebar-caption{font-size:9px;letter-spacing:.14em;color:#A6ADB5}

/* Tables: quiet headers, numbers aligned. */
.gv-live-table th,.gv-contract-table th,.gv-v124-project-table th{
  font-size:11.5px;font-weight:620;letter-spacing:.03em;color:var(--gv2-ink-faint);
}
.gv-live-table td,.gv-contract-table td,.gv-v124-project-table td{font-variant-numeric:tabular-nums}

/* =========================================================
   V3 flagship · 오늘 (dashboard only).
   The reference visual system for ADMIN V2: a faint graphite
   ground, barely-there translucent white surfaces, hierarchy
   from whitespace and type. Scoped to body.gv-on-dashboard /
   .gv-v3-* so no other screen changes yet.
   ========================================================= */
body.gv-on-dashboard{
    --gv-v3-attention:#875E53;
    --gv-v3-attention-soft:rgba(135,94,83,.09);
    --gv-v3-progress:#506875;
    --gv-v3-progress-soft:rgba(80,104,117,.085);
    --gv-v3-complete:#637367;
    --gv-v3-complete-soft:rgba(99,115,103,.085);
    background:#EAE9E6;
}
body.gv-on-dashboard .gv-topbar{background:rgba(234,233,230,.88);border-bottom-color:rgba(28,33,37,.035)}
body.gv-on-dashboard .gv-sidebar{background:rgba(242,242,240,.93);border-right-color:rgba(28,33,37,.04)}

/* 오늘 inherits the same fluid Shell workspace contract as every ADMIN page. */
.gv-v3-today{width:100%;max-width:none;margin:0;display:flex;flex-direction:column;gap:18px}

.gv-v3-surface{
    background:rgba(252,252,250,.79);
    -webkit-backdrop-filter:blur(7px) saturate(1.015);backdrop-filter:blur(7px) saturate(1.015);
    border:1px solid rgba(255,255,255,.5);
    box-shadow:0 10px 30px rgba(25,31,35,.038),inset 0 1px 0 rgba(255,255,255,.76);
    border-radius:14px;
    padding:24px 28px;
}

/* Hero: whitespace and one large line. */
.gv-v3-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:18px 4px 3px}
.gv-v3-date{font-size:12.5px;font-weight:610;letter-spacing:.035em;color:#747D82;margin-bottom:8px}
.gv-v3-hero h1{margin:0;font-size:30px;font-weight:700;letter-spacing:-.028em;color:#181C1F;line-height:1.2}
.gv-v3-hero-actions{display:flex;gap:8px}
.gv-v3-hero-actions .gv-btn{padding:9px 16px;font-size:13.5px}

/* Section heads: quiet labels; content is the protagonist. */
.gv-v3-sec-head{display:flex;align-items:baseline;gap:10px;margin:0 0 11px}
.gv-v3-sec-head h2{margin:0;font-size:15px;font-weight:700;letter-spacing:-.012em;color:#394147}
.gv-v3-sec-count{font-size:11.5px;font-weight:620;color:#858C91}
.gv-v3-sec-link{margin-left:auto;font-size:12.5px;font-weight:640;color:#59636A;text-decoration:none;text-underline-offset:3px}
.gv-v3-sec-link:hover{color:#20262A;text-decoration:underline}
.gv-v3-quiet{margin:2px 0 4px;font-size:13.5px;color:#82898F}

.gv-v3-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:18px;align-items:stretch}
.gv-v3-grid>.gv-v3-surface{height:100%}
@media(max-width:1280px){.gv-v3-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)}}
@media(max-width:1040px){.gv-v3-grid{grid-template-columns:1fr}}

/* 1 · Today's priorities: separator rows, urgency as a thin accent. */
.gv-v3-queue-list{list-style:none;margin:0;padding:0}
.gv-v3-queue-list li{border-top:1px solid rgba(28,34,38,.045)}
.gv-v3-queue-list li:first-child{border-top:0}
.gv-v3-queue-list a{display:grid;grid-template-columns:minmax(0,1fr) auto 14px;align-items:center;gap:16px;padding:14px 10px;text-decoration:none;color:inherit;border-radius:9px}
.gv-v3-queue-list li:first-child a{background:rgba(80,104,117,.05);box-shadow:inset 2px 0 0 rgba(80,104,117,.22)}
.gv-v3-queue-list a:hover{background:rgba(28,34,38,.032)}
.gv-v3-queue-main{min-width:0;display:flex;flex-direction:column;gap:2px}
.gv-v3-queue-main em{font-style:normal;font-size:11.5px;font-weight:670;letter-spacing:.025em;color:#707C83}
.gv-v3-queue-list li[data-urgency="critical"] em,.gv-v3-queue-list li[data-urgency="warn"] em{color:var(--gv-v3-attention)}
.gv-v3-queue-main strong{font-size:15px;font-weight:680;letter-spacing:-.016em;color:#1A1F22;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v3-queue-list li:first-child .gv-v3-queue-main strong{font-size:15.5px;font-weight:720}
.gv-v3-queue-meta{font-size:12.5px;font-weight:610;color:#5F686E;white-space:nowrap;font-variant-numeric:tabular-nums}
.gv-v3-go{font-size:18px;font-weight:680;color:#53616A;text-align:right;opacity:.72}

/* 3 · This week: a short real list, not a shrunken calendar. */
.gv-v3-week-list{display:flex;flex-direction:column}
.gv-v3-week-day{display:grid;grid-template-columns:70px minmax(0,1fr);gap:14px;padding:13px 2px;border-top:1px solid rgba(28,34,38,.045)}
.gv-v3-week-day:first-child{border-top:0}
.gv-v3-week-date{font-size:12.5px;font-weight:620;color:#6E797F;font-variant-numeric:tabular-nums}
.gv-v3-week-date b{font-weight:700;color:#465158;margin-left:3px}
.gv-v3-week-day.is-today .gv-v3-week-date,.gv-v3-week-day.is-today .gv-v3-week-date b{color:#1D2126;font-weight:680}
.gv-v3-week-items{min-width:0;display:flex;flex-direction:column;gap:6px}
.gv-v3-week-items a{position:relative;display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-left:14px;font-size:14px;font-weight:680;letter-spacing:-.01em;color:#202528;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v3-week-items a:before{content:"";position:absolute;left:0;top:.48em;width:5px;height:5px;border-radius:50%;background:var(--gv-v3-progress);opacity:.72}
.gv-v3-week-items a:hover{color:#000}
.gv-v3-week-items a small{font-size:12px;font-weight:650;color:#66757D;font-variant-numeric:tabular-nums}

/* 2 · Running projects: operating state over status badges. */
.gv-v3-project-list{display:flex;flex-direction:column}
.gv-v3-project-row{display:grid;grid-template-columns:76px minmax(0,1fr) 104px minmax(180px,auto);align-items:center;gap:18px;padding:15px 10px;border-top:1px solid rgba(28,34,38,.045);text-decoration:none;color:inherit;border-radius:9px}
.gv-v3-project-row:first-child{border-top:0}
.gv-v3-project-row:hover{background:rgba(28,34,38,.028)}
.gv-v3-project-phase{position:relative;align-self:stretch;display:flex;align-items:center;font-size:13px;font-weight:740;letter-spacing:-.01em;color:#505B62;font-variant-numeric:tabular-nums;white-space:nowrap}
.gv-v3-project-phase:after{content:"";position:absolute;left:0;bottom:5px;width:20px;height:2px;border-radius:2px;background:currentColor;opacity:.34}
.gv-v3-project-row[data-phase="in_progress"] .gv-v3-project-phase,.gv-v3-project-row[data-phase="scheduled"] .gv-v3-project-phase{color:var(--gv-v3-progress)}
.gv-v3-project-row[data-phase="completed"] .gv-v3-project-phase{color:var(--gv-v3-complete)}
.gv-v3-project-main{min-width:0;display:flex;flex-direction:column;gap:2px}
.gv-v3-project-main strong{font-size:15.5px;font-weight:710;letter-spacing:-.018em;color:#181D20;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v3-project-main small{font-size:12.5px;font-weight:540;color:#778187;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-v3-project-when{font-size:12.5px;font-weight:650;color:#57646B;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.gv-v3-project-signals{display:flex;gap:6px;justify-content:flex-end;min-width:0}
.gv-v3-project-signals i{font-style:normal;font-size:11.5px;font-weight:650;color:var(--gv-v3-progress);background:var(--gv-v3-progress-soft);border-radius:6px;padding:4px 9px;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.gv-v3-project-signals i.warn,.gv-v3-project-signals i.risk{color:var(--gv-v3-attention);background:var(--gv-v3-attention-soft)}
.gv-v3-project-signals i.done{color:var(--gv-v3-complete);background:var(--gv-v3-complete-soft)}
.gv-v3-project-signals:empty{display:none}

/* 4 · Operating summary: one quiet line, not a card wall. */
.gv-v3-foot{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:8px 6px 26px;flex-wrap:wrap}
.gv-v3-ops-wrap{display:flex;align-items:center;gap:18px;min-width:0}
.gv-v3-ops-wrap h2{margin:0;font-size:12px;font-weight:670;letter-spacing:.015em;color:#646C72;white-space:nowrap}
.gv-v3-ops{display:flex;align-items:baseline;gap:16px;margin:0;font-size:12.5px;color:#737A80;flex-wrap:wrap}
.gv-v3-ops span{white-space:nowrap}
.gv-v3-ops b{margin-right:4px;font-size:14px;font-weight:680;color:#24292D;font-variant-numeric:tabular-nums}
.gv-v3-ops b.warn{color:#8A6D3B}
.gv-v3-foot-links{display:flex;gap:16px}
.gv-v3-foot-links a{font-size:12.5px;color:#82898F;text-decoration:none}
.gv-v3-foot-links a:hover{color:#23272C}

.gv-v3-guard{max-width:520px}
.gv-v3-guard h2{margin:0 0 6px;font-size:16px}
.gv-v3-guard p{margin:0;font-size:13.5px;color:#6C737B}

@media(max-width:760px){
    .gv-v3-hero{flex-direction:column;align-items:flex-start;padding-top:12px}
    .gv-v3-surface{padding:16px 16px;border-radius:14px}
    .gv-v3-project-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main when" "phase signals"}
    .gv-v3-project-phase{grid-area:phase}.gv-v3-project-main{grid-area:main}
    .gv-v3-project-when{grid-area:when}.gv-v3-project-signals{grid-area:signals}
    .gv-v3-ops-wrap{align-items:flex-start;flex-direction:column;gap:8px}
}

/* Final Shell width contract. Kept last and screen-only so page CSS cannot
   reintroduce a fixed/max-width workspace while print documents stay intact. */
@media screen{
  html[data-width] .gv-shell>.gv-main{
    width:100%!important;max-width:none!important;
    margin-left:0!important;margin-right:0!important;
    padding-left:var(--workspace-gutter)!important;
    padding-right:var(--workspace-gutter)!important;
  }
}

/* Runtime wiring: FIX promotion cell in the casting candidate list */
.gv-casting-promotion{display:flex;align-items:center;gap:8px;margin-left:auto}
.gv-casting-promotion .gv-casting-promote{padding:6px 12px;font-size:12.5px}
.gv-casting-promotion .gv-text-btn{font-size:12px}

/* Runtime wiring: availability conflict detail on canonical staffing rows */
.gv-availability-detail summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px}
.gv-availability-detail summary::-webkit-details-marker{display:none}
.gv-availability-detail summary small{color:#82898F;font-size:11.5px;text-decoration:underline;text-underline-offset:2px}
.gv-availability-findings{margin-top:8px;display:flex;flex-direction:column;gap:6px;max-width:340px}
.gv-availability-finding{border:1px solid rgba(18,24,31,.08);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:2px;background:#fff}
.gv-availability-finding strong{font-size:12px;font-weight:620;color:#1D2126}
.gv-availability-finding span{font-size:12px;color:#565E66;font-variant-numeric:tabular-nums}
.gv-availability-finding em{font-style:normal;font-size:12px;color:#565E66}
.gv-availability-finding small{font-size:11.5px;color:#82898F}
.gv-availability-finding[data-verdict="HARD_CONFLICT"] strong,.gv-availability-finding[data-verdict="GV_FIXED"] strong{color:#9A4B44}
.gv-availability-finding[data-verdict="SOFT_CONFLICT"] strong{color:#8A6D3B}

/* Runtime wiring: session management panel on canonical staffing rows */
.gv-staffing-actions{white-space:nowrap}
.gv-session-expand>td{background:#F7F8F9;padding:16px 18px}
.gv-session-panel{display:flex;flex-direction:column;gap:14px;max-width:860px}
.gv-session-list{display:flex;flex-direction:column;gap:6px}
.gv-session-row{display:grid;grid-template-columns:96px 70px minmax(0,1fr) auto auto;gap:12px;align-items:center;background:#fff;border:1px solid rgba(18,24,31,.08);border-radius:8px;padding:8px 12px;font-size:12.5px}
.gv-session-date{font-variant-numeric:tabular-nums;font-weight:620;color:#1D2126}
.gv-session-kind{color:#565E66}
.gv-session-time{color:#565E66;font-variant-numeric:tabular-nums}
.gv-session-row-actions{display:flex;gap:6px}
.gv-session-row-actions button{border:1px solid rgba(18,24,31,.12);background:#fff;border-radius:6px;padding:4px 10px;font-size:12px;cursor:pointer;color:#3A4046}
.gv-session-row-actions button:hover{background:#F0F1F3}
.gv-session-form{background:#fff;border:1px solid rgba(18,24,31,.08);border-radius:10px;padding:14px 16px}
.gv-session-form-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.gv-session-form-head strong{font-size:13px;color:#1D2126}
.gv-session-form-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.gv-session-form-grid label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#6C737B}
.gv-session-form-grid label.wide{grid-column:span 5}
.gv-session-form-grid input,.gv-session-form-grid select{border:1px solid rgba(18,24,31,.12);border-radius:7px;padding:7px 9px;font-size:13px}
.gv-session-form-foot{display:flex;align-items:center;gap:12px;margin-top:12px}
.gv-session-form-msg,.gv-session-projection-msg{font-size:12.5px}
.gv-session-form-msg[data-state="ok"],.gv-session-projection-msg[data-state="ok"]{color:#3E6B4F}
.gv-session-form-msg[data-state="error"],.gv-session-projection-msg[data-state="error"]{color:#9A4B44}
.gv-session-projection{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.gv-session-projection small{color:#82898F;font-size:12px;max-width:420px}
@media(max-width:900px){.gv-session-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gv-session-form-grid label.wide{grid-column:span 2}.gv-session-row{grid-template-columns:1fr auto;grid-auto-flow:row}}

/* Runtime wiring: work record form + NOW-lite evaluation bar */
.gv-session-record-summary{font-size:11.5px;color:#3E6B4F;white-space:nowrap}
.gv-work-record-form{background:#fff;border:1px solid rgba(18,24,31,.08);border-radius:10px;padding:14px 16px}
.gv-work-record-hint{margin:0 0 10px;font-size:12px;color:#82898F}
.gv-work-record-check{flex-direction:row!important;align-items:center;gap:8px!important}
.gv-work-record-check input{width:16px;height:16px}
.gv-evaluation-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff;border:1px solid rgba(18,24,31,.08);border-radius:10px;padding:12px 16px}
.gv-evaluation-label{font-size:12.5px;font-weight:620;color:#565E66}
.gv-evaluation-choices{display:flex;gap:6px}
.gv-evaluation-choices button{border:1px solid rgba(18,24,31,.12);background:#fff;border-radius:999px;padding:6px 13px;font-size:12.5px;cursor:pointer;color:#3A4046}
.gv-evaluation-choices button:hover{background:#F0F1F3}
.gv-evaluation-choices button.on{background:#1D2126;border-color:#1D2126;color:#fff}
.gv-evaluation-note{flex:1;min-width:160px;border:1px solid rgba(18,24,31,.12);border-radius:7px;padding:7px 9px;font-size:12.5px}

/* Runtime wiring: canonical settlement worklist + pay runs */
.gv-settle-worklist{display:flex;flex-direction:column;gap:10px}
.gv-settle-work{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:16px;background:#fff;border:1px solid rgba(18,24,31,.08);border-radius:10px;padding:14px 16px}
.gv-settle-work-main{display:flex;flex-direction:column;gap:3px}
.gv-settle-work-main strong{font-size:14px;color:#1D2126}
.gv-settle-work-main small{font-size:12.5px;color:#565E66}
.gv-settle-work-meta{font-size:12px;color:#82898F}
.gv-settle-lines{display:flex;flex-direction:column;gap:8px}
.gv-settle-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.gv-settle-line-money{font-size:12.5px;color:#1D2126;font-variant-numeric:tabular-nums}
.gv-settle-create{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.gv-settle-create label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#6C737B}
.gv-settle-create input{border:1px solid rgba(18,24,31,.12);border-radius:7px;padding:7px 9px;font-size:13px;width:150px}
.gv-pay-run-open{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.gv-pay-run-open label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#6C737B}
.gv-pay-run-open input{border:1px solid rgba(18,24,31,.12);border-radius:7px;padding:7px 9px;font-size:13px}
.gv-pay-run-list{display:flex;flex-direction:column;gap:10px}
.gv-pay-run{background:#fff;border:1px solid rgba(18,24,31,.08);border-radius:10px;padding:12px 16px;display:flex;flex-direction:column;gap:8px}
.gv-pay-run-head{display:flex;align-items:center;gap:12px}
.gv-pay-run-head strong{font-size:14px;color:#1D2126;font-variant-numeric:tabular-nums}
.gv-pay-run-head small{color:#82898F;font-size:12px}
.gv-pay-run-snapshot{font-size:12.5px;color:#565E66;font-variant-numeric:tabular-nums}
.gv-pay-run-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.gv-pay-run-note{font-size:11.5px;color:#82898F;max-width:360px}
@media(max-width:900px){.gv-settle-work{grid-template-columns:1fr}}

/* Create flows: modal state + position panel */
.gv-modal-backdrop[data-create-modal]{display:none}
.gv-modal-backdrop[data-create-modal].open{display:flex}
.gv-position-list{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.gv-position-row{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid rgba(18,24,31,.08);border-radius:8px;padding:8px 12px;font-size:13px}
.gv-position-row strong{color:#1D2126}
.gv-position-row small{color:#82898F}
.gv-position-row label{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:12px;color:#6C737B}
.gv-position-row input{width:70px;border:1px solid rgba(18,24,31,.12);border-radius:6px;padding:5px 7px;font-size:13px}
.gv-position-add{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.gv-position-add label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#6C737B}
.gv-position-add input{border:1px solid rgba(18,24,31,.12);border-radius:7px;padding:7px 9px;font-size:13px}
.gv-v123-form-alert[data-state="ok"]{color:#3E6B4F}

/* Demo bootstrap */
.gv-demo-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.gv-demo-note{margin:12px 0 0;font-size:12.5px;color:#82898F;max-width:560px}

/* Canonical Client operations: Client -> optional Department -> Contacts */
.gv-client-ops-commandbar{margin:0 0 14px}.gv-client-ops-commandbar .gv-client-search{width:min(620px,100%)}
.gv-client-ops-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:16px;align-items:start}.gv-client-ops-layout>*{min-width:0}
.gv-client-ops-layout .gv-client-list-panel{position:sticky;top:calc(var(--header-height,72px) + 16px);max-height:calc(100vh - var(--header-height,72px) - 34px);display:flex;flex-direction:column}
.gv-client-ops-layout .gv-client-list{padding:6px;overflow:auto;min-height:120px}.gv-client-ops-layout .gv-client-list>button{grid-template-columns:38px minmax(0,1fr) 68px}
.gv-client-pager{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-top:1px solid var(--gv-line-soft)}.gv-client-pager span{font-size:11px;color:var(--gv-muted)}.gv-client-pager .gv-btn{min-height:30px;padding:0 9px}
.gv-client-profile-empty{min-height:240px;display:grid;place-items:center}.gv-client-profile-copy{display:grid;grid-template-columns:1fr 1fr}.gv-client-profile-copy>.gv-client-note+ .gv-client-note{border-left:1px solid var(--gv-line-soft)}
.gv-client-section-actions{display:flex;gap:7px;align-items:center}.gv-client-section-actions .gv-btn{min-height:32px;padding:0 10px}
.gv-department-list{padding:2px 16px 14px}.gv-department-group{border-top:1px solid var(--gv-line-soft);padding:14px 0 4px}.gv-department-group:first-child{border-top:0}.gv-department-group>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 2px 8px}.gv-department-group>header>div{display:flex;align-items:center;gap:8px}.gv-department-group h3{margin:0;font-size:14px;color:var(--gv-ink);font-weight:680}.gv-department-group header span{font-size:11px;color:var(--gv-muted)}
.gv-department-actions,.gv-contact-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:flex-end}.gv-department-actions button,.gv-contact-actions button,.gv-client-archive-list button{border:0;background:transparent;color:#6d7881;font:inherit;font-size:10.5px;padding:4px 6px;border-radius:5px;cursor:pointer}.gv-department-actions button:hover,.gv-contact-actions button:hover,.gv-client-archive-list button:hover{background:#eef0f1;color:#32383e}.gv-department-actions button:disabled{opacity:.32;cursor:default;background:transparent}
.gv-department-group .gv-contact-list{padding:0}.gv-department-group.is-archived{opacity:.72}.gv-contact-row{min-height:66px;border-top:1px solid var(--gv-line-soft);display:grid;grid-template-columns:34px minmax(140px,.8fr) minmax(170px,1fr) 52px minmax(90px,auto);gap:10px;align-items:center;padding:8px 2px}.gv-contact-row.is-archived{opacity:.68}.gv-contact-copy em{font-style:normal;font-size:9px;font-weight:650;color:#5c7062;background:#edf3ee;border-radius:999px;padding:2px 6px;margin-left:5px}.gv-contact-copy .gv-contact-note{display:block;max-width:32ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--gv-text-soft)}.gv-contact-channel{min-width:0}.gv-contact-channel strong,.gv-contact-channel small,.gv-contact-channel span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gv-contact-channel strong{font-size:12px;font-weight:620}.gv-contact-channel small,.gv-contact-channel span{font-size:10.5px;color:var(--gv-muted);margin-top:2px}.gv-contact-private{color:#8a9298!important}.gv-contact-events{text-align:center}.gv-contact-events b{font-size:12px}.gv-contact-events small{font-size:9px}
.gv-client-archive-list{border-top:1px solid var(--gv-line);padding:14px 18px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gv-client-archive-list>strong{font-size:11px;color:var(--gv-muted);margin-right:6px}.gv-client-archive-list>span{font-size:11px;border:1px solid var(--gv-line-soft);border-radius:999px;padding:5px 8px;color:#717b83}.gv-client-archive-list>.gv-contact-row{width:100%}
dialog.gv-modal{padding:0;color:inherit;max-height:min(820px,calc(100vh - 32px));overflow:auto}dialog.gv-modal::backdrop{background:rgba(29,34,39,.22);backdrop-filter:blur(2px)}dialog.gv-modal form{margin:0}.gv-modal-head h2{margin:4px 0 0;font-size:17px}.gv-modal textarea{width:100%;border:1px solid var(--gv-line);background:#fafbfc;border-radius:6px;padding:10px;font:inherit;line-height:1.55;resize:vertical}.gv-form-grid .wide{grid-column:1/-1}.gv-check-field{display:flex!important;flex-direction:row!important;align-items:center!important}.gv-check-field input{width:17px!important;height:17px!important}.gv-department-modal{width:min(440px,calc(100vw - 32px))}.gv-department-modal .gv-field{padding:2px 0}.gv-department-modal input{height:42px;border:1px solid var(--gv-line);border-radius:6px;padding:0 10px;font:inherit}
@media(max-width:1080px){.gv-client-ops-layout{grid-template-columns:1fr}.gv-client-ops-layout .gv-client-list-panel{position:static;max-height:none}.gv-client-ops-layout .gv-client-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.gv-contact-row{grid-template-columns:34px minmax(130px,.8fr) minmax(150px,1fr) auto}.gv-contact-events{display:none}}
@media(max-width:700px){.gv-client-ops-layout .gv-client-list{grid-template-columns:1fr}.gv-client-profile-copy{grid-template-columns:1fr}.gv-client-profile-copy>.gv-client-note+ .gv-client-note{border-left:0;border-top:1px solid var(--gv-line-soft)}.gv-client-info-grid{grid-template-columns:1fr 1fr}.gv-client-info-grid>div:nth-child(2){border-right:0}.gv-client-info-grid>div:nth-child(-n+2){border-bottom:1px solid var(--gv-line-soft)}.gv-department-group>header{align-items:flex-start;flex-direction:column}.gv-contact-row{grid-template-columns:34px minmax(0,1fr) auto}.gv-contact-channel{grid-column:2}.gv-contact-actions{grid-column:3;grid-row:1/3;flex-direction:column}.gv-form-grid.two{grid-template-columns:1fr}.gv-form-grid .wide{grid-column:auto}}

/* Project operating form (create + edit share one markup) */
.gv-project-form-modal{width:min(880px,100%)}.gv-project-form-body{max-height:calc(100vh - 230px);overflow:auto;gap:18px}
.gv-pf-section h3{margin:0 0 10px;font-size:11px;letter-spacing:.08em;color:#6F7982;font-weight:720;text-transform:uppercase}.gv-pf-section+.gv-pf-section{border-top:1px solid var(--gv-line-soft);padding-top:16px}
.gv-pf-hint{margin:8px 0 0;font-size:10.5px;color:#7E878F;line-height:1.55}.gv-pf-hint[data-state="error"]{color:#9A4B3F}.gv-pf-spacer{display:block}
.gv-pf-client label{display:flex;flex-direction:column;gap:6px}.gv-pf-client label>span,.gv-pf-client-selected>span,.gv-pf-textarea>span,.gv-pf-contacts-head>span{font-size:9px;color:#747E87;font-weight:650}
.gv-pf-client input[type="search"]{height:42px;border:1px solid var(--gv-line);background:#FAFBFC;border-radius:6px;padding:0 10px;font-size:11px;outline:0;width:100%}.gv-pf-client input[type="search"]:focus{border-color:#AEB7C1}
.gv-pf-client-results{margin-top:6px;border:1px solid var(--gv-line);border-radius:8px;background:#fff;max-height:240px;overflow:auto;box-shadow:0 12px 30px rgba(28,33,38,.08)}.gv-pf-client-results>button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;width:100%;text-align:left;border:0;background:transparent;padding:9px 12px;cursor:pointer;font:inherit;border-top:1px solid var(--gv-line-soft)}.gv-pf-client-results>button:first-child{border-top:0}.gv-pf-client-results>button:hover{background:#F2F4F6}.gv-pf-client-results>button strong{font-size:12px;color:var(--gv-ink)}.gv-pf-client-results>button small{grid-column:1;font-size:10px;color:var(--gv-muted)}.gv-pf-client-results>button em{grid-row:1/3;align-self:center;font-style:normal;font-size:10px;color:#6F7982}
.gv-pf-client-selected{display:flex;align-items:center;gap:12px;border:1px solid var(--gv-line);border-radius:8px;background:#F7F8F9;padding:10px 12px}.gv-pf-client-selected strong{flex:1;font-size:13px;color:var(--gv-ink)}.gv-pf-client-selected .gv-btn{min-height:30px;padding:0 10px}
.gv-pf-contacts{margin-top:12px;border:1px solid var(--gv-line);border-radius:8px;background:#FCFCFD}.gv-pf-contacts-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--gv-line-soft)}.gv-pf-contacts-head small{font-weight:500;color:#8A949D;margin-left:6px}.gv-pf-contacts-head select{height:30px;border:1px solid var(--gv-line);border-radius:6px;background:#fff;font:inherit;font-size:10.5px;padding:0 8px}
.gv-pf-contact-list{max-height:260px;overflow:auto}.gv-pf-contact{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 12px;border-top:1px solid var(--gv-line-soft);cursor:pointer}.gv-pf-contact:first-child{border-top:0}.gv-pf-contact.is-checked{background:#F3F6F4}.gv-pf-contact.is-archived{opacity:.66}.gv-pf-contact input{width:15px;height:15px;margin:0}.gv-pf-contact-copy strong{display:block;font-size:12px;color:var(--gv-ink)}.gv-pf-contact-copy small{display:block;font-size:10px;color:var(--gv-muted);margin-top:1px}.gv-pf-contact-primary{display:flex;align-items:center;gap:5px;font-size:10.5px;color:#5C7062;white-space:nowrap}.gv-pf-contact-primary input:disabled+*,.gv-pf-contact input[type="radio"]:disabled{opacity:.35}
.gv-pf-empty{padding:12px;font-size:10.5px;color:var(--gv-muted)}
.gv-pf-quick{border-top:1px solid var(--gv-line-soft);padding:8px 12px 12px}.gv-pf-quick summary{cursor:pointer;font-size:11px;font-weight:650;color:#3B4A55;padding:4px 0}.gv-pf-quick .gv-form-grid{margin-top:8px}.gv-pf-quick-actions{margin-top:8px;display:flex;justify-content:flex-end}.gv-pf-quick .gv-btn{min-height:32px;padding:0 10px}
.gv-pf-postcode{display:flex;gap:6px}.gv-pf-postcode input{flex:1;min-width:0}.gv-pf-postcode .gv-btn{min-height:42px;padding:0 10px;white-space:nowrap}.gv-pf-postcode-embed{margin-top:10px;height:440px;border:1px solid var(--gv-line);border-radius:8px;overflow:hidden;background:#fff}
.gv-pf-textarea{display:flex;flex-direction:column;gap:6px}.gv-pf-textarea textarea{width:100%;border:1px solid var(--gv-line);background:#FAFBFC;border-radius:6px;padding:10px;font:inherit;font-size:11px;line-height:1.55;resize:vertical}.gv-pf-textarea textarea:focus{border-color:#AEB7C1;outline:0}
.gv-form-grid label>span small{font-weight:500;color:#9AA3AB;margin-left:4px}
.gv-project-contact-rows{display:grid;gap:6px;margin-top:6px}.gv-project-contact-rows>div{display:flex;align-items:baseline;gap:8px;font-size:11px}.gv-project-contact-rows strong{color:var(--gv-ink)}.gv-project-contact-rows small{color:var(--gv-muted)}.gv-project-contact-rows em{font-style:normal;font-size:9px;font-weight:650;color:#5c7062;background:#edf3ee;border-radius:999px;padding:2px 6px}
.gv-project-overview .gv-project-memo{white-space:pre-wrap;font-size:11px;line-height:1.6;color:#3B444C;margin:4px 0 0}
@media(max-width:700px){.gv-project-form-body{max-height:none}.gv-pf-contact{grid-template-columns:auto minmax(0,1fr)}.gv-pf-contact-primary{grid-column:2}}
.gv-project-form-modal [hidden]{display:none!important}

/* Project Operations Cockpit (Project detail only): warm neutral, generous spacing, few cards */
.gv-cockpit-hero{grid-template-columns:minmax(0,1fr) auto;padding:26px 28px 24px;border:1px solid #E6E2DB;border-radius:14px;background:#FBFAF7;margin-bottom:14px}
.gv-cockpit-hero[data-phase="in_progress"]{border-color:#D5DFD4;background:#F9FBF8}
.gv-cockpit-eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;color:#7A7168;font-weight:640}.gv-cockpit-eyebrow a{color:#3B3833;text-decoration:none;font-weight:700}.gv-cockpit-eyebrow a:hover{text-decoration:underline}.gv-cockpit-eyebrow i{width:3px;height:3px;border-radius:50%;background:#C9C2B8;display:inline-block}
.gv-cockpit-phase{font-size:11px;font-weight:780;letter-spacing:.06em;padding:3px 8px;border-radius:999px;border:1px solid #DDD6CC;color:#5F574E;background:#FFFFFF}.gv-cockpit-phase[data-phase="in_progress"]{border-color:#C9DCCE;color:#2F6344;background:#F3F8F4}.gv-cockpit-phase[data-phase="completed"],.gv-cockpit-phase[data-phase="archived"]{color:#8A8279}
.gv-cockpit-identity h1{margin:10px 0 0;font-size:30px;line-height:1.2;letter-spacing:-.012em;color:#26231F}
.gv-cockpit-when{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 0;font-size:14px;color:#5C554D}.gv-cockpit-when strong{color:#2E2A25;font-weight:680}.gv-cockpit-when i{width:3px;height:3px;border-radius:50%;background:#C9C2B8;display:inline-block}
.gv-cockpit-owner{margin:8px 0 0;font-size:12.5px;color:#7A7168}.gv-cockpit-owner strong{color:#2E2A25;font-weight:680;margin-left:4px}
.gv-cockpit-actions{align-self:start}
.gv-cockpit-tabs{margin-bottom:18px}
.gv-cockpit-pulse{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0 0 16px;border-top:1px solid #E6E2DB;border-bottom:1px solid #E6E2DB}
.gv-cockpit-pulse-group{display:flex;gap:30px;padding:18px 26px;border-right:1px solid #ECE8E1}.gv-cockpit-pulse-group:last-child{border-right:0}
.gv-cockpit-pulse-group>div{display:grid;gap:4px;min-width:56px}.gv-cockpit-pulse-group span{font-size:11px;letter-spacing:.06em;color:#8A8279;font-weight:680}.gv-cockpit-pulse-group strong{font-size:30px;line-height:1;letter-spacing:-.02em;color:#26231F;font-weight:620}.gv-cockpit-pulse-group strong small{font-size:13px;color:#9A9188;margin-left:4px;font-weight:600}
.gv-cockpit-pulse-group>div[data-alert="1"] strong{color:#A5453B}.gv-cockpit-pulse-group>div[data-alert="1"] span{color:#A5453B}
.gv-cockpit-attention{margin-bottom:18px}.gv-cockpit-attention .gv-project-signal{border-color:#E9E4DC;background:#FDFCFA}
.gv-cockpit-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);gap:22px;align-items:start}.gv-cockpit-main,.gv-cockpit-side{display:grid;gap:22px;min-width:0}
.gv-cockpit-block{padding:0 0 4px}.gv-cockpit-block-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 0 10px;border-bottom:1px solid #E6E2DB;margin-bottom:12px}.gv-cockpit-block-head h2{margin:0;font-size:14px;font-weight:720;color:#2E2A25;letter-spacing:-.005em}
.gv-cockpit-empty,.gv-cockpit-more{margin:6px 0 0;font-size:12.5px;color:#8A8279;line-height:1.6}.gv-cockpit-more a{color:#3B3833}
.gv-cockpit-table{width:100%;border-collapse:collapse;font-size:13px}.gv-cockpit-table th{text-align:left;font-size:11px;letter-spacing:.05em;color:#8A8279;font-weight:680;padding:6px 10px 8px;border-bottom:1px solid #ECE8E1}.gv-cockpit-table td{padding:11px 10px;border-bottom:1px solid #F0EDE7;vertical-align:top;color:#2E2A25}.gv-cockpit-table td strong{display:block;font-weight:680}.gv-cockpit-table td small{display:block;font-size:11px;color:#9A9188;margin-top:2px}.gv-cockpit-table tr[data-short="1"] td{background:#FDF7F5}.gv-cockpit-table td em{font-style:normal;font-weight:760;color:#A5453B}.gv-cockpit-ok{color:#4E7A5B;font-weight:640}.gv-cockpit-muted{color:#9A9188}
.gv-cockpit-table tr[data-record="missing"] td{background:#FFFDF6}.gv-cockpit-table tr[data-record="noshow"] td{background:#FDF7F5}
.gv-cockpit-people{display:grid;gap:0}.gv-cockpit-person{display:grid;grid-template-columns:minmax(120px,1.2fr) minmax(90px,1fr) 64px 56px auto;gap:12px;align-items:center;padding:10px 4px;border-bottom:1px solid #F0EDE7;font-size:13px;color:#5C554D}.gv-cockpit-person strong{color:#2E2A25;font-weight:680}.gv-cockpit-person em{font-style:normal;font-size:11.5px;font-weight:680;padding:3px 8px;border-radius:999px;border:1px solid #E6E2DB;color:#7A7168;white-space:nowrap}.gv-cockpit-person[data-tone="ok"] em{border-color:#C9DCCE;color:#2F6344;background:#F3F8F4}.gv-cockpit-person[data-tone="warn"] em{border-color:#E6D8BE;color:#8A6A1F;background:#FFFCF3}.gv-cockpit-person[data-tone="critical"] em{border-color:#E4C6C3;color:#A5453B;background:#FFF7F6}
.gv-cockpit-tone{font-size:11.5px;font-weight:680;padding:3px 8px;border-radius:999px;border:1px solid #E6E2DB;color:#7A7168;white-space:nowrap}.gv-cockpit-tone[data-tone="ok"]{border-color:#C9DCCE;color:#2F6344;background:#F3F8F4}.gv-cockpit-tone[data-tone="warn"]{border-color:#E6D8BE;color:#8A6A1F;background:#FFFCF3}.gv-cockpit-tone[data-tone="critical"]{border-color:#E4C6C3;color:#A5453B;background:#FFF7F6}
.gv-cockpit-flow.gv-panel{border-color:#E6E2DB;background:#FDFCFA}
.gv-cockpit-client{margin:0 0 10px;display:flex;align-items:baseline;gap:8px}.gv-cockpit-client strong{font-size:15px;color:#2E2A25}.gv-cockpit-client small{color:#8A8279;font-size:12px}
.gv-cockpit-contacts{display:grid;gap:0}.gv-cockpit-contact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;padding:9px 0;border-bottom:1px solid #F0EDE7}.gv-cockpit-contact:last-child{border-bottom:0}.gv-cockpit-contact strong{font-size:13.5px;color:#2E2A25;font-weight:680}.gv-cockpit-contact em{font-style:normal;font-size:10px;font-weight:700;color:#5c7062;background:#edf3ee;border-radius:999px;padding:2px 6px;margin-left:6px;vertical-align:middle}.gv-cockpit-contact small{display:block;font-size:11.5px;color:#8A8279;margin-top:2px}
.gv-cockpit-contact-channel{display:grid;gap:2px;text-align:right;font-size:12px}.gv-cockpit-contact-channel a{color:#3B3833;text-decoration:none;white-space:nowrap}.gv-cockpit-contact-channel a:hover{text-decoration:underline}.gv-cockpit-contact-channel span{color:#9A9188;font-size:11.5px}
.gv-cockpit-facts{margin:0;display:grid;gap:0}.gv-cockpit-facts>div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:1px solid #F0EDE7;font-size:13px}.gv-cockpit-facts>div:last-child{border-bottom:0}.gv-cockpit-facts dt{color:#8A8279;font-size:11.5px;font-weight:680;letter-spacing:.03em;padding-top:2px}.gv-cockpit-facts dd{margin:0;color:#2E2A25;line-height:1.5;word-break:keep-all}
.gv-cockpit-address-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}.gv-cockpit-address-actions .gv-btn{min-height:34px;height:34px;padding:0 12px;font-size:12px}.gv-cockpit-copy-msg{font-size:11.5px;color:#4E7A5B}
.gv-cockpit-memo{margin:0;font-size:13px;line-height:1.7;color:#3D3833;white-space:pre-wrap}
.gv-cockpit-task-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.gv-cockpit-task-summary div{border-color:#ECE8E1;background:#FDFCFA}
.gv-cockpit-side .gv-v124-linked-tasks a{padding:8px 4px}
.gv-cockpit-staffing .gv-cockpit-table{margin-top:4px}.gv-cockpit-table-wide td small{display:inline;margin-left:6px}
.gv-cockpit-casting-summary{font-size:11.5px;color:#5C554D;font-weight:650;padding:6px 10px;border:1px solid #E6E2DB;border-radius:999px;background:#FDFCFA;white-space:nowrap}
.gv-cockpit-bridge{margin:12px 0 0;font-size:11px;color:#9A9188}.gv-cockpit-bridge a{color:#7A7168}
.gv-cockpit-activity a strong span{font-weight:600;color:#6F675E}
@media(max-width:1199px){.gv-cockpit-pulse{grid-template-columns:1fr}.gv-cockpit-pulse-group{border-right:0;border-bottom:1px solid #ECE8E1;padding:14px 4px}.gv-cockpit-pulse-group:last-child{border-bottom:0}.gv-cockpit-grid{grid-template-columns:1fr}}
@media(max-width:700px){.gv-cockpit-hero{grid-template-columns:1fr;padding:20px 18px}.gv-cockpit-identity h1{font-size:24px}.gv-cockpit-pulse-group{gap:18px;flex-wrap:wrap}.gv-cockpit-pulse-group strong{font-size:26px}.gv-cockpit-person{grid-template-columns:minmax(0,1fr) auto;row-gap:2px}.gv-cockpit-person span:nth-child(3),.gv-cockpit-person span:nth-child(4){display:none}.gv-cockpit-contact{grid-template-columns:1fr}.gv-cockpit-contact-channel{text-align:left}.gv-cockpit-table-wide{display:block;overflow-x:auto}}
.gv-col-12{grid-column:span 12}

/* Project Detail · UI polish pass 1: compact header, KPI tiers, denser lists, side column, quieter casting */
.gv-cockpit-hero{padding:18px 24px 16px;margin-bottom:12px;gap:18px}
.gv-cockpit-eyebrow{font-size:12.5px}
.gv-cockpit-identity h1{margin:8px 0 0;font-size:26px;line-height:1.2}
.gv-cockpit-when{margin:8px 0 0;font-size:13.5px;row-gap:4px}.gv-cockpit-owner-inline{color:#7A7168;font-size:13px}.gv-cockpit-owner-inline strong{color:#2E2A25;font-weight:680;margin-left:4px}
.gv-cockpit-actions .gv-btn{height:38px;min-height:38px;padding:0 13px}
.gv-cockpit-tabs{margin-bottom:14px}
.gv-cockpit-pulse{margin:0 0 14px;grid-template-columns:minmax(0,1.15fr) minmax(0,1.1fr) minmax(0,.9fr)}
.gv-cockpit-pulse-group{padding:14px 22px;gap:26px}
.gv-cockpit-pulse-group span{font-size:12px;color:#8A8279}
.gv-cockpit-pulse-group[data-tier="1"] strong{font-size:34px;font-weight:640;color:#26231F}
.gv-cockpit-pulse-group[data-tier="2"] strong{font-size:26px;font-weight:560;color:#3D3833}
.gv-cockpit-pulse-group[data-tier="3"] strong{font-size:20px;font-weight:520;color:#6F675E}
.gv-cockpit-pulse-group[data-tier="3"] span{color:#9A9188}
.gv-cockpit-pulse-group>div[data-alert="1"] strong{color:#A5453B}.gv-cockpit-pulse-group>div[data-alert="1"] span{color:#A5453B}
.gv-cockpit-attention{margin-bottom:16px}
.gv-cockpit-attention .gv-panel-head{padding-bottom:6px}.gv-cockpit-attention .gv-panel-title{font-size:14px}
.gv-cockpit-attention-count{font-size:12px;color:#8A8279;font-weight:650;padding:3px 9px;border:1px solid #E6E2DB;border-radius:999px}
.gv-cockpit-attention .gv-project-signal-list{gap:0}
.gv-cockpit-attention .gv-project-signal{padding:9px 6px;gap:12px;border:0;border-top:1px solid #EEEAE3;border-radius:0;background:transparent}
.gv-cockpit-attention .gv-project-signal:first-child{border-top:0}
.gv-cockpit-attention .gv-project-signal strong{font-size:13.5px;font-weight:680;color:#2E2A25}
.gv-cockpit-attention .gv-project-signal small{font-size:12.5px;color:#7E766D;margin-top:1px}
.gv-cockpit-attention .gv-project-signal a{padding:5px 10px;font-size:12px;border-color:#E6E2DB;color:#3B3833}
.gv-cockpit-attention .gv-project-signal-mark{width:8px;height:8px;background:#C9C2B8}
.gv-cockpit-attention .gv-project-signal[data-level="critical"] .gv-project-signal-mark{background:#B4544B}
.gv-cockpit-attention .gv-project-signal[data-level="warn"] .gv-project-signal-mark{background:#C29A46}
.gv-cockpit-attention .gv-project-signal[data-level="critical"] strong{color:#7F3A33}
.gv-cockpit-more-btn{margin:8px 0 0;border:0;background:transparent;color:#6F675E;font:inherit;font-size:12.5px;font-weight:650;cursor:pointer;padding:6px 6px 2px;text-decoration:underline;text-underline-offset:3px}.gv-cockpit-more-btn:hover{color:#2E2A25}
.gv-cockpit-block-head{padding:0 0 8px;margin-bottom:8px}.gv-cockpit-block-head h2{font-size:13.5px}
.gv-cockpit-positions{display:grid;gap:0}
.gv-cockpit-position{display:grid;grid-template-columns:minmax(110px,.6fr) minmax(0,1.5fr) auto;gap:14px;align-items:baseline;padding:10px 4px;border-bottom:1px solid #F0EDE7}
.gv-cockpit-position strong{font-size:14px;font-weight:680;color:#2E2A25;display:flex;align-items:center;gap:8px}
.gv-cockpit-position[data-short="1"] strong::before{content:"";width:7px;height:7px;border-radius:50%;background:#B4544B;flex:none}
.gv-cockpit-position-line{font-size:13.5px;color:#5C554D}.gv-cockpit-position-line em{font-style:normal;font-weight:720;color:#A5453B}.gv-cockpit-position-line b{font-weight:640;color:#4E7A5B}
.gv-cockpit-position small{font-size:12.5px;color:#9A9188;white-space:nowrap}
.gv-cockpit-person{grid-template-columns:minmax(130px,1.1fr) minmax(90px,.9fr) minmax(120px,1fr) auto;padding:9px 4px;font-size:13px;color:#6F675E}
.gv-cockpit-person strong{font-size:13.5px}.gv-cockpit-person-meta{color:#9A9188}
.gv-cockpit-person em[data-tone="ok"],.gv-cockpit-person em[data-tone="muted"]{border:0;padding:0;background:transparent;color:#9A9188;font-weight:600}
.gv-cockpit-person[data-tone="critical"] strong{color:#7F3A33}
.gv-cockpit-table td.gv-cockpit-muted{color:#8A8279}
.gv-cockpit-tone[data-tone="ok"],.gv-cockpit-tone[data-tone="muted"]{border:0;padding:0;background:transparent;color:#9A9188;font-weight:600}
.gv-cockpit-table tr[data-tone="critical"] td strong{color:#7F3A33}.gv-cockpit-table tr[data-tone="warn"] td strong{color:#7A5A19}
.gv-cockpit-side{gap:0;border-left:1px solid #E6E2DB;padding-left:22px}
.gv-cockpit-side .gv-cockpit-block{padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid #EEEAE3}.gv-cockpit-side .gv-cockpit-block:last-child{border-bottom:0;margin-bottom:0}
.gv-cockpit-side .gv-cockpit-block-head{border-bottom:0;padding-bottom:6px;margin-bottom:6px}.gv-cockpit-side .gv-cockpit-block-head h2{font-size:12.5px;letter-spacing:.02em;color:#6F675E;font-weight:700}
.gv-cockpit-client strong{font-size:15px}.gv-cockpit-client small{font-size:12.5px}
.gv-cockpit-contact{grid-template-columns:1fr;gap:3px;padding:8px 0}
.gv-cockpit-contact strong{font-size:14px}.gv-cockpit-contact small{font-size:12.5px;color:#7E766D}
.gv-cockpit-contact-channel{display:flex;flex-wrap:wrap;gap:4px 14px;text-align:left;font-size:12.5px;margin-top:2px}.gv-cockpit-contact-channel a{color:#6F675E}.gv-cockpit-contact-channel span{font-size:12.5px}
.gv-cockpit-facts>div{grid-template-columns:70px minmax(0,1fr);padding:7px 0;font-size:13px}.gv-cockpit-facts dt{font-size:12.5px}
.gv-cockpit-address-actions{margin-top:10px;gap:14px}
.gv-cockpit-utility{border:0;background:transparent;padding:0;font:inherit;font-size:12.5px;font-weight:650;color:#6F675E;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.gv-cockpit-utility:hover{color:#2E2A25}
.gv-cockpit-copy-msg{font-size:12.5px}
.gv-cockpit-memo{font-size:13.5px}
.gv-cockpit-task-line{margin:0 0 8px;font-size:13px;color:#7E766D}.gv-cockpit-task-line strong{color:#2E2A25;font-weight:680}.gv-cockpit-task-line strong[data-alert="1"]{color:#A5453B}
.gv-cockpit-empty,.gv-cockpit-more{font-size:13px}
.gv-cockpit-flow .gv-project-flow-track small{font-size:12.5px}
.gv-cockpit-mini-summary strong{font-size:22px;font-weight:600}.gv-cockpit-mini-summary span{font-size:12px}
/* people tab · casting panel speaks operator language; internals are dev-only */
.gv-cockpit-dev{font:12px ui-monospace,monospace;color:#9A9188}
.gv-casting-layout-polished{grid-template-columns:1fr;gap:14px}
.gv-casting-list-head span{font-size:12px;letter-spacing:.04em;color:#7A7168;font-weight:700}.gv-casting-list-head strong{font-size:16px}
.gv-casting-session-card{border-color:#E6E2DB;background:#FDFCFA;padding:14px 16px}
.gv-casting-session-top strong{font-size:15px;color:#2E2A25}.gv-casting-session-top small{font:12.5px inherit;color:#7E766D}
.gv-casting-session-top .gv-status[data-status="live"]{background:#F3F8F4;color:#2F6344}.gv-casting-session-top .gv-status[data-status="draft"]{background:#FFFCF3;color:#8A6A1F}
.gv-casting-candidate-item{grid-template-columns:minmax(140px,1fr) auto auto;padding:9px 0;border-top:1px solid #F0EDE7}
.gv-casting-candidate-item strong{font-size:13.5px;color:#2E2A25}.gv-casting-candidate-item small{font-size:12.5px;color:#8A8279}
.gv-casting-candidate-item[data-decision="FIX"] strong{color:#2F6344}
.gv-casting-decisions button{font-size:12px;padding:5px 11px;border-color:#E6E2DB}
.gv-casting-card-actions button{font-size:12.5px}
.gv-casting-notice{font-size:13px;margin:12px 0;background:#FDFCFA;border-color:#E6E2DB;color:#5C554D}
.gv-casting-token{border-color:#D5DFD4;background:#F9FBF8}.gv-casting-token strong{font-size:13px}.gv-casting-token small{font-size:12.5px}
.gv-casting-advanced{border:1px solid #E6E2DB;border-radius:10px;background:#FDFCFA}
.gv-casting-advanced>summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:12px;padding:12px 16px}.gv-casting-advanced>summary::-webkit-details-marker{display:none}
.gv-casting-advanced>summary span{font-size:13.5px;font-weight:700;color:#2E2A25}.gv-casting-advanced>summary small{font-size:12.5px;color:#8A8279}
.gv-casting-advanced>summary::before{content:"+";font-weight:600;color:#7A7168;width:14px}.gv-casting-advanced[open]>summary::before{content:"–"}
.gv-casting-advanced[open]>summary{border-bottom:1px solid #EEEAE3}
.gv-casting-advanced .gv-casting-editor{border:0;background:transparent;padding:16px}
.gv-casting-editor-head span,.gv-casting-candidate-head span{font-size:12px;letter-spacing:.03em;color:#7A7168}.gv-casting-editor-head strong{font-size:15px}
.gv-casting-editor label>span{font-size:12.5px}.gv-casting-candidate-head small{font-size:12.5px}
.gv-casting-candidate-row{background:#FFF;border-color:#EEEAE3}
.gv-casting-scope-note{font-size:12.5px}
/* operations tab */
.gv-cockpit-ops-summary{margin:0 0 14px;grid-template-columns:1fr;border-top:0}
.gv-cockpit-ops-summary .gv-cockpit-pulse-group{padding:10px 4px 16px;border-right:0}
.gv-cockpit-next{margin:0 0 16px}.gv-cockpit-next h3{margin:0 0 6px;font-size:13.5px;font-weight:720;color:#2E2A25}
.gv-cockpit-next .gv-project-signal-list{gap:0}.gv-cockpit-next .gv-project-signal{padding:9px 6px;gap:12px;border:0;border-top:1px solid #EEEAE3;border-radius:0;background:transparent}
.gv-cockpit-next .gv-project-signal strong{font-size:13.5px}.gv-cockpit-next .gv-project-signal small{font-size:12.5px;color:#7E766D}.gv-cockpit-next .gv-project-signal a,.gv-cockpit-next .gv-project-signal em{font-size:12px;padding:5px 10px;border-color:#E6E2DB;color:#3B3833}
.gv-cockpit-next .gv-project-signal-mark{width:8px;height:8px;background:#C9C2B8}.gv-cockpit-next .gv-project-signal[data-level="critical"] .gv-project-signal-mark{background:#B4544B}.gv-cockpit-next .gv-project-signal[data-level="warn"] .gv-project-signal-mark{background:#C29A46}
@media(max-width:1199px){.gv-cockpit-side{border-left:0;padding-left:0;border-top:1px solid #E6E2DB;padding-top:16px}}
@media(max-width:700px){.gv-cockpit-position{grid-template-columns:1fr;gap:2px}.gv-cockpit-person{grid-template-columns:minmax(0,1fr) auto}.gv-cockpit-person-meta{display:none}}

/* polish pass 1 · fixes after inspection */
.gv-project-signal[hidden],#gvCastingFoundation [hidden],.gv-cockpit-attention [hidden]{display:none!important}
.gv-cockpit-flow .gv-project-flow-track{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.gv-cockpit-flow .gv-project-flow-track li{padding:11px 12px}
.gv-casting-session-top small{font-family:inherit;font-size:12.5px;letter-spacing:0}
.gv-casting-candidate-item{grid-template-columns:minmax(140px,1fr) max-content max-content;gap:14px}
.gv-casting-decisions{display:flex;flex-wrap:nowrap;gap:4px}
.gv-casting-decisions button{white-space:nowrap}
.gv-casting-promotion{margin-left:0}
.gv-cockpit-mini-summary{display:flex;gap:30px;margin:0 0 12px;padding:10px 4px 12px;border-top:1px solid #EEEAE3;border-bottom:1px solid #EEEAE3}
.gv-cockpit-mini-summary div{border:0;background:transparent;padding:0;border-radius:0;gap:3px}
.gv-cockpit-mini-summary div[data-alert="1"]{border:0;background:transparent}.gv-cockpit-mini-summary div[data-alert="1"] strong,.gv-cockpit-mini-summary div[data-alert="1"] span{color:#A5453B}
.gv-cockpit-mini-summary strong{font-size:22px;font-weight:600;color:#2E2A25}.gv-cockpit-mini-summary strong small{font-size:12px;color:#9A9188;margin-left:3px}
@media(max-width:1199px){.gv-cockpit-flow .gv-project-flow-track{grid-template-columns:repeat(3,minmax(0,1fr))}.gv-cockpit-mini-summary{flex-wrap:wrap;gap:18px}}
@media(max-width:620px){.gv-casting-candidate-item{grid-template-columns:1fr}.gv-casting-decisions{flex-wrap:wrap}}
.gv-casting-candidate-item>.gv-casting-decisions{display:flex;flex-wrap:nowrap;gap:4px;align-items:center}
.gv-casting-candidate-item>.gv-casting-promotion{display:flex;align-items:center;gap:8px}

/* Quote operating flow (Phase 4): project context, revision history, cockpit quote block */
.gv-quote-project-context{display:flex;align-items:center;gap:12px;margin:0 0 12px;padding:10px 14px;border:1px solid #E6E2DB;border-radius:8px;background:#FDFCFA;font-size:12.5px;color:#7A7168}
.gv-quote-project-context strong{color:#2E2A25;font-size:13px}.gv-quote-project-context a{color:#6F675E;font-weight:650;text-decoration:underline;text-underline-offset:3px}.gv-quote-project-context a:last-child{margin-left:auto}
.gv-v125-revision-section{margin-top:6px}.gv-v125-revision-history{display:grid;gap:0;border:1px solid #E6E2DB;border-radius:8px;overflow:hidden;background:#FDFCFA}
.gv-quote-revision-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;width:100%;padding:9px 12px;border:0;border-top:1px solid #EEEAE3;background:transparent;text-align:left;cursor:pointer;font:inherit;color:#5C554D}
.gv-quote-revision-row:first-child{border-top:0}.gv-quote-revision-row:hover{background:#F6F3EE}.gv-quote-revision-row.is-current{background:#F3F6F4}
.gv-quote-revision-row strong{font-size:13px;color:#2E2A25}.gv-quote-revision-row em{font-style:normal;font-size:10.5px;font-weight:700;color:#2F6344;background:#F3F8F4;border:1px solid #C9DCCE;border-radius:999px;padding:2px 7px;margin-left:6px}.gv-quote-revision-row em.soft{color:#7A7168;background:#FFF;border-color:#E6E2DB}
.gv-quote-revision-row small{font-size:12px;color:#9A9188}.gv-quote-revision-row b{font-size:13px;color:#2E2A25;font-weight:680}
#gvQuoteRevise.is-highlight{box-shadow:0 0 0 3px #E6D8BE}
.gv-cockpit-quote dd strong{font-size:15px;font-weight:700;color:#26231F}

/* ---- Phase 5 · Contract Center (canonical) ------------------------------------ */
.gv-contract-hero-actions{display:flex;gap:10px;align-items:center}
.gv-contract-state.draft{background:var(--surface-2,#f1f2f3);color:var(--ink-2,#4b5258)}
.gv-contract-state.muted{background:var(--surface-2,#f1f2f3);color:var(--ink-3,#8a9298);text-decoration:line-through}
.gv-contract-table tr.is-selected td{background:var(--accent-soft,rgba(43,88,118,.06))}
.gv-contract-table td a{color:inherit;text-decoration:none}.gv-contract-table td a:hover strong{text-decoration:underline}
.gv-contract-create{margin-bottom:16px}.gv-contract-create[hidden]{display:none!important}
.gv-contract-form{display:grid;gap:12px}.gv-contract-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.gv-contract-field{display:grid;gap:5px;font-size:12px;color:var(--ink-2,#4b5258)}.gv-contract-field>span{font-weight:600}.gv-contract-field small{color:var(--ink-3,#8a9298)}
.gv-contract-field input,.gv-contract-field select,.gv-contract-field textarea{width:100%;font:inherit;padding:8px 10px;border:1px solid var(--line,#d9dcde);border-radius:8px;background:var(--surface,#fff);color:inherit}
.gv-contract-kind-switch{display:flex;gap:16px;font-size:13px}.gv-contract-kind-switch label{display:flex;align-items:center;gap:6px;cursor:pointer}
.gv-contract-create-context{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;padding:12px 14px;border:1px solid var(--line,#d9dcde);border-radius:10px;background:var(--surface-2,#f7f7f6);font-size:12px}
.gv-contract-create-context span{display:block;color:var(--ink-3,#8a9298);font-size:11px}.gv-contract-create-context strong{display:block;margin-top:3px;font-weight:600;word-break:keep-all}
.gv-contract-fixed{margin:0;font-size:12px;color:var(--ink-3,#8a9298)}
.gv-contract-form-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.gv-contract-form-note{font-size:12px;color:var(--ink-3,#8a9298)}
.gv-contract-check{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-2,#4b5258)}
.gv-contract-detail .gv-contract-next{display:flex;gap:10px;align-items:baseline;margin:0 0 12px;padding:10px 12px;border-radius:10px;background:var(--surface-2,#f7f7f6);font-size:13px}.gv-contract-detail .gv-contract-next strong{font-size:11px;letter-spacing:.06em;color:var(--ink-3,#8a9298);white-space:nowrap}
.gv-contract-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:0 0 14px}.gv-contract-facts>div{display:grid;gap:2px}.gv-contract-facts dt{font-size:11px;color:var(--ink-3,#8a9298)}.gv-contract-facts dd{margin:0;font-size:13px;word-break:keep-all}.gv-contract-facts dd a{color:inherit}
.gv-contract-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.gv-btn-danger{color:#8b3a3a}
.gv-contract-send{display:grid;gap:10px;padding:12px;border:1px dashed var(--line,#d9dcde);border-radius:10px;margin-bottom:12px}.gv-contract-send[hidden]{display:none!important}
.gv-contract-link-box{display:grid;gap:6px;padding:12px;border:1px solid var(--ok-line,#bfd8c8);border-radius:10px;background:var(--ok-soft,#eef7f1);margin-bottom:12px;font-size:12px}.gv-contract-link-box[hidden]{display:none!important}
.gv-contract-link-row{display:flex;gap:8px;align-items:center}.gv-contract-link-row input{flex:1;min-width:0;font:inherit;font-size:12px;padding:7px 9px;border:1px solid var(--line,#d9dcde);border-radius:8px;background:#fff}
.gv-contract-terms{margin-top:8px;padding-top:12px;border-top:1px solid var(--line,#e6e8ea)}
.gv-contract-ladder>div.muted{opacity:.6}.gv-contract-ladder>div>.gv-text-btn{margin-left:auto;white-space:nowrap}
.gv-contract-activity-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.gv-contract-activity-list li{display:grid;gap:2px;padding:8px 0;border-bottom:1px solid var(--line,#eef0f1);font-size:12px}.gv-contract-activity-list small{color:var(--ink-3,#8a9298)}
.gv-cockpit-contracts .gv-contract-facts{margin-bottom:10px}.gv-cockpit-contract-people td small{display:block;color:var(--ink-3,#8a9298)}
@media(max-width:700px){.gv-contract-facts{grid-template-columns:1fr}}
/* ---- Phase 5 · Public signing page -------------------------------------------- */
.gv-sign-body{margin:0;background:#ecebea;color:#24282c;font-family:"SUIT Variable",system-ui,-apple-system,"Segoe UI",sans-serif}
.gv-sign-shell{width:min(960px,calc(100% - 28px));margin:0 auto;padding:28px 0 60px;display:grid;gap:16px}
.gv-sign-head{display:flex;gap:22px;align-items:flex-start;padding:22px 26px;background:#252a2f;color:#fff;border-radius:16px}.gv-sign-head .gv-auth-brand{color:#fff;letter-spacing:.14em;font-weight:800;padding-top:4px}.gv-sign-head span{font-size:10px;letter-spacing:.14em;color:#b8c0c7}.gv-sign-head h1{margin:4px 0 6px;font-size:22px}.gv-sign-head p{margin:0;color:#d5dade;font-size:13px}
.gv-sign-state{padding:12px 16px;border-radius:10px;font-size:13px;background:#fff;border:1px solid #d9dcde}.gv-sign-state[data-tone="error"]{background:#fbeeee;border-color:#e4b9b9;color:#7d2f2f}.gv-sign-state[data-tone="ok"]{background:#eef7f1;border-color:#bfd8c8;color:#2f6b45}.gv-sign-state[hidden]{display:none!important}
.gv-sign-meta{background:#fff;border:1px solid #d9dcde;border-radius:14px;padding:16px 20px;display:grid;gap:12px}.gv-sign-meta[hidden]{display:none!important}
.gv-sign-meta-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.gv-sign-meta-head strong{font-size:16px;flex:1;min-width:200px}.gv-sign-kind{font-size:11px;letter-spacing:.06em;padding:4px 8px;border-radius:999px;background:#eef0f2;color:#4b5258}.gv-sign-status{font-size:12px;padding:4px 10px;border-radius:999px;background:#fff4e0;color:#8a5a12}.gv-sign-status[data-status="signed"]{background:#eef7f1;color:#2f6b45}
.gv-sign-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px 16px}.gv-sign-meta-grid small{display:block;font-size:10px;letter-spacing:.1em;color:#899198;font-weight:700}.gv-sign-meta-grid strong{display:block;margin-top:4px;font-size:13px;font-weight:600;word-break:keep-all}
.gv-sign-meta-foot{margin:0;font-size:11px;color:#8a9298}
.gv-sign-doc iframe{width:100%;height:min(78vh,900px);border:1px solid #d9dcde;border-radius:14px;background:#fff}.gv-sign-doc iframe[hidden]{display:none!important}
.gv-sign-form{background:#fff;border:1px solid #d9dcde;border-radius:14px;padding:18px 22px;display:grid;gap:14px}.gv-sign-form[hidden]{display:none!important}.gv-sign-form h2{margin:0;font-size:16px}
.gv-sign-form label{display:grid;gap:6px;font-size:12px;color:#4b5258}.gv-sign-form label>span{font-weight:600}.gv-sign-form input[type="text"],.gv-sign-form input:not([type]){font:inherit;padding:10px 12px;border:1px solid #d9dcde;border-radius:10px}
.gv-sign-pad{display:grid;gap:8px;font-size:12px;color:#4b5258}.gv-sign-pad canvas{width:100%;max-width:560px;height:170px;border:1px dashed #b9c0c6;border-radius:10px;background:#fbfbfa;touch-action:none}
.gv-sign-consent{display:flex!important;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6}.gv-sign-consent input{margin-top:4px}
.gv-sign-actions{display:flex;flex-wrap:wrap;gap:10px}.gv-sign-note{margin:0;font-size:11px;color:#8a9298}
.gv-sign-done{background:#eef7f1;border:1px solid #bfd8c8;border-radius:14px;padding:18px 22px;display:grid;gap:10px}.gv-sign-done[hidden]{display:none!important}.gv-sign-done h2{margin:0;font-size:16px;color:#2f6b45}.gv-sign-done p{margin:0;font-size:13px}
@media(max-width:640px){.gv-sign-head{flex-direction:column;gap:8px}.gv-sign-doc iframe{height:70vh}}

/* ---- Phase 6 · Invoice / Receivable Center + Client billing + Executive billing ---- */
.gv-invoice-receivable{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 12px}
.gv-invoice-receivable>div{padding:10px 12px;border:1px solid var(--line,#e1e4e6);border-radius:10px;background:var(--surface-2,#f7f7f6)}
.gv-invoice-receivable span{display:block;font-size:11px;color:var(--ink-3,#8a9298)}.gv-invoice-receivable strong{display:block;margin-top:3px;font-size:15px}.gv-invoice-receivable small{display:block;color:var(--ink-3,#8a9298);font-size:11px}
.gv-invoice-receivable>div.warn{background:#fff6e8;border-color:#efd3a6}.gv-invoice-receivable>div.ok{background:#eef7f1;border-color:#bfd8c8}
.gv-contract-table tr.is-overdue td:nth-child(6) strong{color:#8b3a3a}.gv-contract-table td.num{text-align:right}.gv-contract-table th.num{text-align:right}
.gv-contract-ladder>div.warn{background:#fff6e8}
.gv-client-billing .gv-client-info-grid{margin-top:12px}.gv-client-form-hint{margin:8px 0 0;font-size:12px;color:var(--ink-3,#8a9298)}
.gv-executive-billing-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:0 0 14px}
.gv-executive-billing-tiles>div{padding:12px 14px;border:1px solid var(--line,#e1e4e6);border-radius:12px;background:var(--surface-2,#f7f7f6)}
.gv-executive-billing-tiles span{display:block;font-size:11px;color:var(--ink-3,#8a9298)}.gv-executive-billing-tiles strong{display:block;margin-top:4px;font-size:18px;font-variant-numeric:tabular-nums}.gv-executive-billing-tiles small{display:block;margin-top:2px;font-size:11px;color:var(--ink-3,#8a9298)}
.gv-executive-billing-tiles>div.warn{background:#fff6e8;border-color:#efd3a6}
@media(max-width:700px){.gv-invoice-receivable{grid-template-columns:1fr}}

/* ---- Phase 7 · Executive period answers, cash, contribution, monthly close ---- */
.gv-executive-periodbar{padding:12px 16px}.gv-executive-periods{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.gv-executive-periods a{display:inline-block;padding:6px 10px;border:1px solid var(--line,#d9dcde);border-radius:999px;font-size:12px;color:var(--ink-2,#4b5258);text-decoration:none;background:var(--surface,#fff)}
.gv-executive-periods a.active{background:var(--ink,#24282c);color:#fff;border-color:var(--ink,#24282c)}
.gv-executive-period-year{margin-left:auto;font-size:12px;color:var(--ink-3,#8a9298);display:flex;gap:6px;align-items:center}
.gv-executive-period-note{margin:10px 0 0;font-size:12px;color:var(--ink-3,#8a9298)}
.gv-executive-answer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:12px}
.gv-executive-answer-grid>a,.gv-executive-cash>a,.gv-executive-cash>div{display:block;padding:14px 16px;border:1px solid var(--line,#e1e4e6);border-radius:12px;background:var(--surface-2,#f7f7f6);color:inherit;text-decoration:none}
.gv-executive-answer-grid>a:hover,.gv-executive-cash>a:hover{border-color:var(--ink-3,#8a9298)}
.gv-executive-answer-grid span,.gv-executive-cash span{display:block;font-size:11px;color:var(--ink-3,#8a9298)}
.gv-executive-answer-grid strong,.gv-executive-cash strong{display:block;margin-top:4px;font-size:20px;font-variant-numeric:tabular-nums;line-height:1.2}
.gv-executive-answer-grid small,.gv-executive-cash small{display:block;margin-top:3px;font-size:11px;color:var(--ink-3,#8a9298)}
.gv-executive-answer-grid>a.warn,.gv-executive-cash>a.warn{background:#fff6e8;border-color:#efd3a6}
.gv-exec-delta.up{color:#2f6b45}.gv-exec-delta.down{color:#8b3a3a}.gv-exec-delta.flat{color:var(--ink-3,#8a9298)}
.gv-executive-cash{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}
.gv-executive-close-tools{display:flex;gap:10px;align-items:center}.gv-executive-close-tools input{font:inherit;padding:6px 8px;border:1px solid var(--line,#d9dcde);border-radius:8px;background:var(--surface,#fff)}
.gv-executive-close-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 10px}
.gv-executive-close-grid>div{padding:12px 14px;border:1px solid var(--line,#e1e4e6);border-radius:12px;background:var(--surface-2,#f7f7f6)}
.gv-executive-close-grid span{display:block;font-size:11px;color:var(--ink-3,#8a9298)}.gv-executive-close-grid strong{display:block;margin-top:4px;font-size:17px;font-variant-numeric:tabular-nums}.gv-executive-close-grid small{display:block;margin-top:2px;font-size:11px;color:var(--ink-3,#8a9298)}
.gv-executive-close-meta{margin:0 0 12px;font-size:12px;color:var(--ink-3,#8a9298)}
.gv-executive-close-unlinked{margin:12px 0;padding:12px 14px;border:1px dashed var(--line,#d9dcde);border-radius:10px;font-size:12px}.gv-executive-close-unlinked strong{display:block;margin-bottom:6px}.gv-executive-close-unlinked ul{margin:0 0 6px;padding-left:18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2px 12px}.gv-executive-close-unlinked em{font-style:normal;color:var(--ink-3,#8a9298)}.gv-executive-close-unlinked>span{color:var(--ink-3,#8a9298)}
.gv-executive-drilldown .gv-live-table td a{color:inherit}
@media(max-width:700px){.gv-executive-period-year{margin-left:0}}
/* Phase 8 · field-first Daily Operations; scoped to the new Project-day surface. */
.gv-daily-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px;padding:8px 2px}.gv-daily-hero>div:first-child>span{display:block;margin-top:14px;color:#8a8174;font-size:10px;font-weight:800;letter-spacing:.16em}.gv-daily-hero h1{margin:5px 0 2px;font-size:30px;letter-spacing:-.035em}.gv-daily-hero p,.gv-daily-back{color:#74716c;font-size:13px}.gv-daily-back{text-decoration:none}.gv-daily-state{min-width:160px;text-align:right}.gv-daily-state span,.gv-daily-state small{display:block;color:#88847e;font-size:11px}.gv-daily-state strong{display:block;margin:4px 0;font-size:18px}.gv-daily-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:16px}.gv-daily-workspace[hidden],.gv-daily-setup[hidden],.gv-daily-template[hidden],.gv-daily-workspace [hidden]{display:none!important}.gv-daily-workspace>.gv-panel{margin:0}.gv-daily-kpi,.gv-daily-sessions,.gv-daily-notes,.gv-daily-incidents{grid-column:1}.gv-daily-gift{grid-column:2;grid-row:1}.gv-daily-actions{position:sticky;bottom:14px;z-index:12;grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:11px 13px;border:1px solid rgba(98,91,80,.16);border-radius:10px;background:rgba(250,249,247,.94);box-shadow:0 10px 26px rgba(44,42,38,.08);backdrop-filter:blur(10px)}.gv-daily-actions>span{margin-right:auto;color:#77736c;font-size:12px}.gv-daily-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gv-daily-count,.gv-daily-field{display:flex;min-height:112px;flex-direction:column;justify-content:space-between;padding:15px;border-radius:9px;background:#f7f6f3}.gv-daily-count>span,.gv-daily-field>span,.gv-daily-gift-grid span,.gv-daily-template label>span,.gv-daily-dialog label>span{color:#77736d;font-size:12px;font-weight:700}.gv-daily-count>div{display:grid;grid-template-columns:44px 1fr 44px;gap:6px}.gv-daily-count button{min-height:44px;border:1px solid #ddd9d2;border-radius:8px;background:#fff;color:#4c4944;font-size:22px}.gv-daily-count input{text-align:center;font-size:22px;font-weight:800}.gv-daily-field input,.gv-daily-field select,.gv-daily-field textarea,.gv-daily-session input,.gv-daily-template input,.gv-daily-template select,.gv-daily-dialog input,.gv-daily-dialog select,.gv-daily-dialog textarea{width:100%;border:1px solid #dedbd5;border-radius:7px;background:rgba(255,255,255,.86);padding:10px;color:#353432}.gv-daily-session{display:grid;grid-template-columns:minmax(170px,1fr) repeat(3,minmax(145px,.65fr)) auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid rgba(94,88,78,.1)}.gv-daily-session>div:first-child small{display:block;margin-top:5px;color:#8c8881}.gv-daily-session .gv-daily-count{min-height:0;padding:0;background:none}.gv-daily-session .gv-daily-count>span{margin-bottom:5px}.gv-daily-gift-grid{display:grid;gap:12px}.gv-daily-gift-grid label,.gv-daily-gift-grid>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px;border-radius:8px;background:#f7f6f3}.gv-daily-gift-grid input{width:110px;padding:8px;text-align:right;font-size:18px;font-weight:800}.gv-daily-gift-grid strong{font-size:24px}.gv-daily-note-grid{display:grid;gap:13px}.gv-daily-note-grid label{display:grid;gap:7px}.gv-daily-note-grid textarea{border:1px solid #dedbd5;border-radius:8px;padding:12px;resize:vertical}.gv-daily-note-grid .internal{padding:12px;border-radius:8px;background:#f4f2ee}.gv-daily-incident{display:grid;grid-template-columns:74px 1fr auto auto;gap:10px;align-items:start;padding:13px 0;border-bottom:1px solid rgba(94,88,78,.1)}.gv-daily-incident time{color:#8b877f;font-size:12px}.gv-daily-incident p{margin:4px 0;color:#55524d;line-height:1.55}.gv-daily-incident small{color:#918c84}.gv-daily-incident button{border:0;background:none;color:#6f685d;font-size:12px}.gv-daily-template-head{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:16px;align-items:end;margin-bottom:14px}.gv-check{display:flex!important;align-items:center!important;gap:7px!important}.gv-check input{width:auto!important}.gv-daily-template-items{display:grid;gap:8px;margin:12px 0}.gv-template-row{display:grid;grid-template-columns:1fr 1.4fr 130px auto auto 36px;gap:8px;align-items:center}.gv-template-row>button{height:36px;border:0;background:none;color:#8d8880;font-size:18px}.gv-daily-dialog{width:min(560px,calc(100vw - 32px));border:1px solid #ddd8d0;border-radius:12px;background:#fbfaf8;padding:22px;box-shadow:0 20px 70px rgba(30,28,25,.2)}.gv-daily-dialog::backdrop{background:rgba(38,36,33,.35)}.gv-daily-dialog form,.gv-daily-dialog-grid{display:grid;gap:14px}.gv-daily-dialog-grid{grid-template-columns:1fr 1fr}.gv-daily-dialog label{display:grid;gap:7px}.gv-daily-preview #gvPreviewBody dl{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.gv-daily-preview #gvPreviewBody dl div{padding:10px;border-radius:7px;background:#f4f2ee}.gv-daily-preview dt{color:#77736d;font-size:11px}.gv-daily-preview dd{margin:4px 0 0;font-weight:800}.gv-daily-empty{text-align:center;padding:50px}.gv-daily-setup,.gv-daily-template{margin-bottom:16px}
@media(max-width:1100px){.gv-daily-workspace{grid-template-columns:1fr}.gv-daily-kpi,.gv-daily-sessions,.gv-daily-notes,.gv-daily-incidents,.gv-daily-gift{grid-column:1;grid-row:auto}.gv-daily-session{grid-template-columns:1fr repeat(3,minmax(120px,.55fr));}.gv-daily-session>.gv-check{grid-column:1/-1}.gv-daily-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.gv-daily-hero{align-items:flex-start;flex-direction:column}.gv-daily-state{text-align:left}.gv-daily-kpi-grid{grid-template-columns:1fr}.gv-daily-session{grid-template-columns:1fr}.gv-daily-template-head,.gv-template-row,.gv-daily-dialog-grid{grid-template-columns:1fr}.gv-daily-actions{flex-wrap:wrap}.gv-daily-actions>span{width:100%}.gv-daily-count button{min-height:48px}}

/* Phase 9 · Payroll Center / payslip */
.gv-payroll-hero-tools{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.gv-payroll-month-form label span{display:block;margin-bottom:6px;color:var(--muted);font-size:11px}.gv-payroll-month-form input{height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font:inherit}
.gv-payroll-layout{grid-template-columns:minmax(0,1fr) 360px}.gv-payroll-main{display:grid;gap:16px;min-width:0}.gv-payroll-actions{flex-wrap:wrap;justify-content:flex-end}
.gv-payroll-exceptions{margin:0 0 14px;padding:12px 14px;border:1px solid #dccab1;border-radius:12px;background:#fbf7ef}.gv-payroll-exceptions strong{display:block;margin-bottom:6px;font-size:12px}.gv-payroll-exceptions ul{margin:0;padding-left:18px;font-size:12.5px;line-height:1.6}.gv-payroll-exceptions a{margin-left:6px;font-weight:700}
.gv-payroll-table{min-width:1080px}.gv-payroll-table td.num,.gv-payroll-table th.num,.gv-payroll-revisions td.num,.gv-payroll-revisions th.num{text-align:right;font-variant-numeric:tabular-nums}.gv-payroll-table tr.excluded td{opacity:.5}.gv-payroll-table small.warn{color:#a3442f;font-weight:700}.gv-payroll-line-actions{white-space:nowrap}.gv-payroll-line-actions .gv-btn{margin-left:4px}.gv-payroll-revisions tr.current td{background:#f7f8f4}
.gv-payroll-note{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
.gv-payroll-side{display:grid;gap:16px;min-width:0}.gv-payroll-subhead{margin:16px 0 8px;font-size:11px;font-weight:800;letter-spacing:.06em;color:var(--muted)}
.gv-payroll-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.gv-payroll-list li{padding:10px 12px;border:1px solid var(--line-soft);border-radius:10px}.gv-payroll-list li.current{background:#f7f8f4;border-color:#cdddc6}.gv-payroll-list li a{text-decoration:none;color:inherit}.gv-payroll-list strong{display:block;font-size:13px}.gv-payroll-list small{display:block;margin-top:3px;color:var(--muted);font-size:11px;line-height:1.5}
.gv-payroll-comp-current{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.gv-payroll-comp-current span,.gv-payroll-comp-current small{display:block;color:var(--muted);font-size:11px;line-height:1.5}.gv-payroll-comp-current strong{display:block;margin:4px 0;font-size:20px}
.gv-payroll-details{margin-top:12px;border:1px solid var(--line-soft);border-radius:12px;padding:0 14px}.gv-payroll-details summary{cursor:pointer;padding:12px 0;font-size:13px;font-weight:700}.gv-payroll-form{display:grid;gap:10px;padding:0 0 14px}.gv-payroll-form .gv-contract-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.gv-payroll-form .gv-contract-actions small{color:var(--muted);font-size:11px;line-height:1.5}
.gv-payroll-activity{list-style:none;margin:0;padding:0;display:grid;gap:6px}.gv-payroll-activity li{display:grid;grid-template-columns:120px 1fr;gap:4px 12px;padding:8px 0;border-bottom:1px solid var(--line-soft);font-size:12.5px}.gv-payroll-activity span{color:var(--muted);font-size:11px}.gv-payroll-activity small{grid-column:2;color:var(--muted);font-size:11px}
.gv-payroll-dialog{width:min(920px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;border:1px solid #ddd8d0;border-radius:14px;background:#fbfaf8;padding:24px;box-shadow:0 20px 70px rgba(30,28,25,.2)}.gv-payroll-dialog::backdrop{background:rgba(38,36,33,.35)}.gv-payroll-dialog h2{margin:0 0 6px;font-size:18px}.gv-payroll-dialog-hint{margin:0 0 16px;color:var(--muted);font-size:12.5px;line-height:1.6}
.gv-payroll-dialog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gv-payroll-dialog-grid.two{grid-template-columns:1fr 1fr}.gv-payroll-dialog fieldset{margin:0;padding:12px 14px;border:1px solid var(--line-soft);border-radius:12px;display:grid;gap:8px}.gv-payroll-dialog legend{padding:0 6px;font-size:11px;font-weight:800;color:var(--muted)}.gv-payroll-dialog label{display:grid;gap:5px;font-size:12px}.gv-payroll-dialog label span{color:var(--muted);font-size:11px}.gv-payroll-dialog input,.gv-payroll-dialog select{height:36px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;text-align:right}.gv-payroll-dialog select,.gv-payroll-dialog input[type=text],.gv-payroll-dialog input[type=date]{text-align:left}.gv-payroll-dialog input[readonly]{background:#f1efea;color:var(--muted)}.gv-payroll-dialog-note{margin-top:14px}
.gv-payroll-dialog-totals{display:flex;gap:18px;align-items:baseline;flex-wrap:wrap;margin:16px 0;padding:12px 14px;border-radius:10px;background:#26241f;color:#f4f1ea;font-size:12px}.gv-payroll-dialog-totals strong{margin-left:6px;font-size:16px}.gv-payroll-dialog-totals strong.warn{color:#f0b3a3}.gv-payroll-dialog-totals small{margin-left:auto;opacity:.7}
.gv-executive-close-unlinked em.ok{color:#3d6b3a;font-style:normal;font-weight:700}
@media(max-width:1100px){.gv-payroll-layout{grid-template-columns:1fr}}@media(max-width:760px){.gv-payroll-dialog-grid,.gv-payroll-dialog-grid.two{grid-template-columns:1fr}.gv-payroll-activity li{grid-template-columns:1fr}.gv-payroll-activity small{grid-column:1}}
.gv-payroll-run>.gv-panel-head{flex-wrap:wrap;gap:12px;align-items:flex-start}.gv-payroll-run>.gv-panel-head>div:first-child{min-width:0;flex:1 1 420px}

/* Phase 10 · Leave Center */
.gv-leave-hero-tools{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.gv-leave-year-form label span{display:block;margin-bottom:6px;color:var(--muted);font-size:11px}.gv-leave-year-form select{height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font:inherit}
.gv-leave-layout{grid-template-columns:minmax(0,1fr) 380px}.gv-leave-main{display:grid;gap:16px;min-width:0}.gv-leave-side{display:grid;gap:16px;min-width:0}
.gv-leave-metrics{margin-bottom:14px}.gv-leave-table{min-width:760px}.gv-leave-table td.num,.gv-leave-table th.num{text-align:right;font-variant-numeric:tabular-nums}.gv-leave-table tr.current td{background:#f7f8f4}
.gv-leave-filters{grid-template-columns:1fr 1fr 1fr 1fr auto;margin-bottom:14px}
.gv-leave-facts{display:grid;gap:8px;margin:0 0 14px;padding:0}.gv-leave-facts>div{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:8px 0;border-bottom:1px solid var(--line-soft)}.gv-leave-facts dt{margin:0;color:var(--muted);font-size:11px;font-weight:700}.gv-leave-facts dd{margin:0;font-size:13px;line-height:1.5}
.gv-leave-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.gv-leave-actions small{color:var(--muted);font-size:11px;line-height:1.5}
.gv-leave-balance-form{display:flex;gap:6px;align-items:center;margin-top:8px;flex-wrap:wrap}.gv-leave-balance-form input{width:70px;height:32px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;text-align:right}
.gv-leave-check{display:flex;gap:8px;align-items:center;margin:12px 0;font-size:12.5px}.gv-leave-dialog{width:min(640px,calc(100vw - 32px))}
.gv-leave-detail>.gv-panel-head{flex-wrap:wrap;gap:12px;align-items:flex-start}.gv-leave-detail>.gv-panel-head>div:first-child{min-width:0;flex:1 1 380px}
@media(max-width:1100px){.gv-leave-layout{grid-template-columns:1fr}}@media(max-width:760px){.gv-leave-filters{grid-template-columns:1fr 1fr}.gv-leave-facts>div{grid-template-columns:1fr}}

/* Phase 11 · Document Request Center */
.gv-doc-hero-tools{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.gv-doc-layout{grid-template-columns:minmax(0,1fr) 360px}.gv-doc-main{display:grid;gap:16px;min-width:0}.gv-doc-side{display:grid;gap:16px;min-width:0}
.gv-doc-table{min-width:820px}.gv-doc-table tr.current td{background:#f7f8f4}.gv-doc-filters{grid-template-columns:1fr 1fr auto;margin-bottom:14px}
.gv-doc-evidence{margin:0 0 14px;padding:12px 14px;border:1px solid #cdddc6;border-radius:12px;background:#f7f8f4;font-size:12.5px;line-height:1.6}.gv-doc-evidence strong{display:block;margin-bottom:6px;font-size:12px}.gv-doc-evidence p{margin:0}.gv-doc-evidence small{color:var(--muted)}.gv-doc-evidence.warn,.gv-doc-evidence p.warn{border-color:#e6c2bc;background:#fbf3f0;color:#7d3b2f}
.gv-doc-history{width:100%;border-collapse:collapse;margin-top:8px;font-size:12px}.gv-doc-history th{text-align:left;padding:6px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px}.gv-doc-history td{padding:7px 6px;border-bottom:1px solid var(--line-soft);vertical-align:top}.gv-doc-history small{display:block;color:var(--muted)}
.gv-doc-assignments{display:grid;gap:6px;margin:12px 0;padding:10px 12px;border:1px solid var(--line-soft);border-radius:10px;font-size:12.5px}.gv-doc-assignments label{display:flex;gap:8px;align-items:flex-start}.gv-doc-assignments small{color:var(--muted)}.gv-doc-assignments .warn{color:#7d3b2f}
.gv-doc-detail>.gv-panel-head{flex-wrap:wrap;gap:12px;align-items:flex-start}.gv-doc-detail>.gv-panel-head>div:first-child{min-width:0;flex:1 1 380px}
@media(max-width:1100px){.gv-doc-layout{grid-template-columns:1fr}}@media(max-width:760px){.gv-doc-filters{grid-template-columns:1fr 1fr}}

/* Phase 12 · Communication Center */
.gv-comm-layout{grid-template-columns:minmax(0,1fr) 380px}.gv-comm-main{display:grid;gap:16px;min-width:0}.gv-comm-side{display:grid;gap:16px;min-width:0}.gv-comm-metrics{margin-bottom:16px}
.gv-comm-table{min-width:900px}.gv-comm-table tr.current td{background:#f7f8f4}.gv-comm-table td small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.gv-comm-filters{grid-template-columns:1fr 1.4fr 1fr 1fr auto;margin-bottom:14px}
.gv-contract-state.orphan{background:#f8ecea;border-color:#e6c2bc}
.gv-comm-snapshot{margin:0 0 14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.gv-comm-snapshot strong{display:block;margin-bottom:8px;font-size:13px}.gv-comm-snapshot pre{margin:0;white-space:pre-wrap;font:inherit;font-size:13px;line-height:1.7}
.gv-comm-template-list pre{margin:8px 0;padding:10px 12px;border-radius:8px;background:#f4f2ee;white-space:pre-wrap;font:inherit;font-size:12px;line-height:1.6;color:#3d444b}.gv-comm-template-list .gv-btn{margin-top:4px}
.gv-comm-recipients{display:grid;gap:6px;margin:12px 0;padding:10px 12px;border:1px solid var(--line-soft);border-radius:10px;font-size:12.5px}.gv-comm-recipients strong{display:flex;justify-content:space-between;align-items:center;font-size:12px}.gv-comm-recipients label{display:flex;gap:8px;align-items:flex-start}.gv-comm-recipients small,.gv-comm-previews small{color:var(--muted)}.gv-comm-recipients .warn,.gv-comm-previews .warn{color:#7d3b2f}
.gv-comm-previews{display:grid;gap:10px;margin:12px 0;max-height:320px;overflow:auto}.gv-comm-previews article{padding:10px 12px;border:1px solid var(--line-soft);border-radius:10px;background:#fff}.gv-comm-previews article strong{font-size:12.5px}.gv-comm-previews pre{margin:6px 0 0;white-space:pre-wrap;font:inherit;font-size:12.5px;line-height:1.6}
.gv-comm-dialog{width:min(820px,calc(100vw - 32px))}.gv-comm-dialog textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:13px;line-height:1.6}
.gv-comm-detail>.gv-panel-head{flex-wrap:wrap;gap:12px;align-items:flex-start}.gv-comm-detail>.gv-panel-head>div:first-child{min-width:0;flex:1 1 380px}.gv-leave-facts dd.warn{color:#7d3b2f}
.gv-project-comm-list{margin-top:6px}.gv-project-communication-summary .gv-contract-actions{display:flex;gap:8px}
@media(max-width:1100px){.gv-comm-layout{grid-template-columns:1fr}}@media(max-width:760px){.gv-comm-filters{grid-template-columns:1fr 1fr}}

/* ---------------------------------------------------------------- Phase 14 · People profile / search / detail */
.gv-people-canonical .gv-people-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:10px}
.gv-people-canonical .gv-people-filters label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--gv-muted,#666)}
.gv-people-canonical .gv-people-filters input,.gv-people-canonical .gv-people-filters select{height:34px;border:1px solid var(--gv-line,#e3e3df);border-radius:8px;padding:0 10px;font-size:13px;background:#fff}
.gv-people-canonical .gv-people-filters .gv-people-filter-actions{display:flex;align-items:end;gap:6px}
.gv-people-canonical .gv-live-person span img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
.gv-people-chip{display:inline-block;font-size:10px;border:1px solid var(--gv-line,#e3e3df);border-radius:999px;padding:2px 7px;margin:1px 0}.gv-people-chip.v{border-color:#111;font-weight:700}
.gv-people-pill{display:inline-block;font-size:11px;border-radius:999px;padding:3px 9px;background:#f1f1ee}.gv-people-pill.re_engage{background:#e6f4ea;color:#1e6b3a}.gv-people-pill.not_recommended{background:#fdecea;color:#b3261e}.gv-people-pill.needs_review{background:#fff4d6;color:#8a5a00}.gv-people-pill.confirmed,.gv-people-pill.completed{background:#e6f4ea;color:#1e6b3a}.gv-people-pill.cancelled,.gv-people-pill.withdrawn,.gv-people-pill.declined{background:#f1f1ee;color:#777}
.gv-people-avail-pill{display:inline-block;font-size:11px;font-weight:700;border-radius:999px;padding:3px 9px}.gv-people-avail-pill.AVAILABLE{background:#e6f4ea;color:#1e6b3a}.gv-people-avail-pill.SOFT_CONFLICT{background:#fff4d6;color:#8a5a00}.gv-people-avail-pill.HARD_CONFLICT{background:#fdecea;color:#b3261e}.gv-people-avail-pill.GV_FIXED{background:#111;color:#fff}
.gv-people-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.gv-people-span2{grid-column:span 2}@media(max-width:980px){.gv-people-detail-grid{grid-template-columns:1fr}.gv-people-span2{grid-column:auto}}
.gv-people-panel-actions{display:flex;gap:6px;flex-wrap:wrap}.gv-people-dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin:0}.gv-people-dl>div{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--gv-line,#e3e3df);padding-top:6px}.gv-people-dl dt{font-size:11px;color:var(--gv-muted,#666)}.gv-people-dl dd{margin:0;font-size:13px;word-break:break-word}
.gv-people-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.gv-people-photo{margin:0;border:1px solid var(--gv-line,#e3e3df);border-radius:10px;overflow:hidden}.gv-people-photo.profile{border-color:#111}.gv-people-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:#f2f2ef}.gv-people-photo figcaption{padding:6px 8px;font-size:11px;display:flex;flex-direction:column;gap:2px}.gv-people-photo figcaption small{color:var(--gv-muted,#666)}.gv-people-photo-actions{display:flex;gap:4px;flex-wrap:wrap}.gv-people-photo-actions button{font-size:10px;border:1px solid var(--gv-line,#e3e3df);background:#fff;border-radius:999px;padding:2px 7px;cursor:pointer}
.gv-people-lang{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.gv-people-lang li{display:flex;gap:10px;align-items:center;font-size:13px;border-top:1px solid var(--gv-line,#e3e3df);padding-top:6px}.gv-people-lang li span{color:var(--gv-muted,#666)}.gv-people-lang li em{font-style:normal;font-size:11px;border-radius:999px;padding:2px 8px;background:#f1f1ee}.gv-people-lang li em.ok{background:#111;color:#fff}.gv-people-lang li button{margin-left:auto}
.gv-people-h3{font-size:13px;margin:10px 0 6px}.gv-people-h3 small{font-weight:400;color:var(--gv-muted,#666);margin-left:6px}
.gv-people-career-row{display:grid;grid-template-columns:110px 1fr 1.6fr .9fr auto auto;gap:10px;align-items:center;border-top:1px solid var(--gv-line,#e3e3df);padding:7px 0;font-size:13px}.gv-people-career-row .y{color:var(--gv-muted,#666);font-variant-numeric:tabular-nums}.gv-people-career-row em{font-style:normal;font-size:11px;color:var(--gv-muted,#666)}.gv-people-career-row.verified em{color:#111;font-weight:700}.gv-people-career-row small{color:var(--gv-muted,#666)}.gv-people-row-actions button{font-size:11px;border:1px solid var(--gv-line,#e3e3df);background:#fff;border-radius:999px;padding:2px 8px;cursor:pointer;margin-left:4px}
@media(max-width:760px){.gv-people-career-row{grid-template-columns:1fr 1fr;grid-auto-rows:auto}}
.gv-people-eval{border-top:1px solid var(--gv-line,#e3e3df);padding:8px 0;display:grid;grid-template-columns:auto 1fr auto;gap:6px 12px;font-size:13px;align-items:baseline}.gv-people-eval p{grid-column:1/-1;margin:0;color:#444;font-size:12px}.gv-people-eval small{color:var(--gv-muted,#666)}.gv-people-eval.re_engage strong{color:#1e6b3a}.gv-people-eval.not_recommended strong{color:#b3261e}.gv-people-eval.needs_review strong{color:#8a5a00}
.gv-people-inline{display:flex;flex-direction:column;gap:4px;font-size:12px}.gv-people-inline select{height:34px;border:1px solid var(--gv-line,#e3e3df);border-radius:8px;padding:0 10px}.gv-people-inline3{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.gv-people-availability{margin-top:10px}.gv-people-avail{display:flex;flex-direction:column;gap:2px;border-radius:10px;padding:10px 12px;background:#f1f1ee}.gv-people-avail.AVAILABLE{background:#e6f4ea}.gv-people-avail.SOFT_CONFLICT{background:#fff4d6}.gv-people-avail.HARD_CONFLICT{background:#fdecea}.gv-people-avail.GV_FIXED{background:#111;color:#fff}.gv-people-availability ul{margin:8px 0 0;padding-left:18px;font-size:12px;color:#444}
.gv-people-dialog form{display:flex;flex-direction:column;gap:10px;min-width:min(520px,92vw)}.gv-people-dialog label{display:flex;flex-direction:column;gap:4px;font-size:12px}.gv-people-dialog input,.gv-people-dialog select,.gv-people-dialog textarea{border:1px solid var(--gv-line,#e3e3df);border-radius:8px;padding:8px 10px;font-size:13px;font-family:inherit}
.gv-people-status{position:fixed;left:50%;bottom:24px;transform:translate(-50%,40px);background:#111;color:#fff;padding:10px 16px;border-radius:999px;font-size:12px;opacity:0;transition:.2s;z-index:80;pointer-events:none}.gv-people-status.show{opacity:1;transform:translate(-50%,0)}.gv-people-status[data-kind="error"]{background:#b3261e}
/* Phase 17 · Client 보고서 panel (Project Detail 운영 탭) */
.gv-client-reports .gv-client-report-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0 8px}.gv-client-reports .gv-client-report-head strong{font-size:14px}.gv-client-reports .gv-client-report-head small{color:#7A736B;font-size:12px}.gv-client-reports .gv-client-report-head .gv-btn{margin-left:auto}
.gv-client-report-revs{display:flex;flex-direction:column;gap:6px}.gv-client-report-rev{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.gv-client-report-rev small{color:#7A736B}.gv-client-report-rev small[data-state="warn"]{color:#A5453B}
.gv-client-reports-table td{vertical-align:top}.gv-client-reports-table td small{display:block;color:#7A736B;font-size:11px;margin-top:3px}
.gv-client-report-share-list li{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gv-client-report-link{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;padding:10px 12px;border:1px solid #E6E2DB;border-radius:9px;background:#FDFCFA}.gv-client-report-link input{flex:1;min-width:240px;border:1px solid #E6E2DB;border-radius:7px;padding:7px 9px;font-size:12px;font-family:inherit}
#gvClientReportSummaryDialog{border:1px solid #E6E2DB;border-radius:12px;padding:20px;max-width:560px;width:calc(100% - 32px)}#gvClientReportSummaryDialog form{display:flex;flex-direction:column;gap:10px}#gvClientReportSummaryDialog h3{margin:0}#gvClientReportSummaryDialog textarea{min-height:72px}#gvClientReportSummaryDialog .gv-contract-actions{justify-content:flex-end}
/* Phase 18 · Legacy migration console (데이터 가져오기) */
.gv-migration-console{margin-top:18px}.gv-migration-sources{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:12px 0}.gv-migration-source{border:1px solid #E6E2DB;border-radius:9px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}.gv-migration-source small{color:#7A736B;font-size:11.5px}
.gv-migration-table td small{display:block;color:#7A736B;font-size:11px;margin-top:2px}.gv-migration-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.gv-migration-run{margin:14px 0;padding:14px 16px;border:1px solid #E6E2DB;border-radius:10px;background:#FDFCFA}.gv-migration-run-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.gv-migration-run-head small{color:#7A736B}.gv-migration-run-head select{border:1px solid #E6E2DB;border-radius:7px;padding:5px 8px;font-size:12px}
.gv-migration-report{margin:12px 0;padding-top:10px;border-top:1px solid #EEEAE3}.gv-migration-report small{color:#7A736B;margin-left:8px}.gv-migration-summary{font-size:13px;margin:6px 0}.gv-migration-rules{font-size:12px;color:#5C554D;margin:4px 0}.gv-migration-events li{display:flex;flex-direction:column;gap:2px}.gv-migration-events small{color:#7A736B;font-size:11px}
.gv-migration-review-item{border:1px solid #E6E2DB;border-radius:9px;padding:12px 14px;margin:0 0 10px;background:#fff}.gv-migration-review-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.gv-migration-review-top small{color:#7A736B;font-size:11.5px}.gv-migration-candidates{display:flex;flex-direction:column;gap:4px;margin:8px 0;font-size:12.5px}.gv-migration-candidates label{display:flex;gap:6px;align-items:center}.gv-migration-candidates input[type=text]{border:1px solid #E6E2DB;border-radius:7px;padding:5px 8px;font-size:12px;max-width:320px}
.gv-bridge-retired{margin:0 0 14px}

/* =========================================================
   Phase 19A · Design System v1 implementation
   Reference surfaces only: Today, Project Detail, Client Profile.
   This layer changes presentation tokens and shared component geometry;
   it does not change selectors used by existing scripts or data flows.
   ========================================================= */
:root{
  --sidebar-expanded-width:232px;
  --sidebar-collapsed-width:72px;
  --gv-bg:#F4F2EE;
  --gv-bg-deep:#EEEBE5;
  --gv-surface:#FBFAF7;
  --gv-surface-soft:#FBFAF7;
  --gv-surface-quiet:#EEEBE5;
  --gv-ink:#1E1C19;
  --gv-text:#3A3733;
  --gv-muted:#6F6A63;
  --gv-faint:#9B958C;
  --gv-line:#E2DED6;
  --gv-line-soft:#EBE7E0;
  --gv-line-strong:#CDC7BD;
  --gv-accent:#1E1C19;
  --gv-accent-soft:#EEEBE5;
  --gv-success:#1E1C19;
  --gv-success-soft:#EEEBE5;
  --gv-warning:#3A3733;
  --gv-warning-soft:#EEEBE5;
  --gv-danger:#A3463C;
  --gv-danger-soft:#F5E9E6;
  --gv-alert:#A3463C;
  --gv-alert-soft:#F5E9E6;
  --gv-ink-hover:#33302C;
  --gv-scrim:rgba(30,28,25,.28);
  --gv-radius:8px;
  --gv-body-size:16px;
  --gv-content-x:0px;
  font-family:'SUIT Variable','Pretendard','Noto Sans KR','Apple SD Gothic Neo','Segoe UI',sans-serif;
}
html[data-sidebar="expanded"]{--sidebar-width:var(--sidebar-expanded-width)}
html[data-sidebar="icon"]{--sidebar-width:var(--sidebar-collapsed-width)}
html[data-sidebar="hidden"]{--sidebar-width:0px}
html[data-header]{--header-height:56px}
html,body{background:var(--gv-bg);color:var(--gv-text);font-family:'SUIT Variable','Pretendard','Noto Sans KR','Apple SD Gothic Neo','Segoe UI',sans-serif;text-rendering:optimizeLegibility;overflow-wrap:anywhere}
body{font-size:16px;line-height:24px;letter-spacing:0;font-variant-numeric:tabular-nums lining-nums}
.gv-sidebar{width:var(--sidebar-width);background:var(--gv-surface);border-right:1px solid var(--gv-line);padding:0 14px 20px}
.gv-brand{height:78px;padding:8px 12px 22px;border-bottom:0}
.gv-brand-word{font-size:12.5px;line-height:18px;font-weight:700;letter-spacing:.22em;color:var(--gv-ink)}
.gv-nav{padding:0;gap:0}
.gv-nav-label{font-size:11px;line-height:18px;font-weight:600;letter-spacing:.12em;color:var(--gv-faint);padding:16px 12px 6px}
.gv-nav-label-bottom{margin-top:0}
.gv-nav-item,.gv-nav-hub>summary{height:38px;min-height:38px;padding:0 12px;border-radius:6px;gap:12px;color:var(--gv-text);font-size:14.5px;line-height:38px;font-weight:400}
.gv-nav-item:hover,.gv-nav-hub>summary:hover{background:var(--gv-surface-quiet);color:var(--gv-ink)}
.gv-nav-item.active,.gv-nav-hub.active>summary{background:var(--gv-surface-quiet);color:var(--gv-ink);font-weight:500}
.gv-nav-item.active:before{display:none}
.gv-nav-icon{width:18px;height:18px;color:var(--gv-muted)}
.gv-nav-item.active .gv-nav-icon,.gv-nav-hub.active .gv-nav-icon{color:var(--gv-ink)}
.gv-sidebar-foot{padding:16px 12px 0}.gv-sidebar-caption{font-size:12px;line-height:16px;letter-spacing:.06em;color:var(--gv-faint)}
.gv-shell{margin-left:var(--sidebar-width)}
.gv-topbar{height:56px;background:var(--gv-surface);border-bottom:1px solid var(--gv-line);backdrop-filter:none;-webkit-backdrop-filter:none;padding:0 4%}
.gv-topbar-left,.gv-topbar-right{gap:12px}.gv-page-title{font-size:16px;line-height:22px;font-weight:500;color:var(--gv-ink);letter-spacing:-.01em}.gv-page-description{font-size:13px;color:var(--gv-muted)}
.gv-icon-btn{width:36px;height:36px;border-radius:6px;color:var(--gv-muted)}.gv-icon-btn:hover{background:var(--gv-surface-quiet);color:var(--gv-ink)}
.gv-command-trigger{height:34px;border:1px solid var(--gv-line);border-radius:6px;background:var(--gv-bg);color:var(--gv-faint);font-size:14px;padding:0 10px;display:flex;align-items:center;gap:8px}.gv-command-trigger kbd{font-size:11.5px;color:var(--gv-faint);background:none;border:0;padding:0}
.gv-user-avatar{width:28px;height:28px;background:var(--gv-surface-quiet);color:var(--gv-ink);font-size:12px;font-weight:600}.gv-user-meta strong{font-size:13.5px;color:var(--gv-ink);font-weight:500}.gv-user-meta span{font-size:12px;color:var(--gv-muted)}
.gv-logout{height:36px;border:0;background:transparent;padding:0 6px;border-radius:6px;color:var(--gv-muted);font-size:13.5px}.gv-logout:hover{background:var(--gv-surface-quiet);color:var(--gv-ink)}

/* Shared workspace contract: fluid percentage, capped only on very wide displays. */
@media screen{
  html[data-width] .gv-shell>.gv-main{width:92%!important;max-width:1640px!important;margin-left:auto!important;margin-right:auto!important;padding:40px 0 96px!important}
  html[data-width="full"] .gv-shell>.gv-main{width:96%!important;max-width:1720px!important}
  html[data-width="wide"] .gv-shell>.gv-main{width:92%!important;max-width:1640px!important}
  html[data-width="balanced"] .gv-shell>.gv-main{width:92%!important;max-width:1640px!important}
  main.gv-main[data-page="projects"][data-tab="people"],main.gv-main[data-page="projects"][data-tab="operations"]{width:96%!important;max-width:1720px!important}
}

/* Common controls */
.gv-btn{height:36px;min-height:36px;border-radius:6px;padding:0 18px;font-size:15px;line-height:1;font-weight:500;box-shadow:none!important}
.gv-btn-primary{background:var(--gv-ink);border-color:var(--gv-ink);color:var(--gv-surface)}.gv-btn-primary:hover{background:var(--gv-ink-hover);border-color:var(--gv-ink-hover)}
.gv-btn-secondary{background:transparent;border-color:var(--gv-line-strong);color:var(--gv-ink)}.gv-btn-secondary:hover{background:var(--gv-surface-quiet);border-color:var(--gv-line-strong)}
.gv-btn-ghost,.gv-text-btn{color:var(--gv-ink)}.gv-btn-ghost:hover,.gv-text-btn:hover{background:transparent;text-decoration:underline;text-underline-offset:3px}
.gv-btn-small{height:32px;min-height:32px;padding:0 12px;font-size:14px;border-radius:5px}.gv-btn-xs{height:28px;min-height:28px;padding:0 10px;font-size:13.5px;border-radius:5px}
.gv-panel,.gv-card{background:var(--gv-surface);border:1px solid var(--gv-line);border-radius:8px;box-shadow:none!important}
.gv-panel-head,.gv-card-head{min-height:52px;height:auto;padding:14px 24px;border-bottom:1px solid var(--gv-line-soft)}
.gv-panel-title,.gv-card-head h2{font-size:17px;line-height:22px;font-weight:600;letter-spacing:-.01em;color:var(--gv-ink)}
.gv-panel-subtitle,.gv-card-head p{font-size:13.5px;line-height:20px;color:var(--gv-muted);font-weight:400}
.gv-empty-mini{padding:36px 24px;text-align:center;font-size:15px;line-height:22px;color:var(--gv-muted)}
.gv-status,.gv-chip,.gv-badge{border-radius:10px;background:var(--gv-surface-quiet);color:var(--gv-text);font-size:12.5px;font-weight:500;box-shadow:none}
.gv-status-danger,.gv-status-risk,.gv-status[data-status="failed"]{background:var(--gv-alert-soft);color:var(--gv-alert)}

/* Project Detail: editorial header + panel surface mode */
body.gv-on-projects .gv-main{font-size:16px}
body.gv-on-projects .gv-cockpit-hero{padding:0 0 24px;margin:0 0 24px;border:0;border-bottom:1px solid var(--gv-line);border-radius:0;background:transparent;grid-template-columns:minmax(0,1fr) auto}
body.gv-on-projects .gv-cockpit-identity h1{margin:12px 0 14px;font-family:'Bodoni Moda','Noto Serif KR',Georgia,serif;font-size:40px;line-height:46px;font-weight:400;letter-spacing:-.005em;color:var(--gv-ink)}
body.gv-on-projects .gv-cockpit-eyebrow{gap:12px;font-size:12.5px;line-height:16px;font-weight:600;letter-spacing:.08em;color:var(--gv-muted)}
body.gv-on-projects .gv-cockpit-eyebrow a{color:var(--gv-ink);font-weight:600}body.gv-on-projects .gv-cockpit-eyebrow i{width:1px;height:12px;border-radius:0;background:var(--gv-line-strong)}
body.gv-on-projects .gv-cockpit-phase{padding:0;border:0;border-radius:0;background:transparent;color:var(--gv-muted);font-size:12.5px;font-weight:600;letter-spacing:0}
body.gv-on-projects .gv-cockpit-when{gap:12px;margin:0;font-size:15px;line-height:22px;color:var(--gv-text)}body.gv-on-projects .gv-cockpit-when strong{font-weight:500;color:var(--gv-ink)}body.gv-on-projects .gv-cockpit-when i{width:1px;height:12px;border-radius:0;background:var(--gv-line-strong)}
body.gv-on-projects .gv-cockpit-owner-inline{font-size:15px;color:var(--gv-text)}body.gv-on-projects .gv-cockpit-owner-inline strong{font-weight:500;color:var(--gv-ink)}
body.gv-on-projects .gv-cockpit-actions{padding-top:8px;gap:8px}body.gv-on-projects .gv-cockpit-actions .gv-btn{height:36px;min-height:36px}
body.gv-on-projects .gv-v2-detail-tabs{display:flex;gap:28px;margin:0 0 32px;padding:0;border:0;border-bottom:1px solid var(--gv-line);border-radius:0;background:transparent;overflow-x:auto}
body.gv-on-projects .gv-v2-detail-tabs a{padding:12px 0 13px;border-radius:0;background:transparent;color:var(--gv-muted);font-size:15px;font-weight:400;line-height:20px}body.gv-on-projects .gv-v2-detail-tabs a:hover{background:transparent;color:var(--gv-ink)}body.gv-on-projects .gv-v2-detail-tabs a.active{background:transparent;color:var(--gv-ink);font-weight:500;box-shadow:inset 0 -2px 0 var(--gv-ink)}
body.gv-on-projects .gv-cockpit-pulse{display:grid;grid-template-columns:1.05fr 1.3fr 1.1fr .8fr;gap:0;margin:0 0 32px;background:var(--gv-surface);border:1px solid var(--gv-line);border-radius:8px;overflow:hidden}
body.gv-on-projects .gv-cockpit-pulse-group{min-width:0;padding:16px 26px 18px;border-right:1px solid var(--gv-line-soft);gap:30px}body.gv-on-projects .gv-cockpit-pulse-group:last-child{border-right:0}
body.gv-on-projects .gv-cockpit-pulse-group span{font-size:13px;line-height:18px;letter-spacing:.01em;color:var(--gv-muted);font-weight:500}body.gv-on-projects .gv-cockpit-pulse-group strong{font-size:30px;line-height:34px;font-weight:500;letter-spacing:-.02em;color:var(--gv-ink)}body.gv-on-projects .gv-cockpit-pulse-group strong small{font-size:13px;color:var(--gv-muted)}
body.gv-on-projects .gv-cockpit-pulse-group>div[data-alert="1"] span,body.gv-on-projects .gv-cockpit-pulse-group>div[data-alert="1"] strong{color:var(--gv-alert)}
body.gv-on-projects .gv-cockpit-grid{grid-template-columns:minmax(0,1fr) 380px;gap:40px;align-items:start}body.gv-on-projects .gv-cockpit-main,.gv-cockpit-side{gap:24px}
body.gv-on-projects .gv-cockpit-attention{margin-bottom:24px}.gv-cockpit-attention .gv-panel-head{padding:14px 24px}.gv-cockpit-attention-count{font-size:12.5px;color:var(--gv-muted);background:var(--gv-surface-quiet);border:0;border-radius:10px;padding:1px 7px}
body.gv-on-projects .gv-cockpit-attention .gv-project-signal{padding:12px 24px;gap:14px;border:0;border-top:1px solid var(--gv-line-soft);border-radius:0;background:var(--gv-surface)}
body.gv-on-projects .gv-cockpit-attention .gv-project-signal strong{font-size:15.5px;line-height:22px;font-weight:500;color:var(--gv-ink)}body.gv-on-projects .gv-cockpit-attention .gv-project-signal small{font-size:13.5px;line-height:20px;color:var(--gv-muted)}body.gv-on-projects .gv-cockpit-attention .gv-project-signal a{font-size:14px;color:var(--gv-ink);padding:0;border:0;background:none}
body.gv-on-projects .gv-cockpit-attention .gv-project-signal-mark{width:8px;height:8px;border-radius:50%;background:var(--gv-ink)}body.gv-on-projects .gv-cockpit-attention .gv-project-signal[data-level="critical"] .gv-project-signal-mark,body.gv-on-projects .gv-cockpit-attention .gv-project-signal[data-level="warn"] .gv-project-signal-mark{background:var(--gv-alert)}
body.gv-on-projects .gv-cockpit-block-head{padding:0 0 14px;margin:0 0 0;border-bottom:1px solid var(--gv-line)}body.gv-on-projects .gv-cockpit-block-head h2{font-size:17px;line-height:22px;font-weight:600;color:var(--gv-ink)}
body.gv-on-projects .gv-cockpit-position{padding:12px 0;border-bottom:1px solid var(--gv-line-soft);grid-template-columns:minmax(140px,.6fr) minmax(0,1.5fr) auto;gap:14px}.gv-cockpit-position strong{font-size:15px;font-weight:500;color:var(--gv-ink)}.gv-cockpit-position-line{font-size:15px;color:var(--gv-text)}.gv-cockpit-position small{font-size:13px;color:var(--gv-muted)}.gv-cockpit-position[data-short="1"] strong:before{background:var(--gv-alert)}.gv-cockpit-position-line em{color:var(--gv-alert)}.gv-cockpit-position-line b{color:var(--gv-ink)}
body.gv-on-projects .gv-cockpit-person{padding:12px 0;border-bottom:1px solid var(--gv-line-soft);font-size:15px;grid-template-columns:minmax(130px,1.1fr) minmax(90px,.9fr) minmax(120px,1fr) auto;color:var(--gv-text)}body.gv-on-projects .gv-cockpit-person strong{font-size:15.5px;font-weight:500;color:var(--gv-ink)}body.gv-on-projects .gv-cockpit-person-meta{font-size:14px;color:var(--gv-muted)}body.gv-on-projects .gv-cockpit-person em{font-size:13px;padding:0;border:0;background:transparent;color:var(--gv-muted);font-weight:500}
body.gv-on-projects .gv-cockpit-flow.gv-panel{background:var(--gv-surface);border-color:var(--gv-line)}body.gv-on-projects .gv-cockpit-flow .gv-panel-head{padding:14px 24px}body.gv-on-projects .gv-cockpit-flow .gv-project-flow-track{padding:20px 24px;gap:8px}body.gv-on-projects .gv-cockpit-flow .gv-project-flow-track li{padding:0 12px 0 0;background:transparent;border:0;border-radius:0}
body.gv-on-projects .gv-cockpit-side{border-left:0;padding-left:0}body.gv-on-projects .gv-cockpit-side .gv-cockpit-block{padding:0 0 24px;margin:0 0 16px;border-bottom:1px solid var(--gv-line)}body.gv-on-projects .gv-cockpit-side .gv-cockpit-block-head{border:0;padding:0 0 14px;margin:0}body.gv-on-projects .gv-cockpit-side .gv-cockpit-block-head h2{font-size:13px;line-height:18px;letter-spacing:.06em;color:var(--gv-muted);font-weight:600}
body.gv-on-projects .gv-cockpit-client strong{font-size:16px;font-weight:500;color:var(--gv-ink)}body.gv-on-projects .gv-cockpit-client small{font-size:14px;color:var(--gv-muted)}body.gv-on-projects .gv-cockpit-contact{padding:10px 0;border-bottom:1px solid var(--gv-line-soft)}body.gv-on-projects .gv-cockpit-contact strong{font-size:15.5px;font-weight:500;color:var(--gv-ink)}body.gv-on-projects .gv-cockpit-contact small{font-size:13.5px;color:var(--gv-muted)}body.gv-on-projects .gv-cockpit-contact em{font-size:12.5px;background:transparent;color:var(--gv-muted);padding:0;border-radius:0}
body.gv-on-projects .gv-cockpit-facts>div{padding:10px 0;border-bottom:1px solid var(--gv-line-soft);font-size:15px}body.gv-on-projects .gv-cockpit-facts dt{font-size:13px;color:var(--gv-muted);font-weight:500}body.gv-on-projects .gv-cockpit-facts dd{font-size:15px;color:var(--gv-ink)}body.gv-on-projects .gv-cockpit-memo{font-size:15px;line-height:24px;color:var(--gv-text)}body.gv-on-projects .gv-cockpit-task-line{font-size:14px;color:var(--gv-muted)}body.gv-on-projects .gv-cockpit-task-line strong{font-weight:500;color:var(--gv-ink)}

/* Today: hairline-first reading surface, no card wall. */
body.gv-on-dashboard .gv-main{background:var(--gv-bg)}body.gv-on-dashboard .gv-v3-today{gap:0}body.gv-on-dashboard .gv-v3-hero{padding:0 0 24px;margin:0 0 32px;border-bottom:1px solid var(--gv-line);align-items:flex-start}body.gv-on-dashboard .gv-v3-date{font-size:12.5px;line-height:16px;color:var(--gv-muted);font-weight:600;letter-spacing:.08em;margin-bottom:12px}body.gv-on-dashboard .gv-v3-hero h1{font-family:'Bodoni Moda','Noto Serif KR',Georgia,serif;font-size:40px;line-height:46px;font-weight:400;letter-spacing:-.005em;color:var(--gv-ink)}body.gv-on-dashboard .gv-v3-hero-actions{padding-top:8px}body.gv-on-dashboard .gv-v3-hero-actions .gv-btn{height:36px;min-height:36px}
body.gv-on-dashboard .gv-v3-surface{background:transparent;border:0;border-radius:0;box-shadow:none!important;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0}
body.gv-on-dashboard .gv-v3-grid{grid-template-columns:minmax(0,1fr) 380px;gap:40px}body.gv-on-dashboard .gv-v3-sec-head{margin:0;padding:0 0 14px;border-bottom:1px solid var(--gv-line);gap:10px}body.gv-on-dashboard .gv-v3-sec-head h2{font-size:19px;line-height:22px;font-weight:600;color:var(--gv-ink)}body.gv-on-dashboard .gv-v3-sec-count{font-size:13.5px;color:var(--gv-muted)}body.gv-on-dashboard .gv-v3-sec-link{font-size:13.5px;color:var(--gv-ink);font-weight:400}
body.gv-on-dashboard .gv-v3-queue-list li,body.gv-on-dashboard .gv-v3-week-day,body.gv-on-dashboard .gv-v3-project-row{border-top:0;border-bottom:1px solid var(--gv-line-soft)}body.gv-on-dashboard .gv-v3-queue-list a{grid-template-columns:24px minmax(0,1fr) auto;gap:16px;padding:18px 0;border-radius:0;background:transparent!important;box-shadow:none!important}body.gv-on-dashboard .gv-v3-queue-list li:before{content:'●';grid-row:1;color:var(--gv-ink);font-size:10px}body.gv-on-dashboard .gv-v3-queue-main em{font-size:13.5px;color:var(--gv-muted)}body.gv-on-dashboard .gv-v3-queue-main strong{font-size:16px;font-weight:500;color:var(--gv-ink);white-space:normal}body.gv-on-dashboard .gv-v3-queue-meta{font-size:14px;color:var(--gv-muted);white-space:normal}body.gv-on-dashboard .gv-v3-go{font-size:14px;color:var(--gv-ink)}
body.gv-on-dashboard .gv-v3-week-day{grid-template-columns:88px minmax(0,1fr);gap:14px;padding:14px 0}body.gv-on-dashboard .gv-v3-week-date{font-size:15px;line-height:22px;color:var(--gv-text)}body.gv-on-dashboard .gv-v3-week-date b{font-size:13px;color:var(--gv-muted);font-weight:400}body.gv-on-dashboard .gv-v3-week-items a{font-size:14px;font-weight:400;color:var(--gv-ink);padding-left:10px}body.gv-on-dashboard .gv-v3-week-items a:before{left:0;width:2px;height:16px;top:4px;border-radius:0;background:var(--gv-ink);opacity:1}body.gv-on-dashboard .gv-v3-week-items a small{font-size:13px;color:var(--gv-muted);font-weight:400}
body.gv-on-dashboard .gv-v3-project-row{grid-template-columns:110px minmax(0,1fr) 120px minmax(210px,auto);gap:18px;padding:16px 0;border-radius:0}body.gv-on-dashboard .gv-v3-project-row:hover{background:transparent}body.gv-on-dashboard .gv-v3-project-phase{font-size:14px;font-weight:500;color:var(--gv-muted)}body.gv-on-dashboard .gv-v3-project-phase:after{display:none}body.gv-on-dashboard .gv-v3-project-main strong{font-size:16px;font-weight:500;color:var(--gv-ink)}body.gv-on-dashboard .gv-v3-project-main small{font-size:14px;color:var(--gv-muted)}body.gv-on-dashboard .gv-v3-project-when{font-size:14px;color:var(--gv-text)}body.gv-on-dashboard .gv-v3-project-signals{gap:14px}body.gv-on-dashboard .gv-v3-project-signals i{font-size:13.5px;padding:0;border-radius:0;background:transparent;box-shadow:none;color:var(--gv-text)}body.gv-on-dashboard .gv-v3-project-signals i:before{content:'·';margin-right:5px;color:var(--gv-ink)}body.gv-on-dashboard .gv-v3-project-signals i.warn,body.gv-on-dashboard .gv-v3-project-signals i.risk{color:var(--gv-alert);background:transparent}body.gv-on-dashboard .gv-v3-project-signals i.done{color:var(--gv-text);background:transparent}
body.gv-on-dashboard .gv-v3-foot{padding:24px 0 0;margin-top:32px;border-top:1px solid var(--gv-line);gap:24px}body.gv-on-dashboard .gv-v3-ops-wrap h2{font-size:13px;color:var(--gv-muted);font-weight:600}body.gv-on-dashboard .gv-v3-ops{font-size:14px;color:var(--gv-muted)}body.gv-on-dashboard .gv-v3-ops b{font-size:16px;color:var(--gv-ink);font-weight:500}body.gv-on-dashboard .gv-v3-ops b.warn{color:var(--gv-alert)}

/* Client Profile reference surface */
body.gv-on-clients .gv-functional-hero{padding:0 0 24px;margin:0 0 24px;border:0;border-bottom:1px solid var(--gv-line);background:transparent}body.gv-on-clients .gv-functional-hero h1{font-family:'Bodoni Moda','Noto Serif KR',Georgia,serif;font-size:40px;line-height:46px;font-weight:400;letter-spacing:-.005em;color:var(--gv-ink)}body.gv-on-clients .gv-functional-hero p{font-size:15px;line-height:22px;color:var(--gv-muted)}body.gv-on-clients .gv-client-commandbar{background:var(--gv-surface);border:1px solid var(--gv-line);border-radius:8px;padding:12px 24px;margin-bottom:24px}body.gv-on-clients .gv-client-search{height:36px;border-color:var(--gv-line-strong);border-radius:6px;background:var(--gv-bg)}body.gv-on-clients .gv-client-search input{font-size:15px}body.gv-on-clients .gv-client-filters button{height:34px;border-radius:6px;font-size:14px;color:var(--gv-muted)}body.gv-on-clients .gv-client-filters button.active{background:var(--gv-ink);color:var(--gv-surface)}body.gv-on-clients .gv-client-ops-layout{grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:40px}body.gv-on-clients .gv-client-ops-layout .gv-client-list-panel{top:72px;max-height:calc(100vh - 96px)}body.gv-on-clients .gv-client-ops-layout .gv-client-list-panel,body.gv-on-clients .gv-client-profile{background:var(--gv-surface);border-color:var(--gv-line);border-radius:8px;box-shadow:none}body.gv-on-clients .gv-client-list{padding:0}body.gv-on-clients .gv-client-ops-layout .gv-client-list>button{padding:14px 16px;border-radius:0;border-bottom:1px solid var(--gv-line-soft)}
body.gv-on-clients .gv-client-profile .gv-card-head,body.gv-on-clients .gv-client-profile .gv-panel-head{padding:14px 24px}body.gv-on-clients .gv-client-profile h2{font-size:17px;line-height:22px;font-weight:600;color:var(--gv-ink)}body.gv-on-clients .gv-client-profile h3{font-size:16px;line-height:22px;font-weight:500;color:var(--gv-ink)}body.gv-on-clients .gv-client-profile p,body.gv-on-clients .gv-client-profile td{font-size:15px;line-height:22px;color:var(--gv-text)}body.gv-on-clients .gv-client-profile small{font-size:13.5px;color:var(--gv-muted)}body.gv-on-clients .gv-client-info-grid>div,body.gv-on-clients .gv-contact-row,body.gv-on-clients .gv-department-group{border-color:var(--gv-line-soft)}body.gv-on-clients .gv-client-archive-list>span,body.gv-on-clients .gv-contact-copy em{background:var(--gv-surface-quiet);color:var(--gv-muted);border:0;border-radius:5px}

/* Forms / dialogs / tables shared by the reference screens */
body.gv-on-dashboard table,body.gv-on-projects table,body.gv-on-clients table{font-size:15px;border-collapse:collapse}body.gv-on-dashboard th,body.gv-on-projects th,body.gv-on-clients th{font-size:13px;line-height:18px;font-weight:500;color:var(--gv-muted);background:var(--gv-surface-quiet);padding:9px 12px;border-bottom:1px solid var(--gv-line-soft);white-space:nowrap}body.gv-on-dashboard td,body.gv-on-projects td,body.gv-on-clients td{height:46px;padding:0 12px;line-height:22px;border-bottom:1px solid var(--gv-line-soft);color:var(--gv-text)}body.gv-on-dashboard td:first-child,body.gv-on-projects td:first-child,body.gv-on-clients td:first-child{color:var(--gv-ink)}
body.gv-on-dashboard input,body.gv-on-projects input,body.gv-on-clients input,body.gv-on-dashboard select,body.gv-on-projects select,body.gv-on-clients select,body.gv-on-dashboard textarea,body.gv-on-projects textarea,body.gv-on-clients textarea{font-size:15px;border-color:var(--gv-line-strong);border-radius:6px;background:var(--gv-surface);color:var(--gv-ink)}
dialog.gv-modal{border:1px solid var(--gv-line);border-radius:8px;box-shadow:none;max-width:560px}dialog.gv-modal::backdrop{background:var(--gv-scrim);backdrop-filter:none}.gv-modal-head{padding:20px 24px;border-bottom:1px solid var(--gv-line-soft)}.gv-modal-head h2{font-size:17px;line-height:22px;font-weight:600;color:var(--gv-ink)}.gv-modal-body{padding:24px;gap:18px}.gv-modal-foot{padding:16px 24px;border-top:1px solid var(--gv-line-soft);gap:8px}.gv-form-grid label>span,.gv-pf-client label>span,.gv-pf-textarea>span{font-size:13px;line-height:18px;font-weight:500;color:var(--gv-muted)}.gv-form-grid input,.gv-form-grid select,.gv-pf-client input[type="search"]{height:36px;font-size:15px;border-color:var(--gv-line-strong);background:var(--gv-surface)}

@media(max-width:1279px){.gv-sidebar{width:var(--sidebar-width);padding-left:8px;padding-right:8px}.gv-shell{margin-left:var(--sidebar-width)}.gv-brand{padding-left:12px;padding-right:12px}.gv-brand-word{display:none}.gv-brand-mark{display:block;font-size:13px;font-weight:700;letter-spacing:.1em;color:var(--gv-ink)}.gv-nav-item,.gv-nav-hub>summary{justify-content:center;padding:0}.gv-nav-hub-copy,.gv-nav-text,.gv-nav-label,.gv-nav-hub-arrow{display:none}.gv-nav-icon{margin:0}.gv-sidebar-foot{padding-left:12px;padding-right:12px}.gv-sidebar-caption{font-size:0}.gv-sidebar-caption:after{content:'GV';font-size:12px}.gv-cockpit-grid,body.gv-on-dashboard .gv-v3-grid{grid-template-columns:1fr}.gv-cockpit-side{border-top:1px solid var(--gv-line);padding-top:24px}body.gv-on-projects .gv-cockpit-side{border-top:1px solid var(--gv-line);padding-top:24px}body.gv-on-projects .gv-cockpit-pulse{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){html[data-width] .gv-shell>.gv-main{width:calc(100% - 48px)!important;padding-top:24px!important}.gv-topbar{padding:0 24px}.gv-command-trigger .gv-command-copy{display:none}.gv-user-meta,.gv-logout{display:none}body.gv-on-projects .gv-cockpit-hero{grid-template-columns:1fr}body.gv-on-projects .gv-cockpit-actions{padding-top:16px;align-items:stretch}body.gv-on-projects .gv-cockpit-actions .gv-btn{flex:1}body.gv-on-projects .gv-cockpit-identity h1,body.gv-on-dashboard .gv-v3-hero h1,body.gv-on-clients .gv-functional-hero h1{font-size:34px;line-height:40px}body.gv-on-projects .gv-cockpit-pulse{grid-template-columns:1fr 1fr}body.gv-on-projects .gv-cockpit-grid{grid-template-columns:1fr}body.gv-on-projects .gv-cockpit-person{grid-template-columns:minmax(0,1fr) auto;row-gap:4px}body.gv-on-projects .gv-cockpit-person-meta{display:none}body.gv-on-dashboard .gv-v3-project-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'main when' 'phase signals'}body.gv-on-dashboard .gv-v3-project-main{grid-area:main}body.gv-on-dashboard .gv-v3-project-when{grid-area:when}body.gv-on-dashboard .gv-v3-project-phase{grid-area:phase}body.gv-on-dashboard .gv-v3-project-signals{grid-area:signals;justify-content:flex-start}body.gv-on-clients .gv-client-ops-layout{grid-template-columns:1fr;gap:24px}}

/* =========================================================
   Phase 19B · Full ADMIN Design System rollout
   Shared presentation only. Existing markup, JS hooks, APIs,
   permissions and canonical calculations remain unchanged.
   ========================================================= */
@media screen{
  /* Presets remain fluid and visibly distinct; no page may reintroduce a fixed measure. */
  html[data-width="balanced"] .gv-shell>.gv-main{width:82%!important;max-width:1840px!important}
  html[data-width="wide"] .gv-shell>.gv-main{width:92%!important;max-width:2040px!important}
  html[data-width="full"] .gv-shell>.gv-main{width:97%!important;max-width:2200px!important}
  html[data-width="balanced"] .gv-shell>.gv-main,
  html[data-width="wide"] .gv-shell>.gv-main,
  html[data-width="full"] .gv-shell>.gv-main{margin-left:auto!important;margin-right:auto!important}

  .gv-shell>.gv-main{font-family:'SUIT Variable','Pretendard','Noto Sans KR','Apple SD Gothic Neo','Segoe UI',sans-serif;color:var(--gv-text);font-size:16px;line-height:24px;letter-spacing:0}
  .gv-shell>.gv-main *{text-rendering:optimizeLegibility}
  .gv-shell>.gv-main :is(section,article,aside,div){background-image:none}
  .gv-shell>.gv-main :is(h1,h2,h3,h4,p,dl,ul,ol){overflow-wrap:anywhere}
  .gv-shell>.gv-main h1{font-family:'Bodoni Moda','Noto Serif KR',Georgia,serif;font-size:40px;line-height:46px;font-weight:400;letter-spacing:-.005em;color:var(--gv-ink)}
  .gv-shell>.gv-main h2{font-size:17px;line-height:22px;font-weight:600;letter-spacing:-.01em;color:var(--gv-ink)}
  .gv-shell>.gv-main h3{font-size:15px;line-height:22px;font-weight:500;color:var(--gv-ink)}
  .gv-shell>.gv-main p{font-size:16px;line-height:24px;color:var(--gv-text)}
  .gv-shell>.gv-main small,.gv-shell>.gv-main .gv-muted{font-size:13px;line-height:18px;color:var(--gv-muted)}
  .gv-shell>.gv-main :is(code,pre){font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
  .gv-shell>.gv-main :is(.num,.money,[data-num],td.numeric,th.numeric){font-variant-numeric:tabular-nums lining-nums}

  /* Editorial page headers across every ADMIN center. */
  .gv-shell>.gv-main> :is(.gv-functional-hero,.gv-page-hero,.gv-hero,.gv-activity-hero,.gv-analytics-hero,.gv-contract-hero,.gv-daily-hero){display:flex;align-items:flex-start;justify-content:space-between;gap:32px;margin:0 0 32px;padding:0 0 24px;border:0;border-bottom:1px solid var(--gv-line);border-radius:0;background:transparent;box-shadow:none}
  .gv-shell>.gv-main> :is(.gv-functional-hero,.gv-page-hero,.gv-hero,.gv-activity-hero,.gv-analytics-hero,.gv-contract-hero,.gv-daily-hero)>:first-child{display:block!important;min-width:0}
  .gv-shell>.gv-main> :is(.gv-functional-hero,.gv-page-hero,.gv-hero,.gv-activity-hero,.gv-analytics-hero,.gv-contract-hero,.gv-daily-hero) h1{margin:12px 0 14px;font-size:40px;line-height:46px;font-weight:400;color:var(--gv-ink)}
  .gv-shell>.gv-main> :is(.gv-functional-hero,.gv-page-hero,.gv-hero,.gv-activity-hero,.gv-analytics-hero,.gv-contract-hero,.gv-daily-hero) p{margin:0;font-size:15px;line-height:22px;color:var(--gv-muted)}
  .gv-shell>.gv-main> :is(.gv-functional-hero,.gv-page-hero,.gv-hero,.gv-activity-hero,.gv-analytics-hero,.gv-contract-hero,.gv-daily-hero) [class*="actions"],.gv-hero-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding-top:8px;margin-left:auto}

  /* One panel language for lists, forms and detail surfaces. */
  .gv-shell>.gv-main :is(.gv-panel,.gv-card,.gv-context-strip,.gv-data-boundary){background:var(--gv-surface);border:1px solid var(--gv-line);border-radius:8px;box-shadow:none!important}
  .gv-shell>.gv-main :is(.gv-panel-head,.gv-card-head){min-height:52px;height:auto;padding:14px 24px;border-bottom:1px solid var(--gv-line-soft);background:transparent}
  .gv-shell>.gv-main :is(.gv-panel-title,.gv-card-head h2){font-size:17px;line-height:22px;font-weight:600;color:var(--gv-ink);letter-spacing:-.01em}
  .gv-shell>.gv-main :is(.gv-panel-subtitle,.gv-card-head p){font-size:14px;line-height:20px;color:var(--gv-muted);font-weight:400}
  .gv-shell>.gv-main :is(.gv-panel-body,.gv-card-body){padding:20px 24px}
  .gv-shell>.gv-main :is(.gv-empty-mini,.gv-empty,.gv-daily-empty){padding:36px 24px;text-align:center;font-size:15px;line-height:22px;color:var(--gv-muted);background:transparent;border:0}
  .gv-shell>.gv-main :is(.gv-panel,.gv-card) :is(.gv-panel,.gv-card){border-color:var(--gv-line-soft);border-radius:6px}

  /* Controls: predictable hierarchy and touch-safe dimensions. */
  .gv-shell>.gv-main .gv-btn{height:36px;min-height:36px;border-radius:6px;padding:0 18px;font-size:15px;line-height:1;font-weight:500;box-shadow:none!important}
  .gv-shell>.gv-main .gv-btn-primary{background:var(--gv-ink);border-color:var(--gv-ink);color:var(--gv-surface)}
  .gv-shell>.gv-main .gv-btn-primary:hover{background:var(--gv-ink-hover);border-color:var(--gv-ink-hover)}
  .gv-shell>.gv-main :is(.gv-btn-secondary,.gv-btn-ghost){background:transparent;border-color:var(--gv-line-strong);color:var(--gv-ink)}
  .gv-shell>.gv-main :is(.gv-btn-secondary,.gv-btn-ghost):hover{background:var(--gv-surface-quiet);border-color:var(--gv-line-strong)}
  .gv-shell>.gv-main :is(.gv-btn-small,.gv-btn-sm){height:32px;min-height:32px;border-radius:5px;padding:0 12px;font-size:14px}
  .gv-shell>.gv-main :is(.gv-btn-xs,.gv-icon-btn){border-radius:5px}
  .gv-shell>.gv-main :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){font-family:inherit;font-size:15px;line-height:22px;color:var(--gv-ink);background:var(--gv-surface);border:1px solid var(--gv-line-strong);border-radius:6px;box-shadow:none}
  .gv-shell>.gv-main :is(input:not([type="checkbox"]):not([type="radio"]),select){height:36px;padding:0 12px}
  .gv-shell>.gv-main textarea{min-height:96px;padding:10px 12px;resize:vertical}
  .gv-shell>.gv-main :is(input,select,textarea):focus{border-color:var(--gv-ink);outline:2px solid rgba(30,28,25,.1);outline-offset:1px}
  .gv-shell>.gv-main label>span,.gv-shell>.gv-main .gv-field>span{font-size:13px;line-height:18px;font-weight:500;color:var(--gv-muted)}
  .gv-shell>.gv-main :is(.gv-toolbar,.gv-commandbar,.gv-filterbar,.gv-controls,.gv-periodbar){background:var(--gv-surface);border-bottom:1px solid var(--gv-line-soft);padding:12px 24px;gap:12px}

  /* Tables share the same quiet header, row rhythm and horizontal overflow rule. */
  .gv-shell>.gv-main :is(.gv-table-wrap,.gv-table-scroll,.gv-live-table-wrap){overflow-x:auto}
  .gv-shell>.gv-main table{width:100%;border-collapse:collapse;font-size:15px;line-height:22px;background:var(--gv-surface)}
  .gv-shell>.gv-main th{height:38px;padding:9px 12px;background:var(--gv-surface-quiet);border-bottom:1px solid var(--gv-line-soft);font-size:13px;line-height:18px;font-weight:500;color:var(--gv-muted);text-align:left;white-space:nowrap}
  .gv-shell>.gv-main td{height:46px;padding:0 12px;border-bottom:1px solid var(--gv-line-soft);font-size:15px;line-height:22px;font-weight:400;color:var(--gv-text);vertical-align:middle;white-space:nowrap}
  .gv-shell>.gv-main tbody tr:hover td{background:var(--gv-surface-quiet)}
  .gv-shell>.gv-main td:first-child{color:var(--gv-ink)}
  .gv-shell>.gv-main :is(th.numeric,td.numeric,.num){text-align:right;font-variant-numeric:tabular-nums lining-nums}
  .gv-shell>.gv-main :is(td,.gv-table-cell) :is(small,.sub,.meta){font-size:13px;line-height:18px;color:var(--gv-muted)}

  /* Status is communicated by a dot/shape and text; only attention uses alert ink. */
  .gv-shell>.gv-main :is(.gv-status,.gv-chip,.gv-badge,.gv-state,.gv-integration-pill){border-radius:10px;background:var(--gv-surface-quiet);border:0;color:var(--gv-text);font-size:12.5px;line-height:18px;font-weight:500;box-shadow:none}
  .gv-shell>.gv-main :is(.gv-status.ok,.gv-status[data-status="signed"],.gv-status[data-status="live"],.gv-chip.ok,.gv-badge.ok){background:var(--gv-surface-quiet);color:var(--gv-text)}
  .gv-shell>.gv-main :is(.gv-status.warn,.gv-status.warning,.gv-status[data-status="failed"],.gv-status[data-tone="error"],.gv-chip.warn,.gv-badge.warn,.is-overdue){background:var(--gv-alert-soft);color:var(--gv-alert)}
  .gv-shell>.gv-main :is(.gv-status,.gv-chip,.gv-badge)::before{content:'•';margin-right:6px;color:currentColor}
  .gv-shell>.gv-main :is(.gv-status[data-status="failed"],.gv-status.warn,.gv-status.warning,.is-overdue)::before{content:'!';font-weight:600}

  /* Modal/drawer surfaces use line + scrim only, never a floating shadow. */
  .gv-shell>.gv-main :is(.gv-modal,.gv-drawer,dialog.gv-modal){background:var(--gv-surface);border:1px solid var(--gv-line);border-radius:8px;box-shadow:none!important}
  .gv-shell>.gv-main :is(.gv-modal-head,.gv-drawer-head){padding:20px 24px;border-bottom:1px solid var(--gv-line-soft);background:var(--gv-surface)}
  .gv-shell>.gv-main :is(.gv-modal-body,.gv-drawer-body){padding:24px;background:var(--gv-surface)}
  .gv-shell>.gv-main :is(.gv-modal-foot,.gv-drawer-foot){padding:16px 24px;border-top:1px solid var(--gv-line-soft);background:var(--gv-surface)}
  .gv-shell>.gv-main :is(.gv-modal-backdrop,.gv-drawer-backdrop,.gv-command-backdrop){background:var(--gv-scrim)}

  /* Dense operational screens retain data density without reverting to card walls. */
  .gv-shell>.gv-main :is(.gv-calendar-layout,.gv-task-layout,.gv-quote-layout,.gv-settlement-layout,.gv-payroll-layout,.gv-daily-workspace,.gv-people-detail-grid){gap:32px}
  .gv-shell>.gv-main :is(.gv-action-list,.gv-project-signal-list,.gv-activity-stream,.gv-activity-watch-list){border-color:var(--gv-line-soft)}
  .gv-shell>.gv-main :is(.gv-action-list)>*,.gv-shell>.gv-main :is(.gv-project-signal-list)>*{border-color:var(--gv-line-soft)}
}

@media (min-width:2560px){
  html[data-width="balanced"] .gv-shell>.gv-main{max-width:1900px!important}
  html[data-width="wide"] .gv-shell>.gv-main{max-width:2140px!important}
  html[data-width="full"] .gv-shell>.gv-main{max-width:2320px!important}
}
@media (max-width:1439px){
  html[data-width="balanced"] .gv-shell>.gv-main{width:88%!important}
  html[data-width="wide"] .gv-shell>.gv-main{width:94%!important}
  html[data-width="full"] .gv-shell>.gv-main{width:97%!important}
}
@media (max-width:1279px){
  html[data-width] .gv-shell>.gv-main{width:calc(100% - 48px)!important;max-width:none!important}
  .gv-shell>.gv-main> :is(.gv-functional-hero,.gv-page-hero,.gv-hero,.gv-activity-hero,.gv-analytics-hero,.gv-contract-hero,.gv-daily-hero){flex-direction:column;gap:16px}
  .gv-shell>.gv-main> :is(.gv-functional-hero,.gv-page-hero,.gv-hero,.gv-activity-hero,.gv-analytics-hero,.gv-contract-hero,.gv-daily-hero) [class*="actions"],.gv-hero-actions{width:100%;justify-content:flex-start;margin-left:0}
  .gv-shell>.gv-main :is(.gv-table-wrap,.gv-table-scroll,.gv-live-table-wrap) table{min-width:760px}
}
@media (max-width:767px){
  .gv-shell>.gv-main{padding-top:24px!important;padding-bottom:64px!important}
  .gv-shell>.gv-main h1,.gv-shell>.gv-main> :is(.gv-functional-hero,.gv-page-hero,.gv-hero,.gv-activity-hero,.gv-analytics-hero,.gv-contract-hero,.gv-daily-hero) h1{font-size:34px;line-height:40px}
  .gv-shell>.gv-main :is(.gv-panel-head,.gv-card-head,.gv-panel-body,.gv-card-body){padding-left:16px;padding-right:16px}
  .gv-shell>.gv-main :is(th,td){padding-left:10px;padding-right:10px}
}
