:root{--blue4: #00234d;--blue3: #043566;--accent1: #22bbf2;--tint2: #edf4fa;--tint3: #d5e8f7;--text: #0a1628;--muted: rgba(255, 255, 255, .55)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:Figtree,system-ui,sans-serif;background:#f0f4f8;color:var(--text);min-height:100vh}#root{min-height:100vh}a{color:var(--accent1);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit}.lh-app{display:flex;min-height:100vh}.lh-sidebar{width:min(304px,100%);flex-shrink:0;background:var(--blue4);color:#ffffffe0;padding:1.75rem 1.5rem 1.5rem;display:flex;flex-direction:column}@media (min-width: 901px){.lh-sidebar{min-height:100vh}}.lh-sidebar-brand{padding-bottom:.25rem}.lh-sidebar-logo-link{display:block;line-height:0;text-decoration:none;color:inherit;margin:0 0 1.125rem;flex-shrink:0;align-self:flex-start;border-radius:6px}.lh-sidebar-logo-link:hover{text-decoration:none;opacity:.88}.lh-sidebar-logo-link:focus-visible{outline:2px solid var(--accent1);outline-offset:3px}.lh-sidebar-logo{display:block;width:auto;max-width:100%;height:auto;max-height:76px;object-fit:contain;object-position:left center;margin:0;flex-shrink:0}.lh-sidebar-brand .small{font-size:10px;font-weight:700;color:var(--accent1);letter-spacing:.1em;text-transform:uppercase}.lh-sidebar-brand h1{margin:.45rem 0 0;font-size:1.25rem;font-weight:700;color:#fff;line-height:1.2}.lh-sidebar-brand .tag{font-size:12px;color:#ffffff73;margin-top:.35rem;line-height:1.35}.lh-sidebar-nav-wrap{flex:1;display:flex;flex-direction:column;min-height:0;margin-top:1.5rem;padding-top:.25rem}.lh-nav{display:flex;flex-direction:column;gap:.5rem;width:100%}.lh-nav a{display:block;padding:12px 16px;border-radius:8px;border-left:3px solid transparent;color:#ffffffe6;text-decoration:none;font-size:14px;line-height:1.35;transition:background .15s ease,border-color .15s ease}.lh-nav a:hover{background:#ffffff14;border-left-color:#22bbf273}.lh-nav a.active{background:#22bbf21f;border-left-color:var(--accent1);font-weight:600}.lh-sidebar-footer{margin-top:auto;padding-top:1rem;font-size:11px;color:#ffffff80}.lh-sidebar-footer .signed{font-size:12px;color:#ffffff80;margin-bottom:.75rem}.lh-sidebar-footer .signed b{color:#fff}.lh-main{flex:1;padding:1.5rem 2rem 3rem;overflow:auto}.lh-header{background:var(--blue4);padding:18px 24px;border-radius:8px;margin-bottom:0}.lh-header h2{color:#fff;margin:0;font-size:1.25rem}.lh-header p{color:#fff9;margin:.35rem 0 0;font-size:13px}.lh-report-builder-layout{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-top:1.5rem;align-items:start}@media (max-width: 900px){.lh-report-builder-layout{grid-template-columns:1fr}}.lh-report-recent-title{display:block;margin-bottom:.35rem}.lh-report-recent-note{margin:0 0 .75rem}.lh-report-recent-card{padding:.75rem 1rem}.lh-report-recent-download{font-size:14px}.lh-details-muted{margin-top:.75rem;font-size:13px;color:#64748b}.lh-details-muted summary{cursor:pointer;font-weight:600;color:var(--blue3);margin-bottom:.35rem}.lh-details-muted[open] summary{margin-bottom:.5rem}.lh-dialog{border:none;border-radius:12px;padding:0;max-width:min(420px,calc(100vw - 2rem));box-shadow:0 24px 60px #00000059}.lh-dialog::backdrop{background:#0f172a8c}.lh-dialog-inner{padding:1.5rem 1.5rem 1.25rem}.lh-dialog-title{margin:0 0 .75rem;font-size:1.1rem;color:var(--blue4)}.lh-dialog-message{margin:0 0 .75rem;font-size:14px;color:var(--text);line-height:1.45}.lh-dialog-warning{margin:0 0 1.25rem;font-size:13px;font-weight:600;color:#b91c1c}.lh-dialog-actions{display:flex;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}.lh-btn-dialog-cancel{font-family:inherit;padding:.55rem 1rem;border-radius:8px;border:1px solid var(--tint3);background:#fff;color:var(--text);cursor:pointer;font-size:14px;font-weight:600}.lh-btn-dialog-cancel:hover:not(:disabled){background:var(--tint2)}.lh-btn-dialog-danger{font-family:inherit;padding:.55rem 1rem;border-radius:8px;border:none;background:#b91c1c;color:#fff;cursor:pointer;font-size:14px;font-weight:600}.lh-btn-dialog-danger:hover:not(:disabled){background:#991b1b}.lh-btn-dialog-cancel:disabled,.lh-btn-dialog-danger:disabled{opacity:.6;cursor:not-allowed}.lh-report-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.lh-btn-delete-inline{background:none;border:none;padding:0;font:inherit;font-size:14px;color:#b91c1c;cursor:pointer;text-decoration:underline}.lh-btn-delete-inline:hover:not(:disabled){color:#991b1b}.lh-btn-delete-inline:disabled{opacity:.5;cursor:not-allowed}.lh-report-select{display:flex;align-items:flex-start;padding-top:3px;flex-shrink:0;margin-right:4px;cursor:pointer}.lh-report-select input{width:1.05rem;height:1.05rem;cursor:pointer;accent-color:var(--blue3)}.lh-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lh-bulk-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;margin:0 0 1rem;background:#fff;border:1px solid var(--accent1);border-radius:8px;box-shadow:0 2px 10px #22bbf21f}.lh-bulk-bar-count{font-size:14px;color:var(--text)}.lh-bulk-bar-actions{display:flex;flex-wrap:wrap;gap:.5rem}.lh-btn-bulk-secondary,.lh-btn-bulk-primary,.lh-btn-bulk-danger{font-family:inherit;font-size:13px;font-weight:600;padding:.45rem .85rem;border-radius:6px;cursor:pointer;border:1px solid transparent}.lh-btn-bulk-secondary{background:#fff;border-color:var(--tint3);color:var(--text)}.lh-btn-bulk-secondary:hover:not(:disabled){background:var(--tint2)}.lh-btn-bulk-primary{background:var(--accent1);color:#fff;border-color:var(--accent1)}.lh-btn-bulk-primary:hover:not(:disabled){background:#0898cc;border-color:#0898cc}.lh-btn-bulk-danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.lh-btn-bulk-danger:hover:not(:disabled){background:#fee2e2}.lh-btn-bulk-secondary:disabled,.lh-btn-bulk-primary:disabled,.lh-btn-bulk-danger:disabled{opacity:.55;cursor:not-allowed}.lh-card{background:var(--tint2);border:1px solid var(--tint3);border-radius:10px;padding:1.25rem;margin-bottom:1rem}.lh-card>strong:first-child{display:block;margin-bottom:.75rem}.lh-card-title{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.75rem}.lh-card-step{font:inherit;font-weight:700;color:var(--accent1)}.lh-card-title-text{font-weight:700}.lh-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 900px){.lh-grid{grid-template-columns:1fr}.lh-app{flex-direction:column}.lh-sidebar{width:100%}}.lh-btn-primary{background:var(--accent1);color:#fff;border:none;padding:.65rem 1.25rem;border-radius:8px;font-weight:600;cursor:pointer;width:100%}.lh-btn-primary:hover:not(:disabled){background:#0898cc}.lh-btn-primary:disabled{opacity:.5;cursor:not-allowed}.lh-btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff;padding:.45rem .75rem;border-radius:6px;cursor:pointer;font-size:13px}.lh-btn-ghost:hover{background:#ffffff14}.lh-input{width:100%;padding:.5rem .65rem;border:1px solid #cbd5e1;border-radius:6px;font-size:14px}.lh-label{display:block;font-size:13px;font-weight:600;margin-bottom:.35rem;color:#334155}.lh-error{background:#fef2f2;color:#b91c1c;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem}.lh-success{background:#ecfdf5;color:#047857;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem}.lh-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(160deg,var(--blue4) 0%,#0a2744 100%)}.lh-login-card{width:100%;max-width:400px;background:#fff;border-radius:12px;padding:2rem;box-shadow:0 20px 50px #00000040}.lh-login-card h2{margin:0 0 .5rem;color:var(--blue4)}.lh-login-card .sub{color:#64748b;font-size:14px;margin-bottom:1.5rem}.lh-landing{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1.25rem;background:linear-gradient(160deg,var(--blue4) 0%,#0a2744 100%)}.lh-landing-inner{width:100%;max-width:520px;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.lh-landing-logo-wrap{flex-shrink:0;line-height:0}.lh-landing-card{width:100%;background:#fff;border-radius:16px;padding:2.25rem 2rem 2rem;box-shadow:0 24px 56px #00000047;text-align:center}.lh-landing-logo{display:block;width:auto;max-width:min(300px,100vw - 2.5rem);max-height:76px;margin:0 auto;object-fit:contain;object-position:center}.lh-landing-h1{margin:0 0 .5rem;font-size:clamp(1.35rem,4vw,1.65rem);font-weight:700;color:var(--blue4);line-height:1.25}.lh-landing-h2{margin:0 0 1.75rem;font-size:1rem;font-weight:600;color:#64748b;line-height:1.4}.lh-dept-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 520px){.lh-dept-grid{grid-template-columns:1fr}}.lh-dept-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;cursor:pointer;border:2px solid var(--tint3);background:var(--tint2);color:var(--blue4);border-radius:12px;padding:1.15rem 1rem;font-size:15px;font-weight:600;line-height:1.35;text-align:center;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .12s ease}.lh-dept-btn:hover{border-color:var(--accent1);background:#fff;box-shadow:0 6px 20px #22bbf22e}.lh-dept-btn:focus-visible{outline:2px solid var(--accent1);outline-offset:3px}.lh-dept-btn:active{transform:scale(.99)}.lh-row{display:flex;gap:1rem;align-items:flex-end}.lh-report-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:10px 16px;background:#fff;border:1px solid var(--tint3);border-radius:8px;margin-bottom:.5rem}.lh-caption{font-size:12px;color:#64748b}.lh-muted{color:#64748b;font-size:14px}.lh-btn-inline-link{background:none;border:none;padding:0;margin:0;font:inherit;color:var(--accent1);cursor:pointer;text-decoration:underline}.lh-btn-inline-link:hover{color:#0898cc}.lh-btn-inline-link:disabled{opacity:.6;cursor:not-allowed}.lh-expander{border:1px solid var(--tint3);border-radius:8px;margin-bottom:.5rem;background:#fff}.lh-expander summary{padding:12px 16px;cursor:pointer;font-weight:600;list-style:none}.lh-expander summary::-webkit-details-marker{display:none}.lh-expander .inner{padding:0 16px 16px;border-top:1px solid var(--tint3)}
