
:root{
  --navy:#071a33;--navy-2:#0b284d;--blue:#1559a5;--sky:#eaf3ff;--red:#b51f32;
  --green:#137a4b;--gold:#d5a429;--ink:#142033;--muted:#607087;--line:#dce3ec;
  --bg:#f4f7fb;--card:#fff;--shadow:0 10px 28px rgba(7,26,51,.08);--radius:14px
}

/* v32 smart Supply & Equipment Inventory Manager */
.inventory-widget-grid a{background:var(--soft,var(--bg))}

/* ePCR chart reconciliation */
.reports-section-nav{margin-top:-4px}.epcr-report-entry{display:flex;align-items:center;justify-content:space-between;gap:18px;border-left:5px solid var(--blue)}.epcr-report-entry h2{margin:2px 0 5px}.epcr-report-entry p{margin:0}.epcr-filter{grid-template-columns:150px 150px 210px minmax(230px,1fr) auto;align-items:end}.epcr-search{min-width:230px}.epcr-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.epcr-stats .stat-card{text-decoration:none;color:var(--ink)}.epcr-stats .danger-card{border-top:4px solid var(--red)}.epcr-stats .warning-card{border-top:4px solid #d99a16}.epcr-workflow-panel{border-top:4px solid var(--blue)}.epcr-import-grid{display:grid;grid-template-columns:1fr 1fr .9fr;gap:12px}.epcr-import-grid>form,.epcr-match-rules{border:1px solid var(--line);border-radius:10px;padding:14px;background:var(--soft,var(--bg))}.epcr-import-grid h3{margin:0 0 6px}.epcr-import-grid p{min-height:34px;margin:0 0 9px}.epcr-match-rules ol{margin:8px 0 10px;padding-left:20px}.epcr-table-wrap{max-height:68vh}.epcr-table{min-width:1320px}.epcr-table th{position:sticky;top:0;z-index:2;background:var(--navy);color:#fff}.epcr-table td{vertical-align:top;min-width:150px}.epcr-table td:first-child{min-width:165px}.epcr-table td:nth-child(3){min-width:210px}.epcr-table td:nth-child(5){min-width:290px}.epcr-table td:nth-child(6){min-width:225px}.epcr-table td>*{display:block;margin-bottom:4px}.epcr-table tr.epcr-missing{box-shadow:inset 4px 0 0 var(--red)}.epcr-table tr.epcr-created{box-shadow:inset 4px 0 0 #d99a16}.epcr-table tr.epcr-complete{box-shadow:inset 4px 0 0 var(--green)}.epcr-notify{position:relative}.epcr-notify summary{list-style:none;cursor:pointer}.epcr-notify summary::-webkit-details-marker{display:none}.epcr-notify form{display:grid;gap:8px;margin-top:8px;padding:10px;border:1px solid #e7b0b0;border-radius:8px;background:#fff5f5;min-width:270px}.epcr-notify textarea{min-width:250px}.epcr-reminder-history{margin-top:8px!important;padding-top:6px;border-top:1px solid var(--line)}.epcr-admin-grid details>summary{cursor:pointer;font-size:15px;margin-bottom:12px}.epcr-admin-grid details[open]>summary{padding-bottom:10px;border-bottom:1px solid var(--line)}.epcr-reminder-card{max-width:900px;margin-inline:auto;border-top:5px solid var(--red)}.epcr-reminder-message{font-size:17px;line-height:1.6;padding:16px;border-radius:9px;background:var(--soft,var(--bg));border-left:4px solid var(--red)}
body.theme-night .epcr-import-grid>form,body.theme-night .epcr-match-rules,body.theme-night .epcr-reminder-message{background:var(--soft);color:var(--ink)}body.theme-night .epcr-notify form{background:#351d23;border-color:#7e3948;color:#fff}
@media(max-width:1100px){.epcr-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.epcr-filter .button{align-self:end}.epcr-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.epcr-import-grid{grid-template-columns:1fr 1fr}.epcr-match-rules{grid-column:1/-1}}
@media(max-width:760px){.epcr-report-entry{align-items:stretch;flex-direction:column}.epcr-filter,.epcr-stats,.epcr-import-grid{grid-template-columns:1fr}.epcr-match-rules{grid-column:auto}.epcr-table-wrap{max-height:none}.epcr-notify form{min-width:0}.epcr-notify textarea{min-width:0}.epcr-admin-grid{display:block}.epcr-admin-grid>.panel{margin-bottom:12px}}
@media print{.reports-section-nav,.epcr-filter,.epcr-workflow-panel,.epcr-notify,.epcr-admin-grid,.settings-callout,.page-actions{display:none!important}.epcr-table-wrap{max-height:none;overflow:visible}.epcr-table{min-width:0;font-size:8pt}.epcr-table th{position:static}}
.inventory-stats{grid-template-columns:repeat(6,minmax(125px,1fr))}.inventory-alert-panel{border-top:5px solid #d99a16}.inventory-table td:nth-child(3){min-width:280px}.inventory-issue,.inventory-checkout{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.inventory-issue>div,.inventory-checkout>div{display:grid;gap:3px}.inventory-issue span,.inventory-checkout span{color:var(--muted)}.inventory-issue small,.inventory-checkout small{font-size:.78rem;color:var(--muted)}.inventory-checkout .inline-form{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.inventory-checkout .inline-form select{min-width:190px}.quick-inventory-form{border-left:6px solid var(--blue)}.quick-inventory-form .button.large{width:100%;min-height:52px;font-size:1.05rem}.inventory-widget-grid{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:8px}.inventory-widget-grid a{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--soft);color:var(--ink)}.inventory-widget-grid span{font-size:.78rem;color:var(--muted)}.inventory-widget-grid strong{font-size:1.65rem}.danger-text{color:#bd2638}.requisition-header{border-left:6px solid var(--blue)}body.theme-night .inventory-widget-grid a{background:var(--night-surface-2)}body.theme-night .inventory-alert-panel{border-color:#d9a52a}@media(max-width:1100px){.inventory-stats,.inventory-widget-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.inventory-stats,.inventory-widget-grid{grid-template-columns:repeat(2,1fr)}.inventory-issue,.inventory-checkout{align-items:stretch;flex-direction:column}.inventory-checkout .inline-form{justify-content:flex-start}.inventory-checkout .inline-form>*{width:100%}}
@media print{.no-print,.sidebar,.topbar,.demo-banner{display:none!important}.app-shell,.content{display:block!important;margin:0!important;padding:0!important}.panel{box-shadow:none!important;break-inside:avoid}.requisition-header input,.requisition-header select,.requisition-header textarea,table input{border:0!important;background:transparent!important;padding:0!important}}

/* Time clock and UDEMS semi-monthly payroll */
.pay-period-panel{border-top:4px solid var(--blue)}
.pay-period-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.pay-period-toolbar h2{margin:2px 0 5px}
.pay-period-toolbar strong,.pay-period-toolbar small{display:block}
.pay-period-toolbar small{margin-top:5px;color:var(--muted)}
.pay-period-picker{min-width:min(100%,430px)}
.pay-period-picker label{margin:0}
.schedule-pay-range{display:flex;align-items:center;gap:7px;margin-left:auto;white-space:nowrap}.schedule-pay-range form{margin:0}.schedule-pay-range input{width:145px;padding:8px 9px}.schedule-pay-range>span{font-size:12px;color:var(--muted)}.schedule-pay-range .icon-button{display:grid;place-items:center;flex:0 0 auto}
.schedule-toolbar .schedule-view-tabs{min-width:0;flex:1 1 320px}.schedule-toolbar .schedule-pay-range{flex:0 0 auto}
.calendar-day.calendar-blank{background:var(--bg);min-height:70px}
.timeclock-edit-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:18px;align-items:start}
.timeclock-editor-stamp{display:grid;gap:3px;padding:13px;border-left:4px solid var(--blue);border-radius:8px;background:var(--bg)}
.timeclock-editor-stamp small{color:var(--muted)}
.timeclock-last-edit{display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}
.timeclock-last-edit span,.timeclock-audit-list span{font-size:12px;color:var(--muted)}
.timeclock-last-edit p,.timeclock-audit-list p{margin:4px 0 0;font-size:13px}
.timeclock-audit-list{display:grid;gap:9px;max-height:440px;overflow:auto}
.timeclock-audit-list article{display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:8px}
td>small{display:block;margin-top:3px;color:var(--muted)}
@media(max-width:800px){.pay-period-toolbar{align-items:stretch;flex-direction:column}.pay-period-picker{min-width:0;width:100%}.timeclock-edit-layout{grid-template-columns:1fr}.schedule-pay-range{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto auto;width:100%;margin-left:0}.schedule-pay-range input{width:100%;min-width:0}}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
body{margin:0;min-height:100vh}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit}button{cursor:pointer}.muted,small{color:var(--muted)}
.topbar{height:70px;background:var(--navy);color:#fff;display:flex;align-items:center;padding:0 22px;position:sticky;top:0;z-index:20;box-shadow:0 2px 14px rgba(0,0,0,.2)}
.brand{display:flex;align-items:center;gap:11px;color:#fff;min-width:260px}.brand:hover{text-decoration:none}.brand-mark{width:38px;height:38px;border:2px solid #fff;border-radius:9px;display:grid;place-items:center;color:#fff;font-size:22px}.brand span:last-child{display:flex;flex-direction:column}.brand small{color:#b9c9dc;font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-top:2px}
.topbar-user{margin-left:auto;display:flex;align-items:center;gap:10px}.role-badge{background:#173d6d;border:1px solid #315782;border-radius:999px;padding:5px 10px;font-size:12px}
.menu-button{display:none;background:transparent;border:0;color:#fff;font-size:24px;margin-right:12px}.app-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:calc(100vh - 70px)}
.sidebar{background:#0b2342;color:#c9d5e5;padding:22px 14px;display:flex;flex-direction:column;position:sticky;top:70px;height:calc(100vh - 70px);overflow:auto}
.sidebar nav{display:grid;gap:4px}.sidebar nav a{color:#d9e4f1;padding:11px 13px;border-radius:9px;font-weight:650;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:#163b69;color:#fff;text-decoration:none}.nav-heading{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#7993b3;padding:20px 13px 6px}
.sidebar-footer{margin-top:auto;border-top:1px solid #22415f;padding:18px 10px 4px;display:grid;gap:5px}.sidebar-footer small{color:#8ea6c1;line-height:1.4}.app-credit{margin:13px 0 0;text-align:center;color:#748598;font-size:10px;letter-spacing:.035em;font-weight:800}.app-credit span{font-weight:600}.sidebar-footer .app-credit-sidebar{margin:5px 0 0;padding-top:7px;border-top:1px solid color-mix(in srgb,currentColor 26%,transparent);text-align:left;color:var(--nav-muted,#8ea6c1)!important;font-size:9px;opacity:.82}.app-shell-credit{position:fixed;right:12px;bottom:7px;z-index:16;margin:0;padding:3px 7px;border:1px solid color-mix(in srgb,var(--line) 60%,transparent);border-radius:999px;background:color-mix(in srgb,var(--card) 88%,transparent);box-shadow:0 1px 5px rgba(10,38,65,.08);opacity:.72;pointer-events:none}@media(max-width:760px){.app-shell-credit{right:7px;bottom:5px;font-size:8px}}
.content{padding:30px;min-width:0}.public-content{min-height:100vh}
.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.page-heading h1{font-size:30px;letter-spacing:-.03em;margin:3px 0 0}.page-heading p{margin:6px 0;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px!important;font-weight:800;color:var(--blue)!important;margin:0!important}
.button{border:1px solid transparent;border-radius:9px;padding:10px 14px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:7px;line-height:1.1}.button:hover{text-decoration:none;filter:brightness(.97)}.button.primary{background:var(--blue);color:#fff}.button.secondary{background:#e7f0fb;color:#0c4c92;border-color:#c7dcf3}.button.ghost{background:#fff;color:var(--ink);border-color:var(--line)}.button.danger{background:var(--red);color:#fff}.button.success{background:var(--green);color:#fff}.button.small{font-size:12px;padding:7px 10px}.button.large{font-size:17px;padding:14px 24px}.button.full{width:100%}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;display:flex;flex-direction:column;gap:6px;min-height:110px}.stat-card span{font-size:12px;font-weight:750;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.stat-card strong{font-size:28px;letter-spacing:-.03em}.stat-card small{font-size:12px}.stat-card.accent{border-top:4px solid var(--red)}.status-live{color:var(--green)!important;font-size:18px!important}
.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.span-2{grid-column:span 2}.span-3{grid-column:span 3}
.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin-bottom:20px;min-width:0}.panel h2{font-size:18px;margin:0 0 16px}.panel h3{margin-bottom:7px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px}.panel-heading h2{margin:0}.panel-heading>a,.panel-heading>span{font-size:13px}
.announcement-list{display:grid;gap:12px}.announcement{border-left:4px solid #7c8da2;background:#f7f9fc;padding:15px;border-radius:8px}.announcement.priority-important{border-color:var(--gold);background:#fffaf0}.announcement.priority-urgent{border-color:var(--red);background:#fff5f6}.announcement>div{display:flex;justify-content:space-between;align-items:center}.announcement h3{margin:9px 0 5px;font-size:17px}.announcement p{margin:0;white-space:pre-line}
.pill{display:inline-flex;background:#e9eef5;color:#44566d;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}.pill.success{background:#def5e8;color:#0f7045}.pill.warning{background:#fff1c8;color:#8a6500}.pill.danger{background:#ffe0e4;color:#a3182a}.pill.muted{background:#eef1f5;color:#6d7987}
.resource-grid{display:grid;gap:9px}.resource-card{border:1px solid var(--line);border-radius:10px;padding:13px;display:grid;gap:4px;color:var(--ink)}.resource-card:hover{border-color:#91b7df;background:#f8fbff;text-decoration:none}.resource-card span{font-size:12px;color:var(--blue);font-weight:750}
.contact-list{display:grid;gap:10px}.contact-card{border-bottom:1px solid var(--line);padding:0 0 11px;display:flex;flex-direction:column;gap:3px}.contact-card:last-child{border:0}.contact-card span,.contact-card a{font-size:13px}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:#66768a;font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:10px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:11px 10px;border-bottom:1px solid #edf1f5;vertical-align:top}tbody tr:hover{background:#fbfcfe}.empty-cell,.empty-state{text-align:center;color:var(--muted);padding:28px!important}.staffing{display:inline-flex;padding:5px 9px;border-radius:999px;font-weight:800;font-size:11px}.staffing.good{background:#def5e8;color:#0f7045}.staffing.low{background:#fff1c8;color:#8a6500}
.flash-stack{display:grid;gap:8px;margin-bottom:18px}.flash{padding:12px 14px;border-radius:9px;border:1px solid}.flash.success{background:#e7f8ef;border-color:#bce5ce;color:#0f6842}.flash.warning{background:#fff8de;border-color:#f2dc92;color:#735800}.flash.danger{background:#fff0f2;border-color:#efbdc4;color:#8e1726}
input,select,textarea{border:1px solid #cdd7e3;border-radius:8px;padding:10px 11px;background:#fff;color:var(--ink);width:100%}input:focus,select:focus,textarea:focus{outline:3px solid #dbeafa;border-color:#689ed5}textarea{resize:vertical}label{font-size:12px;font-weight:750;color:#46576a;display:grid;gap:6px}label small{font-weight:400}
.stack-form{display:grid;gap:14px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.form-grid .span-2{grid-column:span 2}.form-grid .span-3{grid-column:span 3}.multi-section-form h2{padding-bottom:12px;border-bottom:1px solid var(--line)}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin:0 0 30px}.filter-bar{display:flex;gap:10px;align-items:end;background:#fff;border:1px solid var(--line);padding:13px;border-radius:12px;margin-bottom:18px;box-shadow:var(--shadow)}.filter-bar>input{max-width:360px}.filter-bar label{min-width:150px}.filter-bar select{min-width:145px}.inline-add-form{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:9px;margin-top:17px;padding-top:17px;border-top:1px solid var(--line)}.check-row{display:flex;align-items:flex-start;gap:8px;font-weight:550}.check-row input{width:auto;margin-top:2px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px}
.detail-grid,.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.detail-list{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px 14px;font-size:13px}.detail-list dt{color:var(--muted);font-weight:750}.detail-list dd{margin:0;overflow-wrap:anywhere}.two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.clock-hero{background:linear-gradient(120deg,#102c50,#1b4d82);color:#fff;border-radius:18px;padding:30px;display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;box-shadow:var(--shadow)}.clock-hero.clocked-in{background:linear-gradient(120deg,#0d5b3d,#13865b)}.clock-label{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:800;opacity:.8}.live-clock{font-size:42px;font-weight:850;letter-spacing:-.04em;margin-top:5px}.clock-hero p{margin:8px 0 0;color:#dce9f6}.clock-in-form{display:flex;align-items:center;gap:10px}.clock-in-form input{min-width:250px}.clock-in-form select{min-width:165px}
.schedule-list{display:grid;gap:12px}.shift-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:13px;display:grid;grid-template-columns:80px minmax(0,1fr) 260px;gap:18px;padding:17px}.shift-date{background:#eef5fd;border-radius:10px;display:grid;place-items:center;align-content:center;color:#174f8b}.shift-date strong{font-size:12px;text-transform:uppercase}.shift-date span{font-size:18px;font-weight:850}.shift-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.shift-title-row h2{font-size:17px;margin:0}.shift-main p{margin:5px 0;font-size:13px}.assignment-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.assignment-chip{background:#f0f3f7;border-radius:999px;padding:5px 8px;font-size:11px;display:flex;align-items:center;gap:5px}.assignment-chip form{display:inline}.assignment-chip button{border:0;background:transparent;color:#8d1827;font-weight:900;padding:0}.shift-actions{display:flex;flex-direction:column;gap:9px;align-items:flex-end;justify-content:center}.mini-form{display:grid;gap:6px;width:100%}.mini-form input,.mini-form select{padding:7px;font-size:12px}
.form-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}.form-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:20px;color:var(--ink);min-height:180px}.form-card:hover{border-color:#8db5dd;transform:translateY(-2px);text-decoration:none}.form-card>span{font-size:31px}.form-card h2{font-size:17px;margin:13px 0 7px}.form-card p{font-size:13px;color:var(--muted);line-height:1.5;margin:0}
.notice{border-radius:10px;padding:13px 15px;margin-bottom:18px;border:1px solid;font-size:13px}.notice.warning{background:#fff8df;border-color:#efd787;color:#6e5700}.notice.danger{background:#fff0f2;border-color:#edb7c0;color:#831829}
.login-page{min-height:100vh;background:radial-gradient(circle at 20% 20%,#1c4b7c 0,#0a2547 38%,#06172d 100%);display:grid;place-items:center;padding:30px}.login-card{width:min(430px,100%);background:#fff;border-radius:20px;padding:36px;box-shadow:0 25px 80px rgba(0,0,0,.35)}.login-card h1{font-size:28px;margin:5px 0 8px}.login-emblem{width:58px;height:58px;border-radius:15px;background:var(--red);color:#fff;display:grid;place-items:center;font-size:30px;margin-bottom:20px}.security-note{text-align:center;color:var(--muted);font-size:11px;margin:18px 0 0}.login-legal-links{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;font-size:11px}.login-legal-links a{color:#315f8d;font-weight:750;text-decoration:underline;text-underline-offset:2px}.login-legal-links span{color:#9aa8b6}.login-legal-links a:focus-visible{outline:3px solid #b9daf7;outline-offset:3px;border-radius:3px}
.legal-page{min-height:100vh;background:#eef3f8;padding:28px 18px 56px;color:#17283a}.legal-shell{width:min(900px,100%);margin:0 auto}.legal-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.legal-brand{display:flex;align-items:center;gap:12px;color:#17283a}.legal-brand:hover{text-decoration:none}.legal-brand img{width:56px;height:56px;object-fit:contain}.legal-brand span{display:grid;gap:2px}.legal-brand small{color:#5f7183}.legal-back{font-size:12px;font-weight:800}.legal-document{background:#fff;border:1px solid #d5e0ea;border-radius:16px;box-shadow:0 18px 50px rgba(13,43,72,.1);padding:clamp(22px,4vw,44px)}.legal-document header{border-bottom:1px solid #dce5ed;padding-bottom:18px;margin-bottom:24px}.legal-document h1{font-size:clamp(27px,4vw,38px);margin:4px 0 8px}.legal-document h2{font-size:19px;margin:30px 0 9px;color:#153f66}.legal-document h3{font-size:15px;margin:18px 0 7px}.legal-document p,.legal-document li{font-size:14px;line-height:1.7}.legal-document ul{padding-left:22px}.legal-document .effective-date{font-size:12px;color:#607386;font-weight:750}.legal-document .legal-callout{border-left:5px solid #1670b8;background:#eef7ff;border-radius:8px;padding:14px 16px;margin:18px 0}.legal-document .legal-warning{border-left-color:#b88309;background:#fff8e4}.legal-document .legal-contact{margin-top:30px;padding:16px;border-radius:10px;background:#f3f6f9}.legal-document a{overflow-wrap:anywhere}.legal-footer-links{display:flex;justify-content:center;gap:9px;margin-top:16px;font-size:12px}.legal-footer-links span{color:#8293a3}@media(max-width:560px){.legal-topbar{align-items:flex-start;flex-direction:column}.legal-document{padding:22px 18px}.login-legal-links{flex-wrap:wrap}}
.error-page{text-align:center;padding:80px 20px}.error-page>strong{font-size:80px;color:#cbd6e2}.truncate{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}code{background:#eef2f6;padding:2px 5px;border-radius:5px}
@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:repeat(2,1fr)}.span-3{grid-column:span 2}.detail-grid,.settings-grid{grid-template-columns:repeat(2,1fr)}.shift-card{grid-template-columns:70px minmax(0,1fr)}.shift-actions{grid-column:2;align-items:flex-start}.form-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.menu-button{display:block}.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;top:70px;width:245px;z-index:30;transition:left .2s}.sidebar.open{left:0}.content{padding:20px 14px}.topbar-user>span{display:none}.brand{min-width:0}.dashboard-grid,.stats-grid,.detail-grid,.settings-grid,.two-column,.form-card-grid{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}.form-grid{grid-template-columns:1fr}.form-grid .span-2,.form-grid .span-3{grid-column:span 1}.filter-bar{display:grid;grid-template-columns:1fr}.filter-bar>*{max-width:none!important;width:100%}.check-grid{grid-template-columns:1fr}.inline-add-form{grid-template-columns:1fr 1fr}.clock-hero{align-items:stretch;gap:20px;flex-direction:column}.clock-in-form{flex-direction:column;align-items:stretch}.clock-in-form input{min-width:0}.shift-card{grid-template-columns:60px minmax(0,1fr);gap:12px}.shift-actions{grid-column:1/3;align-items:stretch}.page-heading{align-items:stretch;flex-direction:column}.page-heading .button{align-self:flex-start}}
@media(max-width:520px){.topbar{padding:0 11px}.brand strong{font-size:14px}.brand small{display:none}.role-badge{display:none}.panel{padding:15px}.stats-grid{grid-template-columns:1fr}.inline-add-form{grid-template-columns:1fr}.live-clock{font-size:34px}}
@media(max-width:800px){.clock-in-form select{min-width:0}}
.payroll-report-entry{display:flex;align-items:center;justify-content:space-between;gap:18px;border-left:5px solid var(--green)}.payroll-report-entry h2{margin:2px 0 5px}.payroll-report-entry p{margin:0}.payroll-report-export{display:grid;gap:9px;min-width:min(430px,100%)}.payroll-report-export label{display:grid;gap:5px}.payroll-report-export select{width:100%}@media(max-width:760px){.payroll-report-entry{align-items:stretch;flex-direction:column}.payroll-report-export{min-width:0}}

/* v55: private, continuously updated personal schedule subscriptions. */
.calendar-sync-heading{align-items:center}.calendar-sync-status{display:flex;align-items:center;justify-content:space-between;gap:24px;border-left:6px solid #7b8794}.calendar-sync-status.is-active{border-left-color:var(--green);background:linear-gradient(115deg,color-mix(in srgb,var(--green) 8%,var(--card)),var(--card) 48%)}.calendar-sync-status h2{margin:9px 0 4px}.calendar-sync-status p{margin:0;max-width:900px;color:var(--muted);line-height:1.55}.status-pill{display:inline-flex;padding:5px 10px;border-radius:999px;background:#e8edf2;color:#546273;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.is-active .status-pill{background:#dff6e9;color:#126a45}.calendar-security-note{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;align-items:start;padding:13px 15px;margin-bottom:15px;border:1px solid #efcf71;border-radius:10px;background:#fff7d8;color:#654c00}.calendar-private-link>label{margin-bottom:7px}.calendar-feed-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}.calendar-feed-control input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.calendar-private-link .help-text{margin:8px 0 0;color:var(--muted);font-size:12px}.calendar-provider-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.calendar-provider-card{display:flex;flex-direction:column;margin:0;min-height:285px}.calendar-provider-card h2{margin:14px 0 7px}.calendar-provider-card p{margin:0;color:var(--muted);line-height:1.5}.calendar-provider-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;font-size:18px;font-weight:900;background:#eef4fa;color:#184f86;border:1px solid var(--line)}.google-calendar-icon{background:linear-gradient(135deg,#4285f4 0 50%,#fff 50%);color:#1a4f9f}.apple-calendar-icon{background:#f4f5f7;color:#1d232a}.outlook-calendar-icon{background:#0968c5;color:#fff}.other-calendar-icon{background:#31516f;color:#fff}.provider-actions{display:grid;gap:10px;align-items:start;margin-top:auto;padding-top:18px}.provider-actions>a:not(.button){font-size:12px;font-weight:750}.notice.info{background:#eaf4ff;border-color:#b8d7f7;color:#174a79}.calendar-sync-preferences h2{margin-bottom:0}.calendar-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:17px 0}.check-card{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--soft,var(--bg));cursor:pointer}.check-card input{width:auto;margin-top:2px}.check-card span{display:grid;gap:3px}.check-card small{color:var(--muted)}.calendar-sync-preferences .form-actions{margin:0}.calendar-link-management{display:flex;align-items:center;justify-content:space-between;gap:24px}.calendar-link-management h2{margin-bottom:5px}.calendar-link-management p{margin:0;color:var(--muted);max-width:900px}.calendar-snapshot-explainer p{color:var(--muted);line-height:1.55}.calendar-snapshot-explainer code{white-space:nowrap}
body.theme-night .calendar-security-note{background:#3c3213;border-color:#7b6727;color:#ffe79d}body.theme-night .status-pill{background:#293746;color:#d4dee9}body.theme-night .is-active .status-pill{background:#173d2d;color:#b9f1d3}body.theme-night .notice.info{background:#142d45;border-color:#285a83;color:#cae8ff}body.theme-night .check-card{background:var(--panel-soft,var(--card));color:var(--ink)}
@media(max-width:1180px){.calendar-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.calendar-sync-status,.calendar-link-management{align-items:stretch;flex-direction:column}.calendar-sync-status form,.calendar-sync-status form .button,.calendar-link-management form,.calendar-link-management form .button{width:100%}.calendar-provider-grid,.calendar-option-grid{grid-template-columns:1fr}.calendar-provider-card{min-height:0}.calendar-feed-control{grid-template-columns:1fr}.calendar-security-note{grid-template-columns:1fr}.calendar-sync-heading .heading-actions{width:100%}.calendar-sync-heading .heading-actions .button{flex:1 1 210px}}


.table-actions,.shift-admin-actions{display:flex;align-items:center;gap:6px}.table-actions form,.shift-admin-actions form{margin:0}.submission-data{display:grid;grid-template-columns:minmax(150px,230px) minmax(0,1fr);gap:0;border:1px solid var(--line);border-radius:10px;overflow:hidden}.submission-data dt,.submission-data dd{margin:0;padding:11px 13px;border-bottom:1px solid var(--line)}.submission-data dt{background:#f5f8fb;font-weight:800;color:#506175}.submission-data dd{white-space:pre-wrap;overflow-wrap:anywhere}.submission-data dt:last-of-type,.submission-data dd:last-of-type{border-bottom:0}.stat-card strong.compact{font-size:18px}
@media(max-width:650px){.submission-data{grid-template-columns:1fr}.submission-data dt{border-bottom:0}.submission-data dd{border-bottom:1px solid var(--line)}}

/* Enhanced Aladtec-inspired scheduling and personnel workflows */
.heading-actions{display:flex;gap:8px;flex-wrap:wrap}.link-button{border:0;background:transparent;color:var(--blue);font-weight:750;padding:0}.schedule-shell{background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);overflow:hidden}.schedule-toolbar{display:flex;align-items:center;gap:10px;padding:13px 15px;border-bottom:1px solid var(--line);flex-wrap:wrap}.schedule-view-tabs{display:flex;align-items:stretch;margin-left:auto;overflow:auto}.schedule-view-tabs a{padding:10px 12px;border-bottom:3px solid transparent;color:#2e587f;white-space:nowrap}.schedule-view-tabs a.active{color:var(--blue);border-color:var(--blue);font-weight:800;text-decoration:none}.schedule-date-control{display:flex;align-items:end;gap:6px}.schedule-date-control input{width:155px}.schedule-filter-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:16px;background:#f7faff;border-bottom:1px solid var(--line)}.schedule-filter-panel>div{display:grid;align-content:start;gap:7px}.filter-actions{align-self:end}.schedule-section-title{display:flex;justify-content:space-between;align-items:center;padding:16px 15px 10px}.schedule-section-title h2{margin:0;font-size:18px}.schedule-table-wrap{border-radius:0;border-left:0;border-right:0}.daily-schedule-table .schedule-group-cell{background:#187f9d;color:#fff;font-weight:800;text-align:center;vertical-align:middle;min-width:130px}.daily-schedule-table .open-shift{color:#98257e;font-weight:850}.daily-schedule-table form{display:inline}.schedule-placeholder-section{padding:16px;border-top:1px solid var(--line)}.schedule-placeholder-section h2{margin:0 0 6px;font-size:17px}
.calendar-scroll{overflow:auto}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));min-width:1030px;border-left:1px solid var(--line);border-top:1px solid var(--line)}.calendar-head{text-align:center;padding:9px;background:#f7f9fb;color:#67778a;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px}.calendar-day{min-height:165px;padding:7px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.calendar-day.other-month{background:#f6f8fa;color:#99a5b1}.calendar-day.today{outline:2px solid var(--blue);outline-offset:-2px}.calendar-day-number{font-size:12px;font-weight:850;margin-bottom:5px}.calendar-group-label{font-size:10px;font-weight:850;text-decoration:underline;margin-top:5px}.calendar-entry{font-size:10px;line-height:1.3;display:flex;justify-content:space-between;gap:5px}.calendar-entry.open{color:#98257e;font-weight:850}.week-grid .calendar-day{min-height:330px}.pay-grid .calendar-day{min-height:210px}
.calendar-entry.schedule-position-entry{align-items:flex-start;border-radius:4px;padding:2px 3px;margin:1px -3px;color:inherit;text-decoration:none}.calendar-entry.schedule-position-entry>span:first-child{min-width:0;overflow-wrap:anywhere}.calendar-entry.schedule-position-entry>span:last-child{flex:0 0 auto;white-space:nowrap}.calendar-entry.schedule-position-entry:hover{background:#e7f2fc;text-decoration:none}.calendar-entry.schedule-position-entry strong{font-weight:900}
.hourly-editor-wrap{padding:14px;overflow:auto}.hourly-header{display:grid;grid-template-columns:130px repeat(24,minmax(48px,1fr));min-width:1280px;border-top:1px solid #b8c4d0;border-left:1px solid #b8c4d0}.hourly-header>div{padding:6px 3px;text-align:center;font-size:9px;background:#f5f7f9;border-right:1px solid #c7d0d9;border-bottom:1px solid #c7d0d9}.hourly-group-title{min-width:1280px;padding:7px;background:#eef2f5;border:1px solid #b8c4d0;border-top:0;font-size:12px;font-weight:850}.hourly-row{display:grid;grid-template-columns:130px minmax(1150px,1fr);min-width:1280px;height:32px;border-left:1px solid #b8c4d0;border-right:1px solid #b8c4d0;border-bottom:1px solid #b8c4d0}.hourly-position{padding:7px;background:#f7f8fa;font-size:11px;border-right:1px solid #b8c4d0}.hourly-track{position:relative;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(4.166% - 1px),#cbd3dc calc(4.166% - 1px),#cbd3dc 4.166%)}.hourly-bar{position:absolute;top:3px;bottom:3px;background:#acd4e7;border:1px solid #69a7c5;border-radius:3px;padding:4px 7px;font-size:10px;white-space:nowrap;overflow:hidden}.hourly-bar.open{background:#f2d5ed;border-color:#bf72b3;color:#7d216e}.editor-subheading{min-width:1280px;margin:22px 0 10px}.availability-hour-board{display:grid;grid-template-columns:230px minmax(1050px,1fr);min-width:1280px;border:1px solid var(--line)}.availability-name-column>div{height:30px;padding:7px;border-bottom:1px solid var(--line);font-size:11px}.availability-board-head{background:#f2f5f8;font-weight:800}.availability-hours-head{display:grid;grid-template-columns:repeat(24,1fr);height:30px}.availability-hours-head span{font-size:9px;text-align:center;padding-top:7px;border-left:1px solid var(--line)}.availability-hour-line{height:30px;border-top:1px solid var(--line);background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(4.166% - 1px),#dbe2e9 calc(4.166% - 1px),#dbe2e9 4.166%)}.availability-hour-line.available{background-color:#dbf3e5}.availability-hour-line.preferred{background-color:#fff1bf}.availability-hour-line.unavailable{background-color:#f8dce0}
.availability-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;padding:16px}.availability-entry-panel{display:grid;align-content:start;gap:12px}.availability-entry-panel form{display:grid;gap:12px}.availability-legend{display:flex;gap:7px;flex-wrap:wrap}.availability-legend span{padding:5px 8px;border-radius:6px;font-size:11px;font-weight:800}.availability-legend .available,.availability-calendar .available{background:#dcf4e6}.availability-legend .preferred,.availability-calendar .preferred{background:#fff0bd}.availability-legend .unavailable,.availability-calendar .unavailable{background:#f8dade}.availability-calendar .calendar-day{min-height:105px}.availability-calendar .calendar-day strong,.availability-calendar .calendar-day small{display:block;font-size:11px}
.availability-selection-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid #bdd3e8;border-radius:9px;background:#eef7ff}.availability-selection-summary>span{display:grid;gap:3px;min-width:0}.availability-selection-summary small{font-size:10px;color:#526a80;overflow-wrap:anywhere}.availability-batch-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.availability-batch-actions small{font-size:10px;color:var(--muted)}.availability-range-alternative{border:1px solid var(--line);border-radius:8px;padding:9px;background:#f8fafc}.availability-range-alternative summary{cursor:pointer;font-size:11px;font-weight:800;color:#365a7c}.availability-range-alternative .two-column{margin-top:10px}.availability-all-day-control{padding:9px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.availability-calendar button.calendar-day{position:relative}.availability-selection-check{display:none;position:absolute;right:7px;top:7px;width:23px;height:23px;border-radius:50%;background:#0868c9;color:#fff;font-size:14px;font-weight:900;line-height:23px;text-align:center;box-shadow:0 2px 6px rgba(0,44,90,.25)}.availability-calendar button.calendar-day.is-selected{outline:4px solid #0868c9!important;outline-offset:-4px;z-index:2}.availability-calendar button.calendar-day.is-selected .availability-selection-check{display:block}.scheduled-database-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:12px 15px;background:#f7faff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap}.scheduled-database-range-form,.scheduled-database-actions{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}.scheduled-database-range-form label{min-width:150px}.scheduled-database-range-form input{width:100%}
.trades-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:18px;padding:16px}.trade-create-panel{box-shadow:none;margin:0;height:max-content}.trade-create-panel form{display:grid;gap:12px}.trade-card{border:1px solid var(--line);border-left:5px solid #7c3f90;border-radius:9px;padding:14px;margin-bottom:11px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.trade-card h3{margin:0 0 6px;font-size:15px}.trade-card p{margin:4px 0;font-size:12px}.trade-review-actions{display:flex;gap:6px;align-items:center}.trade-review-actions form{margin:0}
.personnel-section-nav{position:sticky;top:70px;z-index:8;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px;display:flex;gap:6px;overflow:auto;margin-bottom:18px;box-shadow:var(--shadow)}.personnel-section-nav a{padding:7px 10px;border-radius:999px;border:1px solid #d7e1eb;white-space:nowrap}.personnel-section-nav a:hover{background:#eaf3ff;text-decoration:none}.credential-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.credential-card{background:#f7faff;border:1px solid #dbe5ef;border-radius:10px;padding:13px;display:grid;gap:9px}.credential-card h3{margin:0;color:#245884}
@media(max-width:1150px){.schedule-view-tabs{order:4;width:100%;margin-left:0}.availability-layout,.trades-layout{grid-template-columns:1fr}.credential-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.schedule-filter-panel{grid-template-columns:1fr}.schedule-date-control{width:100%}.schedule-date-control input{width:100%}.credential-grid{grid-template-columns:1fr}.personnel-section-nav{top:70px}.trade-card{grid-template-columns:1fr}.scheduled-database-controls,.scheduled-database-range-form,.scheduled-database-actions{align-items:stretch;flex-direction:column;width:100%}.scheduled-database-range-form label{min-width:0}.availability-selection-summary{align-items:stretch;flex-direction:column}}
@media print{.schedule-toolbar,.schedule-filter-panel,.heading-actions,.sidebar,.topbar,.scheduled-database-actions,.scheduled-database-range-form .button{display:none!important}.app-shell{display:block}.content{padding:0}.schedule-shell{box-shadow:none;border:0}.calendar-grid{min-width:0}.calendar-day{min-height:120px}.scheduled-database-controls{background:#fff;padding:6px 0}.scheduled-database-range-form label{font-size:10px}.scheduled-database-range-form input{border:0;padding:0}}

/* Role-aware branding, account administration, directory, storage and configurators */
.brand-logo{width:42px;height:42px;object-fit:contain;border-radius:8px;flex:0 0 auto}.sidebar-branding{display:grid;place-items:center;gap:8px;padding:15px 12px 18px;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:10px}.sidebar-branding img{width:132px;height:132px;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(0,0,0,.2))}.sidebar-branding span{display:inline-flex;border:1px solid rgba(222,177,50,.85);color:#f2c94c;border-radius:999px;padding:5px 11px;font-size:11px;font-weight:800;text-align:center}.login-logo-image{display:block;width:132px;height:132px;object-fit:contain;margin:0 auto 14px;filter:drop-shadow(0 10px 16px rgba(0,0,0,.12))}.narrow-page{max-width:640px;margin:0 auto}.narrow-panel{max-width:760px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.directory-card{border:1px solid var(--line);border-radius:11px;padding:14px;display:flex;gap:12px;background:#fff}.directory-card h3{margin:0 0 3px;font-size:15px}.directory-card p{margin:0 0 7px;color:var(--muted);font-size:12px}.directory-card a{display:block;font-size:12px;overflow-wrap:anywhere}.directory-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#dce9f6;color:#245884;font-weight:900;flex:0 0 auto}.account-options{display:grid;gap:7px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}.permission-note{margin-top:12px;background:#f5f8fc;border:1px solid #d9e4ef;border-radius:8px;padding:10px 12px;font-size:12px;color:#485c70}.profile-summary-grid{display:grid;grid-template-columns:280px repeat(2,minmax(0,1fr));gap:16px}.profile-photo-panel{display:grid;align-content:start;gap:12px}.personnel-profile-photo{width:100%;max-height:260px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.personnel-photo-placeholder{height:220px;border-radius:10px;background:#e6eef6;display:grid;place-items:center;font-size:54px;font-weight:900;color:#315a82}.compact-form{gap:8px}.account-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.account-status-grid>div{background:#f5f8fb;border:1px solid #dde5ed;border-radius:9px;padding:11px}.account-status-grid span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:800}.account-status-grid strong{display:block;margin-top:4px;font-size:13px;overflow-wrap:anywhere}.account-admin-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.account-admin-actions form{margin:0}.mini-upload-form{display:flex;gap:6px;align-items:center;margin-top:6px}.mini-upload-form input[type=file]{max-width:190px;font-size:10px}.storage-breadcrumbs{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:0 0 12px;font-size:12px}.storage-actions{display:grid;grid-template-columns:1fr 1.3fr;gap:12px;margin-bottom:16px}.inline-storage-form{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px}.inline-storage-form input{min-width:0}.storage-name{font-weight:800}.code-editor{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.5;min-height:520px;white-space:pre;tab-size:2}.role-badge{max-width:190px;text-align:center}.button.warning{background:#b88400;color:#fff}.button.warning:hover{background:#916900}.pill.info{background:#e0efff;color:#135693}
@media(max-width:1100px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-summary-grid{grid-template-columns:240px 1fr}.profile-summary-grid>section:last-child{grid-column:1/3}.account-status-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.sidebar-branding img{width:100px;height:100px}.directory-grid,.profile-summary-grid,.storage-actions{grid-template-columns:1fr}.profile-summary-grid>section:last-child{grid-column:auto}.account-status-grid{grid-template-columns:1fr}.mini-upload-form,.inline-storage-form{align-items:stretch;flex-direction:column}.mini-upload-form input[type=file]{max-width:none}}

/* 2026-08-07 scheduling approval, partial coverage, and personnel workflow improvements */
.approval-center{border-left:4px solid var(--gold)}
.approval-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.approval-grid h3{margin:0 0 10px;font-size:15px;color:#274c70}
.approval-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:9px;margin-bottom:9px;background:#fbfdff}
.approval-card div:first-child{display:grid;gap:3px}.approval-card span,.approval-card small{font-size:11px;color:var(--muted)}
.approval-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.approval-actions form{margin:0}.empty-state.compact{padding:14px}
.small-link{font-size:11px}.assigned-person{display:grid;margin-bottom:5px}.assigned-person small{color:var(--muted)}
.coverage-segments{display:grid;gap:5px}.open-coverage-button,.open-segment{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid #c47ab7;background:#fff3fc;color:#812672;border-radius:7px;padding:7px 9px;font-size:11px;font-weight:800;text-decoration:none}.open-coverage-button:hover,.open-segment:hover{background:#f8e5f5;text-decoration:none}.open-coverage-button span,.open-segment span{font-size:10px;font-weight:700}.pending-request-summary{margin-top:6px;color:#8a6300;font-size:10px;font-weight:750}.clickable-open{display:flex;color:#8d277c;text-decoration:none;border-radius:4px;padding:2px 3px}.clickable-open:hover{background:#f6e6f3;text-decoration:none}
.request-shift-panel{max-width:900px}.shift-request-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 18px}.shift-request-summary>div{border:1px solid var(--line);border-radius:8px;padding:10px;display:grid;gap:3px}.shift-request-summary span{font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:800}.open-segment-list{display:grid;gap:7px;margin-bottom:16px}.shift-request-form{max-width:650px}
.hourly-editor-wrap{max-width:100%;overflow-x:auto;overflow-y:visible}.hourly-editor-table{width:max-content;min-width:1280px;max-width:none}.hourly-track{overflow:hidden}.hourly-bar{box-sizing:border-box;max-width:100%;border:1px solid #69a7c5;cursor:pointer;text-align:left}.hourly-bar.selected,.editor-shift-select.selected{outline:3px solid #0b67c2;outline-offset:-1px}.editor-shift-select{border:0;background:transparent;padding:0;color:#174f82;font-weight:800;cursor:pointer}.schedule-assignment-editor{min-width:0;margin-top:18px}.assignment-editor-grid{display:grid;grid-template-columns:minmax(300px,1.4fr) minmax(240px,.8fr);gap:16px;margin-bottom:14px}.member-scroll-box{height:260px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.member-select-row{display:flex;align-items:center;gap:9px;padding:9px 10px;border-bottom:1px solid #edf1f5;cursor:pointer}.member-select-row:hover{background:#f5f9fd}.member-select-row input{width:auto}.member-select-row span{display:grid}.member-select-row small{color:var(--muted)}.assignment-time-boxes{display:grid;align-content:start;gap:11px}.selected-current-assignments{display:grid;gap:4px;background:#f4f7fb;border:1px solid var(--line);border-radius:8px;padding:10px}.selected-current-assignments span{font-size:11px;color:var(--muted)}
.database-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}.database-tabs a{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:800;color:#385a79;text-decoration:none}.database-tabs a span{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#edf3f8;margin-left:4px}.database-tabs a.active{background:var(--blue);color:#fff;border-color:var(--blue)}.database-tabs a.active span{background:rgba(255,255,255,.2)}
.personnel-row{cursor:pointer}.personnel-row:focus{outline:2px solid var(--blue);outline-offset:-2px}.person-name-link{color:inherit;text-decoration:none}.person-name-link:hover{text-decoration:underline}.personnel-hint{margin:10px 2px 0;font-size:11px}.person-context-menu{position:absolute;z-index:200;width:245px;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 16px 45px rgba(8,40,75,.22);padding:7px}.person-context-menu strong{display:block;padding:7px 9px;border-bottom:1px solid var(--line);margin-bottom:4px}.person-context-menu a,.person-context-menu button{display:block;width:100%;border:0;background:transparent;text-align:left;padding:8px 9px;border-radius:6px;color:#244f78;font:inherit;font-size:12px;cursor:pointer;text-decoration:none}.person-context-menu a:hover,.person-context-menu button:hover{background:#f1f6fb}.person-context-menu .danger-action{color:var(--red)}
.table-actions form{display:inline}
.notice.info{background:#eaf4ff;border-color:#bad9f5;color:#194f7a}
.notification-consent-notice{line-height:1.55}.notification-consent-notice a{color:inherit;font-weight:850;text-decoration:underline;text-underline-offset:2px}.notification-consent-notice a:hover,.notification-consent-notice a:focus{color:inherit;text-decoration-thickness:2px}

@media(max-width:900px){.approval-grid,.assignment-editor-grid,.shift-request-summary{grid-template-columns:1fr}.approval-card{grid-template-columns:1fr}.approval-actions{justify-content:flex-start}.member-scroll-box{height:220px}}

/* 2026-08-07 schedule staffing layout + assignment time-off actions */
.standard-slot-note{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin:0 0 12px;padding:10px 12px;border:1px solid #cbdceb;border-radius:9px;background:#f4f9fe;color:#244f78;font-size:11px}.standard-slot-note strong{font-size:12px}.hourly-track{overflow:hidden}.hourly-bar.slot-range{z-index:1;opacity:.78}.hourly-assignment-bar{position:absolute;top:4px;bottom:4px;z-index:3;box-sizing:border-box;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border:1px solid #297149;border-radius:4px;background:#dff4e8;color:#165d38;padding:3px 7px;font-size:10px;font-weight:800;text-align:left;cursor:pointer}.hourly-assignment-bar:hover{background:#cdeedc}.hourly-assignment-bar.selected{outline:3px solid #0b67c2;outline-offset:-1px}.assignment-context-target{user-select:none}.assigned-person.assignment-context-target{display:flex;align-items:center;justify-content:space-between;gap:8px;border-radius:6px;padding:3px 4px}.assigned-person.assignment-context-target:hover{background:#f2f7fc}.assigned-person.assignment-context-target>span{display:grid}.assignment-more-button{flex:0 0 auto;border:1px solid var(--line);border-radius:6px;background:#fff;color:#375b79;line-height:1;padding:3px 7px;font-size:16px}.assignment-more-button:hover{background:#eaf3fb}.assignment-context-menu{position:fixed;z-index:250;width:270px;padding:6px;border:1px solid #cbd7e2;border-radius:9px;background:#fff;box-shadow:0 16px 45px rgba(0,0,0,.2)}.assignment-context-menu[hidden]{display:none}.assignment-context-menu button{width:100%;border:0;border-radius:6px;background:#fff;padding:10px;text-align:left;color:#8d2636;font-weight:800}.assignment-context-menu button:hover{background:#fff0f2}.time-off-dialog{width:min(620px,calc(100vw - 28px));border:0;border-radius:14px;padding:0;box-shadow:0 28px 90px rgba(0,0,0,.3)}.time-off-dialog::backdrop{background:rgba(6,26,49,.58)}.time-off-dialog form{padding:18px}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:8px}.dialog-heading h2{margin:0}.dialog-close{border:0;background:transparent;font-size:28px;color:#5d6e7f}.time-off-impact{margin-top:14px;padding:10px 12px;border-left:4px solid #b88400;border-radius:6px;background:#fff8df;color:#654d00;font-size:12px}.calendar-entry.timeoff{background:#fde7c9;border-left:3px solid #b26b08;padding:2px 4px;color:#784700}.position-fixed select{background:#eef2f5;color:#607181}.assignment-time-boxes small{font-size:10px;color:var(--muted)}
@media(max-width:760px){.standard-slot-note{margin-right:0}.assignment-context-menu{width:min(270px,calc(100vw - 16px))}.hourly-assignment-bar{font-size:9px;padding:3px 5px}}

/* 2026-08-07 custom forms, personnel profile configurator, and protected personnel storage */
.feature-chip-grid{display:flex;flex-wrap:wrap;gap:8px}.feature-chip{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:#f8fbfe;color:#315a82;font-size:11px;font-weight:750}.configurator-card{display:flex;flex-direction:column}.configurator-card>span{font-size:30px;color:var(--blue)}.config-card-footer{margin-top:auto;padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.builder-layout{display:grid;grid-template-columns:230px minmax(420px,1fr) 330px;gap:16px;align-items:start}.builder-palette,.builder-properties{position:sticky;top:88px;max-height:calc(100vh - 110px);overflow:auto}.builder-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.builder-type{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 7px;color:#315a82;font-size:11px;font-weight:800;display:grid;place-items:center;gap:4px}.builder-type span{font-size:18px}.builder-type:hover{background:#eef6ff;border-color:#9bbfe1}.builder-field-list{display:grid;gap:8px}.builder-field-card{border:1px solid var(--line);border-radius:9px;background:#fff;padding:10px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;cursor:pointer}.builder-field-card:hover,.builder-field-card.selected{border-color:#6ca0d2;background:#f7fbff}.builder-field-card.selected{box-shadow:0 0 0 2px #d8eafe}.builder-field-card>div:nth-child(2){display:grid;gap:3px}.builder-field-card strong{font-size:13px}.builder-field-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.builder-field-type{text-transform:uppercase;letter-spacing:.08em;color:var(--blue);font-size:9px;font-weight:850}.builder-field-order{display:grid;gap:3px}.builder-field-order button{border:1px solid var(--line);background:#fff;border-radius:5px;color:#3d617f;width:28px;height:25px}.builder-property-panel{display:grid;gap:12px}.sticky-save{position:sticky;bottom:0;background:rgba(244,247,251,.96);backdrop-filter:blur(6px);padding:12px 0 5px;z-index:8}
.custom-form-renderer{display:grid;gap:14px;max-width:1050px}.custom-form-renderer>.custom-form-field,.custom-form-content,.custom-form-image,.custom-form-header{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:var(--shadow)}.custom-form-header{border-left:5px solid var(--blue)}.custom-form-header h2{margin:0 0 5px}.custom-form-header p,.custom-form-content{white-space:pre-line}.custom-form-image img{max-width:100%;max-height:440px;object-fit:contain;border-radius:8px}.custom-form-image figcaption{margin-top:7px;color:var(--muted);font-size:11px}.option-field{margin:0}.option-field legend{font-size:12px;font-weight:750;color:#46576a;margin-bottom:8px}.required-mark{color:var(--red);margin-left:3px}.signature-field input{font-family:cursive;font-size:20px}.custom-forms-heading{margin:22px 0 10px}.custom-forms-heading h2{margin:3px 0}.custom-form-cards{margin-bottom:20px}
.profile-config-layout{display:grid;grid-template-columns:.8fr 1.4fr;gap:18px}.config-list{display:grid;gap:10px}.config-card{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fbfdff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.config-card-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.profile-field-card .config-card-main{grid-template-columns:repeat(3,minmax(0,1fr))}.config-card-actions{display:flex;flex-direction:column;gap:6px;align-items:stretch;justify-content:flex-start}.custom-profile-section{padding-top:12px;margin-top:12px;border-top:1px solid var(--line)}.custom-profile-section:first-of-type{border-top:0;margin-top:0}.custom-detail-list{grid-template-columns:minmax(150px,220px) minmax(0,1fr)}
.secure-storage-card{display:flex;justify-content:space-between;align-items:center;gap:18px;border:1px solid #d6b65a;border-left:5px solid #b88400;background:#fffaf0;border-radius:12px;padding:16px;margin-bottom:16px;box-shadow:var(--shadow)}.secure-storage-card>div{display:flex;align-items:center;gap:12px}.secure-storage-card p{margin:4px 0 0;color:#756024;font-size:12px}.secure-lock-icon{font-size:52px}.secure-lock-icon.small{font-size:31px}.secure-storage-unlock{max-width:560px;margin:50px auto;text-align:center}.secure-storage-unlock form{text-align:left;margin:22px auto 0;max-width:420px}.storage-security-settings summary{cursor:pointer}.notice.warning{background:#fff8df;border:1px solid #e6cf82;color:#6b5300;border-radius:8px;padding:10px 12px;margin-bottom:12px}
@media(max-width:1200px){.builder-layout{grid-template-columns:200px minmax(360px,1fr)}.builder-properties{grid-column:1/3;position:static;max-height:none}.profile-config-layout{grid-template-columns:1fr}.profile-field-card .config-card-main{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.builder-layout{grid-template-columns:1fr}.builder-palette,.builder-properties{position:static;max-height:none}.builder-properties{grid-column:auto}.builder-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.config-card,.secure-storage-card{grid-template-columns:1fr;display:grid}.config-card-main,.profile-field-card .config-card-main{grid-template-columns:1fr}.config-card-actions{flex-direction:row;flex-wrap:wrap}.secure-storage-card>div{align-items:flex-start}.custom-form-renderer{gap:10px}.custom-form-renderer>.custom-form-field,.custom-form-content,.custom-form-image,.custom-form-header{padding:13px}}

/* 2026-08-07 advanced drag-and-drop form designer */
.builder-layout-advanced{grid-template-columns:250px minmax(520px,1fr) 350px}.builder-palette-section+ .builder-palette-section{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.builder-palette-section h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#587086;margin:0 0 8px}.builder-type[draggable=true]{cursor:grab}.builder-type[draggable=true]:active{cursor:grabbing}.builder-grid-ruler{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;margin:0 0 7px;color:#8a98a6;font-size:8px;text-align:center}.builder-grid-ruler span{border-bottom:1px dashed #d7e0e8;padding-bottom:3px}.builder-field-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:row dense;align-items:stretch;min-height:180px;padding:6px;border:1px dashed transparent;border-radius:10px;transition:.15s}.builder-field-grid.drag-active{border-color:#5c9ad2;background:#f2f8ff}.builder-field-grid>.empty-state{grid-column:1/-1}.builder-grid-card{min-width:0;height:100%;position:relative}.builder-grid-card.dragging{opacity:.42;outline:2px dashed #0b67c2}.builder-drag-handle{display:grid;place-items:center;color:#8193a3;font-size:15px;cursor:grab;line-height:1}.builder-field-summary{min-width:0}.builder-field-summary small{display:block}.builder-condition-summary{color:#8a5f00!important}.builder-card-badges{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.property-group{display:grid;gap:9px;border:1px solid #dce5ee;border-radius:9px;padding:10px;background:#f9fbfd}.property-group>strong{font-size:12px;color:#254d74}.property-group p{margin:0;font-size:10px}.builder-width-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.builder-width-presets button{border:1px solid var(--line);background:#fff;color:#42617c;border-radius:6px;padding:5px;font-size:10px;font-weight:800}.builder-width-presets button.active{background:#0b67c2;color:#fff;border-color:#0b67c2}.builder-empty-drop{padding:50px 18px}.conditional-property{border-left:4px solid #b88400}.custom-form-renderer.custom-form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;max-width:1180px}.custom-form-block{min-width:0}.custom-form-span-3{grid-column:span 3}.custom-form-span-4{grid-column:span 4}.custom-form-span-6{grid-column:span 6}.custom-form-span-8{grid-column:span 8}.custom-form-span-9{grid-column:span 9}.custom-form-span-12{grid-column:span 12}.custom-form-new-row{grid-column-start:1}.custom-form-block>.custom-form-field,.custom-form-block>.custom-form-content,.custom-form-block>.custom-form-image,.custom-form-block>.custom-form-header,.custom-form-block>.custom-form-agency-logo{height:100%;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:var(--shadow)}.custom-form-block>.custom-form-header{border-left:5px solid var(--blue)}.custom-form-agency-logo{display:grid;place-items:center;text-align:center;gap:7px}.custom-form-agency-logo img{width:auto;object-fit:contain}.custom-form-agency-logo.logo-small img{max-height:76px;max-width:120px}.custom-form-agency-logo.logo-medium img{max-height:125px;max-width:180px}.custom-form-agency-logo.logo-large img{max-height:190px;max-width:260px}.custom-form-agency-logo strong{font-size:14px;color:#173d62}.custom-form-agency-logo small{color:var(--muted)}.custom-form-divider{height:100%;min-height:30px;display:flex;align-items:center;gap:10px;color:#315a82;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.custom-form-divider:before,.custom-form-divider:after{content:"";height:0;flex:1;border-top:1px solid #9eafbf}.custom-form-divider.divider-double:before,.custom-form-divider.divider-double:after{border-top:3px double #8fa3b6}.custom-form-divider.divider-dashed:before,.custom-form-divider.divider-dashed:after{border-top-style:dashed}.conditional-hidden{display:none!important}.custom-form-submit-row{grid-column:1/-1}.custom-form-image{margin:0}.custom-form-content small{display:block;margin-top:7px}.custom-form-block fieldset.custom-form-field{margin:0}.custom-form-block label.custom-form-field{display:grid;gap:6px}.custom-form-block .custom-form-field small{color:var(--muted)}
@media(max-width:1300px){.builder-layout-advanced{grid-template-columns:220px minmax(450px,1fr)}.builder-layout-advanced .builder-properties{grid-column:1/3}}
@media(max-width:760px){.builder-layout-advanced{grid-template-columns:1fr}.builder-layout-advanced .builder-properties{grid-column:auto}.builder-grid-ruler{display:none}.builder-field-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px}.builder-grid-card{grid-column:1/-1!important}.builder-card-badges{flex-direction:row;flex-wrap:wrap}.custom-form-renderer.custom-form-grid{gap:10px}.custom-form-block{grid-column:1/-1!important}.custom-form-block>.custom-form-field,.custom-form-block>.custom-form-content,.custom-form-block>.custom-form-image,.custom-form-block>.custom-form-header,.custom-form-block>.custom-form-agency-logo{padding:13px}}

/* 2026-08-07 Aladtec-style schedule editor dock */
.standard-slot-note{margin:14px 14px 0;padding:10px 12px;border:1px solid #d7e1ea;border-radius:8px;background:#f7fafc;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:12px}.standard-slot-note strong{color:#173f65}.standard-slot-note span{color:var(--muted)}
.editor-bottom-dock{position:sticky;bottom:8px;z-index:24;margin:14px;max-height:min(48vh,520px);overflow:hidden;padding:0;border:1px solid #aebdcb;box-shadow:0 -10px 34px rgba(8,40,75,.18)}
.editor-bottom-dock form{display:flex;flex-direction:column;max-height:inherit}
.editor-dock-topbar{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(650px,2.1fr);gap:14px;padding:12px 14px;background:#f7f9fb;border-bottom:1px solid var(--line);align-items:end}
.editor-selected-shift{display:grid;gap:3px}.editor-selected-shift strong{font-size:14px;color:#173f65}.editor-selected-shift small{font-size:11px;color:var(--muted)}
.editor-quick-controls{display:grid;grid-template-columns:120px 120px minmax(150px,190px) minmax(150px,1fr) auto;gap:8px;align-items:end}.editor-quick-controls label{gap:4px}.editor-quick-controls input,.editor-quick-controls select{padding:7px 8px}.editor-add-save{height:39px;min-width:110px;white-space:nowrap}.editor-notes-control{min-width:150px}
.editor-current-assignments{margin:8px 14px 0;padding:8px 10px;grid-template-columns:auto 1fr;align-items:center}.editor-current-assignments span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.editor-availability-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;padding:10px 14px 8px}.editor-availability-heading h2{margin:0;font-size:15px}.editor-availability-heading p{margin:3px 0 0;font-size:11px;max-width:980px}.availability-key{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.preferred-key{background:#fff1bf;color:#775900}.available-key{background:#dff4e7;color:#0d6940}.missing-key{background:#edf1f5;color:#536477}
.editor-availability-scroll{overflow:auto;border-top:1px solid var(--line);background:#fff;min-height:130px;max-height:250px}.editor-availability-grid{display:grid;grid-template-columns:260px 190px minmax(760px,1fr);min-width:1210px}.editor-availability-grid-head{position:sticky;top:0;z-index:3;background:#edf2f6;border-bottom:1px solid #bcc9d5;font-size:10px;font-weight:850;color:#46576a}.editor-availability-grid-head>div{padding:6px 8px;border-right:1px solid #cbd5df}.availability-time-head{display:grid;grid-template-columns:repeat(24,1fr);padding:0!important}.availability-time-head span{padding:6px 2px;text-align:center;border-right:1px solid #cbd5df;font-size:9px}.availability-time-head span:last-child{border-right:0}
.editor-availability-section-label{min-width:1210px;padding:5px 9px;background:#e9f5ee;border-bottom:1px solid #d4e6dc;color:#17643f;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.editor-availability-section-label.missing{background:#f2f4f6;color:#5c6976;border-color:#dde2e7}
.editor-availability-member-row{cursor:pointer;border-bottom:1px solid #e3e8ed;min-height:42px;background:#fff}.editor-availability-member-row:hover{background:#f7fbff}.editor-availability-member-row:has(input:checked){outline:2px solid var(--blue);outline-offset:-2px;background:#eef7ff}.editor-availability-member-row>div{border-right:1px solid #e0e6ec;min-height:42px}.editor-member-cell{display:flex;gap:8px;align-items:center;padding:5px 8px}.editor-member-cell input{width:auto}.editor-member-cell span{display:grid;line-height:1.15}.editor-member-cell strong{font-size:11px}.editor-member-cell small{font-size:9px;color:var(--muted)}
.editor-availability-status{padding:5px 8px;display:grid;grid-template-columns:auto 1fr;gap:2px 7px;align-items:center}.editor-availability-status strong{font-size:10px}.editor-availability-status small{grid-column:1/-1;font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-availability-status .pill{width:max-content}
.editor-availability-track{position:relative;min-height:42px;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(4.166% - 1px),#dbe2e9 calc(4.166% - 1px),#dbe2e9 4.166%)}.editor-availability-track.no-entry{background-color:#fafbfc}.editor-availability-range{position:absolute;top:5px;bottom:5px;border-radius:3px;display:flex;align-items:center;padding:0 6px;font-size:9px;font-weight:800;overflow:hidden;white-space:nowrap;box-sizing:border-box}.editor-availability-range.available{background:#cdeedb;border:1px solid #7fc99e;color:#0e643d}.editor-availability-range.preferred{background:#ffedaa;border:1px solid #d7b443;color:#745800}.editor-availability-range span{overflow:hidden;text-overflow:ellipsis}
.hourly-editor-wrap{padding-bottom:8px}

@media(max-width:1000px){.editor-bottom-dock{position:relative;bottom:auto;margin:12px;max-height:none}.editor-bottom-dock form{max-height:none}.editor-dock-topbar{grid-template-columns:1fr}.editor-quick-controls{grid-template-columns:1fr 1fr}.editor-quick-controls .editor-notes-control{grid-column:1/-1}.editor-add-save{grid-column:1/-1}.editor-availability-scroll{max-height:360px}.editor-availability-heading{align-items:flex-start;flex-direction:column}.availability-key{justify-content:flex-start}}
.editor-bottom-dock.selection-updated{animation:editorDockPulse .42s ease-out}@keyframes editorDockPulse{0%{box-shadow:0 -10px 34px rgba(8,40,75,.18),0 0 0 3px rgba(11,103,194,.30)}100%{box-shadow:0 -10px 34px rgba(8,40,75,.18),0 0 0 0 rgba(11,103,194,0)}}
@media(max-width:1000px){.editor-bottom-dock{position:sticky;bottom:4px;max-height:58vh}.editor-bottom-dock form{max-height:58vh}.editor-availability-scroll{max-height:270px}}

/* 2026-08-07 Aladtec-style circle selector + fixed assignment bar */
.editor-shift-select{display:flex!important;align-items:center;gap:7px!important;text-align:left!important}.shift-select-circle{width:12px;height:12px;border-radius:50%;border:1.5px solid #71879a;background:#fff;box-shadow:inset 0 0 0 2px #fff;flex:0 0 auto}.editor-shift-select.selected .shift-select-circle,.selected-shift-row .shift-select-circle{background:#1976d2;border-color:#1976d2;box-shadow:inset 0 0 0 3px #fff}.selected-shift-row{background:#f0f7ff}.selected-shift-row .hourly-track{outline:2px solid rgba(21,89,165,.35);outline-offset:-2px}
.editor-bottom-dock{position:fixed!important;left:263px;right:18px;bottom:10px;z-index:120;margin:0!important;max-height:58vh!important;overflow:visible!important;border:1px solid #879cb0!important;box-shadow:0 -8px 34px rgba(7,26,51,.26)!important;background:#fff}.editor-bottom-dock form{max-height:58vh!important;overflow:visible}.editor-floating-row{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(260px,1.5fr) 100px 100px 145px minmax(120px,.7fr) auto auto;gap:8px;align-items:end;padding:9px 10px;background:#f8fafc;border-radius:12px}.editor-selected-shift.compact{min-width:0}.editor-selected-shift.compact strong,.editor-selected-shift.compact small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-personnel-dropdown select{min-width:250px}.editor-personnel-dropdown small{max-width:360px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-availability-toggle{white-space:nowrap;height:39px}.editor-availability-drawer{position:absolute;left:0;right:0;bottom:calc(100% + 6px);max-height:42vh;background:#fff;border:1px solid #aebdcb;border-radius:10px;box-shadow:0 -10px 35px rgba(7,26,51,.23);overflow:hidden}.editor-availability-drawer[hidden]{display:none}.editor-availability-scroll{max-height:32vh}.editor-availability-member-row{width:100%;padding:0;border-left:0;border-right:0;text-align:left;font:inherit}.hourly-editor-wrap{padding-bottom:92px!important}
@media(max-width:1100px){.editor-floating-row{grid-template-columns:minmax(200px,1fr) minmax(230px,1.3fr) 92px 92px auto auto}.editor-notes-control{display:none}.editor-floating-row [data-assignment-position-wrap]{display:none}}
@media(max-width:800px){.editor-bottom-dock{left:8px;right:8px;bottom:calc(6px + env(safe-area-inset-bottom));max-height:62vh!important}.editor-floating-row{grid-template-columns:1fr 1fr 1fr;gap:6px;padding:8px}.editor-selected-shift.compact{grid-column:1/-1}.editor-personnel-dropdown{grid-column:1/-1}.editor-personnel-dropdown select{min-width:0}.editor-floating-row [data-assignment-position-wrap],.editor-notes-control{display:none}.editor-add-save,.editor-availability-toggle{height:37px}.editor-availability-drawer{max-height:50vh}.hourly-editor-wrap{padding-bottom:210px!important}}
@media print{.editor-bottom-dock{display:none!important}.hourly-editor-wrap{padding-bottom:0!important}}


/* Availability management v7: member/month selector + Aladtec-style all-personnel view */
.schedule-month-control{display:grid;gap:2px;font-size:9px;font-weight:800;color:var(--muted)}.schedule-month-control input{min-width:145px}
.availability-page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);background:#f8fafc}.availability-month-nav{display:flex;align-items:center;gap:10px}.availability-month-nav h2{margin:0;font-size:18px}.availability-month-nav .eyebrow{margin:0}.availability-view-switch{display:flex;gap:7px;flex-wrap:wrap}
.enhanced-availability-layout{align-items:start}.availability-person-picker{display:grid;gap:7px;padding:10px;background:#f5f8fb;border:1px solid var(--line);border-radius:8px}.availability-entry-panel h3{margin:4px 0 0;font-size:14px}.availability-click-help{font-size:10px}.availability-calendar button.calendar-day{font:inherit;text-align:left;border-top:0;border-left:0;cursor:pointer}.availability-calendar button.calendar-day:hover{outline:2px solid #6aa8dd;outline-offset:-2px}.availability-calendar-overlay{display:block;margin-top:5px;padding:2px 4px;border-radius:4px;font-size:9px;font-weight:800}.availability-calendar-overlay.scheduled{background:#cfe9ee;color:#155e70}.availability-calendar-overlay.timeoff{background:#f4ddc2;color:#80501b}
.availability-legend.detailed .scheduled,.availability-cell-block.scheduled{background:#cfe9ee;color:#155e70}.availability-legend.detailed .timeoff,.availability-cell-block.timeoff{background:#f4ddc2;color:#80501b}
.all-availability-panel{background:#fff}.all-availability-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;padding:13px 16px;border-bottom:1px solid var(--line)}.all-availability-toolbar h2{margin:0;font-size:17px}.all-availability-toolbar p{margin:3px 0 0;font-size:10px}.all-availability-scroll{overflow:auto;max-height:72vh;border-bottom:1px solid var(--line)}.all-availability-table{border-collapse:separate;border-spacing:0;min-width:max-content;font-size:9px}.all-availability-table th,.all-availability-table td{border-right:1px solid #d7dee5;border-bottom:1px solid #dfe5eb;padding:0;vertical-align:top}.all-availability-table thead th{position:sticky;top:0;z-index:4;background:#f1f4f7;min-width:82px;text-align:center;padding:5px 3px}.all-availability-table thead th span,.all-availability-table thead th strong{display:block}.all-availability-table .member-sticky{position:sticky;left:0;z-index:5;min-width:210px;max-width:210px;background:#f7f9fb;text-align:left;padding:6px 8px}.all-availability-table thead .member-sticky{z-index:7;background:#e9eef3}.all-availability-table tbody .member-sticky a{display:block;font-size:10px;font-weight:800}.all-availability-table tbody .member-sticky small{display:block;color:var(--muted);font-size:8px}.all-availability-cell{min-width:82px;height:44px;background:#fff}.availability-cell-block{display:block;margin:2px;padding:3px 4px;border-radius:3px;line-height:1.05}.availability-cell-block strong,.availability-cell-block small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.availability-cell-block small{font-size:7px}.availability-cell-block.available{background:#dff1f4;color:#155e70}.availability-cell-block.preferred{background:#fff0a8;color:#735800}.availability-cell-block.unavailable{background:#f7ccd3;color:#9b2136}.all-availability-table tbody tr:hover .member-sticky{background:#eef6fd}
@media(max-width:760px){.availability-page-head,.all-availability-toolbar{align-items:flex-start;flex-direction:column}.availability-view-switch{width:100%}.availability-view-switch .button{flex:1}.all-availability-scroll{max-height:68vh}.all-availability-table .member-sticky{min-width:165px;max-width:165px}.all-availability-table thead th,.all-availability-cell{min-width:72px}.schedule-month-control input{min-width:130px}}

/* Assignment conflict confirmation: fail-safe replacement dialog. */
.assignment-conflict-dialog{width:min(720px,calc(100vw - 28px));max-height:min(82vh,760px);overflow:auto;border:0;border-radius:14px;padding:18px;box-shadow:0 28px 90px rgba(0,0,0,.34)}
.assignment-conflict-dialog::backdrop{background:rgba(6,26,49,.64)}
.conflict-warning-banner{margin:8px 0 14px;padding:11px 13px;border-left:4px solid var(--red);border-radius:7px;background:#fff0f2;color:#7c1f2f;font-size:12px}
.assignment-conflict-dialog section{margin:15px 0}
.assignment-conflict-dialog section h3{margin:0 0 4px;font-size:15px;color:#223b55}
.conflict-list{display:grid;gap:8px;margin-top:8px}
.conflict-item{display:grid;gap:3px;padding:10px 12px;border:1px solid #e1a5ae;border-radius:8px;background:#fff8f9}
.conflict-item strong{color:#8d2636}.conflict-item span{font-size:11px;color:var(--muted)}
.conflict-impact-note{margin-top:14px;padding:11px 13px;border:1px solid #e4d3a0;border-radius:8px;background:#fff9e8;color:#67520e;font-size:12px;line-height:1.45}
@media(max-width:760px){.assignment-conflict-dialog{width:calc(100vw - 18px);padding:14px}.assignment-conflict-dialog .form-actions{display:grid;grid-template-columns:1fr}.assignment-conflict-dialog .button{width:100%}}

/* v10 overtime confirmation + system database log */
.overtime-warning-dialog{width:min(680px,calc(100vw - 28px))}
.overtime-warning-banner{margin:10px 0 16px;padding:11px 13px;border:1px solid #e0b84f;background:#fff7d6;color:#654b00;border-radius:9px}
.overtime-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}
.overtime-metrics>div{border:1px solid var(--line);border-radius:10px;padding:12px;background:#f8fafc}
.overtime-metrics span{display:block;color:var(--muted);font-size:11px;font-weight:750;margin-bottom:5px}.overtime-metrics strong{font-size:20px;color:#233c55}.overtime-metrics .overtime-total{background:#fff0f0;border-color:#e7b0b0}.overtime-metrics .overtime-total strong{color:#a42626}
.audit-log-heading{align-items:flex-start}.audit-log-heading>div{max-width:900px}.audit-filter-grid{display:grid;grid-template-columns:minmax(180px,1.2fr) repeat(4,minmax(130px,1fr)) auto;gap:10px;align-items:end;margin:14px 0}.audit-filter-actions{display:flex;gap:7px;align-items:end}.audit-log-note{padding:10px 12px;margin:0 0 12px;border:1px solid #c9d9e9;background:#f4f8fc;border-radius:8px;font-size:12px;color:#3d536a}.audit-log-table td small{display:block;color:var(--muted);margin-top:3px}.audit-log-table .audit-undone{opacity:.7;background:#f4f5f6}.system-database-log{scroll-margin-top:90px}
@media(max-width:1100px){.audit-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.audit-filter-actions{grid-column:1/-1}.audit-log-heading{flex-direction:column}.overtime-metrics{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:760px){.audit-filter-grid{grid-template-columns:1fr}.audit-filter-actions{grid-column:auto}.overtime-metrics{grid-template-columns:1fr}.overtime-warning-dialog{width:calc(100vw - 18px);padding:14px}.overtime-warning-dialog .form-actions{display:grid;grid-template-columns:1fr}.overtime-warning-dialog .button{width:100%}}

.settings-section-nav{display:flex;gap:6px;flex-wrap:wrap;margin:-4px 0 18px;padding:5px;background:#eef3f8;border:1px solid var(--line);border-radius:10px;width:max-content;max-width:100%}.settings-section-tab{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border-radius:7px;color:#35516e;font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.settings-section-tab:hover{background:#fff;text-decoration:none}.settings-section-tab.active{background:var(--navy);color:#fff;box-shadow:0 3px 10px rgba(8,40,75,.15)}
@media(max-width:760px){.settings-section-nav{width:100%;display:grid;grid-template-columns:1fr 1fr}.settings-section-tab{white-space:normal;text-align:center}}

/* v12 Aladtec-style settings center */
.settings-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start}.settings-layout>aside{position:sticky;top:82px;max-height:calc(100vh - 100px);overflow:auto}.settings-module-nav{display:grid;gap:5px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px;box-shadow:var(--shadow)}.settings-module-link{display:grid;grid-template-columns:1fr;gap:2px;padding:10px 11px;border-radius:8px;color:var(--ink);border-left:3px solid transparent;text-decoration:none}.settings-module-link:hover{background:#f3f7fb;text-decoration:none}.settings-module-link.active{background:#e8f2ff;border-left-color:var(--blue);color:#0a4f91}.settings-module-link strong{font-size:13px}.settings-module-link small{font-size:10px;line-height:1.25;color:var(--muted);font-weight:500}.settings-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-home-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;color:var(--ink);box-shadow:var(--shadow);text-decoration:none}.settings-home-card:hover{border-color:#9fc7ec;transform:translateY(-1px);text-decoration:none}.settings-home-card strong{font-size:15px}.settings-home-card p{margin:4px 0 0;color:var(--muted);font-size:11px}.settings-home-icon{width:38px;height:38px;border-radius:10px;background:#e8f2ff;color:var(--blue);display:grid;place-items:center;font-size:19px}.settings-editor-panel{margin:0}.setting-toggle{align-content:end}.settings-callout{border:1px solid #bfd3e7;background:#f4f8fc;padding:12px;border-radius:9px;margin:14px 0;font-size:12px}.settings-callout.warning{border-color:#ead28b;background:#fff9e6;color:#614d0f}.split-actions{justify-content:space-between}.permission-matrix td,.permission-matrix th{text-align:center}.permission-matrix td:first-child,.permission-matrix th:first-child{text-align:left}.permission-matrix td:first-child small{display:block;color:var(--muted);margin-top:2px}.permission-cell{display:grid;place-items:center;gap:4px;font-size:10px}.permission-cell input{width:auto}.audit-filter-grid.expanded{grid-template-columns:repeat(4,minmax(145px,1fr));}.audit-category-strip{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}.audit-category-strip a{font-size:10px;font-weight:800;padding:5px 8px;border-radius:999px;background:#eef4fa;color:#315b82;text-decoration:none}.audit-category-strip a:hover{background:#dfeeff}.audit-outcome{font-size:10px;color:var(--muted);margin-top:2px}.audit-outcome.denied,.audit-outcome.failed{color:var(--red);font-weight:800}.audit-outcome.success{color:var(--green);font-weight:800}.storage-row-menu{display:inline-block;position:relative}.storage-row-menu summary{list-style:none}.storage-row-menu summary::-webkit-details-marker{display:none}.storage-rename-form{position:absolute;right:0;top:34px;z-index:20;min-width:260px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 35px rgba(0,0,0,.18);border-radius:8px;padding:10px;display:flex;gap:6px}.storage-rename-form input{min-width:160px}
@media(max-width:1100px){.settings-layout{grid-template-columns:230px minmax(0,1fr)}.settings-home-grid{grid-template-columns:1fr}.audit-filter-grid.expanded{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.settings-layout{display:block;min-width:0}.settings-layout>aside{position:static;max-height:none;min-width:0;max-width:100%;overflow:hidden}.settings-module-nav{display:flex;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;gap:6px;padding:6px;scrollbar-gutter:auto}.settings-module-link{min-width:160px}.settings-home-grid{grid-template-columns:1fr}.audit-filter-grid.expanded{grid-template-columns:1fr}.storage-rename-form{position:fixed;left:12px;right:12px;top:auto;bottom:20px;min-width:0}}
.settings-module-group-label{margin:13px 10px 5px;padding-top:10px;border-top:1px solid var(--line,#dde4ec);font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#6b7888}.settings-module-group-label:first-child{margin-top:3px;padding-top:0;border-top:0}

/* Functional Settings Center v13 */
.settings-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-control-card{display:grid;gap:7px;border:1px solid var(--line);border-radius:10px;padding:12px;background:#fbfcfe;min-width:0}.settings-control-card.span-all{grid-column:1/-1}.settings-control-card>strong,.settings-control-card legend{font-size:12px;color:#334e68}.settings-control-card small{display:block;color:var(--muted);font-size:10px;font-weight:500}.settings-card-heading,.settings-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-card-heading>div,.settings-list-toolbar>div{display:grid;gap:3px}.settings-list-toolbar{margin-bottom:12px}.settings-list-toolbar small{color:var(--muted)}.settings-editable-list{display:grid;gap:7px}.settings-editable-row{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;gap:8px;align-items:center}.drag-handle{color:#8b99a8;font-size:17px}.settings-row-buttons,.settings-row-order{display:flex;gap:4px;align-items:center}.settings-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.settings-choice{display:flex;align-items:center;gap:8px;border:1px solid #d9e3ed;border-radius:8px;padding:9px;background:#fff;font-size:12px}.settings-choice input{width:auto}.switch-control{display:inline-flex;align-items:center}.switch-control input{width:auto}.setting-toggle{display:flex;justify-content:space-between;align-items:center;gap:18px}.settings-options-wrap table input,.settings-options-wrap table select{min-width:120px}.settings-order-col{width:74px}.settings-row-order{white-space:nowrap}
@media(max-width:760px){.settings-field-grid,.settings-choice-grid{grid-template-columns:1fr}.settings-editable-row{grid-template-columns:1fr}.settings-editable-row .drag-handle{display:none}.settings-row-buttons{justify-content:flex-start}.settings-card-heading,.settings-list-toolbar{align-items:flex-start;flex-direction:column}.setting-toggle{align-items:flex-start}.settings-options-wrap{overflow-x:auto}.settings-options-wrap table{min-width:780px}}

/* v14 navigation, user design modes, notifications, home editor */
body.theme-day{--bg:#f4f7fb;--card:#fff;--ink:#142033;--muted:#607087;--line:#dce3ec;--input-bg:#fff;--panel-soft:#f7f9fc}
body.theme-night{--bg:#07111f;--card:#0f2034;--ink:#e8f0f8;--muted:#9db0c6;--line:#28405b;--input-bg:#10263e;--panel-soft:#132a43;--sky:#102b48;--blue:#4b9df1;--navy:#020b16;--navy-2:#071a31;--shadow:0 10px 28px rgba(0,0,0,.28)}
body.theme-night input,body.theme-night select,body.theme-night textarea{background:var(--input-bg);color:var(--ink);border-color:var(--line)}
body.theme-night .panel,body.theme-night .stat-card,body.theme-night .resource-card,body.theme-night .filter-bar,body.theme-night .settings-module-nav,body.theme-night .settings-home-card{background:var(--card);color:var(--ink)}
body.theme-night th{color:#a7b8ca}body.theme-night td{border-color:#243a51}body.theme-night tbody tr:hover{background:#132a43}
body.theme-night .button.ghost{background:#12283f;color:var(--ink);border-color:var(--line)}body.theme-night .button.secondary{background:#173a5e;color:#d9ebff;border-color:#285585}
body.theme-night .announcement{background:#14283c}body.theme-night .announcement.priority-important{background:#302a18}body.theme-night .announcement.priority-urgent{background:#341b24}
body.theme-night .settings-control-card,body.theme-night .settings-choice{background:#10253b;color:var(--ink)}

.topbar{gap:9px}.brand-logo{width:45px;height:45px;object-fit:contain;border-radius:8px}.topbar-spacer{flex:1}.topbar-datetime{font-size:11px;color:#c9d8e9;white-space:nowrap}.topbar-icon-button{width:40px;height:40px;border-radius:10px;border:1px solid #31547b;background:#102f54;color:#fff;display:grid;place-items:center;position:relative}.topbar-icon-button:hover{background:#19416f}.notification-button>span{position:absolute;right:-4px;top:-5px;background:#f1b62f;color:#281c00;border-radius:999px;min-width:18px;height:18px;padding:0 4px;display:grid;place-items:center;font-size:10px;font-weight:900}.quick-theme-form{margin:0}.topbar-user{margin:0;border:0;background:transparent;color:#fff;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:10px}.topbar-user:hover{background:#12365f}.user-avatar{width:34px;height:34px;border-radius:50%;background:#e8f2ff;color:#0d4f91;display:grid;place-items:center;font-weight:900;font-size:12px}.user-text{display:grid;text-align:left}.user-text strong{font-size:12px}.user-text small{font-size:10px;color:#b9c9dc}.topbar-popover-wrap,.topbar-user-menu-wrap{position:relative}.topbar-popover{position:absolute;right:0;top:calc(100% + 12px);width:min(390px,calc(100vw - 24px));background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 55px rgba(0,0,0,.26);padding:8px;z-index:80}.popover-heading,.user-popover-header{display:flex;justify-content:space-between;gap:8px;padding:9px 10px;border-bottom:1px solid var(--line);margin-bottom:5px}.user-popover-header{display:grid}.topbar-popover a,.topbar-popover button{width:100%;display:flex;text-align:left;align-items:center;gap:8px;padding:10px;border:0;background:transparent;color:var(--ink);border-radius:8px;font-size:12px;text-decoration:none}.topbar-popover a:hover,.topbar-popover button:hover{background:var(--panel-soft)}.popover-divider{border-top:1px solid var(--line);margin:5px 0}.logout-menu-button{color:var(--red)!important}.notification-list{display:grid;gap:5px}.notification-item{display:grid!important;grid-template-columns:1fr auto;gap:4px!important;border-left:4px solid #7891aa!important;background:var(--panel-soft)!important}.notification-item strong{font-size:12px}.notification-item small{grid-column:1/-1;font-size:10px}.notification-item.urgent{border-left-color:var(--red)!important}.notification-item.warning{border-left-color:var(--gold)!important}.notification-item.info{border-left-color:var(--blue)!important}.notification-list:not(.compact) .notification-item{grid-template-columns:auto 1fr auto!important;padding:14px!important}.notification-dot{width:10px;height:10px;border-radius:50%;background:var(--blue)}

.module-nav{overflow:visible!important}.nav-module{position:relative}.nav-module-row{display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center}.nav-module-row>a,.nav-single{display:flex!important;align-items:center;gap:9px}.nav-module-row button{border:0;background:transparent;color:#9ab0c8;font-size:19px;height:38px;border-radius:7px;transition:transform .15s}.nav-module-row button:hover{background:#14375f;color:#fff}.nav-module.active>.nav-module-row>a,.nav-single.active{background:#163b69;color:#fff}.nav-submenu{display:none;margin:3px 0 8px 15px;padding-left:9px;border-left:2px solid #2a4b70}.nav-submenu>a{font-size:12px!important;padding:8px 9px!important}.nav-module:hover>.nav-submenu,.nav-module:focus-within>.nav-submenu,.nav-module.submenu-open>.nav-submenu{display:grid}.nav-module.submenu-open>.nav-module-row button{transform:rotate(90deg)}.forms-nested-submenu details{color:#c7d6e6}.forms-nested-submenu summary{cursor:pointer;padding:8px 9px;font-size:12px;font-weight:750}.forms-nested-submenu details>div{display:grid;margin-left:9px;border-left:1px solid #426182;padding-left:5px}.forms-nested-submenu details a{font-size:11px!important;padding:7px!important;color:#c9d8e9}.nav-single{color:#d9e4f1;padding:11px 13px;border-radius:9px;font-weight:650;font-size:14px}.nav-single:hover{background:#163b69;color:#fff;text-decoration:none}

body.nav-right .app-shell{grid-template-columns:minmax(0,1fr) 245px}body.nav-right .sidebar{grid-column:2;grid-row:1}body.nav-right .content{grid-column:1;grid-row:1}body.nav-right .nav-submenu{margin-left:0;margin-right:15px;border-left:0;border-right:2px solid #2a4b70;padding-left:0;padding-right:9px}
body.nav-top .app-shell{display:block}body.nav-top .sidebar{position:sticky;top:70px;height:auto;max-height:none;padding:8px 18px;z-index:18;display:flex;flex-direction:row;align-items:center;overflow:visible}body.nav-top .sidebar-branding,body.nav-top .sidebar-footer,body.nav-top .nav-heading{display:none}body.nav-top .module-nav{display:flex;align-items:center;gap:4px;width:100%}body.nav-top .nav-module,body.nav-top .nav-single{position:relative;white-space:nowrap}body.nav-top .nav-module-row{grid-template-columns:minmax(0,1fr) 27px}body.nav-top .nav-module-row>a,body.nav-top .nav-single{padding:9px 11px!important}body.nav-top .nav-submenu{position:absolute;left:0;top:100%;min-width:245px;margin:3px 0 0;padding:7px;border:1px solid #284a6d;border-radius:9px;background:#0b2342;box-shadow:0 12px 30px rgba(0,0,0,.25)}body.nav-top .content{padding-top:24px}
body.device-mobile .content{max-width:980px;margin:auto}body.device-mobile .button{min-height:42px}body.device-mobile input,body.device-mobile select{min-height:44px}

.preferences-grid{display:grid;gap:16px}.design-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.design-choice-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.design-choice{display:grid;grid-template-columns:auto 1fr;gap:7px 10px;border:2px solid var(--line);border-radius:12px;padding:16px;background:var(--card);cursor:pointer}.design-choice input{width:auto;grid-row:1/3}.design-choice strong{font-size:16px}.design-choice span{font-size:11px;color:var(--muted)}.design-choice:has(input:checked){border-color:var(--blue);box-shadow:0 0 0 3px rgba(21,89,165,.12)}.day-preview{background:linear-gradient(135deg,#fff,#eef5fd)}.night-preview{background:linear-gradient(135deg,#08131f,#18304a);color:#fff}.night-preview span{color:#c1d0e0}

.custom-dashboard-layout,.dashboard-editor-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:start}.widget-span-3{grid-column:span 3}.widget-span-4{grid-column:span 4}.widget-span-6{grid-column:span 6}.widget-span-8{grid-column:span 8}.widget-span-9{grid-column:span 9}.widget-span-12{grid-column:span 12}.dashboard-custom-widget.align-center{text-align:center}.dashboard-custom-widget.align-right{text-align:right}.home-custom-heading{padding:10px 2px}.home-custom-heading h2{margin:0;font-size:28px}.home-custom-heading p{color:var(--muted)}.home-rich-text{white-space:pre-wrap}.home-divider{height:1px;background:var(--line);position:relative;margin:12px 0}.home-divider span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--bg);padding:0 10px;color:var(--muted);font-size:11px}.home-spacer{height:40px}.home-image-widget img{max-width:100%;border-radius:9px}.mini-schedule-row,.mini-cert-row,.mini-approval{display:grid;grid-template-columns:auto 1fr auto;gap:8px;border-bottom:1px solid var(--line);padding:8px 0;font-size:11px}.mini-schedule-row:last-child,.mini-cert-row:last-child{border:0}.quick-link-list,.quick-action-row{display:grid;gap:7px}.quick-link-list a,.quick-action-row{padding:10px;border:1px solid var(--line);border-radius:8px}.quick-action-row{grid-template-columns:1fr auto;text-decoration:none;color:var(--ink)}.custom-stats{grid-template-columns:repeat(3,1fr);margin:0}
.home-editor-layout{display:grid;grid-template-columns:230px minmax(0,1fr) 290px;gap:15px;align-items:start}.home-widget-palette,.home-widget-properties{position:sticky;top:86px;max-height:calc(100vh - 105px);overflow:auto}.home-widget-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px}.home-widget-buttons button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;padding:10px 7px;display:grid;gap:4px;place-items:center;font-size:10px}.home-widget-buttons button span{font-size:18px;color:var(--blue)}.home-widget-canvas{min-height:520px}.home-editor-card{border:2px solid var(--line);border-radius:10px;background:var(--panel-soft);padding:12px;display:flex;justify-content:space-between;gap:8px;cursor:pointer;min-height:75px}.home-editor-card.selected{border-color:var(--blue);box-shadow:0 0 0 3px rgba(21,89,165,.1)}.home-editor-card div:first-child{display:grid;gap:4px}.home-editor-card button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:6px}.home-editor-card.span-3{grid-column:span 3}.home-editor-card.span-4{grid-column:span 4}.home-editor-card.span-6{grid-column:span 6}.home-editor-card.span-8{grid-column:span 8}.home-editor-card.span-9{grid-column:span 9}.home-editor-card.span-12{grid-column:span 12}.home-editor-toolbar{display:flex;align-items:center;gap:20px}.sticky-save{position:sticky;bottom:0;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(8px);padding:12px;z-index:15;border-top:1px solid var(--line)}

@media(max-width:1000px){.topbar-datetime{display:none}.home-editor-layout{grid-template-columns:1fr}.home-widget-palette,.home-widget-properties{position:static;max-height:none}.home-widget-buttons{grid-template-columns:repeat(4,1fr)}.design-choice-grid.three{grid-template-columns:1fr}.custom-dashboard-layout{grid-template-columns:repeat(6,1fr)}.dashboard-custom-widget{grid-column:span 6!important}}
@media(max-width:760px){.user-text{display:none}.brand{min-width:0}.brand span:last-child{display:none}.topbar{padding:0 10px}.topbar-icon-button{width:38px;height:38px}.topbar-user{padding:3px}.app-shell{display:block!important}.sidebar{position:fixed!important;left:0!important;right:auto!important;top:70px!important;width:min(310px,90vw)!important;height:calc(100vh - 70px)!important;z-index:50!important;display:flex!important;flex-direction:column!important;padding:18px 12px!important;transform:translateX(-110%);transition:transform .2s}.sidebar.open{transform:translateX(0)}body.nav-right .sidebar{left:auto!important;right:0!important;transform:translateX(110%)}body.nav-right .sidebar.open{transform:translateX(0)}.module-nav{display:grid!important}.sidebar-branding,.sidebar-footer{display:flex!important}.nav-submenu{position:static!important;background:transparent!important;box-shadow:none!important;border-top:0!important}.content{padding:16px}.design-choice-grid{grid-template-columns:1fr}.home-widget-buttons{grid-template-columns:repeat(3,1fr)}.custom-dashboard-layout{display:block}.dashboard-custom-widget{margin-bottom:14px}.topbar-popover{position:fixed;right:8px;top:66px}.notification-popover{left:8px;width:auto}}

/* v14 personnel mass selection */
.personnel-bulk-toolbar{display:flex;gap:8px;align-items:center;position:sticky;top:78px;z-index:12;background:var(--card);border:1px solid var(--line);border-radius:11px;padding:10px 12px;margin-bottom:10px;box-shadow:var(--shadow)}.personnel-bulk-toolbar select{width:auto;min-width:190px}.select-person-col{width:44px;text-align:center!important}.circle-select{appearance:none!important;-webkit-appearance:none!important;width:20px!important;height:20px!important;min-height:0!important;border:2px solid #8ca2b9!important;border-radius:50%!important;padding:0!important;display:inline-grid;place-items:center;background:var(--card)!important}.circle-select:checked{border-color:var(--blue)!important;background:var(--blue)!important;box-shadow:inset 0 0 0 4px var(--card)}.circle-select:indeterminate{border-radius:6px!important;background:var(--gold)!important;border-color:var(--gold)!important}@media(max-width:760px){.personnel-bulk-toolbar{top:72px;flex-wrap:wrap}.personnel-bulk-toolbar select{flex:1;min-width:150px}}
.open-shift-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px}.open-shift-card{display:flex;justify-content:space-between;gap:14px;align-items:center;background:var(--card);border:1px solid var(--line);border-left:5px solid #9a3490;border-radius:10px;padding:14px}.open-shift-card h3{margin:4px 0}.open-shift-card small{display:block;color:var(--muted);margin-top:4px}@media(max-width:760px){.open-shift-grid{grid-template-columns:1fr;margin:10px}.open-shift-card{align-items:flex-start;flex-direction:column}}

/* v14 navigation, form configurator, settings and dashboard editor refinements */
.editable-settings-card{display:flex;flex-direction:column;justify-content:space-between;gap:14px}.settings-card-link{display:flex;gap:12px;align-items:flex-start}.settings-card-actions{display:flex;gap:8px;flex-wrap:wrap}.settings-card-actions form{display:inline-flex}.inline-form{display:inline-flex;margin:0}.form-builder-top-actions{align-items:center}.form-builder-summary-bar{margin-bottom:14px}.builder-layout-aladtec{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(440px,2fr) minmax(260px,1fr);gap:14px;align-items:start}.builder-layout-aladtec .builder-palette,.builder-layout-aladtec .builder-properties{position:sticky;top:82px;max-height:calc(100vh - 100px);overflow:auto}.form-builder-bottom-actions{z-index:42}.app-dialog{width:min(620px,calc(100vw - 32px));border:0;border-radius:14px;padding:0;box-shadow:0 25px 80px rgba(0,0,0,.32);background:var(--card);color:var(--ink)}.app-dialog::backdrop{background:rgba(4,15,30,.62)}.dialog-head,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--line)}.dialog-actions{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end}.dialog-body{padding:18px}.custom-layout-section{width:100%;border-radius:10px;padding:14px}.custom-layout-section.style-card{border:1px solid var(--line);background:var(--card)}.custom-layout-section.style-accent{border-left:5px solid var(--blue);background:var(--soft)}.custom-layout-section.style-plain{padding-left:0;padding-right:0}.custom-layout-section h3{margin:0 0 8px}.custom-layout-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.custom-layout-grid>div{border:1px dashed var(--line);border-radius:7px;padding:12px;min-height:48px}.custom-form-video video{display:block;width:min(100%,760px);max-height:440px;margin:10px 0;border-radius:10px;background:#000}.smart-form-grid{width:100%}.smart-form-grid h3{margin:0 0 10px}.form-category-nav{display:flex;gap:10px;overflow:auto;padding:4px 0 16px;scrollbar-width:thin}.form-category-nav a{display:flex;flex-direction:column;min-width:160px;padding:10px 13px;border:1px solid var(--line);background:var(--card);border-radius:9px;color:var(--ink);box-shadow:var(--shadow)}.form-category-nav a:hover{text-decoration:none;border-color:var(--blue)}.form-category-nav span{font-size:11px;color:var(--muted)}.form-category-section{scroll-margin-top:90px}.form-card-grid.compact .form-card h3{margin:.35rem 0}.form-configurator-shell{display:grid;grid-template-columns:240px minmax(520px,1fr) 250px;gap:14px;align-items:start}.form-configurator-tree,.form-configurator-reference{position:sticky;top:82px;max-height:calc(100vh - 100px);overflow:auto}.form-tree-category{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:16px 0 6px}.form-tree-link{display:flex;gap:8px;align-items:flex-start;border-radius:7px;padding:8px;color:var(--ink)}.form-tree-link:hover{background:var(--soft);text-decoration:none}.form-tree-link small{display:block;color:var(--muted)}.feature-chip-grid.vertical{display:flex;flex-direction:column;align-items:stretch}.feature-chip-grid.vertical .feature-chip{display:block}.personnel-bulk-toolbar{position:sticky;top:72px;z-index:18}.personnel-select-circle{appearance:none;-webkit-appearance:none;width:20px!important;height:20px!important;border:2px solid #7890a8;border-radius:50%!important;padding:0!important;background:#fff;display:inline-grid;place-content:center;cursor:pointer}.personnel-select-circle:checked{border-color:var(--blue);background:var(--blue)}.personnel-select-circle:checked::after{content:'✓';font-size:12px;font-weight:900;color:#fff}.personnel-select-cell{width:38px;text-align:center}.settings-dashboard-management-note{font-size:11px;color:var(--muted)}
@media(max-width:1200px){.builder-layout-aladtec{grid-template-columns:210px minmax(400px,1fr)}.builder-layout-aladtec .builder-properties{grid-column:1/-1;position:static;max-height:none}.form-configurator-shell{grid-template-columns:220px 1fr}.form-configurator-reference{grid-column:1/-1;position:static;max-height:none}}
@media(max-width:800px){.builder-layout-aladtec,.form-configurator-shell{grid-template-columns:1fr}.builder-layout-aladtec .builder-palette,.builder-layout-aladtec .builder-properties,.form-configurator-tree,.form-configurator-reference{position:static;max-height:none}.form-builder-top-actions{width:100%;overflow:auto;flex-wrap:nowrap}.form-builder-top-actions>*{flex:0 0 auto}.personnel-bulk-toolbar{top:60px}.form-category-nav a{min-width:140px}}
.dashboard-custom-widget.font-small{font-size:.9em}.dashboard-custom-widget.font-large{font-size:1.08em}.dashboard-custom-widget.font-xlarge{font-size:1.18em}.dashboard-custom-widget.emphasis-bold{font-weight:700}.dashboard-custom-widget.emphasis-italic{font-style:italic}.dashboard-custom-widget.tone-soft>.panel{background:var(--soft)}.dashboard-custom-widget.tone-navy>.panel{background:#0b2c51;color:#fff}.dashboard-custom-widget.tone-navy>.panel a{color:#d8eaff}.dashboard-custom-widget.tone-gold>.panel{background:#fff4cf;border-color:#e2bd4e;color:#3c2c00}.theme-night .dashboard-custom-widget.tone-gold>.panel{background:#4b390a;color:#fff5cf}


/* 2026-08-08 v15 navigation, appearance, and personal schedule usability fixes */
.topbar{z-index:160}
.sidebar{z-index:70}
.module-nav{overflow:visible!important}
.nav-module{position:relative}
.nav-submenu{display:none;position:fixed!important;min-width:265px;max-width:min(360px,calc(100vw - 24px));max-height:min(70vh,620px);overflow:auto;margin:0!important;padding:8px!important;border:1px solid #315478!important;border-radius:10px!important;background:#0b2342!important;box-shadow:0 18px 55px rgba(0,0,0,.34)!important;z-index:230!important}
.nav-submenu>a,.nav-submenu summary{color:#e1ebf7!important}
.nav-submenu>a:hover,.nav-submenu summary:hover{background:#163b69!important;color:#fff!important;text-decoration:none}
.nav-module.submenu-open>.nav-submenu,.nav-module:focus-within>.nav-submenu{display:grid}
.nav-module:hover>.nav-submenu{display:none}
.nav-module.submenu-open:hover>.nav-submenu{display:grid}
.forms-nested-submenu details>div{border-left-color:#547391}
.forms-nested-submenu details a{color:#d9e7f5!important}
.popover-heading-actions{display:flex;align-items:center;gap:5px}
.popover-close{width:30px!important;height:30px!important;display:grid!important;place-items:center!important;font-size:20px!important;padding:0!important;border-radius:8px!important}
.user-popover-header{grid-template-columns:minmax(0,1fr) auto!important;align-items:start}
.user-popover-header>span{display:grid;min-width:0}.user-popover-header small{overflow-wrap:anywhere}
.topbar-popover{z-index:260}

/* Make navigation position choices work at all screen widths. */
body.nav-right .app-shell{grid-template-columns:minmax(0,1fr) 245px}
body.nav-right .sidebar{grid-column:2;grid-row:1}
body.nav-right .content{grid-column:1;grid-row:1}
body.nav-top .sidebar{z-index:120}
@media(max-width:800px){
  body.nav-left .sidebar{left:-270px;right:auto;transition:left .2s}
  body.nav-left .sidebar.open{left:0}
  body.nav-right .sidebar{left:auto!important;right:-270px!important;transition:right .2s!important;grid-column:auto}
  body.nav-right .sidebar.open{right:0!important}
  body.nav-top .menu-button{display:none}
  body.nav-top .app-shell{display:block}
  body.nav-top .sidebar{position:sticky!important;left:auto!important;right:auto!important;top:70px!important;width:100%!important;height:auto!important;max-height:none!important;padding:6px 8px!important;display:flex!important;overflow-x:auto!important;overflow-y:visible!important;z-index:120!important}
  body.nav-top .module-nav{display:flex!important;min-width:max-content;gap:3px}
  body.nav-top .nav-module,body.nav-top .nav-single{flex:0 0 auto}
  body.nav-top .sidebar-branding,body.nav-top .sidebar-footer,body.nav-top .nav-heading{display:none!important}
}

/* v73 unified notification communications inbox and outbox */
.communications-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:-4px 0 16px;padding:6px;border:1px solid var(--line);border-radius:11px;background:var(--card)}
.communications-tabs a{padding:9px 16px;border-radius:8px;color:var(--ink);font-weight:850;text-decoration:none}
.communications-tabs a:hover{background:var(--soft)}
.communications-tabs a.active{background:var(--blue);color:#fff}
.communication-sync-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 18px;align-items:center}
.communication-sync-panel h2,.communication-sync-panel p{margin:2px 0}
.communication-sync-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.communication-filter-form{display:grid;grid-template-columns:minmax(240px,1fr) minmax(150px,230px) auto auto;gap:9px;align-items:end;margin-bottom:16px}
.communication-filter-form label{display:grid;gap:5px;font-weight:800;font-size:.78rem}
.communication-list{display:grid;gap:8px}
.communication-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:.75rem}.communication-pagination>div{display:flex;gap:7px}
.communication-row{display:grid;grid-template-columns:74px minmax(240px,1.4fr) minmax(170px,.8fr) minmax(135px,auto);gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);text-decoration:none}
.communication-row:hover{border-color:var(--blue);box-shadow:0 5px 18px rgba(12,61,105,.1);text-decoration:none}
.communication-row.unread{border-left:5px solid var(--blue);background:color-mix(in srgb,var(--blue) 6%,var(--card))}
.communication-main{display:grid;gap:4px;min-width:0}
.communication-main strong,.communication-main small,.communication-party{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.communication-main small,.communication-party,.communication-meta{color:var(--muted);font-size:.72rem}
.communication-meta{display:grid;justify-items:end;gap:6px;text-align:right}
.communication-channel{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:4px 8px;border-radius:999px;background:#e7edf3;color:#334c63;font-size:.66rem;font-weight:900;text-transform:uppercase}
.communication-channel.app{background:#e4efff;color:#145c9a}.communication-channel.sms{background:#e2f6e9;color:#23643c}.communication-channel.email{background:#f1e8ff;color:#5f3793}
.communication-thread-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.7fr);gap:16px;align-items:start}
.communication-timeline{display:grid;gap:12px}
.communication-bubble{width:min(88%,760px);padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:var(--soft)}
.communication-bubble.outbound{justify-self:end;border-right:5px solid var(--blue);background:color-mix(in srgb,var(--blue) 7%,var(--card))}
.communication-bubble.inbound{justify-self:start;border-left:5px solid var(--green);background:color-mix(in srgb,var(--green) 7%,var(--card))}
.communication-bubble-heading{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.communication-bubble-heading time{margin-left:auto;color:var(--muted);font-size:.68rem}
.communication-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}
.communication-reply-panel{position:sticky;top:86px}
.notification-row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.notification-row-actions form{margin:0}
body.theme-night .communications-tabs,body.theme-night .communication-row,body.theme-night .communication-bubble,body.theme-night .communication-reply-panel{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}
body.theme-night .communication-row.unread,body.theme-night .communication-bubble.outbound{background:color-mix(in srgb,var(--blue) 20%,var(--card))!important}
body.theme-night .communication-bubble.inbound{background:color-mix(in srgb,var(--green) 18%,var(--card))!important}
body.theme-night .communication-channel.app{background:#173d61;color:#d9efff}body.theme-night .communication-channel.sms{background:#174632;color:#c9f8df}body.theme-night .communication-channel.email{background:#3e2c58;color:#eadcff}
@media(max-width:1000px){.communication-row{grid-template-columns:70px minmax(0,1fr) auto}.communication-party{grid-column:2}.communication-meta{grid-column:3;grid-row:1/3}.communication-thread-layout{grid-template-columns:1fr}.communication-reply-panel{position:static}}
@media(max-width:700px){.communication-sync-panel,.communication-filter-form{grid-template-columns:1fr}.communication-sync-actions{justify-content:flex-start}.communication-filter-form .button,.communication-sync-actions form,.communication-sync-actions .button{width:100%}.communication-row{grid-template-columns:auto minmax(0,1fr);gap:8px}.communication-party,.communication-meta{grid-column:2;grid-row:auto;justify-items:start;text-align:left}.communication-bubble{width:auto}.communication-bubble-heading time{width:100%;margin-left:0}.notification-row-actions,.notification-row-actions .button,.notification-row-actions form{width:100%}}

/* Night mode: every interactive surface inherits readable foreground/background colors. */
body.theme-night{background:var(--bg);color:var(--ink)}
body.theme-night .content,body.theme-night .public-content{background:var(--bg);color:var(--ink)}
body.theme-night label,body.theme-night .detail-list dt,body.theme-night .schedule-section-title,body.theme-night .panel-heading,body.theme-night .settings-control-card label{color:var(--ink)}

.provider-diagnostic{margin:12px 0;padding:12px 14px;border:1px solid var(--warning);border-radius:10px;background:color-mix(in srgb,var(--warning) 12%,var(--surface));color:var(--ink)}.provider-diagnostic ul{margin:7px 0 0;padding-left:20px}.provider-test-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 6px}.provider-test-actions form{margin:0}.delivery-failed-count{color:var(--danger);font-weight:800}.delivery-failure-details{margin-top:7px;max-width:520px}.delivery-failure-details summary{cursor:pointer;color:var(--accent);font-weight:750}.delivery-failure-details ul{margin:7px 0 0;padding-left:18px}.delivery-failure-details li{margin-bottom:6px;overflow-wrap:anywhere}
body.theme-night .panel,body.theme-night .stat-card,body.theme-night .resource-card,body.theme-night .filter-bar,body.theme-night .shift-card,body.theme-night .directory-card,body.theme-night .approval-card,body.theme-night .inline-storage-form,body.theme-night .schedule-shell,body.theme-night .schedule-placeholder-section,body.theme-night .calendar-day,body.theme-night .calendar-head,body.theme-night .availability-entry-panel,body.theme-night .trade-card,body.theme-night .credential-card,body.theme-night .design-choice,body.theme-night .home-editor-card,body.theme-night .builder-card,body.theme-night .config-card,body.theme-night .settings-list-card{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}
body.theme-night .calendar-head,body.theme-night th,body.theme-night .hourly-position,body.theme-night .availability-board-head{background:#142a41!important;color:#d6e4f2!important}
body.theme-night td,body.theme-night .calendar-day,body.theme-night .hourly-row>div,body.theme-night .availability-name-column>div{border-color:var(--line)!important}
body.theme-night tbody tr:hover,body.theme-night .resource-card:hover,body.theme-night .settings-module-link:hover{background:#152b43!important}
body.theme-night .button.ghost,body.theme-night .icon-button{background:#12283f!important;color:#eaf2fb!important;border-color:#35516f!important}
body.theme-night .button.secondary{background:#173a5e!important;color:#e0efff!important;border-color:#38658e!important}
body.theme-night .pill{background:#25394f;color:#e6eef7}body.theme-night .pill.success{background:#153f31;color:#9be0bf}body.theme-night .pill.warning{background:#493b17;color:#ffe28a}body.theme-night .pill.danger{background:#4a222a;color:#ffb6c0}body.theme-night .pill.info{background:#173b5d;color:#b7dcff}
body.theme-night .sidebar,body.theme-night body.nav-top .sidebar{background:#030d1a!important}
body.theme-night .sidebar nav a,body.theme-night .nav-single,body.theme-night .nav-module-row>a{color:#e4edf8!important}
body.theme-night .sidebar nav a:hover,body.theme-night .sidebar nav a.active,body.theme-night .nav-module.active>.nav-module-row>a,body.theme-night .nav-single.active{background:#173b63!important;color:#fff!important}
body.theme-night .nav-module-row button{color:#c4d3e4!important}body.theme-night .nav-module-row button:hover{background:#173b63!important;color:#fff!important}
body.theme-night .nav-submenu{background:#07192c!important;border-color:#35516f!important}
body.theme-night .nav-submenu>a,body.theme-night .nav-submenu summary{color:#e9f1fa!important}
body.theme-night .nav-submenu>a:hover,body.theme-night .nav-submenu summary:hover{background:#173b63!important}
body.theme-night .topbar-popover{background:#0f2034!important;color:#e8f0f8!important;border-color:#35516f!important}
body.theme-night .topbar-popover a,body.theme-night .topbar-popover button{color:#e8f0f8!important}
body.theme-night .topbar-popover a:hover,body.theme-night .topbar-popover button:hover{background:#17304a!important}
body.theme-night .home-divider span{background:var(--bg)}
body.theme-night .day-preview{background:#152b42;color:#eaf2fb}
body.theme-night .night-preview{border-color:#4f7090}

/* Appearance save control remains visible even on long preference pages. */
.preference-save-bar{position:sticky;bottom:10px;z-index:60;display:flex;justify-content:space-between;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 35px rgba(0,0,0,.18);padding:12px 14px;margin-top:4px}
.preference-save-bar>span{display:grid;gap:2px}.preference-save-bar small{font-size:10px}.preference-save-bar .form-actions{margin:0;flex:0 0 auto}
@media(max-width:700px){.preference-save-bar{align-items:stretch;flex-direction:column}.preference-save-bar .form-actions{display:grid;grid-template-columns:1fr 1fr}.preference-save-bar .button{width:100%}}

/* My Schedule calendar/list experience. */
.my-schedule-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;padding:16px;border-bottom:1px solid var(--line)}.my-schedule-toolbar h2{margin:2px 0}.my-schedule-toolbar p{margin:4px 0}.my-schedule-view-switch{display:flex;gap:6px;flex-wrap:wrap}.my-calendar-month-nav{display:flex;justify-content:center;align-items:center;gap:14px;padding:13px}.my-calendar-month-nav strong{font-size:17px}.my-schedule-legend{display:flex;gap:7px;flex-wrap:wrap;padding:0 14px 12px}.my-schedule-calendar .calendar-day{min-height:185px}.my-availability-chip{display:grid;gap:2px;padding:5px 6px;margin:3px 0 7px;border-radius:6px;font-size:9px}.my-availability-chip strong{font-size:10px}.my-availability-chip span,.my-availability-chip small{font-size:9px}.my-availability-chip.available{background:#dcf4e6;color:#0d6a40}.my-availability-chip.preferred{background:#fff0bd;color:#735500}.my-availability-chip.unavailable{background:#f8dade;color:#8d1d31}.my-availability-chip.not-entered{background:#eef1f5;color:#68788a}.my-shift-entry{background:#e1efff;border-left:3px solid var(--blue);padding:4px 5px;border-radius:4px;color:#174f8b}.my-shift-entry:hover{text-decoration:none;background:#d4e8ff}
body.theme-night .my-availability-chip.available{background:#153d2f;color:#a2e2c2}body.theme-night .my-availability-chip.preferred{background:#493b17;color:#ffe38c}body.theme-night .my-availability-chip.unavailable{background:#4b232d;color:#ffbdc6}body.theme-night .my-availability-chip.not-entered{background:#27384a;color:#bbc9d8}body.theme-night .my-shift-entry{background:#173b5d;color:#c9e5ff}
@media(max-width:760px){.my-schedule-toolbar{align-items:flex-start;flex-direction:column}.my-schedule-view-switch{width:100%}.my-schedule-view-switch .button{flex:1}.my-schedule-calendar .calendar-day{min-height:150px}}

/* 2026-08-08 v16 comprehensive Night Mode contrast + calendar differentiation */
body.theme-night{
  color-scheme:dark;
  --calendar-head-bg:#173653;
  --calendar-day-bg:#0d1d2e;
  --calendar-day-alt:#0a1725;
  --calendar-today:#143250;
  --night-surface:#0f2034;
  --night-surface-2:#132a43;
  --night-surface-3:#173550;
  --night-text:#eaf2fb;
  --night-muted:#a8bbcf;
  --night-border:#35516f;
}
body.theme-night .page-heading h1,
body.theme-night .page-heading h2,
body.theme-night .page-heading h3,
body.theme-night .panel h1,
body.theme-night .panel h2,
body.theme-night .panel h3,
body.theme-night .panel h4,
body.theme-night .panel p,
body.theme-night .panel strong,
body.theme-night .panel legend,
body.theme-night .panel label,
body.theme-night .panel summary,
body.theme-night .dialog-heading h2,
body.theme-night .dialog-heading h3{color:var(--night-text)!important}
body.theme-night small,
body.theme-night .muted,
body.theme-night .panel small,
body.theme-night .settings-list-toolbar small,
body.theme-night .settings-dashboard-management-note{color:var(--night-muted)!important}
body.theme-night a:not(.button):not(.nav-single):not(.settings-section-tab):not(.settings-module-link){color:#8fc7ff}
body.theme-night input::placeholder,
body.theme-night textarea::placeholder{color:#8195aa;opacity:1}
body.theme-night option{background:#10263e;color:#eaf2fb}
body.theme-night input:disabled,
body.theme-night select:disabled,
body.theme-night textarea:disabled{background:#0b1a2a!important;color:#899caf!important;opacity:1}

/* Dashboard and urgent announcements */
body.theme-night .announcement,
body.theme-night .announcement-list .announcement{background:#11263b!important;color:var(--night-text)!important;border-color:#62809d!important}
body.theme-night .announcement h3,
body.theme-night .announcement p,
body.theme-night .announcement strong,
body.theme-night .announcement span:not(.pill){color:var(--night-text)!important}
body.theme-night .announcement small{color:#b4c5d7!important}
body.theme-night .announcement.priority-important{background:#3d3215!important;border-color:#d9ac35!important;color:#fff3c1!important}
body.theme-night .announcement.priority-important h3,
body.theme-night .announcement.priority-important p,
body.theme-night .announcement.priority-important strong{color:#fff3c1!important}
body.theme-night .announcement.priority-urgent{background:#461b28!important;border-color:#ef6c82!important;color:#ffdbe1!important}
body.theme-night .announcement.priority-urgent h3,
body.theme-night .announcement.priority-urgent p,
body.theme-night .announcement.priority-urgent strong{color:#ffdbe1!important}
body.theme-night .announcement.priority-urgent small{color:#f0b7c1!important}
body.theme-night .empty-state{color:var(--night-muted)!important}

/* Forms direct-navigation menus and configurator surfaces */
body.theme-night .forms-nested-submenu details,
body.theme-night .forms-nested-submenu details>div,
body.theme-night .form-configurator-tree,
body.theme-night .form-configurator-reference,
body.theme-night .builder-palette,
body.theme-night .builder-properties,
body.theme-night .form-builder-summary-bar{background:#0d1f32!important;color:var(--night-text)!important;border-color:var(--night-border)!important}
body.theme-night .forms-nested-submenu summary,
body.theme-night .forms-nested-submenu details a,
body.theme-night .form-tree-link,
body.theme-night .form-tree-link strong{color:#e8f2fc!important}
body.theme-night .forms-nested-submenu details a:hover,
body.theme-night .form-tree-link:hover{background:#183b5b!important;color:#fff!important}
body.theme-night .form-category-nav a{background:#10253b!important;color:#edf5ff!important;border-color:#35516f!important}
body.theme-night .form-category-nav a:hover{background:#173b5d!important;border-color:#5b91c5!important}
body.theme-night .form-category-nav a span,
body.theme-night .form-tree-link small,
body.theme-night .form-tree-category{color:#afc1d4!important}
body.theme-night .custom-layout-section.style-card,
body.theme-night .custom-layout-section.style-accent,
body.theme-night .custom-layout-grid>div{background:#10253b!important;color:var(--night-text)!important;border-color:#35516f!important}
body.theme-night .custom-layout-section.style-accent{background:#142c45!important}

/* Schedule shell, editor, assignment dock, dialogs */
body.theme-night .schedule-toolbar,
body.theme-night .schedule-filter-panel,
body.theme-night .schedule-section-title,
body.theme-night .schedule-placeholder-section{background:#0f2034!important;color:var(--night-text)!important;border-color:var(--night-border)!important}
body.theme-night .schedule-view-tabs a{color:#b9d5ef!important}
body.theme-night .schedule-view-tabs a.active{color:#78b9ff!important;border-color:#78b9ff!important}
body.theme-night .standard-slot-note{background:#112a43!important;color:#cce6ff!important;border-color:#365c80!important}
body.theme-night .hourly-editor-wrap,
body.theme-night .hourly-editor-table{background:#091726!important;color:var(--night-text)!important}
body.theme-night .hourly-header{border-color:#35516f!important}
body.theme-night .hourly-header>div{background:#173653!important;color:#eaf2fb!important;border-color:#35516f!important}
body.theme-night .hourly-group-title{background:#122b43!important;color:#eaf2fb!important;border-color:#35516f!important}
body.theme-night .hourly-row{border-color:#35516f!important;background:#0b1b2b!important}
body.theme-night .hourly-position{background:#10263d!important;color:#e8f2fc!important;border-color:#35516f!important}
body.theme-night .editor-shift-select{color:#d8eaff!important}
body.theme-night .shift-select-circle{background:#10263d!important;border-color:#7d9ab5!important;box-shadow:inset 0 0 0 2px #10263d!important}
body.theme-night .editor-shift-select.selected .shift-select-circle,
body.theme-night .selected-shift-row .shift-select-circle{background:#57a9ff!important;border-color:#57a9ff!important;box-shadow:inset 0 0 0 3px #10263d!important}
body.theme-night .selected-shift-row{background:#153450!important}
body.theme-night .hourly-track{background-color:#0c1b2b!important;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(4.166% - 1px),#28435e calc(4.166% - 1px),#28435e 4.166%)!important}
body.theme-night .hourly-bar{background:#316987!important;border-color:#69a7c5!important;color:#f2f8ff!important}
body.theme-night .hourly-bar.open{background:#5a2d56!important;border-color:#c67abb!important;color:#ffd9fa!important}
body.theme-night .hourly-assignment-bar{background:#174b35!important;border-color:#42a071!important;color:#d5f6e5!important}
body.theme-night .hourly-assignment-bar:hover{background:#1c5d41!important}
body.theme-night .member-scroll-box,
body.theme-night .member-select-row,
body.theme-night .selected-current-assignments{background:#10253b!important;color:var(--night-text)!important;border-color:#35516f!important}
body.theme-night .member-select-row:hover{background:#173b5d!important}
body.theme-night .editor-bottom-dock{background:#0d1e30!important;color:var(--night-text)!important;border-color:#42617f!important}
body.theme-night .editor-floating-row{background:#11283e!important;color:var(--night-text)!important}
body.theme-night .editor-selected-shift,
body.theme-night .editor-personnel-dropdown,
body.theme-night .editor-notes-control{color:var(--night-text)!important}
body.theme-night .editor-availability-drawer{background:#0d1f32!important;color:var(--night-text)!important;border-color:#42617f!important}
body.theme-night .editor-availability-heading,
body.theme-night .editor-availability-section-label,
body.theme-night .editor-availability-grid,
body.theme-night .editor-availability-member-row,
body.theme-night .editor-member-cell,
body.theme-night .editor-availability-status{background:#10253b!important;color:var(--night-text)!important;border-color:#35516f!important}
body.theme-night .editor-availability-member-row:hover{background:#173b5d!important}
body.theme-night .editor-availability-track{background-color:#0c1b2a!important;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(4.166% - 1px),#29445f calc(4.166% - 1px),#29445f 4.166%)!important}
body.theme-night .editor-availability-track.no-entry{background-color:#0a1725!important}
body.theme-night .assignment-context-menu{background:#0f2034!important;color:var(--night-text)!important;border-color:#42617f!important}
body.theme-night .assignment-context-menu button{background:#0f2034!important;color:#ffb6c3!important}
body.theme-night .assignment-context-menu button:hover{background:#3d1c26!important}
body.theme-night .assignment-more-button{background:#10253b!important;color:#d7e8f7!important;border-color:#42617f!important}
body.theme-night .time-off-dialog,
body.theme-night .assignment-conflict-dialog,
body.theme-night .overtime-warning-dialog,
body.theme-night .app-dialog{background:#0f2034!important;color:var(--night-text)!important;border:1px solid #42617f!important}
body.theme-night .dialog-heading,
body.theme-night .dialog-head,
body.theme-night .dialog-body,
body.theme-night .dialog-actions,
body.theme-night .time-off-dialog form{background:#0f2034!important;color:var(--night-text)!important;border-color:#35516f!important}
body.theme-night .dialog-close{color:#d8e6f5!important}
body.theme-night .conflict-warning-banner{background:#4a1d28!important;color:#ffd5dd!important;border-color:#f07086!important}
body.theme-night .conflict-item{background:#2e1a23!important;color:#ffdce2!important;border-color:#8d4856!important}
body.theme-night .conflict-item strong{color:#ffbdc8!important}
body.theme-night .conflict-impact-note,
body.theme-night .time-off-impact{background:#413715!important;color:#ffedb0!important;border-color:#a48738!important}
body.theme-night .overtime-warning-banner{background:#433312!important;color:#ffe8a6!important;border-color:#d1a33f!important}

/* Availability manager: header, selectors, calendar and all-personnel table */
body.theme-night .availability-page-head,
body.theme-night .availability-person-picker,
body.theme-night .availability-entry-panel,
body.theme-night .all-availability-panel,
body.theme-night .all-availability-toolbar{background:#0f2034!important;color:var(--night-text)!important;border-color:#35516f!important}
body.theme-night .availability-month-nav h2,
body.theme-night .availability-page-head strong,
body.theme-night .availability-person-picker strong,
body.theme-night .availability-entry-panel h3,
body.theme-night .all-availability-toolbar h2{color:var(--night-text)!important}
body.theme-night .availability-click-help,
body.theme-night .all-availability-toolbar p{color:var(--night-muted)!important}
body.theme-night .availability-calendar button.calendar-day{background:var(--calendar-day-bg)!important;color:var(--night-text)!important}
body.theme-night .availability-calendar button.calendar-day:hover{outline-color:#6db5f5!important}
body.theme-night .availability-calendar button.calendar-day.is-selected{outline-color:#68b8ff!important}
body.theme-night .availability-selection-summary{background:#153653!important;color:#f3f7fc!important;border-color:#5c83a5!important}
body.theme-night .availability-selection-summary small,.theme-night .availability-batch-actions small{color:#c8d8e8!important}
body.theme-night .availability-range-alternative,body.theme-night .availability-all-day-control{background:#0b1d2f!important;color:#f3f7fc!important;border-color:#385873!important}
body.theme-night .availability-range-alternative summary{color:#cbe7ff!important}
body.theme-night .scheduled-database-controls{background:#10273d!important;color:#f3f7fc!important;border-color:#385873!important}
body.theme-night .all-availability-scroll{border-color:#35516f!important;background:#091726!important}
body.theme-night .all-availability-table thead th{background:#173653!important;color:#eaf2fb!important;border-color:#35516f!important}
body.theme-night .all-availability-table .member-sticky{background:#10263d!important;color:#eaf2fb!important;border-color:#35516f!important}
body.theme-night .all-availability-table thead .member-sticky{background:#1b3d5d!important}
body.theme-night .all-availability-table tbody tr:hover .member-sticky{background:#173b5d!important}
body.theme-night .all-availability-cell{background:#0d1d2e!important;border-color:#35516f!important}

/* Calendar differentiation in both themes */
.calendar-head{background:#e2edf7;color:#244c70;font-weight:850}
.calendar-day{background:#fbfdff}
.calendar-day.other-month{background:#eef3f7;color:#8797a6}
.calendar-day.today{background:#eef7ff;outline-color:#0b67c2}
body.theme-night .calendar-head{background:var(--calendar-head-bg)!important;color:#eef6ff!important;border-color:#41617f!important}
body.theme-night .calendar-day{background:var(--calendar-day-bg)!important;color:#eaf2fb!important;border-color:#35516f!important}
body.theme-night .calendar-day.other-month{background:var(--calendar-day-alt)!important;color:#778b9f!important}
body.theme-night .calendar-day.today{background:var(--calendar-today)!important;outline-color:#64b5ff!important}
body.theme-night .calendar-day-number,
body.theme-night .calendar-group-label{color:#eaf2fb!important}
body.theme-night .calendar-entry{color:#dce8f5!important}
body.theme-night .calendar-entry.open{color:#f4a4e6!important}
body.theme-night .calendar-entry.timeoff{background:#4a351b!important;color:#ffd69a!important;border-color:#c58734!important}
body.theme-night .calendar-entry.event{background:#193b5e!important;color:#bdddff!important;border-color:#5b9bd7!important}

/* Settings navigation, cards, tabs, editable tables and callouts */
body.theme-night .settings-layout>aside,
body.theme-night .settings-module-nav,
body.theme-night .settings-editor-panel,
body.theme-night .settings-home-card,
body.theme-night .settings-control-card,
body.theme-night .settings-choice,
body.theme-night .settings-options-wrap,
body.theme-night .editable-settings-card{background:#0f2034!important;color:var(--night-text)!important;border-color:#35516f!important}
body.theme-night .settings-section-nav{background:#0b1b2b!important;border-color:#35516f!important}
body.theme-night .settings-section-tab{color:#c8d9ea!important;background:transparent!important}
body.theme-night .settings-section-tab:hover{background:#173b5d!important;color:#fff!important}
body.theme-night .settings-section-tab.active{background:#2c69a4!important;color:#fff!important}
body.theme-night .settings-module-group-label{color:#91a8be!important;border-color:#35516f!important}
body.theme-night .settings-module-link{color:#dce9f6!important;background:transparent!important}
body.theme-night .settings-module-link:hover,
body.theme-night .settings-module-link.active{background:#173b5d!important;color:#fff!important}
body.theme-night .settings-control-card>strong,
body.theme-night .settings-control-card legend,
body.theme-night .settings-choice span,
body.theme-night .settings-card-link,
body.theme-night .settings-card-link strong,
body.theme-night .settings-list-toolbar strong{color:var(--night-text)!important}
body.theme-night .settings-editable-row{background:#10253b!important;color:var(--night-text)!important;border-color:#35516f!important}
body.theme-night .settings-options-wrap table,
body.theme-night .settings-options-wrap tbody,
body.theme-night .settings-options-wrap tr,
body.theme-night .settings-options-wrap td{background:#0f2034!important;color:var(--night-text)!important;border-color:#35516f!important}
body.theme-night .settings-options-wrap tbody tr:hover,
body.theme-night .settings-options-wrap tbody tr:hover td{background:#17304a!important}
body.theme-night .settings-callout{background:#173550!important;color:#dcecff!important;border-color:#49759d!important}
body.theme-night .settings-callout strong{color:#fff!important}
body.theme-night .permission-matrix th{background:#173653!important;color:#eaf2fb!important}
body.theme-night .permission-matrix td{background:#0f2034!important;color:#eaf2fb!important}
body.theme-night .audit-category-strip a{background:#173550!important;color:#cce6ff!important}
body.theme-night .audit-category-strip a:hover{background:#24517a!important}

/* General table and popover safety net for night mode */
body.theme-night .table-wrap{background:#0f2034!important;border-color:#35516f!important}
body.theme-night table{color:var(--night-text)!important}
body.theme-night thead th{background:#173653!important;color:#eaf2fb!important;border-color:#42617f!important}
body.theme-night tbody td{background:#0f2034;color:#e6eef7;border-color:#2d4761!important}
body.theme-night tbody tr:hover td{background:#17304a!important}
body.theme-night .topbar-popover,
body.theme-night .notification-popover,
body.theme-night .user-popover{background:#0f2034!important;color:#eaf2fb!important;border-color:#42617f!important}
body.theme-night .topbar-popover .popover-heading,
body.theme-night .topbar-popover strong,
body.theme-night .topbar-popover span{color:#eaf2fb!important}

/* 2026-08-08 v17 NIGHT MODE REBUILD
   High-contrast pass using the actual hosted-app class names. */
body.theme-night{
  --bg:#06101d;
  --card:#0e2236;
  --ink:#f3f7fc;
  --muted:#bac9d8;
  --line:#385873;
  --input-bg:#0a1b2b;
  --panel-soft:#152f49;
  --blue:#69b7ff;
  --blue2:#3f92dc;
  --cyan:#2d8ba5;
  --red:#ff8798;
  --green:#52cc8d;
  --gold:#f0c85d;
  --purple:#c58ce0;
  --open:#f0a5e9;
  --shadow:0 12px 34px rgba(0,0,0,.38);
  background:#06101d!important;
  color:#f3f7fc!important;
  color-scheme:dark;
}
body.theme-night .content, body.theme-night .public-content{background:#06101d!important;color:#f3f7fc!important}
body.theme-night h1,body.theme-night h2,body.theme-night h3,body.theme-night h4,body.theme-night h5,
body.theme-night p,body.theme-night label,body.theme-night legend,body.theme-night summary,body.theme-night strong{color:#f3f7fc}
body.theme-night .muted,body.theme-night small{color:#bac9d8!important}
body.theme-night input,body.theme-night select,body.theme-night textarea{
  background:#0a1b2b!important;color:#f3f7fc!important;border-color:#496985!important;
}
body.theme-night input:focus,body.theme-night select:focus,body.theme-night textarea:focus{outline-color:#345f86!important;border-color:#73bcff!important}
body.theme-night option{background:#0a1b2b!important;color:#f3f7fc!important}
body.theme-night input::placeholder,body.theme-night textarea::placeholder{color:#8fa6bb!important;opacity:1}

/* Core cards/surfaces */
body.theme-night .panel,body.theme-night .stat-card,body.theme-night .resource-card,body.theme-night .filter-bar,
body.theme-night .shift-card,body.theme-night .directory-card,body.theme-night .approval-card,body.theme-night .schedule-shell,
body.theme-night .schedule-placeholder-section,body.theme-night .availability-entry-panel,body.theme-night .trade-card,
body.theme-night .settings-editor-panel,body.theme-night .settings-home-card,body.theme-night .settings-control-card,
body.theme-night .settings-choice,body.theme-night .settings-options-wrap,body.theme-night .editable-settings-card,
body.theme-night .builder-card,body.theme-night .builder-palette,body.theme-night .builder-properties,
body.theme-night .form-configurator-tree,body.theme-night .form-configurator-main,body.theme-night .form-configurator-reference,
body.theme-night .form-builder-summary-bar{
  background:#0e2236!important;color:#f3f7fc!important;border-color:#385873!important;
}

/* Announcements: explicitly target the classes generated by dashboard/urgent pages. */
body.theme-night .announcement{background:#132c43!important;color:#f3f7fc!important;border-left-color:#69b7ff!important;border-color:#385873!important}
body.theme-night .announcement h3,body.theme-night .announcement p,body.theme-night .announcement strong,body.theme-night .announcement span:not(.pill){color:#f3f7fc!important}
body.theme-night .announcement.priority-important{background:#413718!important;border-left-color:#f0c85d!important;border-color:#8e7638!important}
body.theme-night .announcement.priority-important h3,body.theme-night .announcement.priority-important p,body.theme-night .announcement.priority-important strong{color:#fff1b6!important}
body.theme-night .announcement.priority-urgent{background:#4c1e2b!important;border-left-color:#ff8798!important;border-color:#9c4657!important}
body.theme-night .announcement.priority-urgent h3,body.theme-night .announcement.priority-urgent p,body.theme-night .announcement.priority-urgent strong{color:#ffe3e8!important}

/* Forms nested/direct navigation */
body.theme-night .nav-submenu,body.theme-night .forms-nested-submenu details,body.theme-night .forms-nested-submenu details>div{
  background:#091a2b!important;color:#f3f7fc!important;border-color:#496985!important;
}
body.theme-night .nav-submenu a,body.theme-night .nav-submenu button,body.theme-night .forms-nested-submenu summary,body.theme-night .forms-nested-submenu details a{color:#f3f7fc!important}
body.theme-night .nav-submenu a:hover,body.theme-night .nav-submenu button:hover,body.theme-night .forms-nested-submenu summary:hover,body.theme-night .forms-nested-submenu details a:hover{background:#1a4163!important;color:#fff!important}

/* Forms workspace: readable cards, controls, answer choices, builder tools, and submissions in night mode. */
body.theme-night .form-card,
body.theme-night .custom-form-renderer>.custom-form-field,
body.theme-night .custom-form-renderer>.custom-form-content,
body.theme-night .custom-form-renderer>.custom-form-image,
body.theme-night .custom-form-renderer>.custom-form-header,
body.theme-night .custom-form-block>.custom-form-field,
body.theme-night .custom-form-block>.custom-form-content,
body.theme-night .custom-form-block>.custom-form-image,
body.theme-night .custom-form-block>.custom-form-header,
body.theme-night .custom-form-block>.custom-form-agency-logo,
body.theme-night .builder-type,
body.theme-night .builder-field-card,
body.theme-night .property-group,
body.theme-night .config-card,
body.theme-night .feature-chip,
body.theme-night .smart-form-grid,
body.theme-night .submission-data dd{
  background:#10283f!important;color:#f3f7fc!important;border-color:#496985!important;
}
body.theme-night .form-card:hover,
body.theme-night .builder-type:hover,
body.theme-night .builder-field-card:hover,
body.theme-night .builder-field-card.selected{
  background:#183b5b!important;border-color:#73bcff!important;color:#fff!important;
}
body.theme-night .builder-field-card.selected{box-shadow:0 0 0 2px #315f86!important}
body.theme-night .builder-field-order button,
body.theme-night .builder-width-presets button,
body.theme-night .home-rich-toolbar button{
  background:#0a1b2b!important;color:#dcecff!important;border-color:#496985!important;
}
body.theme-night .builder-width-presets button.active{background:#287fc5!important;color:#fff!important;border-color:#73bcff!important}
body.theme-night .form-card h2,
body.theme-night .form-card h3,
body.theme-night .form-card p,
body.theme-night .form-card small,
body.theme-night .custom-form-content,
body.theme-night .custom-form-header p,
body.theme-night .custom-form-agency-logo strong,
body.theme-night .property-group>strong,
body.theme-night .builder-palette-section h3,
body.theme-night .option-field legend{
  color:#eaf3fc!important;
}
body.theme-night .form-card p,
body.theme-night .form-card small,
body.theme-night .custom-form-image figcaption,
body.theme-night .custom-form-field small,
body.theme-night .form-category-nav span,
body.theme-night .builder-field-summary small{
  color:#bac9d8!important;
}
body.theme-night .check-row{
  color:#f3f7fc!important;
}
body.theme-night .check-row:hover{background:rgba(105,183,255,.08)}
body.theme-night .submission-data{border-color:#496985!important}
body.theme-night .submission-data dt{
  background:#18344f!important;color:#eaf3fc!important;border-color:#496985!important;
}
body.theme-night .submission-data dd{border-color:#496985!important}
body.theme-night .custom-form-divider{color:#cfe5f8!important}
body.theme-night .custom-form-divider:before,
body.theme-night .custom-form-divider:after{border-color:#6b88a3!important}
body.theme-night .sticky-save{background:rgba(6,16,29,.94)!important}
body.theme-night .notice.warning{background:#433718!important;color:#fff1b7!important;border-color:#9a7d35!important}
body.theme-night .notice.danger{background:#4b1f2b!important;color:#ffe4e9!important;border-color:#9b4858!important}

/* Schedule toolbar / editor. */
body.theme-night .schedule-toolbar,body.theme-night .schedule-filter-panel,body.theme-night .schedule-section-title{
  background:#10273d!important;color:#f3f7fc!important;border-color:#385873!important;
}
body.theme-night .schedule-view-tabs a{color:#cde4f8!important}
body.theme-night .schedule-view-tabs a.active{color:#86c8ff!important;border-color:#86c8ff!important}
body.theme-night .hourly-editor-wrap,body.theme-night .hourly-editor-table{background:#071725!important;color:#f3f7fc!important}
body.theme-night .hourly-header>div{background:#1a3d5c!important;color:#fff!important;border-color:#496985!important}
body.theme-night .hourly-group-title{background:#17344e!important;color:#fff!important;border-color:#496985!important}
body.theme-night .hourly-row{background:#091c2d!important;border-color:#385873!important}
body.theme-night .hourly-position{background:#102a43!important;color:#f3f7fc!important;border-color:#496985!important}
body.theme-night .hourly-track{background-color:#081b2c!important;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(4.166% - 1px),#31516d calc(4.166% - 1px),#31516d 4.166%)!important}
body.theme-night .hourly-bar{background:#2e7398!important;border-color:#79c5e8!important;color:#fff!important}
body.theme-night .hourly-bar.open{background:#6b3365!important;border-color:#e09bd5!important;color:#fff!important}
body.theme-night .hourly-assignment-bar{background:#176044!important;border-color:#69d29b!important;color:#e7fff2!important}
body.theme-night .editor-bottom-dock{background:#0b1f32!important;color:#f3f7fc!important;border-color:#587793!important;box-shadow:0 -12px 36px rgba(0,0,0,.5)!important}
body.theme-night .editor-floating-row{background:#102b43!important;color:#f3f7fc!important}
body.theme-night .editor-availability-drawer{background:#0a1e31!important;color:#f3f7fc!important;border-color:#587793!important}
body.theme-night .editor-availability-heading,body.theme-night .editor-availability-section-label,
body.theme-night .editor-availability-grid,body.theme-night .editor-availability-member-row,
body.theme-night .editor-member-cell,body.theme-night .editor-availability-status{background:#102a43!important;color:#f3f7fc!important;border-color:#385873!important}
body.theme-night .editor-availability-member-row:hover{background:#1a4163!important}

/* Schedule dialogs + generic modal surfaces. */
body.theme-night .app-dialog,body.theme-night .time-off-dialog,body.theme-night .assignment-conflict-dialog,body.theme-night .overtime-warning-dialog{
  background:#0e2236!important;color:#f3f7fc!important;border-color:#587793!important;
}
body.theme-night .dialog-head,body.theme-night .dialog-heading,body.theme-night .dialog-body,body.theme-night .dialog-actions,
body.theme-night .time-off-dialog form{background:#0e2236!important;color:#f3f7fc!important;border-color:#385873!important}

/* Availability top/control surfaces. */
body.theme-night .availability-page-head,body.theme-night .availability-person-picker,body.theme-night .availability-entry-panel,
body.theme-night .all-availability-panel,body.theme-night .all-availability-toolbar{
  background:#10273d!important;color:#f3f7fc!important;border-color:#385873!important;
}
body.theme-night .availability-page-head *,body.theme-night .availability-person-picker *,body.theme-night .availability-entry-panel h3,body.theme-night .all-availability-toolbar *{color:#f3f7fc}
body.theme-night .all-availability-scroll{background:#071725!important;border-color:#385873!important}
body.theme-night .all-availability-table thead th{background:#1a3d5c!important;color:#fff!important;border-color:#496985!important}
body.theme-night .all-availability-table .member-sticky{background:#102a43!important;color:#f3f7fc!important;border-color:#496985!important}
body.theme-night .all-availability-cell{background:#0b2033!important;color:#f3f7fc!important;border-color:#385873!important}

/* Calendar: headers and dates intentionally distinct. */
.calendar-head{background:#dbe8f4!important;color:#173f63!important;font-weight:900}
.calendar-day{background:#fbfdff!important}
.calendar-day.other-month{background:#eef3f8!important;color:#7d8fa0!important}
.calendar-day.today{background:#e7f4ff!important;outline-color:#0b67c2!important}
body.theme-night .calendar-head{background:#244b6e!important;color:#fff!important;border-color:#5a7894!important}
body.theme-night .calendar-day{background:#0d2235!important;color:#f3f7fc!important;border-color:#385873!important}
body.theme-night .calendar-day.other-month{background:#081725!important;color:#8297aa!important}
body.theme-night .calendar-day.today{background:#173b5c!important;outline-color:#82c9ff!important}
body.theme-night .calendar-day-number,body.theme-night .calendar-group-label,body.theme-night .calendar-entry{color:#f3f7fc!important}

/* Settings: all subsection tabs/cards/rows/fieldsets use explicit high contrast. */
body.theme-night .settings-layout>aside,body.theme-night .settings-module-nav,body.theme-night .settings-section-nav{
  background:#091a2b!important;color:#f3f7fc!important;border-color:#385873!important;
}
body.theme-night .settings-section-tab,body.theme-night .settings-module-link{color:#dceaf7!important;background:#0d2236!important;border-color:#385873!important}
body.theme-night .settings-section-tab:hover,body.theme-night .settings-module-link:hover{background:#1a4163!important;color:#fff!important}
body.theme-night .settings-section-tab.active,body.theme-night .settings-module-link.active{background:#2d74ad!important;color:#fff!important}
body.theme-night .settings-editable-row{background:#102a43!important;color:#f3f7fc!important;border-color:#385873!important}
body.theme-night .settings-callout{background:#173a58!important;color:#e9f5ff!important;border-color:#5b83a7!important}
body.theme-night .settings-callout.warning{background:#433718!important;color:#fff1b7!important;border-color:#9a7d35!important}
body.theme-night .settings-control-card *,body.theme-night .settings-choice *,body.theme-night .settings-editable-row *,body.theme-night .settings-editor-panel *{color:inherit}
body.theme-night .settings-options-wrap table,body.theme-night .settings-options-wrap tbody,body.theme-night .settings-options-wrap tr,body.theme-night .settings-options-wrap td{background:#0e2236!important;color:#f3f7fc!important;border-color:#385873!important}
body.theme-night .settings-options-wrap tbody tr:hover td{background:#17364f!important}
body.theme-night .settings-field-grid,body.theme-night .settings-choice-grid{color:#f3f7fc!important}

/* Tables and buttons safety net. */
body.theme-night .table-wrap{background:#0e2236!important;border-color:#385873!important}
body.theme-night table{color:#f3f7fc!important}
body.theme-night thead th{background:#1a3d5c!important;color:#fff!important;border-color:#496985!important}
body.theme-night tbody td{background:#0e2236!important;color:#f3f7fc!important;border-color:#314e68!important}
body.theme-night tbody tr:hover td{background:#17364f!important}
body.theme-night .button.ghost,body.theme-night .icon-button{background:#17344d!important;color:#f3f7fc!important;border-color:#52718c!important}
body.theme-night .button.secondary{background:#1f4a6e!important;color:#f3f7fc!important;border-color:#5f89ad!important}

/* ===== UDEMS Email & Training Center v18 ===== */
.max-width-900{max-width:900px}.mail-shell{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start}.mail-folders{position:sticky;top:86px;padding:12px}.mail-account{padding:8px 8px 14px;border-bottom:1px solid var(--line,#d9e1ea);display:grid;gap:3px}.mail-account small{color:var(--muted,#66768a);overflow:hidden;text-overflow:ellipsis}.mail-folders nav{display:grid;gap:3px;padding:8px 0}.mail-folders nav a{display:flex;gap:9px;align-items:center;padding:9px 10px;border-radius:8px;color:inherit;font-weight:650}.mail-folders nav a:hover,.mail-folders nav a.active{background:#e9f2fb;text-decoration:none;color:#0b5ea8}.mail-folder-heading{padding:12px 8px 3px;color:var(--muted,#66768a);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.compact-form{display:grid;gap:7px;padding-top:10px;border-top:1px solid var(--line,#d9e1ea)}.mail-list-panel{min-width:0}.mail-list{display:grid}.mail-row{display:grid;grid-template-columns:12px minmax(150px,220px) minmax(220px,1fr) auto;gap:10px;align-items:center;padding:12px;border-bottom:1px solid var(--line,#e2e8f0);color:inherit}.mail-row:hover{background:#f6f9fc;text-decoration:none}.mail-row.unread{font-weight:800;background:#f3f8ff}.mail-read-dot{width:8px;height:8px;border-radius:50%;background:#c4ccd5}.mail-row.unread .mail-read-dot{background:#0b67c2}.mail-sender,.mail-subject{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-row time{font-size:11px;color:var(--muted,#66768a)}.compose-panel{max-width:1100px}.compose-addresses{display:grid;gap:8px;margin-bottom:12px}.rich-toolbar{display:flex;flex-wrap:wrap;gap:4px;border:1px solid #cbd5df;border-bottom:0;border-radius:8px 8px 0 0;padding:7px;background:#f4f7fb}.rich-toolbar button{border:1px solid #cbd5df;background:#fff;border-radius:5px;padding:6px 9px}.rich-editor{min-height:320px;border:1px solid #cbd5df;border-radius:0 0 8px 8px;padding:14px;background:#fff;color:#172334;overflow:auto}.attachment-picker{margin-top:12px;padding:10px;border:1px dashed #aebdcb;border-radius:8px;display:block}.email-envelope{display:grid;gap:5px;padding-bottom:14px;border-bottom:1px solid var(--line,#d9e1ea);font-size:13px}.email-envelope strong{display:inline-block;min-width:55px}.email-attachments{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--line,#d9e1ea)}.email-body{padding:20px 4px;line-height:1.55;overflow-wrap:anywhere}.email-body table{max-width:100%}.email-message-actions{display:flex;justify-content:flex-end}.training-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.training-card{display:flex;flex-direction:column;gap:10px}.training-card h2{margin:0}.training-card p{flex:1}.training-card-top,.training-card-actions,.training-meta{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}.training-meta{font-size:11px;color:var(--muted,#66768a);justify-content:flex-start}.training-progress{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center}.training-progress>div:first-child{display:grid;gap:2px}.progress-track{height:10px;background:#e4e9ef;border-radius:999px;overflow:hidden}.progress-track span{display:block;height:100%;background:#137a4b;border-radius:999px}.training-course-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;align-items:start}.training-outline{position:sticky;top:86px;padding:12px}.training-outline h2{margin:4px 8px 10px}.training-outline a{display:flex;gap:8px;align-items:center;padding:8px;border-radius:7px;color:inherit}.training-outline a span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#e6edf4;font-size:11px;font-weight:800}.training-outline a.complete span{background:#dff3e7;color:#0b6940}.training-outline a:hover{background:#f4f8fc;text-decoration:none}.training-lesson{scroll-margin-top:90px}.training-video{width:100%;max-height:650px;background:#000;border-radius:10px;margin:10px 0}.training-pdf{width:100%;height:650px;border:1px solid #cbd5df;border-radius:10px;margin:10px 0;background:#fff}.training-notes{line-height:1.6;margin:12px 0;padding:14px;background:#f6f9fc;border-radius:8px}.quiz-stack{display:grid;gap:14px}.quiz-option{display:flex;gap:10px;align-items:center;border:1px solid #d7dfe8;padding:11px;border-radius:8px;margin:7px 0;cursor:pointer}.quiz-option input{width:auto}.quiz-option:hover{background:#f5f9fd}.sticky-form-actions{position:sticky;bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);padding:12px;border-top:1px solid #d9e1ea;display:flex;justify-content:flex-end;gap:8px;z-index:15}.training-builder-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.builder-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #e6ebf0}.builder-item>div{display:grid;gap:3px}.builder-item small{color:var(--muted,#66768a)}.danger-zone{border-color:#e8c7cc}.badge.info{background:#dfeeff;color:#14588f}
@media(max-width:900px){.mail-shell,.training-course-layout,.training-builder-grid{grid-template-columns:1fr}.mail-folders,.training-outline{position:static}.mail-row{grid-template-columns:10px minmax(90px,130px) minmax(160px,1fr)}.mail-row time{display:none}.training-pdf{height:480px}}
@media(max-width:600px){.mail-row{grid-template-columns:10px 100px minmax(120px,1fr);font-size:12px}.training-progress{grid-template-columns:1fr auto}.training-progress>div:first-child{grid-column:1/3}.rich-editor{min-height:240px}}

/* Night-mode coverage for email/training */
.theme-night .mail-folders,.theme-night .mail-list-panel,.theme-night .compose-panel,.theme-night .email-message-card,.theme-night .training-card,.theme-night .training-lesson,.theme-night .training-outline,.theme-night .training-progress,.theme-night .quiz-question,.theme-night .training-builder-grid .panel{background:#0f2238;color:#eef6ff;border-color:#31475e}.theme-night .mail-folders nav a:hover,.theme-night .mail-folders nav a.active,.theme-night .mail-row:hover,.theme-night .mail-row.unread,.theme-night .training-outline a:hover,.theme-night .training-notes,.theme-night .quiz-option:hover{background:#18334f;color:#fff}.theme-night .mail-row,.theme-night .mail-account,.theme-night .mail-folders .compact-form,.theme-night .email-envelope,.theme-night .email-attachments,.theme-night .builder-item,.theme-night .quiz-option{border-color:#31475e}.theme-night .rich-toolbar{background:#162e48;border-color:#3b526a}.theme-night .rich-toolbar button{background:#243e58;color:#fff;border-color:#49617a}.theme-night .rich-editor,.theme-night .training-pdf{background:#fff;color:#111}.theme-night .attachment-picker{border-color:#536d86}.theme-night .progress-track{background:#253d56}.theme-night .sticky-form-actions{background:rgba(10,28,47,.97);border-color:#31475e}.theme-night .training-outline a span{background:#29445f;color:#fff}.theme-night .mail-row time,.theme-night .training-meta,.theme-night .builder-item small,.theme-night .mail-account small,.theme-night .mail-folder-heading{color:#aec1d5}
.email-action-form{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.email-action-form label{min-width:220px}
.builder-item.expandable{align-items:flex-start}.builder-actions{display:flex;gap:6px;align-items:flex-start}.builder-actions details{position:relative}.builder-actions details>summary{list-style:none;cursor:pointer}.inline-builder-form{position:absolute;right:0;top:34px;width:min(460px,80vw);z-index:30;background:#fff;border:1px solid #ccd7e2;border-radius:10px;box-shadow:0 18px 50px rgba(0,0,0,.2);padding:12px;display:grid;gap:8px}.theme-night .inline-builder-form{background:#10253b;border-color:#3c566f;color:#fff}

/* ===== UDEMS Active911 integration v19 ===== */
.active911-dashboard-widget{border-top:4px solid #c92238}.active911-dashboard-widget>.panel-heading{align-items:flex-end}.active911-dashboard-widget>.panel-heading h2{font-size:22px}.active911-feed{display:grid;gap:18px}.active911-feed-status{display:flex;align-items:center;gap:8px;min-height:24px}.active911-feed-status small{margin-left:auto}.active911-section{display:grid;gap:10px}.active911-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.active911-section-heading>div{display:flex;align-items:center;gap:8px}.active911-section-heading h3{margin:0;font-size:16px}.active911-live-dot{width:10px;height:10px;border-radius:50%;background:#d52039;box-shadow:0 0 0 0 rgba(213,32,57,.55);animation:active911-pulse 2s infinite}.active911-call-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.active911-call-list.recent{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.active911-call{border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px;display:grid;align-content:start;gap:6px;min-width:0}.active911-call.active{border-left:5px solid #c92238;background:linear-gradient(120deg,#fff 0,#fff 70%,#fff3f5 100%)}.active911-call.recent{border-left:4px solid #66809b}.active911-call-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.active911-call-top time{font-size:11px;color:var(--muted);font-weight:750}.active911-call h4{font-size:16px;margin:3px 0 0}.active911-call p{font-size:13px;margin:0;line-height:1.45;overflow-wrap:anywhere}.active911-call>a{font-size:12px;font-weight:800;margin-top:5px}.active911-address{font-weight:750;color:#28425d}.active911-place{font-size:13px}.active911-details{white-space:pre-line}.active911-page-panel{padding:22px}.active911-toolbar{display:grid;grid-template-columns:minmax(230px,1fr) 190px minmax(280px,1.4fr);gap:14px;align-items:end;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.active911-privacy-note{display:grid;gap:3px;border-left:4px solid #d5a429;padding:9px 12px;background:#fff9e7;border-radius:7px}.active911-privacy-note small{line-height:1.35}.page-heading-actions{display:flex;gap:8px;flex-wrap:wrap}.active911-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.active911-mode-card{display:flex;grid-template-columns:none;align-items:flex-start;gap:10px;border:2px solid var(--line);border-radius:12px;padding:14px;cursor:pointer}.active911-mode-card:has(input:checked){border-color:var(--blue);background:#eef6ff}.active911-mode-card input{width:auto;margin-top:3px}.active911-mode-card span{display:grid;gap:4px}.active911-credential-panel{display:grid;gap:12px;padding:16px;margin-top:12px;border:1px solid var(--line);border-radius:12px;background:#f8fbff}.active911-credential-panel[hidden]{display:none}.active911-test-result{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:12px;border-radius:9px;background:#eef3f7}.active911-test-result.success{background:#e7f8ef;color:#0c6840}.active911-test-result.error{background:#fff0f2;color:#8e1726}.active911-test-panel{display:flex;align-items:center;justify-content:space-between;gap:18px}.active911-test-panel h2{margin-bottom:5px}.active911-test-panel p{margin:0}.active911-test-panel .form-actions{margin:0}.check-grid.compact{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
@keyframes active911-pulse{0%{box-shadow:0 0 0 0 rgba(213,32,57,.55)}70%{box-shadow:0 0 0 9px rgba(213,32,57,0)}100%{box-shadow:0 0 0 0 rgba(213,32,57,0)}}
.active911-dashboard-widget .active911-call-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.active911-dashboard-widget .active911-call-list.recent .active911-call:nth-child(n+5){display:none}.active911-dashboard-widget .active911-call{padding:12px}.active911-dashboard-widget .active911-call h4{font-size:14px}

/* Visual Dashboard Builder */
.home-editor-heading{align-items:center}.home-publish-status{display:grid;justify-items:end;gap:5px}.home-editor-toolbar{display:grid;grid-template-columns:minmax(300px,1fr) minmax(320px,1fr);gap:14px;align-items:stretch}.home-editor-toolbar .settings-control-card{margin:0}.home-editor-safety{display:grid;gap:3px;border-left:4px solid #d5a429;padding:12px 14px;background:#fff9e7;border-radius:8px}.home-editor-safety small{line-height:1.45}.home-builder-pro{grid-template-columns:260px minmax(460px,1fr) 340px}.home-widget-palette label{margin-bottom:12px}.home-widget-categories{display:flex;gap:5px;overflow:auto;padding-bottom:8px;margin-bottom:7px}.home-widget-categories button,.home-property-tabs button,.home-device-switcher button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:6px 9px;white-space:nowrap;font-size:10px;font-weight:800}.home-widget-categories button.active,.home-property-tabs button.active,.home-device-switcher button.active{background:var(--blue);border-color:var(--blue);color:#fff}.home-builder-pro .home-widget-buttons{grid-template-columns:1fr}.home-builder-pro .home-widget-buttons button{grid-template-columns:34px 1fr;justify-items:start;text-align:left;place-items:center start}.home-builder-pro .home-widget-buttons button span{grid-row:span 2}.home-builder-pro .home-widget-buttons button strong{font-size:11px}.home-builder-pro .home-widget-buttons button small{color:var(--muted)}.home-canvas-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.home-canvas-toolbar h2,.home-canvas-toolbar p{margin:0}.home-canvas-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.home-device-switcher{display:flex;justify-content:center;gap:6px;margin-bottom:12px}.home-canvas-viewport{margin:auto;transition:max-width .2s;width:100%}.home-canvas-viewport.device-tablet{max-width:760px}.home-canvas-viewport.device-mobile{max-width:390px}.home-canvas-viewport.device-mobile .dashboard-editor-grid{display:block}.home-canvas-viewport.device-mobile .home-editor-card{margin-bottom:8px}.home-editor-card{position:relative;display:grid;align-content:start;background:var(--editor-widget-bg,var(--panel-soft));color:var(--editor-widget-color,var(--ink));border-radius:var(--editor-widget-radius,10px);padding:var(--editor-widget-padding,12px);border-left:4px solid var(--editor-widget-accent,var(--blue));overflow:hidden}.home-editor-card.height-compact{min-height:65px}.home-editor-card.height-medium{min-height:180px}.home-editor-card.height-tall{min-height:300px}.home-editor-card-head{display:flex!important;align-items:center;gap:9px}.home-widget-type-icon{width:31px;height:31px;border-radius:7px;background:color-mix(in srgb,var(--editor-widget-accent,var(--blue)) 14%,transparent);color:var(--editor-widget-accent,var(--blue));display:grid;place-items:center;font-weight:900}.home-editor-card p{font-size:11px;color:inherit;opacity:.75;margin:9px 0 22px;overflow-wrap:anywhere}.home-card-actions{position:absolute;right:7px;bottom:7px;display:flex;gap:3px}.home-card-actions button{width:27px;height:25px}.home-empty-canvas{grid-column:1/-1;min-height:360px;display:grid;place-content:center;gap:6px}.home-property-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:13px}.home-property-tabs button{border-radius:7px;padding:7px 3px}.home-widget-properties fieldset{border:1px solid var(--line);border-radius:8px;padding:10px;margin:0}.home-widget-properties legend{font-size:11px;font-weight:850;padding:0 5px}.home-role-grid{display:grid;gap:7px}.home-role-grid label{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:7px;font-size:11px}.home-role-grid input{width:auto}.home-color-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.home-color-grid input[type=color]{height:38px;padding:3px}.home-rich-toolbar{display:flex;gap:4px;flex-wrap:wrap}.home-rich-toolbar button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:5px;padding:5px 8px}.home-rich-editor{min-height:180px;border:1px solid var(--line);border-radius:7px;padding:10px;background:var(--card);color:var(--ink);overflow:auto}.code-input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;tab-size:2}.home-publish-actions{justify-content:flex-end}.home-preview-banner{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#e7f3ff;border:1px solid #8dbcea;border-left:5px solid var(--blue);border-radius:10px;padding:12px 15px;margin-bottom:16px}.home-preview-banner div{display:grid;gap:3px}.home-preview-banner span{font-size:12px}.dashboard-custom-widget{align-self:stretch}.dashboard-custom-widget>.panel{height:100%;padding:var(--widget-padding,16px);border-radius:var(--widget-radius,10px);border-top-color:var(--widget-accent,var(--blue))}.dashboard-custom-widget.tone-custom>.panel{background:var(--widget-custom-bg);color:var(--widget-custom-text);border-top:4px solid var(--widget-accent)}.dashboard-custom-widget.tone-custom>.panel small,.dashboard-custom-widget.tone-custom>.panel .muted{color:color-mix(in srgb,var(--widget-custom-text) 70%,transparent)}.dashboard-custom-widget.valign-center>.panel{display:flex;flex-direction:column;justify-content:center}.dashboard-custom-widget.valign-end>.panel{display:flex;flex-direction:column;justify-content:flex-end}.dashboard-custom-widget.height-compact>.panel{min-height:90px}.dashboard-custom-widget.height-medium>.panel{min-height:220px}.dashboard-custom-widget.height-tall>.panel{min-height:380px}.dashboard-custom-widget.family-humanist{font-family:"Trebuchet MS","Segoe UI",sans-serif}.dashboard-custom-widget.family-serif{font-family:Georgia,"Times New Roman",serif}.dashboard-custom-widget.family-mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.dashboard-custom-widget.family-condensed{font-family:"Arial Narrow","Roboto Condensed","Segoe UI",sans-serif}.home-formatted-text{line-height:1.55}.home-formatted-text img,.home-html-widget img{max-width:100%;height:auto}.home-video-widget video{width:100%;max-height:520px;background:#071522;border-radius:8px}.home-code-widget iframe,.home-integration-widget iframe{width:100%;min-height:300px;border:1px solid var(--line);border-radius:8px;background:#fff}.home-smart-metric{display:grid;align-content:center;gap:6px;border-top:4px solid var(--widget-accent)}.home-smart-metric>span{font-size:11px;color:var(--muted);font-weight:800;text-transform:uppercase}.home-smart-metric>strong{font-size:42px}.home-report-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.home-report-summary>div{display:grid;gap:5px;padding:11px;border:1px solid var(--line);border-radius:8px}.home-report-summary span{font-size:10px;color:var(--muted);font-weight:750}.home-report-summary strong{font-size:22px}.home-integration-stats{display:grid;justify-items:center;gap:3px;padding:12px}.home-integration-stats strong{font-size:38px;color:var(--widget-accent)}.home-message-row{display:grid;grid-template-columns:auto auto 1fr;gap:8px;padding:8px 0;border-bottom:1px solid var(--line);font-size:11px}.home-message-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-email-widget{display:grid;gap:8px}.widget-readonly iframe{pointer-events:none}.widget-readonly>.panel{border-style:dashed}.theme-night .home-editor-safety{background:#413817;color:#fff2bd}.theme-night .home-preview-banner{background:#173652;color:#d9ebff}.theme-night .home-rich-editor{background:#15263a}.theme-night .home-code-widget iframe,.theme-night .home-integration-widget iframe{background:#fff}
@media(max-width:1280px){.home-builder-pro{grid-template-columns:220px minmax(420px,1fr) 310px}.home-editor-toolbar{grid-template-columns:1fr}.home-report-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1050px){.home-builder-pro{grid-template-columns:1fr}.home-builder-pro .home-widget-buttons{grid-template-columns:repeat(3,1fr)}.home-widget-palette,.home-widget-properties{position:static;max-height:none}.home-widget-palette{order:1}.home-widget-canvas{order:2}.home-widget-properties{order:3}}
@media(max-width:760px){.home-builder-pro .home-widget-buttons{grid-template-columns:repeat(2,1fr)}.home-canvas-toolbar,.home-preview-banner{align-items:flex-start;flex-direction:column}.home-publish-actions{position:static}.home-publish-actions .button{width:100%}.home-report-summary{grid-template-columns:1fr 1fr}.home-message-row{grid-template-columns:1fr}.home-color-grid{grid-template-columns:1fr 1fr 1fr}}
body.theme-night .active911-call,body.theme-night .active911-credential-panel,body.theme-night .active911-mode-card,body.theme-night .active911-test-result{background:#10283f!important;color:#f3f7fc!important;border-color:#385873!important}body.theme-night .active911-call.active{background:linear-gradient(120deg,#10283f 0,#10283f 70%,#421d2a 100%)!important;border-left-color:#ff8798!important}body.theme-night .active911-call.recent{border-left-color:#8fb1d1!important}body.theme-night .active911-address,body.theme-night .active911-call-top time{color:#d7e7f5!important}body.theme-night .active911-mode-card:has(input:checked){background:#183c5d!important;border-color:#73bcff!important}body.theme-night .active911-privacy-note{background:#443819!important;color:#fff1b7!important;border-color:#f0c85d!important}body.theme-night .active911-test-result.success{background:#123d2c!important;color:#dff9eb!important}body.theme-night .active911-test-result.error{background:#4b1f2b!important;color:#ffe4e8!important}
@media(max-width:900px){.active911-toolbar{grid-template-columns:1fr 1fr}.active911-privacy-note{grid-column:1/3}.active911-mode-grid{grid-template-columns:1fr}.active911-test-panel{align-items:stretch;flex-direction:column}.active911-test-panel .form-actions{justify-content:flex-start}}
@media(max-width:600px){.active911-toolbar{grid-template-columns:1fr}.active911-privacy-note{grid-column:auto}.active911-call-list,.active911-call-list.recent{grid-template-columns:1fr}.active911-feed-status{align-items:flex-start;flex-wrap:wrap}.active911-feed-status small{width:100%;margin-left:0}.active911-test-result{grid-template-columns:minmax(0,1fr)}.active911-test-result>*{min-width:0;overflow-wrap:anywhere}.active911-credential-panel>*{min-width:0;max-width:100%}.active911-credential-panel code{display:block;max-width:100%;overflow-wrap:anywhere;word-break:break-word;white-space:normal}.page-heading-actions{width:100%}.page-heading-actions .button{flex:1}}

/* ===== UDEMS Training Builder & Assessment v20 ===== */
.builder-step-nav{position:sticky;top:65px;z-index:20;display:flex;gap:6px;overflow-x:auto;margin:0 0 16px;padding:8px;background:rgba(247,250,253,.96);backdrop-filter:blur(9px);border:1px solid var(--line);border-radius:12px}.builder-step-nav a{flex:1;min-width:max-content;padding:8px 12px;text-align:center;border-radius:8px;font-size:12px;font-weight:800;color:#284866}.builder-step-nav a:hover{background:#e8f2fb;text-decoration:none}.builder-list{display:grid;margin-bottom:18px}.builder-item-main{min-width:0}.builder-item-main strong,.builder-item-main small{overflow-wrap:anywhere}.builder-add{border:1px dashed #9db2c5;border-radius:12px;background:#f8fbfd}.builder-add>summary{cursor:pointer;padding:13px 16px;list-style:none}.builder-add>summary::-webkit-details-marker{display:none}.builder-add>.form-grid{padding:0 16px 16px}.inline-builder-form{width:min(720px,88vw);grid-template-columns:repeat(2,minmax(0,1fr));max-height:min(72vh,760px);overflow:auto}.inline-builder-form .span-2{grid-column:span 2}.training-question-form [hidden]{display:none!important}.certificate-settings-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px;align-items:start}.readiness-card{padding:18px;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.readiness-card h3{margin-top:0}.readiness-card ul{list-style:none;padding:0;display:grid;gap:9px}.readiness-card .button{width:100%}.poll-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}.poll-summary{display:grid;gap:9px;padding:14px;border:1px solid var(--line);border-radius:11px}.poll-summary>small{color:var(--muted)}.poll-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(100px,2fr) 28px;gap:8px;align-items:center;font-size:12px}.poll-row .progress-track i{display:block;height:100%;background:#0b67c2;border-radius:999px}.course-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.course-meta span{font-size:11px;font-weight:750;padding:5px 9px;border-radius:999px;background:#e8f0f7;color:#34526e}.training-course-content{min-width:0}.training-introduction{border-left:4px solid #0b67c2}.training-section-heading{scroll-margin-top:100px;margin:24px 0 10px;padding:16px 18px;border-radius:12px;background:linear-gradient(120deg,#092e52,#0b67a8);color:#fff}.training-section-heading span{font-size:11px;text-transform:uppercase;letter-spacing:.08em}.training-section-heading h2,.training-section-heading p{color:#fff;margin:4px 0}.training-outline a.section-link{font-weight:850;color:#0b5d9f}.training-image{margin:12px 0;text-align:center}.training-image img{max-width:100%;max-height:720px;border-radius:10px;object-fit:contain}.training-image figcaption{padding:7px;color:var(--muted);font-size:12px}.training-embed{position:relative;width:100%;padding-top:56.25%;margin:12px 0;border-radius:10px;overflow:hidden;background:#000}.training-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.training-audio{width:100%;margin:14px 0}.attempt-history{display:grid;gap:6px;margin-top:18px;border-top:1px solid var(--line);padding-top:12px}.attempt-history a{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:9px;border-radius:8px;color:inherit}.attempt-history a:hover{background:#f1f6fa;text-decoration:none}.question-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.question-heading h2{margin-top:4px}.assessment-result-hero{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:center;border-left:7px solid #a33}.assessment-result-hero.passed{border-left-color:#158452}.assessment-result-hero.failed{border-left-color:#c23444}.result-score{display:grid;justify-items:center;padding:20px;border-radius:12px;background:#edf3f8}.result-score strong{font-size:48px;line-height:1}.result-score span{margin-top:7px;font-size:11px;color:var(--muted);text-align:center}.certificate-issued-card{display:flex;justify-content:space-between;align-items:center;gap:24px;border:2px solid #c39b30;background:linear-gradient(120deg,#fffdf6,#f7fbff)}.answer-review-list{display:grid;gap:12px}.answer-review{padding:15px;border:1px solid var(--line);border-left:5px solid #6d8193;border-radius:10px}.answer-review.correct{border-left-color:#16834f;background:#f4fbf7}.answer-review.incorrect{border-left-color:#c43446;background:#fff7f8}.answer-review.poll{border-left-color:#3478b5;background:#f5faff}.answer-review-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.answer-review p{margin:8px 0}.answer-explanation{padding:10px;border-radius:8px;background:rgba(70,120,160,.08)}
body.theme-night .builder-step-nav,body.theme-night .builder-add,body.theme-night .readiness-card,body.theme-night .poll-summary,body.theme-night .result-score,body.theme-night .certificate-issued-card,body.theme-night .answer-review{background:#10283f!important;color:#f3f7fc!important;border-color:#385873!important}body.theme-night .builder-step-nav a{color:#dceaf7}body.theme-night .builder-step-nav a:hover,body.theme-night .attempt-history a:hover{background:#1a4163!important}body.theme-night .course-meta span{background:#1c3d59;color:#e3f1fe}body.theme-night .answer-review.correct{background:#123d2c!important;border-left-color:#69d29b!important}body.theme-night .answer-review.incorrect{background:#4b1f2b!important;border-left-color:#ff8798!important}body.theme-night .answer-review.poll{background:#173a58!important;border-left-color:#73bcff!important}body.theme-night .training-section-heading{background:linear-gradient(120deg,#143a5b,#195f92)}
@media(max-width:900px){.certificate-settings-grid{grid-template-columns:1fr}.builder-step-nav{top:56px}.assessment-result-hero{grid-template-columns:1fr}.result-score{justify-self:stretch}.certificate-issued-card{align-items:stretch;flex-direction:column}.certificate-issued-card .button{align-self:flex-start}}
@media(max-width:600px){.inline-builder-form{position:fixed;inset:70px 10px auto;width:auto;max-height:calc(100vh - 90px);grid-template-columns:1fr}.inline-builder-form .span-2{grid-column:auto}.builder-item{align-items:flex-start;flex-direction:column}.builder-actions{width:100%;justify-content:flex-end}.question-heading,.answer-review-head{flex-direction:column}.attempt-history a{grid-template-columns:1fr auto}.attempt-history a .badge{grid-column:1/3}.poll-summary-grid{grid-template-columns:1fr}}

/* ===== UDEMS Time Clock exports & paycheck estimate v26 ===== */
.timeclock-actions{justify-content:flex-end;align-items:center;flex-wrap:wrap}.paycheck-estimate{margin:0 0 18px;padding:18px;border:1px solid #98b7d3;border-left:6px solid #0b67a8;border-radius:12px;background:linear-gradient(120deg,#f3f9ff,#fff)}.paycheck-estimate[hidden]{display:none}.paycheck-estimate-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px}.paycheck-estimate-heading h3{margin:2px 0}.paycheck-estimate-heading p{margin:4px 0}.paycheck-total{display:grid;justify-items:end;min-width:210px}.paycheck-total span,.paycheck-total small{font-size:11px;color:var(--muted);font-weight:750}.paycheck-total strong{font-size:34px;color:#0b7547}.paycheck-breakdown{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:8px}.paycheck-breakdown>div{display:grid;gap:4px;padding:10px;border:1px solid #d4e0eb;border-radius:8px;background:#fff}.paycheck-breakdown span{font-size:11px;color:var(--muted);font-weight:750}.paycheck-breakdown strong{font-size:15px}.paycheck-breakdown .total{background:#edf5fb;border-color:#9abbd7}.estimate-disclaimer{margin:14px 0 0;padding-top:12px;border-top:1px solid #cddde9;font-size:11px;line-height:1.5;color:#445a70}.theme-night .paycheck-estimate{background:linear-gradient(120deg,#102d46,#10243a)!important;color:#f3f7fc!important;border-color:#4c779b!important}.theme-night .paycheck-breakdown>div{background:#0d2236!important;color:#f3f7fc!important;border-color:#385873!important}.theme-night .paycheck-breakdown .total{background:#173a58!important}.theme-night .paycheck-total strong{color:#79e0ac}.theme-night .estimate-disclaimer{color:#c7d9e8;border-color:#385873}
@media(max-width:1000px){.paycheck-breakdown{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.timeclock-actions{justify-content:flex-start}.timeclock-actions .button{width:100%}.paycheck-estimate-heading{flex-direction:column}.paycheck-total{justify-items:start}.paycheck-breakdown{grid-template-columns:1fr}}

/* V95 time-type controls and payroll-grid export filters. */
.clock-in-form .clock-time-type{display:grid;gap:4px;min-width:180px;font-size:11px;font-weight:800;color:inherit}.clock-in-form .clock-time-type select{min-width:180px}.payroll-grid-export-menu{position:relative}.payroll-grid-export-menu>summary{list-style:none;cursor:pointer}.payroll-grid-export-menu>summary::-webkit-details-marker{display:none}.payroll-grid-export-menu[open]>summary{box-shadow:0 0 0 3px rgba(11,103,168,.16)}.payroll-grid-export-menu>form{position:absolute;right:0;z-index:25;display:grid;gap:9px;width:min(330px,calc(100vw - 36px));margin-top:7px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--card);box-shadow:0 14px 34px rgba(10,30,48,.2);text-align:left}.payroll-grid-export-menu label,.payroll-grid-type-filter label{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700}.payroll-grid-export-menu input[type="checkbox"],.payroll-grid-type-filter input[type="checkbox"]{width:auto;margin:0}.payroll-grid-export-menu small,.payroll-grid-type-filter small{color:var(--muted);line-height:1.4}.payroll-grid-type-filter{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:7px;margin:0;padding:10px;border:1px solid var(--line);border-radius:9px}.payroll-grid-type-filter legend{padding:0 5px;font-size:12px;font-weight:850}.payroll-grid-type-filter small{grid-column:1/-1}.theme-night .payroll-grid-export-menu>form{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}@media(max-width:650px){.clock-in-form .clock-time-type,.clock-in-form .clock-time-type select{width:100%;min-width:0}.payroll-grid-export-menu{width:100%}.payroll-grid-export-menu>summary{width:100%}.payroll-grid-export-menu>form{position:static;width:100%;box-sizing:border-box}.payroll-grid-type-filter{grid-template-columns:1fr}}
.stats-grid.dashboard-clock-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.dashboard-clock-in-form{display:grid;gap:7px;margin-top:2px}.dashboard-clock-in-form label{display:grid;gap:3px;min-width:0;font-size:11px;font-weight:800;color:var(--muted)}.dashboard-clock-in-form select,.dashboard-clock-in-form input{box-sizing:border-box;width:100%;min-width:0;padding:7px 9px;font-size:12px}.dashboard-clock-in-form .button,.dashboard-clock-out-form .button{justify-self:start;margin-top:2px}.dashboard-clock-active-note{display:block;max-width:100%;padding:6px 8px;border-radius:7px;background:var(--soft);color:var(--ink);overflow-wrap:anywhere}.dashboard-custom-clock-widget{display:grid;gap:8px}.dashboard-custom-clock-widget h2{margin-bottom:2px}.dashboard-custom-clock-widget>a.button{justify-self:start}@media(max-width:520px){.stats-grid.dashboard-clock-summary-grid{grid-template-columns:1fr}}
.stats-grid.dashboard-clock-summary-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(330px,1.25fr);gap:14px;container-type:inline-size}.dashboard-clock-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%;min-width:0}.dashboard-clock-summary-grid>.stat-card,.dashboard-clock-metrics>.stat-card{height:100%;min-width:0}.dashboard-clock-action-card{display:grid;align-content:center;gap:5px}.dashboard-clock-summary-grid .dashboard-clock-in-form{grid-template-columns:minmax(118px,.8fr) minmax(145px,1.2fr) auto;align-items:end}.dashboard-clock-summary-grid .dashboard-clock-in-form .button{min-height:34px;white-space:nowrap}@media(max-width:1000px){.stats-grid.dashboard-clock-summary-grid{grid-template-columns:1fr}.dashboard-clock-summary-grid>.stat-card{height:auto}}@container (max-width:760px){.dashboard-clock-summary-grid .dashboard-clock-in-form{grid-template-columns:minmax(120px,.8fr) minmax(150px,1.2fr) auto}}@container (max-width:500px){.dashboard-clock-metrics{grid-template-columns:1fr}.dashboard-clock-summary-grid .dashboard-clock-in-form{grid-template-columns:1fr}.dashboard-clock-summary-grid .dashboard-clock-in-form .button{width:100%;justify-content:center}}.kiosk-setup-code-panel{max-width:760px}.kiosk-setup-code{display:inline-block;margin:8px 0 16px;padding:12px 18px;border:2px dashed var(--blue);border-radius:10px;background:var(--soft);font:900 28px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.18em}.kiosk-settings-layout{align-items:start}.kiosk-device-create{padding-bottom:16px;border-bottom:1px solid var(--line)}.kiosk-device-list,.kiosk-pin-list{display:grid;gap:10px;margin-top:16px}.kiosk-device-card{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.kiosk-device-card>div:first-child{display:grid;grid-template-columns:auto auto;gap:4px 8px;align-items:center}.kiosk-device-card small{grid-column:1/-1;color:var(--muted)}.kiosk-pin-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid var(--line)}@media(max-width:720px){.kiosk-device-card{align-items:stretch;flex-direction:column}.kiosk-pin-list>div{grid-template-columns:minmax(0,1fr) auto}.kiosk-pin-list form{grid-column:1/-1}}

/* Dedicated private personnel payroll data and completed-form records */
.payroll-security-notice{margin-bottom:16px}.payroll-readiness-panel{border-left:6px solid #0b67a8}.payroll-data-form{display:grid;gap:16px}.payroll-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.payroll-document-card{display:grid;align-content:start;gap:12px;padding:15px;border:1px solid var(--line);border-radius:11px;background:var(--card)}.payroll-document-card.required{border-top:4px solid #b88400}.payroll-document-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.payroll-document-heading h3{margin:7px 0 0}.payroll-document-heading a{font-size:11px;font-weight:800}.payroll-file-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.payroll-file-row>div{display:grid;gap:3px;min-width:0}.payroll-file-row a{overflow-wrap:anywhere;font-weight:800}.payroll-file-row small{color:var(--muted)}.payroll-file-row form{margin:0}.theme-night .payroll-document-card{background:#0d2236!important;border-color:#385873!important}.theme-night .payroll-file-row{background:#102a43!important;border-color:#385873!important}
@media(max-width:800px){.payroll-document-grid{grid-template-columns:1fr}.payroll-document-heading,.payroll-file-row{align-items:stretch;flex-direction:column}}

/* NJ earned sick leave personnel ledger */
.pto-profile-panel{border-left:6px solid #16834f}.pto-status-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;margin:14px 0}.pto-status-card{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--card)}.pto-status-card span{font-size:11px;color:var(--muted);font-weight:750}.pto-status-card strong{font-size:22px;color:#126a41}.pto-progress{height:12px;margin:12px 0 5px;overflow:hidden;border-radius:999px;background:#dce6ee}.pto-progress span{display:block;height:100%;max-width:100%;border-radius:999px;background:linear-gradient(90deg,#16834f,#52b779)}.pto-reconciliation-warning{margin:12px 0;padding:11px 13px;border:1px solid #d8ae45;border-left:5px solid #b67d00;border-radius:8px;background:#fff8df;color:#604600}.pto-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.pto-admin-grid .span-2{grid-column:span 2}.theme-night .pto-status-card{background:#0d2236!important;border-color:#385873!important}.theme-night .pto-status-card strong{color:#79e0ac}.theme-night .pto-progress{background:#28445d}.theme-night .pto-reconciliation-warning{background:#433718!important;color:#fff1b7!important;border-color:#9a7d35!important}
@media(max-width:900px){.pto-status-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.pto-status-grid,.pto-admin-grid{grid-template-columns:1fr}.pto-admin-grid .span-2{grid-column:auto}}

/* ===== v31 App Setup, aligned navigation and account preferences ===== */
.module-nav>[data-nav-id],.module-nav>.nav-heading{order:var(--nav-order,500)}
body:not(.nav-top) .sidebar{width:100%;min-width:0;box-sizing:border-box;align-self:start}
body:not(.nav-top) .module-nav{display:flex!important;flex-direction:column;align-items:stretch;width:100%;gap:5px}
body:not(.nav-top) .nav-module,body:not(.nav-top) .nav-single,body:not(.nav-top) .nav-module-row{width:100%;min-width:0;box-sizing:border-box}
body:not(.nav-top) .nav-module-row>a,body:not(.nav-top) .nav-single{min-width:0;width:100%;box-sizing:border-box}
body:not(.nav-top) .nav-module-row>a span,body:not(.nav-top) .nav-single span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body:not(.nav-top) .sidebar-branding{width:100%;box-sizing:border-box;margin:0 0 10px}
body:not(.nav-top) .sidebar-branding img{width:96px;height:96px}
body.nav-right:not(.nav-top) .sidebar{border-left:1px solid #24496d}
body.nav-right:not(.nav-top) .nav-module-row{grid-template-columns:32px minmax(0,1fr)}
body.nav-right:not(.nav-top) .nav-module-row>a{grid-column:2;grid-row:1}
body.nav-right:not(.nav-top) .nav-module-row>button{grid-column:1;grid-row:1;transform:rotate(180deg)}
body.nav-right:not(.nav-top) .nav-module.submenu-open>.nav-module-row>button{transform:rotate(90deg)}
body.nav-top .module-nav>[data-nav-id],body.nav-top .module-nav>.nav-heading{order:var(--nav-order,500)}

/* True device-layout modes. */
body.device-desktop .content{max-width:none}
body.device-tablet .app-shell{grid-template-columns:210px minmax(0,1fr)}
body.device-tablet.nav-right .app-shell{grid-template-columns:minmax(0,1fr) 210px}
body.device-tablet .content{width:100%;max-width:1100px;margin:0 auto;padding-left:20px;padding-right:20px}
body.device-tablet .dashboard-grid,body.device-tablet .settings-grid,body.device-tablet .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
body.device-mobile .menu-button{display:block!important}
body.device-mobile .app-shell{display:block!important}
body.device-mobile .sidebar{position:fixed!important;left:0!important;right:auto!important;top:70px!important;width:min(310px,90vw)!important;height:calc(100vh - 70px)!important;z-index:180!important;display:flex!important;flex-direction:column!important;padding:18px 12px!important;transform:translateX(-110%);transition:transform .2s!important;overflow:auto!important}
body.device-mobile.nav-right .sidebar{left:auto!important;right:0!important;transform:translateX(110%)}
body.device-mobile .sidebar.open{transform:translateX(0)!important}
body.device-mobile .module-nav{display:flex!important;flex-direction:column!important;min-width:0!important;width:100%!important}
body.device-mobile .sidebar-branding,body.device-mobile .sidebar-footer{display:flex!important}
body.device-mobile .content{width:100%;max-width:760px;margin:0 auto;padding:16px 14px}
body.device-mobile .topbar-datetime{display:none}
body.device-mobile .dashboard-grid,body.device-mobile .stats-grid,body.device-mobile .detail-grid,body.device-mobile .settings-grid,body.device-mobile .two-column,body.device-mobile .form-card-grid,body.device-mobile .form-grid{grid-template-columns:1fr!important}
body.device-mobile .span-2,body.device-mobile .span-3,body.device-mobile .form-grid .span-2,body.device-mobile .form-grid .span-3{grid-column:auto!important}
body.device-mobile .table-wrap{overflow-x:auto}
body.device-mobile .page-heading{align-items:stretch;flex-direction:column}
body.device-mobile .button{min-height:44px}
body.device-mobile input,body.device-mobile select,body.device-mobile textarea{font-size:16px;min-height:44px}

/* Density and text preferences. */
body.font-scale-small{font-size:14px}body.font-scale-normal{font-size:15px}body.font-scale-large{font-size:17px}
body.density-compact .content{padding-top:18px;padding-bottom:18px}body.density-compact .panel{padding:14px}body.density-compact td,body.density-compact th{padding:7px 8px}body.density-compact .nav-module-row>a,body.density-compact .nav-single{padding-top:8px!important;padding-bottom:8px!important}
body.density-spacious .content{padding-top:34px;padding-bottom:34px}body.density-spacious .panel{padding:24px}body.density-spacious td,body.density-spacious th{padding:14px 13px}body.density-spacious .nav-module-row>a,body.density-spacious .nav-single{padding-top:14px!important;padding-bottom:14px!important}
body.reduce-motion *,body.reduce-motion *::before,body.reduce-motion *::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}

/* Day and night palette variants. */
body.theme-day.day-palette-light_gray{--bg:#eef1f4;--card:#fff;--ink:#202a33;--muted:#63717d;--line:#d2d8de;--blue:#526d84;--navy:#3d4853;--navy-2:#53616d;--soft:#f4f6f8;--input-bg:#fff;--panel-soft:#f5f6f8;--shadow:0 8px 22px rgba(38,48,58,.09)}
body.theme-day.day-palette-coastal{--bg:#edf8f7;--card:#fff;--ink:#17343a;--muted:#587279;--line:#cde2df;--blue:#087b77;--navy:#073d45;--navy-2:#0b5660;--soft:#e5f3f1}
body.theme-day.day-palette-warm{--bg:#f9f3e6;--card:#fffdf8;--ink:#352d22;--muted:#786b58;--line:#e5d7bc;--blue:#9a6417;--navy:#48351d;--navy-2:#624824;--soft:#f5ead2}
body.theme-day.day-palette-high_contrast{--bg:#fff;--card:#fff;--ink:#000;--muted:#303030;--line:#667;--blue:#003d78;--navy:#001d39;--navy-2:#003d78;--soft:#eef5ff}
body.theme-day.day-palette-light_gray .topbar,body.theme-day.day-palette-light_gray .sidebar{background:#3d4853}body.theme-day.day-palette-light_gray .content,body.theme-day.day-palette-light_gray .public-content{background:#eef1f4;color:#202a33}body.theme-day.day-palette-light_gray .panel,body.theme-day.day-palette-light_gray .stat-card,body.theme-day.day-palette-light_gray .form-card,body.theme-day.day-palette-light_gray .filter-bar{background:#fff;border-color:#d2d8de}body.theme-day.day-palette-light_gray .button.secondary{background:#e8ecef;color:#394b5a;border-color:#cbd3da}body.theme-day.day-palette-light_gray .button.ghost{background:#fff;color:#202a33;border-color:#cbd3da}body.theme-day.day-palette-light_gray .eyebrow{color:#526d84!important}
body.theme-day.day-palette-coastal .topbar,body.theme-day.day-palette-coastal .sidebar{background:#073d45}body.theme-day.day-palette-warm .topbar,body.theme-day.day-palette-warm .sidebar{background:#48351d}body.theme-day.day-palette-high_contrast .topbar,body.theme-day.day-palette-high_contrast .sidebar{background:#001d39}
body.theme-night.night-palette-charcoal{--bg:#121417;--card:#1d2126;--ink:#f2f4f6;--muted:#b4bbc3;--line:#414850;--blue:#8eb3d5;--navy:#08090b;--navy-2:#20252b;--panel-soft:#252a30}
body.theme-night.night-palette-midnight{--bg:#020611;--card:#0b1023;--ink:#eef0ff;--muted:#a8acd0;--line:#2d3769;--blue:#7771ff;--navy:#00020a;--navy-2:#11184a;--panel-soft:#11183a}
body.theme-night.night-palette-high_contrast{--bg:#000;--card:#090909;--ink:#fff;--muted:#d8d8d8;--line:#777;--blue:#65c4ff;--navy:#000;--navy-2:#111;--panel-soft:#181818}
body.theme-night.night-palette-charcoal .content,body.theme-night.night-palette-charcoal .public-content,body.theme-night.night-palette-midnight .content,body.theme-night.night-palette-midnight .public-content,body.theme-night.night-palette-high_contrast .content,body.theme-night.night-palette-high_contrast .public-content{background:var(--bg)!important;color:var(--ink)!important}
body.theme-night.night-palette-charcoal .panel,body.theme-night.night-palette-charcoal .stat-card,body.theme-night.night-palette-midnight .panel,body.theme-night.night-palette-midnight .stat-card,body.theme-night.night-palette-high_contrast .panel,body.theme-night.night-palette-high_contrast .stat-card{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}
body.theme-night.night-palette-charcoal .topbar,body.theme-night.night-palette-charcoal .sidebar,body.theme-night.night-palette-midnight .topbar,body.theme-night.night-palette-midnight .sidebar,body.theme-night.night-palette-high_contrast .topbar,body.theme-night.night-palette-high_contrast .sidebar{background:var(--navy)!important}

/* Personalized dashboard: published access remains authoritative, users control order/visibility. */
.dashboard-user-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:8px;gap:16px;align-items:start}
.dashboard-user-layout>.dashboard-grid,.dashboard-user-layout>.custom-dashboard-layout{display:contents}
.dashboard-user-layout .user-dashboard-widget{order:var(--user-widget-order,100);min-width:0;align-self:start}
.dashboard-user-layout .dashboard-span-all,.dashboard-user-layout [data-dashboard-widget-id="certifications"]{grid-column:1/-1}
.dashboard-user-layout [data-dashboard-widget-id="announcements"],.dashboard-user-layout [data-dashboard-widget-id="upcoming_schedule"]{grid-column:span 8}
.dashboard-user-layout [data-dashboard-widget-id="resources"],.dashboard-user-layout [data-dashboard-widget-id="officers"]{grid-column:span 4}
.dashboard-user-layout .user-dashboard-widget[data-dashboard-size]{grid-column:span var(--user-widget-columns,12)!important}
body.dashboard-columns-1 .dashboard-user-layout .user-dashboard-widget{grid-column:1/-1!important}
body.dashboard-columns-2 .dashboard-user-layout .user-dashboard-widget:not(.dashboard-span-all){grid-column:span 6!important}
body.dashboard-columns-3 .dashboard-user-layout .user-dashboard-widget:not(.dashboard-span-all){grid-column:span 4!important}
body.device-tablet .dashboard-user-layout .user-dashboard-widget:not(.dashboard-span-all){grid-column:span 6!important}
body.device-mobile .dashboard-user-layout .user-dashboard-widget{grid-column:1/-1!important}

/* App Setup & Preferences controls. */
.preferences-pro{padding-bottom:95px}.preferences-heading{align-items:center}.preference-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;border-left:6px solid var(--blue)}.preference-intro p{margin:4px 0 0;color:var(--muted)}.preference-section{scroll-margin-top:90px}.preference-section>.panel-heading{margin-bottom:15px}.design-choice-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.auto-preview{background:linear-gradient(135deg,#e9f4ff 0 50%,#132b44 50%);color:#102a43}.auto-preview span{background:rgba(255,255,255,.82);border-radius:5px;padding:3px;color:#263f58}.preference-subgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.preference-subgrid fieldset{border:1px solid var(--line);border-radius:11px;padding:13px;margin:0}.preference-subgrid legend{font-size:12px;font-weight:850;padding:0 6px}.theme-swatch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.theme-swatch{display:grid;grid-template-columns:auto 36px 1fr;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px;cursor:pointer}.theme-swatch input{width:auto}.theme-swatch>span{width:36px;height:26px;border-radius:6px;background:var(--swatch);border:1px solid rgba(0,0,0,.18)}.theme-swatch strong{font-size:11px}.theme-swatch:has(input:checked){border-color:var(--blue);box-shadow:0 0 0 2px color-mix(in srgb,var(--blue) 25%,transparent)}.preference-sort-shell{display:grid;grid-template-columns:230px 1fr;gap:16px;align-items:start;margin-top:18px}.preference-sort-list{display:grid;gap:7px}.preference-sort-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--card)}.preference-sort-row.dragging{opacity:.45;border-style:dashed}.sort-grip{cursor:grab;color:var(--muted);font-weight:900;text-align:center}.sort-actions{display:flex;gap:4px}.sort-actions .icon-button{width:32px;height:30px;padding:0}.widget-preference-row{grid-template-columns:28px minmax(0,1fr) auto}.widget-visibility{display:grid!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px;margin:0}.widget-visibility input{width:auto}.widget-visibility span{display:grid;gap:2px}.widget-visibility small{color:var(--muted)}.preference-inline-select{display:grid;grid-template-columns:minmax(160px,260px);gap:5px;margin-top:16px}.segmented-preference{display:flex;gap:5px}.segmented-preference label{flex:1;position:relative}.segmented-preference input{position:absolute;opacity:0}.segmented-preference span{display:block;text-align:center;border:1px solid var(--line);border-radius:8px;padding:9px;cursor:pointer;font-size:11px;font-weight:800}.segmented-preference input:checked+span{background:var(--blue);border-color:var(--blue);color:#fff}.preference-save-bar{z-index:150}.theme-night .preference-sort-row,.theme-night .theme-swatch{background:var(--card);border-color:var(--line)}
@media(max-width:1050px){.design-choice-grid.four{grid-template-columns:repeat(2,1fr)}.preference-sort-shell{grid-template-columns:1fr}}
@media(max-width:760px){.preference-subgrid,.theme-swatch-grid,.design-choice-grid.four{grid-template-columns:1fr}.preference-intro{align-items:stretch;flex-direction:column}.preference-sort-row,.widget-preference-row{grid-template-columns:24px minmax(0,1fr)}.sort-actions{grid-column:2;justify-content:flex-end}.preference-save-bar{position:static}.preferences-pro{padding-bottom:0}}
.inventory-widget-grid a{background:var(--soft,var(--bg))}

/* Aladtec PDF import and dashboard news posts */
.aladtec-import-panel,.aladtec-review-panel{margin-bottom:18px}.aladtec-import-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.aladtec-import-stats>div{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--soft);display:grid;gap:4px}.aladtec-import-stats span{color:var(--muted);font-size:.82rem}.aladtec-import-stats strong{font-size:1.7rem}.aladtec-preview-table{max-height:520px}.aladtec-commit-form{display:grid;gap:14px;margin-top:16px}.dashboard-post-manager{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px}.dashboard-post-toolbar,.home-rich-toolbar{display:flex;gap:6px;padding:8px;border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0;background:var(--soft)}.dashboard-post-toolbar button{min-width:34px;border:1px solid var(--line);background:var(--card);border-radius:5px;padding:5px 8px}.dashboard-post-rich{min-height:190px;padding:14px;border:1px solid var(--line);border-radius:0 0 8px 8px;background:var(--card);overflow:auto}.dashboard-post-admin-list{display:grid;gap:12px}.dashboard-post-admin-list>article{padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.dashboard-post-admin-list h3{margin:8px 0}.dashboard-news-feed{display:grid;gap:16px}.dashboard-news-post{padding:18px;border:1px solid var(--line);border-left:4px solid var(--widget-accent,#1559a5);border-radius:10px;background:var(--card)}.dashboard-news-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.82rem}.dashboard-news-post h3{margin:10px 0}.dashboard-news-body{line-height:1.6}.dashboard-news-body img,.dashboard-news-post>img,.dashboard-news-post>video{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:10px;margin:14px 0;background:#08111c}.dashboard-news-body table{width:100%;border-collapse:collapse}.dashboard-news-body th,.dashboard-news-body td{border:1px solid var(--line);padding:7px}@media(max-width:900px){.dashboard-post-manager{grid-template-columns:1fr}.aladtec-import-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.aladtec-import-stats{grid-template-columns:1fr}}

/* v41 viewport-safe windows: title and action controls stay visible. */
.app-dialog,.assignment-conflict-dialog,.overtime-warning-dialog,.time-off-dialog{box-sizing:border-box;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);margin:auto;overscroll-behavior:contain}
.app-dialog[open],.assignment-conflict-dialog[open],.overtime-warning-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;padding:0}
.app-dialog>.dialog-head,.assignment-conflict-dialog>.dialog-heading,.overtime-warning-dialog>.dialog-heading,.viewport-dialog-layout>.dialog-heading{position:relative;z-index:2;flex:0 0 auto;margin:0;padding:14px 18px;border-bottom:1px solid var(--line);background:var(--card,#fff)}
.app-dialog>.dialog-body,.assignment-conflict-dialog>.dialog-scroll-body,.overtime-warning-dialog>.dialog-scroll-body,.viewport-dialog-layout>.dialog-scroll-body{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:18px}
.app-dialog>.dialog-actions,.viewport-dialog-actions{position:relative;z-index:2;flex:0 0 auto;min-height:60px;margin:0;padding:12px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--card,#fff)}
.viewport-dialog-layout{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:100%;max-height:inherit;overflow:hidden;padding:0!important}
.dialog-close,.app-dialog .close{display:grid;flex:0 0 44px;width:44px;height:44px;min-width:44px;padding:0;place-items:center;border-radius:50%;cursor:pointer;line-height:1}
.dialog-close:hover,.dialog-close:focus-visible,.app-dialog .close:hover,.app-dialog .close:focus-visible{background:var(--soft,#eef3f7);outline:2px solid var(--blue);outline-offset:1px}
.dialog-heading>div,.dialog-head>div{min-width:0}.dialog-heading h2,.dialog-head h2{overflow-wrap:anywhere}
body.theme-night .app-dialog>.dialog-head,body.theme-night .assignment-conflict-dialog>.dialog-heading,body.theme-night .overtime-warning-dialog>.dialog-heading,body.theme-night .viewport-dialog-layout>.dialog-heading,body.theme-night .app-dialog>.dialog-actions,body.theme-night .viewport-dialog-actions{background:var(--card)!important;border-color:var(--line)!important}
@media(max-width:620px), (max-height:560px){.app-dialog,.assignment-conflict-dialog,.overtime-warning-dialog,.time-off-dialog{width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px);max-height:calc(100vh - 12px);max-height:calc(100dvh - 12px);border-radius:10px}.app-dialog>.dialog-head,.assignment-conflict-dialog>.dialog-heading,.overtime-warning-dialog>.dialog-heading,.viewport-dialog-layout>.dialog-heading{padding:9px 11px}.app-dialog>.dialog-body,.assignment-conflict-dialog>.dialog-scroll-body,.overtime-warning-dialog>.dialog-scroll-body,.viewport-dialog-layout>.dialog-scroll-body{padding:11px}.app-dialog>.dialog-actions,.viewport-dialog-actions{min-height:54px;padding:9px 11px calc(9px + env(safe-area-inset-bottom));display:flex;flex-wrap:wrap}.app-dialog>.dialog-actions .button,.viewport-dialog-actions .button{flex:1 1 190px;white-space:normal}.dialog-heading .eyebrow,.dialog-head .eyebrow{margin-bottom:1px}.dialog-heading h2,.dialog-head h2{font-size:16px}}

/* Phase 1 beta: keep dashboard controls inside narrow mobile panels. */
@media(max-width:800px){.dashboard-user-layout{grid-template-columns:minmax(0,1fr)}.dashboard-user-layout .user-dashboard-widget{grid-column:1/-1!important}.dashboard-user-layout .panel-heading{min-width:0;flex-wrap:wrap}.dashboard-user-layout .panel-heading h2{min-width:0;overflow-wrap:anywhere}.dashboard-user-layout .panel-heading>a,.dashboard-user-layout .panel-heading>span{margin-left:auto;flex:0 0 auto}}

/* v45: theme-safe navigation and functional daily ambulance rig-check forms. */
.sidebar{--nav-fg:#f5f8fc;--nav-muted:#c4d2e1;--nav-hover:#163b69;--nav-active:#1b4f86;--nav-border:#355676;--nav-popover:#0b2342}
.sidebar .nav-module-row>a,.sidebar .nav-single,.sidebar .nav-submenu>a,.sidebar .forms-nested-submenu summary,.sidebar .forms-nested-submenu details a{color:var(--nav-fg)!important;text-shadow:0 1px 1px rgba(0,0,0,.24)}
.sidebar .nav-heading,.sidebar .sidebar-footer small{color:var(--nav-muted)!important}
.sidebar .nav-module-row>button{color:var(--nav-muted)!important}
.sidebar .nav-module-row>a:hover,.sidebar .nav-single:hover,.sidebar .nav-submenu>a:hover,.sidebar .forms-nested-submenu summary:hover,.sidebar .forms-nested-submenu details a:hover,.sidebar .nav-module-row>button:hover{background:var(--nav-hover)!important;color:#fff!important}
.sidebar .nav-module.active>.nav-module-row>a,.sidebar .nav-single.active{background:var(--nav-active)!important;color:#fff!important;box-shadow:inset 4px 0 0 #fff}
.sidebar .nav-submenu{background:var(--nav-popover)!important;border-color:var(--nav-border)!important}
.sidebar a:focus-visible,.sidebar button:focus-visible,.sidebar summary:focus-visible{outline:3px solid #fff!important;outline-offset:2px}
body.theme-day.day-palette-light_gray .sidebar{--nav-fg:#fff;--nav-muted:#edf1f4;--nav-hover:#27323b;--nav-active:#1f2a33;--nav-border:#71808b;--nav-popover:#303a43;background:#3d4853!important}
body.theme-day.day-palette-light_gray .sidebar .sidebar-branding span{color:#ffe08a;border-color:#ffe08a}
body.theme-day.day-palette-light_gray .sidebar .nav-submenu,body.theme-day.day-palette-light_gray.nav-top .nav-submenu{background:#303a43!important;color:#fff!important}
body.theme-day.day-palette-light_gray .topbar{color:#fff!important}body.theme-day.day-palette-light_gray .topbar button,body.theme-day.day-palette-light_gray .topbar .topbar-user,body.theme-day.day-palette-light_gray .topbar-datetime{color:#fff!important}

/* v46: discoverable, stable Form Configurator object editing. */
.builder-card-tools{display:grid;justify-items:end;gap:7px;min-width:126px}.builder-card-tools .button{white-space:nowrap}.builder-edit-object{font-weight:850!important}.builder-field-card.selected .builder-edit-object{background:#0b67c2!important;color:#fff!important;border-color:#0b67c2!important}.field-editor-header-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.object-editor-selected{display:grid;gap:3px;border-left:5px solid var(--blue);background:var(--soft);border-radius:8px;padding:11px}.object-editor-selected strong{font-size:15px}.object-editor-footer{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px -4px -4px;padding:12px 4px 4px;background:linear-gradient(to bottom,transparent,var(--card) 25%);z-index:5}.builder-properties.editor-active{outline:3px solid color-mix(in srgb,var(--blue) 28%,transparent);outline-offset:3px}.builder-property-panel input,.builder-property-panel select,.builder-property-panel textarea{cursor:text}.builder-property-panel select{cursor:pointer}
@media(max-width:760px){.builder-field-card{grid-template-columns:auto minmax(0,1fr)}.builder-card-tools{grid-column:1/-1;width:100%;display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap}.builder-card-badges{margin-right:auto}.field-editor-header-actions{width:100%;justify-content:flex-start}.object-editor-footer{align-items:flex-start;flex-direction:column}.object-editor-footer .button{width:100%}}

.rig-template-callout{display:flex;align-items:center;justify-content:space-between;gap:22px;border-left:6px solid var(--blue)}.rig-template-callout h2{margin:3px 0 6px}.rig-template-callout p{margin:0;max-width:950px;color:var(--muted);line-height:1.55}.rig-template-callout form{flex:0 0 auto}
.custom-form-new-row.custom-form-span-3{grid-column:1 / span 3}.custom-form-new-row.custom-form-span-4{grid-column:1 / span 4}.custom-form-new-row.custom-form-span-6{grid-column:1 / span 6}.custom-form-new-row.custom-form-span-8{grid-column:1 / span 8}.custom-form-new-row.custom-form-span-9{grid-column:1 / span 9}.custom-form-new-row.custom-form-span-12{grid-column:1 / span 12}
.daily-rig-board{border-top:5px solid var(--blue)}.daily-rig-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px}.daily-rig-card{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--soft,var(--bg))}.daily-rig-card.complete{border-top:4px solid var(--green)}.daily-rig-card.due{border-top:4px solid #d99a16}.daily-rig-unit{display:flex;align-items:center;gap:9px}.daily-rig-unit>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--card);border:1px solid var(--line);font-weight:900}.daily-rig-unit div,.daily-rig-status{display:grid;gap:3px}.daily-rig-unit strong{font-size:1.15rem}.daily-rig-unit small,.daily-rig-status small{color:var(--muted);font-size:.72rem;line-height:1.35}.daily-rig-card .button{width:100%}
.rig-check-progress{position:sticky;top:82px;z-index:14;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 16px;padding:12px 16px;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:11px;background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:var(--shadow);backdrop-filter:blur(10px)}.rig-check-progress>div{display:grid;gap:3px}.rig-check-progress>div:last-child{grid-template-columns:auto minmax(160px,320px);align-items:center;gap:10px}.rig-check-progress span{font-size:.78rem;color:var(--muted)}.rig-check-progress progress{width:100%;height:12px;accent-color:var(--green)}
.rig-matrix-section{padding:0!important;overflow:hidden}.rig-matrix-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line);background:var(--soft,var(--bg))}.rig-matrix-heading h2,.rig-matrix-heading h3{margin:2px 0 0}.rig-matrix-heading p{margin:4px 0 0;color:var(--muted);font-size:.78rem}.rig-check-matrix{min-width:780px}.rig-check-matrix th{background:var(--panel-soft,var(--soft));color:var(--ink)}.rig-check-matrix td:first-child{width:32%;min-width:230px}.rig-check-matrix td:nth-child(2){min-width:180px}.rig-check-matrix input,.rig-check-matrix select,.rig-entry-table input,.rig-entry-table select{min-width:110px;padding:8px;font-size:.78rem}.rig-check-matrix tr:has(select option:checked:not([value=""])){background:color-mix(in srgb,var(--green) 4%,transparent)}
.rig-entry-table{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--card)}.rig-entry-table>.table-wrap{margin:0}.inventory-linked-form-table{border-left:5px solid #d99a16}.rig-signoff-grid{margin-top:18px;align-items:start}.drawn-signature-field{display:grid;gap:7px}.signature-pad-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.drawn-signature-field canvas{display:block;width:100%;height:150px;border:2px dashed var(--line);border-radius:9px;background:#fff;touch-action:none;cursor:crosshair}.drawn-signature-field.signature-required-error canvas{border-color:var(--red);box-shadow:0 0 0 3px color-mix(in srgb,var(--red) 18%,transparent)}.submission-signature{display:block;max-width:460px;width:100%;max-height:150px;object-fit:contain;object-position:left center;border-bottom:1px solid var(--line);background:#fff}.submission-nested-table{max-height:500px}.submission-nested-table table{min-width:720px}.daily-rig-complete{display:flex;align-items:center;justify-content:space-between;gap:18px}.daily-rig-complete p{margin:5px 0 0}.notice.success{background:#e7f8ef;border-color:#bce5ce;color:#0f6842}
body.theme-night .daily-rig-card,body.theme-night .rig-entry-table{background:var(--card);color:var(--ink)}body.theme-night .rig-matrix-heading,body.theme-night .rig-check-matrix th{background:var(--panel-soft);color:var(--ink)}body.theme-night .notice.success{background:#123426;border-color:#2b6e52;color:#c9f8df}
@media(max-width:1180px){.daily-rig-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}}
@media(max-width:760px){.rig-template-callout,.daily-rig-complete{align-items:stretch;flex-direction:column}.rig-template-callout form,.rig-template-callout .button{width:100%}.daily-rig-grid{grid-template-columns:1fr 1fr}.rig-check-progress{top:72px;align-items:stretch;flex-direction:column}.rig-check-progress>div:last-child{grid-template-columns:auto 1fr}.rig-matrix-section>.table-wrap,.rig-entry-table>.table-wrap{overflow:visible}.rig-check-matrix,.rig-entry-table table{min-width:0}.rig-check-matrix thead,.rig-entry-table thead{display:none}.rig-check-matrix tbody,.rig-entry-table tbody{display:grid}.rig-check-matrix tr,.rig-entry-table tbody tr{display:grid;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.rig-check-matrix td,.rig-entry-table tbody td{display:grid;grid-template-columns:minmax(105px,.7fr) minmax(0,1fr);align-items:center;gap:10px;width:auto!important;min-width:0!important;padding:0;border:0}.rig-check-matrix td::before,.rig-entry-table tbody td::before{content:attr(data-label);font-size:.68rem;font-weight:850;text-transform:uppercase;color:var(--muted)}.rig-check-matrix td:first-child,.rig-entry-table tbody td:first-child{display:block;padding-bottom:6px}.rig-check-matrix td:first-child::before,.rig-entry-table tbody td:first-child::before{display:none}.rig-check-matrix input,.rig-check-matrix select,.rig-entry-table input,.rig-entry-table select{min-width:0}.drawn-signature-field canvas{height:175px}.submission-nested-table table{min-width:620px}}
@media(max-width:480px){.daily-rig-grid{grid-template-columns:1fr}.rig-check-progress>div:last-child{grid-template-columns:1fr}.rig-matrix-heading{align-items:stretch;flex-direction:column}}
@media print{.rig-check-progress,.daily-rig-board .button,.rig-matrix-heading .button,.drawn-signature-field button{display:none!important}.rig-matrix-section,.rig-entry-table{break-inside:auto}.rig-check-matrix tr,.rig-entry-table tr{break-inside:avoid}}

/* v48: per-access-level feature and form release controls. */
.access-settings-layout{align-items:start}.access-switchboard{display:grid;gap:14px;min-width:0}.access-switchboard>form{display:grid;gap:16px}.access-role-shortcuts{overflow:hidden}.access-role-card-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:10px}.access-role-card{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.access-role-card>strong{font-size:1rem}.access-role-card>span{color:var(--muted);font-size:.76rem}.access-role-card>div{display:flex;gap:6px;flex-wrap:wrap}.access-feature-groups{display:grid;gap:10px}.access-control-group{border:1px solid var(--line);border-radius:10px;background:var(--card);overflow:hidden}.access-control-group>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;background:var(--soft);cursor:pointer;list-style:none}.access-control-group>summary::-webkit-details-marker{display:none}.access-control-group>summary::before{content:'›';font-size:1.2rem;font-weight:900;transition:transform .15s}.access-control-group[open]>summary::before{transform:rotate(90deg)}.access-control-group>summary strong{margin-right:auto}.access-control-group>summary span{color:var(--muted);font-size:.75rem}.access-permission-matrix{min-width:850px}.access-permission-matrix th{position:sticky;top:0;z-index:2;background:var(--panel-soft,var(--soft));text-align:center}.access-permission-matrix th:first-child,.access-permission-matrix td:first-child{text-align:left;min-width:260px}.access-permission-matrix td:not(:first-child){text-align:center;min-width:132px}.access-permission-matrix td:first-child strong,.access-permission-matrix td:first-child small{display:block}.access-permission-matrix td:first-child small{margin-top:3px;color:var(--muted)}.permission-cell{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:92px;padding:7px 9px;border:1px solid var(--line);border-radius:999px;background:var(--card);font-weight:800;font-size:.74rem;cursor:pointer}.permission-cell:has(input:checked){background:color-mix(in srgb,var(--green) 14%,var(--card));border-color:color-mix(in srgb,var(--green) 55%,var(--line));color:var(--green)}.permission-cell input{width:18px;height:18px;margin:0;accent-color:var(--green)}.permission-cell.not-eligible{opacity:.55;cursor:not-allowed}.permission-cell.not-eligible input{cursor:not-allowed}.access-save-actions{position:sticky;bottom:8px;z-index:20;margin:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:0 8px 30px rgba(11,35,66,.18);backdrop-filter:blur(12px)}
body.theme-night .access-role-card,body.theme-night .access-control-group,body.theme-night .permission-cell{background:var(--card);color:var(--ink)}body.theme-night .access-control-group>summary,body.theme-night .access-permission-matrix th{background:var(--panel-soft);color:var(--ink)}
@media(max-width:1180px){.access-role-card-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.access-role-card-grid{grid-template-columns:1fr}.access-control-group>summary{align-items:flex-start}.access-save-actions{bottom:4px}.access-save-actions .button{flex:1}.access-permission-matrix{min-width:720px}.access-permission-matrix th:first-child,.access-permission-matrix td:first-child{min-width:210px}.access-permission-matrix td:not(:first-child){min-width:118px}}

/* v49: readable role-by-role feature access editor */
.access-role-picker-panel{border-top:5px solid var(--blue)}.access-role-tabs{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:8px}.access-role-tab{display:grid;gap:3px;text-align:left;border:2px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);padding:12px 13px;cursor:pointer}.access-role-tab span{font-weight:850;font-size:.88rem}.access-role-tab small{color:var(--muted);font-size:.7rem}.access-role-tab:hover{border-color:color-mix(in srgb,var(--blue) 55%,var(--line));background:var(--soft)}.access-role-tab.active{border-color:var(--blue);background:color-mix(in srgb,var(--blue) 10%,var(--card));box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 14%,transparent)}.access-role-tab:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 35%,transparent);outline-offset:2px}.access-role-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:11px 12px;border-radius:9px;background:var(--soft);border:1px solid var(--line)}.access-role-toolbar>div:last-child{display:flex;gap:6px;flex-wrap:wrap}.access-search-label{display:grid;gap:6px;margin-top:13px;font-weight:800;font-size:.78rem}.access-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.access-search-row input{min-width:0}.access-control-layer{overflow:visible}.access-control-layer>.panel-heading{align-items:flex-start}.access-layer-count{display:inline-flex;white-space:nowrap;border:1px solid var(--line);border-radius:999px;background:var(--soft);color:var(--muted);padding:6px 9px;font-size:.7rem;font-weight:800}.access-role-panel{display:grid;gap:10px}.access-role-panel[hidden]{display:none!important}.access-editing-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:8px;background:color-mix(in srgb,var(--blue) 9%,var(--card));border-left:4px solid var(--blue)}.access-editing-banner strong{font-size:.82rem}.access-editing-banner span{color:var(--muted);font-size:.72rem}.access-option-list{display:grid;gap:8px;padding:10px}.access-category-list{padding:0}.access-option-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(145px,auto);align-items:center;gap:16px;min-width:0;padding:12px 13px;border:1px solid var(--line);border-left:4px solid #a6b8c8;border-radius:9px;background:var(--card);transition:border-color .15s,background .15s}.access-option-row:has(.access-toggle-control.is-on){border-left-color:var(--green)}.access-option-row:has(.access-toggle-control.is-off){border-left-color:#bd6d74}.access-option-row[hidden]{display:none!important}.access-option-copy{display:grid;gap:3px;min-width:0}.access-option-copy strong{font-size:.88rem;overflow-wrap:anywhere}.access-option-copy small{color:var(--muted);font-size:.71rem;overflow-wrap:anywhere}.access-option-kind{width:max-content;max-width:100%;border-radius:999px;background:var(--soft);color:var(--muted);padding:3px 7px;font-size:.62rem;font-weight:850;letter-spacing:.025em;text-transform:uppercase;overflow-wrap:anywhere}.access-toggle-control{position:relative;display:grid;grid-template-columns:46px minmax(76px,auto);align-items:center;justify-content:end;gap:8px;cursor:pointer}.access-toggle-control input{position:absolute;width:1px!important;height:1px!important;opacity:0;pointer-events:none}.access-toggle-track{position:relative;display:block;width:46px;height:25px;border-radius:999px;background:#a7b2bd;border:1px solid #8b99a6;box-shadow:inset 0 1px 3px rgba(0,0,0,.18);transition:background .15s,border-color .15s}.access-toggle-track::after{content:'';position:absolute;top:2px;left:2px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.28);transition:transform .15s}.access-toggle-control input:checked+.access-toggle-track{background:var(--green);border-color:color-mix(in srgb,var(--green) 75%,#000)}.access-toggle-control input:checked+.access-toggle-track::after{transform:translateX(21px)}.access-toggle-control input:focus-visible+.access-toggle-track{outline:3px solid color-mix(in srgb,var(--blue) 38%,transparent);outline-offset:3px}.access-toggle-control input:disabled+.access-toggle-track{background:#d2d8df;border-color:#b9c2cb;box-shadow:none}.access-toggle-control input:disabled+.access-toggle-track::after{background:#f2f4f6}.access-toggle-state{font-size:.75rem;font-weight:900;color:#8a2633}.access-toggle-control.is-on .access-toggle-state{color:var(--green)}.access-toggle-control.not-eligible{cursor:not-allowed;opacity:.68}.access-toggle-control.not-eligible .access-toggle-state{color:var(--muted)}.access-no-results{display:grid;place-items:center;gap:4px;padding:28px;border:2px dashed var(--line);border-radius:11px;background:var(--soft);color:var(--muted)}.access-no-results[hidden]{display:none!important}.access-control-group>summary{grid-template-columns:auto minmax(0,1fr) auto}.access-control-group[hidden]{display:none!important}body.theme-night .access-role-tab,body.theme-night .access-option-row{background:var(--card);color:var(--ink)}body.theme-night .access-role-tab.active{background:color-mix(in srgb,var(--blue) 22%,var(--card))}body.theme-night .access-toggle-track{background:#536579;border-color:#70849a}body.theme-night .access-toggle-control input:disabled+.access-toggle-track{background:#2d4054;border-color:#496078}
@media(max-width:1050px){.access-role-tabs{grid-template-columns:repeat(2,minmax(150px,1fr))}}
@media(max-width:760px){.access-role-toolbar,.access-editing-banner{align-items:flex-start;flex-direction:column}.access-role-toolbar>div:last-child{width:100%}.access-role-toolbar .button{flex:1}.access-option-row{grid-template-columns:minmax(0,1fr);gap:10px}.access-toggle-control{justify-content:start}.access-layer-count{white-space:normal}.access-control-layer>.panel-heading{display:grid}.access-search-row{grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:460px){.access-role-tabs{grid-template-columns:1fr}.access-search-row{grid-template-columns:1fr}.access-role-toolbar>div:last-child{display:grid}.access-control-group>summary{padding:11px}.access-option-list{padding:7px}.access-option-row{padding:11px}.access-toggle-control{grid-template-columns:46px 1fr;width:100%}}

/* Guided access-level and dashboard management workflows */
.access-workflow-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.access-workflow-tabs>a{display:grid;grid-template-columns:34px 1fr;gap:2px 10px;align-items:center;padding:13px;border:2px solid var(--line);border-radius:11px;background:var(--card);color:var(--ink);text-decoration:none}.access-workflow-tabs>a>span{grid-row:span 2;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--soft);color:var(--blue);font-weight:900}.access-workflow-tabs>a>small{color:var(--muted)}.access-workflow-tabs>a.active{border-color:var(--blue);background:color-mix(in srgb,var(--blue) 9%,var(--card))}.access-workflow-tabs>a.active>span{background:var(--blue);color:#fff}.access-role-create-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.access-role-create-form .wide{grid-column:1/-1}.access-role-create-form>.button{justify-self:start}.access-role-management{border-top:5px solid var(--blue)}.access-role-card-grid{grid-template-columns:repeat(2,minmax(250px,1fr))}.access-role-card{align-content:space-between}.access-role-card.inactive{opacity:.7}.access-role-card h3{margin:6px 0}.access-role-card p{color:var(--muted)}.access-role-card-actions{display:flex!important;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.access-person-picker{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:10px;align-items:end}.access-option-row>label:not(.access-toggle-control){min-width:210px}.access-option-row>label:not(.access-toggle-control) select{margin-top:4px}
.dashboard-management-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.dashboard-management-card{display:grid;grid-template-columns:42px 1fr;gap:12px;color:var(--ink);text-decoration:none;border-top:5px solid var(--line)}.dashboard-management-card>span{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:var(--soft);color:var(--blue);font-size:1.1rem;font-weight:900}.dashboard-management-card h2{margin:3px 0 7px}.dashboard-management-card p{color:var(--muted);line-height:1.45}.dashboard-management-card strong{color:var(--blue)}.dashboard-management-card.primary-choice{border-top-color:var(--blue)}.dashboard-management-card.personal-choice{border-top-color:var(--green)}.dashboard-fallback-settings{margin-bottom:16px}.dashboard-fallback-settings>summary{display:flex;justify-content:space-between;align-items:center;gap:15px;cursor:pointer}.dashboard-fallback-settings>summary::marker{color:var(--blue)}.dashboard-fallback-settings>summary h2,.dashboard-fallback-settings>summary p{margin:2px 0}.dashboard-fallback-settings>form{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}
.home-builder-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.home-builder-steps>div{display:grid;grid-template-columns:32px 1fr;gap:1px 8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--card)}.home-builder-steps span{grid-row:span 2;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--soft);color:var(--blue);font-weight:900}.home-builder-steps .active{border-color:var(--blue)}.home-builder-steps .active span{background:var(--blue);color:#fff}.home-builder-steps small{color:var(--muted)}.home-quick-start{display:grid;grid-template-columns:minmax(220px,1fr) minmax(320px,auto);gap:12px 20px;align-items:center}.home-quick-start h2,.home-quick-start p{margin:2px 0}.home-preset-buttons{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.home-mode-toggle{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding:10px;border-top:1px solid var(--line)}.home-mode-toggle input{width:20px;height:20px}.home-mode-toggle span{display:grid}.home-mode-toggle small{color:var(--muted)}[data-home-prop-tab="advanced"]{display:none}.home-advanced-mode [data-home-prop-tab="advanced"]{display:block}.home-advanced-mode .home-property-tabs{grid-template-columns:repeat(4,1fr)}.home-property-tabs{grid-template-columns:repeat(3,1fr)}
@media(max-width:1050px){.dashboard-management-choices{grid-template-columns:1fr}.home-builder-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.access-workflow-tabs,.access-role-card-grid,.access-role-create-form,.home-builder-steps{grid-template-columns:1fr}.access-person-picker,.home-quick-start{grid-template-columns:1fr}.home-preset-buttons{justify-content:flex-start}.access-option-row{grid-template-columns:1fr}.access-option-row>label:not(.access-toggle-control){min-width:0}.dashboard-management-card{grid-template-columns:34px 1fr}.dashboard-management-card>span{width:32px;height:32px}}

/* v57: schedule blocks, notification read controls, and final night-mode contrast pass. */
[hidden]{display:none!important}
.blocked-coverage-pill{display:inline-flex;align-items:center;gap:5px;margin:2px 4px 2px 0;padding:4px 7px;border:1px solid #708090;border-radius:999px;background:repeating-linear-gradient(135deg,#eef1f4 0,#eef1f4 6px,#dfe5ea 6px,#dfe5ea 12px);color:#344454;font-size:.69rem;font-weight:850}
.calendar-entry.blocked{align-items:center;margin:2px 0;padding:3px 5px;border-left:3px solid #66788a;border-radius:4px;background:repeating-linear-gradient(135deg,#eef1f4 0,#eef1f4 6px,#dfe5ea 6px,#dfe5ea 12px);color:#344454;font-weight:850}
.hourly-block-bar{position:absolute;top:3px;bottom:3px;z-index:4;box-sizing:border-box;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border:1px solid #617487;border-radius:4px;background:repeating-linear-gradient(135deg,rgba(92,111,128,.93) 0,rgba(92,111,128,.93) 7px,rgba(69,86,102,.93) 7px,rgba(69,86,102,.93) 14px);color:#fff;padding:3px 7px;font-size:10px;font-weight:900;text-align:left;pointer-events:none}
.editor-block-form{display:grid;gap:11px;margin:10px 12px 0;padding:12px;border:1px solid var(--line);border-left:5px solid #66788a;border-radius:10px;background:var(--soft,var(--bg))}
.editor-block-row{display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(2,minmax(120px,.7fr)) minmax(180px,1fr) auto;gap:8px;align-items:end}.editor-block-row>div{display:grid;gap:3px}.editor-block-row label{display:grid;gap:5px;font-size:.72rem;font-weight:800}.editor-block-row .button{min-height:39px}
.editor-block-list{display:grid;gap:7px;margin-top:10px}.editor-block-list>strong{font-size:.78rem}.editor-block-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card)}.editor-block-item>span{display:grid;gap:2px}.editor-block-item small{color:var(--muted)}
.notification-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.notification-row>a{min-width:0}.notification-read-button{display:grid;place-items:center;min-width:32px!important;width:32px!important;height:32px!important;padding:0!important;border:1px solid var(--line)!important;border-radius:50%!important;background:var(--soft,var(--bg))!important;color:var(--ink)!important;line-height:1}.notification-read-button:hover,.notification-read-button:focus-visible{background:color-mix(in srgb,var(--blue) 14%,var(--card))!important;outline:2px solid var(--blue);outline-offset:1px}
.popover-heading-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.popover-heading-actions form{margin:0}.popover-text-button{border:0;background:transparent;color:var(--blue);padding:4px 2px;font-size:.69rem;font-weight:850;cursor:pointer}.popover-text-button:hover{text-decoration:underline}
.notification-page-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--soft,var(--bg))}.notification-page-summary form{margin:0}
.notification-page-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:9px;background:var(--card)}.notification-page-row.read{border-left-color:#8b9aaa;background:var(--soft,var(--bg));opacity:.82}.notification-page-row>a{display:grid;gap:4px;min-width:0;color:inherit}.notification-page-row small{color:var(--muted)}.notification-page-row form{margin:0}

body.theme-night{color-scheme:dark}
body.theme-night input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='color']),body.theme-night select,body.theme-night textarea,body.theme-night [contenteditable='true']{background:var(--input-bg,var(--card))!important;color:var(--ink)!important;border-color:var(--line)!important;-webkit-text-fill-color:var(--ink)}
body.theme-night option,body.theme-night optgroup{background:var(--card)!important;color:var(--ink)!important}
body.theme-night input::placeholder,body.theme-night textarea::placeholder{color:var(--muted)!important;opacity:1}
body.theme-night input:disabled,body.theme-night select:disabled,body.theme-night textarea:disabled{background:color-mix(in srgb,var(--card) 72%,#000)!important;color:var(--muted)!important;-webkit-text-fill-color:var(--muted)!important;opacity:1}
body.theme-night .panel,body.theme-night .stat-card,body.theme-night .resource-card,body.theme-night .filter-bar,body.theme-night .settings-control-card,body.theme-night .settings-choice,body.theme-night .settings-editable-row,body.theme-night .form-card,body.theme-night .builder-field-card,body.theme-night .property-group,body.theme-night .notification-page-row,body.theme-night .notification-page-summary,body.theme-night .editor-block-form,body.theme-night .editor-block-item,body.theme-night .dashboard-news-post,body.theme-night .dashboard-post-admin-list>article,body.theme-night .aladtec-import-stats>div,body.theme-night .object-editor-selected,body.theme-night .access-role-toolbar,body.theme-night .access-editing-banner,body.theme-night .access-no-results{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}
body.theme-night .notification-page-row.read{background:var(--panel-soft,var(--card))!important;opacity:.88}
body.theme-night .topbar-popover,body.theme-night .nav-submenu,body.theme-night .assignment-context-menu,body.theme-night .app-dialog,body.theme-night .time-off-dialog,body.theme-night .assignment-conflict-dialog,body.theme-night .overtime-warning-dialog{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}
body.theme-night .notification-row,body.theme-night .notification-row>a,body.theme-night .notification-page-row>a,body.theme-night .popover-heading-actions,body.theme-night .editor-block-form,body.theme-night .editor-block-item>span{color:var(--ink)!important}
body.theme-night .notification-read-button{background:var(--panel-soft,var(--card))!important;color:var(--ink)!important;border-color:var(--line)!important}
body.theme-night .blocked-coverage-pill,body.theme-night .calendar-entry.blocked{background:repeating-linear-gradient(135deg,#34495d 0,#34495d 6px,#26394b 6px,#26394b 12px)!important;color:#f4f8fc!important;border-color:#7e9ab3!important}
body.theme-night .hourly-block-bar{background:repeating-linear-gradient(135deg,#536b80 0,#536b80 7px,#3c5164 7px,#3c5164 14px)!important;color:#fff!important;border-color:#a8bfd3!important}
body.theme-night .notice.info,body.theme-night .callout.info,body.theme-night .settings-callout{background:#173a58!important;color:#e6f4ff!important;border-color:#5b83a7!important}
body.theme-night .notice.success,body.theme-night .callout.success{background:#123d2c!important;color:#dff9eb!important;border-color:#3f8b69!important}
body.theme-night .notice.warning,body.theme-night .callout.warning,body.theme-night .settings-callout.warning,body.theme-night .time-off-impact{background:#493b17!important;color:#ffe8a3!important;border-color:#a88932!important}
body.theme-night .notice.danger,body.theme-night .callout.danger{background:#4b1f2b!important;color:#ffe4e8!important;border-color:#9b4858!important}
body.theme-night mark,body.theme-night .highlight{background:#6a5110!important;color:#fff3b5!important}
body.theme-night ::selection{background:#2b73a9;color:#fff}
body.theme-night a:not(.button):not(.nav-single):not(.settings-section-tab):not(.settings-module-link){color:#8fc7ff}
body.theme-night .muted,body.theme-night small,body.theme-night .notification-page-row small,body.theme-night .editor-block-item small{color:var(--muted)!important}
@media(max-width:820px){.editor-block-row{grid-template-columns:1fr 1fr}.editor-block-row>div,.editor-block-row label:nth-of-type(3),.editor-block-row .button{grid-column:1/-1}.notification-page-row{grid-template-columns:1fr}.notification-page-row form,.notification-page-row .button{width:100%}}
@media(max-width:520px){.editor-block-row{grid-template-columns:1fr}.editor-block-row label:nth-of-type(3),.editor-block-row .button{grid-column:auto}.editor-block-item{align-items:stretch;flex-direction:column}.editor-block-item form,.editor-block-item .button{width:100%}.notification-row{grid-template-columns:minmax(0,1fr) 34px}}

/* v58 consent-aware multi-channel messaging and schedule day actions */
.messaging-layout{align-items:start}.coverage-message-context{display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:center}.coverage-message-context strong,.coverage-message-context span{grid-column:1}.coverage-message-context .button{grid-column:2;grid-row:1/3}.delivery-channel-fieldset{margin:0;padding:12px;border:1px solid var(--line);border-radius:10px}.delivery-channel-fieldset legend{padding:0 6px;font-weight:850}.delivery-channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:9px}.delivery-channel-card{display:flex;gap:9px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--soft);cursor:pointer}.delivery-channel-card:has(input:checked){border-color:var(--blue);background:#eaf4ff}.delivery-channel-card input{width:auto;margin-top:3px}.delivery-channel-card span{display:grid;gap:3px}.message-recipient-grid{max-height:360px;overflow:auto;padding:7px;border:1px solid var(--line);border-radius:9px}.message-recipient-row{align-items:flex-start}.message-recipient-row>span{display:grid;gap:3px}.consent-ready{color:#12643e;font-weight:800}.consent-missing{color:#8a4b19;font-weight:750}.schedule-day-action-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 14px 12px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.calendar-day-top{position:relative;display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:27px}.calendar-day-actions{position:relative;z-index:8}.calendar-day-actions summary{display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--blue);font-size:16px;font-weight:900;cursor:pointer;list-style:none}.calendar-day-actions summary::-webkit-details-marker{display:none}.calendar-day-actions>div{position:absolute;right:0;top:30px;z-index:30;display:grid;gap:3px;min-width:190px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--card);box-shadow:0 12px 32px rgba(8,31,57,.24)}.calendar-day-actions a{padding:7px 8px;border-radius:6px;color:var(--ink);font-size:11px;font-weight:800}.calendar-day-actions a:hover{background:var(--soft);text-decoration:none}.calendar-entry.schedule-day-event{border-left:3px solid #276bb0;background:#e9f4ff;color:#174f85}.calendar-entry.schedule-day-note{border-left:3px solid #8b711d;background:#fff7d8;color:#665315}.schedule-day-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.schedule-day-item>div{display:grid;grid-template-columns:auto 1fr auto;gap:5px 8px;align-items:center}.schedule-day-item p,.schedule-day-item>div>small:last-child{grid-column:1/-1;margin:0}.schedule-day-item-form-panel{max-width:780px}.schedule-day-item-form-panel form{max-width:none}
body.theme-night .delivery-channel-card,body.theme-night .schedule-day-action-bar,body.theme-night .calendar-day-actions summary,body.theme-night .calendar-day-actions>div{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}body.theme-night .delivery-channel-card:has(input:checked){background:#173d61!important;border-color:#62a8e5!important}body.theme-night .consent-ready{color:#8ee4b5!important}body.theme-night .consent-missing{color:#ffc184!important}body.theme-night .calendar-entry.schedule-day-event{background:#173d61!important;color:#d9efff!important;border-color:#62a8e5!important}body.theme-night .calendar-entry.schedule-day-note{background:#4a3c15!important;color:#ffeaa4!important;border-color:#b59a43!important}
@media(max-width:760px){.delivery-channel-grid{grid-template-columns:1fr}.coverage-message-context{grid-template-columns:1fr}.coverage-message-context .button{grid-column:1;grid-row:auto}.schedule-day-action-bar{align-items:stretch}.schedule-day-action-bar>*{flex:1 1 100%}.calendar-day-actions>div{position:fixed;left:12px;right:12px;top:auto;width:auto}.schedule-day-item{flex-direction:column}.schedule-day-item>div{grid-template-columns:1fr}}

/* v63 server-proxied UniFi Protect and Access integration */
.unifi-camera-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.unifi-camera-grid.all-cameras{grid-template-columns:repeat(3,minmax(0,1fr))}.unifi-camera-card{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--card)}.unifi-camera-image-wrap{position:relative;aspect-ratio:16/9;background:#07111c;overflow:hidden}.unifi-camera-image-wrap img{display:block;width:100%;height:100%;object-fit:cover;color:#fff}.unifi-camera-type{position:absolute;top:9px;right:9px}.unifi-camera-caption{display:flex;justify-content:space-between;gap:10px;padding:10px 12px}.unifi-camera-caption strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unifi-camera-caption span{color:var(--muted);font-size:12px;text-align:right}.unifi-door-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.unifi-door-card{padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.unifi-door-card dl{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;margin:10px 0 0}.unifi-door-card dd{margin:0;text-align:right}.integration-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.integration-status-grid>div{display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.integration-status-grid span{color:var(--muted);font-size:12px}.integration-status-grid strong{overflow-wrap:anywhere}body.theme-night .unifi-camera-card,body.theme-night .unifi-door-card,body.theme-night .integration-status-grid>div{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}
@media(max-width:1000px){.unifi-camera-grid.all-cameras,.unifi-door-grid,.integration-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.unifi-camera-grid,.unifi-camera-grid.all-cameras,.unifi-door-grid,.integration-status-grid{grid-template-columns:1fr}.unifi-camera-caption{align-items:flex-start;flex-direction:column}.unifi-camera-caption span{text-align:left}}

/* v64: block-time controls remain fully reachable on phones and short screens. */
.editor-bottom-dock.block-mode{overflow-y:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.editor-bottom-dock.block-mode .editor-block-form{display:block!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:12px 12px calc(14px + env(safe-area-inset-bottom))}
@media(max-width:800px){.editor-bottom-dock.block-mode{max-height:min(78dvh,680px)!important}.editor-bottom-dock.block-mode .editor-block-row{grid-template-columns:1fr!important}.editor-bottom-dock.block-mode .editor-block-row>div,.editor-bottom-dock.block-mode .editor-block-row label,.editor-bottom-dock.block-mode .editor-block-row .button{grid-column:1/-1!important}.editor-bottom-dock.block-mode .editor-block-row .button{width:100%;position:sticky;bottom:0;z-index:2;box-shadow:0 -5px 12px color-mix(in srgb,var(--card) 88%,transparent)}}

/* v64 public consent evidence and member support tickets */
.support-ticket-button{font-weight:950;text-decoration:none}.sidebar-support-link{display:block;padding:7px 9px;border:1px solid #345779;border-radius:7px;color:#d9ebfc!important;font-size:11px;font-weight:800;text-align:center}.sidebar-support-link:hover{background:#173d61;text-decoration:none}
.optin-page{min-height:100vh;padding:28px 18px 58px;background:linear-gradient(145deg,#eaf2f8,#f8fbfd 52%,#e9f3fb);color:#17283a}.optin-shell{width:min(1120px,100%);margin:0 auto}.optin-header{display:grid;grid-template-columns:230px 1fr;gap:34px;align-items:center;margin-bottom:22px}.optin-header h1{font-size:clamp(30px,4vw,44px);margin:3px 0 8px}.optin-header>div>p:last-child{max-width:780px;line-height:1.55}.optin-form{display:grid;gap:18px}.optin-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.optin-identity-card,.optin-consent-card,.optin-agreement-card,.optin-process-card{background:#fff;border:1px solid #cfdce7;border-radius:15px;box-shadow:0 14px 38px rgba(10,46,79,.08);padding:clamp(20px,3vw,30px)}.optin-identity-card{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.5fr);gap:28px}.optin-identity-card h2,.optin-consent-card h2,.optin-process-card h2{margin:3px 0 10px}.optin-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.optin-consent-card{display:flex;flex-direction:column;border-top:6px solid #1670b8}.optin-consent-card.email-consent-card{border-top-color:#347d4f}.optin-consent-card>p:not(.eyebrow):not(.optin-no-choice){font-size:14px;line-height:1.62}.optin-program-facts{display:grid;gap:6px;margin:12px 0 16px;padding:12px;border-radius:9px;background:#eef6fc;font-size:12px}.email-consent-card .optin-program-facts{background:#eef8f2}.optin-affirmative-choice{display:flex!important;align-items:flex-start!important;gap:12px;margin-top:auto;padding:15px;border:2px solid #aac9df;border-radius:11px;background:#f7fbff;cursor:pointer}.optin-affirmative-choice:has(input:checked){border-color:#0c74bd;background:#eaf6ff;box-shadow:0 0 0 3px rgba(12,116,189,.13)}.email-consent-card .optin-affirmative-choice:has(input:checked){border-color:#347d4f;background:#edf9f1}.optin-affirmative-choice input{width:22px;height:22px;flex:0 0 auto;margin-top:1px;accent-color:#0c74bd}.optin-affirmative-choice span{display:grid;gap:5px}.optin-affirmative-choice small{color:#526779}.optin-no-choice{margin:9px 0 0;font-size:12px;color:#5e6f7f}.optin-agreement-card p{line-height:1.6;margin-top:0}.optin-actions{display:flex;gap:10px;flex-wrap:wrap}.optin-confirmation{margin:0 0 18px;padding:18px 22px;border:2px solid #55a674;border-radius:13px;background:#effbf3;color:#174e2c}.optin-confirmation strong{font-size:18px}.optin-confirmation p{margin:6px 0 0}.optin-process-card{margin-top:18px}.optin-process-card li{margin:8px 0;line-height:1.55}.inline-review-form{display:grid;gap:6px;margin-top:7px;min-width:230px}.consent-field small{display:block;line-height:1.45;margin-top:6px}.ticket-status-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}.ticket-status-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);text-decoration:none}.ticket-status-card strong{font-size:22px}.ticket-status-card.active{outline:3px solid color-mix(in srgb,var(--blue) 25%,transparent);border-color:var(--blue)}.ticket-status{display:inline-flex;padding:4px 9px;border-radius:999px;background:#e7edf3;color:#3d5267;font-size:11px;font-weight:900}.ticket-status.submitted{background:#fff1c7;color:#745400}.ticket-status.read{background:#e4f2ff;color:#145e94}.ticket-status.in-progress{background:#e9e3ff;color:#503397}.ticket-status.complete{background:#dff5e6;color:#23613a}.ticket-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px}.ticket-conversation{display:grid;gap:12px}.ticket-message{padding:15px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.ticket-message.admin-reply{border-left:5px solid var(--blue);background:color-mix(in srgb,var(--blue) 8%,var(--card))}.ticket-message header{display:flex;justify-content:space-between;gap:12px}.ticket-message p{white-space:pre-wrap;line-height:1.55}.ticket-meta dl{display:grid;grid-template-columns:auto 1fr;gap:9px 14px}.ticket-meta dd{margin:0;text-align:right}.ticket-reply-form{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:12px;align-items:end;margin-top:16px}.ticket-reply-form h2{grid-column:1/-1}.ticket-reply-form label{display:grid;gap:6px}.ticket-reply-form button{min-height:42px}.ticket-form{max-width:960px;margin-inline:auto}body.theme-night .ticket-status-card,body.theme-night .ticket-message,body.theme-night .ticket-meta,body.theme-night .ticket-reply-form{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}
@media(max-width:1300px){.optin-shell{width:min(700px,100%)}.optin-header,.optin-identity-card,.optin-choice-grid{grid-template-columns:1fr}.optin-header{gap:12px}.optin-header .legal-brand{justify-self:start}}
@media(max-width:850px){.optin-header,.optin-identity-card,.optin-choice-grid,.ticket-detail-layout{grid-template-columns:1fr}.ticket-status-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-reply-form{grid-template-columns:1fr}.ticket-reply-form h2{grid-column:auto}.optin-header{gap:12px}.optin-header .legal-brand{justify-self:start}}
@media(max-width:520px){.optin-page{padding:16px 10px 40px}.optin-actions .button{width:100%}.ticket-status-summary{grid-template-columns:1fr}.support-ticket-button{width:36px;height:36px}.ticket-message header{flex-direction:column}.ticket-meta dl{grid-template-columns:1fr}.ticket-meta dd{text-align:left}}
/* Guided assessment editor: keep hidden question-type fields truly hidden. */
.training-question-form [hidden]{display:none!important}
.training-question-form .question-choice-key{border:1px solid var(--line);border-radius:8px;padding:12px;min-width:0;grid-column:1/-1}
.training-question-form .question-choice-list{display:grid;gap:8px}
.training-question-form .question-choice-list .check-row{display:flex;align-items:flex-start;gap:10px;padding:10px;border:1px solid var(--line);border-radius:6px;overflow-wrap:anywhere}
.training-question-form .question-choice-list input{width:auto;flex:0 0 auto;margin-top:3px}
.training-question-form .span-3{grid-column:1/-1}
.question-editor-heading,.question-editor-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;position:sticky;background:var(--card,#fff);padding:8px 0;z-index:2}
.question-editor-heading{top:-12px}.question-editor-actions{bottom:-12px;justify-content:flex-end;border-top:1px solid var(--line)}
.question-choice-key,.question-choice-key legend{font-family:inherit}.question-choice-key legend{font-weight:700}
/* v69 workforce controls: keep mobile actions inside scrollable panels. */
.editor-24-hour-help { display:flex; gap:.5rem; align-items:center; max-width:23rem; }
.editor-24-hour-help small { white-space:normal; line-height:1.3; }
.punch-correction-card { border:1px solid var(--border, #788495); border-radius:8px; padding:1rem; margin:.8rem 0; overflow-wrap:anywhere; }
.punch-correction-card summary { cursor:pointer; }
.punch-correction-card .button-row { display:flex; flex-wrap:wrap; gap:.5rem; }
.schedule-assignment-editor .editor-floating-row { grid-template-columns:repeat(4,minmax(0,1fr)); align-items:start; }
.schedule-assignment-editor .editor-selected-shift.compact,
.schedule-assignment-editor .editor-personnel-dropdown { grid-column:span 2; }
.schedule-assignment-editor .editor-floating-row label { min-width:0; }
.schedule-assignment-editor .editor-floating-row input,
.schedule-assignment-editor .editor-personnel-dropdown select { min-width:0; width:100%; box-sizing:border-box; }
.schedule-assignment-editor .editor-floating-row [data-assignment-position-wrap],
.schedule-assignment-editor .editor-notes-control { display:grid; min-width:0; }
.schedule-assignment-editor .editor-add-save,
.schedule-assignment-editor .editor-availability-toggle { grid-column:span 2; }
.schedule-assignment-editor .editor-24-hour-help { flex-wrap:wrap; }
.schedule-assignment-editor .editor-24-hour-help button { padding:4px 8px; min-height:28px; }
.schedule-assignment-editor.editor-bottom-dock form { overflow:auto!important; }
.schedule-assignment-editor .editor-availability-drawer { position:static; max-height:210px; margin-top:8px; }
@media(max-width:800px){
  .schedule-assignment-editor.editor-bottom-dock { position:static!important; inset:auto!important; margin:12px!important; max-height:none!important; scroll-margin-top:82px; }
  .schedule-assignment-editor.editor-bottom-dock form { max-height:none!important; }
  .hourly-editor-wrap { padding-bottom:8px!important; }
  .schedule-assignment-editor .editor-floating-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .schedule-assignment-editor .editor-add-save,
  .schedule-assignment-editor .editor-availability-toggle { grid-column:span 1; min-width:0; }
}

/* v75 Resources center and simple personal dashboard arrangement. */
.resources-hub-grid,.resource-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.resource-hub-card{display:flex;gap:15px;align-items:flex-start;padding:19px;border:1px solid var(--line);border-radius:13px;background:var(--card);color:var(--ink);text-decoration:none;box-shadow:var(--shadow)}.resource-hub-card:hover{border-color:var(--blue);transform:translateY(-1px);text-decoration:none}.resource-hub-card>span{display:grid;place-items:center;flex:0 0 43px;height:43px;border-radius:11px;background:var(--soft);font-size:21px;font-weight:900}.resource-hub-card h2{margin:0 0 6px;font-size:18px}.resource-hub-card p{margin:0 0 9px;color:var(--muted);line-height:1.45}.resource-hub-card small{color:var(--blue);font-weight:800}.resource-directory-card{min-width:0}.resource-directory-card p{overflow-wrap:anywhere}.resource-access-code code{font-size:16px}.resource-provider-frame{width:100%;height:min(70vh,700px);margin-top:14px;border:1px solid var(--line);border-radius:10px;background:#fff}.resource-provider-frame.compact{height:min(46vh,440px)}.resource-feature-panel{display:flex;align-items:center;justify-content:space-between;gap:18px}.resource-admin-list{display:grid;gap:9px}.resource-admin-list>article{display:flex;justify-content:space-between;gap:12px;padding:11px;border:1px solid var(--line);border-radius:9px}.resource-admin-list>article>div:first-child{display:grid;gap:4px}.message-board-compose{max-width:900px}.message-board-list{display:grid;gap:12px}.message-board-post>header{display:flex;align-items:center;gap:10px}.message-board-post>header>div{display:grid}.message-board-post>header time{margin-left:auto;color:var(--muted);font-size:12px}.message-board-post>p{white-space:pre-wrap;line-height:1.5}.message-board-actions{display:flex;align-items:flex-start;gap:7px;flex-wrap:wrap}.message-board-actions details>form{min-width:min(620px,80vw);margin-top:8px}.message-board-reply-label{display:block;margin:9px 0;padding:8px;border-left:3px solid var(--blue);background:var(--soft)}.dashboard-board-grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:16px}.dashboard-board-posts{display:grid;gap:8px;max-height:290px;overflow:auto}.dashboard-board-posts article{padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.dashboard-board-posts article>div{display:flex;justify-content:space-between;gap:8px}.dashboard-board-posts time{color:var(--muted);font-size:11px}.dashboard-board-posts p{margin:6px 0 0;white-space:pre-wrap}.dashboard-widget-controls{display:flex;align-items:center;gap:8px;grid-column:1/-1;min-width:0;margin:-4px -4px 10px;padding:7px 8px;border-bottom:1px dashed var(--line)}.dashboard-widget-controls>strong{min-width:0;margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize}.dashboard-widget-move-controls{display:none;align-items:center;gap:5px}.dashboard-drag-handle{display:none;padding:5px 9px;border:1px dashed var(--line);border-radius:7px;cursor:grab;font-size:12px;font-weight:850;user-select:none}.dashboard-layout-editing .dashboard-widget-move-controls,.dashboard-layout-editing .dashboard-drag-handle{display:flex}.dashboard-layout-editing .user-dashboard-widget{outline:2px dashed color-mix(in srgb,var(--blue) 50%,transparent);outline-offset:2px;cursor:grab}.dashboard-layout-editing .dashboard-widget-dragging{opacity:.55;outline-style:solid}.dashboard-widget-collapsed{min-height:0!important}.dashboard-widget-collapsed>:not(.dashboard-widget-controls){display:none!important}.dashboard-widget-collapsed .dashboard-widget-controls{margin-bottom:0;border-bottom:0}.dashboard-widget-collapsed .dashboard-widget-move-controls{display:none}.narrow-panel{width:min(760px,100%);margin-inline:auto}
body.theme-night .resource-hub-card,body.theme-night .resource-directory-card,body.theme-night .resource-admin-list>article,body.theme-night .dashboard-board-posts article{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}
@media(max-width:1000px){.resources-hub-grid,.resource-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.resources-hub-grid,.resource-directory-grid,.dashboard-board-grid{grid-template-columns:1fr}.resource-feature-panel,.resource-admin-list>article{align-items:stretch;flex-direction:column}.resource-provider-frame{height:58vh}.dashboard-widget-controls{flex-wrap:wrap}.dashboard-widget-controls>strong{flex:1 1 55%}.dashboard-layout-editing .dashboard-widget-move-controls{order:3;width:100%}.dashboard-drag-handle{display:none!important}.message-board-actions details,.message-board-actions details>form{width:100%;min-width:0}}
/* v76: role-aware Support Center, authenticated references, and training signature registry */
.support-search-panel { display:grid; gap:12px; position:sticky; top:8px; z-index:8; }
.support-search-panel label { display:grid; gap:7px; }
.support-search-panel input { min-height:48px; font-size:1rem; }
.support-role-line,.support-jump { display:flex; flex-wrap:wrap; gap:9px; align-items:center; }
.support-jump { position:relative; z-index:7; }
.support-jump a { padding:7px 10px; border-radius:999px; background:var(--surface-muted,#eef2f7); color:var(--text,#172033); text-decoration:none; }
.support-topic { scroll-margin-top:120px; margin:28px 0; }
.support-section-heading { display:flex; gap:13px; align-items:center; margin:0 0 12px; }
.support-section-heading > span { display:grid; place-items:center; width:42px; height:42px; flex:0 0 42px; border-radius:12px; background:var(--primary,#123d6a); color:#fff; font-weight:800; }
.support-section-heading h2,.support-section-heading p { margin:0; }
.support-card-grid,.support-troubleshoot-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.support-card-grid details,.support-faq-list details { margin:0; }
.support-card-grid summary,.support-faq-list summary { cursor:pointer; font-weight:750; font-size:1.03rem; }
.support-card-grid ol { margin:14px 0 0; padding-left:22px; }
.support-card-grid li + li { margin-top:7px; }
.support-troubleshoot-grid article h3 { margin-top:0; }
.support-faq-list { display:grid; gap:10px; }
.support-no-results { text-align:center; }
.resource-reference-list { display:grid; gap:10px; }
.resource-reference-list article { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px; border:1px solid var(--border,#d8dee8); border-radius:12px; }
.resource-reference-list small,.signature-registry-card small { display:block; margin-top:4px; color:var(--muted,#5e6878); }
.signature-registry-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:12px; margin-top:18px; }
.signature-registry-card { display:grid; gap:10px; align-content:start; padding:14px; border:1px solid var(--border,#d8dee8); border-radius:12px; background:var(--surface,#fff); }
.signature-registry-card.retired { opacity:.68; }
.signature-registry-card .signature-preview { width:100%; height:86px; object-fit:contain; background:#fff; border-radius:8px; }
.signature-upload-form { padding-bottom:18px; border-bottom:1px solid var(--border,#d8dee8); }
@media (max-width:760px) {
  .support-search-panel { position:static; }
  .support-card-grid,.support-troubleshoot-grid { grid-template-columns:1fr; }
  .support-jump { overflow-x:auto; flex-wrap:nowrap; padding-bottom:12px; }
  .support-jump a { white-space:nowrap; }
  .resource-reference-list article { align-items:flex-start; flex-direction:column; }
}

/* v81 recurring schedules and Aladtec-style reusable calendar filters */
.schedule-filter-panel.advanced{grid-template-columns:repeat(3,minmax(220px,1fr));align-items:start}
.schedule-filter-panel.advanced .span-full{grid-column:1/-1}
.schedule-filter-panel fieldset{display:grid;gap:7px;margin:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--card)}
.schedule-filter-panel legend{padding:0 5px;font-weight:850;color:var(--ink)}
.schedule-filter-preset,.filter-inline{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
.schedule-filter-preset{justify-content:space-between;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--card)}
.filter-inline select{min-width:min(420px,70vw)}
.schedule-member-filter select{width:100%;min-height:210px}
.schedule-filter-save label{display:grid;gap:5px}
.schedule-filter-delete{display:flex;justify-content:flex-end;padding:8px 16px;border-bottom:1px solid var(--line);background:var(--panel-soft,#f7faff)}
.rotation-badge{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#117b95;color:#fff;font-size:11px;font-weight:900;vertical-align:middle}
.recurrence-builder select[multiple]{min-height:220px}
.twiage-launch-panel .notice{margin-top:14px}
body.theme-night .schedule-filter-panel fieldset,body.theme-night .schedule-filter-preset{background:var(--card);border-color:var(--line);color:var(--ink)}
body.theme-night .schedule-filter-delete{background:var(--panel-soft,var(--card))}
@media(max-width:900px){.schedule-filter-panel.advanced{grid-template-columns:1fr 1fr}.schedule-filter-panel.advanced .schedule-member-filter,.schedule-filter-panel.advanced .schedule-filter-save{grid-column:auto}.filter-inline select{min-width:0;flex:1}}
@media(max-width:620px){.schedule-filter-panel.advanced{grid-template-columns:1fr}.schedule-filter-panel.advanced>*{grid-column:1!important}.filter-inline{align-items:stretch;flex-direction:column}.schedule-filter-preset{align-items:stretch;flex-direction:column}.schedule-filter-delete{justify-content:stretch}.schedule-filter-delete .button{width:100%}}
.schedule-filter-dialog{inset:0 0 0 auto;width:min(680px,calc(100vw - 18px));height:100dvh;max-width:none;max-height:100dvh;margin:0;padding:0;border:0;border-radius:16px 0 0 16px;background:var(--card);color:var(--ink);box-shadow:-18px 0 48px rgba(3,18,31,.3)}.schedule-filter-dialog::backdrop{background:rgba(3,18,31,.56);backdrop-filter:blur(2px)}.schedule-filter-dialog-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0}.schedule-filter-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line);background:var(--card)}.schedule-filter-dialog-header h2,.schedule-filter-dialog-header p{margin:0}.schedule-filter-dialog-header>div{display:grid;gap:4px}.schedule-filter-dialog-header .dialog-close{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--soft);color:var(--ink);font-size:1.45rem;cursor:pointer}.schedule-filter-dialog .schedule-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;overflow-y:auto;padding:18px 20px;border:0;background:var(--panel-soft,#f7faff)}.schedule-filter-dialog .schedule-filter-panel .filter-actions{position:sticky;bottom:-18px;z-index:2;display:flex;justify-content:flex-end;gap:8px;margin:0 -20px -18px;padding:13px 20px;border-top:1px solid var(--line);background:var(--card)}.schedule-filter-dialog .schedule-filter-delete{padding:10px 20px;border-top:1px solid var(--line);border-bottom:0;background:var(--card)}body.theme-night .schedule-filter-dialog,body.theme-night .schedule-filter-dialog-header,body.theme-night .schedule-filter-dialog .filter-actions,body.theme-night .schedule-date-toolbar{background:var(--card)!important;color:var(--ink)!important}body.theme-night .schedule-filter-dialog .schedule-filter-panel{background:var(--panel-soft,var(--card))!important}@media(max-width:620px){.schedule-filter-dialog{inset:0;width:100vw;border-radius:0}.schedule-filter-dialog .schedule-filter-panel{grid-template-columns:1fr}.schedule-filter-dialog .schedule-filter-panel>*{grid-column:1!important}.schedule-filter-dialog .schedule-filter-panel .filter-actions{align-items:stretch;flex-direction:column}.schedule-filter-dialog .schedule-filter-panel .filter-actions .button{width:100%}}@media print{.schedule-date-toolbar,.schedule-filter-dialog{display:none!important}}

/* v82 protected medical-direction protocol and guideline center */
.protocol-safety-notice{border-left-width:7px;font-size:.88rem;line-height:1.55}.protocol-search-shell{scroll-margin-top:90px;border-top:5px solid var(--blue)}.protocol-search-heading{align-items:flex-start}.protocol-search-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.protocol-search-form label{display:grid;gap:6px;font-size:.76rem;font-weight:850;color:var(--ink)}.protocol-search-form .span-full{grid-column:1/-1}.protocol-query>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.protocol-query input{min-width:0;font-size:1rem;padding:12px 13px}.protocol-quick-topics{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:13px}.protocol-quick-topics>span{font-size:.72rem;font-weight:850;color:var(--muted)}.protocol-topic-chip{border:1px solid color-mix(in srgb,var(--blue) 38%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--blue) 7%,var(--card));color:var(--ink);padding:7px 10px;font-size:.7rem;font-weight:820;cursor:pointer}.protocol-topic-chip:hover,.protocol-topic-chip:focus-visible{background:var(--blue);border-color:var(--blue);color:#fff}.protocol-search-status{margin-top:14px;padding:10px 12px;border-radius:9px;background:var(--soft);border-left:4px solid var(--blue);color:var(--muted);font-size:.76rem}.protocol-search-shell.is-searching .protocol-search-status{animation:protocol-pulse 1s ease-in-out infinite alternate}.protocol-search-results{display:grid;gap:10px;margin-top:12px}.protocol-result-card{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:11px;background:var(--card)}.protocol-result-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.protocol-result-heading>div:first-child{display:grid;gap:4px;min-width:0}.protocol-result-heading strong{font-size:.94rem}.protocol-result-heading small,.protocol-result-note{color:var(--muted)}.protocol-result-actions,.protocol-directory-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.protocol-result-excerpt{margin:0;padding:11px;border-radius:8px;background:var(--soft);line-height:1.55;font-size:.82rem}.protocol-tags{display:flex;gap:5px;flex-wrap:wrap}.protocol-tags span{border-radius:999px;background:color-mix(in srgb,var(--blue) 9%,var(--soft));color:var(--ink);padding:4px 7px;font-size:.62rem;font-weight:800}.protocol-directory-shell{border-top:5px solid #158452}.protocol-directory{display:grid;gap:10px}.protocol-directory-group{border:1px solid var(--line);border-radius:11px;background:var(--card);overflow:hidden}.protocol-directory-group>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;background:var(--soft);cursor:pointer;font-weight:900;list-style:none}.protocol-directory-group>summary::-webkit-details-marker{display:none}.protocol-directory-group>summary:before{content:'›';font-size:1.2rem;transition:transform .15s}.protocol-directory-group[open]>summary:before{transform:rotate(90deg)}.protocol-directory-group>summary span{margin-right:auto}.protocol-directory-group>summary small{color:var(--muted)}.protocol-directory-list{display:grid}.protocol-directory-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,auto);gap:16px;align-items:center;padding:14px;border-top:1px solid var(--line)}.protocol-directory-copy{display:grid;gap:6px;min-width:0}.protocol-directory-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.protocol-directory-copy p{margin:0;font-size:.8rem}.protocol-directory-copy>small{color:var(--muted);line-height:1.45}.protocol-contact-panel{border-left:5px solid #c39b30}.protocol-directory-card[hidden],.protocol-directory-group[hidden]{display:none!important}@keyframes protocol-pulse{from{opacity:.72}to{opacity:1}}
body.theme-night .protocol-result-card,body.theme-night .protocol-directory-group{background:var(--card);border-color:var(--line);color:var(--ink)}body.theme-night .protocol-topic-chip{background:color-mix(in srgb,var(--blue) 18%,var(--card));color:var(--ink)}body.theme-night .protocol-result-excerpt,body.theme-night .protocol-search-status,body.theme-night .protocol-directory-group>summary{background:var(--soft);color:var(--ink)}
@media(max-width:760px){.protocol-search-form{grid-template-columns:1fr}.protocol-search-form .span-full{grid-column:1}.protocol-query>div{grid-template-columns:1fr}.protocol-result-heading,.protocol-directory-card{display:grid;grid-template-columns:1fr}.protocol-result-actions,.protocol-directory-actions{justify-content:stretch}.protocol-result-actions .button,.protocol-directory-actions .button{flex:1;text-align:center}.protocol-search-heading{display:grid}.protocol-search-heading>a{width:100%;text-align:center}.protocol-directory-group>summary{align-items:flex-start}.protocol-directory-group>summary small{white-space:nowrap}}

/* v83 compact centered schedule assignment bar and separate repeat/rotation dialog */
.schedule-editor-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin:14px 14px 0}.schedule-editor-intro .standard-slot-note{margin:0}.schedule-repeat-toolbar{display:grid;justify-items:center;gap:4px;min-width:160px}.schedule-repeat-toolbar .button{width:100%;white-space:nowrap}.schedule-repeat-toolbar small{color:var(--muted);font-size:.67rem;font-weight:800;text-align:center}.schedule-repeat-toolbar small.active{color:#0e6a45}.schedule-repeat-dialog{width:min(560px,calc(100vw - 24px));max-height:min(720px,calc(100dvh - 24px));padding:0;border:0;border-radius:15px;background:var(--card);color:var(--ink);box-shadow:0 24px 70px rgba(4,20,37,.36);overflow:hidden}.schedule-repeat-dialog::backdrop{background:rgba(4,19,34,.62);backdrop-filter:blur(2px)}.schedule-repeat-dialog-shell{display:grid;gap:16px;padding:20px;max-height:inherit;overflow:auto}.schedule-repeat-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.schedule-repeat-dialog h2,.schedule-repeat-dialog p{margin:0}.schedule-repeat-dialog .dialog-close{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:var(--soft);color:var(--ink);font-size:1.4rem;cursor:pointer}.schedule-repeat-selection{display:grid;grid-template-columns:1fr 1fr;gap:9px}.schedule-repeat-selection>span{display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.schedule-repeat-selection small{color:var(--muted);font-size:.67rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.schedule-repeat-selection strong{font-size:.8rem;line-height:1.4}.schedule-repeat-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.schedule-repeat-fields label{display:grid;gap:6px}.schedule-repeat-fields small{line-height:1.4}.schedule-repeat-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.schedule-repeat-dialog .notice.compact{margin:0;font-size:.76rem;line-height:1.5}.schedule-assignment-editor.editor-bottom-dock{left:calc(50% + 122px)!important;right:auto!important;transform:translateX(-50%);width:min(1080px,calc(100vw - 285px));max-height:min(46vh,430px)!important;border-radius:14px}.schedule-assignment-editor .editor-floating-row{display:flex;grid-template-columns:none!important;align-items:flex-end!important;gap:8px;flex-wrap:nowrap;padding:9px 11px}.schedule-assignment-editor .editor-selected-shift.compact{grid-column:auto!important;flex:1 1 205px}.schedule-assignment-editor .editor-personnel-dropdown{grid-column:auto!important;flex:1.25 1 245px}.schedule-assignment-editor .editor-floating-row>label:not(.editor-personnel-dropdown):not(.editor-notes-control){flex:0 0 100px}.schedule-assignment-editor .editor-floating-row [data-assignment-position-wrap]{display:grid;flex-basis:132px}.schedule-assignment-editor .editor-notes-control{display:grid;flex:1 1 115px}.schedule-assignment-editor .editor-add-save,.schedule-assignment-editor .editor-availability-toggle{grid-column:auto!important;flex:0 0 auto}.schedule-assignment-editor .editor-availability-drawer{max-height:205px}.hourly-editor-wrap{padding-bottom:115px!important}body.nav-right .schedule-assignment-editor.editor-bottom-dock{left:calc(50% - 122px)!important}body.nav-top .schedule-assignment-editor.editor-bottom-dock{left:50%!important;width:min(1080px,calc(100vw - 36px))}.theme-night .schedule-repeat-dialog,.theme-night .schedule-repeat-selection>span{background:var(--card);color:var(--ink);border-color:var(--line)}.theme-night .schedule-repeat-dialog .dialog-close{background:var(--soft);color:var(--ink);border-color:var(--line)}
@media(max-width:1400px) and (min-width:1101px){.schedule-assignment-editor .editor-floating-row{display:grid;grid-template-columns:100px 132px 128px minmax(150px,1fr) auto auto!important;align-items:start!important}.schedule-assignment-editor .editor-selected-shift.compact,.schedule-assignment-editor .editor-personnel-dropdown{grid-column:span 3!important;display:grid}.schedule-assignment-editor .editor-floating-row>label:not(.editor-personnel-dropdown):not(.editor-notes-control),.schedule-assignment-editor .editor-floating-row [data-assignment-position-wrap],.schedule-assignment-editor .editor-notes-control{grid-column:auto!important;min-width:0;display:grid;flex:none}.schedule-assignment-editor .editor-add-save,.schedule-assignment-editor .editor-availability-toggle{align-self:end}.schedule-assignment-editor .editor-notes-control{min-width:0}}
@media(max-width:1100px){.schedule-assignment-editor.editor-bottom-dock{position:static!important;inset:auto!important;transform:none!important;width:auto!important;max-height:none!important;margin:12px auto!important}.schedule-assignment-editor.editor-bottom-dock form{max-height:none!important}.schedule-assignment-editor .editor-floating-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:end!important}.schedule-assignment-editor .editor-selected-shift.compact,.schedule-assignment-editor .editor-personnel-dropdown{grid-column:span 2!important}.schedule-assignment-editor .editor-floating-row>label:not(.editor-personnel-dropdown):not(.editor-notes-control),.schedule-assignment-editor .editor-floating-row [data-assignment-position-wrap],.schedule-assignment-editor .editor-notes-control{min-width:0;display:grid;grid-column:auto;flex:none}.schedule-assignment-editor .editor-add-save,.schedule-assignment-editor .editor-availability-toggle{grid-column:span 2!important}.hourly-editor-wrap{padding-bottom:8px!important}}
@media(max-width:720px){.schedule-editor-intro{grid-template-columns:1fr;margin:10px 0 0}.schedule-repeat-toolbar{justify-items:stretch}.schedule-repeat-selection,.schedule-repeat-fields{grid-template-columns:1fr}.schedule-repeat-actions{display:grid;grid-template-columns:1fr}.schedule-repeat-actions .button{width:100%}.schedule-repeat-dialog-shell{padding:16px}.schedule-assignment-editor .editor-floating-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}.schedule-assignment-editor .editor-selected-shift.compact,.schedule-assignment-editor .editor-personnel-dropdown{grid-column:1/-1!important}.schedule-assignment-editor .editor-add-save,.schedule-assignment-editor .editor-availability-toggle{grid-column:span 1!important}}

/* v84 complete or partial shift trades and giveaways */
.trades-layout{grid-template-columns:minmax(410px,500px) minmax(0,1fr)}.trade-create-panel{border-top:5px solid #7c3f90}.trade-create-panel>.panel-heading{align-items:flex-start}.trade-create-panel form{gap:14px}.trade-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.trade-form-grid>label,.trade-scope-card label,.trade-return-fields>label{display:grid;gap:6px}.trade-form-grid small,.trade-scope-card small{color:var(--muted);line-height:1.4}.trade-offered-assignment,.trade-scope-card,.trade-return-fields,.trade-notes{grid-column:1/-1}.trade-scope-card{display:grid;grid-template-columns:1fr;gap:10px;margin:0;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--soft)}.trade-scope-card legend{padding:0 6px;color:var(--ink);font-size:.78rem;font-weight:900}.trade-partial-times{margin:0}.trade-return-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px}.trade-return-fields>.trade-scope-card{grid-column:1/-1}.trade-interval-summary{line-height:1.8}.trade-review-actions{align-items:stretch;flex-direction:column}.trade-review-actions .button{width:100%}.theme-night .trade-scope-card,.theme-night .trade-return-fields{background:var(--card);border-color:var(--line);color:var(--ink)}
@media(max-width:1150px){.trades-layout{grid-template-columns:1fr}.trade-create-panel{width:min(760px,100%);margin-inline:auto}}
@media(max-width:620px){.trade-form-grid,.trade-return-fields{grid-template-columns:1fr}.trade-form-grid>*,.trade-return-fields>*{grid-column:1!important}.trade-create-panel .panel-heading{display:grid}.trade-create-panel .panel-heading>.pill{justify-self:start}.trade-partial-times{grid-template-columns:1fr}.trade-create-panel button[type="submit"]{width:100%}}

/* v85 gap-free personal dashboard layout editor */
.dashboard-layout-toolbar{position:sticky;top:72px;z-index:28;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:12px 14px;border:1px solid #89b7e3;border-left:6px solid var(--blue);border-radius:11px;background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:0 10px 30px rgba(10,48,82,.16);backdrop-filter:blur(10px)}.dashboard-layout-toolbar[hidden]{display:none}.dashboard-layout-toolbar>div:first-child{display:grid;gap:2px}.dashboard-layout-toolbar small{color:var(--muted)}.dashboard-layout-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.dashboard-widget-library{display:grid;gap:9px}.dashboard-widget-library>article{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--card)}.dashboard-widget-library>article>div{display:grid;gap:3px}.dashboard-widget-library small{color:var(--muted)}.dashboard-widget-library .is-visible{opacity:.65}.dashboard-add-dialog{width:min(720px,calc(100vw - 24px))}.dashboard-widget-controls{gap:7px}.dashboard-widget-controls>strong{min-width:80px}.dashboard-widget-move-controls,.dashboard-widget-resize-controls{display:none;align-items:center;gap:4px}.dashboard-widget-resize-controls>[data-dashboard-size-label]{min-width:38px;text-align:center;font-size:11px;font-weight:850;color:var(--muted)}.dashboard-widget-remove{display:none!important;color:var(--red)!important}.dashboard-layout-editing .dashboard-widget-move-controls,.dashboard-layout-editing .dashboard-widget-resize-controls,.dashboard-layout-editing .dashboard-drag-handle{display:flex}.dashboard-layout-editing .dashboard-widget-remove{display:inline-flex!important}.dashboard-widget-collapsed .dashboard-widget-resize-controls{display:none}body .dashboard-user-layout .user-dashboard-widget[data-dashboard-size]{grid-column:span var(--user-widget-columns,12)!important}
@media(max-width:800px){body .dashboard-user-layout .user-dashboard-widget[data-dashboard-size]{grid-column:1/-1!important}}body.device-mobile .dashboard-user-layout .user-dashboard-widget[data-dashboard-size]{grid-column:1/-1!important}
@media(max-width:720px){.dashboard-layout-toolbar{position:static;align-items:stretch;flex-direction:column}.dashboard-layout-actions{display:grid;grid-template-columns:1fr 1fr}.dashboard-widget-library>article{align-items:stretch;flex-direction:column}.dashboard-layout-editing .dashboard-widget-move-controls,.dashboard-layout-editing .dashboard-widget-resize-controls{order:3}.dashboard-layout-editing .dashboard-widget-move-controls{flex:1 1 auto}}

/* v86 role scopes, notification alignment, email badge, and personnel night-mode contrast */
.nav-module-row>a{min-width:0}.nav-notification-badge{display:inline-grid!important;place-items:center;flex:0 0 auto;min-width:20px;height:20px;margin-left:auto;padding:0 5px;border-radius:999px;background:#f1b62f;color:#281c00!important;font-size:10px;font-weight:950;line-height:1}
.popover-heading{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.popover-heading>strong{min-width:0}.popover-heading-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:nowrap!important}.popover-heading-actions>a,.popover-text-button{width:auto!important;white-space:nowrap!important}.popover-heading-actions form,.notification-row>form{display:grid;place-items:center;margin:0}.popover-text-button{min-height:30px;padding:5px 6px!important;line-height:1.1!important}.notification-row{align-items:center!important}.notification-read-button{display:grid!important;place-items:center!important;min-width:32px!important;width:32px!important;height:32px!important;padding:0!important;line-height:1!important;text-align:center!important}.notification-read-button::first-line{line-height:1}.popover-close{flex:0 0 30px}
.schedule-view-only:disabled{cursor:not-allowed!important;opacity:.72!important;filter:saturate(.55)}.editor-shift-select.schedule-view-only:disabled{color:var(--muted)!important}.hourly-bar.schedule-view-only:disabled,.hourly-assignment-bar.schedule-view-only:disabled{pointer-events:none}.schedule-editor-intro>.notice{margin:0;max-width:460px}
body.theme-night .personnel-editor-form .panel,body.theme-night .personnel-bulk-toolbar,body.theme-night .personnel-section-toolbar,body.theme-night .personnel-save-bar,body.theme-night .account-admin-panel,body.theme-night .pto-profile-panel{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}
body.theme-night .account-status-grid>div,body.theme-night .account-options,body.theme-night .permission-note,body.theme-night .personnel-editor-form .credential-card,body.theme-night .personnel-editor-form .profile-summary-card,body.theme-night .personnel-editor-form .settings-callout{background:var(--panel-soft,var(--card))!important;color:var(--ink)!important;border-color:var(--line)!important}
body.theme-night .account-status-grid span,body.theme-night .personnel-editor-form small,body.theme-night .personnel-editor-form .muted{color:var(--muted)!important}body.theme-night .personnel-editor-form h2,body.theme-night .personnel-editor-form h3,body.theme-night .personnel-editor-form label,body.theme-night .personnel-editor-form strong{color:var(--ink)!important}
body.theme-night .database-tabs a{background:var(--panel-soft,var(--card))!important;color:#dcecff!important;border-color:var(--line)!important}body.theme-night .database-tabs a:hover{background:#204261!important;border-color:#6d91b2!important}body.theme-night .database-tabs a.active{background:var(--blue)!important;color:#fff!important;border-color:#82baff!important}body.theme-night .database-tabs a span{background:#284964!important;color:#fff!important}body.theme-night .database-tabs a.active span{background:rgba(255,255,255,.24)!important}
body.theme-night .personnel-select-circle{background:var(--panel-soft,var(--card))!important;border-color:#8faac2!important}body.theme-night .personnel-select-circle:checked{background:var(--blue)!important;border-color:#9bc7ef!important}
@media(max-width:520px){.popover-heading{gap:5px;padding-inline:6px}.popover-heading-actions{gap:2px!important}.popover-heading-actions>a,.popover-text-button{font-size:10px!important;padding-inline:3px!important}.popover-close{width:28px!important;height:28px!important;flex-basis:28px}.schedule-editor-intro>.notice{max-width:none}}

/* v87 moved 24-hour schedule control — keeps compact assignment fields aligned */
.schedule-repeat-toolbar{min-width:min(370px,100%);align-content:center}.schedule-editor-option-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%}.schedule-repeat-toolbar .schedule-editor-option-buttons .button{width:auto;min-width:0}.schedule-full-day-hint{max-width:370px;line-height:1.35}.schedule-repeat-toolbar button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:720px){.schedule-editor-option-buttons{grid-template-columns:1fr}.schedule-repeat-toolbar{min-width:0}.schedule-full-day-hint{max-width:none}}

/* v90 rich announcements/news and dashboard-safe content containment */
.dashboard-user-layout,.custom-dashboard-layout,.dashboard-grid,.user-dashboard-widget,.custom-dashboard-layout>*,.dashboard-news-widget,.dashboard-announcements-widget,.announcement-list,.dashboard-news-feed,.announcement,.dashboard-news-post{min-width:0;max-width:100%}
.user-dashboard-widget,.custom-dashboard-layout>*{overflow:hidden}
.announcement,.dashboard-news-post{box-sizing:border-box;overflow:hidden;overflow-wrap:anywhere;word-break:break-word}
.announcement h3,.dashboard-news-post h3,.dashboard-rich-content,.dashboard-news-body{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}
.dashboard-rich-content a,.dashboard-news-body a,.announcement a{display:inline;max-width:100%;overflow-wrap:anywhere;word-break:break-all}
.dashboard-rich-content img,.dashboard-rich-content video,.dashboard-inserted-content img,.dashboard-inserted-content video{display:block;width:auto;max-width:100%;height:auto;max-height:520px;object-fit:contain;margin:12px 0;border-radius:9px;background:#08111c}
.dashboard-rich-content video,.dashboard-inserted-content video{width:100%}
.dashboard-rich-content pre,.dashboard-rich-content table{display:block;max-width:100%;overflow:auto}.dashboard-rich-content code{overflow-wrap:anywhere;white-space:pre-wrap}
.dashboard-content-attachment{display:flex;min-width:0;max-width:100%;margin:10px 0}.dashboard-content-attachment a{display:inline-flex;align-items:center;min-width:0;max-width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--soft);font-weight:800;text-decoration:none;overflow-wrap:anywhere;word-break:break-word}.dashboard-content-attachment a:hover{border-color:var(--blue);background:color-mix(in srgb,var(--blue) 8%,var(--soft))}
.dashboard-post-toolbar{align-items:center;flex-wrap:wrap}.dashboard-post-toolbar>button,.dashboard-content-upload-button{display:inline-flex;align-items:center;justify-content:center;min-height:31px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink);padding:5px 8px;font-size:.75rem;font-weight:850;cursor:pointer}.dashboard-content-upload-button:hover,.dashboard-post-toolbar>button:hover{border-color:var(--blue);background:var(--soft)}.dashboard-content-upload-button input{position:absolute;width:1px!important;height:1px!important;opacity:0;pointer-events:none}
.rich-editor-field{display:grid;min-width:0}.rich-editor-label{display:block;margin-bottom:6px;color:var(--ink);font-size:.78rem;font-weight:850}.rich-editor-field>small{display:block;margin-top:5px;color:var(--muted)}
.dashboard-post-rich:empty:before{content:'Write the announcement or update here…';color:var(--muted);pointer-events:none}.dashboard-post-rich:focus{outline:3px solid color-mix(in srgb,var(--blue) 25%,transparent);outline-offset:1px}
body.theme-night .dashboard-content-attachment a,body.theme-night .dashboard-post-toolbar>button,body.theme-night .dashboard-content-upload-button{background:var(--card);color:var(--ink);border-color:var(--line)}
@media(max-width:620px){.dashboard-post-toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-post-toolbar>button,.dashboard-content-upload-button{width:100%;min-width:0}.dashboard-content-upload-button{grid-column:span 2}.dashboard-rich-content img,.dashboard-rich-content video{max-height:360px}}

/* v88 messaging search, structured attendance, military time, and viewport-safe navigation */
.military-time-input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums;letter-spacing:.04em}
.recipient-search-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:8px;align-items:center;margin:0 0 10px}.recipient-search-field{min-width:0}.recipient-search-field input{width:100%}.recipient-search-toolbar>[data-recipient-search-status]{grid-column:1/-1;color:var(--muted);font-weight:750}.message-recipient-row[hidden]{display:none!important}
.employee-attendance-filters{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:10px;align-items:end}.employee-attendance-filters label{display:grid;gap:5px}.employee-attendance-filters .filter-actions{display:flex;gap:7px;grid-column:1/-1}.attendance-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin:0 0 16px}.attendance-summary-grid article{display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:10px;background:var(--card)}.attendance-summary-grid article.success{border-left-color:#168256}.attendance-summary-grid article.warning{border-left-color:#b88400}.attendance-summary-grid article.danger{border-left-color:var(--red)}.attendance-summary-grid article.info{border-left-color:#2c78bb}.attendance-summary-grid span{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.attendance-summary-grid strong{font-size:1.55rem}.attendance-entry-fields{border:1px solid var(--line);border-radius:11px;background:var(--soft);padding:14px}.attendance-entry-fields legend{padding:0 7px;font-weight:900}.attendance-entry-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.attendance-entry-grid>label{display:grid;gap:5px}.attendance-entry-grid .attendance-excused-check{align-self:end;min-height:43px;display:flex}.attendance-tracker-table td{vertical-align:top}.attendance-tracker-table td:last-child{min-width:220px;white-space:normal}body.theme-night .attendance-entry-fields,body.theme-night .attendance-summary-grid article{background:var(--card);color:var(--ink);border-color:var(--line)}

.topbar{min-width:0;max-width:100vw;box-sizing:border-box}.topbar .brand{min-width:0;max-width:min(340px,32vw);flex:0 1 auto}.topbar .brand>span{min-width:0}.topbar .brand strong,.topbar .brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-spacer{min-width:4px}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:0;flex:0 0 auto}.topbar-user-menu-wrap,.topbar-popover-wrap,.quick-theme-form,.support-ticket-button{flex:0 0 auto}.topbar-user{max-width:250px}.topbar-user .user-text{min-width:0}.topbar-user .user-text strong,.topbar-user .user-text small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell,.content{min-width:0}body.nav-top .sidebar{max-width:100vw;box-sizing:border-box}body.nav-top .module-nav{min-width:0;overflow-x:auto;overflow-y:visible;scrollbar-width:thin;overscroll-behavior-inline:contain;padding-bottom:2px}body.nav-top .module-nav>[data-nav-id]{flex:0 0 auto}
@media(max-width:1180px){.topbar-datetime{display:none}.topbar .brand{max-width:260px}}
@media(max-width:980px){.topbar{padding-inline:12px}.topbar .brand{max-width:205px}.topbar .brand small{display:none}.topbar-actions{gap:6px}.topbar-user{max-width:205px}}
@media(max-width:900px){
  .menu-button,body.nav-top .menu-button{display:block!important;flex:0 0 auto}
  body.nav-top .app-shell,body.nav-right .app-shell{display:block!important}
  body.nav-top .sidebar,body.nav-left .sidebar,body.nav-right .sidebar{position:fixed!important;top:70px!important;bottom:0!important;left:0!important;right:auto!important;width:min(320px,90vw)!important;height:calc(100dvh - 70px)!important;max-height:none!important;padding:18px 12px!important;z-index:180!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;overflow:auto!important;transform:translateX(-110%)!important;transition:transform .2s!important}
  body.nav-right .sidebar{left:auto!important;right:0!important;transform:translateX(110%)!important}
  body.nav-top .sidebar.open,body.nav-left .sidebar.open,body.nav-right .sidebar.open{transform:translateX(0)!important}
  body.nav-top .module-nav,body.nav-left .module-nav,body.nav-right .module-nav{display:grid!important;width:100%!important;min-width:0!important;overflow:visible!important}
  body.nav-top .sidebar-branding,body.nav-top .sidebar-footer,body.nav-top .nav-heading{display:flex!important}
  body.nav-top .nav-module,body.nav-top .nav-single{white-space:normal}
  body.nav-top .nav-module-row,body.nav-left .nav-module-row,body.nav-right .nav-module-row{grid-template-columns:minmax(0,1fr) 36px!important}
  body.nav-top .nav-module-row>a,body.nav-top .nav-single{padding:12px 10px!important}
}
@media(max-width:680px){.topbar .brand>span{display:none}.topbar .brand{max-width:48px}.topbar-user .user-text{display:none}.topbar-user{padding-inline:3px}.topbar-actions{gap:4px}.topbar-icon-button{width:38px;height:38px}.topbar{gap:6px}}
@media(max-width:470px){.support-ticket-button{display:none}.topbar{padding-inline:7px}.topbar .brand-logo{width:38px;height:38px}.topbar-popover{max-width:calc(100vw - 16px)}}
@media(max-width:900px){.employee-attendance-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.attendance-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.recipient-search-toolbar,.employee-attendance-filters,.attendance-summary-grid,.attendance-entry-grid{grid-template-columns:1fr}.recipient-search-toolbar .button{width:100%}.employee-attendance-filters .filter-actions{display:grid}.attendance-tracker-panel .table-wrap{max-height:70vh}}

/* v89 month quick edit, schedule color bands, and Microsoft 365 OAuth2 */
.calendar-entry.open.schedule-position-entry{color:#7c25a8!important;font-weight:900}.calendar-group-label[data-schedule-group="Volunteer Operations"]{margin:7px -3px 3px;padding:3px 5px;border-radius:4px;background:#a51d2d;color:#fff!important;text-decoration:none}.calendar-group-label[data-schedule-group="Admin"]{margin:7px -3px 3px;padding:3px 5px;border-radius:4px;background:#d6a516;color:#241b00!important;text-decoration:none}.calendar-entry[data-month-quick-edit]{cursor:context-menu}.calendar-entry.quick-edit-selected{outline:2px solid #7c25a8;outline-offset:1px;border-radius:3px}
body.theme-night .calendar-entry.open.schedule-position-entry{color:#e4b6ff!important}body.theme-night .calendar-group-label[data-schedule-group="Volunteer Operations"]{background:#b52a3b;color:#fff!important}body.theme-night .calendar-group-label[data-schedule-group="Admin"]{background:#e0b52f;color:#171200!important}

/* v103 member self-service attachments */
.personnel-attachment-form{align-items:end}.personnel-attachment-form label{min-width:210px}
@media(max-width:760px){.personnel-attachment-form{display:grid}.personnel-attachment-form label,.personnel-attachment-form .button{width:100%;min-width:0}}

/* v92 weekly ambulance rotation */
.schedule-apparatus-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px;background:var(--surface-soft,#eef3f7);border:1px solid var(--border,#cbd5df);border-radius:10px;margin:0 0 10px}.schedule-apparatus-strip>strong{margin-right:3px}.schedule-apparatus-badge{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:3px 7px;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:rgba(4,30,50,.16);color:inherit;font-size:.73rem;font-weight:800;line-height:1.15;white-space:nowrap}.schedule-apparatus-badge b{text-transform:uppercase;letter-spacing:.035em}.calendar-group-label{display:flex;align-items:center;justify-content:space-between;gap:5px;min-width:0}.calendar-group-label>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}.calendar-group-label .schedule-apparatus-badge{font-size:.64rem;background:rgba(0,0,0,.2)}.hourly-group-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.hourly-group-title .schedule-apparatus-badge{margin-left:auto;background:rgba(0,0,0,.13)}
.apparatus-rotation-overview{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.apparatus-rotation-overview p{max-width:850px;margin-bottom:0}.apparatus-response-legend{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.apparatus-response-legend .schedule-apparatus-badge{background:#e8eef4;color:#122436;border-color:#c4d0db}.apparatus-response-legend .group-volunteer{background:#f9e5e8;color:#741523;border-color:#e5b5bc}.apparatus-response-legend .group-extra{background:#eee8fb;color:#4c2879;border-color:#cfc0ec}.apparatus-response-legend .group-admin{background:#fff2bd;color:#514000;border-color:#e6cf73}
.apparatus-week-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0;padding:10px 12px;border:1px solid var(--border,#cbd5df);border-radius:10px;background:var(--surface,#fff)}.apparatus-week-toolbar>div{display:grid;gap:2px;min-width:280px}.apparatus-week-toolbar>div span{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted,#617181);font-weight:800}.apparatus-week-picker{margin-left:auto}.apparatus-week-picker label{display:flex;align-items:center;gap:7px;font-size:.78rem}.apparatus-week-picker input{width:auto}
.apparatus-rotation-grid{display:grid;grid-template-columns:repeat(7,minmax(210px,1fr));gap:10px;overflow-x:auto;padding:2px 2px 12px}.apparatus-day-card{min-width:210px;border:1px solid var(--border,#cbd5df);border-radius:12px;background:var(--surface,#fff);overflow:hidden;box-shadow:0 2px 8px rgba(15,35,55,.06)}.apparatus-day-card.today{outline:3px solid #2d75bd;outline-offset:1px}.apparatus-day-card>header{display:grid;gap:2px;padding:11px 12px;background:#123a5c;color:#fff}.apparatus-day-card>header span{text-transform:uppercase;letter-spacing:.06em;font-size:.76rem;font-weight:800}.apparatus-group-choice{display:grid!important;grid-template-columns:minmax(72px,.7fr) minmax(110px,1.3fr);align-items:center;gap:7px;padding:9px 10px;margin:0!important;border-top:1px solid var(--border,#d7dfe6)}.apparatus-group-choice>span{display:grid;gap:1px}.apparatus-group-choice>span b{font-size:.78rem}.apparatus-group-choice>span small{font-size:.67rem;line-height:1.15}.apparatus-group-choice select{min-width:0;width:100%;padding:7px 5px}.apparatus-group-choice.group-paid{border-left:5px solid #166394}.apparatus-group-choice.group-volunteer{border-left:5px solid #a51d2d}.apparatus-group-choice.group-extra{border-left:5px solid #70439d}.apparatus-group-choice.group-admin{border-left:5px solid #d6a516}.apparatus-rotation-savebar{position:sticky;bottom:8px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid #9eb4c6;border-radius:12px;background:rgba(255,255,255,.97);box-shadow:0 8px 24px rgba(13,35,55,.18)}.apparatus-rotation-savebar>div{display:flex;gap:8px;flex-wrap:wrap}
body.theme-night .schedule-apparatus-strip,body.theme-night .apparatus-week-toolbar,body.theme-night .apparatus-day-card{background:#17232d;color:#f0f6fb;border-color:#40515f}body.theme-night .apparatus-response-legend .schedule-apparatus-badge{background:#273847;color:#edf6ff;border-color:#526778}body.theme-night .apparatus-group-choice{border-top-color:#40515f}body.theme-night .apparatus-group-choice select{background:#101b24;color:#fff;border-color:#536675}body.theme-night .apparatus-rotation-savebar{background:rgba(20,31,40,.98);color:#f0f6fb;border-color:#526778}.theme-night .schedule-apparatus-badge{color:#fff}.theme-night .calendar-group-label[data-schedule-group="Admin"] .schedule-apparatus-badge{color:#171200}
@media(max-width:900px){.apparatus-rotation-overview{display:grid}.apparatus-response-legend{justify-content:flex-start}.apparatus-rotation-grid{grid-template-columns:repeat(7,minmax(230px,1fr))}.apparatus-week-picker{margin-left:0}.apparatus-rotation-savebar{align-items:stretch;flex-direction:column}.apparatus-rotation-savebar>div{display:grid}.calendar-group-label{align-items:flex-start;flex-direction:column}.calendar-group-label .schedule-apparatus-badge{white-space:normal}.schedule-apparatus-strip{align-items:flex-start}.schedule-apparatus-strip>strong{width:100%}}

/* v93 first-day apparatus auto-fill */
.apparatus-autofill-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0;padding:14px 16px;border:1px solid #9fc5e1;border-left:5px solid #17689a;border-radius:12px;background:#eef7fd}.apparatus-autofill-panel>div{display:grid;gap:4px}.apparatus-autofill-panel p{margin:0;max-width:850px}.apparatus-autofill-panel .button{flex:0 0 auto}.apparatus-group-choice.apparatus-choice-autofilled{animation:apparatus-autofill-flash .9s ease}@keyframes apparatus-autofill-flash{0%,100%{box-shadow:none}30%{box-shadow:0 0 0 3px rgba(23,104,154,.28);background:#e8f5fc}}body.theme-night .apparatus-autofill-panel{background:#142b3b;border-color:#396c8c;color:#f1f7fb}body.theme-night .apparatus-autofill-panel .muted{color:#c7d8e4}@media(max-width:800px){.apparatus-autofill-panel{align-items:stretch;flex-direction:column}.apparatus-autofill-panel .button{width:100%;white-space:normal}}
.month-quick-edit-menu{position:fixed;z-index:340;min-width:200px;padding:6px;border:1px solid var(--line);border-radius:9px;background:var(--card);box-shadow:0 16px 38px rgba(3,18,31,.28)}.month-quick-edit-menu[hidden]{display:none}.month-quick-edit-menu button{width:100%;padding:9px 11px;border:0;border-radius:6px;background:transparent;color:var(--ink);font-weight:850;text-align:left;cursor:pointer}.month-quick-edit-menu button:hover,.month-quick-edit-menu button:focus-visible{background:var(--blue);color:#fff}.month-quick-edit-dialog{width:min(540px,calc(100vw - 24px));padding:0;border:0;border-radius:14px;background:var(--card);color:var(--ink);box-shadow:0 26px 75px rgba(3,18,31,.42)}.month-quick-edit-dialog::backdrop{background:rgba(3,18,31,.62);backdrop-filter:blur(2px)}.month-quick-edit-dialog form{display:grid;gap:15px;padding:20px}.month-quick-edit-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.month-quick-edit-dialog h2,.month-quick-edit-dialog p{margin:0}.month-quick-edit-dialog .dialog-close{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:var(--soft);color:var(--ink);font-size:1.35rem;cursor:pointer}.month-quick-edit-dialog label,.month-quick-edit-summary{display:grid;gap:6px}.month-quick-edit-summary{padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.month-quick-edit-summary>strong{font-size:.95rem}.month-quick-edit-summary>span{font-size:.78rem}.month-quick-edit-dialog .form-actions{margin:0}
.oauth-connection-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--line);border-left:5px solid #1668c7;border-radius:10px;background:var(--soft)}.oauth-connection-card>div{display:grid;gap:4px}.oauth-connection-card small{color:var(--muted);line-height:1.45}.oauth-connection-card[hidden]{display:none}.inline-form{margin-top:12px}
.repeat-weekday-field{margin:0;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.repeat-weekday-field legend{padding:0 6px;color:var(--ink);font-weight:900}.repeat-weekday-field>small{display:block;margin-top:7px;color:var(--muted);line-height:1.4}.repeat-weekday-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.repeat-weekday-grid label{display:flex!important;align-items:center;justify-content:center;gap:4px;min-height:38px;padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--card);font-size:.75rem;font-weight:850}.repeat-weekday-grid input{width:auto}
body.theme-night .month-quick-edit-menu,body.theme-night .month-quick-edit-dialog,body.theme-night .month-quick-edit-summary,body.theme-night .oauth-connection-card{background:var(--card);color:var(--ink);border-color:var(--line)}
@media(max-width:620px){.month-quick-edit-dialog form{padding:15px}.month-quick-edit-dialog .form-actions{display:grid}.month-quick-edit-dialog .button{width:100%}.oauth-connection-card{align-items:flex-start;flex-direction:column}.repeat-weekday-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
