/* The office's familiar navy and gold palette, shared by every workspace. */
:root{font-family:"Segoe UI",Arial,sans-serif;color:#102b3f;background:#f3f6f8;--blue:#113047;--navy:#113047;--muted:#526979;--line:#d9e2e8;--green:#16865d;--radius:14px;line-height:1.5}
.topbar{height:72px;background:#113047;color:#fff;border-bottom:3px solid #e0a323;padding:0 28px;position:sticky;top:0;box-shadow:0 2px 8px #11304716}
.brand-mark,.login-icon{background:#e0a323;color:#113047;border-radius:10px;font-weight:800}.brand strong{letter-spacing:.6px}.brand small{color:#e0e9ef;font-size:12px}.header-tools{gap:10px}.topbar .icon-button{background:#194661;border-color:#ffffff45;color:white}.topbar .text-button{color:white;border:1px solid #ffffff45;font-size:13px;padding:8px 12px}.topbar .avatar{background:#e0a323;color:#113047}
.app-shell{grid-template-columns:205px 1fr;min-height:calc(100vh - 72px)}.sidebar{background:#fff;padding:25px 16px}.workspace-label{color:#526979;font-size:11px}.nav-button{color:#344f61;font-size:14px}.nav-button[aria-current=page]{background:#113047;color:white}.nav-icon{display:grid;place-items:center}.nav-icon svg{width:21px;height:21px}.sidebar-foot{color:#526979;font-size:12px}
main{max-width:1250px;padding:26px 30px 85px}.page-heading{margin-bottom:20px}h1{letter-spacing:-.4px;font-size:27px}.muted,.page-heading p{font-size:14px;color:var(--muted)}.date-chip{color:#405c70;font-size:13px}.panel,.task-card,.review-card,.team-card,.stat,.summary-card{box-shadow:0 3px 14px #11304708}
.hero,.admin-hero{background:#fff;color:#102b3f;border:1px solid var(--line);border-left:5px solid #e0a323;border-radius:14px;padding:22px 24px;min-height:0;box-shadow:0 3px 14px #11304708}.hero:after{display:none}.hero h2{font-size:23px;margin-top:14px}.hero p,.admin-hero p,.timer-caption,.admin-count small,.admin-kicker,.eyebrow{color:#526979}.hero-status{background:#edf5f0;border-color:#c7dfd3;color:#176546;font-size:12px}.eyebrow,.admin-kicker{font-size:12px;letter-spacing:.7px;font-weight:700}.hero .primary,.admin-hero .primary{background:#113047;color:#fff}.hero .secondary{background:white;border-color:#c5d3dc;color:#113047}.hero-actions{margin-top:18px}.timer{font-size:42px;margin-top:16px}.timer-caption{font-size:13px}.admin-count{color:#113047;font-size:34px}.admin-count small{font-size:13px}.admin-hero{margin-bottom:16px}.admin-summary{gap:12px;margin-bottom:22px}.summary-card{min-height:98px;padding:14px 17px;border-top:3px solid #d9e2e8}.summary-card:hover{border-color:#e0a323}.summary-card span{font-size:13px;color:#526979}.summary-card em{font-size:12px}.summary-card strong{font-size:27px}.stats{gap:12px;margin:14px 0 22px}.stat{padding:14px 16px}.stat-label{font-size:12px;color:#526979}
.primary,.secondary,.danger-outline,.text-button{font-size:14px;border-radius:9px}.secondary{color:#113047;border-color:#c5d3dc}.tabs button{font-size:13px;color:#405c70}.tabs button.selected{background:#113047;color:#fff;border-color:#113047}label,summary{font-size:14px;color:#405c70}input,select,textarea{font-size:15px;border-color:#c5d3dc}.task-card h3,.review-card h3,.team-card h3{font-size:15px}.task-card .client-label{font-size:12px;color:#526979;text-transform:none;letter-spacing:0;font-weight:600}.task-meta,.review-card .muted,.team-card p,.team-card .team-label,.review-id,.approval-total,.meta-item span,.freshness,.search-message{font-size:12px;color:#526979}.pill{font-size:12px}.task-card .secondary,.admin-task-card .secondary{font-size:13px}.freshness{margin-top:18px}.office-link{color:#113047;font-size:14px}.admin-more>summary{color:#113047}.admin-more-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px}.admin-more-links .office-link,.office-tools .office-link{display:flex;align-items:center;min-height:60px;margin:0;padding:15px 17px;border:1px solid #d9e2e8;border-radius:10px;background:white;text-decoration:none;font-size:14px;font-weight:600}.office-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.office-tools .office-link:hover,.admin-more-links .office-link:hover{border-color:#e0a323;background:#fffbf0}.endday-card{background:#eaf0f3}.loading-shell{background:white;border:1px solid var(--line);border-radius:14px;padding:32px;font-size:15px;text-align:left}.loading-shell:before{content:"";display:inline-block;width:16px;height:16px;border:2px solid #d9e2e8;border-top-color:#113047;border-radius:50%;margin-right:10px;vertical-align:-3px;animation:office-spin .8s linear infinite}@keyframes office-spin{to{transform:rotate(360deg)}}
#login-main{background:#f3f6f8}.login-panel{border-top:4px solid #e0a323;box-shadow:0 6px 30px #1130470c}.login-panel .login-icon{background:#e0a323;color:#113047}.pin-field button{color:#113047;font-size:13px}button:focus-visible,a:focus-visible{outline-color:#b27c06}input:focus,select:focus,textarea:focus{outline-color:#194661}
@media(max-width:760px){.topbar{height:70px;padding:0 14px}.brand{gap:9px}.brand strong{font-size:16px}.brand small{font-size:11px}.header-tools{gap:7px}.header-tools .avatar{display:none}.topbar .text-button{font-size:12px;padding:7px 9px}.app-shell{display:block}.sidebar{display:none}main{padding:20px 15px 105px;max-width:720px}h1{font-size:24px}.page-heading p{font-size:13px}.date-chip{font-size:11px;padding:6px 9px}.hero,.admin-hero{padding:18px 17px}.hero h2,.admin-hero h2{font-size:21px}.hero p,.admin-hero p{font-size:14px}.hero-actions{gap:8px}.hero-actions .primary,.hero-actions .secondary{flex:auto}.primary,.secondary{font-size:14px;padding:10px 13px}.timer{font-size:38px}.admin-count{font-size:26px;margin-top:12px}.admin-summary{gap:10px}.summary-card{min-height:96px;padding:12px}.summary-card span{font-size:13px}.summary-card em{font-size:12px}.task-meta,.team-card .team-label{font-size:12px}.stats{gap:8px}.stat{padding:12px 10px}.stat-label{font-size:11px}.stat strong{font-size:18px}.mobile-nav{grid-template-columns:repeat(5,minmax(0,1fr));background:#fff;padding-left:5px;padding-right:5px}.mobile-nav .nav-button{font-size:11px;gap:4px;padding:6px 2px}.mobile-nav .nav-button[aria-current=page]{background:#113047;color:white}.office-tools,.admin-more-links{grid-template-columns:1fr}.review-actions button{font-size:14px}.scope-note{font-size:12px}.freshness{font-size:12px}.notice{bottom:85px}.panel{padding:18px}}
.office-tabs .selected{background:#113047;border-color:#113047;color:white}.office-record,.report-metric{border-color:var(--line);border-radius:14px}.office-record{box-shadow:0 3px 14px #11304708}.month-day.selected{border-color:#113047;background:#fff9e9}.month-day small{font-size:12px}.report-tabs .selected{background:#113047;color:white;border-color:#113047}th{background:#f3f6f8;color:#344f61;font-size:13px}td{font-size:14px}.report-metric small{color:#526979}.task-card>div{min-width:0}.task-card h3{overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){.loading-shell:before{animation:none}}
.nav-group-label{margin:20px 14px 5px;color:#526979;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.office-nav-link{text-decoration:none;font-size:13px;padding:10px 12px}.office-shell #office-main{width:100%;max-width:1200px;margin:0 auto;min-width:0;padding:26px 30px 105px}.sidebar{align-self:start;position:sticky;top:72px;max-height:calc(100vh - 72px);overflow-y:auto}.sidebar nav .nav-button{flex-shrink:0}.mobile-nav a{text-decoration:none}.report-table,.salary-days{overflow-x:auto}.page-heading>div{min-width:0}.page-heading p{overflow-wrap:anywhere}
@media(max-width:760px){.office-shell #office-main{padding:20px 15px 110px}.sidebar{display:none}.header-tools{flex-wrap:nowrap}.topbar .brand{min-width:0}.topbar .brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:190px}.mobile-nav a{font-size:11px}}
.sidebar a.nav-button{text-decoration:none}#login-main{background:linear-gradient(145deg,#113047,#194661);min-height:calc(100vh - 72px)}.login-panel{background:#fff}.sidebar .nav-button:hover{background:#f3f6f8;color:#113047}.sidebar .nav-button[aria-current=page]:hover{background:#113047;color:white}

/* Purpose-based Admin services, with no additional dashboard reads. */
.nav-section{border-top:1px solid #edf1f4;margin-top:10px;padding-top:5px}.nav-section>summary{font-size:12px;font-weight:700;padding:10px 6px;cursor:pointer;color:#526979}.nav-section[open]>summary{color:#113047}.nav-section .office-nav-link{font-size:12px;padding:9px 10px;min-height:42px}.service-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:22px}.service-group{min-width:0}.service-group h2{font-size:15px;margin:0 0 10px;color:#113047}.service-links{display:grid;gap:6px}.service-link{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid #e1e8ed;border-radius:10px;text-decoration:none;color:#264457;min-height:48px;background:#fff;font-size:14px}.service-link>span:nth-child(2){flex:1;min-width:0}.service-link:hover{border-color:#e0a323;background:#fffbf0}.service-icon{display:grid;place-items:center;width:30px;height:30px;background:#f0f5f8;border-radius:8px;flex-shrink:0}.service-icon svg{width:18px;height:18px}.admin-shortcuts{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.admin-shortcuts a{padding:11px 16px;min-height:44px;border:1px solid #cddbe4;background:#fff;color:#113047;border-radius:10px;font-size:14px;text-decoration:none;font-weight:600}.employee-onboarding>summary{font-size:18px;font-weight:650;cursor:pointer;min-height:44px}.employee-onboarding[open]>summary{margin-bottom:12px}.employee-onboarding .profile-fields{margin:16px 0}.employee-onboarding form>button{min-height:44px}
@media(max-width:760px){.service-groups{grid-template-columns:1fr;padding:16px;gap:22px}.service-link{min-height:52px}.admin-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-shortcuts a{font-size:13px;padding:12px}.employee-onboarding .profile-fields{grid-template-columns:1fr}}

.approval-context .office-tabs,.approval-context .profile-tabs,.approval-context .assignment-tabs{display:none}

.employee-attention .attention-item{padding:16px 0;border-top:1px solid #e1e8ee;display:grid;gap:8px}.attention-item strong{color:#142f42}.attention-item>span{color:#657986}.attention-item p{margin:0}.attention-clear{color:#237350}.attention-range{font-size:12px;margin-top:16px}.employee-attention h3{margin-top:20px}.employee-attention details{margin-top:16px}
