
:root{--navy:#06172d;--navy2:#0b2947;--blue:#1769d2;--gold:#d6a63a;--bg:#f4f7fb;--card:#fff;--text:#152033;--muted:#718096;--line:#e4e9f1;--green:#179452;--red:#db3e48;--orange:#f59e0b;--purple:#7c3aed}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none;color:#1769d2}
.app-shell{display:flex;min-height:100vh}.sidebar{width:220px;background:linear-gradient(180deg,#06172d,#07345a);color:white;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:15px 10px;z-index:10}.workspace{margin-left:220px;width:calc(100% - 220px)}
.hv-side-brand{display:flex;gap:9px;align-items:center;border-bottom:1px solid rgba(255,255,255,.13);padding:3px 5px 14px}.hv-shield{width:42px;height:48px;object-fit:contain}.brand-name{font-size:19px;font-weight:900;letter-spacing:-.7px}.brand-name span,.hero-brand span{color:var(--gold)}.brand-sub{font-size:8px;color:#cbd7e6;text-transform:uppercase;letter-spacing:.7px;margin-top:2px}
.vendor-switch{display:flex;gap:9px;align-items:center;margin:13px 2px;padding:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:9px}.vendor-logo{width:38px;height:38px;object-fit:contain;background:#fff;border-radius:6px;padding:3px}.vendor-initial{width:38px;height:38px;border-radius:7px;background:white;color:var(--navy);display:grid;place-items:center;font-weight:900}.vendor-switch div:last-child{min-width:0}.vendor-switch b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vendor-switch small{font-size:9px;color:#b8c8da}
.side-nav{display:flex;flex-direction:column;gap:3px;overflow:auto}.side-nav a{display:flex;gap:10px;align-items:center;color:#e8eef6;padding:10px;border-radius:7px;font-size:12px}.side-nav a:hover{background:#1265bd}.side-nav span{width:18px;text-align:center;color:#d9b65b}.side-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.13);padding-top:12px}.profile-mini{display:flex;gap:8px;align-items:center}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e8eef5;color:#24364b;font-weight:800}.profile-text b{font-size:11px;display:block}.profile-text small{font-size:9px;color:#e8b845}.logout-button{display:block;margin-top:10px;text-align:center;padding:9px;background:#09243e;border:1px solid rgba(255,255,255,.18);border-radius:7px;color:white;font-size:11px;font-weight:700}
.top-head{height:58px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 22px;position:sticky;top:0;z-index:5}.top-vendor{display:flex;align-items:center;gap:8px;font-size:12px}.top-vendor-logo{width:30px;height:30px;object-fit:contain}.top-actions{display:flex;align-items:center;gap:10px;font-size:11px}.role-chip{color:#65758a}.top-logout{padding:7px 11px;border:1px solid var(--line);border-radius:7px;color:#24364b}
.container{padding:18px 20px;max-width:1600px;margin:auto}.dashboard-welcome{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.dashboard-welcome h1{font-size:23px;margin:0 0 4px}.dashboard-welcome p{margin:0;color:var(--muted);font-size:12px}.quick-search{border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:#fff;color:#8491a3;font-size:11px}
.hv-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:12px}.hv-kpi{background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px 15px;position:relative;overflow:hidden}.hv-kpi:after{content:"";position:absolute;right:14px;top:16px;width:37px;height:37px;border-radius:12px;background:currentColor;opacity:.12}.hv-kpi span{font-size:11px;font-weight:700}.hv-kpi strong{display:block;font-size:24px;margin:8px 0 4px}.hv-kpi small{font-size:9px;color:var(--muted)}.hv-kpi.blue{color:#1769d2}.hv-kpi.orange{color:var(--orange)}.hv-kpi.green{color:var(--green)}.hv-kpi.purple{color:var(--purple)}.hv-kpi.red{color:var(--red)}
.card{background:white;border:1px solid var(--line);border-radius:11px;padding:14px;margin-bottom:12px}.card h2{font-size:13px;margin:0 0 13px}.card h2 small{color:var(--muted);font-weight:500}.dash-grid-three{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:12px}.donut-wrap{display:flex;align-items:center;gap:18px}.css-donut{width:135px;height:135px;border-radius:50%;background:conic-gradient(var(--orange) 0 calc(var(--p1)*1%),var(--green) calc(var(--p1)*1%) calc((var(--p1) + var(--p2))*1%),var(--purple) calc((var(--p1) + var(--p2))*1%) calc((var(--p1) + var(--p2) + var(--p3))*1%),var(--red) 0);position:relative}.css-donut:after{content:"";position:absolute;inset:34px;border-radius:50%;background:white}.chart-legend{display:grid;gap:9px;font-size:10px;flex:1}.chart-legend div{display:grid;grid-template-columns:12px 1fr auto;align-items:center}.lg{width:8px;height:8px;border-radius:2px}.lg.orange{background:var(--orange)}.lg.green{background:var(--green)}.lg.purple{background:var(--purple)}.lg.red{background:var(--red)}.line-chart{height:205px}.line-chart svg{width:100%;height:100%}.mini-legend{display:flex;gap:12px;justify-content:center;font-size:9px;color:var(--muted)}.mini-legend span:before{content:"";display:inline-block;width:8px;height:3px;margin-right:4px;vertical-align:middle}.blue-dot:before{background:#2563eb}.orange-dot:before{background:var(--orange)}.green-dot:before{background:var(--green)}.purple-dot:before{background:var(--purple)}
.finance-list{display:grid;gap:8px}.finance-list>div{display:flex;justify-content:space-between;border-bottom:1px solid #eef1f5;padding:7px 2px;font-size:10px}.finance-list b{color:#1769d2}.finance-list .profit{background:#edfff5;border:1px solid #9ad8b4;border-radius:7px;padding:9px;color:#167d47}.finance-list .profit b{color:#167d47}.privacy-note{font-size:10px}
.dashboard-bottom{display:grid;grid-template-columns:1fr 245px;gap:12px}.dashboard-rail .card{padding:13px}.vendor-profile{text-align:center}.profile-company-logo{width:82px;height:72px;object-fit:contain;margin:4px auto 8px}.profile-company-placeholder{width:70px;height:70px;border-radius:12px;background:#eef3f8;display:grid;place-items:center;margin:auto;font-size:22px;font-weight:900;color:#0b2947}.vendor-profile>b{display:block;font-size:12px}.vendor-profile>small{display:block;color:var(--muted);font-size:9px;margin:4px 0 10px}.quick-actions{display:grid;gap:6px}.quick-actions h2{margin-bottom:5px}.quick-actions a{border:1px solid #b9d2ef;border-radius:5px;padding:6px 8px;font-size:10px;color:#1456a0}.alert-card>div{display:flex;justify-content:space-between;padding:6px;border-bottom:1px solid #eef1f5;font-size:10px}.alert-card b{background:#f04a4a;color:#fff;border-radius:4px;padding:2px 6px}.rail-logout{display:block;text-align:center;background:#071e35;color:#fff;padding:10px;border-radius:8px;font-size:11px;font-weight:700}
.card-title-row{display:flex;justify-content:space-between;align-items:start}.card-title-row p{font-size:10px;color:var(--muted);margin:3px 0}.card-title-row a{font-size:10px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:620px}th,td{text-align:left;padding:8px;border-bottom:1px solid #edf0f4;font-size:10px}th{font-size:9px;color:#65758a;text-transform:uppercase}.badge{background:#edf4ff;color:#185fbd;border-radius:99px;padding:4px 7px;font-size:9px}.money-green{color:#158446}.money-red{color:#d93243}.muted{color:var(--muted)}
.btn{display:inline-flex;justify-content:center;align-items:center;border:1px solid #cdd6e1;background:#fff;color:#26374d;padding:9px 12px;border-radius:7px;font-weight:700;cursor:pointer}.btn.primary{background:#1265bd;color:#fff;border-color:#1265bd}.btn.small{padding:6px 9px;font-size:10px}.btn.full{width:100%}
label{font-size:11px;font-weight:700;color:#46566b;display:block;margin-bottom:5px}input,select,textarea{width:100%;border:1px solid #d6dee8;border-radius:7px;padding:10px;font:inherit}textarea{min-height:80px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.span2{grid-column:span 2}.page-head{display:flex;justify-content:space-between;margin-bottom:15px}.page-head h1{margin:4px 0;font-size:24px}.page-head p{margin:0;color:var(--muted);font-size:11px}.eyebrow{font-size:9px;letter-spacing:1px;font-weight:900}.eyebrow.dark{color:#5d7190}.alert{padding:10px;border-radius:7px;margin-bottom:10px;background:#eef4ff}.alert.success{background:#e9fbf2}.alert.danger{background:#ffeded}.alert.warning{background:#fff6de}
.login-container{padding:0;max-width:none}.login-shell{display:grid;grid-template-columns:1.15fr .85fr;min-height:100vh}.login-brand-panel{background:linear-gradient(145deg,#041427,#082d50);color:#fff;padding:42px 54px;display:flex;flex-direction:column}.login-wordmark{display:flex;gap:14px;align-items:center}.login-wordmark img{width:78px;height:88px;object-fit:contain}.hero-brand{font-size:40px;font-weight:900}.hero-tag{font-size:10px;color:#d6e0ec;letter-spacing:.6px}.login-message{margin:auto 0;max-width:690px}.login-message h1{font-size:46px;line-height:1.07;margin:12px 0;color:#fff}.login-message p{color:#bed0e0;line-height:1.7;max-width:600px}.feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid rgba(255,255,255,.13);padding-top:18px}.feature-row strong,.feature-row span{display:block}.feature-row strong{font-size:11px}.feature-row span{font-size:9px;color:#a9bdd1;margin-top:4px}.login-form-panel{display:grid;place-items:center;padding:35px;background:#f6f8fb}.login-card{width:min(410px,92vw);background:white;border:1px solid var(--line);border-radius:16px;padding:32px;box-shadow:0 20px 60px rgba(10,25,45,.09)}.login-card h2{font-size:27px;margin:7px 0}.login-card .muted{font-size:11px;margin-bottom:20px}.login-card input{margin-bottom:12px}.security-note{text-align:center;font-size:9px;color:#8a96a6;margin-top:14px}
@media(max-width:1050px){.dash-grid-three{grid-template-columns:1fr 1fr}.finance-card{grid-column:span 2}.hv-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.sidebar{display:none}.workspace{margin-left:0;width:100%}.dashboard-bottom{grid-template-columns:1fr}.dash-grid-three{grid-template-columns:1fr}.finance-card{grid-column:span 1}.hv-kpis{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.span2{grid-column:span 1}.login-shell{grid-template-columns:1fr}.login-brand-panel{min-height:440px;padding:28px}.login-message h1{font-size:34px}.top-head{padding:0 12px}}@media(max-width:480px){.hv-kpis{grid-template-columns:1fr}.donut-wrap{flex-direction:column}.feature-row{grid-template-columns:1fr}.hero-brand{font-size:31px}}


.daily-update-card{border:1px solid #d8e3ef;background:linear-gradient(180deg,#fff,#fbfdff)}
.daily-update-form{display:grid;grid-template-columns:1.05fr .7fr 1.5fr auto;gap:10px;align-items:end}
.update-button .btn{height:39px}
.current-process-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:13px;padding-top:13px;border-top:1px solid var(--line)}
.current-process-strip span{background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:9px}
.current-process-strip small{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.4px}
.current-process-strip b{display:block;margin-top:3px;font-size:10px}
.activity-timeline{position:relative;padding-left:7px}
.timeline-item{display:grid;grid-template-columns:20px 1fr;gap:9px;position:relative;padding:0 0 16px}
.timeline-item:not(:last-child):before{content:"";position:absolute;left:7px;top:15px;bottom:0;width:1px;background:#d8e1eb}
.timeline-dot{width:15px;height:15px;border-radius:50%;background:#1265bd;border:4px solid #eaf3ff;z-index:1}
.timeline-body{border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff}
.timeline-head{display:flex;justify-content:space-between;gap:12px;font-size:11px}
.timeline-head span{color:#1769d2;font-weight:800}
.timeline-meta{color:var(--muted);font-size:9px;margin-top:4px}
.timeline-note{background:#f7f9fc;border-radius:6px;padding:7px;margin-top:7px;font-size:10px}
@media(max-width:900px){.daily-update-form{grid-template-columns:1fr 1fr}.update-note{grid-column:span 2}.current-process-strip{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.daily-update-form{grid-template-columns:1fr}.update-note{grid-column:span 1}.current-process-strip{grid-template-columns:1fr}}

.hv-kpis.six{grid-template-columns:repeat(6,1fr)}.hv-kpi.amber{color:#b7791f}.dashboard-search{display:flex;gap:6px;align-items:center;background:#fff;border:1px solid var(--line);padding:5px;border-radius:8px}.dashboard-search input{border:0;outline:none}.dashboard-search button{background:#1265bd;color:#fff;border:0;border-radius:6px;padding:8px 12px}.status-row{display:flex;justify-content:space-between;padding:8px;border-bottom:1px solid var(--line)}.complete-badge{background:#e8f8ef!important;color:#137a43!important}.completed-banner{background:#e8f8ef;border:1px solid #9dd4b4;color:#137a43;padding:11px;border-radius:8px;margin-bottom:10px;font-weight:800}.inline-form{display:inline}.danger-btn{color:#b4232c}.company-move-box{background:#f7faff;border:1px solid #cbdcf0;padding:12px;border-radius:8px}.report-filters{display:grid;grid-template-columns:repeat(4,1fr) auto auto;gap:8px}.report-export,.actions{display:flex;gap:8px;margin-bottom:10px}.invoice-recipient{display:grid;grid-template-columns:180px 1fr auto;gap:8px}.invoice-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:15px 0}@media(max-width:1100px){.hv-kpis.six{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.hv-kpis.six,.report-filters,.invoice-recipient,.invoice-totals{grid-template-columns:1fr}}

.preferred-dashboard-top{grid-template-columns:1fr 1.35fr 1fr}
.preferred-dashboard-bottom{grid-template-columns:1fr 245px}
.dashboard-kpi-row{margin-bottom:12px}
.lg.pink{background:#e9455a}
.enhanced-donut{
  background:conic-gradient(
    var(--orange) 0 calc(var(--p1)*1%),
    var(--green) calc(var(--p1)*1%) calc((var(--p1) + var(--p2))*1%),
    var(--red) calc((var(--p1) + var(--p2))*1%) calc((var(--p1) + var(--p2) + var(--p3))*1%),
    var(--purple) calc((var(--p1) + var(--p2) + var(--p3))*1%) calc((var(--p1) + var(--p2) + var(--p3) + var(--p4))*1%),
    #e9455a 0
  )
}
.dashboard-search{min-width:410px}
@media(max-width:1050px){
  .preferred-dashboard-top{grid-template-columns:1fr 1fr}
  .preferred-dashboard-top .finance-card{grid-column:span 2}
}
@media(max-width:800px){
  .preferred-dashboard-top,.preferred-dashboard-bottom{grid-template-columns:1fr}
  .preferred-dashboard-top .finance-card{grid-column:span 1}
  .dashboard-search{min-width:0;width:100%}
}

/* HIRE-VAULT shield cleanup: bundled source has damaged pixels at its bottom edge. */
img[src*="hire_vault_shield.png"]{clip-path:inset(0 0 16% 0);object-fit:contain;object-position:center top;}

/* HIRE-VAULT production account security */
.hv-account-security{background:rgba(23,105,194,.14)!important;color:inherit!important;border:1px solid rgba(23,105,194,.28)!important}.hv-account-security:hover{background:rgba(23,105,194,.24)!important}
