[hidden]{display:none!important;}
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#172638;background:#edf3f7;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-height:100vh}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:30px}.auth-layout{width:min(1080px,100%);min-height:650px;display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid #dce5ec;border-radius:25px;overflow:hidden;box-shadow:0 24px 70px #102a431c}.auth-hero{display:flex;flex-direction:column;padding:43px 48px;color:white;background:linear-gradient(145deg,#09243d,#11486a 63%,#1c6881);position:relative}.auth-hero:after{content:"";position:absolute;width:380px;height:380px;border:1px solid #ffffff1c;border-radius:50%;right:-130px;bottom:12px;box-shadow:0 0 0 35px #ffffff08,0 0 0 80px #ffffff05}.brand-row,.hero-brand{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#d4eafa;color:#0d4263;font-weight:900;font-size:21px}.brand-mark.small{width:35px;height:35px;font-size:18px}.hero-brand{font-size:19px;font-weight:850;letter-spacing:.07em}.hero-copy{margin:auto 0;max-width:430px;position:relative;z-index:1}.kicker,.access-tag{font-size:10px;font-weight:800;letter-spacing:.17em;color:#3d7c9c}.auth-hero .kicker{color:#c4deea}.hero-copy h1{font-size:38px;line-height:1.14;letter-spacing:-.035em;margin:16px 0}.hero-copy p{font-size:15px;line-height:1.7;color:#d3e2ec;max-width:385px}.hero-footer{border-top:1px solid #ffffff30;padding-top:18px;font-size:12px;color:#d4e6ee;position:relative;z-index:1}.auth-card{padding:54px 58px;display:flex;flex-direction:column;justify-content:center}.brand-row strong{display:block;color:#10334e;font-size:17px;letter-spacing:.06em}.eyebrow{display:block;font-size:10px;color:#768797;margin-top:3px}.access-tag{margin-top:48px}.auth-card h2{font-size:28px;letter-spacing:-.03em;margin:9px 0 8px;color:#172638}.intro{font-size:13px;line-height:1.55;color:#687a89;margin:0 0 24px}.google-button-wrap{min-height:44px}.skeleton{height:42px;border:1px solid #d5dfe7;border-radius:9px;background:linear-gradient(90deg,#fff,#f4f7f9,#fff);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{to{background-position:-200% 0}}.status{font-size:12px;color:#718191;min-height:20px;margin:12px 0}.status.error{color:#a23838}.status.success{color:#1f714c}.protected-panel{margin-top:2px;border:1px solid #d9e8e0;border-radius:13px;padding:17px;background:#f7fbf8}.signed-in{display:flex;gap:10px;align-items:center}.signed-in strong,.signed-in span{display:block}.signed-in strong{font-size:13px}.signed-in div span{font-size:11px;color:#738275;margin-top:2px}.check{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#e0f4e9;color:#27764e}.protected-panel h3{font-size:14px;margin:18px 0 4px}.record-note{font-size:11px;color:#768579;margin:0 0 12px}.record{display:grid;grid-template-columns:1fr 1fr;gap:9px}.record div{padding:10px;border-radius:8px;background:white;border:1px solid #e5eee8}.record small,.record strong{display:block}.record small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#75867a}.record strong{font-size:12px;margin-top:4px}.secondary-button{margin-top:13px;border:1px solid #ccd9d1;background:white;color:#385444;border-radius:8px;padding:9px 13px;font-weight:700;cursor:pointer}.security-note{margin-top:22px;padding:13px 14px;background:#f5f8fa;border:1px solid #e3eaf0;border-radius:10px;display:grid;gap:4px}.security-note strong{font-size:11px;color:#344d62}.security-note span{font-size:10px;line-height:1.5;color:#718191}.auth-card footer{margin-top:25px;color:#9aa7b0;font-size:9px;text-align:center}@media(max-width:760px){.auth-shell{padding:0}.auth-layout{min-height:100vh;grid-template-columns:1fr;border:0;border-radius:0}.auth-hero{display:none}.auth-card{padding:42px 27px}.access-tag{margin-top:42px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
.signup-panel,.applicant-status{margin-top:2px;border:1px solid #d9e8e0;border-radius:13px;padding:17px;background:#f7fbf8}.signup-panel h3,.applicant-status h3{font-size:14px;margin:0 0 7px}.signup-panel form{display:grid;gap:8px}.signup-panel label{font-size:11px;font-weight:700;color:#344d62;margin-top:5px}.signup-panel select{width:100%;padding:10px;border:1px solid #ccd9d1;border-radius:8px;background:#fff;color:#172638}.signup-panel button:disabled{opacity:.6;cursor:wait}

.workspace-panel,.admin-dashboard{margin-top:16px;border:1px solid #dce5ec;border-radius:13px;padding:17px;background:#f8fafc}.workspace-panel h3,.admin-dashboard h3{margin:0;color:#17334a;font-size:17px}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.admin-heading .eyebrow{margin:0 0 4px;color:#39748f;font-weight:800;letter-spacing:.13em}.admin-heading .secondary-button{margin:0}.admin-state{min-height:20px;margin:12px 0;color:#687a89;font-size:12px}.admin-state.success{color:#1f714c}.admin-state.error{color:#a23838}.admin-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 18px}.summary-card{padding:13px;border:1px solid #dce5ec;border-radius:10px;background:white}.summary-card span,.summary-card strong{display:block}.summary-card span{font-size:10px;color:#768797}.summary-card strong{margin-top:5px;color:#103d59;font-size:24px}.admin-section{margin-top:18px}.admin-section h4{margin:0 0 9px;color:#344d62;font-size:13px}.request-list,.activity-list{display:grid;gap:10px}.request-card{padding:13px;border:1px solid #dce5ec;border-radius:10px;background:white}.request-card-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px}.request-card-heading h5{margin:0;font-size:13px;color:#172638}.request-state{padding:4px 7px;border-radius:999px;background:#fff3d6;color:#805d16;font-size:9px;font-weight:800}.request-detail{display:grid;grid-template-columns:minmax(105px,.7fr) minmax(0,1.3fr);gap:10px;padding:5px 0;border-top:1px solid #eff3f6;font-size:10px}.request-detail span{color:#768797}.request-detail strong{color:#30485a;font-weight:650;overflow-wrap:anywhere}.assignment-controls{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}.assignment-controls label{display:grid;gap:4px;color:#526779;font-size:10px;font-weight:700}.assignment-controls select{width:100%;padding:8px;border:1px solid #ccd9e1;border-radius:7px;background:white;color:#172638}.request-actions{display:flex;gap:8px;margin-top:11px}.request-actions button{margin:0}.primary-button{border:1px solid #164c69;background:#164c69;color:white;border-radius:8px;padding:9px 13px;font-weight:750;cursor:pointer}.primary-button:hover{background:#0d3b55}.request-actions .secondary-button{color:#8d3535;border-color:#e5caca}.empty-state{margin:0;padding:12px;border:1px dashed #d5dfe7;border-radius:9px;color:#768797;font-size:11px}.activity-item{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #e8eef2;font-size:10px;color:#526779}.activity-item time{flex:none;color:#768797;font-size:9px}@media(max-width:480px){.admin-summary{grid-template-columns:1fr 1fr}.admin-dashboard{padding:13px}.assignment-controls{grid-template-columns:1fr}.activity-item{display:grid;gap:4px}}

.confirmation-overlay[hidden]{display:none!important}.confirmation-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow-y:auto;padding:24px;background:rgba(7,24,39,.62);backdrop-filter:blur(3px)}.confirmation-dialog{width:min(520px,100%);max-height:calc(100vh - 48px);overflow-y:auto;padding:27px;border:1px solid #dce5ec;border-radius:16px;background:#fff;box-shadow:0 24px 70px #102a4350;outline:none}.confirmation-eyebrow{margin:0 0 7px;color:#39748f;font-size:10px;font-weight:850;letter-spacing:.14em}.confirmation-dialog h2{margin:0;color:#172638;font-size:22px;letter-spacing:-.025em}.confirmation-message{margin:10px 0 15px;color:#687a89;font-size:13px;line-height:1.55}.confirmation-details{display:grid;gap:0;margin:0 0 14px;padding:10px 13px;border:1px solid #e3eaf0;border-radius:10px;background:#f8fafc}.confirmation-details .request-detail:first-child{border-top:0}.confirmation-details .request-detail{grid-template-columns:minmax(105px,.7fr) minmax(0,1.3fr);font-size:12px}.confirmation-warning{margin:0 0 14px;padding:11px 12px;border:1px solid #efd9a7;border-radius:9px;background:#fff8e8;color:#795819;font-size:12px;line-height:1.5}.confirmation-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:19px}.confirmation-actions button{margin:0;min-height:42px}.confirmation-actions button:focus-visible,.confirmation-dialog button:focus-visible{outline:3px solid #73b8d2;outline-offset:3px}body.modal-open{overflow:hidden}@media(max-width:520px){.confirmation-overlay{align-items:center;padding:12px}.confirmation-dialog{width:100%;max-height:calc(100vh - 24px);padding:22px 18px;border-radius:16px}.confirmation-actions{display:grid;grid-template-columns:1fr 1fr}.confirmation-actions button{width:100%}}


/* Authenticated application shell */
.application-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 284px minmax(0, 1fr);
  color: #172638;
  background: #edf3f7;
}
.application-sidebar {
  position: sticky;
  top: 0;
  z-index: 80;
  display: flex;
  flex-direction: column;
  height: 100vh;
  min-height: 0;
  padding: 22px 14px 16px;
  overflow-x: hidden;
  overflow-y: auto;
  color: #eaf3f8;
  background: #0c2b43;
  border-right: 1px solid #183e58;
  scrollbar-color: #49697e #0c2b43;
}
.sidebar-brand { display: flex; align-items: center; gap: 11px; min-width: 0; padding: 0 7px; }
.sidebar-brand .brand-mark { flex: 0 0 40px; width: 40px; height: 40px; border-radius: 12px; font-size: 13px; letter-spacing: -.04em; }
.sidebar-brand-copy { min-width: 0; }
.sidebar-brand-copy strong, .sidebar-brand-copy span { display: block; }
.sidebar-brand-copy strong { color: #fff; font-size: 14px; letter-spacing: .08em; }
.sidebar-brand-copy span { margin-top: 3px; color: #a8c0cf; font-size: 10px; }
.sidebar-tagline { margin: 13px 7px 20px; color: #b6cbd7; font-size: 10px; line-height: 1.5; }
.primary-navigation { display: grid; align-content: start; gap: 5px; min-height: 0; }
.nav-group { display: grid; gap: 2px; padding: 10px 0 7px; border-top: 1px solid #29495f; }
.nav-group > summary { display: flex; align-items: center; justify-content: space-between; gap: 7px; margin: 0 7px 4px; color: #88a9bc; font-size: 9px; font-weight: 800; line-height: 1.4; letter-spacing: .08em; text-transform: uppercase; list-style: none; cursor: pointer; }
.nav-group > summary::-webkit-details-marker { display: none; }
.nav-group > summary::after { content: "⌄"; flex: none; color: #7397aa; font-size: 12px; line-height: 1; transition: transform .15s ease; }
.nav-group:not([open]) > summary::after { transform: rotate(-90deg); }
.nav-group > summary:focus-visible { outline: 2px solid #82c9e1; outline-offset: 3px; border-radius: 3px; }
.nav-group-links { display: grid; gap: 2px; }
.nav-group:not([open]) > .nav-group-links { display: none; }
.nav-link { display: flex; align-items: center; gap: 9px; width: 100%; min-height: 35px; padding: 6px 8px; border: 1px solid transparent; border-radius: 8px; color: #d5e2ea; background: transparent; font: inherit; font-size: 11px; line-height: 1.3; text-align: left; cursor: pointer; transition: color .15s ease, background .15s ease, border-color .15s ease; }
.nav-link:hover { color: #fff; background: #173d58; }
.nav-link.is-active { color: #fff; border-color: #315c76; background: #1b4c6a; box-shadow: inset 3px 0 #7fc3dd; }
.nav-icon { display: grid; flex: 0 0 25px; width: 25px; height: 25px; place-items: center; border-radius: 7px; color: #c5e6f1; background: #244b64; font-size: 8px; font-weight: 850; letter-spacing: -.02em; }
.nav-link.is-active .nav-icon { color: #103c58; background: #c6e8f3; }
.nav-label { min-width: 0; }
.application-main { display: flex; flex-direction: column; min-width: 0; min-height: 100vh; }
.application-header { position: sticky; top: 0; z-index: 30; display: flex; align-items: center; gap: 16px; min-height: 78px; padding: 12px clamp(18px, 3vw, 38px); border-bottom: 1px solid #dce5ec; background: rgba(255,255,255,.96); box-shadow: 0 4px 16px #102a4308; backdrop-filter: blur(12px); }
.icon-button { display: grid; flex: 0 0 40px; width: 40px; height: 40px; place-items: center; border: 1px solid #d7e1e8; border-radius: 10px; color: #164c69; background: #fff; font-size: 17px; cursor: pointer; }
.icon-button:hover { border-color: #9bb8c8; background: #f4f9fb; }
.header-title { min-width: 0; }
.header-title strong, .header-title span { display: block; }
.header-title strong { overflow: hidden; color: #17334a; font-size: 14px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.header-title span { margin-top: 4px; color: #718191; font-size: 10px; }
.header-account { display: flex; align-items: center; gap: 16px; margin-left: auto; }
.header-account > div { min-width: 0; text-align: right; }
.header-account strong, .header-account span { display: block; max-width: 190px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.header-account strong { color: #243e53; font-size: 11px; }
.header-account span { margin-top: 4px; color: #718191; font-size: 10px; }
.header-account .secondary-button { flex: none; margin: 0; }
.application-status { min-height: 0; margin: 0; padding: 0 clamp(18px, 3vw, 38px); color: #718191; font-size: 12px; }
.application-status:not(:empty) { padding-top: 11px; }
.application-status.success { color: #1f714c; }
.application-status.error { color: #a23838; }
.application-content { flex: 1; width: 100%; max-width: 1480px; margin: 0 auto; padding: 30px clamp(18px, 3vw, 38px) 38px; }
.application-page { min-width: 0; }
.page-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 27px; }
.page-heading .eyebrow { margin: 0 0 7px; color: #39748f; font-weight: 850; letter-spacing: .14em; }
.page-heading h1 { margin: 0; color: #17334a; font-size: clamp(27px, 3vw, 36px); line-height: 1.1; letter-spacing: -.035em; }
.welcome-copy { max-width: 440px; margin: 0; color: #687a89; font-size: 12px; line-height: 1.6; text-align: right; }
.dashboard-section { margin-top: 24px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 12px; }
.section-heading .eyebrow { margin: 0 0 5px; color: #39748f; font-weight: 850; letter-spacing: .12em; }
.section-heading h2 { margin: 0; color: #203a50; font-size: 17px; letter-spacing: -.02em; }
.data-source-note { margin: 0 0 2px; color: #8493a0; font-size: 10px; text-align: right; }
.dashboard-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.dashboard-card { display: flex; align-items: flex-start; gap: 12px; min-width: 0; min-height: 118px; padding: 16px; border: 1px solid #dce5ec; border-radius: 13px; background: #fff; box-shadow: 0 5px 18px #102a4308; }
.card-icon { display: grid; flex: 0 0 36px; width: 36px; height: 36px; place-items: center; border: 1px solid #d6eaf1; border-radius: 10px; color: #1a5a78; background: #edf8fb; font-size: 9px; font-weight: 900; }
.dashboard-card h3 { margin: 1px 0 9px; color: #526779; font-size: 10px; font-weight: 700; }
.dashboard-card strong { display: block; color: #173d59; font-size: 16px; line-height: 1.2; }
.dashboard-card p { margin: 7px 0 0; color: #8493a0; font-size: 9px; line-height: 1.4; }
.quick-access-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 11px; }
.quick-access-card { display: flex; flex-direction: column; justify-content: space-between; gap: 18px; min-width: 0; min-height: 100px; padding: 14px 15px; border: 1px solid #dce5ec; border-radius: 11px; color: #637788; background: #fff; text-align: left; cursor: pointer; transition: border-color .15s ease, transform .15s ease, box-shadow .15s ease; }
.quick-access-card:hover { transform: translateY(-2px); border-color: #9fc4d4; box-shadow: 0 9px 22px #102a4312; }
.quick-access-card > span { font-size: 9px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.quick-access-card strong { display: flex; justify-content: space-between; gap: 8px; color: #1b4661; font-size: 12px; line-height: 1.4; }
.quick-access-card strong span { color: #397c9b; font-size: 16px; }
.recent-activity-section { padding-top: 2px; }
.recent-activity-section .activity-list { overflow: hidden; border: 1px solid #dce5ec; border-radius: 11px; background: #fff; }
.recent-activity-section .activity-item { padding: 12px 14px; border-top: 1px solid #edf1f4; font-size: 11px; }
.recent-activity-section .activity-item:first-child { border-top: 0; }
.dashboard-record { margin-top: 24px; border-color: #cfe3d7; box-shadow: 0 6px 20px #174d3010; }
.dashboard-record h2 { margin: 19px 0 5px; color: #234934; font-size: 16px; }
.dashboard-record .record { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.application-footer { padding: 14px clamp(18px, 3vw, 38px) 18px; border-top: 1px solid #e1e8ed; color: #93a0aa; font-size: 9px; text-align: center; }
.module-placeholder { padding: clamp(20px, 4vw, 38px); border: 1px dashed #cedbe3; border-radius: 14px; background: #fff; }
.module-placeholder h1 { margin: 8px 0; color: #17334a; font-size: 26px; }
.module-placeholder > p:not(.eyebrow) { max-width: 620px; color: #687a89; font-size: 13px; line-height: 1.7; }
.application-shell.sidebar-collapsed { grid-template-columns: 78px minmax(0, 1fr); }
.sidebar-collapsed .application-sidebar { padding-right: 10px; padding-left: 10px; }
.sidebar-collapsed .sidebar-brand { justify-content: center; padding: 0; }
.sidebar-collapsed .sidebar-brand-copy, .sidebar-collapsed .sidebar-tagline, .sidebar-collapsed .nav-label { display: none; }
.sidebar-collapsed .nav-group > summary { justify-content: center; height: 22px; overflow: hidden; margin: 0; font-size: 0; }
.sidebar-collapsed .nav-group > summary::after { margin: 0; font-size: 11px; }
.sidebar-collapsed .nav-group { padding: 8px 0; }
.sidebar-collapsed .nav-link { justify-content: center; padding: 5px; }
.sidebar-collapsed .nav-icon { flex-basis: 31px; width: 31px; height: 31px; font-size: 8px; }
.navigation-backdrop { display: none; }
.application-shell :focus-visible { outline: 3px solid #62a8c5; outline-offset: 2px; }
@media (max-width: 1120px) {
  .application-shell { grid-template-columns: 250px minmax(0, 1fr); }
  .application-shell.sidebar-collapsed { grid-template-columns: 72px minmax(0, 1fr); }
  .dashboard-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .quick-access-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .application-shell, .application-shell.sidebar-collapsed { display: block; min-height: 100vh; }
  .application-sidebar { position: fixed; inset: 0 auto 0 0; width: min(300px, 86vw); height: 100dvh; transform: translateX(-105%); transition: transform .2s ease; box-shadow: 16px 0 38px #07182735; }
  .application-shell.mobile-nav-open .application-sidebar { transform: translateX(0); }
  .application-shell.mobile-nav-open .navigation-backdrop { position: fixed; inset: 0; z-index: 70; display: block; width: 100%; height: 100%; border: 0; background: #07182785; }
  .application-shell.sidebar-collapsed .application-sidebar { padding: 22px 14px 16px; }
  .sidebar-collapsed .sidebar-brand { justify-content: flex-start; padding: 0 7px; }
  .sidebar-collapsed .sidebar-brand-copy, .sidebar-collapsed .sidebar-tagline, .sidebar-collapsed .nav-label { display: initial; }
  .sidebar-collapsed .nav-group > summary { display: flex; justify-content: space-between; height: auto; margin: 0 7px 4px; overflow: visible; font-size: 9px; }
  .sidebar-collapsed .nav-group > summary::after { font-size: 12px; }
  .sidebar-collapsed .sidebar-tagline { display: block; }
  .sidebar-collapsed .nav-group { padding: 10px 0 7px; }
  .sidebar-collapsed .nav-link { justify-content: flex-start; padding: 6px 8px; }
  .sidebar-collapsed .nav-icon { flex-basis: 25px; width: 25px; height: 25px; }
  .application-header { gap: 10px; min-height: 68px; padding: 10px 15px; }
  .header-title strong { max-width: 44vw; font-size: 11px; }
  .header-title span { font-size: 9px; }
  .header-account { gap: 8px; }
  .header-account > div { display: none; }
  .header-account .secondary-button { padding: 8px 10px; font-size: 10px; }
  .application-content { padding: 22px 16px 30px; }
  .page-heading { align-items: flex-start; flex-direction: column; gap: 8px; margin-bottom: 22px; }
  .welcome-copy { text-align: left; }
  .section-heading { align-items: flex-start; flex-direction: column; gap: 5px; }
  .data-source-note { text-align: left; }
  .quick-access-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
  .dashboard-cards { grid-template-columns: 1fr; }
  .dashboard-card { min-height: 95px; }
  .quick-access-grid { grid-template-columns: 1fr; }
  .quick-access-card { min-height: 82px; }
  .application-footer { line-height: 1.5; }
}
@media (prefers-reduced-motion: reduce) {
  .application-shell *, .application-shell *::before, .application-shell *::after { scroll-behavior: auto; transition-duration: .01ms !important; }
}

/* Locally hosted original Palawan illustration with a contrast overlay. */
.application-sidebar {
  background-color: #0c2b43;
  background-image: linear-gradient(180deg, rgba(7, 31, 50, .94) 0%, rgba(8, 39, 61, .84) 45%, rgba(8, 38, 59, .96) 100%), url("/assets/palawan-sidebar.svg");
  background-size: cover;
  background-position: center;
  background-attachment: local;
}
.nav-group > summary { justify-content: flex-start; }
.nav-section-icon { display: grid; flex: 0 0 25px; width: 25px; height: 25px; place-items: center; border: 1px solid #84c3d2a1; border-radius: 8px; color: #d5f1f2; background: #0d526b9e; font-size: 8px; font-weight: 900; letter-spacing: -.02em; }
.nav-section-label { flex: 1; min-width: 0; }
.nav-group > summary::after { margin-left: auto; }
.sidebar-collapsed .nav-section-label { display: none; }
.sidebar-collapsed .nav-section-icon { flex-basis: 31px; width: 31px; height: 31px; font-size: 8px; }
.sidebar-collapsed .nav-group > summary::after { display: none; }
.sidebar-collapsed .nav-group > summary { margin: 0; }
.nav-link:disabled { cursor: not-allowed; opacity: .7; }
.nav-unconfigured { margin-left: auto; color: #f5d89a; font-size: 8px; font-weight: 700; white-space: nowrap; }
.navigation-load-status { margin: 0 4px 10px; padding: 8px 9px; border: 1px solid #d5b66c80; border-radius: 8px; color: #ffedc4; background: #5c4a2373; font-size: 9px; line-height: 1.5; }
.managed-nav-group { width: 100%; }
.managed-nav-group > summary { text-transform: none; font-size: 10px; letter-spacing: 0; color: #d5e2ea; }
.managed-nav-group > .nav-group-links { padding-left: 7px; }
.navigation-manager { padding: clamp(17px, 3vw, 28px); border: 1px solid #dce5ec; border-radius: 15px; background: #fff; box-shadow: 0 7px 24px #102a4309; }
.navigation-manager-heading { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.navigation-manager-heading .eyebrow { margin: 0 0 5px; color: #39748f; font-size: 9px; font-weight: 850; letter-spacing: .13em; }
.navigation-manager-heading h2 { margin: 0; color: #17334a; font-size: 19px; }
.navigation-reconciliation { margin-top: 18px; padding: 14px; border: 1px solid #dce5ec; border-radius: 11px; background: #f8fafc; }
.navigation-reconciliation-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.navigation-reconciliation-heading h3 { margin: 0; color: #17334a; font-size: 14px; }
.navigation-reconciliation-heading p { margin: 5px 0 0; color: #718191; font-size: 10px; line-height: 1.5; }
.navigation-reconciliation-heading button { flex: none; margin: 0; }
.navigation-reconciliation-details { margin-top: 9px; }
.navigation-reconciliation-details > summary { color: #31566b; font-size: 11px; font-weight: 750; cursor: pointer; }
.navigation-reconciliation-map { max-height: 300px; overflow: auto; margin-top: 8px; padding: 8px 10px; border: 1px solid #e2e9ee; border-radius: 8px; background: white; }
.navigation-reconciliation-row { margin: 0; padding: 5px 0; border-top: 1px solid #eff3f6; color: #526779; font-size: 10px; overflow-wrap: anywhere; }
.navigation-reconciliation-row:first-child { border-top: 0; }
.navigation-reconciliation-conflicts { display: grid; gap: 4px; margin: 8px 0 0; padding-left: 18px; color: #a23838; font-size: 10px; }
.navigation-item-list { display: grid; gap: 19px; margin-top: 15px; }
.navigation-parent-group > h3 { margin: 0 0 9px; color: #426075; font-size: 12px; }
.navigation-item-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.navigation-item-card { min-width: 0; padding: 14px; border: 1px solid #dce5ec; border-radius: 11px; background: #fbfdfe; }
.navigation-item-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 9px; }
.navigation-item-card h3 { min-width: 0; margin: 0; color: #173d59; font-size: 13px; overflow-wrap: anywhere; }
.navigation-item-card > p { min-height: 29px; margin: 8px 0 11px; color: #718191; font-size: 10px; line-height: 1.5; }
.navigation-enabled, .navigation-disabled { flex: none; padding: 4px 7px; border-radius: 999px; color: #176441; background: #e4f3e9; font-size: 9px; font-weight: 800; }
.navigation-disabled { color: #7b5b1d; background: #fff2d3; }
.navigation-item-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.navigation-item-actions button { margin: 0; padding: 7px 9px; font-size: 10px; }
.navigation-item-form { margin-top: 20px; padding: 17px; border: 1px solid #d7e5ec; border-radius: 12px; background: #f7fafc; }
.navigation-item-form h3 { margin: 0 0 14px; color: #17334a; font-size: 16px; }
.navigation-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.navigation-form-grid label { display: grid; align-content: start; gap: 6px; color: #526779; font-size: 10px; font-weight: 750; }
.navigation-form-grid input:not([type="checkbox"]), .navigation-form-grid select { width: 100%; min-height: 40px; padding: 9px 10px; border: 1px solid #cbd9e1; border-radius: 8px; background: #fff; color: #17334a; font: inherit; font-size: 12px; }
.navigation-enabled-field { display: flex !important; align-items: center; gap: 8px !important; min-height: 40px; }
.navigation-safety-note { margin: 14px 0 0; padding: 11px 13px; border: 1px solid #e5e9d6; border-radius: 9px; color: #65704a; background: #fbfcef; font-size: 10px; line-height: 1.6; }
.navigation-form-actions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 15px; }
.navigation-form-actions button { margin: 0; }
.navigation-embed-page iframe { display: block; width: 100%; min-height: min(72vh, 820px); border: 1px solid #d6e2e9; border-radius: 12px; background: white; }
.navigation-embed-page .page-heading { align-items: center; }
.navigation-embed-page .page-heading .secondary-button { margin: 0; text-decoration: none; }
.application-sidebar :focus-visible { outline-color: #a7ebef; }
.mobile-drawer-open { overflow: hidden; }
.quick-access-card:focus-visible, .icon-button:focus-visible, .navigation-item-actions button:focus-visible { outline: 3px solid #4d9bb7; outline-offset: 3px; }
@media (max-width: 760px) {
  .application-sidebar { background-attachment: scroll; }
  .sidebar-collapsed .nav-section-label { display: block; }
  .navigation-item-grid, .navigation-form-grid { grid-template-columns: minmax(0, 1fr); }
  .navigation-manager-heading { align-items: flex-start; }
  .navigation-reconciliation-heading { align-items: stretch; flex-direction: column; }
}
@media (max-width: 480px) {
  .navigation-manager { padding: 14px; }
  .navigation-manager-heading { flex-direction: column; }
  .navigation-manager-heading .secondary-button { width: 100%; margin: 0; }
  .navigation-reconciliation-heading button { width: 100%; }
  .navigation-item-card { padding: 12px; }
  .navigation-item-actions button { flex: 1 1 auto; }
  .navigation-form-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .navigation-embed-page .page-heading { align-items: stretch; }
}


/* Dashboard polish and diagnostics destination */
.dashboard-section { margin-top: 30px; }
.dashboard-cards { align-items: stretch; }
.dashboard-card { min-height: 126px; align-items: center; }
.dashboard-card > div { min-width: 0; }
.quick-access-card { min-height: 108px; padding: 16px; }
.quick-access-card:focus-visible { outline: 3px solid #62a8c5; outline-offset: 2px; }
.recent-activity-section .activity-item { align-items: center; min-width: 0; }
.recent-activity-section .activity-item > span { min-width: 0; flex: 1; line-height: 1.5; overflow-wrap: anywhere; }
.recent-activity-section .activity-item time { min-width: 150px; color: #768797; font-size: 10px; text-align: right; white-space: nowrap; }
.system-health-diagnostics { display: grid; gap: 14px; margin-top: 20px; }
.diagnostic-intro { padding: 16px 18px; border: 1px solid #dce5ec; border-radius: 12px; background: #fff; }
.diagnostic-intro .eyebrow { margin: 0 0 6px; color: #39748f; font-weight: 850; letter-spacing: .12em; }
.diagnostic-intro h2 { margin: 0; color: #203a50; font-size: 17px; }
.diagnostic-intro > p:last-child { margin: 7px 0 0; color: #687a89; font-size: 11px; line-height: 1.6; }
.diagnostic-record { margin-top: 0; }
@media (max-width: 760px) {
  .recent-activity-section .activity-item { align-items: flex-start; }
  .recent-activity-section .activity-item time { min-width: 125px; }
}
@media (max-width: 480px) {
  .recent-activity-section .activity-item { display: grid; grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .recent-activity-section .activity-item time { min-width: 0; text-align: left; white-space: normal; }
  .dashboard-card { min-height: 90px; }
}
