:root{--ink:#132235;--navy:#0a2342;--navy2:#102f52;--blue:#1f5b91;--blue2:#2f6fa8;--gold:#c8a454;--line:#d9e1ea;--bg:#f3f6fa;--muted:#667382;--white:#fff}*{box-sizing:border-box}body{margin:0;font:15px/1.5 Arial,Helvetica,sans-serif;background:var(--bg);color:var(--ink)}a{color:var(--blue);text-decoration:none}.topbar{min-height:76px;background:linear-gradient(90deg,#081f3a,#0d2d50);color:#fff;display:flex;align-items:center;gap:28px;padding:0 28px;border-bottom:3px solid var(--gold);position:sticky;top:0;z-index:10;box-shadow:0 3px 15px rgba(7,28,51,.18)}.brand{display:flex;align-items:center;gap:11px;color:#fff;min-width:290px}.brand-patch{width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 2px 3px rgba(0,0,0,.25))}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand-text small{font-size:8.5px;letter-spacing:.13em;color:#cbd9e8;font-weight:700}.brand-text b{font-size:18px;letter-spacing:.08em;margin-top:4px}.topbar nav{display:flex;gap:20px;flex:1}.topbar nav a{color:#e6eef7;font-weight:600}.topbar nav a:hover{color:#fff}.userpill{background:#173b61;border:1px solid #42627f;padding:7px 11px;border-radius:999px;font-size:12px}.wrap{max-width:1180px;margin:30px auto;padding:0 20px}.narrow{max-width:850px}.hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#0a2442,#1f5b91);padding:34px 38px;color:#fff;border-radius:16px;margin-bottom:20px;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 24px rgba(17,49,82,.12)}.hero:after{content:"";position:absolute;inset:auto -90px -130px auto;width:340px;height:340px;border:1px solid rgba(255,255,255,.08);border-radius:50%}.hero-copy{position:relative;z-index:2;margin-left:94px}.hero-patch{position:absolute;left:24px;width:76px;height:76px;object-fit:contain;filter:drop-shadow(0 4px 6px rgba(0,0,0,.28));z-index:2}.hero h1{font-size:40px;margin:3px 0}.hero p{margin:0;color:#d9e7f5}.eyebrow,.section-kicker{font-size:10px;letter-spacing:.16em;font-weight:800}.eyebrow{color:#c3d8eb}.section-kicker{color:#7d8da0}.primary,button{background:var(--blue);color:#fff;border:0;border-radius:8px;padding:11px 16px;font-weight:700;cursor:pointer}.hero .primary{position:relative;z-index:2;background:#fff;color:#14365a;box-shadow:0 3px 10px rgba(0,0,0,.08)}.secondary{padding:10px 16px;border:1px solid var(--line);border-radius:8px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 4px 18px rgba(24,45,70,.05)}.card{padding:20px;border-top:3px solid #244e76}.card strong,.card span{display:block}.card strong{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px}.card span{font-size:19px;font-weight:700}.panel{padding:24px;margin-bottom:20px}.panel-title{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.panel-title h1,.panel-title h2{margin:2px 0 12px}table{width:100%;border-collapse:collapse;margin-top:10px}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid #e7ebf0;vertical-align:top}th{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.status{display:inline-block;background:#edf3f8;border:1px solid #d7e2ec;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700}.status.large{font-size:13px}.empty{text-align:center;color:var(--muted);padding:28px}.form-panel{border-top:4px solid var(--navy2)}.form-panel h1{margin:.2em 0}.muted{color:var(--muted)}label{display:block;font-weight:700;font-size:13px;margin:14px 0 7px}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #cbd5df;border-radius:8px;background:#fff;font:inherit}textarea{resize:vertical}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.filters{display:grid;grid-template-columns:2fr 1fr auto;gap:10px;margin:12px 0 20px}.meta{display:flex;flex-wrap:wrap;gap:18px;color:var(--muted);padding:12px 0 18px;border-bottom:1px solid var(--line)}.request-body{white-space:normal;font-size:16px;padding:22px 0 5px}.timeline{margin-top:18px}.review{display:grid;grid-template-columns:18px 1fr;gap:12px;padding:0 0 22px}.dot{width:12px;height:12px;background:var(--blue);border-radius:50%;margin-top:6px}.review-head{display:flex;justify-content:space-between;gap:15px}.review-head span,small{color:var(--muted)}.recommendation{font-weight:700;margin:5px 0}.private-note{background:#f8f4e8;border:1px solid #eadfbf;padding:10px 12px;border-radius:8px;color:#6c5a2d}.site-footer{display:flex;align-items:center;justify-content:center;gap:10px;color:#758190;font-size:12px;padding:10px 0 30px}.site-footer img{width:34px;height:34px;object-fit:contain;opacity:.75}.site-footer div{display:flex;flex-direction:column}.site-footer strong{color:#596979}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 15% 15%,#1b4b77 0,#0d2b4b 35%,#081d35 100%);padding:30px}.login-card{width:min(480px,94vw);background:#fff;padding:28px 30px 30px;border-radius:16px;border-top:5px solid var(--gold);box-shadow:0 20px 60px rgba(0,0,0,.28)}.login-brand{display:flex;align-items:center;gap:18px;margin-bottom:14px}.login-brand img{width:88px;height:88px;object-fit:contain;filter:drop-shadow(0 3px 4px rgba(0,0,0,.18))}.login-brand span{font-size:9px;letter-spacing:.13em;font-weight:800;color:#68788a}.login-brand h1{margin:1px 0 0;font-size:30px;color:var(--navy)}.login-brand p{margin:0;color:var(--muted)}.internal-banner{background:#eef3f8;color:#29445f;border:1px solid #d9e4ee;font-size:10px;letter-spacing:.1em;font-weight:800;text-align:center;padding:7px 10px;border-radius:7px;margin:12px 0 18px}.login-card button{width:100%;margin:18px 0 10px}.login-card small{display:block;color:var(--muted)}@media(max-width:850px){.topbar{padding:10px 16px;flex-wrap:wrap;gap:10px}.brand{min-width:0;flex:1}.brand-patch{width:42px;height:42px}.brand-text small{display:none}.topbar nav{order:3;width:100%;overflow:auto;padding-bottom:4px}.userpill{margin-left:auto}.cards,.grid2,.filters{grid-template-columns:1fr}.hero{align-items:flex-start;gap:20px;flex-direction:column}.hero-copy{margin-left:72px}.hero-patch{width:62px;height:62px}.hero .primary{margin-left:72px}table{display:block;overflow-x:auto}.wrap{margin-top:18px}}@media(max-width:520px){.brand-text b{font-size:16px}.hero{padding:26px 22px}.hero-copy{margin-left:0;padding-top:76px}.hero-patch{left:22px;top:22px}.hero .primary{margin-left:0}.login-brand{align-items:flex-start}.login-brand img{width:74px;height:74px}}
.alert{padding:12px 14px;border-radius:10px;margin:0 0 18px;font-weight:600}.alert.error{background:#fff1f0;border:1px solid #f1b5b0;color:#8a1c14}.alert.success{background:#eef9f1;border:1px solid #b9dec2;color:#205c2e}.table-wrap{overflow:auto}.link-button{background:none;border:0;padding:0;color:#0b4f8a;text-decoration:underline;cursor:pointer;font:inherit}
.routing-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.routing-steps .card{display:flex;align-items:center;gap:10px}.routing-steps .card strong{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#d7b56d;color:#111}.table-wrap{overflow-x:auto}.table-wrap table{min-width:980px}.table-wrap input,.table-wrap select{width:100%;box-sizing:border-box}@media(max-width:800px){.routing-steps{grid-template-columns:1fr}}


/* v1.4.1 login/logout header controls */
.topbar{
  display:flex;
  align-items:center;
  gap:24px;
}
.topbar .navlinks{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}
.topbar .user-tools{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:12px;
}
.user-chip{
  display:flex;
  flex-direction:column;
  line-height:1.1;
  text-align:right;
  color:#fff;
  font-size:12px;
}
.user-chip span{
  opacity:.75;
  font-size:10px;
  margin-top:3px;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.logout-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 14px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;
  color:#fff;
  text-decoration:none;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
.logout-btn:hover{
  background:rgba(255,255,255,.1);
}
@media (max-width: 900px){
  .topbar{
    flex-wrap:wrap;
  }
  .topbar .user-tools{
    width:100%;
    justify-content:flex-end;
    margin-left:0;
  }
}


/* v1.4.2 header correction */
.topbar .navlinks{
  min-width:0;
  flex:1 1 auto;
  display:flex;
  align-items:center;
  gap:20px;
  overflow-x:auto;
  scrollbar-width:none;
}
.topbar .navlinks::-webkit-scrollbar{display:none}
.topbar .navlinks a{
  color:#e6eef7;
  font-weight:600;
  white-space:nowrap;
}
.topbar .navlinks a:hover{color:#fff}
.topbar .user-tools{
  flex:0 0 auto;
  margin-left:0;
}
.topbar .brand{
  flex:0 1 auto;
}
@media(max-width:850px){
  .topbar .navlinks{
    order:3;
    width:100%;
    flex-basis:100%;
    padding-bottom:4px;
  }
  .topbar .user-tools{
    width:auto;
    margin-left:auto;
  }
}


/* v1.5 supporting document uploads */
.upload-box{
  margin-top:16px;
  padding:16px;
  border:1px dashed var(--line);
  border-radius:12px;
  background:#f8fafc;
}
.upload-box input[type="file"],
.attachment-add input[type="file"]{
  margin-top:8px;
  padding:11px;
  background:#fff;
}
.upload-help{
  margin:7px 0 0;
  font-size:12px;
  color:var(--muted);
}
.attachment-list{
  display:grid;
  gap:10px;
  margin-top:14px;
}
.attachment-card{
  display:flex;
  align-items:center;
  gap:12px;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  text-decoration:none;
  color:inherit;
}
.attachment-card:hover{
  border-color:#9eb6cc;
  box-shadow:0 4px 14px rgba(16,45,73,.08);
}
.attachment-icon{
  width:44px;
  height:44px;
  border-radius:10px;
  background:#edf4fa;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:10px;
  font-weight:900;
  color:#12385d;
  flex:0 0 auto;
}
.attachment-info{
  min-width:0;
  flex:1;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.attachment-info strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.attachment-info span{
  color:var(--muted);
  font-size:12px;
}
.attachment-action{
  font-size:12px;
  font-weight:800;
  color:#1d5f96;
}
.attachment-add{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid var(--line);
}


/* v1.6 Chief downward communication */
.chief-send-box{
  margin:18px 0;
  padding:18px;
  border:1px solid #b8cee1;
  border-left:4px solid #c9a24d;
  border-radius:12px;
  background:#f4f8fc;
}
.chief-send-box .section-kicker{
  margin-bottom:10px;
}


/* v1.6.1 access + in-app review notification */
.review-queue-link{display:inline-flex!important;align-items:center;gap:7px}
.queue-badge{
  min-width:20px;height:20px;padding:0 6px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  background:#c9a24d;color:#102d49;font-size:11px;font-weight:900;
}
.queue-alert{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  margin:0 0 18px;padding:14px 16px;border:1px solid #d7c083;
  border-left:4px solid #c9a24d;border-radius:12px;background:#fffaf0;
}
.queue-alert div{display:flex;flex-direction:column;gap:3px}
.queue-alert span{font-size:12px;color:var(--muted)}
@media(max-width:650px){.queue-alert{align-items:flex-start;flex-direction:column}}


/* v1.8 response/action visibility */
.waiting-panel{
  border-left:4px solid #9aa9b8;
  background:#f8fafc;
}
.waiting-panel h2{margin:4px 0 6px}
.waiting-panel p{margin:0;color:var(--muted)}
.queue-action-link{
  display:inline-block;
  padding:7px 11px;
  border-radius:7px;
  background:#1f5b91;
  color:#fff;
  font-weight:700;
  white-space:nowrap;
}
.form-panel h2:first-child{
  color:#12385d;
}
