:root{--navy:#092a3d;--blue:#087fb8;--bg:#f3f7fa;--line:#dce6ec;--text:#173141;--muted:#6a7d89;--danger:#b42318}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}a{color:var(--blue);text-decoration:none}.admin-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:var(--navy);padding:24px 16px;color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.admin-brand{display:flex;align-items:center;gap:12px;color:#fff;font-weight:800;padding:8px 8px 24px}.admin-brand b,.login-brand{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#12a7df;color:#fff}.sidebar nav{display:grid;gap:5px}.sidebar nav a,.side-bottom a{color:#cce2ec;padding:11px 12px;border-radius:10px}.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff14;color:#fff}.side-bottom{margin-top:auto;display:grid}.admin-main{padding:28px;min-width:0}.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.admin-top h1{margin:0;font-size:28px}.admin-top p{margin:4px 0;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat,.panel{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 30px #1731410a}.stat{padding:22px}.stat strong{display:block;font-size:32px}.stat span{color:var(--muted)}.panel{padding:22px;margin-bottom:20px;overflow:auto}.panel h2{margin-top:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:20px}.editor label{display:grid;gap:7px;font-weight:600;font-size:14px;margin-bottom:14px}.editor input,.editor textarea,.editor select,.uploadbar input{width:100%;padding:11px 12px;border:1px solid #cbd8df;border-radius:10px;font:inherit;background:#fff}.editor textarea{resize:vertical}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;justify-content:start}.check input{width:auto}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.btn{display:inline-block;border:0;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer;background:#e8f1f5;color:var(--text)}.btn.primary{background:var(--blue);color:#fff}.btn.danger{background:#fff0ef;color:var(--danger);margin-top:10px}.text-danger{border:0;background:none;color:var(--danger);cursor:pointer;padding:0}.alert{padding:13px 16px;border-radius:10px;margin-bottom:18px}.alert.success{background:#e7f8ee}.alert.danger{background:#ffebea;color:#8b1a11}.badge{font-size:12px;padding:4px 8px;border-radius:999px;background:#edf4f7}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);font-size:14px}.rowcard{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.rowcard small{display:block;color:var(--muted);margin-top:3px}.inline{display:inline;margin-left:10px}.uploadbar{display:grid;grid-template-columns:1fr 1fr 100px auto;gap:10px;align-items:end;margin-bottom:18px}.admin-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.admin-gallery figure{margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;padding-bottom:10px}.admin-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}.admin-gallery figcaption,.admin-gallery form{padding:6px 10px}.qa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.qa{border:1px solid var(--line);border-radius:12px;padding:16px}.qa span{font-size:12px;color:var(--blue);font-weight:700}.qa h3{font-size:16px}.qa p,.qa small,.muted{color:var(--muted)}.wide{max-width:900px}.login-body{display:grid;place-items:center;min-height:100vh;background:linear-gradient(135deg,#07324b,#0c91c9)}.login-card{background:#fff;width:min(420px,92vw);padding:34px;border-radius:22px;box-shadow:0 30px 80px #001c2b55}.login-card h1{margin-bottom:4px}.login-card p{color:var(--muted)}.login-card label{display:grid;gap:7px;margin:16px 0;font-weight:600}.login-card input{padding:12px;border:1px solid #ccd9df;border-radius:10px}.login-card .btn{width:100%}.login-card small{display:block;margin-top:16px;color:var(--muted)}@media(max-width:1000px){.admin-shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.sidebar nav{grid-template-columns:repeat(2,1fr)}.side-bottom{grid-template-columns:1fr 1fr}.cards{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.qa-grid,.admin-gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.admin-main{padding:16px}.cards{grid-template-columns:1fr 1fr}.grid2,.uploadbar,.qa-grid,.admin-gallery{grid-template-columns:1fr}.sidebar nav{grid-template-columns:1fr 1fr}}

/* v3 access control and document-management additions */
.doc-admin-card,.user-card,.role-card{border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:14px;background:#fff}
.doc-admin-head,.user-card-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}
.doc-admin-card label{display:grid;gap:6px;font-size:13px;font-weight:700;margin:10px 0}
.doc-admin-card input,.doc-admin-card select{width:100%;padding:10px;border:1px solid #cbd8df;border-radius:9px;font:inherit}
.doc-delete{margin:-6px 0 18px 16px}
.user-card small{display:block;color:var(--muted);margin-top:4px}
.role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.role-card h3{margin-top:0}
.permission-check{display:flex;gap:9px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}
.permission-check input{width:auto}
@media(max-width:800px){.role-grid{grid-template-columns:1fr}.doc-admin-head,.user-card-head{align-items:flex-start;flex-direction:column}}

/* v4 homepage and payroll admin */
details.user-card summary{cursor:pointer;list-style:none;padding:4px 0}details.user-card summary::-webkit-details-marker{display:none}details.user-card[open] summary{padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:14px}.panel form[style*="display:flex"] input[type=month]{padding:10px;border:1px solid #cbd8df;border-radius:9px}.panel img{max-width:100%}@media(max-width:700px){.panel-head{align-items:flex-start;flex-direction:column}.panel form[style*="display:flex"]{flex-wrap:wrap}}

/* v5 professional dashboard, scalable staff cards and payroll */
.eyebrow{display:block;font-size:11px;font-weight:900;letter-spacing:.15em;color:var(--blue);margin-bottom:6px}.dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(135deg,#092a3d,#0c6f99);color:#fff;border-radius:22px;padding:28px 30px;margin-bottom:18px;box-shadow:0 18px 45px #092a3d22}.dashboard-hero h2{font-size:30px;margin:5px 0 7px}.dashboard-hero p{margin:0;color:#d7edf6}.dashboard-hero .eyebrow{color:#7edbff}.hero-date{display:grid;place-items:center;width:110px;height:82px;border-radius:18px;background:#ffffff14;border:1px solid #ffffff24}.hero-date strong{font-size:18px}.hero-date span{font-size:13px;color:#cce5ef}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric-card{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;min-height:116px;box-shadow:0 10px 28px #1731410b}.metric-card.accent{background:linear-gradient(145deg,#fff,#ecf9ff);border-color:#bee5f5}.metric-icon{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:14px;background:#eaf6fb;color:#087fb8;font-size:20px;font-weight:900}.metric-card small{display:block;color:var(--muted);font-weight:700}.metric-card strong{display:block;font-size:24px;line-height:1.15;margin:6px 0 3px}.metric-card em{font-size:12px;color:#78909c;font-style:normal}.dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.dashboard-grid-wide{grid-template-columns:1.45fr .55fr}.dashboard-panel{overflow:hidden}.dashboard-panel .panel-head h2{margin:2px 0 0}.bar-chart{display:grid;gap:16px;margin-top:22px}.bar-label{display:flex;justify-content:space-between;font-size:13px;margin-bottom:7px}.bar-track{height:10px;background:#edf3f6;border-radius:999px;overflow:hidden}.bar-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0aa4df,#087fb8)}.donut-wrap{display:flex;align-items:center;justify-content:center;gap:28px;min-height:240px}.donut{--published:70;width:148px;height:148px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#0aa4df calc(var(--published)*1%),#e7eff3 0);position:relative}.donut:before{content:"";position:absolute;inset:18px;background:#fff;border-radius:50%}.donut div{position:relative;z-index:1;text-align:center}.donut strong{display:block;font-size:30px}.donut span{font-size:11px;color:var(--muted)}.legend p{margin:11px 0;font-size:13px;color:var(--muted)}.legend i{display:inline-block;width:9px;height:9px;border-radius:50%;background:#0aa4df;margin-right:8px}.legend p:nth-child(2) i{background:#d9e4e9}.legend p:nth-child(3) i{background:#38a169}.legend p:nth-child(4) i{background:#805ad5}.legend b{color:var(--text)}.column-chart{height:280px;display:flex;align-items:flex-end;gap:14px;padding:24px 6px 0;overflow-x:auto}.column-item{min-width:74px;height:100%;display:grid;grid-template-rows:28px 1fr 20px 16px;align-items:end;text-align:center}.column-item>span{font-size:10px;color:var(--muted);white-space:nowrap}.column-track{height:100%;background:#eef4f7;border-radius:10px 10px 3px 3px;display:flex;align-items:flex-end;overflow:hidden}.column-track i{display:block;width:100%;min-height:4px;background:linear-gradient(180deg,#10a9df,#087fb8);border-radius:10px 10px 3px 3px}.column-item b{font-size:11px}.column-item small{font-size:10px;color:var(--muted)}.activity-row{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.activity-row small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.activity-row strong{font-size:12px}.avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e7f5fb;color:#087fb8;font-weight:900;flex:0 0 38px}.profile-summary{display:flex;align-items:center;gap:11px}.profile-summary small{display:block;color:var(--muted);margin-top:3px}.staff-search{width:min(330px,100%);padding:10px 12px;border:1px solid #cad9e0;border-radius:10px;font:inherit;background:#fff}.user-card[hidden]{display:none!important}.user-card>summary{display:flex!important;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;padding:2px}.user-card>summary::-webkit-details-marker{display:none}.user-card>summary .chevron{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#edf4f7;font-weight:900;transition:.2s}.user-card[open]>summary .chevron{transform:rotate(180deg)}.profile-body{border-top:1px solid var(--line);margin-top:14px;padding-top:18px}.account-card,.payroll-card{transition:border-color .2s,box-shadow .2s}.account-card[open],.payroll-card[open]{border-color:#b7ddea;box-shadow:0 12px 30px #087fb80d}.protected-card{background:#f9fbfc}.summary-pay{text-align:right;margin-left:auto}.summary-pay b,.summary-pay small{display:block}.summary-pay small{color:var(--muted);font-size:11px;margin-top:2px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.profile-body h3{margin:20px 0 12px;font-size:15px}.profile-body h3:first-child{margin-top:0}.hint{font-size:11px;color:var(--muted);font-weight:500;margin-left:6px}.money-input{display:flex;align-items:center;border:1px solid #cbd8df;border-radius:10px;overflow:hidden;background:#fff}.money-input span{padding:0 0 0 12px;color:#607d8b}.money-input input{border:0!important;border-radius:0!important;padding-left:7px!important}.generate-all,.single-generate{display:flex;align-items:end;gap:9px}.generate-all label{display:grid;gap:6px;font-size:12px;font-weight:700}.generate-all input,.single-generate input{padding:10px;border:1px solid #cbd8df;border-radius:9px;font:inherit}.single-generate{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}.payroll-split{grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr)}.payslip-list{max-height:790px}.mini-link{padding:7px 10px;background:#edf7fb;border-radius:8px;font-size:12px;font-weight:800}.settings-grid{display:grid;grid-template-columns:minmax(0,760px) minmax(260px,360px);gap:18px}.settings-tip{align-self:start;position:sticky;top:28px}.logo-preview{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:12px;margin:4px 0 16px}.logo-preview img{width:120px;height:60px;object-fit:contain;background:#f7fafb;border-radius:8px}.logo-preview span{font-size:12px;color:var(--muted)}.editor hr{border:0;border-top:1px solid var(--line);margin:26px 0}.users-layout{grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr)}.create-account{align-self:start;position:sticky;top:28px}
@media(max-width:1200px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.dashboard-grid-wide,.payroll-split,.settings-grid,.users-layout{grid-template-columns:1fr}.settings-tip,.create-account{position:static}.grid3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.dashboard-hero{padding:22px;align-items:flex-start}.hero-date{display:none}.dashboard-hero h2{font-size:24px}.metric-grid{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:1fr}.donut-wrap{flex-direction:column}.grid3{grid-template-columns:1fr}.generate-all,.single-generate{flex-wrap:wrap}.summary-pay{display:none}.staff-search{width:100%}.panel-head:has(.staff-search){align-items:stretch}.admin-top h1{font-size:23px}}

/* v6 collapsible navigation + homepage/gallery/branch admin refinements */
.admin-shell{grid-template-columns:260px minmax(0,1fr);transition:grid-template-columns .22s ease}.sidebar{padding:16px 12px;overflow:hidden;transition:.22s}.sidebar-brand-row{display:flex;align-items:center;gap:6px}.admin-brand{flex:1;min-width:0;padding:6px 6px 18px}.admin-brand span{white-space:nowrap}.sidebar-toggle{width:34px;height:34px;border:1px solid #ffffff20;border-radius:9px;background:#ffffff10;color:#fff;font-size:23px;cursor:pointer;margin-bottom:12px}.sidebar nav a,.side-bottom a{display:flex;align-items:center;gap:12px;min-height:44px;white-space:nowrap}.sidebar nav a i,.side-bottom a i{font-style:normal;width:24px;min-width:24px;text-align:center;font-size:16px}.sidebar nav a span,.side-bottom a span,.admin-brand span{transition:opacity .15s}.admin-shell.sidebar-collapsed{grid-template-columns:78px minmax(0,1fr)}.sidebar-collapsed .sidebar{padding-left:10px;padding-right:10px}.sidebar-collapsed .admin-brand span,.sidebar-collapsed .sidebar nav a span,.sidebar-collapsed .side-bottom a span{opacity:0;position:absolute;pointer-events:none}.sidebar-collapsed .admin-brand{padding-left:6px}.sidebar-collapsed .admin-brand b{width:42px;min-width:42px}.sidebar-collapsed .sidebar-toggle{position:absolute;left:46px;top:20px;width:26px;height:26px;font-size:18px;transform:rotate(180deg)}.sidebar-collapsed .sidebar nav a,.sidebar-collapsed .side-bottom a{justify-content:center;padding-left:8px;padding-right:8px}.sidebar-collapsed .sidebar nav a i,.sidebar-collapsed .side-bottom a i{width:28px;min-width:28px}.admin-main{transition:padding .2s}.hero-date{width:auto;min-width:220px;height:auto;min-height:64px;padding:14px 18px;text-align:center}.hero-date strong{font-size:15px;line-height:1.35}.metric-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.metric-card{min-height:108px}.metric-card strong{font-size:22px}
code{font-family:Consolas,monospace;font-size:11px;color:#55707c;background:#f2f6f8;padding:2px 5px;border-radius:5px}.gallery-admin-layout{grid-template-columns:minmax(0,1.55fr) minmax(320px,.45fr)}.album-admin-list{display:grid;gap:10px}.album-admin-row{display:grid;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px;border:1px solid var(--line);border-radius:14px}.album-admin-row img,.album-admin-empty{width:82px;height:62px;border-radius:9px;object-fit:cover}.album-admin-empty{display:grid;place-items:center;background:#e9f5fa;color:#0780b6;font-weight:900}.album-admin-copy small,.album-admin-copy code{display:block;margin-top:5px}.album-admin-actions{display:flex;align-items:center;gap:7px}.bulk-upload{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:12px;align-items:end;margin:18px 0 22px}.bulk-upload label{display:grid;gap:6px;font-size:12px;font-weight:700}.bulk-upload input{width:100%;padding:10px;border:1px solid #cbd8df;border-radius:9px;background:#fff}.admin-gallery figcaption small{display:block;color:var(--muted);font-size:10px;word-break:break-all;margin-top:4px}.homepage-admin-grid,.future-admin{grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr)}.slide-admin-card,.program-admin-card{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.slide-admin-card img,.program-admin-card img{width:130px;height:78px;border-radius:10px;object-fit:cover;background:#eef4f7}.slide-admin-card small,.program-admin-card small{display:block;color:var(--muted);margin-top:4px}.slide-admin-card p,.program-admin-card p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.story-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.story-admin-grid>div{padding:18px;border:1px solid var(--line);border-radius:14px}.admin-preview{width:100%;max-height:190px;object-fit:cover;border-radius:10px;margin:0 0 14px}.homepage-copy{max-width:980px}.branch-card>summary,.enquiry-card>summary{display:flex!important;align-items:center;justify-content:space-between;gap:15px}.branch-card>summary small,.enquiry-card>summary small{display:block;color:var(--muted);margin-top:4px}.status-form{display:flex;gap:10px;align-items:center;margin-top:16px}.status-form select{padding:9px 11px;border:1px solid #cbd8df;border-radius:9px}.badge.new{background:#fff4cf;color:#8a6500}.badge.contacted{background:#e7f4ff;color:#116a9b}.badge.closed{background:#e8f7ed;color:#246b3e}.homepage-intro{background:linear-gradient(135deg,#fff,#edf9ff)}
@media(max-width:1350px){.metric-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1100px){.gallery-admin-layout,.homepage-admin-grid,.future-admin{grid-template-columns:1fr}.story-admin-grid{grid-template-columns:1fr}.bulk-upload{grid-template-columns:1fr 140px}.bulk-upload .btn{grid-column:1/-1}.admin-shell{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:1000px){.admin-shell,.admin-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.sidebar-brand-row{max-width:100%}.sidebar-toggle{display:none}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-collapsed .admin-brand span,.sidebar-collapsed .sidebar nav a span,.sidebar-collapsed .side-bottom a span{opacity:1;position:static;pointer-events:auto}.sidebar-collapsed .sidebar nav a,.sidebar-collapsed .side-bottom a{justify-content:flex-start}}
@media(max-width:700px){.metric-grid{grid-template-columns:1fr}.album-admin-row,.slide-admin-card,.program-admin-card{grid-template-columns:70px minmax(0,1fr)}.album-admin-actions,.slide-admin-card form,.program-admin-card form{grid-column:1/-1}.album-admin-row img,.album-admin-empty{width:70px;height:54px}.bulk-upload{grid-template-columns:1fr}.story-admin-grid{gap:12px}.sidebar nav{grid-template-columns:1fr 1fr}.hero-date{display:none}}

/* v7 admin shell cleanup + account menu */
.admin-shell{grid-template-columns:248px minmax(0,1fr)}
.sidebar{overflow:visible;padding:18px 14px}
.sidebar-brand-row{position:relative;display:flex;align-items:center;gap:8px;min-height:54px;margin-bottom:10px}
.admin-brand{padding:4px 4px;min-width:0}
.admin-brand b{flex:0 0 42px}
.sidebar-toggle{flex:0 0 32px;width:32px;height:32px;margin:0;border-radius:10px;display:grid;place-items:center;line-height:1}
.admin-shell.sidebar-collapsed{grid-template-columns:86px minmax(0,1fr)}
.sidebar-collapsed .sidebar{padding:18px 12px}
.sidebar-collapsed .sidebar-brand-row{justify-content:center;min-height:92px;flex-direction:column;gap:8px}
.sidebar-collapsed .admin-brand{padding:0;justify-content:center;flex:0 0 auto}
.sidebar-collapsed .admin-brand span{display:none}
.sidebar-collapsed .sidebar-toggle{position:static;transform:rotate(180deg);width:30px;height:30px;margin:0}
.sidebar-collapsed .sidebar nav a,.sidebar-collapsed .side-bottom a{justify-content:center;padding:10px 8px}
.sidebar-collapsed .sidebar nav a span,.sidebar-collapsed .side-bottom a span{display:none}
.admin-main{padding:26px 30px;min-width:0;overflow:hidden}
.admin-top{min-height:68px;margin-bottom:18px;gap:20px}
.admin-title{min-width:0}
.admin-title h1{line-height:1.15}
.account-menu{position:relative;margin-left:auto;flex:0 0 auto;z-index:70}
.account-trigger{display:flex;align-items:center;gap:10px;min-width:210px;padding:8px 10px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--text);cursor:pointer;box-shadow:0 8px 24px #1731410a;text-align:left}
.account-trigger:hover,.account-menu.open .account-trigger{border-color:#b9dce9;box-shadow:0 10px 28px #0a5c7d17}
.account-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#10a9df,#087fb8);color:#fff;font-weight:900}
.account-copy{display:grid;min-width:0;line-height:1.2;flex:1}
.account-copy b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-copy small{font-size:11px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-caret{font-size:16px;color:#6c8390;transition:transform .18s}
.account-menu.open .account-caret{transform:rotate(180deg)}
.account-dropdown{position:absolute;right:0;top:calc(100% + 8px);width:224px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 60px #17314124;padding:8px;z-index:80}
.account-dropdown[hidden]{display:none!important}
.account-dropdown a{display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:9px;color:var(--text);font-size:13px;font-weight:700}
.account-dropdown a:hover{background:#eef7fb;color:var(--blue)}
.account-dropdown i{font-style:normal;width:20px;text-align:center}
.account-dropdown .logout-link{color:var(--danger)}
.account-separator{height:1px;background:var(--line);margin:6px 4px}
.side-bottom{margin-top:auto;padding-top:14px}

@media(max-width:1000px){
  .admin-shell,.admin-shell.sidebar-collapsed{grid-template-columns:1fr}
  .sidebar{position:relative;height:auto;overflow:visible;padding:14px}
  .sidebar-brand-row,.sidebar-collapsed .sidebar-brand-row{min-height:50px;flex-direction:row;justify-content:flex-start;margin:0}
  .sidebar-toggle,.sidebar-collapsed .sidebar-toggle{display:none}
  .sidebar-collapsed .admin-brand span,.sidebar-collapsed .sidebar nav a span,.sidebar-collapsed .side-bottom a span{display:inline;opacity:1;position:static;pointer-events:auto}
  .sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}
  .side-bottom{grid-template-columns:1fr;margin-top:10px}
  .admin-main{padding:20px}
}
@media(max-width:700px){
  .admin-top{align-items:flex-start}
  .account-copy{display:none}
  .account-trigger{min-width:0;padding:7px}
  .account-caret{display:none}
  .account-dropdown{right:0;width:210px}
  .sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* v8 attendance/eSSL */
.attendance-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.attendance-toolbar label{display:grid;gap:6px;font-size:12px;font-weight:800}.attendance-toolbar input,.attendance-toolbar select{padding:10px 11px;border:1px solid #cbd8df;border-radius:9px;background:#fff;font:inherit}.attendance-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:16px 0 20px}.attendance-kpi{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px}.attendance-kpi small{display:block;color:var(--muted);font-weight:700}.attendance-kpi strong{display:block;font-size:28px;margin-top:7px}.attendance-kpi.present strong{color:#208251}.attendance-kpi.absent strong{color:#b42318}.attendance-kpi.unrecorded strong{color:#b7791f}.attendance-config{display:grid;grid-template-columns:1fr 1fr;gap:18px}.attendance-config .panel{overflow:visible}.attendance-table td,.attendance-table th{white-space:nowrap}.status-pill{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;text-transform:capitalize}.status-pill.present{background:#e6f7ed;color:#20754a}.status-pill.absent{background:#ffebe9;color:#9f2118}.status-pill.half_day{background:#fff5d8;color:#8b6500}.status-pill.leave{background:#eaf2ff;color:#315f9e}.status-pill.weekoff{background:#eef1f3;color:#61727b}.status-pill.unrecorded{background:#f4f4f5;color:#70747a}.mini-status-form{display:flex;align-items:center;gap:7px}.mini-status-form select{padding:7px 8px;border:1px solid #cbd8df;border-radius:8px;background:#fff}.attendance-note{padding:12px 14px;border-radius:11px;background:#fff7e8;color:#745314;font-size:13px;line-height:1.55}.smtp-grid{display:grid;grid-template-columns:1fr 120px 140px;gap:10px}.attendance-chart{display:flex;align-items:center;gap:25px}.attendance-donut{--p:0;width:150px;height:150px;border-radius:50%;background:conic-gradient(#1ca56d calc(var(--p)*1%),#f05b55 0);display:grid;place-items:center;position:relative}.attendance-donut:before{content:"";position:absolute;inset:20px;background:#fff;border-radius:50%}.attendance-donut>div{position:relative;text-align:center}.attendance-donut strong{display:block;font-size:30px}.attendance-donut small{color:var(--muted)}
@media(max-width:1000px){.attendance-config{grid-template-columns:1fr}.attendance-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.attendance-summary{grid-template-columns:1fr}.smtp-grid{grid-template-columns:1fr}.attendance-chart{align-items:flex-start;flex-direction:column}}


/* v9 admin navigation + attendance diagnostics */
.sidebar-toggle{position:relative!important;transform:none!important;font-size:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;background:#ffffff12!important;border-color:#ffffff2e!important}
.sidebar-toggle span{display:block;width:15px;height:2px;border-radius:2px;background:#fff;transition:transform .18s ease,opacity .18s ease}
.sidebar-collapsed .sidebar-toggle{position:static!important;transform:none!important}
.sidebar-collapsed .sidebar-brand-row{min-height:100px}
.sidebar nav a,.side-bottom a{color:#d8eaf2!important}.sidebar nav a i,.side-bottom a i{color:#fff!important;opacity:.92}.sidebar nav a:hover,.sidebar nav a.active,.side-bottom a:hover{color:#fff!important;background:#ffffff18!important}.side-bottom{padding-top:10px;border-top:1px solid #ffffff14}
.btn:disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.2)}
.attendance-setup-warning{display:flex;gap:10px;align-items:flex-start;margin:14px 0 0;padding:13px 15px;border:1px solid #f2d493;border-radius:12px;background:#fff8e8;color:#76520b}.attendance-setup-warning b{white-space:nowrap}.attendance-setup-warning span{line-height:1.45}
.integration-health{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 16px}.health-item{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:11px 12px;background:#f8fbfc}.health-item>span{width:10px;height:10px;border-radius:50%;flex:0 0 10px}.health-item.ok>span{background:#21a366;box-shadow:0 0 0 4px #21a36618}.health-item.warn>span{background:#d99a18;box-shadow:0 0 0 4px #d99a1818}.health-item b,.health-item small{display:block}.health-item small{margin-top:2px;color:var(--muted);line-height:1.35}
.sync-history{display:grid;gap:9px}.sync-run{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.sync-run summary{list-style:none;cursor:pointer;padding:12px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px}.sync-run summary::-webkit-details-marker{display:none}.sync-run summary small{display:block;color:var(--muted);margin-top:3px}.sync-run summary>span{font-size:12px;font-weight:800;padding:5px 8px;border-radius:999px;background:#eef3f5}.sync-run.failed{border-color:#f3c3bf}.sync-run.failed summary>span,.sync-run.partial summary>span{background:#ffedeb;color:#a22920}.sync-run.success summary>span{background:#e7f7ed;color:#237449}.sync-run pre{margin:0;padding:12px 13px;border-top:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;background:#fff8f7;color:#8e2720;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.sync-run p{margin:0;padding:12px 13px;border-top:1px solid var(--line)}
@media(max-width:700px){.integration-health{grid-template-columns:1fr}.attendance-setup-warning{display:block}.attendance-setup-warning b{display:block;margin-bottom:4px}}

/* v10 grouped sidebar + school operations */
.sidebar{width:auto;overflow:hidden}.sidebar-brand-row{flex:0 0 auto}.admin-brand span{font-size:12px;letter-spacing:.08em;white-space:nowrap}.grouped-nav{display:block!important;overflow-y:auto;overflow-x:hidden;padding-right:3px;margin-right:-3px;scrollbar-width:thin}.grouped-nav::-webkit-scrollbar{width:5px}.grouped-nav::-webkit-scrollbar-thumb{background:#ffffff25;border-radius:99px}.nav-direct{display:flex!important;align-items:center;gap:10px;margin-bottom:4px}.nav-direct i,.nav-group-toggle i,.side-bottom i{font-style:normal;width:22px;text-align:center;flex:0 0 22px}.nav-group{margin:4px 0}.nav-group-toggle{width:100%;border:0;background:transparent;color:#d8eaf2;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;font:inherit;font-weight:700;cursor:pointer;text-align:left}.nav-group-toggle:hover,.nav-group.open>.nav-group-toggle{background:#ffffff12;color:#fff}.nav-group-toggle span{flex:1;white-space:nowrap}.nav-group-toggle b{font-size:13px;font-weight:600;transition:transform .18s}.nav-group.open>.nav-group-toggle b{transform:rotate(180deg)}.nav-submenu{display:none;padding:2px 0 6px 34px}.nav-group.open>.nav-submenu{display:grid;gap:1px}.nav-submenu a{padding:6px 10px!important;border-radius:7px!important;font-size:12px!important;line-height:1.25;color:#cce2ec!important}.nav-submenu a.active{background:#12a7df22!important;color:#fff!important;border-left:2px solid #34c4ff}.side-bottom{gap:2px}.side-bottom a{display:flex;align-items:center;gap:10px}.sidebar-collapsed .nav-group-toggle{justify-content:center;padding:10px 8px}.sidebar-collapsed .nav-group-toggle span,.sidebar-collapsed .nav-group-toggle b,.sidebar-collapsed .nav-submenu{display:none!important}.sidebar-collapsed .grouped-nav{overflow:visible}.sidebar-collapsed .nav-group{position:relative}.sidebar-collapsed .nav-group:hover .nav-submenu{display:grid!important;position:absolute;left:58px;top:0;width:190px;padding:8px;background:#0c354b;border:1px solid #ffffff18;border-radius:10px;box-shadow:0 14px 30px #001c2b44;z-index:100}.sidebar-collapsed .nav-group:hover .nav-submenu a{display:block!important;color:#d8eaf2!important}.sidebar-collapsed .nav-direct span{display:none}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.profile-body{padding-top:4px}.quick-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-action-grid a{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid var(--line);border-radius:13px;background:#f9fcfd;font-weight:800;color:var(--text)}.quick-action-grid a:hover{border-color:#9ed9ee;background:#eef9fd;color:var(--blue)}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.report-card{display:grid;gap:7px;padding:18px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--text)}.report-card:hover{border-color:#a9d8e9;box-shadow:0 8px 24px #1731410a}.report-card b{font-size:17px}.report-card span{color:var(--muted);font-size:13px}.report-card em{font-style:normal;color:var(--blue);font-weight:800;font-size:12px}.panel select[multiple]{min-height:120px}.panel table input,.panel table select{padding:8px;border:1px solid #cbd8df;border-radius:8px;background:#fff;max-width:220px}.status-pill.holiday{background:#efeafd;color:#644da2}.admin-shell.sidebar-collapsed{grid-template-columns:78px minmax(0,1fr)}
@media(max-width:1000px){.grouped-nav{overflow:visible}.nav-group.open>.nav-submenu{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:18px}.sidebar-collapsed .nav-group:hover .nav-submenu{position:static;width:auto;padding-left:18px;background:transparent;border:0;box-shadow:none}.sidebar-collapsed .nav-group-toggle span,.sidebar-collapsed .nav-group-toggle b,.sidebar-collapsed .nav-direct span{display:inline!important}.sidebar-collapsed .nav-group-toggle{justify-content:flex-start}.grid3{grid-template-columns:1fr 1fr}.report-grid{grid-template-columns:1fr}}
@media(max-width:650px){.grid3,.quick-action-grid{grid-template-columns:1fr}.nav-group.open>.nav-submenu{grid-template-columns:1fr}}

/* v11 admissions + fees */
.fee-table{width:100%;border-collapse:separate;border-spacing:0}.fee-table th,.fee-table td{padding:10px;border-bottom:1px solid var(--line);vertical-align:middle}.fee-table input[type=number]{width:120px}.fee-table input[type=checkbox]{width:18px;height:18px}.compact-editor{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.bulk-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:16px 0}.check-card{display:flex!important;align-items:flex-start!important;gap:10px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#fff}.check-card input{margin-top:3px}.check-card b,.check-card small{display:block}.check-card small{color:var(--muted);margin-top:3px}.btn.danger{background:#b42318;color:#fff}.panel hr{border:0;border-top:1px solid var(--line);margin:22px 0}.panel tfoot th{border-top:2px solid #b7c8d0;background:#f5f9fb}.list-row small{display:block;color:var(--muted);margin-top:3px}
@media(max-width:900px){.bulk-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fee-table{display:block;overflow-x:auto;white-space:nowrap}}
@media(max-width:600px){.bulk-check-grid{grid-template-columns:1fr}}
/* v12 simplified student / fee management */
.toolbar-row,.bulk-bar,.filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.filters{margin:14px 0}.filters select,.filters input,.bulk-bar select{min-width:150px}.bulk-bar{justify-content:flex-end;background:#f4f8fb;border:1px solid #dce8ef;border-radius:12px;padding:10px 12px;margin:12px 0}.compact-card{background:#f8fbfd;border:1px solid #dce8ef;border-radius:16px;padding:18px}.class-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.student-fee-list{display:grid;gap:10px;margin-top:18px}.student-fee-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:14px 16px;border:1px solid #dce8ef;border-radius:14px;text-decoration:none;color:inherit;background:#fff}.student-fee-row:hover,.student-fee-row.active{border-color:#0c8dc5;box-shadow:0 8px 25px #1741}.student-fee-row small{display:block;color:#6b8190;margin-top:4px}.fee-amount{text-align:right}.fee-amount strong{display:block;margin-top:2px}.fee-pay-line{display:grid!important;grid-template-columns:1fr 130px;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #edf2f5}.success-note{background:#e9fff1;border:1px solid #bfe7ca;border-radius:10px;padding:12px}.table-wrap{overflow:auto}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px}.check input{width:auto!important}

/* v14 academic-year/dashboard refinements */
.hero-context{display:flex;align-items:stretch;gap:10px}.hero-year,.hero-date{display:flex;flex-direction:column;justify-content:center;min-width:170px;padding:12px 16px;border-radius:16px;background:#ffffff14;border:1px solid #ffffff24;text-align:left}.hero-year small,.hero-date small{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#bfe9f8;margin-bottom:4px}.hero-year strong,.hero-date strong{font-size:16px;line-height:1.25;color:#fff}.class-summary-card{position:relative;display:grid;gap:12px;min-height:150px;background:#fff}.class-summary-card.current-year{border-color:#8dd7f1;box-shadow:0 10px 28px #087fb812}.class-summary-line{display:grid;gap:3px}.class-summary-line span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#78909c}.class-summary-line strong{font-size:15px;color:#102f40}.current-year-badge{position:absolute;right:12px;top:12px;padding:5px 8px;border-radius:999px;background:#e8f8ff;color:#087fb8;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
@media(max-width:900px){.hero-context{width:100%}.dashboard-hero{align-items:flex-start;flex-direction:column}.hero-year,.hero-date{flex:1;min-width:0}.class-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}
@media(max-width:700px){.hero-context{display:grid;grid-template-columns:1fr}.hero-date{display:flex!important}}

/* v15 email automation + leave/calendar */
.settings-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.settings-tabs a{padding:11px 15px;border:1px solid var(--line);border-radius:11px;background:#fff;font-weight:800;color:var(--text)}.settings-tabs a.active{background:var(--blue);color:#fff;border-color:var(--blue)}.email-settings-grid .settings-tip{display:grid;gap:16px}.email-tools form{margin:0}.email-tools .attendance-note{margin-top:4px}.email-tools code{display:block;white-space:normal;word-break:break-all;margin-top:8px}.leave-type-list,.holiday-list{display:grid;gap:10px;margin-bottom:18px}.leave-type-summary{display:flex;align-items:center;gap:11px}.leave-type-summary>i{width:14px;height:36px;border-radius:999px;flex:0 0 14px}.leave-type-summary small{display:block;color:var(--muted);margin-top:3px}.dashboard-calendar-row{grid-template-columns:minmax(0,1.5fr) minmax(340px,.5fr);margin:18px 0}.calendar-panel{overflow:hidden}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.calendar-weekday{text-align:center;padding:6px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--muted)}.calendar-day{min-height:104px;border:1px solid var(--line);border-radius:12px;padding:8px;background:#fff;overflow:hidden}.calendar-day.empty{background:#f8fafb;border-style:dashed}.calendar-day.today{border:2px solid var(--blue);background:#f5fbff}.calendar-day>b{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#eef6fa;font-size:12px}.calendar-events{display:grid;gap:4px;margin-top:6px}.calendar-events span{display:block;font-size:9px;font-weight:800;padding:4px 6px;border-radius:6px;background:color-mix(in srgb,var(--event-color) 15%,white);border-left:3px solid var(--event-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-events small{font-size:9px;color:var(--muted)}.calendar-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:10px;color:var(--muted)}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend i{width:9px;height:9px;border-radius:50%}.leave-stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-bottom:14px}.leave-stat-grid article{padding:13px;border:1px solid var(--line);border-radius:13px;background:#f8fbfc}.leave-stat-grid small{display:block;color:var(--muted);font-weight:700}.leave-stat-grid strong{display:block;font-size:22px;margin-top:4px}.leave-stat-grid .sick{border-left:4px solid #ef4444}.leave-stat-grid .vacation{border-left:4px solid #8b5cf6}.leave-stat-grid .other{border-left:4px solid #14b8a6}.leave-stat-grid .lop{border-left:4px solid #64748b}.staff-month-table{max-height:390px}.staff-month-table td small{display:block;color:var(--muted);font-size:10px;margin-top:2px}
@media(max-width:1100px){.dashboard-calendar-row{grid-template-columns:1fr}.calendar-day{min-height:88px}.calendar-events span{font-size:8px}}
@media(max-width:700px){.calendar-grid{gap:3px}.calendar-day{min-height:62px;padding:5px;border-radius:8px}.calendar-events span{font-size:0;padding:2px;height:7px;border-left-width:2px}.calendar-day>b{width:20px;height:20px;font-size:10px}.leave-stat-grid{grid-template-columns:1fr 1fr}}
.leave-stat-grid .casual{border-left:4px solid #2563eb}

/* v17 attendance reports, admissions control and branch header fixes */
.branch-count-badge,.admission-count-badge{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;min-width:max-content;flex:0 0 auto;padding:7px 11px;font-weight:800}.branches-admin>.panel:first-child{min-width:0}.branches-admin .panel-head{align-items:flex-start}.branches-admin .panel-head>div{min-width:0;max-width:760px}.attendance-report-panel{overflow:visible}.report-filter-grid{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(160px,.8fr) minmax(180px,.9fr) auto;gap:14px;align-items:end;margin:20px 0}.report-filter-grid label{display:grid;gap:7px;font-size:13px;font-weight:800}.report-filter-grid select,.report-filter-grid input{width:100%;padding:11px 12px;border:1px solid #cbd8df;border-radius:10px;background:#fff;font:inherit}.report-search-action{padding-bottom:1px}.report-summary-strip{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;margin:18px 0}.report-summary-strip>div{border:1px solid var(--line);background:#f8fbfd;border-radius:13px;padding:13px 14px}.report-summary-strip small{display:block;color:var(--muted);margin-bottom:5px}.report-summary-strip strong{font-size:18px}.report-actions{display:flex;justify-content:flex-end;gap:9px;margin:0 0 15px}.admission-control-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.7fr);gap:28px;align-items:center;border-left:5px solid #0b8cc5;overflow:visible}.admission-control-panel.is-closed{border-left-color:#d97706}.admission-control-copy h2{font-size:28px;margin:7px 0}.admission-control-copy p{max-width:760px;color:var(--muted);line-height:1.55}.admission-control-links{margin-top:14px}.admission-switch-form{background:#f7fafc;border:1px solid var(--line);border-radius:15px;padding:18px}.admission-switch-form label{display:grid;gap:7px;font-size:13px;font-weight:800;margin-bottom:12px}.admission-switch-form select,.admission-switch-form textarea{width:100%;padding:11px 12px;border:1px solid #cbd8df;border-radius:10px;background:#fff;font:inherit}.admission-switch-form textarea{resize:vertical}@media(max-width:1100px){.report-filter-grid{grid-template-columns:1fr 1fr}.report-summary-strip{grid-template-columns:repeat(3,1fr)}.admission-control-panel{grid-template-columns:1fr}}@media(max-width:650px){.report-filter-grid,.report-summary-strip{grid-template-columns:1fr}.report-actions{justify-content:stretch;flex-direction:column}.report-actions .btn{width:100%;text-align:center}}


/* v20 enterprise account control */
.admin-top{position:relative}
.account-menu{isolation:isolate}
.account-trigger{
  min-width:224px;
  padding:8px 10px 8px 9px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  background:linear-gradient(135deg,#0b344b 0%,#0a2a3d 100%);
  color:#f7fbfd;
  box-shadow:0 10px 28px rgba(9,42,61,.18),inset 0 1px 0 rgba(255,255,255,.05);
}
.account-trigger:hover,.account-menu.open .account-trigger{
  border-color:rgba(65,191,235,.48);
  background:linear-gradient(135deg,#0d3d57 0%,#0a3045 100%);
  box-shadow:0 14px 34px rgba(9,42,61,.24),0 0 0 3px rgba(8,127,184,.08);
  transform:translateY(-1px);
}
.account-trigger{transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
.account-avatar{
  width:40px;height:40px;border-radius:11px;
  background:linear-gradient(145deg,#15afe2,#087fb8);
  box-shadow:0 6px 18px rgba(0,143,199,.25),inset 0 1px 0 rgba(255,255,255,.18)
}
.account-copy b{font-size:13px;color:#fff;letter-spacing:.01em}
.account-copy small{color:#a9c6d3;font-size:11px}
.account-caret{display:grid;place-items:center;color:#9fc2d1}
.account-menu.open .account-caret{transform:rotate(180deg);color:#d8f3fc}
.account-dropdown{
  top:calc(100% + 10px);
  width:278px;
  padding:9px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:16px;
  background:linear-gradient(160deg,#0d3449 0%,#082637 100%);
  color:#eaf6fb;
  box-shadow:0 24px 70px rgba(2,23,35,.32),inset 0 1px 0 rgba(255,255,255,.05);
  overflow:hidden;
}
.account-dropdown:before{content:"";position:absolute;top:-5px;right:26px;width:10px;height:10px;background:#0d3449;border-left:1px solid rgba(255,255,255,.1);border-top:1px solid rgba(255,255,255,.1);transform:rotate(45deg)}
.account-dropdown-head{display:flex;align-items:center;gap:11px;padding:10px 10px 11px;position:relative}
.account-dropdown-head>div{min-width:0;display:grid;gap:3px}
.account-dropdown-head strong{font-size:13px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-dropdown-head small{font-size:10.5px;color:#9ebcc9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-avatar-sm{width:34px;height:34px;border-radius:10px;font-size:12px;flex:0 0 auto}
.account-dropdown a{position:relative;display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:10px;color:#d8eaf2;font-size:12.5px;font-weight:700;transition:background .15s,color .15s,transform .15s}
.account-dropdown a:hover{background:rgba(255,255,255,.075);color:#fff;transform:translateX(2px)}
.account-dropdown i{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:rgba(255,255,255,.06);color:#8fd9f4;font-size:11px}
.account-dropdown .logout-link{color:#ffb5ae}
.account-dropdown .logout-link i{color:#ff9188;background:rgba(255,91,79,.1)}
.account-dropdown .logout-link:hover{background:rgba(255,91,79,.1);color:#ffd4d0}
.account-separator{height:1px;background:rgba(255,255,255,.09);margin:5px 5px}
@media(max-width:700px){
  .account-trigger{min-width:0;padding:7px;background:linear-gradient(135deg,#0b344b,#0a2a3d)}
  .account-dropdown{width:min(278px,calc(100vw - 32px))}
}

/* v21 enterprise admin navigation shell */
:root{--enterprise-navy:#07182a;--enterprise-navy-2:#0a2138;--enterprise-blue:#1769e8;--enterprise-blue-2:#0d55c7;--enterprise-panel:#ffffff;--enterprise-border:#e2e8f0;--enterprise-text:#102235;--enterprise-muted:#66788a}
body{background:#f5f7fb;color:var(--enterprise-text)}
.enterprise-shell{grid-template-columns:260px minmax(0,1fr);background:#f5f7fb;min-height:100vh}
.enterprise-sidebar{position:fixed;z-index:220;left:0;top:0;bottom:0;width:260px;height:100vh;padding:0 12px 14px;background:linear-gradient(180deg,#07182a 0%,#0a2138 55%,#07182a 100%);border-right:1px solid rgba(255,255,255,.055);box-shadow:12px 0 34px rgba(7,24,42,.08);overflow:visible;transition:width .22s ease}
.enterprise-brand-row{height:78px;margin:0;padding:12px 7px 10px;border-bottom:1px solid rgba(255,255,255,.075)}
.enterprise-brand{height:56px;padding:0!important;gap:11px;color:#fff;overflow:hidden}
.enterprise-brand b{width:42px!important;height:42px!important;min-width:42px;border-radius:13px;background:linear-gradient(145deg,#2296ff,#1258c9);box-shadow:0 7px 20px rgba(17,98,226,.34);font-size:13px;letter-spacing:.03em}
.enterprise-brand>span{display:grid;gap:2px;min-width:0;letter-spacing:0!important}
.enterprise-brand strong{font-size:15px;line-height:1.1;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.enterprise-brand small{font-size:10px;color:#9fb1c2;font-weight:600;white-space:nowrap}
.nav-section-label{padding:17px 12px 7px;color:#71879a;font-size:9px;font-weight:900;letter-spacing:.16em}
.enterprise-nav{height:calc(100vh - 142px);padding:0 3px 20px 0!important;margin:0!important;overflow-y:auto!important;overflow-x:visible!important;scrollbar-width:thin}
.enterprise-nav::-webkit-scrollbar{width:4px}.enterprise-nav::-webkit-scrollbar-thumb{background:#ffffff20;border-radius:10px}
.enterprise-nav-item,.enterprise-group-toggle{min-height:43px!important;margin:3px 0;padding:10px 11px!important;border-radius:10px!important;color:#d6e1eb!important;font-size:12.5px!important;font-weight:700!important;transition:background .16s,color .16s,transform .16s,box-shadow .16s}
.enterprise-nav-item{display:flex!important;align-items:center;gap:11px}.enterprise-nav-item i,.enterprise-group-toggle i{width:22px!important;height:22px;display:grid;place-items:center;flex:0 0 22px;font-size:14px!important;color:#8eb5d6;border-radius:7px}
.enterprise-nav-item:hover,.enterprise-group-toggle:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;transform:translateX(1px)}
.enterprise-nav-item.active,.enterprise-nav-group.active-group>.enterprise-group-toggle{background:linear-gradient(90deg,#1459c8,#1769e8)!important;color:#fff!important;box-shadow:0 8px 20px rgba(18,93,210,.24)}
.enterprise-nav-item.active i,.enterprise-nav-group.active-group>.enterprise-group-toggle i{color:#fff}
.enterprise-group-toggle b{margin-left:auto;font-size:18px!important;font-weight:400!important;color:#8aa3b7;transform:none!important;transition:transform .16s,color .16s!important}
.enterprise-nav-group.open>.enterprise-group-toggle b{transform:rotate(90deg)!important;color:#fff}
.enterprise-nav-group{position:relative;margin:3px 0!important}
.enterprise-flyout{display:none!important;position:absolute;z-index:500;left:calc(100% + 12px);top:0;width:220px;padding:9px!important;border:1px solid rgba(19,53,83,.1);border-radius:12px;background:linear-gradient(160deg,#0b1c30,#0a2138);box-shadow:0 24px 55px rgba(3,20,34,.28);gap:2px!important}
.enterprise-flyout:before{content:"";position:absolute;left:-5px;top:17px;width:10px;height:10px;background:#0b1c30;transform:rotate(45deg)}
.enterprise-nav-group:hover>.enterprise-flyout,.enterprise-nav-group.open>.enterprise-flyout,.enterprise-nav-group.search-open>.enterprise-flyout{display:grid!important}
.enterprise-flyout .flyout-title{position:relative;z-index:1;padding:7px 9px 9px;color:#7e96aa;font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.075);margin-bottom:3px}
.enterprise-flyout a{position:relative;z-index:1;display:block!important;min-height:auto!important;padding:9px 10px!important;border-radius:8px!important;color:#d8e5ee!important;font-size:12px!important;font-weight:650!important;border-left:0!important}
.enterprise-flyout a:hover{background:rgba(255,255,255,.075)!important;color:#fff!important}.enterprise-flyout a.active{background:#1769e822!important;color:#8ec2ff!important}
.enterprise-side-bottom{position:absolute;left:12px;right:12px;bottom:12px;border-top:1px solid rgba(255,255,255,.075);padding-top:10px;background:linear-gradient(180deg,rgba(7,24,42,0),#07182a 18%)}
.sidebar-collapse-control{width:100%;display:flex;align-items:center;gap:10px;border:0;border-radius:9px;padding:9px 10px;background:transparent;color:#9eb1c1;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.sidebar-collapse-control:hover{background:#ffffff0d;color:#fff}.sidebar-collapse-control i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#ffffff12;font-size:18px;font-style:normal}
.enterprise-main{grid-column:2;padding:0 24px 30px!important;min-width:0;transition:margin .22s ease}
.enterprise-topbar{height:78px;margin:0 -24px 0;position:sticky;top:0;z-index:180;display:flex;align-items:center;gap:14px;padding:0 22px;background:linear-gradient(90deg,#07182a,#091f35);border-bottom:1px solid rgba(255,255,255,.07);box-shadow:0 5px 20px rgba(7,24,42,.08)}
.topbar-menu{width:38px;height:38px;border:0;background:transparent;border-radius:9px;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;cursor:pointer}.topbar-menu:hover{background:#ffffff10}.topbar-menu span{display:block;width:17px;height:2px;background:#d9e5ed;border-radius:2px}
.topbar-search{width:min(310px,35vw);height:40px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:#0b2943;color:#9ab0c2}.topbar-search input{width:100%;border:0;outline:0;background:transparent;color:#eaf2f7;font:inherit;font-size:12px}.topbar-search input::placeholder{color:#8ba0b2}.topbar-search i{font-style:normal;font-size:19px}.topbar-search kbd{font-size:9px;color:#8398aa;border:1px solid #ffffff18;border-radius:5px;padding:2px 5px;background:#ffffff08}
.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:7px}.topbar-icon-link{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;color:#c7d6e1;background:#ffffff07;border:1px solid #ffffff08;font-size:15px}.topbar-icon-link:hover{background:#ffffff10;color:#fff}
.enterprise-account-trigger{min-width:190px!important;padding:6px 7px!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important}.enterprise-account-trigger:hover,.enterprise-account-menu.open .enterprise-account-trigger{background:#ffffff09!important;transform:none!important;box-shadow:none!important}.enterprise-account-trigger .account-avatar{width:36px;height:36px;border-radius:50%;background:#fff;color:#0b2943;box-shadow:none}.enterprise-account-trigger .account-copy b{font-size:12px}.enterprise-account-trigger .account-copy small{font-size:10px;color:#a8bbc9}.enterprise-account-trigger .account-caret{color:#a8bbc9}
.enterprise-page-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:22px 0 18px}.enterprise-page-head h1{margin:0;color:#111f2d;font-size:25px;letter-spacing:-.02em}.enterprise-breadcrumb{display:flex;align-items:center;gap:8px;margin-top:7px;font-size:11px;color:#8292a1}.enterprise-breadcrumb a{color:#5f7181}.enterprise-breadcrumb b{color:#34485a;font-weight:700}
.enterprise-main>.panel,.enterprise-main>.split,.enterprise-main>.dashboard-grid,.enterprise-main>.cards,.enterprise-main>.metric-grid,.enterprise-main>.dashboard-hero,.enterprise-main>.alert{max-width:100%}
.enterprise-main .panel,.enterprise-main .stat,.enterprise-main .metric-card{border-color:#e3e8ef;box-shadow:0 8px 28px rgba(15,38,61,.045)}
.enterprise-main .panel{border-radius:13px}.enterprise-main .btn{border-radius:9px}.enterprise-main .btn.primary{background:linear-gradient(135deg,#1769e8,#0f58cf)}
.enterprise-main .dashboard-hero{border-radius:15px;background:linear-gradient(120deg,#0b2a43,#0c5f8a)}
.enterprise-shell.sidebar-collapsed{grid-template-columns:78px minmax(0,1fr)}
.enterprise-shell.sidebar-collapsed .enterprise-sidebar{width:78px;padding-left:9px;padding-right:9px}.enterprise-shell.sidebar-collapsed .enterprise-brand>span,.enterprise-shell.sidebar-collapsed .nav-section-label,.enterprise-shell.sidebar-collapsed .enterprise-nav-item>span,.enterprise-shell.sidebar-collapsed .enterprise-group-toggle>span,.enterprise-shell.sidebar-collapsed .enterprise-group-toggle>b,.enterprise-shell.sidebar-collapsed .sidebar-collapse-control>span{display:none!important}.enterprise-shell.sidebar-collapsed .enterprise-brand{justify-content:center}.enterprise-shell.sidebar-collapsed .enterprise-nav-item,.enterprise-shell.sidebar-collapsed .enterprise-group-toggle{justify-content:center;padding-left:8px!important;padding-right:8px!important}.enterprise-shell.sidebar-collapsed .enterprise-flyout{left:calc(100% + 10px)}.enterprise-shell.sidebar-collapsed .sidebar-collapse-control{justify-content:center}.enterprise-shell.sidebar-collapsed .sidebar-collapse-control i{transform:rotate(180deg)}
@media(max-width:1000px){
 .enterprise-shell,.enterprise-shell.sidebar-collapsed{display:block;grid-template-columns:none}.enterprise-sidebar,.enterprise-shell.sidebar-collapsed .enterprise-sidebar{width:260px;transform:translateX(-100%);transition:transform .22s ease;box-shadow:20px 0 60px rgba(4,21,36,.3)}.enterprise-shell.mobile-nav-open .enterprise-sidebar{transform:translateX(0)}.enterprise-main{grid-column:auto;padding:0 16px 24px!important}.enterprise-topbar{margin:0 -16px;padding:0 14px}.enterprise-shell.sidebar-collapsed .enterprise-brand>span,.enterprise-shell.sidebar-collapsed .nav-section-label,.enterprise-shell.sidebar-collapsed .enterprise-nav-item>span,.enterprise-shell.sidebar-collapsed .enterprise-group-toggle>span,.enterprise-shell.sidebar-collapsed .enterprise-group-toggle>b,.enterprise-shell.sidebar-collapsed .sidebar-collapse-control>span{display:initial!important}.enterprise-shell.sidebar-collapsed .enterprise-nav-item,.enterprise-shell.sidebar-collapsed .enterprise-group-toggle{justify-content:flex-start}.enterprise-flyout,.enterprise-nav-group:hover>.enterprise-flyout,.enterprise-nav-group.open>.enterprise-flyout,.enterprise-nav-group.search-open>.enterprise-flyout{position:static!important;width:auto!important;margin:2px 0 6px 32px!important;padding:3px!important;border:0!important;border-left:1px solid rgba(255,255,255,.08)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.enterprise-flyout:before,.flyout-title{display:none!important}.enterprise-nav-group:not(.open):not(.search-open)>.enterprise-flyout{display:none!important}.enterprise-nav-group.open>.enterprise-flyout,.enterprise-nav-group.search-open>.enterprise-flyout{display:grid!important}.enterprise-side-bottom{display:none}.topbar-search{width:min(280px,42vw)}}
@media(max-width:650px){.topbar-search{display:none}.enterprise-account-trigger{min-width:0!important}.enterprise-account-trigger .account-copy{display:none}.topbar-actions{gap:4px}.topbar-icon-link{width:34px;height:34px}.enterprise-page-head{padding:17px 0 14px}.enterprise-page-head h1{font-size:22px}}

/* v22: functional enterprise navigation behavior */
@media (min-width:1001px){
  /* Expanded sidebar: clicked groups open as a clean inline accordion. */
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group.open>.enterprise-flyout,
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group.search-open>.enterprise-flyout{
    display:grid!important;
    position:static!important;
    width:auto!important;
    margin:3px 4px 8px 34px!important;
    padding:4px 5px 5px!important;
    border:0!important;
    border-left:1px solid rgba(142,181,214,.22)!important;
    border-radius:0 9px 9px 0!important;
    background:rgba(255,255,255,.025)!important;
    box-shadow:none!important;
    gap:1px!important;
  }
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group.open>.enterprise-flyout:before,
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group.search-open>.enterprise-flyout:before,
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group.open>.enterprise-flyout>.flyout-title,
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group.search-open>.enterprise-flyout>.flyout-title{display:none!important}
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group.open>.enterprise-flyout a,
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group.search-open>.enterprise-flyout a{
    padding:8px 10px!important;
    color:#bcd0df!important;
    border-radius:7px!important;
    font-size:11.5px!important;
  }
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group.open>.enterprise-flyout a:hover,
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group.search-open>.enterprise-flyout a:hover{
    background:rgba(255,255,255,.065)!important;
    color:#fff!important;
  }
  /* Do not attempt an off-canvas flyout while the full sidebar is open. */
  .enterprise-shell:not(.sidebar-collapsed) .enterprise-nav-group:not(.open):not(.search-open):hover>.enterprise-flyout{display:none!important}

  /* Collapsed rail: hover still previews the submenu beside the rail. */
  .enterprise-shell.sidebar-collapsed .enterprise-nav-group:hover>.enterprise-flyout{
    display:grid!important;
    position:absolute!important;
    left:calc(100% + 11px)!important;
    top:0!important;
    width:220px!important;
    margin:0!important;
    padding:9px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:12px!important;
    background:linear-gradient(160deg,#0b1c30,#0a2138)!important;
    box-shadow:0 24px 55px rgba(3,20,34,.3)!important;
  }
  .enterprise-shell.sidebar-collapsed .enterprise-nav-group:hover>.enterprise-flyout>.flyout-title{display:block!important}
  .enterprise-shell.sidebar-collapsed .enterprise-nav-group:hover>.enterprise-flyout:before{display:block!important}
}

/* Make the command-bar hamburger feel and behave like a real sidebar control. */
.topbar-menu{border:1px solid rgba(255,255,255,.08)!important;background:rgba(255,255,255,.035)!important;transition:background .16s,border-color .16s,transform .16s}
.topbar-menu:hover{background:rgba(255,255,255,.09)!important;border-color:rgba(255,255,255,.14)!important}
.topbar-menu:active{transform:scale(.96)}
.enterprise-shell.sidebar-collapsed .topbar-menu{background:rgba(23,105,232,.18)!important;border-color:rgba(85,151,255,.28)!important}

/* v23 enterprise staff chat */
.chat-topbar-link{position:relative}.topbar-badge{position:absolute;right:-4px;top:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#ef4444;color:#fff;border:2px solid #081c31;display:grid;place-items:center;font-size:9px;font-weight:900;line-height:1}
.staff-chat-shell{height:calc(100vh - 156px);min-height:620px;display:grid;grid-template-columns:330px minmax(0,1fr);overflow:hidden;border:1px solid #dfe6ee;border-radius:16px;background:#fff;box-shadow:0 18px 48px rgba(15,38,61,.07)}
.chat-conversations{display:flex;flex-direction:column;min-width:0;background:#fbfcfe;border-right:1px solid #e5ebf1}.chat-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:22px 20px 14px}.chat-panel-head h2{margin:3px 0 0;font-size:20px}.chat-secure-pill{padding:6px 9px;border-radius:999px;background:#eaf7f1;color:#16835d;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.chat-search{height:42px;margin:0 16px 14px;display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #dce5ed;border-radius:10px;background:#fff;color:#8092a3}.chat-search input{width:100%;border:0;outline:0;background:transparent;font:inherit;font-size:12px;color:#172a3c}.chat-search input::placeholder{color:#93a3b2}
.chat-staff-list{overflow:auto;padding:0 9px 14px;scrollbar-width:thin}.chat-staff-row{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border-radius:11px;color:#24394c;transition:background .15s,transform .15s}.chat-staff-row:hover{background:#f0f5fa;transform:translateX(1px)}.chat-staff-row.active{background:linear-gradient(135deg,#eaf3ff,#edf8ff);box-shadow:inset 3px 0 #1769e8}.chat-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,#0e78d4,#0a9bc4);color:#fff;font-size:13px;font-weight:900;box-shadow:0 6px 15px rgba(18,120,190,.18)}.chat-avatar.large{width:46px;height:46px;border-radius:14px}.chat-staff-copy{display:grid;min-width:0;gap:3px}.chat-row-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-row-top b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px}.chat-row-top time{flex:0 0 auto;color:#9aabb9;font-size:9px}.chat-staff-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#728597;font-size:10.5px}.chat-unread-badge{min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#1769e8;color:#fff;display:grid;place-items:center;font-size:9px;font-weight:900}.chat-empty-list{padding:25px 16px;color:#8192a1;text-align:center;font-size:12px}
.chat-thread-panel{min-width:0;display:grid;grid-template-rows:auto 1fr auto;background:linear-gradient(180deg,#fff,#fbfcfe)}.chat-thread-head{height:78px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 22px;border-bottom:1px solid #e7edf2;background:#fff}.chat-peer{display:flex;align-items:center;gap:12px;min-width:0}.chat-peer h2{margin:0 0 3px;font-size:16px}.chat-peer p{margin:0;color:#728596;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-active-label{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #e0e9ef;border-radius:999px;color:#687b8b;background:#fbfdff;font-size:9.5px;font-weight:800}.chat-active-label i{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #dcfce7}
.chat-message-area{position:relative;overflow:auto;padding:22px 28px;background:radial-gradient(circle at 10% 0,#f5faff 0,transparent 28%),#f8fafc;scrollbar-width:thin}.chat-day-separator{display:flex;align-items:center;justify-content:center;margin:0 0 18px}.chat-day-separator span{padding:5px 10px;border-radius:999px;background:#eef3f7;color:#8292a0;font-size:9px;font-weight:800}.chat-message{display:flex;margin:7px 0}.chat-message.mine{justify-content:flex-end}.chat-bubble{max-width:min(680px,72%);padding:10px 13px 8px;border-radius:14px 14px 14px 4px;background:#fff;border:1px solid #e1e8ee;box-shadow:0 3px 10px rgba(22,50,74,.045)}.chat-message.mine .chat-bubble{border:0;border-radius:14px 14px 4px 14px;background:linear-gradient(135deg,#1769e8,#0f5ccc);color:#fff;box-shadow:0 7px 18px rgba(23,105,232,.2)}.chat-bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12.5px;line-height:1.5}.chat-bubble>span{display:block;margin-top:5px;color:#8a99a6;font-size:8.5px;text-align:right}.chat-message.mine .chat-bubble>span{color:#d4e5ff}.chat-thread-empty,.chat-no-conversation{height:100%;display:grid;place-items:center;align-content:center;text-align:center;color:#7c8d9b}.chat-thread-empty>div,.chat-no-conversation>div{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:#eaf4ff;color:#1769e8;font-size:22px}.chat-thread-empty h3,.chat-no-conversation h2{margin:11px 0 4px;color:#22384b}.chat-thread-empty p,.chat-no-conversation p{max-width:430px;margin:0;font-size:11px;line-height:1.6}
.chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding:15px 18px;border-top:1px solid #e5ebf0;background:#fff}.chat-compose-box{border:1px solid #dce5ec;border-radius:12px;background:#fbfcfe;transition:border-color .15s,box-shadow .15s}.chat-compose-box:focus-within{border-color:#8bb9f6;box-shadow:0 0 0 3px #1769e812}.chat-compose textarea{display:block;width:100%;min-height:44px;max-height:130px;padding:12px 13px 5px;border:0;outline:0;resize:none;background:transparent;color:#162b3d;font:inherit;font-size:12px;line-height:1.45}.chat-compose-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 10px 7px;color:#95a4b1;font-size:8.5px}.chat-compose-meta kbd{padding:1px 4px;border:1px solid #d8e1e8;border-radius:4px;background:#fff;font-size:8px}.chat-send-button{height:48px;padding:0 16px;border:0;border-radius:11px;background:linear-gradient(135deg,#1769e8,#0c59cc);color:#fff;display:flex;align-items:center;gap:9px;font:inherit;font-size:11.5px;font-weight:900;box-shadow:0 8px 18px rgba(23,105,232,.2);cursor:pointer}.chat-send-button:hover{filter:brightness(1.04)}.chat-send-button:disabled{opacity:.55;cursor:not-allowed}.chat-send-button b{font-size:13px}
@media(max-width:900px){.staff-chat-shell{height:auto;min-height:0;grid-template-columns:1fr}.chat-conversations{max-height:330px;border-right:0;border-bottom:1px solid #e5ebf1}.chat-thread-panel{min-height:620px}.chat-thread-actions{display:none}}
@media(max-width:600px){.staff-chat-shell{margin:0 -4px;border-radius:12px}.chat-thread-head{padding:0 14px}.chat-message-area{padding:16px 12px}.chat-bubble{max-width:86%}.chat-compose{padding:10px;grid-template-columns:1fr}.chat-send-button{justify-content:center}.chat-compose-meta span{display:none}}
/* v29 website logo settings */
.site-logo-preview{min-height:92px;padding:16px;background:#f8fbfd;border:1px solid #dbe7ef;border-radius:14px;display:flex;align-items:center;gap:18px}
.site-logo-preview img{display:block;max-width:220px;max-height:72px;width:auto;height:auto;object-fit:contain;background:#fff;border-radius:10px;padding:8px;border:1px solid #e0e9ef}


/* v31 announcements + branding settings */
.favicon-preview img{width:42px!important;height:42px!important;object-fit:contain;border-radius:9px;background:#fff;padding:4px;border:1px solid #d9e5ec}
.announcement-admin-hero{border-left:4px solid #0b8fca}.announcement-admin-grid{align-items:start}.announcement-admin-card{border:1px solid #dce7ee;border-radius:14px;margin:0 0 12px;background:#fff;overflow:hidden}.announcement-admin-card>summary{list-style:none;cursor:pointer;padding:17px 18px;display:flex;justify-content:space-between;gap:18px;align-items:center}.announcement-admin-card>summary::-webkit-details-marker{display:none}.announcement-admin-card>summary>div{display:grid;gap:4px}.announcement-admin-card>summary b{font-size:15px}.announcement-admin-card>summary small,.announcement-admin-card>summary>span{color:#6e8594;font-size:11px}.announcement-admin-card.important{border-left:4px solid #f59e0b}.announcement-admin-card.urgent{border-left:4px solid #ef4444}.announcement-audience{font-size:9px;font-weight:900;letter-spacing:.12em;color:#0780b2}.announcement-admin-body{border-top:1px solid #e5edf2;padding:18px;background:#f9fbfc}.announcement-actions{margin-top:10px}.announcement-actions form{display:inline}.announcement-create{position:sticky;top:86px}.status-pill.ok{background:#e9f9ef;color:#15803d}.status-pill.warn{background:#fff4df;color:#9a5a00}.empty-admin{padding:30px;text-align:center;border:1px dashed #cbdbe4;border-radius:12px;color:#738997}
@media(max-width:1000px){.announcement-create{position:static}}

/* v32 Front Office + Staff Scheduling */
.module-hero{padding:26px 28px;border-radius:18px;background:linear-gradient(135deg,#08233a,#0a5675);color:#fff;box-shadow:0 18px 44px rgba(8,35,58,.12)}
.module-hero h2{margin:5px 0 7px;font-size:26px}.module-hero p{margin:0;color:#c9dce8;max-width:760px}.v32-metrics{margin-top:18px}.quick-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}.quick-module-grid>a{display:grid;gap:6px;padding:20px;border:1px solid #dce7ee;border-radius:15px;background:#fff;color:#173248;box-shadow:0 8px 25px rgba(18,47,70,.045);transition:.16s}.quick-module-grid>a:hover{transform:translateY(-2px);border-color:#9ac9e2;box-shadow:0 16px 30px rgba(18,47,70,.08)}.quick-module-grid b{font-size:15px}.quick-module-grid span{color:#718696;font-size:11px}
.ops-card{border:1px solid #dce6ed;border-radius:14px;background:#fff;margin-bottom:12px;overflow:hidden}.ops-card>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px}.ops-card>summary::-webkit-details-marker{display:none}.ops-card>summary>div{display:grid;gap:4px}.ops-card>summary small{color:#728697;font-size:10px}.ops-card.priority-urgent{border-left:4px solid #ef4444}.ops-card.priority-high{border-left:4px solid #f59e0b}.profile-body{border-top:1px solid #e7edf2;padding:16px;background:#fbfcfe}.btn.small{padding:7px 10px;font-size:10px}
.schedule-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px}.period-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}.period-chip-row>span{display:grid;gap:2px;padding:9px 11px;border-radius:10px;background:#eef7fb;border:1px solid #d7e8f0;font-weight:800;font-size:11px}.period-chip-row small{font-weight:500;color:#657f90}.inline-editor{display:flex;flex-wrap:wrap;gap:8px}.inline-editor input{max-width:125px}.compact-editor{padding:0;background:transparent}.timetable-board{margin-top:18px}.schedule-day{border:1px solid #dce6ed;border-radius:13px;margin:10px 0;background:#fff;overflow:hidden}.schedule-day>summary{cursor:pointer;display:flex;justify-content:space-between;padding:14px 16px;list-style:none;background:#fbfcfe}.schedule-day>summary::-webkit-details-marker{display:none}.schedule-day>summary span{color:#6d8292;font-size:10px}.schedule-day[open]>summary{border-bottom:1px solid #e4ebf0;background:#f4f9fc}
.cover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cover-card{display:grid;gap:14px;padding:18px;border:1px solid #dce6ed;border-radius:15px;background:#fff}.cover-card h3{margin:3px 0 0}.cover-card p{margin:4px 0 0;color:#667d8f}.cover-assigned{padding:10px 12px;border-radius:10px;background:#eaf9ef;border:1px solid #caebd5;display:grid;gap:2px}.cover-assigned small{color:#4d7860}.cover-card form{display:grid;gap:10px}
.schedule-week-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.schedule-column{border:1px solid #dce6ed;border-radius:14px;background:#fff;overflow:hidden}.schedule-column.today{box-shadow:0 0 0 2px #1e9bd7 inset}.schedule-column>header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:#f5f9fc;border-bottom:1px solid #e3eaf0}.schedule-column>header span{font-size:9px;color:#728697}.schedule-slot{display:grid;gap:3px;padding:11px 13px;border-bottom:1px solid #edf1f4;min-height:78px}.schedule-slot:last-child{border-bottom:0}.schedule-slot small{color:#7b8f9d;font-size:9px}.schedule-slot b{font-size:12px}.schedule-slot>span{font-size:10px;color:#687f90}.schedule-slot.busy{border-left:3px solid #1596d2}.schedule-slot.free{background:#fbfdfd;border-left:3px solid #40b984}.schedule-slot details{margin-top:3px}.schedule-slot summary{cursor:pointer;font-size:9px;color:#0c7cad}.schedule-slot details p{font-size:9px;color:#718696;margin:5px 0 0}.staff-day-widget{margin-top:18px}.today-schedule-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.today-schedule-strip article{display:grid;gap:4px;padding:13px;border-radius:12px;background:#f4f9fc;border:1px solid #dfeaf0}.today-schedule-strip small{color:#708596;font-size:9px}.today-schedule-strip b{font-size:12px}.today-schedule-strip span{font-size:10px;color:#536e80}
@media(max-width:1100px){.schedule-layout{grid-template-columns:1fr}.schedule-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-schedule-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.quick-module-grid,.cover-grid,.schedule-week-grid,.today-schedule-strip{grid-template-columns:1fr}.inline-editor{display:grid;grid-template-columns:1fr 1fr}.inline-editor input{max-width:none}.module-hero{padding:20px}.schedule-layout{gap:16px}}

/* v33 Staff & HR Operations attendance dashboard */
.hr-attendance-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px 30px;margin-bottom:18px;border-radius:18px;color:#fff;background:linear-gradient(120deg,#071d31 0%,#0b3857 58%,#0d7090 100%);box-shadow:0 16px 36px rgba(7,29,49,.13)}
.hr-attendance-hero h2{margin:5px 0 7px;font-size:30px;color:#fff}.hr-attendance-hero p{margin:0;color:#d8eaf3;max-width:760px}.hr-attendance-hero .eyebrow{color:#79dcff}
.hr-live-badge{display:flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);font-size:13px;font-weight:700;white-space:nowrap}.hr-live-badge span{width:8px;height:8px;border-radius:50%;background:#49d98a;box-shadow:0 0 0 5px rgba(73,217,138,.12)}
.hr-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.hr-kpi-card{display:flex;gap:14px;align-items:center;padding:20px;border:1px solid #dbe5ec;border-radius:16px;background:#fff;box-shadow:0 7px 24px rgba(19,51,73,.055)}.hr-kpi-card small{display:block;color:#667b8d;font-weight:700;margin-bottom:4px}.hr-kpi-card strong{display:block;font-size:28px;line-height:1.05;color:#0b263b}.hr-kpi-card em{display:block;margin-top:6px;font-style:normal;font-size:12px;color:#7e909e}.hr-kpi-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;font-size:20px;font-weight:900;flex:0 0 auto}.hr-kpi-icon.staff{background:#eaf4ff;color:#1678d2}.hr-kpi-icon.present{background:#e9f8ef;color:#178a4b}.hr-kpi-icon.leave{background:#fff4dc;color:#b97706}.hr-kpi-icon.absent{background:#fff0ef;color:#c23f3a}
.hr-ops-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:18px;margin-bottom:18px}.hr-attendance-card,.hr-quick-card,.hr-activity-panel{border-radius:18px}.hr-attendance-score{display:grid;grid-template-columns:210px 1fr;gap:30px;align-items:center;padding:10px 4px 20px}.hr-score-ring{--score:0;position:relative;width:174px;height:174px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#168ad0 calc(var(--score)*1%),#e7eef3 0)}.hr-score-ring:after{content:"";position:absolute;inset:14px;background:#fff;border-radius:50%}.hr-score-ring>div{position:relative;z-index:1;text-align:center}.hr-score-ring strong{display:block;font-size:34px;color:#0b263b}.hr-score-ring span{font-size:12px;color:#738897}.hr-status-list{display:grid;gap:12px}.hr-status-list>div{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #edf2f5}.hr-status-list b{font-size:14px}.hr-status-list strong{font-size:16px}.hr-status-list .dot{width:9px;height:9px;border-radius:50%}.dot.present{background:#25a65a}.dot.leave{background:#e1a126}.dot.absent{background:#e1504b}.dot.half{background:#7457d5}.hr-progress{height:9px;border-radius:99px;background:#e9f0f4;overflow:hidden}.hr-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1d9f5d,#2ec77a)}.hr-progress-note{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-size:12px;color:#7a8d9b}
.hr-quick-actions{display:grid;gap:9px}.hr-quick-actions a{display:flex;gap:12px;align-items:center;padding:12px 13px;border:1px solid #e0e8ee;border-radius:13px;text-decoration:none;background:#fbfdfe;color:#102d43;transition:.18s ease}.hr-quick-actions a:hover{transform:translateY(-1px);border-color:#a9cfe2;background:#f3faff;box-shadow:0 8px 18px rgba(13,80,118,.07)}.hr-quick-actions a>span{width:35px;height:35px;border-radius:10px;background:#e7f5fb;color:#0879b5;display:grid;place-items:center;font-weight:900}.hr-quick-actions b,.hr-quick-actions small{display:block}.hr-quick-actions small{margin-top:2px;color:#7b8d99;font-size:11px}
.hr-activity-list{display:grid}.hr-activity-item{display:grid;grid-template-columns:12px 1fr auto;gap:12px;align-items:center;padding:13px 2px;border-bottom:1px solid #edf2f5}.hr-activity-item:last-child{border-bottom:0}.hr-activity-mark{width:9px;height:9px;border-radius:50%;background:#1b8ed0;box-shadow:0 0 0 5px #e9f6fc}.hr-activity-mark.sync{background:#22a861;box-shadow:0 0 0 5px #eaf8ef}.hr-activity-item b{display:block;font-size:13px;color:#15334a}.hr-activity-item small{display:block;margin-top:3px;color:#7b8d99}.hr-activity-item time{font-size:12px;color:#8797a3;white-space:nowrap}.text-link{font-size:13px;font-weight:700;text-decoration:none;color:#0879b5}
@media(max-width:1050px){.hr-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hr-ops-grid{grid-template-columns:1fr}.hr-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.hr-attendance-hero{align-items:flex-start;flex-direction:column;padding:22px}.hr-attendance-hero h2{font-size:25px}.hr-kpi-grid{grid-template-columns:1fr}.hr-attendance-score{grid-template-columns:1fr;justify-items:center}.hr-status-list{width:100%}.hr-progress-note{flex-direction:column}.hr-quick-actions{grid-template-columns:1fr}.hr-activity-item{grid-template-columns:12px 1fr}.hr-activity-item time{grid-column:2}}

/* v34 Staff profile workspace */
.staff-profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;padding:28px 30px;border-radius:24px;background:linear-gradient(135deg,#071d31 0%,#0b3552 62%,#0d6f91 100%);color:#fff;box-shadow:0 20px 50px rgba(7,29,49,.16);margin-bottom:18px}
.staff-avatar-large{width:112px;height:112px;border-radius:26px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#0ea5e9,#2563eb);border:3px solid rgba(255,255,255,.2);box-shadow:0 12px 26px rgba(0,0,0,.2)}
.staff-avatar-large img{width:100%;height:100%;object-fit:cover}.staff-avatar-large span{font-size:42px;font-weight:800}
.staff-profile-title .eyebrow{color:#7dd3fc}.staff-profile-title h2{font-size:34px;line-height:1.05;margin:5px 0 7px}.staff-profile-title p{margin:2px 0;color:#dbeafe;font-size:16px}.staff-profile-title .staff-school-line{font-weight:700;color:#fff}.staff-emp-id{display:inline-flex;margin-top:10px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.1);font-size:13px;border:1px solid rgba(255,255,255,.12)}
.staff-profile-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.staff-profile-actions .btn{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.18)}
.staff-profile-tabs{display:flex;gap:4px;padding:6px;background:#fff;border:1px solid #dbe5ee;border-radius:16px;overflow-x:auto;margin-bottom:18px;box-shadow:0 8px 24px rgba(15,23,42,.04)}
.staff-profile-tabs a{white-space:nowrap;padding:10px 14px;border-radius:11px;color:#526579;text-decoration:none;font-weight:700;font-size:13px}.staff-profile-tabs a:hover{background:#f1f6fa;color:#0a2940}.staff-profile-tabs a.active{background:#0c78a8;color:#fff;box-shadow:0 5px 14px rgba(12,120,168,.2)}
.staff-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.staff-kpi-grid article{padding:20px;border:1px solid #dbe5ee;border-radius:18px;background:#fff;box-shadow:0 9px 25px rgba(15,23,42,.04)}.staff-kpi-grid span,.profile-info-grid span{display:block;color:#718499;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.staff-kpi-grid strong{display:block;margin-top:8px;font-size:24px;color:#0a2940}.staff-kpi-grid small{display:block;color:#718499;margin-top:4px}
.profile-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid #e0e8ef;border-radius:14px;overflow:hidden}.profile-info-grid>div{padding:16px 18px;border-bottom:1px solid #e8eef3}.profile-info-grid>div:nth-child(odd){border-right:1px solid #e8eef3}.profile-info-grid>div:nth-last-child(-n+2){border-bottom:0}.profile-info-grid b{display:block;margin-top:5px;color:#0b2b42;word-break:break-word}
.profile-activity-list{position:relative}.profile-activity-list article{position:relative;display:grid;grid-template-columns:24px 1fr;gap:12px;padding:0 0 20px}.profile-activity-list article:before{content:"";position:absolute;left:7px;top:18px;bottom:0;width:1px;background:#dce7ef}.profile-activity-list article:last-child:before{display:none}.activity-dot{width:15px;height:15px;border-radius:50%;background:#0ea5e9;border:4px solid #e0f2fe;margin-top:2px;z-index:1}.profile-activity-list p{margin:3px 0;color:#5d7183}.profile-activity-list small{color:#8a9aaa}
.row-actions{display:flex;align-items:center;gap:8px}
@media(max-width:1000px){.staff-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-profile-hero{grid-template-columns:auto 1fr}.staff-profile-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:680px){.staff-profile-hero{grid-template-columns:1fr;text-align:center;padding:22px}.staff-avatar-large{margin:auto;width:94px;height:94px}.staff-profile-actions{justify-content:center}.staff-profile-title h2{font-size:28px}.staff-kpi-grid{grid-template-columns:1fr}.profile-info-grid{grid-template-columns:1fr}.profile-info-grid>div:nth-child(odd){border-right:0}.profile-info-grid>div:nth-last-child(-n+2){border-bottom:1px solid #e8eef3}.profile-info-grid>div:last-child{border-bottom:0}}

/* v35 staff status, hiring and organization tree */
.staff-status-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.02em;border:1px solid transparent;white-space:nowrap}.staff-status-pill i{width:8px;height:8px;border-radius:50%;display:block}.staff-status-pill.is-active{color:#d9ffea;background:rgba(30,180,102,.16);border-color:rgba(85,230,150,.28);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}.staff-status-pill.is-active i{background:#5ee39a;box-shadow:0 0 0 4px rgba(94,227,154,.12)}.staff-status-pill.is-inactive{color:#ffe1df;background:rgba(226,82,73,.14);border-color:rgba(245,118,109,.26)}.staff-status-pill.is-inactive i{background:#ff766e}
.hiring-hero{background:linear-gradient(125deg,#081d31 0%,#123d5a 58%,#0d7b92 100%);color:#fff}.hiring-hero h2,.org-hero h2{color:#fff}.hiring-hero p,.org-hero p{color:#d7e8f1}.hiring-tabs{margin-top:-2px}.hiring-row{align-items:center}.status-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;text-transform:capitalize;background:#eef3f6;color:#476173}.status-open,.status-applied,.status-scheduled{background:#e7f4ff;color:#086ea9}.status-screening,.status-shortlisted,.status-interview{background:#f0ebff;color:#6244bd}.status-offered{background:#fff4d9;color:#9a6200}.status-hired,.status-completed{background:#e7f8ee;color:#157b46}.status-rejected,.status-cancelled,.status-no_show,.status-closed{background:#fff0ef;color:#b73a35}.status-on_hold{background:#f4f1ea;color:#75654b}.hiring-candidate-layout{grid-template-columns:minmax(0,1.45fr) minmax(340px,.7fr)}.convert-staff-box{margin-top:20px;padding:18px;border-radius:15px;background:#f1f8fc;border:1px solid #d4e8f2}.convert-staff-box h3{margin-top:0}.org-hero{background:linear-gradient(125deg,#071c30,#123a54 60%,#146f83);color:#fff}.organization-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(330px,.55fr);gap:18px}.org-chart-panel{overflow:auto}.org-chart{min-width:720px;padding:16px 10px 24px}.org-level{display:flex;justify-content:center;gap:22px;position:relative;flex-wrap:wrap;margin:0 auto 28px}.org-level.depth-1,.org-level.depth-2,.org-level.depth-3{padding-top:22px}.org-level.depth-1:before,.org-level.depth-2:before,.org-level.depth-3:before{content:"";position:absolute;top:0;left:10%;right:10%;height:1px;background:#bdd4e1}.org-node{position:relative;width:220px;min-height:108px;padding:17px 18px;border-radius:17px;background:#fff;border:1px solid #dce7ee;box-shadow:0 9px 25px rgba(10,41,64,.07);text-align:center}.org-level.depth-0>.org-node{background:linear-gradient(135deg,#0b2c45,#0d7292);color:#fff;border-color:transparent}.org-node:before{content:"";position:absolute;top:-23px;left:50%;width:1px;height:22px;background:#bdd4e1}.org-level.depth-0>.org-node:before{display:none}.org-node-role{display:block;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#1382b3;margin-bottom:8px}.org-level.depth-0>.org-node .org-node-role{color:#79ddff}.org-node strong{display:block;font-size:16px}.org-node small{display:block;margin-top:4px;color:#6c8293}.org-level.depth-0>.org-node small{color:#d5e8f1}.org-node em{display:inline-block;margin-top:9px;padding:4px 8px;border-radius:999px;background:#eef6fa;color:#577184;font-size:10px;font-style:normal}.org-unassigned{margin-top:34px;padding:20px;border-radius:18px;border:1px dashed #c5d6e0;background:#f8fbfd}.org-unassigned h3{margin:0 0 4px}.org-unassigned p{margin-top:0;color:#6b8191}.org-unassigned-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.org-unassigned-grid article{padding:12px;border-radius:12px;background:#fff;border:1px solid #e0e8ee}.org-unassigned-grid strong,.org-unassigned-grid small{display:block}.org-unassigned-grid small{margin-top:3px;color:#728697}.org-editor{align-self:start;position:sticky;top:90px}.org-manage-item{border-top:1px solid #e4ebf0;padding:10px 0}.org-manage-item summary{cursor:pointer;font-weight:800;color:#19394e}.empty-state{text-align:center;padding:38px;color:#728697}
@media(max-width:1100px){.organization-layout,.hiring-candidate-layout{grid-template-columns:1fr}.org-editor{position:static}.org-unassigned-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.org-chart{min-width:0}.org-level{display:grid;grid-template-columns:1fr;margin-bottom:14px;padding-top:0!important}.org-level:before,.org-node:before{display:none!important}.org-node{width:auto}.org-unassigned-grid{grid-template-columns:1fr}.staff-profile-actions{width:100%}.staff-status-pill{justify-content:center}}
.org-branch{display:flex;flex-direction:column;align-items:center;position:relative}.org-branch>.org-level{margin-top:22px;margin-bottom:0}.org-branch>.org-level:before{left:8%;right:8%}
@media(max-width:720px){.org-branch{display:block}.org-branch>.org-level{margin-top:10px}}
/* v36 branch-first operations */
.class-branch-fix{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line,#d9e4eb)}
.class-branch-fix select{min-width:0}.branch-operations-panel .compact-card h3{margin:.35rem 0}.branch-operations-panel .compact-card .grid2{margin-top:14px}.branch-operations-panel .compact-card .grid2 div{display:grid;gap:2px}.branch-operations-panel .compact-card .grid2 strong{font-size:1.35rem;color:var(--ink,#102c3f)}

/* v39 Employee Separation & Exit */
.separation-intro{overflow:hidden;background:linear-gradient(135deg,#fff 0%,#f5fbff 100%)}
.separation-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;max-width:720px}.separation-kpis>div{padding:15px 17px;border:1px solid #dce7ef;border-radius:14px;background:#fff}.separation-kpis small{display:block;color:#688092;font-weight:700;margin-bottom:4px}.separation-kpis b{font-size:24px;color:#092f49}
.separation-layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:18px;align-items:start}.separation-list{position:sticky;top:86px;max-height:calc(100vh - 110px);display:flex;flex-direction:column}.staff-filter{margin:0 0 12px}.separation-staff-list{display:flex;flex-direction:column;gap:8px;overflow:auto;padding-right:4px}.separation-staff-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:1px solid #dbe6ed;border-radius:13px;text-decoration:none;color:#17374e;background:#fff;transition:.16s ease}.separation-staff-card:hover,.separation-staff-card.active{border-color:#0c93ce;background:#f0f9fd;box-shadow:0 5px 18px rgba(6,65,96,.08)}.staff-mini-avatar{width:40px;height:40px;border-radius:11px;background:linear-gradient(135deg,#0ea5d8,#2365df);display:grid;place-items:center;color:#fff;font-weight:800}.separation-staff-card b{display:block}.separation-staff-card small{display:block;color:#718595;margin-top:2px}.exit-state{font-size:10px;font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:5px 7px}.exit-state.active{background:#e7f8ef;color:#187548}.exit-state.inactive{background:#ffefef;color:#a62f2f}.separation-workspace{display:flex;flex-direction:column;gap:18px;min-width:0}.separation-hero{background:linear-gradient(125deg,#062b43,#0b789c);color:#fff;display:flex;justify-content:space-between;gap:18px;align-items:center}.separation-hero h2{font-size:28px;margin:3px 0}.separation-hero p{margin:3px 0;color:#d6eff8}.separation-hero .eyebrow{color:#75d9ff}.employee-meta-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.employee-meta-row span{background:#ffffff16;border:1px solid #ffffff26;border-radius:999px;padding:7px 10px;font-size:12px}.separation-hero .btn{background:#fff;color:#0b4764;border-color:#fff}.fnf-gross-hint{text-align:right;padding:10px 14px;background:#eef8fc;border-radius:12px}.fnf-gross-hint small{display:block;color:#607b8b}.fnf-gross-hint b{font-size:20px;color:#075d84}.fnf-money-grid input{text-align:right}.fnf-total-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#cddde6;border:1px solid #cddde6;border-radius:14px;overflow:hidden;margin:20px 0}.fnf-total-bar>div{background:#f8fbfd;padding:14px 16px}.fnf-total-bar small{display:block;color:#6b8290;font-weight:700}.fnf-total-bar b{display:block;font-size:20px;color:#0a3149;margin-top:4px}.fnf-total-bar>div:last-child{background:#e5f7ee}.fnf-total-bar>div:last-child b{color:#137043}.action-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.action-row form{margin:0}
@media(max-width:1050px){.separation-layout{grid-template-columns:1fr}.separation-list{position:static;max-height:none}.separation-staff-list{max-height:390px}.separation-hero{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.separation-kpis,.fnf-total-bar{grid-template-columns:1fr}.separation-staff-card{grid-template-columns:40px minmax(0,1fr)}.exit-state{grid-column:2}.separation-hero h2{font-size:23px}}
.reactivate-form{margin-top:10px}

/* v40 admin polish */
.compact-card .btn + .muted{display:block;margin-top:10px;line-height:1.45}.compact-card form .btn{margin-top:2px}.table-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.record-actions{display:flex;gap:9px;align-items:center;justify-content:flex-end}.record-actions form{margin:0}.btn.compact{padding:7px 11px;min-height:auto;font-size:12px}.form-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.staff-profile-directory{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:12px;margin-top:16px}.staff-directory-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;color:inherit;transition:.18s ease}.staff-directory-card:hover{border-color:#9ecfe4;box-shadow:0 8px 24px rgba(14,64,86,.08);transform:translateY(-1px)}.staff-directory-avatar{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#0d9ed3,#286ee8);color:#fff;font-weight:900}.staff-directory-card b,.staff-directory-card small,.staff-directory-card em{display:block}.staff-directory-card small{color:var(--muted);margin-top:3px}.staff-directory-card em{font-style:normal;font-size:11px;color:#78909c;margin-top:4px}.staff-directory-status{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;padding:6px 8px;border-radius:999px}.staff-directory-status.active{background:#e8f7ee;color:#257445}.staff-directory-status.inactive{background:#f3f5f6;color:#7a8790}.period-chip-row{align-items:stretch}.period-chip-row>.period-chip{min-width:126px;display:grid;grid-template-rows:auto auto 1fr;gap:4px;padding:10px 12px}.period-chip-actions{display:flex;gap:8px;align-items:end;margin-top:5px;font-size:10px}.period-chip-actions a{font-weight:800}.period-chip-actions form{margin:0}.period-chip-actions button{font-size:10px;padding:0;background:none;border:0}.period-editor{align-items:center}.report-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px}.slide-admin-card,.program-admin-card{min-height:104px}.slide-admin-card>div:nth-child(2),.program-admin-card>div:nth-child(2){min-width:0}.homepage-admin-grid .panel,.future-admin .panel{align-self:start}.homepage-admin-grid,.future-admin{gap:18px}.editor label{margin-bottom:2px}
@media(max-width:800px){.record-actions{grid-column:1/-1;justify-content:flex-start}.staff-profile-directory{grid-template-columns:1fr}.period-editor{display:grid;grid-template-columns:1fr 1fr}.period-editor input{max-width:none}.period-chip-row>.period-chip{min-width:calc(50% - 5px)}}

/* v41 Staff/HR Meetings */
.meeting-command{display:flex;justify-content:space-between;gap:28px;align-items:center;padding:30px 34px;margin:0 0 22px;background:linear-gradient(135deg,#08243b,#0c5675);color:#fff;border-radius:22px;box-shadow:0 16px 40px rgba(7,36,58,.12)}
.meeting-command h2{margin:4px 0 8px;font-size:30px}.meeting-command p{margin:0;color:#d7edf7;max-width:760px;line-height:1.6}.meeting-command-stats{display:flex;gap:12px}.meeting-command-stats div{min-width:116px;padding:18px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.08);border-radius:16px;text-align:center}.meeting-command-stats b{display:block;font-size:28px}.meeting-command-stats span{font-size:12px;color:#d8edf6}
.meeting-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.75fr);gap:22px;align-items:start}.meeting-list{display:grid;gap:12px}.meeting-card{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:18px;align-items:center;border:1px solid #dbe6ee;border-radius:18px;padding:16px;background:#fff}.meeting-card.past{opacity:.78}.meeting-date{width:64px;height:64px;border-radius:15px;background:#edf7fc;color:#087db8;display:grid;place-content:center;text-align:center}.meeting-date b{font-size:24px;line-height:1}.meeting-date span{font-size:11px;font-weight:800;letter-spacing:.08em;margin-top:5px}.meeting-type{font-size:10px;font-weight:900;letter-spacing:.12em;color:#087db8}.meeting-card h3{margin:4px 0 6px;font-size:18px}.meeting-card p,.meeting-card small{margin:0;color:#5b7282}.meeting-card small{display:block;margin-top:5px}.meeting-card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.meeting-editor{position:sticky;top:88px}.meeting-editor-actions{display:flex;gap:10px;align-items:center;margin-top:14px}.meeting-editor select[multiple]{min-height:180px}.dashboard-meeting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dashboard-meeting-grid article{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #dce7ee;border-radius:16px;padding:16px}.dashboard-meeting-grid article span{font-size:10px;font-weight:900;letter-spacing:.1em;color:#087db8}.dashboard-meeting-grid article h3{margin:3px 0 5px}.dashboard-meeting-grid article p{margin:0;color:#617686;font-size:13px}
@media(max-width:1100px){.meeting-layout{grid-template-columns:1fr}.meeting-editor{position:static}.meeting-command{align-items:flex-start}.dashboard-meeting-grid{grid-template-columns:1fr}}
@media(max-width:700px){.meeting-command{padding:22px;display:block}.meeting-command-stats{margin-top:18px}.meeting-card{grid-template-columns:58px 1fr}.meeting-card-actions{grid-column:1/-1;justify-content:flex-start}.meeting-date{width:54px;height:54px}.meeting-command-stats div{min-width:0;flex:1}}

/* v43 floating Staff Chat */
.floating-staff-chat{position:fixed;right:24px;bottom:24px;z-index:1800;font-family:inherit}.staff-chat-fab{position:relative;width:58px;height:58px;border:0;border-radius:18px;background:linear-gradient(145deg,#0b2740,#0b6d91);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 18px 36px rgba(5,31,51,.28);transition:transform .18s,box-shadow .18s}.staff-chat-fab:hover{transform:translateY(-2px);box-shadow:0 22px 42px rgba(5,31,51,.34)}.staff-chat-fab svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.staff-chat-fab-badge{position:absolute;right:-5px;top:-6px;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;border:3px solid #eef3f7;display:grid;place-items:center;font-size:9px;font-weight:900}.staff-chat-drawer{position:absolute;right:0;bottom:72px;width:min(420px,calc(100vw - 32px));height:min(650px,calc(100vh - 120px));display:flex;flex-direction:column;background:#fff;border:1px solid #dbe6ee;border-radius:20px;box-shadow:0 30px 70px rgba(5,29,47,.24);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(12px) scale(.985);transform-origin:bottom right;transition:.18s ease}.floating-staff-chat.open .staff-chat-drawer{opacity:1;visibility:visible;transform:none}.floating-chat-head{min-height:72px;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(120deg,#071c31,#0b526f);color:#fff}.floating-chat-head .eyebrow{color:#67d7ff;font-size:8px}.floating-chat-head h3{margin:3px 0 0;color:#fff;font-size:18px}.floating-chat-head-actions{display:flex;gap:6px}.floating-chat-head-actions button{width:32px;height:32px;border:1px solid #ffffff18;border-radius:9px;background:#ffffff0b;color:#dceaf3;font-size:18px;cursor:pointer}.floating-chat-head-actions button:hover{background:#ffffff18;color:#fff}.floating-chat-body{position:relative;min-height:0;flex:1;display:grid;grid-template-columns:1fr}.floating-chat-list-pane,.floating-chat-thread-pane{min-height:0;background:#fff}.floating-chat-search{margin:13px;display:flex;align-items:center;gap:8px;padding:0 11px;height:42px;border:1px solid #dde6ed;border-radius:11px;background:#f8fafc;color:#72889a}.floating-chat-search input{width:100%;border:0;outline:0;background:transparent;font:inherit;font-size:11px;color:#173247}.floating-chat-staff-list{height:calc(100% - 68px);overflow:auto;padding:0 8px 12px}.floating-chat-staff{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:0;border-radius:12px;background:transparent;text-align:left;cursor:pointer;color:#173247}.floating-chat-staff:hover,.floating-chat-staff.active{background:#eef7fb}.floating-chat-avatar{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#e5f5ff,#d7ecf7);color:#087ba8;font-weight:900}.floating-chat-person{min-width:0;display:grid;gap:3px}.floating-chat-person b{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.floating-chat-person small{font-size:9.5px;color:#7a8f9e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.floating-chat-row-meta{align-self:stretch;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:5px}.floating-chat-row-meta time{font-size:8px;color:#9aabb7}.floating-chat-row-meta em{font-style:normal;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#1769e8;color:#fff;display:grid;place-items:center;font-size:8px;font-weight:900}.floating-chat-empty-list{padding:30px 14px;text-align:center;color:#7b8f9d;font-size:11px}.floating-chat-thread-pane{position:absolute;inset:0;pointer-events:none;opacity:0;transform:translateX(14px);transition:.18s ease}.floating-staff-chat.thread-open .floating-chat-thread-pane{pointer-events:auto;opacity:1;transform:none}.floating-chat-placeholder{height:100%;display:grid;place-items:center;align-content:center;text-align:center;padding:28px;color:#728696}.floating-chat-placeholder>div{width:52px;height:52px;border-radius:16px;background:#eaf5fb;color:#0b83b3;display:grid;place-items:center;font-size:20px}.floating-chat-placeholder h4{margin:11px 0 4px;color:#183447}.floating-chat-placeholder p{margin:0;max-width:270px;font-size:10px;line-height:1.55}.floating-chat-thread{height:100%;display:grid;grid-template-rows:58px minmax(0,1fr) auto}.floating-chat-peer-head{display:flex;align-items:center;gap:9px;padding:9px 12px;border-bottom:1px solid #e5edf2;background:#fbfcfd}.floating-chat-peer-head .floating-chat-avatar{width:36px;height:36px}.floating-chat-peer-head>div{display:grid;gap:2px}.floating-chat-peer-head b{font-size:11.5px}.floating-chat-peer-head small{font-size:9px;color:#758b9a}.floating-chat-back{width:28px;height:28px;border:0;border-radius:8px;background:#eaf3f8;color:#31556d;font-size:20px;cursor:pointer}.floating-chat-messages{overflow:auto;padding:16px 13px;background:linear-gradient(180deg,#f7fafc,#f3f7f9)}.floating-chat-message{display:flex;margin:0 0 8px}.floating-chat-message.mine{justify-content:flex-end}.floating-chat-bubble{max-width:82%;padding:9px 11px;border-radius:13px 13px 13px 4px;background:#fff;border:1px solid #e2e8ed;box-shadow:0 3px 9px rgba(14,44,64,.04)}.floating-chat-message.mine .floating-chat-bubble{background:linear-gradient(135deg,#0d6fd3,#0c599e);color:#fff;border:0;border-radius:13px 13px 4px 13px}.floating-chat-bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;line-height:1.45}.floating-chat-bubble time{display:block;margin-top:4px;text-align:right;color:#8ca0ae;font-size:7.5px}.floating-chat-message.mine time{color:#d7e9fa}.floating-chat-no-messages,.floating-chat-loading{height:100%;display:grid;place-items:center;align-content:center;gap:4px;text-align:center;color:#7a8e9d;font-size:10px}.floating-chat-no-messages span{font-size:18px}.floating-chat-no-messages b{color:#314e62}.floating-chat-loading.error{color:#b42318}.floating-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px;padding:10px;border-top:1px solid #e1e9ef;background:#fff}.floating-chat-compose textarea{min-height:42px;max-height:90px;resize:none;border:1px solid #dbe5ec;border-radius:10px;padding:11px 12px;outline:0;font:inherit;font-size:11px;line-height:1.4}.floating-chat-compose textarea:focus{border-color:#6caed1;box-shadow:0 0 0 3px #0b8fca12}.floating-chat-compose button{border:0;border-radius:10px;background:#0b84b4;color:#fff;font-size:14px;cursor:pointer}.floating-chat-compose button:disabled{opacity:.55}.floating-chat-footer{height:42px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #e3ebf0;background:#fbfcfd;font-size:8.5px;color:#8194a2}.floating-chat-footer a{font-weight:800;color:#087dad}.floating-staff-chat.thread-open .floating-chat-list-pane{visibility:hidden}
@media(max-width:700px){.floating-staff-chat{right:14px;bottom:14px}.staff-chat-fab{width:54px;height:54px;border-radius:17px}.staff-chat-drawer{position:fixed;inset:0;width:auto;height:auto;border-radius:0;transform:translateY(16px);transform-origin:center}.floating-staff-chat.open .staff-chat-drawer{transform:none}.floating-chat-head{padding-top:max(15px,env(safe-area-inset-top))}.floating-chat-footer{padding-bottom:env(safe-area-inset-bottom);height:calc(42px + env(safe-area-inset-bottom))}}

/* v44 floating chat: conversation mode starts at the top of the drawer */
.floating-staff-chat.thread-open .floating-chat-head{display:none}
.floating-staff-chat.thread-open .floating-chat-body{flex:1}
.floating-staff-chat.thread-open .floating-chat-thread-pane{top:0}

/* v45 floating chat state restoration */
.floating-staff-chat:not(.thread-open) .floating-chat-head{display:flex!important}.floating-staff-chat:not(.thread-open) .floating-chat-list-pane{visibility:visible!important}.floating-staff-chat:not(.thread-open) .floating-chat-thread-pane{pointer-events:none!important;opacity:0!important;transform:translateX(14px)!important}

/* v46 fee-plan workflow */
.fee-component-row{display:grid;grid-template-columns:minmax(150px,1.4fr) minmax(120px,.8fr) minmax(145px,.9fr) minmax(210px,1.4fr) auto;gap:12px;align-items:end;padding:14px;border:1px solid var(--line,#d8e2ea);border-radius:14px;background:#f8fbfd;margin-bottom:12px}.fee-component-row label{margin:0}.fee-component-row .btn{margin-bottom:2px}.optional-fee-box{margin-top:20px;padding:18px;border:1px solid #cfe6dc;border-radius:16px;background:#f5fbf8}.optional-fee-box h3{margin-top:0}.info-note{margin-top:14px;padding:12px 14px;border-radius:12px;background:#eef7ff;border:1px solid #cfe6fb;color:#315168}.toolbar-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.rowcard .badge{margin-left:8px}@media(max-width:1050px){.fee-component-row{grid-template-columns:1fr 1fr}.fee-component-row .fee-row-remove{justify-self:start}}@media(max-width:640px){.fee-component-row{grid-template-columns:1fr}.toolbar-row>.btn{width:100%}}

/* v47 fee payment collection */
.fee-collection-launcher{border-top:4px solid #0b8bc2;background:linear-gradient(180deg,#fff 0%,#f8fcff 100%)}
.fee-collection-grid{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:14px;align-items:end}
.fee-collection-grid label{margin:0}
.fee-collection-submit{display:flex;flex-direction:column;gap:7px;align-items:flex-start}
.fee-collection-submit .btn{min-height:44px}
@media(max-width:1200px){.fee-collection-grid{grid-template-columns:repeat(3,minmax(180px,1fr))}}
@media(max-width:760px){.fee-collection-grid{grid-template-columns:1fr}.fee-collection-submit .btn{width:100%}}

/* v48 enterprise fees */
.fees-setup-overview,.fee-plan-editor{overflow:visible}.fee-plan-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.fee-plan-card{border:1px solid var(--line);border-radius:14px;padding:15px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fbfdfe}.fee-plan-main{min-width:0}.fee-plan-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fee-plan-main>strong{display:block;font-size:20px;margin:6px 0 3px}.fee-plan-main small{display:block;color:var(--muted);line-height:1.45}.optional-badge{background:#fff4db;color:#8a5a00}.btn.compact{padding:7px 10px;font-size:12px}.fee-plan-context{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-bottom:18px}.fee-component-list{display:grid;gap:12px}.fee-component-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(130px,.7fr) minmax(160px,.8fr) minmax(240px,1.2fr) auto;gap:12px;align-items:end;padding:16px;border:1px solid #d6e3ea;border-radius:14px;background:#f8fbfd}.fee-component-row label{margin:0}.fee-row-remove{margin-bottom:1px}.fee-plan-actions{display:flex;gap:10px;align-items:center;margin-top:14px}.fees-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.payment-method-list{display:grid;gap:8px;margin:14px 0 18px}.payment-method-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:12px;padding:11px 12px;background:#fbfdfe}.payment-method-row small{display:block;color:var(--muted);margin-top:3px}.payment-method-create{padding-top:16px;border-top:1px solid var(--line)}.empty-state{display:grid;place-items:center;text-align:center;min-height:130px;padding:24px;border:1px dashed #bfd1da;border-radius:14px;background:#fbfdfe}.empty-state span{color:var(--muted);margin-top:5px}.fee-collect-hero{background:linear-gradient(135deg,#fff,#f0f9fd)}.fee-collector-selector{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.fee-collector-selector label{display:grid;gap:7px;font-weight:700;font-size:13px}.fee-collector-selector select{width:100%;padding:12px;border:1px solid #cbd8df;border-radius:10px;background:#fff;font:inherit}.fee-collector-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:20px}.payment-entry-card{position:sticky;top:92px;align-self:start}.fee-payment-lines{display:grid;gap:8px;margin-bottom:16px}.fee-pay-line{display:grid!important;grid-template-columns:minmax(0,1fr) 130px!important;gap:10px!important;align-items:center!important;margin:0!important;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fbfdfe}.fee-pay-line>span{display:grid;grid-template-columns:auto 1fr;column-gap:7px;align-items:center}.fee-pay-line>span small{grid-column:2;color:var(--muted)}.fee-pay-line input[type=checkbox]{width:auto}.fee-pay-line input[type=number]{width:100%}.fee-pay-submit{width:100%;margin-top:4px}.fee-collector-empty{min-height:220px;display:grid;place-items:center}
@media(max-width:1200px){.fee-component-row{grid-template-columns:1fr 1fr}.fee-component-row .fee-row-remove{justify-self:start}.fee-collector-layout{grid-template-columns:1fr}.payment-entry-card{position:static}.fee-collector-selector{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.fee-plan-list,.fees-settings-grid,.fee-plan-context,.fee-collector-selector{grid-template-columns:1fr}.fee-component-row{grid-template-columns:1fr}.fee-plan-actions{flex-direction:column;align-items:stretch}.fee-plan-actions .btn{width:100%}.fee-pay-line{grid-template-columns:1fr!important}.panel-head{align-items:flex-start;flex-direction:column}.panel-head .toolbar-row{width:100%;flex-wrap:wrap}}

/* v50 — enterprise-wide admin design system -------------------------------- */
:root{
  --ent-navy:#07182a;--ent-navy-2:#0a2942;--ent-blue:#1769e8;--ent-cyan:#0aa4df;
  --ent-bg:#f4f7fb;--ent-surface:#ffffff;--ent-surface-2:#f8fafc;--ent-line:#dfe7ef;
  --ent-text:#10283a;--ent-muted:#6b7f8f;--ent-success:#16855b;--ent-warning:#b86a06;--ent-danger:#bb2b2b;
  --ent-shadow:0 10px 32px rgba(15,39,64,.06);--ent-shadow-lg:0 22px 60px rgba(15,39,64,.10)
}
body{background:linear-gradient(180deg,#f7f9fc 0,#f3f7fa 48%,#f5f8fb 100%);color:var(--ent-text);font-size:14px}
.enterprise-main{background:transparent}
.enterprise-main>.enterprise-page-head{margin-bottom:2px}
.enterprise-page-head h1{font-size:28px;font-weight:850;letter-spacing:-.035em;color:#10283a}
.enterprise-breadcrumb{font-weight:600;color:#8293a2}.enterprise-breadcrumb b{color:#30485a}

/* consistent cards and page sections */
.enterprise-main .panel,.enterprise-main .stat,.enterprise-main .metric-card,.enterprise-main .user-card,.enterprise-main .role-card,.enterprise-main .doc-admin-card,.enterprise-main .qa{
  background:rgba(255,255,255,.98);border:1px solid var(--ent-line);border-radius:16px;box-shadow:var(--ent-shadow)
}
.enterprise-main .panel{padding:24px 26px;margin-bottom:22px;overflow:auto}
.enterprise-main .panel:hover{box-shadow:0 14px 40px rgba(15,39,64,.075)}
.enterprise-main .panel-head{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #edf1f5}
.enterprise-main .panel h2{font-size:21px;letter-spacing:-.025em;color:#10283a;margin:0 0 8px}
.enterprise-main .panel h3{color:#17364b;letter-spacing:-.015em}
.enterprise-main .panel p.muted,.enterprise-main .muted{color:var(--ent-muted);line-height:1.6}
.enterprise-main .eyebrow{color:#087fb8;font-size:10px;letter-spacing:.18em;margin-bottom:8px}
.enterprise-main hr{border:0;border-top:1px solid #e8eef3;margin:22px 0}

/* form controls */
.enterprise-main label{color:#18364a}
.enterprise-main input:not([type=checkbox]):not([type=radio]),
.enterprise-main select,.enterprise-main textarea,
.enterprise-main .editor input,.enterprise-main .editor select,.enterprise-main .editor textarea,
.enterprise-main .uploadbar input{
  min-height:44px;border:1px solid #ccd9e3;border-radius:10px;background:#fff;color:#173141;padding:10px 12px;outline:none;transition:border-color .18s,box-shadow .18s,background .18s
}
.enterprise-main textarea{min-height:96px;line-height:1.55}
.enterprise-main input:focus,.enterprise-main select:focus,.enterprise-main textarea:focus{
  border-color:#4ea6dc;box-shadow:0 0 0 4px rgba(27,134,202,.10);background:#fff
}
.enterprise-main input::placeholder,.enterprise-main textarea::placeholder{color:#9aabb7}
.enterprise-main input[type=file]{padding:8px;background:#f9fbfc}
.enterprise-main input[type=checkbox],.enterprise-main input[type=radio]{accent-color:#1769e8}
.enterprise-main .grid2{gap:16px}.enterprise-main .split{gap:22px}
.enterprise-main .editor label{font-size:12px;letter-spacing:.01em;margin-bottom:15px}

/* buttons and actions */
.enterprise-main .btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:9px;padding:9px 14px;font-weight:800;font-size:12px;transition:transform .15s,box-shadow .15s,background .15s,border-color .15s}
.enterprise-main .btn:hover{transform:translateY(-1px)}
.enterprise-main .btn.primary{background:linear-gradient(135deg,#1769e8,#0f59ce);color:#fff;box-shadow:0 7px 16px rgba(23,105,232,.18)}
.enterprise-main .btn.primary:hover{box-shadow:0 10px 22px rgba(23,105,232,.25)}
.enterprise-main .btn:not(.primary):not(.danger){background:#eef4f8;color:#19384d;border:1px solid #dce7ee}
.enterprise-main .btn:not(.primary):not(.danger):hover{background:#e5eff5;border-color:#cbdce6}
.enterprise-main .btn.danger{background:#fff1f1;color:#b42318;border:1px solid #ffd7d4}
.enterprise-main .text-danger{font-weight:750}.enterprise-main .text-danger:hover{text-decoration:underline}
.enterprise-main form[style*="display:flex"]{gap:10px!important}

/* enterprise data tables */
.enterprise-main table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #e2e9ef;border-radius:12px;overflow:hidden}
.enterprise-main thead th{position:sticky;top:0;z-index:2;background:#f5f8fb;color:#526979;text-transform:uppercase;letter-spacing:.055em;font-size:10px;font-weight:900;border-bottom:1px solid #dce6ed;padding:12px 13px;white-space:nowrap}
.enterprise-main tbody td{padding:13px;border-bottom:1px solid #edf1f4;font-size:12.5px;vertical-align:middle}
.enterprise-main tbody tr:last-child td{border-bottom:0}
.enterprise-main tbody tr:hover{background:#f8fbfd}
.enterprise-main td small{color:#7b8d9a}
.enterprise-main .badge,.enterprise-main .status-pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800;border:1px solid #dfe8ee;background:#f2f6f8;color:#536a79}
.enterprise-main .status-pill.active,.enterprise-main .badge.active,.enterprise-main .status-pill.present{background:#eaf8f1;border-color:#caeadb;color:#14734f}
.enterprise-main .status-pill.inactive,.enterprise-main .status-pill.absent{background:#fff0f0;border-color:#f5d2d2;color:#a92828}

/* lists, rows, collapsibles */
.enterprise-main .rowcard{padding:14px 4px;border-bottom:1px solid #e9eff3;transition:background .15s,padding .15s}
.enterprise-main .rowcard:hover{background:#f8fbfd;padding-left:10px;padding-right:10px;border-radius:9px}
.enterprise-main details.user-card,.enterprise-main details.role-card{overflow:hidden}
.enterprise-main details.user-card summary{padding:9px 2px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.enterprise-main details.user-card summary:after{content:'+';width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:#eef5f8;color:#537183;font-size:18px;font-weight:500}
.enterprise-main details.user-card[open] summary:after{content:'−'}
.enterprise-main .user-card,.enterprise-main .role-card,.enterprise-main .doc-admin-card{padding:18px}

/* dashboard polish */
.enterprise-main .dashboard-hero{border:1px solid rgba(255,255,255,.07);box-shadow:0 20px 45px rgba(7,37,58,.14)}
.enterprise-main .metric-grid,.enterprise-main .cards{gap:16px}
.enterprise-main .metric-card,.enterprise-main .stat{position:relative;overflow:hidden;transition:transform .17s,box-shadow .17s}
.enterprise-main .metric-card:hover,.enterprise-main .stat:hover{transform:translateY(-2px);box-shadow:0 15px 38px rgba(15,39,64,.09)}
.enterprise-main .metric-card:after,.enterprise-main .stat:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#1769e8,#10a7dc);opacity:.55}
.enterprise-main .metric-card strong,.enterprise-main .stat strong{letter-spacing:-.03em}

/* alerts and empty states */
.enterprise-main .alert{border:1px solid transparent;border-radius:12px;padding:13px 15px;font-weight:650;box-shadow:0 5px 16px rgba(15,39,64,.035)}
.enterprise-main .alert.success{background:#eefaf4;border-color:#d2efdf;color:#1a674b}
.enterprise-main .alert.danger{background:#fff1f1;border-color:#f6d5d3;color:#91271f}
.enterprise-main .panel>p.muted:only-child{min-height:100px;display:grid;place-items:center;border:1px dashed #d4e0e8;border-radius:12px;background:#fafcfd;text-align:center;padding:24px}

/* galleries / content management */
.enterprise-main .admin-gallery{gap:16px}.enterprise-main .admin-gallery figure{border-radius:14px;background:#fff;box-shadow:0 8px 22px rgba(15,39,64,.055);transition:transform .17s,box-shadow .17s}.enterprise-main .admin-gallery figure:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(15,39,64,.08)}
.enterprise-main .qa-grid{gap:16px}.enterprise-main .qa{padding:18px}.enterprise-main .qa h3{font-size:15px;line-height:1.4}

/* scrollbar / selection refinement */
.enterprise-main ::selection{background:#1769e8;color:#fff}
.enterprise-main *{scrollbar-width:thin;scrollbar-color:#bfd0db transparent}
.enterprise-main ::-webkit-scrollbar{width:8px;height:8px}.enterprise-main ::-webkit-scrollbar-thumb{background:#bfd0db;border-radius:999px}.enterprise-main ::-webkit-scrollbar-track{background:transparent}

/* responsive enterprise behavior */
@media(max-width:1100px){.enterprise-main .split{grid-template-columns:1fr}.enterprise-main .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.enterprise-main .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.enterprise-main{padding-left:12px!important;padding-right:12px!important}.enterprise-main .panel{padding:18px 16px;border-radius:14px}.enterprise-main .grid2,.enterprise-main .metric-grid,.enterprise-main .cards{grid-template-columns:1fr}.enterprise-main table{min-width:680px}.enterprise-main .panel{overflow-x:auto}.enterprise-page-head h1{font-size:24px}.enterprise-main .btn{width:auto}.enterprise-main .panel-head{align-items:flex-start;flex-direction:column}}

/* v51 — branch operating context + status/report refinements */
.branch-scope-trigger{display:flex;align-items:center;gap:9px;min-height:42px;padding:6px 11px;border:1px solid #1d3b55;border-radius:11px;background:#0b2740;color:#eaf5fb;cursor:pointer;max-width:230px}.branch-scope-trigger:hover{background:#11324f;border-color:#2d5270}.branch-scope-trigger>span:nth-child(2){display:grid;text-align:left;line-height:1.1;min-width:0}.branch-scope-trigger small{font-size:9px;color:#89a8bc;text-transform:uppercase;letter-spacing:.08em}.branch-scope-trigger b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.branch-scope-trigger i{font-style:normal;color:#8db0c5}.branch-scope-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#163b58;color:#77d4ff}.branch-scope-modal[hidden]{display:none!important}.branch-scope-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:start center;padding-top:min(10vh,90px)}.branch-scope-backdrop{position:absolute;inset:0;background:rgba(3,18,31,.58);backdrop-filter:blur(3px)}.branch-scope-dialog{position:relative;width:min(600px,calc(100vw - 28px));max-height:78vh;overflow:auto;background:#fff;border:1px solid #d9e5ed;border-radius:18px;box-shadow:0 28px 90px rgba(3,18,31,.28);padding:22px}.branch-scope-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid #e8eef3}.branch-scope-dialog h2{margin:0;font-size:22px}.branch-scope-dialog>header button{width:34px;height:34px;border:0;border-radius:9px;background:#eef4f8;color:#315065;font-size:21px;cursor:pointer}.branch-scope-dialog>p{color:#6b7f8f;margin:14px 0}.branch-choice{display:flex!important;align-items:center;gap:12px;padding:12px 14px!important;border:1px solid #e0e8ee;border-radius:11px;background:#f9fbfd;margin:9px 0!important;cursor:pointer}.branch-choice.selected{border-color:#77bcea;background:#eff8fe;box-shadow:0 0 0 3px rgba(23,105,232,.07)}.branch-choice input{width:17px;height:17px;margin:0}.branch-choice span{display:grid}.branch-choice b{font-size:13px}.branch-choice small{font-size:11px;color:#728897;margin-top:3px}.branch-scope-dialog footer{display:flex;justify-content:flex-end;padding-top:14px}.branch-modal-open{overflow:hidden}
.status-dot{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;font-size:0;border:1px solid}.status-dot:before{content:"";width:9px;height:9px;border-radius:50%}.status-dot.active{background:#eaf8f1;border-color:#c8ead9}.status-dot.active:before{background:#1d9b68;box-shadow:0 0 0 4px #d5f2e4}.status-dot.inactive{background:#fff0f0;border-color:#f3cdcd}.status-dot.inactive:before{background:#d83b3b;box-shadow:0 0 0 4px #f8dcdc}.report-builder{display:grid;grid-template-columns:1.15fr .9fr .9fr 1fr 1fr auto;gap:12px;align-items:end}.report-builder label{margin:0!important}.report-builder .period-field[hidden]{display:none!important}.report-builder .btn{min-height:44px}.report-context-note{display:flex;gap:8px;align-items:center;margin-top:12px;color:#657b8c;font-size:12px}.report-context-note b{color:#17364b}@media(max-width:1100px){.report-builder{grid-template-columns:1fr 1fr 1fr}}@media(max-width:720px){.branch-scope-trigger>span:nth-child(2){display:none}.branch-scope-trigger{padding:6px}.report-builder{grid-template-columns:1fr}.branch-scope-modal{padding-top:20px}}
/* v52 — remove legacy chevron glyphs globally; details use one enterprise +/− affordance only. */
.enterprise-main details.user-card>summary .chevron{display:none!important}

/* v53 organization automation + promotions */
.org-hero-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.org-hero-actions form{margin:0}.org-auto-note{margin:0 0 18px}.org-edit-chip{font-size:11px;font-weight:800;color:#087fb6;background:#e7f6fc;border:1px solid #c8e9f6;border-radius:999px;padding:4px 9px}.org-manage-item>summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.promotion-layout{align-items:start}.promotion-layout>.panel:first-child{min-width:0}.promotion-layout aside{position:sticky;top:88px}.promotion-layout .table-actions{flex-wrap:wrap}.status-pill.danger{background:#feecec;color:#b42318;border-color:#fac5c5}@media(max-width:1100px){.promotion-layout{grid-template-columns:1fr}.promotion-layout aside{position:static}.org-hero-actions{justify-content:flex-start}}

/* v56 Procurement Management */
.procurement-hero{background:linear-gradient(135deg,#092a3d,#0b6c86 62%,#118aa5);color:#fff;border:0}.procurement-hero .eyebrow,.procurement-hero p{color:#d8f2fb}.proc-hero-value{display:grid;justify-items:end;gap:4px;min-width:220px}.proc-hero-value small{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#cbe8f1}.proc-hero-value strong{font-size:27px;letter-spacing:-.03em}.proc-metrics .metric-icon{font-size:13px}.proc-list-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(340px,.75fr);gap:20px;align-items:start}.proc-editor{position:sticky;top:88px}.proc-filter{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:16px}.proc-filter input,.proc-filter select{min-width:180px;padding:10px 12px;border:1px solid #ccdbe4;border-radius:10px;background:#fff;font:inherit}.proc-detail-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.65fr);gap:20px;align-items:start}.proc-total{font-size:24px}.proc-actions-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px;margin:-4px 0 20px;background:#fff;border:1px solid var(--line);border-radius:14px}.proc-actions-bar form{margin:0}.proc-budget-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.proc-budget-strip div{padding:6px 8px}.proc-budget-strip small,.proc-budget-strip b{display:block}.proc-budget-strip small{color:var(--muted);font-size:11px}.proc-budget-strip b{margin-top:5px;font-size:20px}.proc-form-section{border:1px solid #dce7ee;border-radius:14px;background:#f8fbfd;padding:13px;margin:10px 0 14px}.proc-item-row{display:grid;grid-template-columns:1.35fr 1.35fr .55fr .55fr .8fr auto;gap:9px;align-items:end;padding:10px 0;border-bottom:1px solid #e6edf2}.proc-item-row:last-child{border-bottom:0}.proc-item-row label{margin:0}.proc-item-row input{min-width:0}.vendor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(275px,1fr));gap:12px}.vendor-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:11px;align-items:center;padding:14px;border:1px solid #dfe8ee;border-radius:14px;background:#fff;color:inherit;transition:.17s}.vendor-card:hover{transform:translateY(-1px);border-color:#a9d3e4;box-shadow:0 9px 25px rgba(15,57,82,.08)}.vendor-card small{display:block;margin-top:3px;color:var(--muted)}.quote-compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.quote-card{border:1px solid #dce7ee;border-radius:16px;padding:16px;background:#fff}.quote-card.selected{border:2px solid #1b9c69;background:#f5fcf8}.quote-price{display:block;font-size:25px;margin:16px 0;letter-spacing:-.03em}.quote-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:12px 0}.quote-facts span{font-size:11px;color:#6b8190}.quote-facts b{display:block;margin-top:3px;color:#163649}.quote-award-form{margin-top:14px}.quote-award-form textarea{width:100%;border:1px solid #cbdbe4;border-radius:10px;padding:10px;font:inherit}.approval-timeline{position:relative;display:grid;gap:4px}.approval-timeline:before{content:"";position:absolute;left:9px;top:10px;bottom:14px;width:2px;background:#e0e9ee}.approval-timeline article{display:grid;grid-template-columns:20px 1fr;gap:12px;position:relative;padding:7px 0 14px}.approval-dot{position:relative;z-index:2;width:20px;height:20px;border-radius:50%;border:5px solid #e5edf2;background:#8ba0ae}.approval-dot.approved{background:#179864;border-color:#d8f3e6}.approval-dot.rejected{background:#dc3838;border-color:#f7dada}.approval-dot.sent_back{background:#dc8a16;border-color:#ffefcf}.approval-dot.pending{background:#0b86bc;border-color:#d8eff9}.approval-timeline b,.approval-timeline small{display:block}.approval-timeline small{color:#6d8290;margin-top:3px}.approval-timeline p{font-size:12px;margin:6px 0}.approval-actions{margin-top:9px}.approval-actions textarea{width:100%;padding:9px;border:1px solid #cad9e2;border-radius:9px}.approval-actions>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}.po-summary{margin:16px 0 0 auto;width:min(360px,100%);display:grid;gap:7px}.po-summary span{display:flex;justify-content:space-between;border-bottom:1px solid #e6edf2;padding:7px 0}.po-summary span:last-child{font-size:17px;border-bottom:0}.grn-lines{display:grid;gap:12px}.grn-line{padding:13px;border:1px solid #dce7ee;border-radius:13px;background:#f9fbfc}.grn-line>b,.grn-line>small{display:block}.grn-line>small{color:var(--muted);margin:3px 0 10px}.match-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.match-grid>div{padding:14px;border:1px solid #dbe6ed;border-radius:12px;background:#f8fbfd}.match-grid small,.match-grid b{display:block}.match-grid small{color:#6d8290;font-size:10px;text-transform:uppercase}.match-grid b{font-size:18px;margin-top:5px}.approval-mini{padding:12px 0;border-bottom:1px solid #e5edf2}.approval-mini>b{display:block;margin-bottom:6px}.budget-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:14px}.budget-card{padding:16px;border:1px solid #dbe6ed;border-radius:15px;background:#fff}.budget-card small{display:block;color:var(--muted)}.budget-bar{height:9px;border-radius:999px;background:#edf3f6;overflow:hidden;margin:14px 0}.budget-bar i{display:block;height:100%;background:linear-gradient(90deg,#0b8ec4,#18a76f);border-radius:999px}.proc-timeline{position:relative}.proc-timeline-row{display:grid;grid-template-columns:18px 1fr;gap:12px;padding:0 0 18px;position:relative}.proc-timeline-row:before{content:"";position:absolute;left:7px;top:14px;bottom:-3px;width:1px;background:#dbe6ed}.proc-timeline-row:last-child:before{display:none}.proc-timeline-row>span{width:15px;height:15px;border-radius:50%;background:#0e8dc1;border:4px solid #dff2fa;margin-top:3px;z-index:2}.proc-timeline-row b,.proc-timeline-row small{display:block}.proc-timeline-row p{margin:4px 0;font-size:12px}.proc-timeline-row small{color:#728695;font-size:10px}.proc-report-builder{grid-template-columns:1.15fr 1fr 1fr 1fr 1fr auto}.table-wrap small{display:block;color:var(--muted);margin-top:3px}.status-pill.danger{background:#fff0f0;color:#a92828;border-color:#f3cdcd}.status-pill.warn{background:#fff7e7;color:#9b620e;border-color:#f4dfb2}.status-pill.ok{background:#eaf8f1;color:#14734f;border-color:#caeadb}@media(max-width:1180px){.proc-list-layout,.proc-detail-grid{grid-template-columns:1fr}.proc-editor{position:static}.proc-report-builder{grid-template-columns:1fr 1fr 1fr}.proc-item-row{grid-template-columns:1fr 1fr 1fr}.proc-item-row .text-danger{justify-self:start}.proc-hero-value{justify-items:start}.module-hero{align-items:flex-start}}@media(max-width:720px){.proc-item-row,.proc-budget-strip,.match-grid,.proc-report-builder{grid-template-columns:1fr}.quote-compare,.vendor-grid,.budget-grid{grid-template-columns:1fr}.proc-filter>*{width:100%}.proc-filter input,.proc-filter select{min-width:0;width:100%}.proc-actions-bar{align-items:stretch}.proc-actions-bar>*{width:100%}.proc-actions-bar .btn{width:100%;text-align:center}.procurement-hero{display:block}.proc-hero-value{margin-top:16px}}
.proc-pager{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:16px}.proc-pager span{font-size:12px;color:#6c8190;font-weight:700}.proc-period-field[hidden]{display:none!important}

/* v58 Transfer Certificates + Staff ID Cards */
.page-command-panel{background:linear-gradient(135deg,#ffffff 0%,#f8fbfd 100%)}
.info-stack{display:grid;gap:14px}.info-stack .compact-card{margin:0}
.status-dot-badge{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;padding:6px 10px;border-radius:999px;border:1px solid transparent;white-space:nowrap}
.status-dot-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px currentColor inset}
.status-dot-badge.status-active{color:#067647;background:#ecfdf3;border-color:#abefc6}
.status-dot-badge.status-inactive{color:#b42318;background:#fef3f2;border-color:#fecdca}
.table-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.table-actions form{margin:0}.btn.small{padding:7px 10px;font-size:12px}.btn.danger{color:#b42318;border-color:#f7c5c0;background:#fff7f6}.empty-state{padding:28px;text-align:center;color:#647b8c;background:#f8fbfd;border-radius:12px}
@media(max-width:760px){.table-actions{min-width:150px}.dashboard-grid{grid-template-columns:1fr!important}}

/* v59 — branch-correct document registers and aligned actions */
.enterprise-main .table-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;flex-wrap:nowrap!important;white-space:nowrap!important}
.enterprise-main .table-actions form{display:inline-flex!important;margin:0!important}
.enterprise-main .table-actions .btn.small{min-width:92px;justify-content:center}
.enterprise-main .table-actions .btn.small.danger{min-width:72px}
@media(max-width:900px){.enterprise-main .table-actions{justify-content:flex-start!important;flex-wrap:wrap!important;white-space:normal!important}}

/* v60 Help Centre */
.topbar-help-link{font-weight:900;font-size:18px;line-height:1}
.help-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:32px 36px;margin-bottom:20px;border-radius:24px;background:linear-gradient(120deg,#07283d,#0b6685);color:#fff;box-shadow:0 18px 45px rgba(7,40,61,.16)}
.help-hero h2{font-size:32px;margin:6px 0 8px}.help-hero p{margin:0;color:#d8edf5;max-width:720px}.help-hero .eyebrow{color:#6ee7ff}.help-hero-mark{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;font:900 36px/1 system-ui;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18)}
.help-search-panel{display:flex;align-items:center;gap:18px;justify-content:space-between;padding:18px 20px}.help-search-box{display:flex;align-items:center;gap:10px;flex:1;max-width:760px;border:1px solid #cad9e4;border-radius:14px;background:#fff;padding:0 14px}.help-search-box span{color:#0b7eae;font-size:20px}.help-search-box input{border:0!important;box-shadow:none!important;background:transparent!important;min-height:48px;width:100%;outline:0}.help-quick{display:flex;gap:8px;flex-wrap:wrap}.help-quick button{border:1px solid #d6e2ea;background:#f5f9fb;border-radius:999px;padding:8px 12px;font-weight:800;color:#244456;cursor:pointer}.help-quick button:hover{background:#e8f5fb;color:#0678a8}
.help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.help-card{background:#fff;border:1px solid #d9e4ec;border-radius:18px;padding:22px;box-shadow:0 10px 28px rgba(17,53,75,.06)}.help-card[hidden]{display:none}.help-card-top{display:flex;gap:13px;align-items:flex-start}.help-card-icon{width:42px;height:42px;flex:0 0 42px;border-radius:12px;display:grid;place-items:center;font-weight:900;color:#087eb0;background:#e7f5fb}.help-card h3{margin:1px 0 3px;font-size:18px}.help-card small{color:#688093}.help-card p{color:#506879;line-height:1.65;margin:16px 0}.help-card ol{margin:0;padding-left:20px;color:#1d3544}.help-card li{padding:4px 0;line-height:1.5}.help-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px;background:#fff;border:1px dashed #cddde7;border-radius:18px;color:#506879}.help-empty strong{font-size:18px;color:#18384a;margin-bottom:5px}
@media(max-width:1100px){.help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.help-search-panel{align-items:flex-start;flex-direction:column}.help-search-box{max-width:none;width:100%}}
@media(max-width:680px){.help-grid{grid-template-columns:1fr}.help-hero{padding:24px 22px}.help-hero h2{font-size:26px}.help-hero-mark{display:none}}

/* v62 custom roles & permissions */
.roles-enterprise-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:22px;margin-bottom:22px}.role-directory{display:grid;gap:10px}.role-directory-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--line,#dbe6ef);border-radius:14px;text-decoration:none;color:inherit;background:#fff;transition:.18s ease}.role-directory-row:hover,.role-directory-row.active{border-color:#70bde3;box-shadow:0 8px 25px rgba(15,79,111,.08);transform:translateY(-1px)}.role-avatar{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#e9f6fc;color:#057bb5;font-weight:800}.role-dir-copy{display:grid;gap:2px}.role-dir-copy small{color:#678094}.role-kind{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;letter-spacing:.03em;background:#eef4f7;color:#526878}.role-kind.custom{background:#ecfdf5;color:#087a55}.role-kind.system{background:#eff6ff;color:#24599e}.role-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.role-card{min-width:0}.role-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:14px;border-bottom:1px solid #e3ebf1;margin-bottom:16px}.role-name-form{margin-bottom:14px}.inline-role-edit{display:flex;gap:9px}.inline-role-edit input{flex:1}.permission-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:13px}.permission-toolbar .permission-count{margin-left:auto}.permission-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.permission-group{border:1px solid #dce7ef;border-radius:14px;padding:10px 12px 12px;background:#fbfdff}.permission-group legend{padding:0 7px;font-size:12px;font-weight:800;color:#0b77ad;letter-spacing:.06em;text-transform:uppercase}.permission-check{display:grid!important;grid-template-columns:18px minmax(0,1fr);column-gap:8px;row-gap:1px;align-items:start;padding:7px 4px!important;margin:0!important;border-bottom:1px solid #edf2f5}.permission-check:last-child{border-bottom:0}.permission-check input{margin-top:2px}.permission-check span{font-weight:650}.permission-check code{grid-column:2;color:#8092a0;font-size:10px;background:transparent;padding:0}.role-actions{display:flex;justify-content:flex-end;margin-top:15px}.role-delete-form{padding-top:12px;margin-top:12px;border-top:1px solid #edf1f4}.btn.tiny{min-height:32px;padding:6px 10px;font-size:12px}.role-create-card{align-self:start;position:sticky;top:92px}@media(max-width:1100px){.roles-enterprise-layout,.role-permission-grid{grid-template-columns:1fr}.role-create-card{position:static}.permission-groups{grid-template-columns:1fr}}@media(max-width:640px){.role-directory-row{grid-template-columns:42px 1fr}.role-kind{grid-column:2;justify-self:start}.inline-role-edit{flex-direction:column}.permission-toolbar .permission-count{width:100%;margin-left:0}}

/* v63 - Enterprise access governance and module controls */
.access-governance-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}.hero-metrics{display:flex;gap:12px;flex-wrap:wrap}.hero-metrics>span{min-width:92px;padding:12px 16px;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(255,255,255,.08);display:grid;gap:1px;text-align:center}.hero-metrics b{font-size:22px}.hero-metrics small{font-size:11px;opacity:.78;text-transform:uppercase;letter-spacing:.06em}.access-console{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:22px;margin:22px 0}.access-role-rail,.access-role-editor{min-width:0}.access-panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid #e5edf3;margin-bottom:14px}.access-panel-title h2,.role-editor-head h2{margin:3px 0 0}.soft-count{display:grid;place-items:center;min-width:34px;height:30px;border-radius:999px;background:#eef6fa;color:#176b91;font-weight:800;font-size:12px}.enterprise-role-directory{max-height:580px;overflow:auto;padding-right:3px}.enterprise-role-directory .role-directory-row{padding:12px;border-radius:12px}.enterprise-role-directory .role-directory-row.active{background:#f2f9fd;border-color:#5eb6df;box-shadow:inset 3px 0 0 #0a8cc6,0 8px 24px rgba(13,82,116,.07)}.role-create-inline{margin-top:18px;padding-top:18px;border-top:1px solid #e5edf3}.role-create-inline h3{margin:3px 0 5px}.role-create-inline p{margin:0 0 14px;color:#687e8e;font-size:13px}.role-create-form{display:grid;gap:12px}.role-create-form label{margin:0}.role-create-form label>span,.enterprise-inline-edit label>span{display:block;margin-bottom:6px;font-size:12px;font-weight:750;color:#4c6272}.role-create-form .btn{justify-self:start;min-width:128px}.role-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid #e5edf3;margin-bottom:18px}.role-editor-identity{display:flex;align-items:center;gap:14px;min-width:0}.role-editor-identity p{margin:4px 0 0;color:#6c8090}.role-avatar-lg{width:52px;height:52px;border-radius:15px;font-size:15px;flex:0 0 auto}.access-protected-state{display:flex;gap:13px;align-items:flex-start;padding:18px;border:1px solid #cce9dc;background:#f1fbf6;border-radius:14px;color:#1b6144}.access-protected-state .shield-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#d8f4e6;color:#117a4f;font-weight:900}.access-protected-state p{margin:4px 0 0;color:#4f7161}.enterprise-inline-edit{padding:14px;border:1px solid #e2eaf0;border-radius:13px;background:#fbfdff;margin-bottom:16px}.permission-commandbar{position:sticky;top:78px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 15px;margin:0 0 16px;background:rgba(255,255,255,.96);backdrop-filter:blur(9px);border:1px solid #dfe9f0;border-radius:14px;box-shadow:0 8px 22px rgba(19,61,82,.06)}.permission-commandbar>div:first-child{display:flex;align-items:center;gap:10px}.permission-commandbar .permission-count{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eef5f8;color:#607786;font-size:11px;font-weight:700}.permission-command-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn.subtle{background:#f4f8fa;border:1px solid #dce7ee;color:#183d51;box-shadow:none}.btn.subtle:hover{background:#eaf3f7}.enterprise-permission-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.enterprise-permission-group{padding:13px 14px 8px;background:#fff;border-radius:14px;border:1px solid #dfe8ee}.enterprise-permission-group legend{padding:0 7px;color:#326276;font-size:11px}.enterprise-permission-check{grid-template-columns:20px minmax(0,1fr)!important;padding:9px 3px!important;align-items:center!important}.enterprise-permission-check input{width:17px;height:17px;margin:0;accent-color:#087fb7}.permission-copy{display:grid;gap:2px}.permission-copy b{font-size:13px;color:#17384a}.permission-copy small{font-size:10px;color:#8294a0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.danger-zone{margin-top:20px;padding:16px 18px;border:1px solid #f4d4d1;border-radius:14px;background:#fffafa;display:flex;align-items:center;justify-content:space-between;gap:18px}.danger-zone p{margin:3px 0 0;color:#875e59;font-size:12px}.btn.danger-outline{background:#fff;border:1px solid #e6a6a0;color:#b7352d;box-shadow:none}.btn.danger-outline:hover{background:#fff2f1;border-color:#d97971}.module-governance-panel{margin-top:22px}.module-governance-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #e4ecf2;margin-bottom:18px}.module-governance-head h2{margin:3px 0 6px}.module-governance-head p{max-width:820px;margin:0;color:#647b8b}.security-chip{display:inline-flex;align-items:center;white-space:nowrap;padding:7px 11px;border-radius:999px;background:#fff4df;color:#946014;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.module-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.module-toggle-card{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px;border:1px solid #dce7ed;border-radius:14px;background:#fff;cursor:pointer;transition:.18s ease}.module-toggle-card:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(19,61,82,.07)}.module-toggle-card.enabled{border-color:#bee6d1;background:#fbfffd}.module-toggle-card.disabled{background:#f8fafb;opacity:.8}.module-state-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#e9f7ef;color:#148252;font-weight:900}.module-toggle-card.disabled .module-state-icon{background:#eef1f3;color:#82909a}.module-toggle-copy{display:grid;gap:3px}.module-toggle-copy b{font-size:13px;color:#173849}.module-toggle-copy small{font-size:11px;line-height:1.35;color:#718695}.switch-control{position:relative;width:42px;height:24px;display:block}.switch-control input{position:absolute;opacity:0;pointer-events:none}.switch-control i{position:absolute;inset:0;border-radius:999px;background:#cad6dc;transition:.2s}.switch-control i:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:.2s}.switch-control input:checked+i{background:#13a26b}.switch-control input:checked+i:before{transform:translateX(18px)}.module-governance-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;margin-top:18px;border-top:1px solid #e5edf2}.governance-note{font-size:12px;color:#687d8b}.module-governance-actions .btn{min-width:180px}.role-kind{white-space:nowrap}
@media(max-width:1250px){.module-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.access-console{grid-template-columns:320px minmax(0,1fr)}.enterprise-permission-groups{grid-template-columns:1fr}}
@media(max-width:960px){.access-console{grid-template-columns:1fr}.enterprise-role-directory{max-height:none}.permission-commandbar{position:static}.module-toggle-grid{grid-template-columns:1fr}.access-governance-hero,.module-governance-head,.module-governance-actions{align-items:stretch;flex-direction:column}.module-governance-actions .btn{align-self:flex-start}.security-chip{align-self:flex-start}}
@media(max-width:640px){.permission-commandbar,.role-editor-head,.danger-zone{align-items:stretch;flex-direction:column}.permission-command-actions{display:grid;grid-template-columns:1fr 1fr}.permission-command-actions .btn.primary{grid-column:1/-1}.role-editor-identity{align-items:flex-start}.module-toggle-card{grid-template-columns:34px 1fr auto}}

/* v64 - split access governance workspace */
.governance-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px}.governance-tabs>a{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:15px 17px;border:1px solid #dbe6ee;border-radius:15px;background:#fff;text-decoration:none;color:#17384a;box-shadow:0 5px 18px rgba(18,61,82,.04);transition:.18s ease}.governance-tabs>a:hover{transform:translateY(-1px);border-color:#9ccde4}.governance-tabs>a.active{background:#0d3e58;border-color:#0d3e58;color:#fff;box-shadow:0 10px 24px rgba(11,54,77,.16)}.governance-tabs>a>span{grid-row:1/3;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#eaf5fa;color:#137ba8;font-weight:900;font-size:11px}.governance-tabs>a.active>span{background:rgba(255,255,255,.14);color:#fff}.governance-tabs b{font-size:14px}.governance-tabs small{font-size:11px;color:#708694;margin-top:2px}.governance-tabs>a.active small{color:rgba(255,255,255,.72)}
.governance-page-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;margin-bottom:22px;border-radius:18px;background:linear-gradient(120deg,#0b3349,#116b8e);color:#fff;box-shadow:0 12px 30px rgba(10,51,73,.13)}.governance-page-hero h2{margin:5px 0 7px;font-size:27px}.governance-page-hero p{margin:0;max-width:800px;color:rgba(255,255,255,.82)}.governance-page-hero .eyebrow{color:#67d6ff}.governance-kpis{display:flex;gap:10px;flex-wrap:wrap}.governance-kpis span{min-width:112px;padding:12px 14px;border-radius:13px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);display:grid;text-align:center}.governance-kpis b{font-size:21px}.governance-kpis small{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:rgba(255,255,255,.72)}
.governance-workspace{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:22px;align-items:start}.governance-role-list,.governance-editor{min-width:0}.governance-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:15px;margin-bottom:14px;border-bottom:1px solid #e4ecf1}.governance-section-head h3{margin:4px 0 0;font-size:19px}.governance-role-items{display:grid;gap:10px}.governance-role-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px;border:1px solid #dfe8ee;border-radius:13px;background:#fff;text-decoration:none;color:inherit;transition:.18s ease}.governance-role-item:hover{border-color:#8fc8e2;box-shadow:0 7px 20px rgba(16,75,103,.07)}.governance-role-item.active{background:#f0f8fc;border-color:#54acd2;box-shadow:inset 3px 0 0 #0b8cc6}.governance-role-item>span:nth-child(2){display:grid;gap:2px}.governance-role-item small{font-size:11px;color:#708493}.governance-role-item em{font-style:normal;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:5px 8px;border-radius:999px;background:#edf3f6;color:#587080}.governance-role-item.active em{background:#dff3fb;color:#076c99}.governance-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid #e5edf2;margin-bottom:18px}.governance-editor-head h2{margin:4px 0}.governance-editor-head p{margin:0;color:#718492}.custom-role-create-card{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(420px,1.5fr);gap:24px;align-items:end;margin-bottom:22px}.custom-role-create-copy h3{margin:4px 0 6px}.custom-role-create-copy p{margin:0;color:#6b8190}.custom-role-create-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.custom-role-create-form label{margin:0}.custom-role-create-form label>span{display:block;margin-bottom:6px;font-size:12px;font-weight:800;color:#4f6574}.custom-role-create-form .btn{height:44px;white-space:nowrap}.empty-state.compact{padding:22px 12px}.module-governance-panel{margin-top:0}
@media(max-width:1050px){.governance-workspace{grid-template-columns:1fr}.custom-role-create-card{grid-template-columns:1fr}.governance-role-items{grid-template-columns:repeat(2,minmax(0,1fr))}.governance-page-hero{align-items:flex-start;flex-direction:column}.governance-kpis{width:100%}.governance-kpis span{flex:1}}
@media(max-width:760px){.governance-tabs{grid-template-columns:1fr}.governance-role-items{grid-template-columns:1fr}.custom-role-create-form{grid-template-columns:1fr}.custom-role-create-form .btn{justify-self:start}.governance-role-item{grid-template-columns:42px minmax(0,1fr)}.governance-role-item em{grid-column:2;justify-self:start}.governance-page-hero{padding:20px}.governance-kpis{display:grid;grid-template-columns:1fr 1fr}.permission-commandbar{position:static}}

/* v66 enterprise hiring interview scheduler */
.interview-console-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 30px;margin:0 0 18px;border-radius:22px;background:linear-gradient(135deg,#082f49,#0b6f91);color:#fff;box-shadow:0 18px 44px rgba(8,47,73,.13)}
.interview-console-hero h2{margin:5px 0 7px;font-size:30px}.interview-console-hero p{margin:0;max-width:760px;color:rgba(255,255,255,.8)}
.interview-console-hero .eyebrow{color:#78d6ff}.interview-health{min-width:220px;display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.15);border-radius:15px;background:rgba(255,255,255,.08)}
.interview-health-dot{width:11px;height:11px;border-radius:50%;background:#f0b429;box-shadow:0 0 0 5px rgba(240,180,41,.13)}.interview-health-dot.ok{background:#33c48d;box-shadow:0 0 0 5px rgba(51,196,141,.14)}
.interview-health b,.interview-health small{display:block}.interview-health small{margin-top:3px;color:rgba(255,255,255,.7)}
.interview-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:20px;align-items:start}.interview-list-panel,.interview-editor{overflow:visible}
.interview-list{display:grid;gap:12px}.interview-card{display:grid;grid-template-columns:86px minmax(0,1fr);border:1px solid #dbe6ed;border-radius:17px;background:#fff;overflow:hidden;transition:.18s ease}.interview-card:hover,.interview-card.selected{border-color:#8fc8e2;box-shadow:0 10px 28px rgba(25,80,105,.08)}
.interview-date{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 10px;background:#f1f8fb;border-right:1px solid #dbe6ed;text-align:center}.interview-date strong{font-size:28px;line-height:1;color:#0b6f91}.interview-date span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#587488;margin-top:4px}.interview-date small{margin-top:9px;color:#60798a;font-size:11px;font-weight:700}
.interview-main{padding:17px 18px}.interview-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.interview-title-row h3{margin:0 0 3px;font-size:17px}.interview-title-row p{margin:0;color:var(--muted);font-size:13px}.interview-meta{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.interview-meta span{font-size:11px;padding:5px 8px;border-radius:999px;background:#f3f7f9;color:#526d7e}.interview-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.interview-actions form{margin:0}
.interview-provider-note{display:flex;flex-direction:column;gap:3px;margin:2px 0 14px;padding:12px 14px;border-radius:12px;background:#edf8fd;border:1px solid #cbe9f6;color:#24586e}.interview-provider-note b{font-size:13px}.interview-provider-note span{font-size:12px;line-height:1.45}
.interview-email-check{display:flex!important;align-items:flex-start!important;gap:10px!important;padding:13px 14px;border:1px solid #d8e6ee;border-radius:12px;background:#fbfdfe}.interview-email-check input{margin-top:3px}.interview-email-check span{display:block}.interview-email-check b,.interview-email-check small{display:block}.interview-email-check small{margin-top:4px;color:var(--muted);font-weight:500;line-height:1.4}.interview-savebar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}.interview-delete{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
@media(max-width:1050px){.interview-layout{grid-template-columns:1fr}.interview-editor{order:-1}}@media(max-width:680px){.interview-console-hero{align-items:flex-start;flex-direction:column;padding:22px}.interview-health{width:100%;min-width:0}.interview-card{grid-template-columns:70px minmax(0,1fr)}.interview-title-row{flex-direction:column}.interview-actions .btn,.interview-actions form{width:100%}.interview-actions form .btn{width:100%}}
/* v67 Google OAuth setup */
.oauth-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 18px}.oauth-status{border:1px solid #d9e4ec;border-radius:12px;padding:14px;background:#f8fbfd;display:flex;flex-direction:column;gap:5px}.oauth-status b{font-size:13px}.oauth-status span{font-size:12px;color:#61768a}.oauth-status.ok{border-color:#bce8cd;background:#f1fbf5}.oauth-status.ok span{color:#147a42}.oauth-status.warn{border-color:#f1d7a5;background:#fffaf0}.oauth-upload-card{margin:16px 0;padding:16px;border:1px dashed #b8cad8;border-radius:14px;background:#fbfdff;display:grid;gap:12px}.oauth-upload-card input[type=file]{padding:12px;border:1px solid #d7e2ea;border-radius:10px;background:white}.oauth-callback-card{margin:16px 0;padding:16px;border-radius:14px;background:#0d2e43;color:#fff}.oauth-callback-card code{display:block;margin:10px 0;padding:10px;border-radius:9px;background:rgba(255,255,255,.11);overflow-wrap:anywhere;color:#dff4ff}.oauth-good{color:#8ff0b5}.oauth-warning{color:#ffd58b}.oauth-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0}.oauth-actions form{margin:0}.oauth-manual{margin:12px 0;border:1px solid #dce6ed;border-radius:12px;padding:12px;background:#fafcfd}.oauth-manual summary{cursor:pointer;font-weight:700}.danger-soft{background:#fff3f2!important;border-color:#f1c5c1!important;color:#b42318!important}@media(max-width:800px){.oauth-status-grid{grid-template-columns:1fr}}

.oauth-uri-meta{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.15);display:grid;gap:7px}.oauth-uri-meta span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#9fc5d8}.oauth-uri-meta code{margin:0;background:rgba(255,255,255,.08)}

/* v69 enterprise settings workspace - source mirror */
.settings-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:0 0 22px;padding:28px 30px;border-radius:20px;background:linear-gradient(135deg,#082f49 0%,#0b5875 58%,#0b87af 100%);color:#fff;box-shadow:0 18px 45px rgba(8,47,73,.13)}
.settings-hero h2{font-size:30px;margin:7px 0 8px;color:#fff}.settings-hero p{max-width:760px;margin:0;color:#dceff7;line-height:1.65}.settings-hero .eyebrow{color:#74d4ff}.settings-health{display:grid;grid-template-columns:repeat(3,minmax(125px,1fr));gap:9px;min-width:430px}.settings-health>div{position:relative;padding:14px 14px 13px 34px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.08);border-radius:13px}.settings-health b,.settings-health small{display:block}.settings-health small{font-size:10px;color:#cde4ee}.health-dot{position:absolute;left:14px;top:17px;width:9px;height:9px;border-radius:50%;background:#f59e0b}.health-dot.ok{background:#2dd4bf}.settings-workspace{display:grid;grid-template-columns:270px minmax(0,1fr);gap:22px;align-items:start}.settings-nav-panel{position:sticky;top:92px;padding:14px;border:1px solid #dce6ed;border-radius:18px;background:#fff}.settings-nav-head{padding:10px 11px 15px;border-bottom:1px solid #e8eef2;margin-bottom:9px}.settings-tabs{display:grid!important;gap:5px!important;margin:0!important}.settings-tabs a{display:grid!important;grid-template-columns:38px 1fr;align-items:center;gap:10px;padding:11px!important;border:0!important;border-radius:12px!important;background:transparent!important;color:#17384c!important}.settings-tabs a.active{background:#edf7fb!important;color:#076d9d!important;box-shadow:inset 3px 0 0 #0b8fc4}.settings-tabs a b,.settings-tabs a small{display:block}.settings-tabs a small{font-size:9.5px;color:#718697}.settings-nav-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#eef6fa;color:#0b7fac}.settings-nav-note{margin-top:12px;padding:12px;border-radius:12px;background:#f7fafc;border:1px solid #e3ebf0}.settings-content{min-width:0}.settings-section-head{display:flex;justify-content:space-between;gap:20px;padding:2px 2px 17px}.settings-section-head p{color:#6b8190}.settings-section-badge{padding:7px 10px;border-radius:999px;background:#edf7fb;color:#0a719c;font-size:10px;font-weight:850}.settings-workspace .settings-grid{grid-template-columns:minmax(0,1.5fr) minmax(265px,.5fr);gap:18px}.settings-workspace .panel{border-radius:17px}.settings-workspace .editor{padding:26px}.settings-workspace .settings-tip{top:92px;border-top:4px solid #0b8fc4}@media(max-width:900px){.settings-hero{flex-direction:column}.settings-health{width:100%;min-width:0}.settings-workspace{grid-template-columns:1fr}.settings-nav-panel{position:static}.settings-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:620px){.settings-tabs,.settings-health{grid-template-columns:1fr!important}.settings-workspace .editor{padding:19px}}

/* v71 inner-page spacing controls */
.design-spacing-block{margin:8px 0 22px;padding:20px;border:1px solid #dce7ed;border-radius:16px;background:linear-gradient(180deg,#fbfdfe,#f6fafc)}.design-spacing-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.design-spacing-head h3{margin:5px 0 6px;font-size:18px}.design-spacing-head p{margin:0;max-width:660px}.spacing-presets{display:flex;gap:8px;flex-wrap:wrap}.design-spacing-block label small{display:block;margin-top:6px;color:#78909e;font-size:11px}@media(max-width:760px){.design-spacing-head{flex-direction:column}.spacing-presets{width:100%}}


/* v76 fee payment terms */
.fee-terms-editor{overflow:visible}.fee-term-context{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-bottom:16px}.fee-term-context label,.fee-term-selector label{display:grid;gap:7px;font-weight:700;font-size:13px}.fee-term-context select,.fee-term-selector select{width:100%;padding:12px;border:1px solid #cbd8df;border-radius:10px;background:#fff;font:inherit}.fee-term-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:0 0 16px}.fee-term-summary article,.fee-term-progress-grid article{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fbfdfe;display:flex;align-items:center;justify-content:space-between;gap:10px}.fee-term-summary small,.fee-term-progress-grid small{display:block;color:var(--muted);font-weight:500;margin-top:3px}.term-preset-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#f7fafc;margin-bottom:12px}.term-preset-bar>span:first-child{font-weight:800;margin-right:4px}.term-total{margin-left:auto;font-weight:900;color:#16835a}.term-total.bad{color:#c93535}.fee-term-rows{display:grid;gap:10px}.fee-term-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(110px,.55fr) minmax(160px,.8fr) auto;gap:12px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fbfdfe}.fee-term-row label{margin:0}.fee-term-selector{margin:0 0 14px}.fee-term-progress-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:9px;margin-bottom:16px}.fee-term-progress-grid article{display:block}.fee-term-progress-grid article.active{border-color:#39a5d3;background:#eff9fd;box-shadow:0 0 0 2px #dff4fb}.fee-term-progress-grid article span{display:block;font-weight:800;font-size:12px;color:#446474}.fee-term-progress-grid article strong{display:block;font-size:18px;margin:4px 0}.fee-term-progress-grid article small{font-size:11px}@media(max-width:760px){.fee-term-context,.fee-term-row{grid-template-columns:1fr}.term-total{margin-left:0;width:100%}}

/* v78 document watermark controls */
.document-watermark-settings{display:grid;gap:16px;margin:12px 0 4px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#f8fbfd}.document-watermark-settings input[type=range]{width:100%;accent-color:#087fb8;margin:10px 0 3px}.watermark-strength-value{float:right;font-weight:900;color:#087fb8}.watermark-preview{position:relative;min-height:112px;overflow:hidden;border:1px solid #d5e2e9;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;text-align:center}.watermark-preview>span{position:absolute;font:900 clamp(28px,4vw,54px)/1 Georgia,serif;white-space:nowrap;transform:rotate(-18deg);color:#183b52;pointer-events:none}.watermark-preview>div{position:relative;z-index:1;background:#fffffff0;border:1px solid #e2eaef;border-radius:10px;padding:10px 14px;box-shadow:0 8px 24px #18384c10}.watermark-preview small{display:block;color:var(--muted);margin-top:3px}


/* v79 — Enterprise reports & staff directory refinements */
.report-builder-enterprise{display:grid;grid-template-columns:minmax(210px,1.05fr) minmax(210px,1fr) minmax(170px,.78fr) minmax(210px,.9fr) minmax(190px,.72fr);gap:18px 16px;align-items:end;padding:18px;border:1px solid #dfe9ef;border-radius:16px;background:linear-gradient(180deg,#fbfdfe,#f7fafc)}
.report-builder-enterprise .report-field{display:grid;grid-template-rows:auto 46px;gap:8px;min-width:0;margin:0}
.report-builder-enterprise .report-field>span{font-size:11px;font-weight:850;letter-spacing:.055em;text-transform:uppercase;color:#526d7d;line-height:1}
.report-builder-enterprise select,.report-builder-enterprise input{width:100%;min-width:0;height:46px;padding:0 13px;border:1px solid #cbdbe4;border-radius:11px;background:#fff;color:#173141;font:inherit;box-shadow:0 1px 2px rgba(15,54,74,.02)}
.report-builder-enterprise select:focus,.report-builder-enterprise input:focus{outline:none;border-color:#58aeda;box-shadow:0 0 0 3px rgba(33,145,196,.12)}
.report-builder-enterprise .report-custom-dates{grid-column:4 / span 1;display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}
.report-builder-enterprise .report-custom-dates[hidden]{display:none!important}
.report-generate-wrap{display:flex;align-items:end;height:100%}
.report-generate-btn{height:46px;width:100%;min-width:170px;border-radius:11px;box-shadow:0 8px 20px rgba(8,127,184,.16)}
.report-context-note{margin-top:14px;padding:10px 12px;border-radius:11px;background:#f7fafc;border:1px solid #e6edf2}
.staff-list-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:22px 0 12px;padding-top:18px;border-top:1px solid #e5edf2}
.staff-list-toolbar h3{margin:3px 0 0;font-size:18px}
.staff-search-wrap{display:flex;align-items:center;gap:9px;min-width:min(520px,48%);padding:7px 9px 7px 12px;border:1px solid #d7e4eb;border-radius:13px;background:#fbfdfe}
.staff-search-icon{font-size:18px;color:#4e7c92;line-height:1}
.enterprise-search{flex:1!important;width:auto!important;min-width:0;border:0!important;background:transparent!important;box-shadow:none!important;padding:6px 2px!important;outline:0!important}
.staff-result-count{white-space:nowrap;padding:5px 8px;border-radius:999px;background:#eaf4f8;color:#466779;font-size:11px;font-weight:800}
.enterprise-staff-table th{font-size:10px;text-transform:uppercase;letter-spacing:.055em;color:#526a79;background:#f7fafc}
.staff-table-identity{display:flex;align-items:center;gap:10px;min-width:210px}
.staff-table-identity>img,.staff-table-identity>span{width:38px;height:38px;flex:0 0 38px;border-radius:11px;object-fit:cover;display:grid;place-items:center;background:linear-gradient(135deg,#0d9ed3,#286ee8);color:#fff;font-weight:900}
.staff-table-identity small{display:block;margin-top:3px;color:var(--muted)}
.staff-empty-search{text-align:center;padding:26px;color:#718593;border:1px dashed #d5e1e8;border-radius:13px;background:#fafcfd;margin-top:12px}
.staff-profile-searchbar{display:flex;align-items:center;gap:9px;width:min(620px,100%);padding:8px 12px;margin:18px 0;border:1px solid #d7e4eb;border-radius:13px;background:#f8fbfd}
.staff-directory-avatar{overflow:hidden}
.staff-directory-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.staff-directory-card[hidden],.staff-account-row[hidden]{display:none!important}
@media(max-width:1280px){.report-builder-enterprise{grid-template-columns:repeat(3,minmax(0,1fr))}.report-builder-enterprise .report-custom-dates{grid-column:auto}.report-generate-wrap{grid-column:auto}}
@media(max-width:900px){.report-builder-enterprise{grid-template-columns:1fr 1fr}.staff-list-toolbar{align-items:stretch;flex-direction:column}.staff-search-wrap{min-width:0;width:100%}}
@media(max-width:620px){.report-builder-enterprise{grid-template-columns:1fr;padding:14px}.report-builder-enterprise .report-custom-dates{grid-template-columns:1fr}.report-generate-btn{width:100%}.staff-profile-searchbar{width:100%}.staff-table-identity{min-width:180px}}

.self-photo-control{display:grid;grid-template-columns:74px minmax(0,1fr) minmax(300px,.8fr);gap:16px;align-items:center;padding:15px;margin:4px 0 18px;border:1px solid #dce7ed;border-radius:14px;background:#f8fbfd}.self-photo-preview{width:68px;height:68px;border-radius:16px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#0d9ed3,#286ee8);color:#fff;font-size:22px;font-weight:900}.self-photo-preview img{width:100%;height:100%;object-fit:cover}.self-photo-control p{margin:4px 0 0;font-size:12px}.self-photo-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center}.self-photo-form input[type=file]{min-width:0;width:100%;padding:9px;border:1px solid #cad9e2;border-radius:10px;background:#fff}.self-photo-form .btn{white-space:nowrap}@media(max-width:900px){.self-photo-control{grid-template-columns:68px 1fr}.self-photo-form{grid-column:1/-1}}@media(max-width:560px){.self-photo-control{grid-template-columns:1fr;text-align:center}.self-photo-preview{margin:auto}.self-photo-form{grid-template-columns:1fr}}

/* v80 organization hierarchy profile photography */
.org-node{min-height:168px;padding-top:18px}
.org-node-avatar{width:68px;height:68px;margin:0 auto 10px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#e9f5fb,#d8ebf5);border:3px solid #fff;box-shadow:0 5px 16px rgba(10,45,70,.14);font-size:24px;font-weight:900;color:#0b6f94}
.org-node-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.org-level.depth-0>.org-node .org-node-avatar{width:82px;height:82px;border:4px solid rgba(255,255,255,.9);background:#fff;color:#0d6e91;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.org-node-branch{font-size:10px!important;opacity:.86}
.org-unassigned-person{display:flex;align-items:center;gap:10px}
.org-unassigned-avatar{width:40px;height:40px;flex:0 0 40px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#e7f4fa;color:#0c739a;font-weight:900}
.org-unassigned-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.org-unassigned-person>span:last-child{min-width:0}

/* v81: school-branded admin login */
.login-brand.login-brand-logo{width:76px;height:76px;border-radius:18px;background:#f8fbfd;border:1px solid #dbe7ed;padding:10px;overflow:hidden;box-shadow:0 10px 24px rgba(9,42,61,.08)}
.login-brand.login-brand-logo img{display:block;width:100%;height:100%;object-fit:contain}
.login-brand.login-brand-fallback{width:48px;height:48px;border-radius:14px}

/* v85 enterprise dashboard command centre */
.enterprise-main:has(.dashboard-command){background:linear-gradient(180deg,#f6f9fc 0,#f2f6f9 100%)}
.dashboard-command{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:28px;align-items:center;padding:28px 30px;margin-bottom:18px;border:1px solid #dbe6ed!important;border-radius:20px!important;background:linear-gradient(118deg,#0a3149 0%,#0b506e 62%,#0d6f8f 100%)!important;box-shadow:0 18px 42px rgba(10,49,73,.16)!important}
.dashboard-command:after{content:"";position:absolute;right:-90px;top:-145px;width:360px;height:360px;border-radius:50%;border:52px solid rgba(255,255,255,.045);pointer-events:none}
.dashboard-command-copy,.dashboard-command-side{position:relative;z-index:1}
.dashboard-command-kicker{display:flex;align-items:center;gap:9px;margin-bottom:12px;color:#a9d7e8;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.command-dot{width:7px;height:7px;border-radius:50%;background:#5de0b1;box-shadow:0 0 0 4px rgba(93,224,177,.12)}.command-scope{padding-left:10px;border-left:1px solid rgba(255,255,255,.18);color:#d6eef7}
.dashboard-command h2{margin:0 0 7px!important;font-size:30px!important;line-height:1.15;letter-spacing:-.025em}.dashboard-command p{max-width:700px;color:#c8e3ee!important;font-size:14px;line-height:1.6}
.dashboard-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.dashboard-quick-actions a{display:inline-flex;align-items:center;min-height:34px;padding:8px 12px;border-radius:9px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.15);color:#fff;font-size:11px;font-weight:800;transition:.18s}.dashboard-quick-actions a:hover{background:#fff;color:#0a4966;transform:translateY(-1px)}
.dashboard-command-side{display:grid;justify-items:end;gap:12px}.dashboard-command .hero-context{display:grid;grid-template-columns:minmax(130px,1fr) minmax(170px,1.2fr) 44px;gap:9px;width:100%;max-width:470px}.dashboard-command .hero-year,.dashboard-command .hero-date{min-width:0!important;min-height:66px!important;width:auto!important;height:auto!important;padding:12px 14px!important;border-radius:13px!important;background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.14)!important;text-align:left!important;box-shadow:none!important}.dashboard-command .hero-year small,.dashboard-command .hero-date small{margin:0 0 4px!important;color:#a9d7e8!important;font-size:9px!important;letter-spacing:.11em}.dashboard-command .hero-year strong,.dashboard-command .hero-date strong{color:#fff!important;font-size:14px!important;white-space:nowrap}.dashboard-command .dashboard-customize-icon{align-self:stretch;width:44px!important;height:66px!important;padding:0!important;border-radius:13px!important;background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:none!important}.dashboard-command .dashboard-customize-icon:hover{background:#fff!important}.dashboard-command-status{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:#afd5e3;font-size:10px}.dashboard-command-status span:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#5de0b1;margin-right:6px}.dashboard-command-status b{color:#fff;font-size:10px}
.enterprise-main .metric-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 18px}.enterprise-main .metric-card{position:relative;overflow:hidden;min-height:104px;padding:16px 16px 15px;border-radius:16px;border:1px solid #dce6ec;background:#fff;box-shadow:0 7px 20px rgba(24,49,65,.055);transition:transform .18s,border-color .18s,box-shadow .18s}.enterprise-main .metric-card:hover{transform:translateY(-2px);border-color:#bed9e5;box-shadow:0 12px 28px rgba(24,49,65,.09)}.enterprise-main .metric-card:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:#dbeaf1}.enterprise-main .metric-card.accent{background:#fff;border-color:#dce6ec}.enterprise-main .metric-card.accent:after{background:#1395c8}.enterprise-main .metric-icon{width:38px;flex-basis:38px;height:38px;border-radius:11px;font-size:16px;background:#edf6fa;color:#0a83b8}.enterprise-main .metric-card small{font-size:11px;font-weight:700;color:#617888}.enterprise-main .metric-card strong{font-size:22px;letter-spacing:-.02em;margin:4px 0 2px;color:#102e40}.enterprise-main .metric-card em{font-size:10.5px;line-height:1.35;color:#7a8e9a}.enterprise-main .metric-people:after{background:#4f8ef7}.enterprise-main .metric-students:after{background:#26b786}.enterprise-main .metric-fees:after,.enterprise-main .metric-payroll:after{background:#e5a22b}.enterprise-main .metric-attendance:after{background:#8555d9}.enterprise-main .metric-enquiries:after{background:#e56e6e}
.enterprise-main .dashboard-calendar-row{grid-template-columns:minmax(0,1.62fr) minmax(330px,.58fr);gap:16px;margin:0 0 16px}.enterprise-main .panel.dashboard-panel,.enterprise-main .calendar-panel,.enterprise-main .leave-summary-panel{border-radius:18px;border:1px solid #dce6ec;box-shadow:0 8px 24px rgba(24,49,65,.055);padding:20px;background:#fff}.enterprise-main .panel-head{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #edf1f4}.enterprise-main .panel-head h2{font-size:18px;letter-spacing:-.015em}.enterprise-main .panel-head .eyebrow{font-size:9px;letter-spacing:.16em}.enterprise-main .panel-head a{font-size:11px;font-weight:800}.enterprise-main .calendar-grid{gap:5px}.enterprise-main .calendar-day{min-height:88px;border-radius:10px;padding:7px;background:#fbfdfe}.enterprise-main .calendar-day.today{background:#eff9fd;border-color:#59b6da}.enterprise-main .leave-stat-grid{gap:8px}.enterprise-main .leave-stat-grid article{padding:11px 12px;border-radius:11px;background:#f8fbfd}.enterprise-main .leave-stat-grid strong{font-size:19px}.enterprise-main .staff-month-table{max-height:300px}.enterprise-main .staff-month-table th,.enterprise-main .staff-month-table td{padding:9px 8px;font-size:11px}
.enterprise-main .dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.enterprise-main .dashboard-grid-wide{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr)}.enterprise-main .dashboard-grid>.panel{margin-bottom:0}.enterprise-main .bar-chart{gap:12px;margin-top:12px}.enterprise-main .donut-wrap{min-height:205px}.enterprise-main .donut{width:126px;height:126px}.enterprise-main .donut:before{inset:15px}.enterprise-main .donut strong{font-size:25px}.enterprise-main .attendance-chart{min-height:205px}.enterprise-main .activity-row{padding:10px 0}.enterprise-main .column-chart{height:235px;padding-top:14px}
.dashboard-customizer-panel{border-radius:20px 0 0 20px!important;box-shadow:-22px 0 60px rgba(9,42,61,.2)!important}.dashboard-widget-setting{border-radius:12px!important;background:#f8fbfd!important}.dashboard-widget-setting button{border-radius:8px!important}
@media(max-width:1450px){.enterprise-main .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-command{grid-template-columns:1fr auto}.dashboard-command-side{min-width:360px}}
@media(max-width:1100px){.dashboard-command{grid-template-columns:1fr}.dashboard-command-side{justify-items:start;min-width:0}.dashboard-command .hero-context{max-width:100%}.dashboard-command-status{justify-content:flex-start}.enterprise-main .dashboard-calendar-row,.enterprise-main .dashboard-grid,.enterprise-main .dashboard-grid-wide{grid-template-columns:1fr}}
@media(max-width:760px){.dashboard-command{padding:22px}.dashboard-command h2{font-size:25px!important}.dashboard-command .hero-context{grid-template-columns:1fr 44px}.dashboard-command .hero-date{display:none!important}.enterprise-main .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.enterprise-main .metric-card{min-height:98px}.dashboard-quick-actions{margin-top:14px}}
@media(max-width:520px){.enterprise-main .metric-grid{grid-template-columns:1fr}.dashboard-command .hero-context{grid-template-columns:1fr 44px}.dashboard-command-kicker{flex-wrap:wrap}.dashboard-command-status{display:none}}

/* v86 executive dashboard refinement */
.enterprise-main:has(.dashboard-command-v86){background:#f4f7fa}
.dashboard-command-v86{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:20px 22px!important;margin-bottom:16px!important;border:1px solid #d8e3ea!important;border-radius:14px!important;background:#fff!important;color:#102e40!important;box-shadow:0 5px 18px rgba(20,47,64,.045)!important;overflow:visible!important}
.dashboard-command-v86:after{display:none!important}.dashboard-v86-title{min-width:0}.dashboard-v86-title h2{margin:0 0 5px!important;font-size:24px!important;line-height:1.2!important;color:#102e40!important;letter-spacing:-.02em}.dashboard-v86-title span{display:block;color:#6d8290;font-size:12px;font-weight:650}.dashboard-v86-customize{flex:0 0 38px!important;width:38px!important;height:38px!important;padding:0!important;border-radius:9px!important;border:1px solid #cfdee6!important;background:#f8fbfd!important;color:#31576b!important;box-shadow:none!important}.dashboard-v86-customize:hover{background:#edf5f8!important;border-color:#a9c9d8!important;color:#0a78a7!important}.dashboard-v86-customize svg{width:17px;height:17px}
.enterprise-main .metric-grid-v86{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}.enterprise-main .metric-grid-v86 .metric-card{min-height:92px;padding:14px 14px;border-radius:12px;box-shadow:none}.enterprise-main .metric-grid-v86 .metric-icon{width:34px;flex-basis:34px;height:34px;border-radius:9px;font-size:14px}.enterprise-main .metric-grid-v86 .metric-card strong{font-size:20px}.enterprise-main .metric-grid-v86 .metric-card:after{height:2px}
.enterprise-main .dashboard-analytics-row{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}.analytics-panel{min-height:310px}.analytics-panel .panel-head{align-items:flex-start}.analytics-current{font-size:17px;color:#15394c;white-space:nowrap}.line-chart-shell{padding:6px 4px 0}.line-chart-svg{display:block;width:100%;height:190px;overflow:visible}.chart-axis{stroke:#d3dfe6;stroke-width:1}.chart-gridline{stroke:#e8eff3;stroke-width:1;stroke-dasharray:4 5}.chart-line{fill:none;stroke:#168fbd;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-point{fill:#fff;stroke:#168fbd;stroke-width:3}.chart-label-row{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-top:-2px}.chart-label-row span{text-align:center}.chart-label-row b{display:block;color:#173b4e;font-size:11px}.chart-label-row small{display:block;color:#81939e;font-size:9px;margin-top:2px;text-transform:uppercase;letter-spacing:.06em}.fee-trend-chart{height:205px;display:grid;grid-template-columns:repeat(6,minmax(46px,1fr));gap:12px;align-items:end;padding:12px 4px 0}.fee-trend-item{height:100%;display:grid;grid-template-rows:24px minmax(0,1fr) 18px;align-items:end;text-align:center}.fee-trend-value{font-size:9px;color:#758a96;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fee-trend-track{height:100%;display:flex;align-items:flex-end;background:linear-gradient(180deg,#f8fbfc,#eef4f7);border-radius:8px 8px 3px 3px;overflow:hidden}.fee-trend-track i{display:block;width:100%;min-height:3px;background:linear-gradient(180deg,#1b9bc4,#0e7199);border-radius:8px 8px 2px 2px}.fee-trend-item b{font-size:10px;color:#4c6675;text-transform:uppercase}.analytics-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #edf2f5;margin-top:12px;padding-top:12px;font-size:11px;color:#6e8390}.analytics-footer strong{font-size:13px;color:#17394b}
@media(max-width:1450px){.enterprise-main .metric-grid-v86{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.enterprise-main .dashboard-analytics-row{grid-template-columns:1fr}}
@media(max-width:760px){.dashboard-command-v86{padding:17px 18px!important}.dashboard-v86-title h2{font-size:21px!important}.dashboard-v86-title span{font-size:11px}.enterprise-main .metric-grid-v86{grid-template-columns:repeat(2,minmax(0,1fr))}.fee-trend-chart{gap:6px}.fee-trend-value{display:none}}
@media(max-width:520px){.enterprise-main .metric-grid-v86{grid-template-columns:1fr}.chart-label-row b{font-size:10px}}
.dashboard-v86-customize{border:0!important;background:transparent!important;border-radius:8px!important}.dashboard-v86-customize:hover{background:#edf5f8!important}

/* v87 Finance, Communications and MFA */
.erp-page-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px 30px;margin-bottom:18px;border-radius:20px;background:linear-gradient(135deg,#082f49,#0e7490);color:#fff;box-shadow:0 14px 34px rgba(8,47,73,.12)}
.erp-page-hero.compact{align-items:center}.erp-page-hero h2{margin:6px 0 8px;font-size:30px}.erp-page-hero p{margin:0;max-width:760px;color:rgba(255,255,255,.82)}.erp-page-hero .eyebrow{color:#67e8f9}
.erp-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px;padding:6px;background:#eef5f9;border:1px solid #dbe7ee;border-radius:14px}.erp-subnav a{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;color:#39566a;font-weight:700;text-decoration:none}.erp-subnav a.active{background:#fff;color:#075985;box-shadow:0 4px 14px rgba(15,55,75,.08)}
.finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.finance-kpis article{background:#fff;border:1px solid #dce8ef;border-radius:16px;padding:20px 22px;box-shadow:0 8px 24px rgba(15,45,65,.05)}.finance-kpis small{display:block;color:#71899a;font-weight:700;margin-bottom:8px}.finance-kpis strong{font-size:24px;color:#102f43}
.journal-line{display:grid;grid-template-columns:1.3fr 1fr .7fr .7fr;gap:8px;margin-bottom:9px}.journal-line input,.journal-line select{min-width:0}
.provider-health{display:grid;gap:8px;margin-top:18px}.channel-picker{display:flex;gap:10px;flex-wrap:wrap;border:1px solid #d8e6ed;border-radius:14px;padding:14px;margin:14px 0}.channel-picker legend{padding:0 8px;font-weight:800;color:#29485c}.channel-picker label{display:flex!important;align-items:center;gap:7px;padding:8px 11px;background:#f4f8fa;border-radius:10px;margin:0!important}.channel-picker input{width:auto!important}
.template-card{padding:16px 0;border-bottom:1px solid #e3edf2}.template-card b,.template-card small{display:block}.template-card small{color:#7290a3;margin-top:4px}.template-card p{margin:8px 0 0;color:#526d7e}.provider-block{padding:14px 16px;background:#f4f9fb;border:1px solid #dbe8ef;border-radius:14px}
.mfa-account-panel{margin-top:18px}.mfa-setup{display:grid;grid-template-columns:1.3fr .9fr;gap:22px;padding:18px;background:#f7fafc;border:1px solid #dce8ef;border-radius:14px}.mfa-setup code{display:block;font-size:18px;letter-spacing:2px;padding:12px;background:#fff;border:1px dashed #9fc4d5;border-radius:10px;margin:8px 0}.mfa-setup textarea{min-height:82px;font-size:11px}.recovery-codes{padding:18px;background:#fff8e8;border:1px solid #f1d28c;border-radius:14px;margin-bottom:18px}.recovery-codes>div{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.recovery-codes code{background:#fff;padding:9px;border-radius:8px;text-align:center;border:1px solid #ecd79e}
.notification-topbar{position:relative}.notification-centre{padding:0!important;overflow:hidden}.notification-row{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;padding:18px 20px;border-bottom:1px solid #e7eef2}.notification-row.unread{background:#f2f9fd}.notification-dot{width:9px;height:9px;border-radius:50%;background:#cbd7de;margin-top:6px}.notification-row.unread .notification-dot{background:#0ea5e9;box-shadow:0 0 0 4px rgba(14,165,233,.12)}.notification-row p{margin:5px 0 8px;color:#4c6879}.notification-row small{color:#8297a4}
.login-secondary{display:block;text-align:center;margin-top:13px;color:#0b7fad;font-weight:700}.settings-nav-icon{font-style:normal}
@media(max-width:1100px){.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-line{grid-template-columns:1fr 1fr}.mfa-setup{grid-template-columns:1fr}.recovery-codes>div{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.erp-page-hero{padding:22px;align-items:flex-start;flex-direction:column}.finance-kpis{grid-template-columns:1fr 1fr}.journal-line{grid-template-columns:1fr}.recovery-codes>div{grid-template-columns:1fr 1fr}.notification-row{grid-template-columns:auto 1fr}.notification-row .btn{grid-column:2}.channel-picker{display:grid;grid-template-columns:1fr 1fr}}
.enterprise-main:has(.dashboard-command){background:linear-gradient(180deg,#f6f9fc 0,#f2f6f9 100%)}
.dashboard-command{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:28px;align-items:center;padding:28px 30px;margin-bottom:18px;border:1px solid #dbe6ed!important;border-radius:20px!important;background:linear-gradient(118deg,#0a3149 0%,#0b506e 62%,#0d6f8f 100%)!important;box-shadow:0 18px 42px rgba(10,49,73,.16)!important}
.dashboard-command:after{content:"";position:absolute;right:-90px;top:-145px;width:360px;height:360px;border-radius:50%;border:52px solid rgba(255,255,255,.045);pointer-events:none}
.dashboard-command-copy,.dashboard-command-side{position:relative;z-index:1}
.dashboard-command-kicker{display:flex;align-items:center;gap:9px;margin-bottom:12px;color:#a9d7e8;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.command-dot{width:7px;height:7px;border-radius:50%;background:#5de0b1;box-shadow:0 0 0 4px rgba(93,224,177,.12)}.command-scope{padding-left:10px;border-left:1px solid rgba(255,255,255,.18);color:#d6eef7}
.dashboard-command h2{margin:0 0 7px!important;font-size:30px!important;line-height:1.15;letter-spacing:-.025em}.dashboard-command p{max-width:700px;color:#c8e3ee!important;font-size:14px;line-height:1.6}
.dashboard-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.dashboard-quick-actions a{display:inline-flex;align-items:center;min-height:34px;padding:8px 12px;border-radius:9px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.15);color:#fff;font-size:11px;font-weight:800;transition:.18s}.dashboard-quick-actions a:hover{background:#fff;color:#0a4966;transform:translateY(-1px)}
.dashboard-command-side{display:grid;justify-items:end;gap:12px}.dashboard-command .hero-context{display:grid;grid-template-columns:minmax(130px,1fr) minmax(170px,1.2fr) 44px;gap:9px;width:100%;max-width:470px}.dashboard-command .hero-year,.dashboard-command .hero-date{min-width:0!important;min-height:66px!important;width:auto!important;height:auto!important;padding:12px 14px!important;border-radius:13px!important;background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.14)!important;text-align:left!important;box-shadow:none!important}.dashboard-command .hero-year small,.dashboard-command .hero-date small{margin:0 0 4px!important;color:#a9d7e8!important;font-size:9px!important;letter-spacing:.11em}.dashboard-command .hero-year strong,.dashboard-command .hero-date strong{color:#fff!important;font-size:14px!important;white-space:nowrap}.dashboard-command .dashboard-customize-icon{align-self:stretch;width:44px!important;height:66px!important;padding:0!important;border-radius:13px!important;background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:none!important}.dashboard-command .dashboard-customize-icon:hover{background:#fff!important}.dashboard-command-status{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:#afd5e3;font-size:10px}.dashboard-command-status span:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#5de0b1;margin-right:6px}.dashboard-command-status b{color:#fff;font-size:10px}
.enterprise-main .metric-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 18px}.enterprise-main .metric-card{position:relative;overflow:hidden;min-height:104px;padding:16px 16px 15px;border-radius:16px;border:1px solid #dce6ec;background:#fff;box-shadow:0 7px 20px rgba(24,49,65,.055);transition:transform .18s,border-color .18s,box-shadow .18s}.enterprise-main .metric-card:hover{transform:translateY(-2px);border-color:#bed9e5;box-shadow:0 12px 28px rgba(24,49,65,.09)}.enterprise-main .metric-card:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:#dbeaf1}.enterprise-main .metric-card.accent{background:#fff;border-color:#dce6ec}.enterprise-main .metric-card.accent:after{background:#1395c8}.enterprise-main .metric-icon{width:38px;flex-basis:38px;height:38px;border-radius:11px;font-size:16px;background:#edf6fa;color:#0a83b8}.enterprise-main .metric-card small{font-size:11px;font-weight:700;color:#617888}.enterprise-main .metric-card strong{font-size:22px;letter-spacing:-.02em;margin:4px 0 2px;color:#102e40}.enterprise-main .metric-card em{font-size:10.5px;line-height:1.35;color:#7a8e9a}.enterprise-main .metric-people:after{background:#4f8ef7}.enterprise-main .metric-students:after{background:#26b786}.enterprise-main .metric-fees:after,.enterprise-main .metric-payroll:after{background:#e5a22b}.enterprise-main .metric-attendance:after{background:#8555d9}.enterprise-main .metric-enquiries:after{background:#e56e6e}
.enterprise-main .dashboard-calendar-row{grid-template-columns:minmax(0,1.62fr) minmax(330px,.58fr);gap:16px;margin:0 0 16px}.enterprise-main .panel.dashboard-panel,.enterprise-main .calendar-panel,.enterprise-main .leave-summary-panel{border-radius:18px;border:1px solid #dce6ec;box-shadow:0 8px 24px rgba(24,49,65,.055);padding:20px;background:#fff}.enterprise-main .panel-head{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #edf1f4}.enterprise-main .panel-head h2{font-size:18px;letter-spacing:-.015em}.enterprise-main .panel-head .eyebrow{font-size:9px;letter-spacing:.16em}.enterprise-main .panel-head a{font-size:11px;font-weight:800}.enterprise-main .calendar-grid{gap:5px}.enterprise-main .calendar-day{min-height:88px;border-radius:10px;padding:7px;background:#fbfdfe}.enterprise-main .calendar-day.today{background:#eff9fd;border-color:#59b6da}.enterprise-main .leave-stat-grid{gap:8px}.enterprise-main .leave-stat-grid article{padding:11px 12px;border-radius:11px;background:#f8fbfd}.enterprise-main .leave-stat-grid strong{font-size:19px}.enterprise-main .staff-month-table{max-height:300px}.enterprise-main .staff-month-table th,.enterprise-main .staff-month-table td{padding:9px 8px;font-size:11px}
.enterprise-main .dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.enterprise-main .dashboard-grid-wide{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr)}.enterprise-main .dashboard-grid>.panel{margin-bottom:0}.enterprise-main .bar-chart{gap:12px;margin-top:12px}.enterprise-main .donut-wrap{min-height:205px}.enterprise-main .donut{width:126px;height:126px}.enterprise-main .donut:before{inset:15px}.enterprise-main .donut strong{font-size:25px}.enterprise-main .attendance-chart{min-height:205px}.enterprise-main .activity-row{padding:10px 0}.enterprise-main .column-chart{height:235px;padding-top:14px}
.dashboard-customizer-panel{border-radius:20px 0 0 20px!important;box-shadow:-22px 0 60px rgba(9,42,61,.2)!important}.dashboard-widget-setting{border-radius:12px!important;background:#f8fbfd!important}.dashboard-widget-setting button{border-radius:8px!important}
@media(max-width:1450px){.enterprise-main .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-command{grid-template-columns:1fr auto}.dashboard-command-side{min-width:360px}}
@media(max-width:1100px){.dashboard-command{grid-template-columns:1fr}.dashboard-command-side{justify-items:start;min-width:0}.dashboard-command .hero-context{max-width:100%}.dashboard-command-status{justify-content:flex-start}.enterprise-main .dashboard-calendar-row,.enterprise-main .dashboard-grid,.enterprise-main .dashboard-grid-wide{grid-template-columns:1fr}}
@media(max-width:760px){.dashboard-command{padding:22px}.dashboard-command h2{font-size:25px!important}.dashboard-command .hero-context{grid-template-columns:1fr 44px}.dashboard-command .hero-date{display:none!important}.enterprise-main .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.enterprise-main .metric-card{min-height:98px}.dashboard-quick-actions{margin-top:14px}}
@media(max-width:520px){.enterprise-main .metric-grid{grid-template-columns:1fr}.dashboard-command .hero-context{grid-template-columns:1fr 44px}.dashboard-command-kicker{flex-wrap:wrap}.dashboard-command-status{display:none}}

/* v86 executive dashboard refinement */
.enterprise-main:has(.dashboard-command-v86){background:#f4f7fa}
.dashboard-command-v86{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;padding:20px 22px!important;margin-bottom:16px!important;border:1px solid #d8e3ea!important;border-radius:14px!important;background:#fff!important;color:#102e40!important;box-shadow:0 5px 18px rgba(20,47,64,.045)!important;overflow:visible!important}
.dashboard-command-v86:after{display:none!important}.dashboard-v86-title{min-width:0}.dashboard-v86-title h2{margin:0 0 5px!important;font-size:24px!important;line-height:1.2!important;color:#102e40!important;letter-spacing:-.02em}.dashboard-v86-title span{display:block;color:#6d8290;font-size:12px;font-weight:650}.dashboard-v86-customize{flex:0 0 38px!important;width:38px!important;height:38px!important;padding:0!important;border-radius:9px!important;border:1px solid #cfdee6!important;background:#f8fbfd!important;color:#31576b!important;box-shadow:none!important}.dashboard-v86-customize:hover{background:#edf5f8!important;border-color:#a9c9d8!important;color:#0a78a7!important}.dashboard-v86-customize svg{width:17px;height:17px}
.enterprise-main .metric-grid-v86{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}.enterprise-main .metric-grid-v86 .metric-card{min-height:92px;padding:14px 14px;border-radius:12px;box-shadow:none}.enterprise-main .metric-grid-v86 .metric-icon{width:34px;flex-basis:34px;height:34px;border-radius:9px;font-size:14px}.enterprise-main .metric-grid-v86 .metric-card strong{font-size:20px}.enterprise-main .metric-grid-v86 .metric-card:after{height:2px}
.enterprise-main .dashboard-analytics-row{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}.analytics-panel{min-height:310px}.analytics-panel .panel-head{align-items:flex-start}.analytics-current{font-size:17px;color:#15394c;white-space:nowrap}.line-chart-shell{padding:6px 4px 0}.line-chart-svg{display:block;width:100%;height:190px;overflow:visible}.chart-axis{stroke:#d3dfe6;stroke-width:1}.chart-gridline{stroke:#e8eff3;stroke-width:1;stroke-dasharray:4 5}.chart-line{fill:none;stroke:#168fbd;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-point{fill:#fff;stroke:#168fbd;stroke-width:3}.chart-label-row{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-top:-2px}.chart-label-row span{text-align:center}.chart-label-row b{display:block;color:#173b4e;font-size:11px}.chart-label-row small{display:block;color:#81939e;font-size:9px;margin-top:2px;text-transform:uppercase;letter-spacing:.06em}.fee-trend-chart{height:205px;display:grid;grid-template-columns:repeat(6,minmax(46px,1fr));gap:12px;align-items:end;padding:12px 4px 0}.fee-trend-item{height:100%;display:grid;grid-template-rows:24px minmax(0,1fr) 18px;align-items:end;text-align:center}.fee-trend-value{font-size:9px;color:#758a96;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fee-trend-track{height:100%;display:flex;align-items:flex-end;background:linear-gradient(180deg,#f8fbfc,#eef4f7);border-radius:8px 8px 3px 3px;overflow:hidden}.fee-trend-track i{display:block;width:100%;min-height:3px;background:linear-gradient(180deg,#1b9bc4,#0e7199);border-radius:8px 8px 2px 2px}.fee-trend-item b{font-size:10px;color:#4c6675;text-transform:uppercase}.analytics-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #edf2f5;margin-top:12px;padding-top:12px;font-size:11px;color:#6e8390}.analytics-footer strong{font-size:13px;color:#17394b}
@media(max-width:1450px){.enterprise-main .metric-grid-v86{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.enterprise-main .dashboard-analytics-row{grid-template-columns:1fr}}
@media(max-width:760px){.dashboard-command-v86{padding:17px 18px!important}.dashboard-v86-title h2{font-size:21px!important}.dashboard-v86-title span{font-size:11px}.enterprise-main .metric-grid-v86{grid-template-columns:repeat(2,minmax(0,1fr))}.fee-trend-chart{gap:6px}.fee-trend-value{display:none}}
@media(max-width:520px){.enterprise-main .metric-grid-v86{grid-template-columns:1fr}.chart-label-row b{font-size:10px}}
.dashboard-v86-customize{border:0!important;background:transparent!important;border-radius:8px!important}.dashboard-v86-customize:hover{background:#edf5f8!important}
/* v88 automatic salary structure */
.salary-template-box{margin:18px 0 22px;padding:18px;border:1px solid #cfe0ec;background:linear-gradient(180deg,#f8fcff,#f2f8fc);border-radius:16px}.salary-template-box .panel-head{margin-bottom:14px}.salary-template-box h3{margin:2px 0 4px}.gross-money-input input{font-size:18px;font-weight:800}.auto-split-check{align-self:end;min-height:46px;padding:10px 12px;border:1px solid #d7e4ed;border-radius:12px;background:#fff}.salary-template-summary{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;align-items:center}.salary-template-summary span{padding:6px 9px;border-radius:999px;background:#e8f3fa;color:#31566d;font-size:12px;font-weight:700}.salary-template-summary a{margin-left:auto;font-size:12px;font-weight:700}.salary-settings-section{scroll-margin-top:90px}.salary-settings-callout{display:flex;gap:12px;align-items:center;padding:12px 14px;margin:14px 0;border:1px solid #cfe3ef;background:#f5fbff;border-radius:12px}.salary-settings-callout span{color:#5c7384}.salary-percent-grid{margin-top:12px}.salary-total-line{margin:10px 0 20px;text-align:right;color:#567084}.salary-total-line b{color:#067a52}.salary-total-line b.bad{color:#c0392b}.salary-deduction-grid{display:grid;gap:10px}.salary-deduction-row{display:grid;grid-template-columns:minmax(160px,1.1fr) minmax(170px,1fr) minmax(170px,1fr);gap:14px;align-items:end;padding:12px 14px;border:1px solid #dbe6ee;border-radius:12px;background:#fbfdff}.salary-deduction-row>b{align-self:center}.salary-deduction-row label{margin:0}@media(max-width:820px){.salary-deduction-row{grid-template-columns:1fr}.salary-template-summary a{width:100%;margin-left:0}}


/* v89 workspace restoration and enterprise navigation */
.config-workspace{display:grid;grid-template-columns:248px minmax(0,1fr);gap:20px;align-items:start;margin-top:20px}
.config-sidebar{position:sticky;top:92px;display:grid;gap:6px;padding:10px;border:1px solid #d9e4ec;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(15,42,61,.045)}
.config-sidebar-title{padding:10px 10px 14px;margin-bottom:4px;border-bottom:1px solid #e8eef2}.config-sidebar-title h3{margin:4px 0;font-size:17px}.config-sidebar-title p{margin:0;color:#6d8292;font-size:12px;line-height:1.45}
.config-nav-item{display:grid;gap:2px;padding:12px 13px;border-radius:11px;color:#19384c;text-decoration:none;border:1px solid transparent;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}
.config-nav-item:hover{background:#f6fafc;border-color:#e5edf2}.config-nav-item.active{background:#eaf5fb;border-color:#d2e8f3;box-shadow:inset 3px 0 0 #0b8fc4;color:#076d9d}.config-nav-item span,.config-nav-item b{font-weight:800}.config-nav-item small{display:block;color:#718697;font-size:10px;line-height:1.35}.config-nav-item.active small{color:#5d7f91}
.config-main,.config-content{min-width:0;display:grid;gap:18px}.config-main>.panel,.config-content>.panel{margin:0}
.config-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;border-radius:18px;background:linear-gradient(112deg,#0a3048,#106a88);color:#fff;box-shadow:0 12px 30px rgba(8,48,72,.09)}.config-hero h2{margin:5px 0 6px;color:#fff;font-size:27px}.config-hero p{max-width:760px;margin:0;color:#d8eaf2;line-height:1.55}.config-hero .eyebrow{color:#77d7ff}.config-hero .hero-year{min-width:155px;padding-left:20px;border-left:1px solid rgba(255,255,255,.2)}.config-hero .hero-year small,.config-hero .hero-year strong{display:block}.config-hero .hero-year small{color:#c5e2ed;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.config-hero .hero-year strong{margin-top:5px;font-size:18px}
.workspace-panel{border-radius:16px!important}.workspace-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}.workspace-filter-grid label{margin:0}.workspace-filter-action{display:flex;align-items:end;height:100%}.workspace-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}.workspace-summary-strip{margin-top:16px}
.fees-workspace .config-main,.leave-workspace .config-main,.academic-workspace .config-main{min-height:360px}.fees-workspace .config-sidebar,.leave-workspace .config-sidebar,.academic-workspace .config-sidebar{padding-top:10px}
.fee-term-context{display:grid!important;grid-template-columns:minmax(260px,1.7fr) minmax(190px,.8fr);gap:14px!important;align-items:end!important;padding:16px!important;border:1px solid #dde8ef;border-radius:14px;background:#f8fbfd}.fee-term-context label{margin:0!important}.fee-term-context select{width:100%}
.settings-nav-panel{padding-top:10px!important}.settings-tabs{padding-top:0!important}.settings-nav-head{display:none!important}
@media(max-width:980px){.config-workspace{grid-template-columns:210px minmax(0,1fr)}.workspace-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fee-term-context{grid-template-columns:1fr}}
@media(max-width:760px){.config-hero{align-items:flex-start;padding:20px;flex-direction:column}.config-hero .hero-year{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:12px 0 0;width:100%}.config-workspace{grid-template-columns:1fr}.config-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.config-nav-item{min-height:58px}.workspace-filter-grid{grid-template-columns:1fr}}
@media(max-width:520px){.config-sidebar{grid-template-columns:1fr}.config-hero h2{font-size:23px}}

/* v90 workspace polish */
.fee-component-row{grid-template-columns:minmax(220px,1.5fr) minmax(150px,.7fr) minmax(180px,.8fr) minmax(260px,1.15fr) 104px!important;align-items:end!important;column-gap:14px!important;padding:18px!important}
.fee-component-row .fee-row-remove{justify-self:stretch!important;align-self:end!important;height:44px!important;margin:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:#fff1f0!important;border:1px solid #f4b7b2!important;color:#b42318!important;box-shadow:none!important}
.fee-component-row .fee-row-remove:hover{background:#fee4e2!important;border-color:#ef8f87!important}
.fee-component-row .fee-row-remove[hidden]{display:none!important}
.badge.approved,.enterprise-main .badge.approved{background:#ecfdf3!important;border:1px solid #abefc6!important;color:#067647!important}
.badge.rejected,.enterprise-main .badge.rejected{background:#fef3f2!important;border:1px solid #fecdca!important;color:#b42318!important}
.badge.pending,.enterprise-main .badge.pending{background:#fffaeb!important;border:1px solid #fedf89!important;color:#b54708!important}
.leave-approval-card>summary{display:grid!important;grid-template-columns:minmax(0,1fr) auto 34px!important;align-items:center!important;gap:16px!important}
.leave-approval-card>summary .badge{justify-self:end!important;min-width:76px!important;text-align:center!important;justify-content:center!important;text-transform:capitalize!important}
.leave-approval-card>summary:after{justify-self:end!important}
.payroll-policy-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,.72fr);gap:16px;align-items:start}
.payroll-policy-grid>label{margin-bottom:0!important}
.payroll-custom-weekdays{grid-column:1/-1;max-width:620px}
.payroll-custom-weekdays[hidden]{display:none!important}
.payroll-overtime-grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(260px,1fr);gap:16px;align-items:center;margin-top:16px}
.payroll-overtime-grid>label{margin-bottom:0!important}
.class-directory-head-tools{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;min-width:min(520px,48%)}
.class-directory-head-tools .academic-search{display:flex;align-items:center;gap:8px;width:min(390px,100%);margin:0;padding:0 12px;border:1px solid #cbd8df;border-radius:10px;background:#fff}
.class-directory-head-tools .academic-search span{color:#78909c;font-size:15px;flex:0 0 auto}
.class-directory-head-tools .academic-search input{width:100%;height:42px;border:0!important;outline:0!important;background:transparent!important;padding:0!important;box-shadow:none!important;font:inherit}
.academic-year-list{display:grid;gap:10px;margin:0 0 22px}
.academic-year-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fbfdfe}
.academic-year-copy{display:grid;gap:3px;min-width:0}
.academic-year-copy b{font-size:15px;color:var(--text)}
.academic-year-copy small{display:block;color:var(--muted);font-size:12px;line-height:1.35}
.status-dot-badge.status-neutral{color:#536a79;background:#f2f6f8;border-color:#dfe8ee}
.status-dot-badge i{width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block}
.academic-year-form{padding-top:20px;border-top:1px solid var(--line)}
@media(max-width:1200px){.fee-component-row{grid-template-columns:1fr 1fr!important}.fee-component-row .fee-row-remove{justify-self:start!important;width:120px!important}.class-directory-head-tools{min-width:0;width:100%;justify-content:flex-start}.panel-head:has(.class-directory-head-tools){align-items:flex-start}.payroll-policy-grid,.payroll-overtime-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.fee-component-row{grid-template-columns:1fr!important}.fee-component-row .fee-row-remove{width:100%!important}.leave-approval-card>summary{grid-template-columns:1fr auto!important}.leave-approval-card>summary .badge{grid-column:1/2;justify-self:start!important}.payroll-policy-grid,.payroll-overtime-grid{grid-template-columns:1fr}.payroll-custom-weekdays{grid-column:auto}.class-directory-head-tools{display:grid;grid-template-columns:1fr}.class-directory-head-tools .academic-search{width:100%}.academic-year-row{align-items:flex-start}}

/* v93 — enterprise UI system: consistent rhythm, responsive density and mobile safety */
:root{
  --erp-space-1:6px;--erp-space-2:10px;--erp-space-3:14px;--erp-space-4:18px;--erp-space-5:24px;--erp-space-6:32px;
  --erp-radius-sm:9px;--erp-radius:13px;--erp-radius-lg:18px;
  --erp-shadow:0 8px 24px rgba(15,42,61,.055);--erp-shadow-hover:0 14px 34px rgba(15,42,61,.085);
  --erp-control:44px;
}
.enterprise-main{padding:26px 28px 36px;overflow-x:hidden}
.enterprise-page-head{margin-bottom:18px}
.enterprise-page-head h1{font-size:27px;letter-spacing:-.025em}
.enterprise-breadcrumb{margin-top:6px}

/* Every top-level module banner owns the spacing below it. This prevents cards from touching the hero. */
.enterprise-main > .module-hero,
.enterprise-main > .config-hero,
.enterprise-main > .dashboard-hero{
  margin-top:0!important;
  margin-bottom:24px!important;
}
.enterprise-main > .procurement-page-hero,
.enterprise-main > .frontoffice-hero{
  margin-bottom:26px!important;
}
.enterprise-main > .module-hero + *,
.enterprise-main > .config-hero + *,
.enterprise-main > .dashboard-hero + *{
  margin-top:0!important;
}

/* Procurement dashboard and module pages */
.enterprise-main > .procurement-page-hero + .metric-grid{margin-top:0!important;margin-bottom:20px!important}
.proc-metrics{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
.proc-metrics .metric-card{min-height:102px!important;border-radius:14px!important;box-shadow:var(--erp-shadow)!important}
.proc-list-layout,.proc-detail-grid{gap:20px!important}
.proc-list-layout>.panel,.proc-detail-grid>.panel,.proc-list-layout>.editor,.proc-detail-grid>.editor{margin:0!important}
.proc-list-layout+.panel,.proc-detail-grid+.panel,.dashboard-grid+.panel{margin-top:20px!important}
.proc-actions-bar{margin:0 0 20px!important}

/* Front office overview */
.frontoffice-hero{margin-bottom:26px!important}
.frontoffice-metrics{margin:0 0 20px!important;gap:14px!important}
.frontoffice-metrics .metric-card{min-height:96px!important;border-radius:14px!important;box-shadow:var(--erp-shadow)!important}
.frontoffice-metrics + .quick-module-grid{margin-top:0!important;gap:14px!important}
.quick-module-grid>.panel,.quick-module-grid>a,.quick-module-grid>article{margin-bottom:0!important}

/* Shared panels/cards */
.enterprise-main .panel{border-radius:14px;border-color:#dbe5eb;box-shadow:var(--erp-shadow);padding:20px;margin-bottom:20px}
.enterprise-main .panel:hover{border-color:#d2e0e7}
.enterprise-main .panel-head{gap:18px}
.enterprise-main .panel-head h2{line-height:1.25}
.enterprise-main .metric-card,.enterprise-main .stat,.enterprise-main .rowcard,.enterprise-main .user-card,.enterprise-main .role-card{box-shadow:var(--erp-shadow)}

/* Controls: one visual language */
.enterprise-main input:not([type=checkbox]):not([type=radio]):not([type=file]),
.enterprise-main select,
.enterprise-main textarea{
  min-height:var(--erp-control);border-radius:10px;border-color:#cbd9e1;background:#fff;
}
.enterprise-main textarea{min-height:92px}
.enterprise-main input:focus,.enterprise-main select:focus,.enterprise-main textarea:focus{outline:0;border-color:#1594c3;box-shadow:0 0 0 3px rgba(21,148,195,.10)}
.enterprise-main .btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:9px;white-space:nowrap}
.enterprise-main .btn.primary{box-shadow:0 5px 13px rgba(8,127,184,.13)}
.enterprise-main .btn.danger{background:#fff1f0;color:#b42318;border:1px solid #f4b7b2}

/* Tables */
.enterprise-main .table-wrap{width:100%;max-width:100%;overflow-x:auto;border-radius:12px;-webkit-overflow-scrolling:touch}
.enterprise-main table{min-width:680px}
.enterprise-main th{font-size:10px;letter-spacing:.055em;text-transform:uppercase;color:#546d7b;background:#f7fafc;font-weight:850}
.enterprise-main td{vertical-align:middle}
.enterprise-main tbody tr:hover{background:#fbfdfe}

/* Workspaces */
.config-workspace{gap:20px!important;align-items:start}
.config-sidebar{border-radius:14px!important;box-shadow:var(--erp-shadow)!important}
.config-main,.config-content{gap:20px!important}
.config-main>.panel,.config-content>.panel{margin-bottom:0!important}
.config-nav-item{padding:12px 13px!important}
.config-nav-item.active{box-shadow:inset 3px 0 0 #0b8fc4!important}

/* Search/filter toolbars */
.class-directory-head-tools{gap:10px!important}
.class-directory-head-tools .academic-search{height:44px;width:min(420px,100%)!important}
.proc-filter{padding:14px;border:1px solid #e1e9ee;border-radius:12px;background:#f8fbfd;margin-bottom:18px!important}

/* Ensure statuses read instantly */
.status-pill.ok,.badge.approved,.status-dot-badge.status-active{background:#ecfdf3!important;color:#067647!important;border-color:#abefc6!important}
.status-pill.danger,.badge.rejected{background:#fef3f2!important;color:#b42318!important;border-color:#fecdca!important}
.status-pill.warn,.badge.pending{background:#fffaeb!important;color:#b54708!important;border-color:#fedf89!important}

/* Responsive ERP breakpoints */
@media(max-width:1280px){
  .enterprise-main{padding:24px}
  .proc-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .proc-list-layout,.proc-detail-grid{grid-template-columns:1fr!important}
  .proc-editor{position:static!important}
}
@media(max-width:900px){
  .enterprise-main{padding:20px}
  .enterprise-main > .module-hero,.enterprise-main > .config-hero,.enterprise-main > .dashboard-hero,.enterprise-main > .procurement-page-hero,.enterprise-main > .frontoffice-hero{margin-bottom:18px!important}
  .module-hero,.config-hero{padding:21px 22px!important;border-radius:15px!important}
  .module-hero h2,.config-hero h2{font-size:23px!important}
  .frontoffice-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .config-workspace{grid-template-columns:1fr!important}
  .config-sidebar{position:static!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .proc-report-builder,.workspace-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:640px){
  .enterprise-main{padding:14px 12px 26px}
  .enterprise-page-head{margin-bottom:14px}.enterprise-page-head h1{font-size:23px}
  .enterprise-main > .module-hero,.enterprise-main > .config-hero,.enterprise-main > .dashboard-hero,.enterprise-main > .procurement-page-hero,.enterprise-main > .frontoffice-hero{margin-bottom:14px!important}
  .module-hero,.config-hero{padding:18px!important;border-radius:13px!important;gap:14px!important}
  .module-hero h2,.config-hero h2{font-size:21px!important}
  .module-hero p,.config-hero p{font-size:12px!important;line-height:1.5}
  .proc-metrics,.frontoffice-metrics{grid-template-columns:1fr!important;gap:10px!important}
  .enterprise-main .metric-card{min-height:86px!important;padding:14px!important;border-radius:12px!important}
  .enterprise-main .panel{padding:15px;border-radius:12px;margin-bottom:14px}
  .enterprise-main .panel-head{align-items:flex-start;flex-direction:column;gap:10px}
  .enterprise-main .panel-head>.btn,.enterprise-main .panel-head>a.btn{width:100%}
  .config-sidebar{grid-template-columns:1fr!important;padding:7px!important}
  .proc-report-builder,.workspace-filter-grid{grid-template-columns:1fr!important}
  .proc-filter{padding:12px}.proc-filter>*{width:100%!important}
  .enterprise-main .btn{min-height:42px}
  .enterprise-main table{min-width:620px}
}

/* v94: Staff attendance identity layout */
.enterprise-main td.attendance-staff-cell{min-width:220px}
.enterprise-main td.attendance-staff-cell>b{display:block;font-weight:800;line-height:1.25;color:#10283a}
.enterprise-main td.attendance-staff-cell>small{display:block;margin-top:4px;line-height:1.25;color:#7b8d9a;font-size:10.5px}


/* v95: Visitor Book stacked details + Posts panel alignment */
.enterprise-main td.visitor-identity-cell,
.enterprise-main td.visitor-purpose-cell{vertical-align:top;min-width:180px}
.enterprise-main td.visitor-identity-cell>b,
.enterprise-main td.visitor-purpose-cell>span{display:block;line-height:1.3}
.enterprise-main td.visitor-identity-cell>small,
.enterprise-main td.visitor-purpose-cell>small{display:block;margin-top:4px;color:#7b8d9a;font-size:10.5px;line-height:1.3;white-space:normal}
.enterprise-main .posts-admin-layout{align-items:start}
.enterprise-main .posts-admin-layout>.panel{align-self:start;margin-bottom:0}
.enterprise-main .posts-list-panel{overflow:visible}
.enterprise-main .posts-list-panel .rowcard{min-height:68px;padding:13px 4px}
@media(max-width:1000px){.enterprise-main .posts-admin-layout>.panel{width:100%}}


/* v96 unified enterprise content workspace */
.content-workspace-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;margin:0 0 16px;border-radius:18px;background:linear-gradient(125deg,#07364f,#0b6f8d);color:#fff;box-shadow:0 14px 34px rgba(7,54,79,.13)}
.content-workspace-hero .eyebrow{color:#73d8ff}.content-workspace-hero h2{margin:5px 0 6px;font-size:26px}.content-workspace-hero p{margin:0;max-width:760px;color:#d7edf5;line-height:1.55}
.content-workspace-status{min-width:180px;padding:13px 16px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);border-radius:13px;display:grid;gap:3px}.content-workspace-status span,.content-workspace-status small{font-size:10px;color:#cce7f0;text-transform:uppercase;letter-spacing:.08em}.content-workspace-status strong{font-size:15px}
.content-workspace-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}.content-workspace-tabs a{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:82px;padding:13px 14px;border:1px solid #d8e4eb;border-radius:14px;background:#fff;color:#17384b;text-decoration:none;box-shadow:0 5px 16px rgba(20,55,75,.035);transition:.15s ease}.content-workspace-tabs a:hover{transform:translateY(-1px);border-color:#9fcddd}.content-workspace-tabs a.active{border-color:#1489b3;box-shadow:0 0 0 2px rgba(20,137,179,.1),0 8px 20px rgba(20,80,110,.08)}.content-workspace-tabs i{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#edf7fb;color:#087fae;font-style:normal;font-weight:900}.content-workspace-tabs span{display:grid;gap:3px}.content-workspace-tabs b{font-size:13px}.content-workspace-tabs small{font-size:10px;color:#708796;line-height:1.3}.content-workspace-tabs em{font-style:normal;font-weight:900;font-size:11px;background:#f0f5f8;padding:5px 8px;border-radius:999px;color:#496777}
.gallery-progress-form{grid-template-columns:minmax(0,1fr) 150px auto}.gallery-progress-form>label small{font-weight:500;color:#708796}.gallery-upload-progress{grid-column:1/-1;padding:14px 16px;border:1px solid #cfe2ec;border-radius:12px;background:#f8fcfe}.gallery-progress-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:8px}.gallery-progress-head span{font-size:12px;font-weight:800;color:#17384b}.gallery-progress-head strong{font-size:12px;color:#087fae}.gallery-progress-track{height:9px;border-radius:999px;overflow:hidden;background:#e3edf2}.gallery-progress-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b78a5,#18a2c8);transition:width .12s linear}.gallery-upload-progress>small{display:block;margin-top:7px;color:#6d8391;font-size:10px}.gallery-progress-form button:disabled{opacity:.65;cursor:wait}
@media(max-width:1180px){.content-workspace-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.content-workspace-hero{align-items:flex-start;flex-direction:column}.content-workspace-status{width:100%}.content-workspace-tabs{grid-template-columns:1fr}.gallery-progress-form{grid-template-columns:1fr}.gallery-progress-form .btn,.gallery-upload-progress{grid-column:1}}


/* v97: editorial cards, enterprise gallery uploader, highlighted dashboard command hero */
.dashboard-command-v86{position:relative;overflow:hidden!important;min-height:126px!important;padding:28px 30px!important;border:1px solid rgba(18,108,139,.35)!important;background:linear-gradient(118deg,#07364f 0%,#0b607b 54%,#0d7994 100%)!important;color:#fff!important;box-shadow:0 18px 38px rgba(4,48,71,.16)!important}
.dashboard-command-v86:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 8%,rgba(255,255,255,.16),transparent 26%),linear-gradient(90deg,transparent 0 66%,rgba(255,255,255,.035) 66% 67%,transparent 67% 78%,rgba(255,255,255,.03) 78% 79%,transparent 79%);pointer-events:none}
.dashboard-command-v86 .dashboard-v86-title{position:relative;z-index:1}.dashboard-command-v86 .dashboard-v86-title:before{content:"OPERATIONS OVERVIEW";display:block;margin-bottom:7px;color:#79dcff;font-size:10px;font-weight:900;letter-spacing:.13em}.dashboard-command-v86 h2{margin:0 0 7px!important;color:#fff!important;font-size:27px!important}.dashboard-command-v86 .dashboard-v86-title>span{color:#d8edf5!important;font-size:12px!important}.dashboard-command-v86 .dashboard-v86-customize{position:relative;z-index:1;background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.22)!important;color:#fff!important}.dashboard-command-v86 .dashboard-v86-customize svg{stroke:#fff!important}

.post-record-list{display:grid;gap:11px;margin-top:15px}.post-record-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:15px 16px;border:1px solid #d9e5eb;border-left:4px solid #1490b9;border-radius:13px;background:#fff;box-shadow:0 5px 15px rgba(21,55,75,.035)}.post-record-card.event{border-left-color:#8b5cf6}.post-record-main{min-width:0;display:grid;gap:4px}.post-record-kicker{font-size:9px;letter-spacing:.12em;font-weight:900;color:#087ea8}.post-record-card.event .post-record-kicker{color:#6d42ca}.post-record-main>b{font-size:14px;color:#0b2537}.post-record-main>small{font-size:10.5px;color:#728694}.post-record-main>p{margin:3px 0 0;color:#536b78;font-size:11.5px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.post-record-actions{display:flex;align-items:center;gap:12px}.post-record-actions form{margin:0}.posts-editor-panel{align-self:start}.posts-editor-panel .panel-head{align-items:flex-start}

.gallery-manager{overflow:hidden}.gallery-upload-console{margin:16px 0 22px}.gallery-upload-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:stretch}.gallery-dropzone{position:relative;min-height:210px;padding:26px;border:1.5px dashed #a9c9d9;border-radius:16px;background:linear-gradient(145deg,#f9fdff,#f3f9fc);display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;cursor:pointer;transition:.16s ease}.gallery-dropzone:hover,.gallery-dropzone.dragging{border-color:#0b8fbd;background:#effaff;box-shadow:0 0 0 4px rgba(11,143,189,.07)}.gallery-dropzone.uploading{pointer-events:none;opacity:.72}.gallery-dropzone input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.gallery-drop-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#e6f6fc;color:#087fae;font-size:27px;font-weight:800;box-shadow:inset 0 0 0 1px #c7e8f4}.gallery-dropzone>strong{font-size:15px;color:#15384a}.gallery-dropzone>small{font-size:11px;color:#728895;font-weight:500}.gallery-file-summary{margin-top:7px;padding:6px 10px;border-radius:999px;background:#eaf4f8;color:#42697b;font-size:10.5px;font-weight:800}.gallery-upload-settings{padding:19px;border:1px solid #d9e5eb;border-radius:16px;background:#fff;display:flex;flex-direction:column;gap:15px;box-shadow:0 7px 20px rgba(20,55,75,.045)}.gallery-upload-settings h3{margin:4px 0 0;font-size:17px}.gallery-upload-settings label{margin:0}.gallery-batch-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gallery-batch-meta>span{padding:11px;border-radius:11px;background:#f4f8fa;border:1px solid #e1e9ed;display:grid;gap:2px}.gallery-batch-meta b{font-size:14px;color:#0d3448}.gallery-batch-meta small{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#7a8d98}.gallery-upload-cta{width:100%;margin-top:auto}.gallery-selected-files{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.gallery-selected-files>span,.gallery-selected-files>em{max-width:240px;padding:7px 9px;border:1px solid #dce7ec;border-radius:9px;background:#fff;font-style:normal;font-size:10px}.gallery-selected-files>span{display:flex;align-items:center;gap:8px}.gallery-selected-files b{max-width:175px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-selected-files small{color:#78909c}.gallery-upload-progress{margin-top:12px;padding:14px 16px!important}.gallery-progress-footer{display:flex;justify-content:space-between;gap:12px;margin-top:7px}.gallery-progress-footer small{color:#6d8391;font-size:10px}
@media(max-width:980px){.gallery-upload-grid{grid-template-columns:1fr}.gallery-upload-settings{display:grid;grid-template-columns:1fr 1fr;align-items:end}.gallery-upload-settings>div:first-child,.gallery-upload-cta{grid-column:1/-1}.post-record-card{grid-template-columns:1fr}.post-record-actions{justify-content:flex-start}}
@media(max-width:640px){.dashboard-command-v86{padding:22px 20px!important;min-height:118px!important}.dashboard-command-v86 h2{font-size:22px!important}.gallery-dropzone{min-height:180px;padding:20px}.gallery-upload-settings{grid-template-columns:1fr}.gallery-upload-settings>*{grid-column:1!important}.gallery-progress-footer{flex-direction:column}.post-record-actions{width:100%}.post-record-actions .btn{flex:1}}

/* v99: restore FAQ/Assistant card styling and dashboard layout customizer */
.faq-admin-layout,.assistant-topic-layout{align-items:start}
.faq-record-list,.assistant-record-list{display:grid;gap:12px;margin-top:16px}
.faq-record-card,.assistant-record-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 17px;border:1px solid #d9e5eb;border-left:4px solid #138bb4;border-radius:13px;background:#fff;box-shadow:0 5px 16px rgba(20,55,75,.04)}
.faq-record-main,.assistant-record-main{min-width:0;display:grid;gap:5px}
.faq-record-kicker,.assistant-record-kicker{display:block;font-size:9px;line-height:1.2;letter-spacing:.12em;font-weight:900;color:#087ea8;text-transform:uppercase}
.faq-record-main>b,.assistant-record-main>b{display:block;font-size:14px;color:#0a2839;line-height:1.4}
.faq-record-main>p{margin:2px 0;color:#5b7180;font-size:11.5px;line-height:1.55}
.faq-record-main>small,.assistant-record-main>small{display:block;font-size:10px;color:#7b8e99}
.faq-record-card .record-actions,.assistant-record-card .record-actions{align-self:center;display:flex;align-items:center;gap:10px;justify-content:flex-end}
.assistant-command{border-left:4px solid #138bb4!important;background:linear-gradient(135deg,#fbfeff,#f5fbfd)!important}
.assistant-answer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.assistant-answer-card{min-width:0;padding:17px;border:1px solid #d9e5eb;border-top:4px solid #138bb4;border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(20,55,75,.045);display:flex;flex-direction:column;gap:9px}
.assistant-answer-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.assistant-answer-head>span:first-child{font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#087ea8}
.assistant-answer-card h3{margin:0;font-size:14px;line-height:1.4;color:#0b2839}
.assistant-answer-card p{margin:0;color:#526d7c;font-size:11.5px;line-height:1.55;flex:1}
.assistant-answer-card>small{font-size:10px;color:#788c98;line-height:1.45}
.assistant-answer-card .record-actions{margin-top:4px;padding-top:11px;border-top:1px solid #edf2f5;justify-content:flex-start}

body.dashboard-customizer-open{overflow:hidden}
.dashboard-customizer[hidden]{display:none!important}
.dashboard-customizer{position:fixed;inset:0;z-index:1000;display:block}
.dashboard-customizer-backdrop{position:absolute;inset:0;background:rgba(4,27,42,.48);backdrop-filter:blur(2px)}
.dashboard-customizer-panel{position:absolute;top:0;right:0;width:min(520px,92vw);height:100%;display:flex;flex-direction:column;background:#fff;border-left:1px solid #d9e5eb;box-shadow:-24px 0 70px rgba(3,33,51,.24);overflow:hidden;border-radius:20px 0 0 20px!important}
.dashboard-customizer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px 24px 18px;border-bottom:1px solid #e6edf1;background:linear-gradient(145deg,#fbfeff,#f4f9fc)}
.dashboard-customizer-head h2{margin:4px 0 7px;font-size:22px;color:#0b2b3e}
.dashboard-customizer-head p{margin:0;color:#687f8d;font-size:11.5px;line-height:1.55;max-width:400px}
.dashboard-customizer-close{flex:0 0 38px;width:38px;height:38px;border:1px solid #d8e4ea;border-radius:10px;background:#fff;color:#315365;font-size:22px;line-height:1;cursor:pointer}
.dashboard-widget-list{flex:1;min-height:0;overflow:auto;padding:18px 22px 24px;background:#f7fafc}
.dashboard-widget-group{display:grid;gap:9px;margin-bottom:18px}
.dashboard-widget-group h3{margin:0 0 2px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#6d8390}
.dashboard-widget-setting{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 12px;border:1px solid #dfe8ed;border-radius:12px!important;background:#fff!important;box-shadow:0 3px 10px rgba(20,55,75,.03)}
.dashboard-widget-setting label{display:flex;align-items:center;gap:10px;margin:0;font-weight:750;color:#17384b;cursor:pointer}
.dashboard-widget-setting input[type=checkbox]{width:17px;height:17px;accent-color:#087fb8}
.dashboard-widget-setting>div{display:flex;gap:6px}
.dashboard-widget-setting button{width:34px;height:34px;border:1px solid #d7e3e9;border-radius:8px!important;background:#f8fbfd;color:#31586b;font-weight:900;cursor:pointer}
.dashboard-widget-setting button:hover{border-color:#9fcddd;background:#eef8fc;color:#087ca8}
.dashboard-customizer-actions{display:flex;justify-content:space-between;gap:10px;padding:15px 22px;border-top:1px solid #e3ebef;background:#fff}
.dashboard-widget-hidden{display:none!important}
@media(max-width:1100px){.assistant-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.faq-record-card,.assistant-record-card{grid-template-columns:1fr}.assistant-answer-grid{grid-template-columns:1fr}.faq-record-card .record-actions,.assistant-record-card .record-actions{justify-content:flex-start}.dashboard-customizer-panel{width:100%;border-radius:0!important}.dashboard-customizer-head{padding:19px 17px 15px}.dashboard-widget-list{padding:15px}.dashboard-customizer-actions{padding:13px 15px}}

/* v100: Homepage Workspace + modern image picker */
.homepage-workspace-hero{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:26px 28px;margin-bottom:16px;border-radius:18px;background:linear-gradient(125deg,#07364f 0%,#0a5f7b 54%,#0c8097 100%);color:#fff;box-shadow:0 16px 38px rgba(7,54,79,.15)}
.homepage-workspace-hero .eyebrow{color:#78dcff}.homepage-workspace-hero h2{margin:5px 0 7px;font-size:28px}.homepage-workspace-hero p{max-width:760px;margin:0;color:#d9edf5;line-height:1.55}
.homepage-workspace-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.homepage-workspace-summary>span{min-width:88px;padding:10px 12px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.08);text-align:center}.homepage-workspace-summary b,.homepage-workspace-summary small{display:block}.homepage-workspace-summary b{font-size:18px}.homepage-workspace-summary small{margin-top:2px;color:#d7edf4;font-size:10px}.homepage-preview-btn{border-color:rgba(255,255,255,.22)!important;background:#fff!important;color:#07364f!important}
.homepage-workspace{display:grid;gap:16px}.homepage-workspace-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:7px;border:1px solid #d6e3ea;border-radius:16px;background:#eaf2f6;position:sticky;top:14px;z-index:3;box-shadow:0 8px 24px rgba(9,45,67,.05)}
.home-workspace-tab{appearance:none;border:1px solid transparent;border-radius:12px;background:transparent;padding:12px 13px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;row-gap:1px;text-align:left;color:#294858;cursor:pointer;transition:.16s ease}.home-workspace-tab>span{grid-row:1/3;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#dceaf1;color:#0b6f91;font-size:10px;font-weight:900}.home-workspace-tab b{font-size:13px;color:#17364a}.home-workspace-tab small{font-size:10px;color:#6d8491}.home-workspace-tab:hover{background:rgba(255,255,255,.62)}.home-workspace-tab.active{background:#fff;border-color:#cbdde6;box-shadow:0 5px 16px rgba(8,58,81,.08)}.home-workspace-tab.active>span{background:#087daf;color:#fff}.home-workspace-panel[hidden]{display:none!important}
.homepage-library-panel,.homepage-editor-panel{align-self:start}.homepage-library-panel .panel-head,.homepage-editor-panel .panel-head{margin-bottom:15px}.enterprise-home-record{margin-bottom:10px!important;padding:11px!important;border:1px solid #dbe7ed!important;border-radius:14px!important;background:#fff!important;box-shadow:0 4px 13px rgba(9,45,67,.035)}.enterprise-home-record:last-child{margin-bottom:0!important}.enterprise-home-record img,.home-record-placeholder{width:126px;height:78px;border-radius:10px}.home-record-placeholder{display:grid;place-items:center;background:#edf4f7;color:#8296a1;font-size:11px;font-weight:800}.home-record-copy{min-width:0}.home-record-copy>b{font-size:13px}.home-record-copy p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-upload-field{display:grid;gap:8px;margin:4px 0 15px}.home-upload-field.compact{margin-top:13px}.home-upload-label{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.home-upload-label b{font-size:12px;color:#17364a}.home-upload-label small{font-size:10px;color:#748a97;font-weight:500;text-align:right}.home-file-picker{position:relative!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) auto!important;align-items:center!important;gap:11px!important;min-height:68px!important;margin:0!important;padding:10px 12px!important;border:1.5px dashed #b8cdd8!important;border-radius:13px!important;background:linear-gradient(180deg,#fbfdfe,#f4f9fb)!important;cursor:pointer!important;overflow:hidden!important;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.home-file-picker:hover,.home-file-picker:focus-within{border-color:#36a2cc!important;background:#f5fbfe!important;box-shadow:0 0 0 3px rgba(8,125,175,.08)}.home-file-picker.has-file{border-style:solid!important;border-color:#7bcba7!important;background:#f5fcf8!important}.home-image-file{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;cursor:pointer!important;padding:0!important;border:0!important}.home-file-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:#e0f3fa;color:#087daf;font-size:22px;font-weight:900}.home-file-copy{min-width:0}.home-file-copy b,.home-file-copy small{display:block}.home-file-copy b{font-size:12px;color:#17364a}.home-file-copy small{margin-top:3px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#758b97;font-size:10px;font-weight:500}.home-file-browse{padding:8px 11px;border:1px solid #c8dbe4;border-radius:9px;background:#fff;color:#0b6486;font-size:11px;font-weight:900}.home-current-image{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid #e0e9ee;border-radius:11px;background:#fafcfd}.home-current-image img{width:86px;height:52px;border-radius:8px;object-fit:cover}.home-current-image span{font-size:10px;font-weight:800;color:#708793}
.home-story-workspace{gap:16px}.story-admin-grid>.home-story-card{padding:18px;border:1px solid #dbe7ed;border-radius:15px;background:linear-gradient(180deg,#fff,#fbfdfe)}.home-story-card h3{margin:4px 0 15px}.homepage-save-bar{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;margin-top:16px;padding-top:16px;border-top:1px solid #e2eaee}.homepage-save-bar label{min-width:240px;margin:0}
@media(max-width:1180px){.homepage-workspace-tabs{grid-template-columns:repeat(2,minmax(0,1fr));position:static}.homepage-workspace-hero{align-items:flex-start;flex-direction:column}.homepage-workspace-summary{justify-content:flex-start}}
@media(max-width:720px){.homepage-workspace-tabs{grid-template-columns:1fr}.home-upload-label{align-items:flex-start;flex-direction:column}.home-upload-label small{text-align:left}.home-file-picker{grid-template-columns:38px minmax(0,1fr)!important}.home-file-icon{width:38px;height:38px}.home-file-browse{grid-column:1/-1;text-align:center}.homepage-save-bar{align-items:stretch;flex-direction:column}.homepage-save-bar label{min-width:0}.homepage-workspace-summary{width:100%}.homepage-workspace-summary>span{flex:1}.homepage-preview-btn{width:100%;justify-content:center}.enterprise-home-record{grid-template-columns:84px minmax(0,1fr)!important}.enterprise-home-record img,.home-record-placeholder{width:84px;height:62px}.enterprise-home-record .record-actions{grid-column:1/-1;justify-content:flex-end}}

/* v101 enterprise CSV upload controls */
.enterprise-import-card{padding:18px!important;background:linear-gradient(180deg,#fbfdff 0%,#f6fafc 100%)!important;border:1px solid #d7e4eb!important;box-shadow:0 8px 22px rgba(25,55,75,.045)}
.import-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.import-card-head h3{margin:3px 0 0}.import-format-badge{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:28px;padding:0 10px;border-radius:999px;background:#e7f5fb;color:#087aa7;border:1px solid #c8e7f2;font-size:10px;font-weight:900;letter-spacing:.08em}
.enterprise-upload-field{display:grid;gap:8px}.enterprise-upload-label{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.enterprise-upload-label b{font-size:12px;color:#17364a}.enterprise-upload-label small{font-size:10px;color:#748a97;font-weight:500;text-align:right}
.enterprise-file-picker{position:relative!important;display:grid!important;grid-template-columns:44px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;min-height:72px!important;margin:0!important;padding:11px 12px!important;border:1.5px dashed #b6ccd8!important;border-radius:14px!important;background:linear-gradient(180deg,#fff,#f5fafc)!important;cursor:pointer!important;overflow:hidden!important;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease}.enterprise-file-picker:hover,.enterprise-file-picker:focus-within{border-color:#259bc6!important;background:#f3fbfe!important;box-shadow:0 0 0 4px rgba(8,125,175,.08);transform:translateY(-1px)}.enterprise-file-picker.has-file{border-style:solid!important;border-color:#71c69e!important;background:#f4fcf8!important}.enterprise-file-input{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;cursor:pointer!important;padding:0!important;border:0!important;z-index:2}.enterprise-file-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#dff2f9;color:#087daf;font-size:21px;font-weight:900}.enterprise-file-copy{min-width:0}.enterprise-file-copy b,.enterprise-file-copy small{display:block}.enterprise-file-copy b{font-size:12px;color:#15384c}.enterprise-file-copy small{margin-top:4px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#718895;font-size:10px;font-weight:600}.enterprise-file-browse{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border:1px solid #c6dbe5;border-radius:10px;background:#fff;color:#086c94;font-size:11px;font-weight:900;box-shadow:0 2px 5px rgba(27,61,82,.05)}
.import-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.import-actions .btn{min-height:40px}.import-actions small{flex:1;min-width:220px}
@media(max-width:720px){.enterprise-upload-label{align-items:flex-start;flex-direction:column}.enterprise-upload-label small{text-align:left}.enterprise-file-picker{grid-template-columns:40px minmax(0,1fr)!important}.enterprise-file-icon{width:40px;height:40px}.enterprise-file-browse{grid-column:1/-1;width:100%}.import-actions{align-items:stretch;flex-direction:column}.import-actions .btn{width:100%}.import-actions small{min-width:0}}

/* v102 enterprise file pickers across certificates, fees, hiring, procurement and settings */
.enterprise-upload-field{min-width:0}.grid2>.enterprise-upload-field{align-self:end}.oauth-upload-card .enterprise-upload-field{flex:1;min-width:280px}.oauth-upload-card .enterprise-file-picker{min-height:66px!important}.enterprise-file-copy b{letter-spacing:.01em}.enterprise-file-browse:after{content:"  ↗";font-size:9px;opacity:.65}.enterprise-file-picker:focus-within .enterprise-file-browse{border-color:#87bfd3;box-shadow:0 0 0 3px rgba(8,125,175,.08)}
@media(max-width:720px){.oauth-upload-card .enterprise-upload-field{min-width:0;width:100%}}

/* v103 Enterprise layout polish: TC, ID cards, procurement, attendance */
/* Transfer Certificate designer: keep labels, fields and helper text in stable vertical stacks. */
.tc-template-preview{margin:14px 0}
.editor form .grid2>label{min-width:0}
.editor form .grid2>label>input,.editor form .grid2>label>select{display:block;width:100%}
.editor form .grid2>label>small{display:block;line-height:1.45;margin-top:1px;color:var(--muted);font-weight:500}
.editor form .grid2>.check{min-height:42px;margin:2px 0 12px!important;padding:10px 12px;border:1px solid #e0e8ed;border-radius:11px;background:#fbfdfe}
.editor form .grid2>.check input{flex:0 0 auto}

/* Table action cells stay on one line and align like an enterprise action group. */
.table-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;white-space:nowrap!important;min-width:150px}
.table-actions form{display:inline-flex!important;margin:0!important}
.table-actions .btn{margin:0!important;white-space:nowrap!important}
.table-actions .btn.danger{margin-top:0!important}
td.table-actions{vertical-align:middle!important}

/* Procurement purchase-request line items: readable labels and predictable columns. */
.proc-form-section{overflow:hidden}
.proc-form-section .panel-head{margin-bottom:8px}
.proc-item-row{grid-template-columns:minmax(150px,1.45fr) minmax(150px,1.45fr) 82px 92px minmax(120px,.9fr) 72px!important;gap:10px!important;align-items:end!important;padding:14px 0!important}
.proc-item-row label{display:grid!important;gap:6px!important;min-width:0!important;font-size:11px!important;line-height:1.2!important}
.proc-item-row input{width:100%!important;min-width:0!important;height:42px!important;padding:9px 10px!important}
.proc-item-row [data-remove-proc-item]{height:42px;display:flex;align-items:center;justify-content:center;justify-self:stretch;padding:0 8px;border:1px solid #f1c9c5;border-radius:9px;background:#fff7f6;font-weight:800}
@media(max-width:1380px){.proc-item-row{grid-template-columns:1fr 1fr 90px 100px!important}.proc-item-row label:nth-of-type(5){grid-column:1/3}.proc-item-row [data-remove-proc-item]{grid-column:3/5}}
@media(max-width:760px){.proc-item-row{grid-template-columns:1fr 1fr!important}.proc-item-row label:nth-of-type(1),.proc-item-row label:nth-of-type(2),.proc-item-row label:nth-of-type(5){grid-column:1/-1}.proc-item-row [data-remove-proc-item]{grid-column:1/-1}}

/* Vendor invoice: separate upload console from primary submit action. */
.vendor-invoice-form .enterprise-upload-field{margin-top:16px!important}
.vendor-invoice-actions{display:flex;align-items:center;padding-top:18px;margin-top:16px;border-top:1px solid #e2eaee}
.vendor-invoice-actions .btn{margin:0!important}

/* Procurement reports: labels sit above controls; no label/control collisions. */
.proc-report-builder{display:grid!important;grid-template-columns:minmax(190px,1.25fr) minmax(165px,1fr) minmax(165px,1fr) minmax(125px,.72fr) minmax(170px,.9fr) auto!important;gap:14px!important;align-items:end!important;margin-bottom:18px!important}
.proc-report-builder>label{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;margin:0!important;min-width:0!important;font-size:11px!important;font-weight:800!important;color:#294a5e!important}
.proc-report-builder select,.proc-report-builder input{width:100%!important;min-width:0!important;height:44px!important;padding:10px 12px!important}
.proc-report-builder>.btn{height:44px!important;align-self:end!important;white-space:nowrap!important;margin:0!important}
.proc-period-field[hidden]{display:none!important}
@media(max-width:1280px){.proc-report-builder{grid-template-columns:repeat(3,minmax(0,1fr))!important}.proc-report-builder>.btn{width:100%}}
@media(max-width:760px){.proc-report-builder{grid-template-columns:1fr!important}}

/* Attendance import uses the shared enterprise picker with comfortable separation. */
.attendance-import-form{margin-top:14px}
.attendance-csv-upload{margin-bottom:0}
.attendance-import-actions{margin-top:16px!important;padding-top:0}

/* File picker remains readable inside narrower cards. */
@media(max-width:1100px){.enterprise-file-picker{grid-template-columns:42px minmax(0,1fr)!important}.enterprise-file-browse{grid-column:1/-1;width:100%}}


/* v104 targeted layout repair: purchase request items + transfer certificate designer */
/* TC content controls are a true two-column form row with equal vertical rhythm. */
.tc-content-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
  margin-top:14px!important;
  margin-bottom:14px!important;
}
.tc-content-layout>label{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:7px!important;
  margin:0!important;
  min-width:0!important;
  line-height:1.25!important;
}
.tc-content-layout>label>input{
  display:block!important;
  width:100%!important;
  height:44px!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.tc-content-layout>label>small{
  display:block!important;
  min-height:16px!important;
  margin:0!important;
  line-height:16px!important;
  color:var(--muted)!important;
  font-weight:500!important;
}
.tc-content-layout .tc-field-spacer{visibility:hidden!important}

/* The purchase request editor is a narrow right-hand card, so line items use a card layout
   instead of a wide desktop table. This guarantees every field and Remove stay visible. */
.proc-editor .proc-form-section{overflow:visible!important}
.proc-editor .proc-item-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:12px!important;
  align-items:end!important;
  padding:16px 0!important;
  border-top:1px solid #e2eaee!important;
}
.proc-editor .proc-item-row:first-child{border-top:0!important}
.proc-editor .proc-item-row label{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  margin:0!important;
  min-width:0!important;
}
.proc-editor .proc-item-row label:nth-of-type(1),
.proc-editor .proc-item-row label:nth-of-type(2){grid-column:auto!important}
.proc-editor .proc-item-row label:nth-of-type(3){grid-column:1!important}
.proc-editor .proc-item-row label:nth-of-type(4){grid-column:2!important}
.proc-editor .proc-item-row label:nth-of-type(5){grid-column:1!important}
.proc-editor .proc-item-row input{
  width:100%!important;
  min-width:0!important;
  height:44px!important;
  box-sizing:border-box!important;
}
.proc-editor .proc-item-row [data-remove-proc-item]{
  grid-column:2!important;
  width:100%!important;
  min-height:44px!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #f2c7c3!important;
  border-radius:10px!important;
  background:#fff6f5!important;
  color:#b42318!important;
  font-weight:850!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.proc-editor .proc-item-row [data-remove-proc-item]:hover{background:#fff0ee!important;border-color:#e9aaa4!important}
@media(max-width:640px){
  .tc-content-layout{grid-template-columns:1fr!important}
  .tc-content-layout .tc-field-spacer{display:none!important}
  .proc-editor .proc-item-row{grid-template-columns:1fr!important}
  .proc-editor .proc-item-row label,
  .proc-editor .proc-item-row label:nth-of-type(1),
  .proc-editor .proc-item-row label:nth-of-type(2),
  .proc-editor .proc-item-row label:nth-of-type(3),
  .proc-editor .proc-item-row label:nth-of-type(4),
  .proc-editor .proc-item-row label:nth-of-type(5),
  .proc-editor .proc-item-row [data-remove-proc-item]{grid-column:1!important}
}

/* v105: enterprise leave + payroll record cards */
.enterprise-record-list{display:grid;gap:14px;margin-top:16px}
.enterprise-record-card{display:grid!important;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px!important;border:1px solid #d8e5ec!important;border-radius:16px!important;background:linear-gradient(180deg,#fff,#fbfdfe)!important;box-shadow:0 8px 22px rgba(20,58,78,.055);transition:border-color .18s,box-shadow .18s,transform .18s}
.enterprise-record-card:hover{border-color:#bdd9e6!important;box-shadow:0 12px 28px rgba(20,58,78,.09);transform:translateY(-1px)}
.leave-record-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e9f7fc;color:#087fb8;font-weight:900;font-size:19px}
.leave-record-main{min-width:0}
.leave-record-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:13px}.leave-record-title b{font-size:16px}
.leave-record-meta{display:flex;gap:28px;flex-wrap:wrap}.leave-record-meta span{display:grid;gap:3px}.leave-record-meta small{font-size:10px;font-weight:850;letter-spacing:.08em;color:#78909c}.leave-record-meta strong{font-size:13px;color:#18394a}.leave-record-actions{display:flex;align-items:center;justify-content:flex-end}

.mypay-history-panel{overflow:visible}.mypay-history-panel>.panel-head{padding-bottom:16px;border-bottom:1px solid #e2ebf0;margin-bottom:16px}
.mypay-history-list{display:grid;gap:14px}
.mypay-history-card{display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px 20px;border:1px solid #d9e5eb;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(18,58,78,.05)}
.mypay-month{display:grid;place-items:center;align-content:center;min-height:64px;border-radius:14px;background:linear-gradient(145deg,#0b4561,#0b86ad);color:#fff}.mypay-month span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.mypay-month strong{font-size:19px;margin-top:2px}
.mypay-history-main>b{display:block;font-size:16px;margin-bottom:10px}.mypay-amounts{display:flex;gap:28px;flex-wrap:wrap}.mypay-amounts span{display:grid;gap:3px}.mypay-amounts small{font-size:10px;font-weight:850;letter-spacing:.08em;color:#78909c}.mypay-amounts strong{font-size:13px}.mypay-history-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}

.payroll-metric-grid{gap:16px}.payroll-metric-card{position:relative;overflow:hidden;min-height:126px;border-color:#d6e4eb;box-shadow:0 10px 26px rgba(18,58,78,.06)}.payroll-metric-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#087fb8,#31bde7)}.payroll-metric-card em{display:block;margin-top:4px;color:#7c909b;font-size:11px;font-style:normal}
.payroll-dashboard-grid{align-items:start}.payroll-workflow-panel,.payroll-recent-panel{overflow:visible}.payroll-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.payroll-quick-actions a{position:relative;display:grid;gap:4px;padding:16px 42px 16px 16px;border:1px solid #d9e5eb;border-radius:14px;background:linear-gradient(180deg,#fff,#f8fbfd);color:var(--text);min-height:82px}.payroll-quick-actions a:hover{border-color:#afd5e4;box-shadow:0 8px 20px rgba(8,127,184,.08)}.payroll-quick-actions a b{font-size:14px}.payroll-quick-actions a small{color:var(--muted);font-size:11px}.payroll-quick-actions a>span{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:20px;color:#087fb8}
.payroll-record-list{display:grid;gap:10px;margin-top:14px}.payroll-record-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid #e0e9ee;border-radius:13px;background:#fbfdfe}.payroll-record-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#e8f5fb;color:#087fb8;font-weight:900}.payroll-record-main{display:grid;gap:3px;min-width:0}.payroll-record-main small,.payroll-record-amount small{color:var(--muted);font-size:10px}.payroll-record-amount{display:grid;gap:2px;text-align:right}.payroll-record-amount b{font-size:13px}

.payroll-enterprise-toolbar>.panel-head{align-items:flex-end}.payroll-enterprise-toolbar .generate-all{display:grid;grid-template-columns:minmax(180px,220px) auto;gap:10px;align-items:end;padding:12px;border:1px solid #dce7ed;border-radius:14px;background:#f8fbfd}.payroll-enterprise-toolbar .generate-all label{margin:0;display:grid;gap:6px;font-size:12px;font-weight:800}.payroll-enterprise-toolbar .generate-all input{height:42px;padding:9px 11px;border:1px solid #cbd8df;border-radius:10px;background:#fff}.payroll-enterprise-toolbar .generate-all .btn{height:42px;white-space:nowrap}
.enterprise-payslip-list .rowcard{margin-bottom:10px;padding:14px 15px;border:1px solid #e0e9ee;border-radius:13px;background:#fbfdfe}.enterprise-payslip-list .rowcard:last-child{margin-bottom:0}.process-payroll-enterprise{border-top:4px solid #0b86ad}

@media(max-width:900px){.mypay-history-card{grid-template-columns:70px minmax(0,1fr)}.mypay-history-actions{grid-column:1/-1;justify-content:flex-start;padding-left:88px}.payroll-quick-actions{grid-template-columns:1fr}.payroll-enterprise-toolbar>.panel-head{align-items:stretch;flex-direction:column}.payroll-enterprise-toolbar .generate-all{grid-template-columns:1fr auto}}
@media(max-width:640px){.enterprise-record-card{grid-template-columns:42px 1fr}.leave-record-actions{grid-column:1/-1;justify-content:flex-start;padding-left:58px}.leave-record-meta{gap:14px}.mypay-history-card{grid-template-columns:1fr}.mypay-month{width:74px}.mypay-history-actions{grid-column:1;padding-left:0}.payroll-record-card{grid-template-columns:40px 1fr}.payroll-record-amount,.payroll-record-card>.btn{grid-column:2;text-align:left;justify-self:start}.payroll-enterprise-toolbar .generate-all{grid-template-columns:1fr}}

/* v106 student attendance enterprise filter alignment */
.student-attendance-filter{
  display:grid!important;
  gap:18px!important;
  align-items:end!important;
  padding:16px 18px!important;
  margin-top:14px!important;
  border:1px solid #dce7ee;
  border-radius:14px;
  background:linear-gradient(180deg,#fbfdff 0%,#f7fbfd 100%);
}
.student-register-filter{grid-template-columns:minmax(360px,1.65fr) minmax(190px,.65fr)!important;max-width:760px}
.student-report-filter{grid-template-columns:minmax(290px,1.45fr) minmax(180px,.8fr) minmax(180px,.8fr) auto!important;max-width:none}
.student-attendance-filter>label{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:8px!important;
  min-width:0!important;
  margin:0!important;
  color:#294a5e!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:800!important;
}
.student-attendance-filter>label>select,
.student-attendance-filter>label>input{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:46px!important;
  margin:0!important;
  padding:0 13px!important;
  border:1px solid #c9d9e3!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#17384b!important;
  font:inherit!important;
  font-size:13px!important;
  line-height:44px!important;
  box-shadow:0 1px 2px rgba(23,49,65,.03)!important;
}
.student-attendance-filter>label>select:focus,
.student-attendance-filter>label>input:focus{outline:none!important;border-color:#168fc1!important;box-shadow:0 0 0 3px rgba(8,127,184,.09)!important}
.student-report-filter .period-field{flex-direction:column!important;gap:8px!important}
.student-report-filter .workspace-filter-action{display:flex!important;align-items:flex-end!important;height:auto!important;min-height:67px!important}
.student-report-filter .workspace-filter-action .btn{height:46px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;padding:0 18px!important}
.attendance-report-panel .workspace-summary-strip{margin-top:18px!important}
@media(max-width:1180px){.student-report-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important}.student-report-filter .workspace-filter-action{min-height:0!important;align-items:stretch!important}.student-report-filter .workspace-filter-action .btn{width:100%!important}}
@media(max-width:820px){.student-register-filter,.student-report-filter{grid-template-columns:1fr!important;max-width:none}.student-attendance-filter{padding:14px!important}.student-report-filter .workspace-filter-action .btn{width:100%!important}}

/* v107 branch-context governance */
.branch-scope-trigger.branch-scope-locked{cursor:default;opacity:.96}
.branch-scope-trigger.branch-scope-locked:hover{transform:none;box-shadow:none}
.branch-scope-trigger.branch-scope-locked .branch-scope-icon{opacity:.75}
/* v109 student attendance morning/afternoon governance */
.attendance-session-head{align-items:flex-start;gap:20px}.session-lock-card{min-width:190px;border:1px solid #b9e4cf;background:#effcf5;border-radius:14px;padding:12px 16px;display:flex;flex-direction:column;gap:2px}.session-lock-card small{font-size:10px;letter-spacing:.12em;font-weight:800;color:#567}.session-lock-card strong{font-size:18px;color:#087443}.session-lock-card span{font-size:11px;color:#5f7280}.session-lock-card.locked{background:#fff5f3;border-color:#ffd0c8}.session-lock-card.locked strong{color:#b42318}.attendance-session-filters{display:grid;grid-template-columns:1.1fr 1.2fr 1.2fr 1.3fr;gap:14px;margin-top:18px;padding-top:18px;border-top:1px solid #e2eaf0}.attendance-session-filters label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:12px}.attendance-session-filters input,.attendance-session-filters select{height:46px}.attendance-policy-alert{margin-top:16px;border:1px solid #f1d7a6;background:#fff9eb;border-radius:12px;padding:13px 15px;display:flex;flex-direction:column;gap:4px}.attendance-policy-alert.locked{border-color:#fac5bd;background:#fff5f3}.attendance-policy-alert.holiday{border-color:#b9daf7;background:#eff8ff}.attendance-policy-alert span{font-size:12px;color:#607384}.attendance-summary-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}.attendance-summary-cards span{border:1px solid #d9e4ec;border-radius:12px;background:#f8fbfd;padding:12px 13px;display:flex;flex-direction:column;gap:2px}.attendance-summary-cards b{font-size:20px;color:#0b2f46}.attendance-summary-cards small{font-size:11px;color:#63788a}.bulk-exception-bar{display:grid;grid-template-columns:1fr 210px auto;gap:12px;align-items:center;border:1px solid #dbe6ed;background:#f7fafc;border-radius:14px;padding:14px;margin-bottom:14px}.bulk-exception-bar div{display:flex;flex-direction:column;gap:3px}.bulk-exception-bar small{color:#708493}.attendance-exception-list{display:flex;flex-direction:column;gap:9px}.attendance-student-row{display:grid;grid-template-columns:36px minmax(180px,1.2fr) 130px minmax(160px,.9fr) minmax(180px,1fr);gap:12px;align-items:center;border:1px solid #dce6ed;background:#fff;border-radius:13px;padding:12px 14px;transition:.15s}.attendance-student-row.exception{border-color:#f4c2b6;background:#fff9f7;box-shadow:inset 3px 0 #e76f51}.attendance-student-check{display:flex;align-items:center;justify-content:center}.attendance-student-check input{width:18px;height:18px}.attendance-student-name{display:flex;flex-direction:column;gap:2px}.attendance-student-name small{color:#748797}.attendance-default-present{font-size:11px;color:#5e7281}.attendance-default-present strong{display:block;color:#07834f;font-size:12px}.attendance-status-field,.attendance-remark-field{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:800;color:#526979;text-transform:uppercase;letter-spacing:.04em}.attendance-status-field select,.attendance-remark-field input{height:42px;text-transform:none;letter-spacing:0}.attendance-save-bar{position:sticky;bottom:0;background:rgba(255,255,255,.96);border-top:1px solid #e0e8ee;margin:18px -1px -1px;padding:14px 0 0;z-index:2}.locked-correction-request{margin-top:16px;border:1px solid #d9e3ea;border-radius:12px;background:#fbfdfe;padding:12px 14px}.locked-correction-request summary{font-weight:800;cursor:pointer}.locked-correction-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.locked-correction-form label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:12px}.locked-correction-form .correction-reason{grid-column:1/-1}.locked-correction-form button{justify-self:start}.attendance-percent-badge{display:inline-flex;min-width:66px;justify-content:center;border-radius:999px;background:#eaf8f1;color:#067647;font-weight:800;padding:6px 9px}.correction-list{display:flex;flex-direction:column;gap:12px}.correction-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.45fr);gap:18px;border:1px solid #dce6ed;border-radius:14px;padding:16px;background:#fff}.correction-card h3{margin:4px 0 6px}.correction-card h3 span{font-size:12px;font-weight:500;color:#6b7f8e}.correction-meta{display:flex;flex-direction:column;gap:7px;align-items:flex-end;text-align:right}.correction-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr auto auto;gap:10px;border-top:1px solid #e5ecf1;padding-top:12px}
@media(max-width:1100px){.attendance-session-filters{grid-template-columns:1fr 1fr}.attendance-summary-cards{grid-template-columns:repeat(3,1fr)}.attendance-student-row{grid-template-columns:34px 1fr 120px 1fr}.attendance-remark-field{grid-column:2/-1}.bulk-exception-bar{grid-template-columns:1fr 1fr}.bulk-exception-bar .btn{grid-column:2}}
@media(max-width:720px){.attendance-session-head{flex-direction:column}.session-lock-card{width:100%}.attendance-session-filters{grid-template-columns:1fr}.attendance-summary-cards{grid-template-columns:repeat(2,1fr)}.bulk-exception-bar{grid-template-columns:1fr}.bulk-exception-bar .btn{grid-column:auto}.attendance-student-row{grid-template-columns:34px 1fr}.attendance-default-present{grid-column:2}.attendance-status-field,.attendance-remark-field{grid-column:2}.correction-card{grid-template-columns:1fr}.correction-meta{align-items:flex-start;text-align:left}.correction-actions{grid-template-columns:1fr}.locked-correction-form{grid-template-columns:1fr}.locked-correction-form .correction-reason{grid-column:auto}}
.attendance-policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.attendance-policy-card{border:1px solid #dce6ed;border-radius:13px;padding:14px;background:#fbfdfe;display:grid;gap:10px}.attendance-policy-card label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:700}.attendance-policy-card .check{flex-direction:row;align-items:center}.attendance-policy-card.new{border-style:dashed;background:#f5faff}@media(max-width:980px){.attendance-policy-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.attendance-policy-grid{grid-template-columns:1fr}}


/* v112 academic class attendance ownership */
.class-attendance-teachers{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #e4edf2}
.class-attendance-teachers>div{display:grid;gap:3px;padding:9px 10px;border:1px solid #e0eaf0;border-radius:10px;background:#f8fbfd}
.class-attendance-teachers span{font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#6d8795}
.class-attendance-teachers strong{font-size:12px;line-height:1.35;color:#12394d}
.class-card-actions{display:flex;justify-content:flex-end;margin-top:12px;padding-top:12px;border-top:1px solid #e4edf2}
.attendance-teacher-assignment{display:grid;gap:14px;margin:18px 0;padding:18px;border:1px solid #d8e5ec;border-radius:16px;background:linear-gradient(180deg,#f9fcfd,#f4f9fb)}
.attendance-teacher-assignment .assignment-heading{display:grid;gap:4px;padding-bottom:12px;border-bottom:1px solid #e0eaf0}
.attendance-teacher-assignment .assignment-heading h3{margin:0;font-size:18px}
.attendance-teacher-assignment label{display:grid;gap:7px}
.attendance-teacher-assignment label>small{color:#6f8794;font-size:11px;line-height:1.4}
.class-editor-form{display:grid;gap:14px}
@media(max-width:760px){.attendance-teacher-assignment .grid2{grid-template-columns:1fr}.class-card-actions{justify-content:stretch}.class-card-actions .btn{width:100%;text-align:center}}

/* v113 workforce coverage and scheduling */
.schedule-teacher-state{display:flex;flex-direction:column;gap:3px;min-width:150px}.schedule-teacher-state small{color:#64748b}.schedule-teacher-state.vacant{padding:8px 10px;border:1px solid #fecaca;background:#fff7f7;border-radius:10px;color:#b91c1c}.schedule-teacher-state.covered{padding:8px 10px;border:1px solid #bbf7d0;background:#f0fdf4;border-radius:10px;color:#166534}
.workforce-coverage-widget{margin-top:18px}.coverage-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:18px 0}.coverage-metrics article{border:1px solid #d9e4ee;border-radius:14px;padding:15px;background:#fff}.coverage-metrics small{display:block;color:#60758a;font-weight:700;margin-bottom:5px}.coverage-metrics strong{font-size:28px;color:#082a43}.coverage-metrics article.ok{border-bottom:3px solid #22c55e}.coverage-metrics article.warn{border-bottom:3px solid #f59e0b}.coverage-metrics article.danger{border-bottom:3px solid #ef4444}.missing-class-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.missing-class-grid article{display:flex;flex-direction:column;gap:5px;padding:14px;border:1px solid #fecaca;background:#fffafa;border-radius:14px}.coverage-clear{padding:14px 16px;border:1px solid #bbf7d0;background:#f0fdf4;border-radius:12px;color:#166534;font-weight:700}.status-pill.danger{background:#fee2e2;color:#b91c1c;border-color:#fecaca}
@media(max-width:1100px){.coverage-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.missing-class-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.coverage-metrics,.missing-class-grid{grid-template-columns:1fr 1fr}}

/* v114 communication action spacing + MFA Super Admin policy toggle */
.automation-primary-action{display:flex;align-items:center;margin-top:20px;padding-top:4px}
.automation-run-action{display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:wrap;margin-top:12px!important;padding-top:14px!important;border-top:1px solid var(--line)}
.automation-run-action .btn{flex:0 0 auto;margin:0!important}
.automation-run-action small{line-height:1.45}
.security-toggle-card{display:flex!important;align-items:center;justify-content:space-between;gap:24px;margin:16px 0 20px!important;padding:16px 17px;border:1px solid #d9e5ec;border-radius:14px;background:#f8fbfd;cursor:pointer}
.security-toggle-copy{display:grid;gap:4px;min-width:0}
.security-toggle-copy b{font-size:13px;color:var(--text)}
.security-toggle-copy small{font-size:11px;line-height:1.5;color:var(--muted);max-width:720px}
.security-toggle-card .switch-control{flex:0 0 42px}
@media(max-width:650px){.security-toggle-card{align-items:flex-start}.automation-run-action{align-items:flex-start!important;flex-direction:column}.automation-run-action .btn{width:100%}}

/* v123 Gallery album cover + capacity */
.gallery-limits-banner{display:grid;grid-template-columns:minmax(260px,1fr) minmax(420px,1.35fr);gap:18px;align-items:center;margin:0 0 18px;padding:18px 20px;border:1px solid #cfe2eb;border-radius:16px;background:linear-gradient(135deg,#f7fcfe,#eef8fc);box-shadow:0 8px 24px rgba(20,55,75,.04)}
.gallery-limits-banner h3{margin:4px 0 5px}.gallery-limits-banner p{margin:0;color:#67808e;font-size:12px}.gallery-limit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.gallery-limit-grid span{display:grid;gap:3px;padding:11px 12px;border:1px solid #d9e8ef;border-radius:11px;background:#fff}.gallery-limit-grid b{font-size:15px;color:#12384b}.gallery-limit-grid small{text-transform:uppercase;letter-spacing:.05em;font-size:8.5px;color:#748b97;font-weight:800}.gallery-limit-note{grid-column:1/-1;color:#6d8490;font-size:10px}
.gallery-cover-create{margin:12px 0 16px}.gallery-cover-manager{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr);gap:20px;margin:16px 0 22px;padding:18px;border:1px solid #d8e5eb;border-radius:16px;background:#f9fcfd}.gallery-cover-preview{min-height:220px;border:1px solid #d7e5eb;border-radius:14px;overflow:hidden;background:#edf5f8}.gallery-cover-preview img{display:block;width:100%;height:100%;min-height:220px;max-height:260px;object-fit:cover}.gallery-cover-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;padding:24px;color:#6b8491}.gallery-cover-empty b{color:#25485a}.gallery-cover-form{display:flex;flex-direction:column;justify-content:center;gap:14px}.gallery-cover-form h3{margin:4px 0 5px}.gallery-cover-form p{margin:0;color:#667f8c;font-size:12px;line-height:1.55}.gallery-cover-form .btn{align-self:flex-start}.gallery-manager-divider{margin:4px 0 18px}.panel-head.compact{margin-bottom:4px}.gallery-capacity-mini{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:10px;background:#eef7fa;color:#57717e;font-size:10px}.gallery-capacity-mini b{color:#16475d}.gallery-file-summary.danger{background:#fff0f0;color:#b42318}
@media(max-width:1050px){.gallery-limits-banner{grid-template-columns:1fr}.gallery-limit-grid{grid-template-columns:repeat(2,1fr)}.gallery-cover-manager{grid-template-columns:1fr}.gallery-cover-preview img{max-height:320px}}
@media(max-width:620px){.gallery-limit-grid{grid-template-columns:1fr 1fr}.gallery-limits-banner{padding:14px}.gallery-cover-manager{padding:12px}.gallery-cover-form .btn{width:100%}}

/* v125 Page Builder workspace */
.pages-workspace{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:20px;align-items:start}.pages-directory{position:sticky;top:88px}.pages-admin-list{display:grid;gap:8px}.pages-admin-item{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;border:1px solid #dce7f0;border-radius:12px;text-decoration:none;color:#0a2740;background:#fff}.pages-admin-item:hover,.pages-admin-item.active{border-color:#63b9e7;background:#eef8fd}.pages-admin-item span{display:grid;gap:3px}.pages-admin-item small{color:#6c8296;font-weight:500}.pages-main{display:grid;gap:20px;min-width:0}.page-settings-panel,.page-builder-panel,.page-section-editor{min-width:0}.page-menu-check{align-self:end;min-height:46px;display:flex!important;align-items:center;gap:8px;padding:0 4px}.page-legacy-content{margin:14px 0;padding:12px 14px;border:1px solid #dbe6ef;border-radius:12px;background:#f8fbfd}.page-legacy-content summary{font-weight:800;cursor:pointer}.page-delete-form{margin-top:12px}.page-builder-toolbar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}.page-builder-add{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid #d9e6ef;border-radius:12px;background:#f8fbfd;color:#0c3552;text-decoration:none;font-weight:800}.page-builder-add b{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#e4f4fb;color:#0b86bd;font-size:18px}.page-builder-add:hover{border-color:#55b8e4;background:#eef9fd}.page-builder-empty{padding:30px;text-align:center;border:1px dashed #cbdde8;border-radius:14px;background:#fbfdff}.page-section-list{display:grid;gap:10px}.page-section-card{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #d9e6ef;border-radius:14px;background:#fff;padding:12px 14px}.page-section-card.dragging{opacity:.55;border-color:#3ca9dd}.page-section-handle{cursor:grab;color:#8aa0b2;font-weight:900;font-size:18px;letter-spacing:-3px}.page-section-copy{display:grid;gap:2px;min-width:0}.page-section-copy span{font-size:10px;letter-spacing:.12em;font-weight:900;color:#1689bc}.page-section-copy b{font-size:15px}.page-section-copy small{color:#6d8396;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-section-actions{display:flex;align-items:center;gap:10px}.page-section-actions form{margin:0}.page-order-save{position:sticky;bottom:18px;margin-top:12px;padding:12px 14px;background:#082e48;color:#fff;border-radius:12px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 12px 30px rgba(6,39,61,.2)}.page-order-save[hidden]{display:none}.pb-editor-block{margin:14px 0;padding:16px;border:1px solid #dce7ef;border-radius:14px;background:#fbfdff}.pb-editor-block[hidden]{display:none}.pb-editor-head{display:flex;justify-content:space-between;align-items:start;gap:14px;margin-bottom:12px}.pb-editor-head h3{margin:0 0 4px}.pb-editor-head p{margin:0;color:#6b8295}.pb-links-editor,.pb-table-editor,.pb-stats-editor{display:grid;gap:12px;margin:12px 0}.pb-link-editor-row{padding:14px;border:1px solid #d9e6ef;border-radius:12px;background:#fff}.pb-link-editor-row label{margin-bottom:10px}.pb-table-row-editor{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:14px;border:1px solid #d9e6ef;border-radius:12px;background:#fff;align-items:end}.pb-table-row-editor label{margin:0}.pb-table-row-editor label span{display:block;font-weight:800;margin-bottom:5px}.pb-table-row-editor input+input{margin-top:6px}.pb-stat-row{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:10px;align-items:end;padding:12px;border:1px solid #d9e6ef;border-radius:12px;background:#fff}.pb-stat-row label{margin:0}
@media(max-width:1200px){.page-builder-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.pages-workspace{grid-template-columns:260px minmax(0,1fr)}}
@media(max-width:900px){.pages-workspace{grid-template-columns:1fr}.pages-directory{position:static}.page-builder-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.page-section-card{grid-template-columns:28px minmax(0,1fr)}.page-section-actions{grid-column:2;justify-content:flex-start}.pb-stat-row{grid-template-columns:1fr}}
@media(max-width:560px){.page-builder-toolbar{grid-template-columns:1fr}.pb-editor-head{display:grid}.page-section-card{padding:10px}.pages-admin-item{padding:11px}.page-order-save{position:static}}

/* v126 student lifecycle + creation workspaces */
.enterprise-create-page{max-width:1180px;margin-inline:auto}.enterprise-create-page .form-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px}.promotion-student-grid{grid-template-columns:minmax(380px,.8fr) minmax(560px,1.2fr);align-items:start}.stacked-filter{display:block}.stacked-filter label{display:grid;gap:7px}.promotion-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.check-card{display:flex!important;align-items:flex-start;gap:10px;border:1px solid #d8e4ed;border-radius:14px;padding:14px;background:#f8fbfd;cursor:pointer}.check-card input{margin-top:4px}.check-card span{display:grid;gap:3px}.check-card small{color:#6b8294}.warning-note{margin:16px 0;padding:13px 15px;border:1px solid #f5ddb1;background:#fff8e8;border-radius:12px;color:#7c5412}.student-profile-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 26px;margin-bottom:20px;border-radius:18px;background:linear-gradient(135deg,#0a3954,#147d94);color:#fff}.student-profile-hero .eyebrow{color:#7fe2ff}.student-profile-hero h2{margin:4px 0 6px;font-size:28px}.student-profile-hero p{margin:0;color:#d7eef5}.student-profile-hero .btn{background:#fff;color:#0a3954;border-color:#d7e7ef}.student-profile-directory{display:grid;gap:10px}.student-profile-directory .rowcard{text-decoration:none}.optional-optin-list{display:grid;gap:12px}.optional-optin-card{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #d9e5ed;border-radius:14px;padding:16px;background:#fff}.optional-optin-card.is-selected{border-color:#9edebd;background:#f5fcf8}.optional-optin-card h3{margin:6px 0 4px}.optional-optin-card p{margin:0;color:#647d90}.optional-optin-card>div:last-child{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
@media(max-width:1050px){.promotion-student-grid{grid-template-columns:1fr}.promotion-choice{grid-template-columns:1fr}}
@media(max-width:720px){.student-profile-hero{align-items:flex-start;flex-direction:column}.optional-optin-card{align-items:flex-start;flex-direction:column}.optional-optin-card>div:last-child{justify-content:flex-start}.enterprise-create-page .grid3,.enterprise-create-page .grid2{grid-template-columns:1fr}}


/* v127 student identity + secure document repository */
.student-doc-grid{grid-template-columns:minmax(340px,.78fr) minmax(0,1.22fr);align-items:start}.student-document-list{display:grid;gap:12px}.student-document-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px;border:1px solid #d9e6ed;border-radius:14px;background:#fff}.student-document-icon{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;background:#e5f4fa;color:#087daf;font-size:11px;font-weight:900;letter-spacing:.08em}.student-document-card b,.student-document-card small{display:block}.student-document-card small{margin-top:4px;color:#718895}.student-document-card p{margin:7px 0 0;color:#536b79}.student-document-card .row-actions{justify-self:end;flex-wrap:wrap}.student-document-card form{margin:0}@media(max-width:980px){.student-doc-grid{grid-template-columns:1fr}.student-document-card{grid-template-columns:46px minmax(0,1fr)}.student-document-card .row-actions{grid-column:1/-1;justify-self:stretch}.student-document-card .row-actions .btn{flex:1}}


/* v128 student records + configurable admin workspace */
.sidebar{background:var(--navy)!important}
.enterprise-nav-item.active,.enterprise-nav-group.active-group>.enterprise-group-toggle{background:var(--admin-menu-active)!important;box-shadow:0 8px 20px color-mix(in srgb,var(--admin-menu-active) 28%,transparent)!important}
.nav-submenu a.active{background:color-mix(in srgb,var(--admin-menu-active) 18%,transparent)!important;border-left-color:var(--admin-menu-active)!important}
.module-hero,.dashboard-hero,.config-hero{background:linear-gradient(135deg,var(--admin-hero-start,#08233a),var(--admin-hero-end,#0a7894))!important}
.student-directory-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px;margin-top:8px}
.student-directory-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px 16px;border:1px solid #dbe7ee;border-radius:15px;background:#fff;color:inherit;box-shadow:0 5px 18px rgba(18,61,82,.045);transition:.18s ease;min-width:0}
.student-directory-card:hover{transform:translateY(-1px);border-color:#8fcbe4;box-shadow:0 10px 26px rgba(18,61,82,.09)}
.student-directory-avatar,.student-hero-avatar,.student-photo-preview{width:52px;height:52px;border-radius:14px;object-fit:cover;border:1px solid #d7e6ee;background:#eaf5fa;display:grid;place-items:center;color:#0c78a6;font-weight:900;flex:0 0 auto}
.student-directory-copy{display:grid;gap:3px;min-width:0}.student-directory-copy b{font-size:14px;color:#14374b}.student-directory-copy small{display:block;color:#718695;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.student-directory-action{font-size:11px;font-weight:850;color:var(--blue);white-space:nowrap;padding:8px 10px;border-radius:9px;background:#eef8fc}.student-directory-action b{margin-left:4px}
.student-document-hero{display:flex;align-items:center;justify-content:space-between;gap:20px}.student-document-identity{display:flex;align-items:center;gap:15px;min-width:0}.student-hero-avatar{width:64px;height:64px;border-radius:17px;border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:#fff}.student-document-hero-actions{display:flex;gap:9px;flex-wrap:wrap}.student-document-hero-actions .btn{margin:0!important}
.student-doc-grid{align-items:start;gap:20px}.student-doc-grid>.panel{height:auto!important;margin-bottom:0}.student-document-list{display:grid;gap:12px}.student-document-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px 16px;border:1px solid #dce7ee;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(18,61,82,.04)}.student-document-card small{display:block;color:#728796;margin-top:3px}.student-document-card p{margin:6px 0 0;color:#526d7d}.student-document-card .row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.student-document-card .row-actions form{margin:0}.student-document-card .btn.danger{margin-top:0}
.student-document-icon{width:44px;height:44px;border-radius:11px;background:#e8f5fb;color:#087eb3;display:grid;place-items:center;font-size:10px;font-weight:900;letter-spacing:.05em}
.student-photo-editor{display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;align-items:start;padding:16px;margin:6px 0 18px;border:1px solid #dce7ee;border-radius:15px;background:#f8fbfd}.student-photo-editor .student-photo-preview{width:92px;height:92px;border-radius:18px;font-size:24px}.student-photo-editor h3{margin:3px 0 4px}.student-photo-editor p{margin:0 0 10px}.compact-upload{margin:0!important}.compact-upload .enterprise-file-picker{min-height:64px}.remove-photo-check{margin:10px 0 0!important;font-weight:600!important}
.admin-color-form{margin-top:12px}.admin-color-preview{display:grid;grid-template-columns:92px minmax(0,1fr);min-height:92px;border:1px solid #dbe7ee;border-radius:15px;overflow:hidden;margin:6px 0 16px;background:linear-gradient(135deg,var(--p-start),var(--p-end));color:#fff}.admin-color-preview>span{background:var(--p-side);border-right:4px solid var(--p-active)}.admin-color-preview>div{padding:19px;display:grid;align-content:center;gap:4px}.admin-color-preview b{font-size:16px}.admin-color-preview small{color:#d6eaf3}
@media(max-width:760px){.student-directory-grid{grid-template-columns:1fr}.student-directory-card{grid-template-columns:48px minmax(0,1fr)}.student-directory-action{grid-column:2;justify-self:start}.student-document-hero{display:grid}.student-photo-editor{grid-template-columns:1fr}.student-photo-editor .student-photo-preview{width:78px;height:78px}.student-document-card{grid-template-columns:40px minmax(0,1fr)}.student-document-card .row-actions{grid-column:1/-1}.admin-color-preview{grid-template-columns:62px 1fr}}

/* v129 enterprise operations */
.enterprise-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:16px 0 20px}.enterprise-kpis article{background:#fff;border:1px solid #d7e3ec;border-radius:16px;padding:18px 20px;box-shadow:0 8px 24px rgba(11,42,61,.05)}.enterprise-kpis small{display:block;color:#668097;font-weight:700;margin-bottom:7px}.enterprise-kpis strong{font-size:24px;color:#092a3d}.report-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end}.report-filter-grid label{margin:0}.report-filter-actions,.export-actions,.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.export-actions{padding-top:16px;margin-top:16px;border-top:1px solid #e4edf3}.enterprise-table table,.table-wrap table{width:100%;border-collapse:separate;border-spacing:0}.enterprise-table th,.enterprise-table td,.table-wrap th,.table-wrap td{padding:13px 14px;border-bottom:1px solid #e1eaf0;vertical-align:middle}.enterprise-table th,.table-wrap th{background:#f2f7fa;color:#36566c;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.enterprise-table td small,.table-wrap td small{display:block;color:#71899b;margin-top:4px}.switch{display:inline-flex!important;align-items:center;gap:8px}.switch input{position:absolute;opacity:0}.switch span{width:44px;height:24px;border-radius:999px;background:#cbd8e2;position:relative;display:inline-block;transition:.2s}.switch span:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.18);transition:.2s}.switch input:checked+span{background:var(--blue,#087fb8)}.switch input:checked+span:after{transform:translateX(20px)}.enterprise-record-card{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border:1px solid #d9e5ed;background:#fff;border-radius:15px;padding:17px 18px;margin:10px 0;box-shadow:0 5px 18px rgba(10,40,58,.04)}.enterprise-record-card h3{margin:5px 0 4px}.enterprise-record-card p{margin:0;color:#45677e}.enterprise-record-card small{display:block;margin-top:6px;color:#71899b}.record-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.exit-request-form{min-width:360px;display:grid;grid-template-columns:150px 1fr auto;gap:8px;align-items:end}.exit-request-form label{margin:0}.run-now-separated{margin-top:18px;padding-top:18px;border-top:1px solid #e2eaf0}.inventory-tabs{overflow-x:auto;white-space:nowrap}.csv-preview-panel{margin-top:20px}.status-badge.overdue,.status-badge.danger,.status-badge.failed,.status-badge.rejected{background:#fff0f0;color:#bb1d1d;border:1px solid #ffcaca}.status-badge.partially-paid,.status-badge.warning,.status-badge.pending,.status-badge.running{background:#fff8e7;color:#9a6500;border:1px solid #ffe2a1}.status-badge.due,.status-badge.disabled{background:#f2f5f7;color:#536979;border:1px solid #d8e1e7}.status-badge.paid,.status-badge.active,.status-badge.success,.status-badge.enabled,.status-badge.approved,.status-badge.sent,.status-badge.received{background:#eafaf2;color:#0b7a43;border:1px solid #bcebd2}.status-badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.search-inline{display:flex;gap:10px;margin-bottom:14px}.search-inline input{flex:1}.record-card-list{display:grid;gap:10px}.inventory-tabs a{min-width:max-content}
@media(max-width:1100px){.enterprise-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exit-request-form{min-width:0;grid-template-columns:1fr}}
@media(max-width:700px){.enterprise-kpis,.report-filter-grid{grid-template-columns:1fr}.enterprise-record-card{flex-direction:column}.record-actions{width:100%}.exit-request-form{width:100%;grid-template-columns:1fr}}

/* v129 enterprise operations */
.schedule-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0}.schedule-scope-grid fieldset,.recipient-builder{border:1px solid var(--border,#d7e3ec);border-radius:14px;padding:14px;background:#fbfdff}.schedule-scope-grid legend,.recipient-builder legend{font-weight:800;padding:0 6px}.scope-check-list{display:grid;gap:8px;max-height:190px;overflow:auto;padding-right:4px}.recipient-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:8px}.enterprise-pagination{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:16px}.enterprise-pagination a{min-width:34px;height:34px;border:1px solid #d6e3ec;border-radius:9px;display:grid;place-items:center;text-decoration:none;color:#10334c;background:#fff}.enterprise-pagination a.active{background:#0b7fc0;color:#fff;border-color:#0b7fc0}.enterprise-pagination span{color:#688097;font-size:12px}.field-required-mark{color:#d92d20;font-weight:900}.inventory-settings-panel{max-width:900px}.inventory-settings-panel .check-card{margin-bottom:10px}.inventory-report-filter{grid-template-columns:repeat(4,minmax(0,1fr))}.csv-preview-panel .status-badge.danger{white-space:normal;max-width:360px;line-height:1.35}.status-badge.pending_exit,.status-badge.pending-exit{background:#fff7df;color:#9a6700}.status-badge.disabled{background:#fff0f0;color:#b42318}.status-badge.graduated{background:#eef4ff;color:#3557a4}
@media(max-width:1100px){.schedule-scope-grid{grid-template-columns:1fr}.inventory-report-filter{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.inventory-report-filter{grid-template-columns:1fr}.recipient-row{grid-template-columns:1fr}.recipient-row .btn{width:100%}}

/* v130 enterprise operations hotfix */
.workspace-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;margin:0 0 18px;border-radius:18px;background:linear-gradient(125deg,var(--admin-hero-start,#08233a),var(--admin-hero-end,#0a7894));color:#fff;box-shadow:0 14px 34px rgba(7,54,79,.13);overflow:hidden}
.workspace-hero .eyebrow{color:#74d9ff}.workspace-hero h2{margin:5px 0 6px;font-size:28px;color:#fff}.workspace-hero p{margin:0;max-width:780px;color:#d9edf5;line-height:1.55}.workspace-hero .hero-kpi{min-width:150px;padding:14px 16px;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(255,255,255,.08)}.workspace-hero .hero-kpi small{display:block;color:#bfe9f7;font-size:10px;letter-spacing:.08em;font-weight:800}.workspace-hero .hero-kpi strong{display:block;margin-top:5px;font-size:20px;color:#fff}
.workspace-tabs{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:7px;margin:0 0 18px;border:1px solid #d7e3eb;border-radius:15px;background:#eaf2f6}.workspace-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 13px;border-radius:10px;color:#24465a;font-size:12px;font-weight:800;white-space:nowrap}.workspace-tabs a:hover{background:#fff;color:#0b78aa}.workspace-tabs a.active{background:#fff;color:#087fb8;box-shadow:0 5px 14px rgba(15,64,88,.08)}
.v130-inventory-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.v130-inventory-tabs a{flex:0 0 auto}
#inventoryReportForm label{min-width:0}
.v129-record-card{display:flex!important;grid-template-columns:none!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;padding:17px 18px!important;border-radius:15px!important}.v129-record-card>div:first-child{min-width:0;flex:1}.v129-record-card p,.v129-record-card small{overflow-wrap:anywhere}.v129-record-card .record-actions{flex:0 0 auto}.v129-record-card .record-actions form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0}.v129-record-card .record-actions .btn,.v129-record-card .record-actions .text-danger{margin:0!important}
.student-exit-student-card{display:grid!important;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr)!important;align-items:end!important}.student-exit-identity{min-width:0}.student-exit-identity p{margin-top:4px!important;line-height:1.45}.student-exit-student-card .exit-request-form{min-width:0!important;width:100%;display:grid!important;grid-template-columns:minmax(145px,.7fr) minmax(230px,1.5fr) auto!important;gap:12px!important;align-items:end!important}.student-exit-student-card .exit-request-form label{display:grid;gap:7px;font-weight:700;font-size:12px}.student-exit-student-card .exit-request-form input{width:100%;min-width:0}.student-exit-student-card .exit-request-form .btn{margin:0!important;min-height:42px;white-space:nowrap}
.student-exit-request-card{display:block!important}.student-exit-request-card h3{font-size:16px}.student-exit-request-card p{line-height:1.45}.student-exit-request-card small{line-height:1.5}.student-exit-request-card .record-actions{margin-top:14px}.student-exit-request-card .record-actions form{display:grid;grid-template-columns:minmax(0,1fr) auto auto;width:100%;gap:9px;align-items:end}.student-exit-request-card textarea{min-height:72px;resize:vertical}
.scheduled-report-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important}.scheduled-report-card .record-actions{justify-content:flex-end}.scheduled-report-card .record-actions form{display:flex}.scheduled-report-card h3{overflow-wrap:anywhere}.scheduled-report-card p{line-height:1.45}.scheduled-report-card small{line-height:1.45}
.enterprise-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.enterprise-kpis article{min-width:0}.enterprise-kpis strong{overflow-wrap:anywhere}
@media(max-width:1350px){.enterprise-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.student-exit-student-card{grid-template-columns:1fr!important}.student-exit-student-card .exit-request-form{grid-template-columns:150px minmax(0,1fr) auto!important}}
@media(max-width:900px){.workspace-hero{align-items:flex-start;flex-direction:column}.workspace-hero .hero-kpi{width:100%}.enterprise-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.scheduled-report-card{grid-template-columns:1fr!important}.scheduled-report-card .record-actions{justify-content:flex-start}.student-exit-student-card .exit-request-form{grid-template-columns:1fr!important}.student-exit-request-card .record-actions form{grid-template-columns:1fr}.student-exit-request-card .record-actions .btn{width:100%}}
@media(max-width:620px){.enterprise-kpis{grid-template-columns:1fr}.workspace-hero{padding:20px}.workspace-tabs{align-items:stretch}.workspace-tabs a{flex:1 1 calc(50% - 8px)}.v130-inventory-tabs a{flex:0 0 auto}.v129-record-card{flex-direction:column!important}.v129-record-card .record-actions{width:100%}.scheduled-report-card .record-actions form{width:100%;display:grid;grid-template-columns:1fr 1fr}.scheduled-report-card .record-actions .btn{width:100%}}

/* v132 - Inventory settings and user-account action spacing hotfix */
.inventory-settings-panel form{display:grid;gap:12px}.inventory-settings-panel .check-card{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center!important;gap:14px;margin:0!important;padding:16px 18px!important;min-height:74px;background:#fbfdff}.inventory-settings-panel .check-card input[type="checkbox"]{appearance:auto!important;-webkit-appearance:checkbox!important;width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;margin:0!important;padding:0!important;justify-self:start;accent-color:var(--blue)}.inventory-settings-panel .check-card span{display:grid!important;gap:4px;min-width:0}.inventory-settings-panel .check-card b{font-size:14px;line-height:1.3}.inventory-settings-panel .check-card small{font-size:12px;line-height:1.45;margin:0!important;color:var(--muted)}.inventory-settings-panel .btn.primary{justify-self:start;margin-top:4px}.account-card .profile-body>form.editor{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}.account-card .profile-body>form.editor>.btn{margin-top:2px}.account-card .profile-body>form:not(.editor){display:inline-block;margin:0 10px 0 0;vertical-align:middle}.account-card .profile-body>form:not(.editor) .btn,.account-card .profile-body>form:not(.editor) .text-danger{margin:0!important;min-height:40px;padding:10px 14px;border-radius:10px}.account-card .profile-body>form:not(.editor) .text-danger{border:1px solid #f2c8c5;background:#fff8f7;font-weight:700}.account-card .profile-body>form:not(.editor)+form:not(.editor){margin-left:0}@media(max-width:640px){.inventory-settings-panel .check-card{grid-template-columns:auto minmax(0,1fr);padding:14px!important}.account-card .profile-body>form:not(.editor){display:block;margin:0 0 10px}.account-card .profile-body>form:not(.editor) .btn,.account-card .profile-body>form:not(.editor) .text-danger{width:100%;text-align:center}}
