
:root{--navy:#07111f;--navy2:#0c192a;--line:#dce3ea;--muted:#64748b;--gold:#c7a45a;--bg:#f4f6f8;--white:#fff;--green:#16794a;--red:#b42318}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#102033;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}header{height:70px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #1b2c40}header a{color:#d9e2ec;text-decoration:none}.brand{display:flex;align-items:center;gap:12px;font-weight:700}.brand-mark{width:36px;height:36px;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;font-family:Georgia,serif}main{max-width:1440px;margin:auto;padding:40px 5% 70px}.hero,.page-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.page-head{align-items:start}.eyebrow{font-size:11px;letter-spacing:.16em;color:var(--gold);font-weight:800;margin-bottom:8px}h1{font:700 clamp(32px,4vw,52px)/1.05 Georgia,serif;margin:0;color:var(--navy)}h2{margin:0 0 5px;font-size:20px}p{color:var(--muted);line-height:1.55}.panel{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 6px 22px rgba(7,17,31,.04)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.metric{background:var(--navy);color:white;border-radius:12px;padding:22px}.metric span{display:block;color:#aebdcd;font-size:13px;margin-bottom:12px}.metric strong{font:700 32px Georgia,serif}.btn{display:inline-block;border:1px solid #cbd5e1;background:white;color:#17263a;padding:9px 13px;border-radius:7px;text-decoration:none;cursor:pointer;font-weight:700}.btn.primary{background:var(--navy);border-color:var(--navy);color:white}.btn.danger{color:var(--red);border-color:#f0c8c5}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:1050px}th,td{padding:13px 12px;border-bottom:1px solid #e8edf2;text-align:left;vertical-align:top;font-size:13px}th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#68778a;background:#f8fafb;position:sticky;top:0}tbody tr{cursor:pointer}tbody tr:hover{background:#fafbfd}.badge,.status{display:inline-block;padding:4px 8px;border-radius:999px;background:#eef2f6;font-size:11px;font-weight:800}.status.completed{background:#e5f6ec;color:var(--green)}.status.blocked{background:#fde9e7;color:var(--red)}.status.in-progress,.status.poc,.status.validation{background:#fff4d8;color:#795b00}.empty{padding:22px;text-align:center;color:var(--muted)}.search{width:300px;padding:10px 12px;border:1px solid var(--line);border-radius:7px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}label{display:block;font-weight:700;font-size:13px;color:#34455a;margin-bottom:16px}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #ccd5df;border-radius:7px;padding:11px 12px;background:white;font:inherit;color:#17263a}textarea{min-height:100px;resize:vertical}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}.inline-form,.spend-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px;align-items:end}.inline-form input,.spend-form input{margin:0}.artifact,.timeline-item{border-top:1px solid #e7edf3;padding:14px 0;display:flex;justify-content:space-between;gap:15px}.artifact p,.timeline-item p{margin:5px 0}.actions{display:flex;gap:7px;align-items:start}.timeline-item{display:block}.spend-total{background:#f7f9fb;border:1px solid #e3e9ef;border-radius:8px;padding:14px;margin:15px 0}.flash{background:#e7f6ed;border:1px solid #bce3cb;color:#12633c;padding:12px 16px;border-radius:8px;margin-bottom:18px}footer{text-align:center;color:#7b8795;font-size:12px;padding:25px;border-top:1px solid var(--line)}@media(max-width:900px){.summary-grid,.two-col{grid-template-columns:1fr 1fr}.hero{align-items:start}.inline-form,.spend-form{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}}@media(max-width:600px){.summary-grid,.two-col{grid-template-columns:1fr}.hero{flex-direction:column}main{padding:25px 4%}}

nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}nav a{color:#d9e2ec;text-decoration:none;font-size:13px}.exec-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.health-list{display:grid;gap:10px}.health-list>div:first-child{display:flex;justify-content:space-between}.bar{height:10px;background:#e7edf2;border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;background:var(--gold)}.status-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.status-cards div{background:#f7f9fb;border:1px solid #e5eaf0;border-radius:8px;padding:12px}.status-cards strong,.status-cards span{display:block}.status-cards strong{font-size:22px}.status-cards span{font-size:11px;color:var(--muted);margin-top:3px}.login-card{max-width:480px;margin:80px auto;background:white;border:1px solid var(--line);border-radius:12px;padding:35px;box-shadow:0 10px 35px rgba(7,17,31,.08)}.login-card h1{margin-bottom:10px}.login-card small{display:block;margin-top:20px;color:var(--muted)}@media(max-width:900px){.exec-grid{grid-template-columns:1fr}.status-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){nav{gap:9px}.status-cards{grid-template-columns:1fr 1fr}}
.brand{display:flex;align-items:center;gap:10px;min-width:230px}.brand-mark-img{width:48px;height:48px;display:block;object-fit:contain}.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy strong{font:700 19px Georgia,serif;letter-spacing:.08em;color:#fff}.brand-copy small{font-size:8px;letter-spacing:.25em;color:var(--gold);margin-top:6px}.login-logo{display:block;width:min(320px,100%);height:auto;margin:0 auto 18px}.sort-tools{display:flex;gap:8px;align-items:center;margin:0 0 12px;color:var(--muted);font-size:13px}.sort-btn,.sort-arrows button{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px;padding:6px 10px;cursor:pointer}.sort-btn.active,.sort-btn:hover,.sort-arrows button:hover{border-color:var(--gold);color:var(--gold)}.sort-arrows{white-space:nowrap;margin-left:5px}.sort-arrows button{padding:2px 5px;border:0;background:transparent}.artifact-count{display:inline-grid;place-items:center;min-width:28px;height:24px;border-radius:999px;background:rgba(198,166,91,.14);color:var(--gold);font-weight:700}.data-row{cursor:pointer}

@media(max-width:600px){.brand{min-width:0}.brand-mark-img{width:42px;height:42px}.brand-copy strong{font-size:16px}.brand-copy small{font-size:7px;letter-spacing:.18em}}

.priority{display:inline-block;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800}.priority.yes{background:#e7f6ed;color:#12633c}.priority.no{background:#eef2f6;color:#64748b}

/* ============================================================
   DASHBOARD PAGINATION
   ============================================================ */

.pagination{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:18px;
  padding:14px 2px 2px;
  border-top:1px solid var(--line);
}

.pagination-info{
  color:var(--muted);
  font-size:13px;
  font-weight:600;
}

.pagination-controls{
  display:flex;
  align-items:center;
  gap:6px;
}

.page-btn{
  min-width:36px;
  height:36px;
  padding:0 11px;
  border:1px solid var(--line);
  border-radius:7px;
  background:var(--white);
  color:#34455a;
  font:600 13px Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;
  cursor:pointer;
  transition:all .15s ease;
}

.page-btn:hover:not(:disabled){
  border-color:var(--gold);
  color:var(--gold);
  background:#fffdf8;
}

.page-btn.active{
  background:var(--navy);
  border-color:var(--navy);
  color:#fff;
}

.page-btn:disabled{
  opacity:.45;
  cursor:not-allowed;
}

@media(max-width:600px){
  .pagination{
    flex-direction:column;
    align-items:stretch;
  }

  .pagination-info{
    text-align:center;
  }

  .pagination-controls{
    justify-content:center;
    flex-wrap:wrap;
  }

  .page-btn{
    min-width:34px;
  }
}
