/* Single source of truth for every WFS application shell. Load after app CSS. */
:root {
  --navy:#1b3a5c; --teal:#1a8a7d; --gold:#c9a84c; --ink:#303c51;
  --ink2:#646d7d; --muted:var(--ink2); --bg:#faf9f7; --cream:#fff7e6;
  --card:#fff; --card-blue:#f0f6fc; --card-teal:#e6f5f3;
  --line:#e5e9ee; --stop:#c05b4d; --danger:var(--stop); --good:#12a375; --warn:#a8842c;
  --wfs-content:1240px; --wfs-card-radius:10px; --wfs-card-padding:24px;
}
* {box-sizing:border-box}
html {min-width:320px; background:var(--bg)}
body {margin:0; min-height:100vh; background:var(--bg); color:var(--ink); font:15px/1.6 Inter,-apple-system,"Segoe UI",sans-serif}
h1,h2 {margin:0; color:var(--navy); font-family:Enriqueta,Georgia,serif; line-height:1.25}
h1 {font-size:32px; font-weight:700}
h2 {font-size:22px; margin-bottom:12px}
h3 {font:600 16px/1.4 Inter,-apple-system,"Segoe UI",sans-serif; color:var(--navy)}
a {color:var(--navy)}
body > main, body > main.reviewer-main {width:min(var(--wfs-content),calc(100% - 56px)); max-width:var(--wfs-content); margin:32px auto 60px; padding:0}
body > main.auth-main {max-width:480px; margin:48px auto}
.card,.auth-card,.app-card,.review-finding {padding:var(--wfs-card-padding); border-radius:var(--wfs-card-radius); border:1px solid var(--line); background:var(--card); box-shadow:0 8px 24px rgba(27,58,92,.05)}
.card,.auth-card {margin:20px 0}
.app-card {border-top:4px solid var(--gold)}
.card.STOP,.review-finding.severity-critical {border-left:4px solid var(--stop)}
.card.DECIDE,.review-finding.severity-high {border-left:4px solid var(--gold)}
.card.VERIFY,.card.ASK,.review-finding.severity-medium {border-left:4px solid var(--navy)}
.card.NOTE,.review-finding.severity-info {border-left:4px solid #91cfc6; background:#fbfdfd; color:var(--ink2); opacity:.82}
.card.UNKNOWN {border-left:4px solid var(--ink2)}
button,.button,.btn {font-family:Inter,-apple-system,"Segoe UI",sans-serif; border-radius:6px}
button:not(.link):not(.nav-signout),.button,.btn {padding:10px 16px}
.table-wrap {overflow-x:auto}
body > footer {width:100%; margin:0; padding:18px 28px; background:var(--navy); color:#b8c7d8; font:12px/1.6 Inter,sans-serif}
body > footer a {color:#fff}
wfs-header {display:block; min-height:94px; background:var(--navy); color:white}
wfs-header > a {display:inline-block; padding:24px; color:white}
.wfs-band {display:flex; align-items:center; gap:20px; padding:18px 28px; background:var(--navy); color:#fff}
.wfs-brand {display:flex; align-items:center; gap:14px; color:#fff; text-decoration:none; flex-shrink:0}
.wfs-tile {display:flex; flex-shrink:0; background:#fff; border-radius:8px; line-height:0}
.wfs-tile img {display:block; width:44px; height:auto; border-radius:8px; object-fit:contain; filter:none}
.wfs-brand strong {display:block; font:700 18px/1.3 Enriqueta,Georgia,serif; max-width:210px}
.wfs-brand small {display:block; margin-top:3px; color:#b8c7d8; font:12px/1.4 Inter,sans-serif}
.wfs-nav {display:flex; flex-wrap:wrap; align-items:center; gap:4px; margin-left:auto}
.wfs-nav a {padding:7px 9px; border-radius:6px; color:#d7e0ea; font:600 12.5px/1.6 Inter,sans-serif; text-decoration:none; white-space:nowrap}
.wfs-nav a:hover,.wfs-nav a.active {background:rgba(255,255,255,.12); color:white}
.wfs-user {margin-left:auto; text-align:right; color:#b8c7d8; font:12px/1.5 Inter,sans-serif}
.wfs-user strong {display:block; color:white; font-weight:600; overflow-wrap:anywhere}
.wfs-user span {text-transform:capitalize}
.wfs-user form {display:inline; margin:0 0 0 8px}
.wfs-band .wfs-user button {padding:0; border:0; background:transparent; box-shadow:none; color:#fff; font:inherit; text-decoration:underline; cursor:pointer}
.wfs-band a:focus-visible,.wfs-band button:focus-visible {outline:2px solid white; outline-offset:3px}
@media(max-width:1100px) {.wfs-band{flex-wrap:wrap}.wfs-nav{order:3; width:100%; margin:0}.wfs-user{margin-left:auto}}
@media(max-width:620px) {
  .wfs-band{padding:16px 18px; gap:14px}.wfs-brand strong{font-size:16px; max-width:180px}
  .wfs-user{width:100%; margin:0; text-align:left}.wfs-nav{flex-wrap:wrap}
  body > main,body > main.reviewer-main{width:calc(100% - 32px); margin:24px auto 40px}
  .card,.auth-card,.app-card,.review-finding{padding:18px}h1{font-size:28px}
}
@media(prefers-reduced-motion:reduce) {*{scroll-behavior:auto!important; transition:none!important}}

/* Hub-only navigation. Standalone reviewer/report templates retain their shell. */
body.hub-shell{--hub-sidebar-width:224px;padding-left:var(--hub-sidebar-width);padding-top:82px}
body.hub-shell[data-sidebar-collapsed=true]{--hub-sidebar-width:72px}
body.hub-shell wfs-header{min-height:0;background:transparent}
.hub-shell .hub-topbar{position:fixed;inset:0 0 auto;height:82px;z-index:120;flex-wrap:nowrap;padding:12px 24px;gap:16px;background:rgba(27,58,92,.35);-webkit-backdrop-filter:blur(16px) saturate(120%);backdrop-filter:blur(16px) saturate(120%);border-bottom:1px solid rgba(27,58,92,.18)}
.hub-shell .hub-topbar .wfs-brand,.hub-shell .hub-topbar .wfs-user strong,.hub-shell .hub-topbar .wfs-user button,.hub-shell .hub-topbar .hub-nav-toggle{color:#1b3a5c}
.hub-shell .hub-topbar .wfs-brand small{color:#303c51}.hub-shell .hub-topbar .hub-nav-toggle{border-color:rgba(27,58,92,.45)!important}.hub-shell .hub-topbar a:focus-visible,.hub-shell .hub-topbar button:focus-visible{outline-color:#1b3a5c}
.hub-shell .hub-topbar .wfs-brand strong{font-size:16px}.hub-shell .hub-topbar .wfs-user{width:auto;margin-left:auto;text-align:right}
.hub-topbar .hub-nav-toggle{border:1px solid #7890aa!important;padding:7px 10px!important;min-width:44px;min-height:44px;background:transparent;color:#fff;font-size:22px;line-height:1;cursor:pointer}
#hub-sidebar{position:fixed;top:82px;bottom:0;left:0;width:var(--hub-sidebar-width);background:var(--navy);color:#fff;z-index:115;overflow-y:auto;padding:18px 12px}
#hub-sidebar nav{display:flex;flex-direction:column;gap:6px;min-height:100%}
#hub-sidebar a{display:flex;align-items:center;gap:12px;min-height:46px;padding:10px 12px;border-radius:7px;text-decoration:none;color:#e0e9f2;font-weight:500;white-space:nowrap;font-size:14px}
#hub-sidebar a.active{background:#e6f5f3;color:#164b44;font-weight:700;box-shadow:inset 4px 0 #1a8a7d}
#hub-sidebar a:hover{background:#315271;color:white}#hub-sidebar a.active:hover{background:#d4eee8;color:#164b44}
.hub-nav-icon{font-size:22px;width:24px;text-align:center;flex-shrink:0}.hub-nav-label{min-width:0}.hub-unread{margin-left:auto;min-width:22px;border-radius:12px;background:#fff;color:#1b3a5c;font-size:11px;line-height:22px;text-align:center;padding:0 5px}
#hub-sidebar .hub-settings-link{margin-top:auto;border-top:1px solid #526d89;border-radius:0;padding-top:18px}
.hub-shell[data-sidebar-collapsed=true] .hub-nav-label{display:none}.hub-shell[data-sidebar-collapsed=true] #hub-sidebar{padding:18px 8px}.hub-shell[data-sidebar-collapsed=true] #hub-sidebar a{padding:10px 15px;position:relative}.hub-shell[data-sidebar-collapsed=true] .hub-unread{position:absolute;right:0;top:0;line-height:16px;min-width:16px;font-size:10px;padding:0 3px}
.hub-shell>main,.hub-shell>main.reviewer-main{width:calc(100% - 48px);max-width:none;margin:24px 24px 60px;padding:0;min-width:0}
.hub-shell>footer{width:100%}.hub-shell .team-bellbar{display:none}
.hub-sidebar-backdrop{display:none}
.review-breadcrumb{display:flex;align-items:center;gap:10px;margin-bottom:14px;font-size:14px;flex-wrap:wrap}.review-breadcrumb a{color:#075e54;text-underline-offset:3px}
.review-tabs{display:flex;gap:8px;border-bottom:1px solid #d5dfe6;margin:20px 0 24px;padding:0}
.review-tabs a{display:block;padding:12px 20px 10px;text-decoration:none;border-bottom:4px solid transparent;color:#303c51;font-weight:500;border-radius:6px 6px 0 0}
.review-tabs a[aria-current=page]{border-bottom-color:#1a8a7d;font-weight:700;color:#075e54}
.review-tabs .fee-estimate-tab{background:#fff7e6;color:#71530a;box-shadow:inset 0 3px #c9a84c}.review-tabs a:hover{background:#e6f5f3}
.home-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px;align-items:start}.home-grid .card{margin-top:0}.home-work{grid-row:span 3}.home-counts{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.home-count{background:#f0f6fc;min-width:140px;flex:1;padding:14px 16px;border-radius:8px}.home-count strong{display:block;font-size:28px;line-height:1.2;color:#1b3a5c}.home-count span{font-size:12px;color:#4b5666}.home-work-list,.home-inbox-list{list-style:none;padding:0;margin:0}.home-work-list li,.home-inbox-list li{padding:14px 0;border-top:1px solid #e5e9ee}.home-work-list a{font-weight:600;text-decoration:none}.home-work-list .review-badges{margin-top:8px}.home-work-status{display:inline-block;padding:3px 9px;border-radius:5px;font-size:12px;margin-top:6px}.home-work-status.preparer{color:#713f12;background:#fef3c7}.home-work-status.manager,.home-work-status.decision{color:#075e54;background:#ddf4ee}.home-inbox-list a{display:block;overflow-wrap:anywhere}.home-grid time,.home-work-list small{font-size:12px;color:#646d7d}.settings-grid,.help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.settings-grid .card{margin:0}.help-grid a{display:block}.home-intro{margin-bottom:24px}.home-intro p{color:#646d7d}
@media(max-width:1100px){.home-grid{grid-template-columns:1fr}.home-work{grid-row:auto}}
@media(max-width:900px){
 body.hub-shell{padding-left:0;--hub-sidebar-width:224px}.hub-shell>main,.hub-shell>main.reviewer-main{width:calc(100% - 32px);margin:20px 16px 40px}
 #hub-sidebar{transform:translateX(-100%)}.hub-shell[data-sidebar-open=true] #hub-sidebar{transform:none}
 .hub-shell[data-sidebar-collapsed=true] .hub-nav-label{display:inline}.hub-shell[data-sidebar-collapsed=true] #hub-sidebar{padding:18px 12px}.hub-shell[data-sidebar-collapsed=true] #hub-sidebar a{padding:10px 12px}.hub-shell[data-sidebar-collapsed=true] .hub-unread{position:static;margin-left:auto;line-height:22px}
 .hub-sidebar-backdrop:not([hidden]){display:block;position:fixed;inset:82px 0 0;border:0;border-radius:0;background:#102c4970;z-index:110}
}
@media(max-width:620px){.hub-shell .hub-topbar{padding:10px 12px;gap:10px}.hub-shell .wfs-brand{gap:8px;flex:1;min-width:0}.hub-shell .wfs-brand strong{font-size:11px;max-width:100px}.hub-shell .wfs-brand small{font-size:10px}.hub-shell .wfs-tile img{width:40px}.hub-shell .hub-topbar .wfs-user{font-size:10px;max-width:118px}.review-tabs a{padding:12px 14px}.home-count{min-width:110px}}
@media print{body.hub-shell{padding:0}#hub-sidebar,.hub-topbar,.hub-sidebar-backdrop{display:none!important}}
body.hub-shell [id]{scroll-margin-top:100px}
#hub-sidebar a:focus-visible,.hub-nav-toggle:focus-visible{outline:3px solid #C9A84C;outline-offset:2px}
