:root{color:#172b3a;font-synthesis:none;text-rendering:optimizelegibility;--navy:#003f63;--navy-dark:#002f4b;--teal:#006b7d;--green:#198754;--red:#b42318;--gold:#b89659;--anam-gold:#c3a16f;--anam-green:#225346;--anam-green-dark:#132d28;--anam-burgundy:#97213b;--anam-burgundy-dark:#601c2e;--surface:#fff;--surface-soft:#eef3f5;--border:#d6e0e4;--text-muted:#607580;--shadow:0 16px 45px #002f4b1f;background:#f3f6f7;font-family:Segoe UI,Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--anam-burgundy-dark);outline-offset:2px}.skip-link{z-index:100;color:#fff;background:var(--anam-burgundy-dark);border-radius:8px;padding:.65rem .85rem;font-weight:700;text-decoration:none;position:fixed;top:.5rem;left:.5rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.eyebrow{color:var(--teal);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .35rem;font-size:.72rem;font-weight:800}.button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:.7rem 1rem;font-weight:700;transition:background .16s,border-color .16s,transform .16s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.6}.button-primary{color:#fff;background:var(--green)}.button-primary:hover:not(:disabled){background:#146c43}.button-secondary{color:var(--navy);background:#f7fafb;border-color:#abc1cb}.button-secondary:hover:not(:disabled){background:#e7f0f3}.button-ghost{color:var(--navy);background:0 0}.button-full{width:100%}.login-container{background:#fff;align-items:center;width:100%;min-height:100vh;padding:1rem;display:flex}.login-form{background:#e5ebee;border:1px dotted #1c6ea4;border-radius:5px;flex-direction:column;width:min(100%,400px);margin:0 auto;padding:80px 30px 30px;font-size:12px;display:flex;position:relative;box-shadow:0 10px 13px -7px #000}.logo-container{text-align:center;background:#fff;border-radius:5px;width:max-content;max-width:calc(100% - 40px);padding:10px;position:absolute;top:0;left:50%;transform:translate(-50%,-58%);box-shadow:0 5px 10px #000000b3}.logo-container img{width:180px;max-width:100%;height:auto;display:block}.form-group{color:#003f63;justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.form-group label{min-width:100px;font-weight:400}.form-group input{background:#fff;border:0;border-radius:4px;flex:1;min-width:0;height:28px;margin-left:10px;padding:8px}.login-submit-row{align-items:center;gap:10px;min-height:30px;display:flex}.error-message{color:red;flex:1;font-size:12px}.login-form button{color:#fff;cursor:pointer;background:#5cb85c;border:0;border-radius:4px;width:fit-content;margin-left:auto;padding:6px 10px}.login-form button:hover:not(:disabled){background:#46a046}.login-form button:disabled{cursor:wait;opacity:.65}.password-change-page{background:#f3f6f7;place-items:center;min-height:100vh;padding:1rem;display:grid}.password-change-card{border:1px solid var(--border);border-top:5px solid var(--anam-burgundy);width:min(100%,480px);box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:2rem}.password-change-logo{width:210px;max-width:100%;height:auto;margin-bottom:1.5rem;display:block}.password-change-card h1{color:var(--anam-green-dark);margin:0 0 .65rem;font-size:1.55rem}.password-change-card>p:not(.eyebrow){color:var(--text-muted);margin:0 0 1.5rem}.password-change-card .button-primary{width:100%}.admin-form{flex-direction:column;gap:.75rem;display:flex}.admin-form label,.permissions-fieldset legend{color:var(--navy);font-size:.86rem;font-weight:750}.admin-form input,.admin-form select{color:#172b3a;background:#fff;border:1px solid #b9c9d0;border-radius:8px;width:100%;min-height:44px;padding:.7rem .8rem}.admin-form input:focus,.admin-form select:focus{border-color:var(--teal)}.form-message{min-height:1.35rem;color:var(--red);font-size:.85rem}.protected-badge{color:var(--anam-burgundy-dark);text-transform:uppercase;background:#f7e8ec;border-radius:999px;padding:.25rem .45rem;font-size:.68rem;font-weight:800}.page-loader,.content-state{min-height:100vh;color:var(--navy);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.9rem;padding:2rem;display:flex}.content-state h1{margin:0;font-size:1.6rem}.content-state p{max-width:33rem;color:var(--text-muted);margin:0}.spinner{border:3px solid #c8d7dd;border-top-color:var(--teal);border-radius:50%;width:27px;height:27px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{background:#e8eef0;grid-template-columns:270px minmax(0,1fr);width:100%;height:100vh;min-height:100vh;transition:grid-template-columns .18s;display:grid;overflow:hidden}.app-shell.sidebar-is-collapsed{grid-template-columns:78px minmax(0,1fr)}.sidebar{z-index:10;color:#fff;background:linear-gradient(180deg, var(--anam-green) 0%, var(--anam-green-dark) 100%);flex-direction:column;width:100%;min-width:0;height:100vh;display:flex;position:sticky;top:0;overflow:hidden;box-shadow:7px 0 22px #132d282e}.sidebar-brand{background:#fff;border-bottom:1px solid #ffffff1f;align-items:center;min-height:86px;padding:1.15rem 1rem;display:flex;position:relative}.sidebar-brand img{width:190px;max-width:calc(100% - 30px);height:auto;transition:opacity .16s}.icon-button{cursor:pointer;border:0;border-radius:8px;flex:0 0 34px;place-items:center;width:34px;height:34px;padding:0;line-height:1;display:grid}.collapse-button{color:var(--anam-burgundy-dark);background:#c3a16f33;border:1px solid #97213b2e;font-size:1.5rem;position:absolute;right:.65rem}.collapse-button:hover{color:#fff;background:var(--anam-burgundy)}.collapse-button .collapse-icon{fill:none;stroke:currentColor;stroke-width:2.25px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px;display:block}.sidebar-user{border-bottom:1px solid #ffffff1f;align-items:center;min-height:72px;padding:.9rem 1.25rem;display:flex}.sidebar-user-details{min-width:0}.sidebar-user-details strong,.sidebar-user-details span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar-user-details span{color:#ffffffad;margin-top:.15rem;font-size:.75rem}.sidebar-nav{flex:1;padding:.85rem;overflow-y:auto}.sidebar-section-title{color:#ffffff8a;letter-spacing:.1em;text-transform:uppercase;margin:.35rem .55rem .65rem;font-size:.68rem;font-weight:800}.sidebar-link{color:#ffffffd6;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:.75rem;width:100%;min-height:46px;margin-bottom:.35rem;padding:.65rem .75rem;font-size:.88rem;font-weight:650;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.sidebar-link:hover,.sidebar-link.active{color:#fff;background:#ffffff1f}.sidebar-link.active{box-shadow:inset 3px 0 0 var(--anam-gold)}.sidebar-link svg{fill:currentColor;flex:0 0 20px;width:20px;height:20px;display:block}.sidebar-dashboard-glyph{flex:0 0 20px;place-items:center;width:20px;height:20px;font-size:1rem;font-weight:850;line-height:1;display:grid}.sidebar a:focus-visible,.sidebar button:focus-visible{box-shadow:0 0 0 2px var(--anam-gold);outline-color:#fff}.sidebar-empty{color:#ffffff8c;padding:.75rem;font-size:.8rem}.sidebar-actions{border-top:1px solid #ffffff1f;padding:.85rem}.sidebar-logout{color:#ffcbc7}.sidebar-is-collapsed .sidebar-label,.sidebar-is-collapsed .sidebar-section-title,.sidebar-is-collapsed .sidebar-brand img{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.sidebar-is-collapsed .sidebar-brand,.sidebar-is-collapsed .sidebar-link{justify-content:center}.sidebar-is-collapsed .sidebar-brand{padding-inline:0}.sidebar-is-collapsed .sidebar-user{display:none}.sidebar-is-collapsed .sidebar-nav,.sidebar-is-collapsed .sidebar-actions{padding-inline:16px}.sidebar-is-collapsed .sidebar-link{gap:0;width:46px;height:46px;min-height:46px;margin-inline:auto;padding:0}.sidebar-is-collapsed .sidebar-dashboard-glyph{background:#ffffff17;border-radius:8px;flex-basis:34px;width:34px;height:34px;font-size:.9rem;box-shadow:inset 0 0 0 1px #ffffff14}.sidebar-is-collapsed .sidebar-dashboard-glyph-long{letter-spacing:-.04em;font-size:.7rem}.sidebar-is-collapsed .sidebar-dashboard-glyph-extra-long{letter-spacing:-.06em;font-size:.56rem}.sidebar-is-collapsed .sidebar-link.active{box-shadow:inset 0 0 0 1px var(--anam-gold)}.sidebar-is-collapsed .collapse-button{right:50%;transform:translate(50%)}.app-main{min-width:0;min-height:0;overflow:hidden}.dashboard-frame-container{grid-template-rows:auto minmax(0,1fr);gap:.4rem;height:100vh;padding:.5rem;display:grid}.dashboard-titlebar{border:1px solid var(--border);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;min-height:42px;padding:.4rem .75rem;display:flex}.dashboard-titlebar h1{color:var(--navy);margin:0;font-size:1rem;line-height:1.25}.dashboard-frame-container iframe{border:1px solid var(--border);background:#fff;border-radius:10px;width:100%;height:100%}.empty-icon{width:72px;height:72px;color:var(--teal);background:#dcebed;border-radius:20px;place-items:center;font-size:2.4rem;display:grid}.admin-page{grid-template-rows:auto auto minmax(0,1fr);gap:.85rem;height:100vh;min-height:0;padding:1rem 1.5rem;display:grid;overflow:hidden}.admin-header{justify-content:space-between;align-items:flex-end;gap:1.5rem;display:flex}.admin-header h1{color:var(--navy);margin:0;font-size:clamp(1.7rem,3vw,2.2rem)}.admin-header p:last-child{color:var(--text-muted);margin:.35rem 0 0}.admin-summary{gap:.75rem;display:flex}.admin-summary span{border:1px solid var(--border);color:var(--text-muted);background:#fff;border-radius:10px;padding:.75rem 1rem;font-size:.8rem}.admin-summary strong{color:var(--navy);font-size:1.15rem}.tabs{border:1px solid var(--border);background:#fff;border-radius:10px;justify-self:start;gap:.25rem;padding:.3rem;display:inline-flex}.tabs button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:.65rem 1rem;font-weight:700}.tabs button.active{color:#fff;background:var(--navy)}.manager-layout{grid-template-columns:minmax(280px,.75fr) minmax(420px,1.25fr);gap:1rem;min-height:0;display:grid}.manager-list,.manager-form-panel{border:1px solid var(--border);background:#fff;border-radius:12px;min-width:0;min-height:0;padding:1rem;overflow:hidden;box-shadow:0 8px 24px #002f4b0f}.manager-list{flex-direction:column;display:flex}.section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.section-heading h2{color:var(--navy);margin:0;font-size:1.25rem}.count-badge{color:var(--teal);background:#e4f0f2;border-radius:999px;padding:.35rem .55rem;font-size:.72rem;font-weight:750}.record-list{flex-direction:column;flex:auto;gap:.4rem;min-height:0;margin-bottom:.85rem;display:flex;overflow-y:auto}.record-card{border:1px solid var(--border);width:100%;color:inherit;background:#fbfcfc;border-radius:9px;flex:none;align-items:center;padding:0;display:flex;overflow:hidden}.record-card:hover,.record-card.selected{background:#edf5f6;border-color:#7fa8b5}.record-card-select{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:.7rem;padding:.55rem .75rem;display:flex}.record-delete-button{width:32px;height:32px;color:var(--red);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:0 0 32px;place-items:center;margin-right:.65rem;display:grid}.record-delete-button:hover:not(:disabled){background:#fcecea;border-color:#efbbb5}.record-delete-button:disabled{cursor:not-allowed;opacity:.35}.record-delete-button svg{fill:currentColor;width:18px;height:18px}.record-avatar,.dashboard-glyph{width:34px;height:34px;color:var(--navy);background:#dce9ed;border-radius:9px;flex:0 0 34px;place-items:center;font-size:.75rem;font-weight:800;display:grid}.dashboard-glyph{color:#fff;background:var(--teal);font-size:1.15rem}.record-main{flex:1;min-width:0}.record-main strong,.record-main small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.record-main strong{color:var(--navy);font-size:.87rem}.record-main small{color:var(--text-muted);margin-top:.18rem;font-size:.7rem}.status-dot{border-radius:999px;padding:.28rem .45rem;font-size:.65rem;font-weight:750}.status-dot.active{color:#0e6b43;background:#dff4e9}.status-dot.inactive{color:#8e382f;background:#fbe6e3}.admin-form{gap:1rem}.admin-form label>input,.admin-form label>select{margin-top:.35rem}.form-grid{gap:1rem;display:grid}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.switch-row{align-items:center;gap:.6rem;min-height:44px;display:flex}.switch-row input{width:18px;height:18px;min-height:auto;accent-color:var(--teal);margin:0}.switch-row.align-end{align-self:end}.field-hint{color:var(--text-muted);margin-top:.3rem;font-size:.72rem;display:block}.permissions-fieldset{border:0;margin:0;padding:0}.permissions-fieldset legend{margin-bottom:.5rem}.permissions-legend{justify-content:space-between;align-items:center;gap:.75rem;width:100%;display:flex}.permissions-select-all{min-height:28px;color:var(--navy);cursor:pointer;background:#f7fafb;border:1px solid #abc1cb;border-radius:6px;padding:.25rem .55rem;font-size:.7rem;font-weight:700}.permissions-select-all:hover:not(:disabled){background:#e7f0f3}.permissions-select-all:disabled{cursor:not-allowed;opacity:.55}.permissions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;max-height:180px;display:grid;overflow-y:auto}.permission-option{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:.55rem;padding:.6rem;display:flex}.permission-option:has(input:checked){background:#edf5f6;border-color:#78a6b3}.permission-option input{width:17px;height:17px;min-height:auto;accent-color:var(--teal);flex:0 0 17px;margin:0}.permission-option strong,.permission-option small{display:block}.permission-option strong{color:var(--navy);font-size:.78rem}.permission-option small{color:var(--text-muted);margin-top:.1rem;font-size:.65rem}.form-actions{justify-content:flex-end;gap:.65rem;padding-top:.3rem;display:flex}.alert{border-radius:8px;margin-bottom:1rem;padding:.8rem 1rem}.alert-error{color:#8e382f;background:#fcecea;border:1px solid #efbbb5}@media (width<=980px){.app-main{overflow-y:auto}.admin-page{height:auto;min-height:100vh;overflow:visible}.manager-layout{grid-template-columns:1fr}.manager-list,.manager-form-panel{overflow:visible}.record-list{max-height:330px}}@media (width<=720px){.app-shell,.app-shell.sidebar-is-collapsed{grid-template-columns:78px minmax(0,1fr)}.app-shell:not(.sidebar-is-collapsed){grid-template-columns:min(78vw,270px) minmax(0,1fr)}.app-shell.sidebar-is-collapsed .sidebar-label,.app-shell.sidebar-is-collapsed .sidebar-section-title,.app-shell.sidebar-is-collapsed .sidebar-brand img{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.dashboard-frame-container{gap:.25rem;padding:.25rem}.admin-page{padding:1rem .65rem}.admin-header,.admin-summary{flex-direction:column;align-items:stretch}.admin-summary{grid-template-columns:repeat(2,1fr);display:grid}.tabs{display:flex}.tabs button{flex:1;padding-inline:.6rem}.two-columns,.permissions-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
