:root{--bg:#f5f7fb;--card:#fff;--ink:#152033;--muted:#6b778d;--line:#e5e9f1;--brand-primary:#2F6FED;--brand-accent:#1B9A69;--brand-on-primary:#fff;--brand-on-accent:#fff;--brand-primary-soft:#edf3ff;--brand-accent-soft:#eaf8f2;--brand-primary-fill:var(--brand-primary);--brand-accent-fill:var(--brand-accent);--blue:var(--brand-primary);--blue-soft:var(--brand-primary-soft);--green:var(--brand-accent);--green-soft:var(--brand-accent-soft);--red:#d84c4c;--red-soft:#fff0f0;--shadow:0 12px 36px rgba(25,40,70,.08);--radius:18px}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--app-font,"Avenir Next",Avenir,"Segoe UI Variable","Segoe UI",sans-serif);color:var(--ink);background:var(--bg)}button,input,select{font:inherit}.hidden{display:none!important}.muted{color:var(--muted)}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 15%,#eef4ff 0,transparent 30%),radial-gradient(circle at 85% 85%,#eefaf4 0,transparent 28%),#f8fafc}.auth-card{width:min(430px,100%);background:var(--card);padding:34px;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.brand-mark{font-weight:900;letter-spacing:-4px;font-size:48px;line-height:1}.brand-mark.small{font-size:30px;letter-spacing:-2px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:800;color:#7e8aa0;margin-top:13px}.login-workforce-title{width:max-content;max-width:100%;position:relative;left:50%;transform:translateX(-50%);text-align:center;margin-left:0;margin-right:0;padding-left:0;padding-right:0}.auth-card h1{font-size:30px;margin:8px 0}.auth-card form{display:grid;gap:16px;margin-top:25px}label{font-size:13px;font-weight:750;color:#39465d;display:grid;gap:7px}input,select{width:100%;border:1px solid #d9deea;background:#fff;border-radius:12px;padding:13px 14px;color:var(--ink);outline:none}input:focus,select:focus{border-color:#8eb0f6;box-shadow:0 0 0 3px rgba(47,111,237,.10)}.btn{border:0;border-radius:12px;padding:12px 15px;font-weight:800;cursor:pointer}.btn.primary{background:var(--brand-primary-fill,var(--blue));color:var(--brand-on-primary,#fff)}.btn.success{background:var(--brand-accent-fill,var(--green));color:var(--brand-on-accent,#fff)}.btn.danger{background:var(--red);color:#fff}.btn.ghost{background:#f2f5fa;color:#40506a}.btn.full{width:100%}.error{background:var(--red-soft);color:#a72d2d;padding:10px 12px;border-radius:10px;margin-top:14px;font-size:13px}
.app-shell{min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--line);padding:22px 16px;display:flex;flex-direction:column}.brand-row{display:flex;gap:10px;align-items:center;padding:3px 8px 22px}.brand-row strong,.brand-row span{display:block}.brand-row span{font-size:11px;color:var(--muted);margin-top:2px}.nav-list{display:grid;gap:5px}.nav-btn{width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:11px 12px;border:0;border-radius:10px;background:transparent;color:#516078;font-weight:750;cursor:pointer}.nav-btn.active{background:var(--blue-soft);color:var(--blue)}.nav-icon{width:22px;text-align:center}.sidebar-foot{margin-top:auto}.org-name{font-size:12px;color:var(--muted);padding:0 7px 12px;line-height:1.4}.content-shell{min-width:0}.topbar{height:82px;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5}.topbar .eyebrow{margin:0}.topbar h2{margin:3px 0 0;font-size:22px}.user-chip{display:flex;gap:10px;align-items:center}.user-chip>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#eaf0ff;color:#2457b9;font-weight:900}.user-chip b,.user-chip small{display:block}.user-chip small{color:var(--muted);font-size:11px;margin-top:2px}.content{padding:28px;max-width:1400px;margin:0 auto}.mobile-nav{display:none}
.grid{display:grid;gap:18px}.grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 8px 24px rgba(30,45,75,.04)}.stat-label{font-size:12px;color:var(--muted);font-weight:750}.stat-value{font-size:30px;font-weight:900;margin-top:7px}.stat-note{font-size:11px;color:#8a95a8;margin-top:4px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:28px 0 12px}.section-head h3{margin:0;font-size:17px}.table-card{overflow:auto;padding:0}.data-table{width:100%;border-collapse:collapse;min-width:650px}.data-table th,.data-table td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);font-size:13px}.data-table th{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7d899d;background:#fafbfd}.badge{display:inline-block;padding:5px 8px;border-radius:8px;font-size:11px;font-weight:850}.badge.green{background:var(--green-soft);color:#13764f}.badge.blue{background:var(--blue-soft);color:#285cb8}.badge.gray{background:#f1f3f6;color:#68758a}.split{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.form-card form{display:grid;gap:14px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.empty{padding:32px;text-align:center;color:var(--muted)}.clock-card{text-align:center;padding:28px}.clock-time{font-size:44px;font-weight:900;letter-spacing:-2px}.clock-status{margin:8px 0 22px}.clock-actions{display:flex;gap:10px;justify-content:center}.clock-actions .btn{min-width:130px}.tenant-banner{display:flex;justify-content:space-between;gap:16px;align-items:center;background:#f8fbff;border:1px solid #dfeaff;border-radius:15px;padding:15px 17px;margin-bottom:18px}.tenant-banner strong{display:block}.tenant-banner small{color:var(--muted)}.toast{position:fixed;right:20px;bottom:20px;z-index:50;background:#172238;color:white;padding:12px 15px;border-radius:11px;box-shadow:var(--shadow);font-size:13px}.role-note{font-size:12px;background:#f7f9fc;border:1px solid var(--line);border-radius:12px;padding:12px 14px;color:#607087}
@media(max-width:1000px){.grid.stats{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}}
@media(max-width:760px){.app-shell{display:block;padding-bottom:72px}.sidebar{display:none}.topbar{height:72px;padding:0 16px}.user-chip div{display:none}.content{padding:16px}.grid.stats{grid-template-columns:1fr 1fr;gap:10px}.card{border-radius:15px;padding:16px}.stat-value{font-size:25px}.mobile-nav{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;position:fixed;left:0;right:0;bottom:0;height:64px;background:#fff;border-top:1px solid var(--line);z-index:20}.mobile-nav .nav-btn{display:grid;place-items:center;gap:1px;border-radius:0;padding:5px;font-size:10px}.mobile-nav .nav-icon{font-size:18px}.section-head{margin-top:22px}.clock-time{font-size:38px}.clock-actions{display:grid}.clock-actions .btn{width:100%}.two-col{grid-template-columns:1fr}.auth-card{padding:25px}.tenant-banner{align-items:flex-start;flex-direction:column}}
/* v0.2 interaction additions */
.account-wrap{position:relative}.account-btn{border:0;background:transparent;padding:5px 8px;border-radius:12px;cursor:pointer;color:inherit}.account-btn:hover{background:#f5f7fb}.account-caret{width:auto!important;height:auto!important;background:transparent!important;color:#7b879b!important;font-size:15px!important}.account-menu{position:absolute;right:0;top:54px;width:240px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:8px;z-index:40}.account-menu-head{padding:10px 11px;border-bottom:1px solid var(--line);margin-bottom:6px}.account-menu-head b,.account-menu-head small{display:block}.account-menu-head small{font-size:11px;color:var(--muted);margin-top:3px;overflow:hidden;text-overflow:ellipsis}.menu-action{width:100%;border:0;background:transparent;text-align:left;padding:11px;border-radius:9px;cursor:pointer;font-weight:800;color:#b43b3b}.menu-action:hover{background:var(--red-soft)}
.btn.compact{padding:8px 11px;font-size:12px}.wide-left{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr)}.row-actions{display:flex;gap:7px;justify-content:flex-end}.mini-btn{border:1px solid #dfe4ed;background:#fff;color:#42516a;padding:7px 9px;border-radius:8px;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}.mini-btn:hover{background:#f6f8fb}.mini-btn.warn{color:#b44343;border-color:#f0d4d4}.section-sub{margin:4px 0 0;font-size:12px;color:var(--muted)}.clock-location{max-width:420px;margin:0 auto 14px;text-align:left}
.modal-backdrop{position:fixed;inset:0;background:rgba(18,28,44,.38);display:grid;place-items:center;padding:20px;z-index:100}.modal-card{width:min(520px,100%);max-height:90vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 70px rgba(20,30,50,.22);padding:20px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:16px}.modal-head h3{margin:0;font-size:18px}.modal-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.icon-btn{border:0;background:#f2f5f9;border-radius:9px;width:34px;height:34px;cursor:pointer;font-size:20px;line-height:1}.modal-form{display:grid;gap:14px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}
@media(max-width:1000px){.wide-left{grid-template-columns:1fr}}
@media(max-width:760px){.topbar .account-btn>div{display:none}.account-caret{display:none}.account-menu{right:0;top:48px;width:min(260px,calc(100vw - 32px))}.row-actions{justify-content:flex-start;flex-wrap:wrap}.modal-backdrop{align-items:end;padding:0}.modal-card{width:100%;border-radius:18px 18px 0 0;max-height:88vh}.modal-actions{display:grid;grid-template-columns:1fr 1fr}.modal-actions .btn{width:100%}}

.attendance-tools{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.live-state{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;color:#13764f;white-space:nowrap}.live-dot{width:7px;height:7px;border-radius:50%;background:#21a56f;box-shadow:0 0 0 3px rgba(33,165,111,.10)}.live-state.stale{color:#9b6a17}.live-state.stale .live-dot{background:#d49a32}.section-sub{margin:4px 0 0;color:var(--muted);font-size:12px}@media(max-width:760px){.section-head{align-items:flex-start}.attendance-tools{justify-content:flex-start}.attendance-tools .mini-btn{padding:7px 9px}}

/* v0.4 scheduling and employee home */
.personal-hero{display:flex;justify-content:space-between;gap:18px;align-items:center;background:linear-gradient(135deg,#f8fbff,#fff)}.personal-hero .eyebrow{margin:0}.personal-hero h3{font-size:24px;margin:6px 0 5px}.personal-hero p{margin:0;color:var(--muted);font-size:13px}.personal-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px}.personal-value{font-size:27px}.personal-shift{font-weight:900;font-size:19px;margin-top:8px;line-height:1.25}.personal-shift.small{font-size:15px;min-height:48px}.quick-actions{display:flex;gap:10px;margin-top:16px}.quick-actions .btn{min-width:130px}.btn:disabled{opacity:.45;cursor:not-allowed}.schedule-mobile-note{display:none}
@media(max-width:900px){.personal-stats{grid-template-columns:1fr 1fr}.personal-stats .card:last-child{grid-column:1/-1}}
@media(max-width:760px){.personal-hero{align-items:flex-start}.personal-hero h3{font-size:21px}.personal-stats{grid-template-columns:1fr 1fr;gap:10px}.personal-stats .card:last-child{grid-column:1/-1}.quick-actions{display:grid;grid-template-columns:1fr 1fr}.quick-actions .btn{min-width:0}.mobile-nav{overflow-x:auto;grid-auto-columns:minmax(62px,1fr)}.data-table th,.data-table td{padding:12px 13px}}

/* v0.5 live employee home, password reset and navigation */
.employee-home-live{display:flex;justify-content:flex-end;margin:0 0 9px}.navigate-link{display:inline-flex;align-items:center;gap:5px;margin-top:9px;color:#285cb8;text-decoration:none;font-size:11px;font-weight:850}.navigate-link:hover{text-decoration:underline}.optional{font-size:10px;font-weight:700;color:var(--muted);margin-left:4px}.password-reset-box{border:1px solid #dfe7f5;background:#f8fbff;border-radius:12px;padding:12px}.field-help{font-size:11px;line-height:1.45;color:var(--muted);margin-top:7px}
@media(max-width:760px){.employee-home-live{justify-content:flex-start}.navigate-link{padding:3px 0}}
/* v0.7 simplified address-only locations */
textarea{width:100%;border:1px solid #dce2eb;border-radius:10px;padding:11px 12px;font:inherit;color:inherit;background:#fff;resize:vertical;min-height:88px}.address-cell{white-space:normal;min-width:240px;line-height:1.4}

/* v0.8 messaging */
.message-layout{display:grid;grid-template-columns:minmax(250px,330px) minmax(0,1fr);gap:18px;height:calc(100vh - 138px);min-height:520px;transition:grid-template-columns .18s ease}.message-layout.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr);gap:0}.message-layout.sidebar-collapsed .message-sidebar{visibility:hidden;opacity:0;pointer-events:none}.message-sidebar,.message-thread{padding:0;overflow:hidden}.message-sidebar{display:flex;flex-direction:column;min-width:0;transition:opacity .15s ease}.message-sidebar-head{padding:14px 14px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.message-sidebar-head h3{margin:0;font-size:17px}.message-sidebar-head p{margin:4px 0 0;font-size:11px;color:var(--muted)}.message-sidebar-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.message-contacts{overflow:auto;min-height:0;overscroll-behavior:contain}.message-contact{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;padding:12px 14px;display:flex;gap:10px;text-align:left;cursor:pointer;color:inherit}.message-contact:hover{background:#fafbfd}.message-contact.active{background:var(--blue-soft)}.message-avatar{width:38px;height:38px;min-width:38px;border-radius:50%;display:grid;place-items:center;background:#eaf0ff;color:#285cb8;font-size:12px;font-weight:900}.message-contact-copy{min-width:0;display:grid;gap:2px;flex:1}.message-contact-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.message-contact-top b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-contact-copy small{font-size:10px;color:var(--muted)}.message-preview{font-size:11px;color:#6b778d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-unread{min-width:20px;height:20px;padding:0 6px;border-radius:10px;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:10px;font-weight:900}.message-thread{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0}.message-thread-head{min-height:66px;padding:11px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.message-thread-head>b,.message-thread-head small{display:block}.message-thread-head small{font-size:11px;color:var(--muted);margin-top:3px}.message-thread-left,.message-head-actions{display:flex;align-items:center;gap:10px;min-width:0}.message-thread-person{display:flex;align-items:center;gap:10px;min-width:0}.message-thread-person b,.message-thread-person small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-thread-person small{font-size:10px;color:var(--muted);margin-top:2px}.message-back{display:none;width:34px;height:34px;border:1px solid var(--line);background:#fff;border-radius:8px;font-size:24px;line-height:1;color:var(--ink);cursor:pointer}.message-thread-body{overflow:auto;padding:18px;background:#f8fafd;display:flex;flex-direction:column;gap:8px;overscroll-behavior:contain}.message-row{display:flex}.message-row.mine{justify-content:flex-end}.message-bubble{max-width:min(76%,620px);padding:10px 12px;border-radius:14px;background:#fff;border:1px solid var(--line);font-size:13px;line-height:1.45;box-shadow:0 3px 9px rgba(30,45,75,.03)}.message-row.mine .message-bubble{background:var(--blue);border-color:var(--blue);color:#fff}.message-bubble small{display:block;margin-top:5px;font-size:9px;color:#8a95a8}.message-row.mine .message-bubble small{color:rgba(255,255,255,.75)}.message-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px;border-top:1px solid var(--line);background:#fff}.message-composer textarea{min-height:48px;max-height:120px;margin:0}.message-composer .btn{align-self:end;min-width:78px}.compact-empty{padding:20px 14px;font-size:12px}.new-message-search{padding:0 0 12px}.new-message-search input{margin:0}.message-directory{max-height:min(55vh,430px);overflow:auto;border:1px solid var(--line);border-radius:10px}.directory-contact{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;padding:11px 12px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;color:inherit}.directory-contact:last-child{border-bottom:0}.directory-contact:hover{background:#fafbfd}.directory-contact b,.directory-contact small{display:block}.directory-contact b{font-size:13px}.directory-contact small{font-size:10px;color:var(--muted);margin-top:2px}
@media(max-width:760px){.message-layout,.message-layout.sidebar-collapsed{display:block;height:calc(100vh - 165px);min-height:500px}.message-sidebar{height:100%;max-height:none;visibility:visible!important;opacity:1!important;pointer-events:auto!important}.message-thread{display:none;height:100%;min-height:0}.message-layout.thread-open .message-sidebar{display:none}.message-layout.thread-open .message-thread{display:grid}.message-contact{padding:12px}.message-bubble{max-width:88%}.message-thread-body{padding:12px}.message-composer{grid-template-columns:1fr auto}.message-composer .btn{min-width:68px;padding:11px}.message-thread-head{padding:9px 10px}.message-back{display:grid;place-items:center}.message-hide-chats{display:none}.message-head-actions .live-state{font-size:10px}.message-sidebar-head{padding:12px}.message-sidebar-actions .btn{padding:9px 10px}.message-thread-person .message-avatar{width:34px;height:34px;min-width:34px}.message-thread-person b{max-width:150px}}

/* v1.0 branding, collapsible attendance and company notices */
.brand-logo-wrap{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.brand-logo{display:block;object-fit:contain;background:#000;border-radius:8px}.brand-fallback{display:none}.login-logo{justify-content:flex-start;margin-bottom:4px}.login-logo .brand-logo{width:88px;height:54px}.sidebar-logo .brand-logo{width:46px;height:34px;border-radius:6px}.topbar-title{display:flex;align-items:center;gap:11px;min-width:0}.topbar-logo .brand-logo{width:42px;height:30px;border-radius:5px}.topbar-logo .brand-mark{font-size:25px}.collapsible-section-head{margin-bottom:10px}.collapse-btn{display:inline-flex;align-items:center;gap:5px;min-width:76px;justify-content:center}.collapse-icon{font-size:14px;line-height:1}.latest-notice-card{display:grid;width:100%;text-align:left;margin-top:16px;gap:5px;cursor:pointer;color:inherit;background:linear-gradient(135deg,#fff,#f7faff)}.latest-notice-card:hover{border-color:#cddbf5}.latest-notice-kicker{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#5575aa;font-weight:900}.latest-notice-card strong{font-size:15px}.latest-notice-card>span:not(.latest-notice-kicker){font-size:12px;color:#5f6d82;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.latest-notice-card small{font-size:10px;color:var(--muted)}.notice-list{display:grid;gap:12px}.notice-card{padding:18px}.notice-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.notice-card h3{margin:0;font-size:16px}.notice-card small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.notice-card p{margin:14px 0 0;line-height:1.55;font-size:13px;color:#40506a;white-space:normal}.notice-layout{align-items:start}
@media(max-width:760px){.topbar{gap:10px}.topbar-title{gap:8px}.topbar-logo .brand-logo{width:34px;height:26px}.topbar h2{font-size:19px}.topbar .eyebrow{font-size:9px}.collapsible-section-head{align-items:center!important}.collapse-btn{padding:7px 9px}.latest-notice-card>span:not(.latest-notice-kicker){white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notice-card{padding:15px}.notice-card-head{gap:8px}}

/* v1.0.2 logo presentation correction */
.brand-logo{background:transparent!important;border-radius:0!important;object-fit:contain!important}
.login-logo{justify-content:center;margin-bottom:10px}
.login-logo .brand-logo{width:138px;height:138px}
.sidebar-logo .brand-logo{width:64px;height:64px}
.topbar-logo .brand-logo{width:52px;height:52px}
.brand-row{gap:12px;padding-top:0;padding-bottom:18px}
@media(max-width:760px){
  .topbar-logo .brand-logo{width:48px;height:48px}
  .topbar{height:78px}
}

/* v1.1 timesheets and attendance management */
.badge.amber{background:#fff6df;color:#9a6411}.cell-sub{display:block;margin-top:4px;font-size:10px;color:var(--muted);font-weight:500}.timesheet-filters{padding:16px 18px}.timesheet-filter-grid{display:grid;grid-template-columns:180px 180px minmax(220px,1fr) auto;gap:12px;align-items:end}.filter-actions{display:flex;gap:8px;align-items:center}.timesheet-table{min-width:1050px}.variance{font-weight:850}.variance.negative,.negative-text{color:#b33b3b}.variance.positive{color:#13764f}.review-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}.review-summary>div{background:#f7f9fc;border:1px solid var(--line);border-radius:10px;padding:10px}.review-summary span,.review-summary b{display:block}.review-summary span{font-size:10px;color:var(--muted);margin-bottom:3px}.review-summary b{font-size:14px}.review-section{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.review-section h4{margin:0 0 10px;font-size:13px}.review-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.review-line,.review-session{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #edf0f5}.review-line span,.review-line b{font-size:12px}.review-session>div{min-width:0}.review-session b,.review-session small{display:block}.review-session b{font-size:12px}.review-session small{font-size:10px;color:var(--muted);margin-top:2px}.timesheet-approval-actions{justify-content:flex-end}
@media(max-width:900px){.timesheet-filter-grid{grid-template-columns:1fr 1fr}.timesheet-filter-grid label:nth-child(3){grid-column:1/-1}.filter-actions{grid-column:1/-1}.review-summary{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.timesheet-filters{padding:14px}.timesheet-filter-grid{grid-template-columns:1fr}.timesheet-filter-grid label:nth-child(3),.filter-actions{grid-column:auto}.filter-actions{display:grid;grid-template-columns:1fr 1fr}.timesheet-stats{grid-template-columns:1fr 1fr}.review-summary{grid-template-columns:1fr 1fr}.timesheet-approval-actions{display:grid;grid-template-columns:1fr}.timesheet-approval-actions .btn{width:100%}}

/* v1.3 bulk multi-date scheduling */
.bulk-schedule-card{padding:20px}.bulk-schedule-card form{display:grid;gap:16px}.bulk-shift-fields{display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(190px,1.2fr) 140px 140px;gap:12px}.bulk-select-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-top:4px}.bulk-select-head b{font-size:14px}.bulk-select-head p{margin:4px 0 0;font-size:11px;color:var(--muted)}.bulk-select-actions{display:flex;gap:8px;flex-shrink:0}.btn.compact{padding:9px 11px;font-size:12px}.bulk-select-actions .btn.active{background:var(--blue-soft);color:var(--blue);box-shadow:inset 0 0 0 1px #cbdcff}.bulk-calendar{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.calendar-toolbar{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);background:#fafbfd}.calendar-toolbar strong{text-align:center;font-size:14px}.calendar-toolbar .mini-btn{font-size:21px;padding:4px 8px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{background:#f7f9fc;border-bottom:1px solid var(--line)}.calendar-weekdays span{text-align:center;padding:8px 3px;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#7b879a;font-weight:850}.schedule-day{min-height:72px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;color:var(--ink);padding:8px;text-align:left;cursor:pointer;position:relative}.schedule-day:nth-child(7n){border-right:0}.schedule-day span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font-weight:850;font-size:12px}.schedule-day small{display:block;margin-top:5px;color:#8a95a8;font-size:9px}.schedule-day:hover{background:#f8fbff}.schedule-day.selected{background:var(--blue-soft)}.schedule-day.selected span{background:var(--blue);color:#fff}.schedule-day.today:not(.selected) span{box-shadow:inset 0 0 0 2px #8eb0f6;color:#285cb8}.schedule-day.empty-day{cursor:default;background:#fbfcfe}.bulk-apply-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#f8faff;border:1px solid #dfe8fb;border-radius:13px;padding:12px 14px}.bulk-apply-bar strong,.bulk-apply-bar small{display:block}.bulk-apply-bar strong{font-size:13px}.bulk-apply-bar small{font-size:10px;color:var(--muted);margin-top:3px}.bulk-apply-bar .btn{min-width:220px}
@media(max-width:1000px){.bulk-shift-fields{grid-template-columns:1fr 1fr}.bulk-select-head{align-items:flex-start;flex-direction:column}.bulk-select-actions{width:100%}.bulk-select-actions .btn{flex:1}}
@media(max-width:760px){.bulk-schedule-card{padding:14px}.bulk-shift-fields{grid-template-columns:1fr 1fr}.bulk-shift-fields label:nth-child(-n+2){grid-column:1/-1}.calendar-weekdays span{font-size:9px}.schedule-day{min-height:54px;padding:5px}.schedule-day span{width:25px;height:25px}.schedule-day small{font-size:8px;margin-top:2px}.bulk-apply-bar{align-items:stretch;flex-direction:column}.bulk-apply-bar .btn{width:100%;min-width:0}.bulk-select-actions{display:grid;grid-template-columns:1fr 1fr}.bulk-select-actions .btn{width:100%}}

/* v1.4 schedule management */
.schedule-view-card{padding:16px 18px;margin-bottom:16px}.schedule-view-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:12px}.schedule-view-head b{font-size:14px}.schedule-view-head p{margin:4px 0 0;font-size:11px;color:var(--muted)}.schedule-view-head .muted{font-size:11px;text-align:right}.schedule-view-filters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr);gap:12px}.schedule-form-label{display:flex;align-items:baseline;gap:10px;border-bottom:1px solid var(--line);padding-bottom:10px}.schedule-form-label b{font-size:14px}.schedule-form-label span{font-size:11px;color:var(--muted)}
.schedule-day{min-height:94px}.schedule-date-number{margin-bottom:3px}.schedule-count{display:inline-flex!important;align-items:center;width:auto;padding:4px 6px;border-radius:7px;background:#f1f5fb;color:#52627a!important;font-weight:800}.schedule-calendar-tag{display:block!important;margin-top:4px;padding:4px 5px;border:1px solid #e3e9f3;border-radius:7px;background:#fafcff;line-height:1.15;overflow:hidden}.schedule-calendar-tag b,.schedule-calendar-tag span{display:block!important;width:auto!important;height:auto!important;border-radius:0!important;background:transparent!important;color:inherit!important;text-align:left!important;place-items:unset!important}.schedule-calendar-tag b{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-calendar-tag span{font-size:8px;font-weight:600;color:#6f7d92!important;margin-top:2px}.schedule-more{display:block!important;font-size:8px!important;font-weight:750;color:#607087!important;margin-top:3px!important}.schedule-day.selected .schedule-calendar-tag{background:rgba(255,255,255,.72);border-color:#bfd0f4}.schedule-day.selected .schedule-count{background:rgba(255,255,255,.72)}
.schedule-list-head{align-items:flex-end}.schedule-list-actions{display:flex;gap:8px}.schedule-list-scroll{max-height:430px;overflow:auto}.schedule-list-scroll .data-table thead th{position:sticky;top:0;z-index:2}.schedule-manage-table .check-col{width:42px;text-align:center;padding-left:12px;padding-right:8px}.shift-row-check{width:17px;height:17px;accent-color:var(--blue);cursor:pointer}.overlap-list{display:grid;gap:8px;max-height:360px;overflow:auto;margin:12px 0}.overlap-row{display:grid;grid-template-columns:130px 1fr;gap:12px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fafbfd;font-size:12px}.overlap-row span{color:var(--muted)}
@media(max-width:760px){.schedule-view-head{align-items:flex-start;flex-direction:column}.schedule-view-head .muted{text-align:left}.schedule-view-filters{grid-template-columns:1fr}.schedule-form-label{align-items:flex-start;flex-direction:column;gap:3px}.schedule-list-head{align-items:stretch;flex-direction:column}.schedule-list-actions{display:grid;grid-template-columns:1fr 1fr}.schedule-day{min-height:62px}.schedule-calendar-tag{display:none!important}.schedule-more{display:none!important}.schedule-list-scroll{max-height:380px}.overlap-row{grid-template-columns:1fr;gap:3px}}

/* v1.5 responsive bulk date selection */
.schedule-day.range-preview:not(.selected){background:#eef4ff;box-shadow:inset 0 0 0 2px #a9c2f5}.schedule-day.range-preview:not(.selected) .schedule-date-number{background:#dce8ff;color:#285cb8}.bulk-calendar.drag-active .schedule-day{cursor:crosshair;user-select:none}.bulk-calendar.drag-active .schedule-calendar-tag,.bulk-calendar.drag-active .schedule-count{pointer-events:none}


/* v1.6 Liro-style circular schedule time selector */
.time-field{min-width:0}.time-picker-trigger{width:100%;min-height:48px;border:1px solid #d9deea;background:#fff;border-radius:12px;padding:7px 10px;display:grid;grid-template-columns:32px 1fr 18px;align-items:center;gap:8px;text-align:left;color:var(--ink);cursor:pointer}.time-picker-trigger:hover{border-color:#a9bce4;background:#fbfdff}.time-picker-trigger:focus{outline:none;border-color:#8eb0f6;box-shadow:0 0 0 3px rgba(47,111,237,.10)}.time-picker-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);font-size:18px;font-weight:900}.time-picker-copy{min-width:0}.time-picker-copy b,.time-picker-copy small{display:block}.time-picker-copy b{font-size:15px;letter-spacing:.02em}.time-picker-copy small{font-size:9px;color:var(--muted);margin-top:1px}.time-picker-chevron{font-size:21px;color:#8b97aa;text-align:center}.time-picker-backdrop{position:fixed;inset:0;background:rgba(18,28,44,.42);display:grid;place-items:center;padding:20px;z-index:170}.time-picker-card{width:min(390px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 28px 80px rgba(20,30,50,.28);padding:20px}.time-picker-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.time-picker-kicker{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:850;margin-bottom:4px}.time-readout{display:flex;align-items:center;gap:4px;font-size:34px;font-weight:900;letter-spacing:-1px}.time-part{border:0;background:transparent;color:#8591a4;font:inherit;font-weight:900;padding:2px 5px;border-radius:9px;cursor:pointer}.time-part.active{background:var(--blue-soft);color:var(--blue)}.period-toggle{display:grid;grid-template-columns:1fr 1fr;border:1px solid #dfe4ed;border-radius:10px;overflow:hidden}.period-toggle button{border:0;background:#fff;color:#68758a;padding:9px 10px;font-size:11px;font-weight:850;cursor:pointer}.period-toggle button+button{border-left:1px solid #dfe4ed}.period-toggle button.active{background:var(--green-soft);color:#13764f}.time-picker-prompt{text-align:center;font-size:11px;color:var(--muted);font-weight:750;margin:18px 0 6px}.circular-clock{width:258px;height:258px;margin:0 auto;position:relative;border-radius:50%;background:#f6f8fc;border:1px solid #e4e9f2}.clock-number{position:absolute;transform:translate(-50%,-50%);width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:#34445e;font-size:12px;font-weight:850;cursor:pointer;z-index:3}.clock-number:hover{background:#e9effb}.clock-number.active{background:var(--blue);color:#fff;box-shadow:0 5px 14px rgba(47,111,237,.24)}.clock-hand{position:absolute;left:50%;bottom:50%;width:2px;height:86px;background:#83a7ef;transform-origin:50% 100%;z-index:1}.clock-center-dot{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:9px;height:9px;border-radius:50%;background:var(--blue);z-index:4}.time-picker-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:9px;margin-top:18px}.time-picker-actions .btn{width:100%}
@media(max-width:760px){.time-picker-backdrop{align-items:end;padding:0}.time-picker-card{width:100%;border-radius:22px 22px 0 0;padding:18px 18px 20px}.circular-clock{width:250px;height:250px}.time-readout{font-size:32px}}

/* v1.8 time-zone clarity */
.company-timezone-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0 22px;padding:16px 18px}.company-timezone-card p{margin:4px 0 0;color:var(--muted);font-size:.88rem}.company-timezone-controls{display:flex;align-items:center;gap:10px;min-width:min(520px,100%)}.company-timezone-controls select{min-width:300px}.timezone-note{margin:2px 0 12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#f7f9fc;font-size:.9rem;color:var(--muted)}.timezone-note b{color:var(--ink)}.timezone-id{font-size:.78rem;opacity:.72;margin-left:4px}.home-timezone{display:block;margin-top:7px;color:var(--muted)}
@media(max-width:760px){.company-timezone-card{align-items:stretch;flex-direction:column}.company-timezone-controls{min-width:0;flex-direction:column;align-items:stretch}.company-timezone-controls select{min-width:0;width:100%}}

/* v1.9 leave & availability */
.badge.amber{background:#fff6df;color:#9a6411}.mini-btn.success-outline{color:#13764f;border-color:#bfe4d5;background:#f7fcfa}.leave-stats{display:flex;gap:8px;flex-wrap:wrap}.leave-form-grid{align-items:start}.leave-request-card,.leave-record-card{height:100%}.leave-request-card form,.leave-record-card form{display:grid;gap:14px;margin-top:14px}.leave-list-scroll,.availability-list-scroll{max-height:430px;overflow:auto}.leave-list-scroll .data-table thead th,.availability-list-scroll .data-table thead th{position:sticky;top:0;z-index:2}.leave-table{min-width:880px}.availability-table{min-width:720px}.availability-grid{margin-top:6px;align-items:start}.check-line{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:10px 0}.check-line input{width:18px;height:18px;margin:0;accent-color:var(--blue)}.check-line span{font-size:13px}.schedule-count.leave-count{background:#eef8f1;color:#2f7650!important}.schedule-count.unavailable-count{background:#fff6df;color:#946514!important}.schedule-calendar-tag.leave-tag{background:#f2faf5;border-color:#cce7d7}.schedule-calendar-tag.leave-tag b{color:#24704a!important}.schedule-calendar-tag.unavailable-tag{background:#fff9ec;border-color:#f1dfb5}.schedule-calendar-tag.unavailable-tag b{color:#916316!important}.leave-table .row-actions{min-width:118px}.form-card textarea,.modal-form textarea{width:100%;border:1px solid #d9deea;background:#fff;border-radius:12px;padding:13px 14px;color:var(--ink);outline:none;font:inherit;resize:vertical}.form-card textarea:focus,.modal-form textarea:focus{border-color:#8eb0f6;box-shadow:0 0 0 3px rgba(47,111,237,.10)}
@media(max-width:760px){.leave-form-grid,.availability-grid{grid-template-columns:1fr}.leave-list-scroll,.availability-list-scroll{max-height:360px}.leave-stats{justify-content:flex-start}.leave-table,.availability-table{min-width:760px}}

/* v1.9.1 mobile containment and stacked employee records */
.mobile-record-list{display:none}.mobile-record-card{min-width:0}.mobile-record-head,.mobile-record-grid,.mobile-record-actions{min-width:0}.mobile-record-head small,.mobile-record-grid small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.mobile-record-grid span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;margin-bottom:3px}
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  .content-shell,.content,.card,.grid,.split,.section-head,.form-card,.form-card form,label,.tenant-banner{min-width:0;max-width:100%}
  .content{width:100%;overflow-x:hidden}
  input,select,textarea,button{max-width:100%;min-width:0}
  .card,.section-sub,.role-note,.stat-note,.personal-shift,.home-timezone,.timezone-note,.field-help,.latest-notice-card,.message-bubble{overflow-wrap:anywhere;word-break:normal}
  .responsive-table-desktop{display:none!important}
  .mobile-record-list{display:grid;gap:10px;width:100%;padding:10px}
  .mobile-record-card{width:100%;border:1px solid var(--line);border-radius:13px;background:#fff;padding:12px;overflow:hidden}
  .mobile-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
  .mobile-record-head>div{min-width:0}.mobile-record-head b,.mobile-record-head small{display:block;overflow-wrap:anywhere}.mobile-record-head .badge{flex:0 0 auto}
  .mobile-record-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px;padding-top:11px}
  .mobile-record-grid>div{min-width:0}.mobile-record-grid b{display:block;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.mobile-record-wide{grid-column:1/-1}
  .mobile-record-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
  .mobile-record-actions .mini-btn,.mobile-record-actions .navigate-link{max-width:100%}
  .leave-list-scroll,.availability-list-scroll{overflow-y:auto;overflow-x:hidden}
  .leave-list-scroll .mobile-record-list,.availability-list-scroll .mobile-record-list{padding:10px}
}

/* v1.9.2 mobile collapsible boxed sections */
.mobile-collapse-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.mobile-collapse-head h3{margin:0;font-size:16px}.mobile-collapse-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.mobile-collapse-toggle{display:none;flex:0 0 auto}.mobile-collapse-body{min-width:0}.mobile-collapse-box.leave-request-card form,.mobile-collapse-box.leave-record-card form{margin-top:0}.mobile-list-box .leave-list-scroll,.mobile-list-box .availability-list-scroll{margin:0 -20px -20px}.mobile-collapse-stack{margin-top:18px}
@media(max-width:760px){
  .mobile-collapse-stack{display:grid;gap:12px;margin-top:14px}
  .mobile-collapse-box{padding:0;overflow:hidden}
  .mobile-collapse-head{align-items:center;margin:0;padding:14px 15px}
  .mobile-collapse-head>div{min-width:0}
  .mobile-collapse-head h3,.mobile-collapse-head p{overflow-wrap:anywhere}
  .mobile-collapse-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:72px;padding:7px 9px}
  .mobile-collapse-icon{font-size:14px;line-height:1}
  .mobile-collapse-body{padding:0 15px 15px}
  .mobile-collapse-box.mobile-collapsed .mobile-collapse-body{display:none}
  .mobile-collapse-box.mobile-collapsed .mobile-collapse-head{border-bottom:0}
  .mobile-collapse-box:not(.mobile-collapsed) .mobile-collapse-head{border-bottom:1px solid var(--line);margin-bottom:14px}
  .mobile-list-box .mobile-collapse-body{padding:0}
  .mobile-list-box .leave-list-scroll,.mobile-list-box .availability-list-scroll{margin:0;max-height:360px;border:0;border-radius:0}
  .mobile-collapse-box.form-card form{display:grid;gap:14px}
  .leave-form-grid,.availability-grid{gap:12px}
}

/* v2.0 reports and export */
.report-title-head{align-items:flex-end}.report-actions{display:flex;gap:9px;flex-wrap:wrap}.report-filters{padding:16px 18px}.report-filter-grid{display:grid;grid-template-columns:minmax(190px,1.1fr) 150px 150px minmax(200px,1fr) minmax(200px,1fr) auto;gap:12px;align-items:end}.report-filter-grid label{min-width:0}.report-filter-actions{align-self:end}.report-print-head{display:flex;align-items:center;gap:14px;margin:2px 0 14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff}.report-print-head img{width:62px;height:62px;object-fit:contain;background:transparent}.report-print-head h3,.report-print-head p,.report-print-head small{margin:0}.report-print-head h3{font-size:17px}.report-print-head p{margin-top:3px;font-size:12px;color:var(--muted)}.report-print-head small{display:block;margin-top:3px;color:var(--muted)}.report-primary-stats{margin-bottom:12px}.report-metrics{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));gap:0;padding:0;overflow:hidden;margin-bottom:18px}.report-metrics>div{min-width:0;padding:13px 14px;border-right:1px solid var(--line)}.report-metrics>div:last-child{border-right:0}.report-metrics span,.report-metrics b{display:block}.report-metrics span{font-size:9px;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);font-weight:800}.report-metrics b{margin-top:4px;font-size:17px}.report-results-head{align-items:flex-end}.report-results-card{overflow:hidden}.report-table-scroll{max-height:520px;overflow:auto}.report-table{min-width:1060px}.report-table thead th{position:sticky;top:0;z-index:2;background:#fff}.attendance-report-table{min-width:1120px}.leave-report-table{min-width:900px}.availability-report-table{min-width:900px}.report-export-note{margin:10px 2px 0;color:var(--muted);font-size:11px}.report-filter-grid select:disabled{background:#f1f3f7;color:#8a94a5;cursor:not-allowed}
@media(max-width:1180px){.report-filter-grid{grid-template-columns:1fr 1fr 1fr}.report-filter-grid label:nth-child(4),.report-filter-grid label:nth-child(5){grid-column:auto}.report-filter-actions{grid-column:1/-1}.report-metrics{grid-template-columns:repeat(4,1fr)}.report-metrics>div:nth-child(4){border-right:0}.report-metrics>div:nth-child(-n+4){border-bottom:1px solid var(--line)}}
@media(max-width:760px){.report-title-head{align-items:stretch;flex-direction:column}.report-actions{display:grid;grid-template-columns:1fr;width:100%}.report-filters{padding:14px}.report-filter-grid{grid-template-columns:1fr}.report-filter-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}.report-print-head{padding:12px}.report-print-head img{width:52px;height:52px}.report-primary-stats{grid-template-columns:1fr 1fr}.report-metrics{grid-template-columns:1fr 1fr}.report-metrics>div{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.report-metrics>div:nth-child(2n){border-right:0}.report-metrics>div:last-child{border-bottom:0}.report-table-scroll{max-height:440px}.report-results-head{align-items:flex-start;flex-direction:column}.report-export-note{overflow-wrap:anywhere}}

@media print{
  body{background:#fff!important;color:#111!important}
  .sidebar,.topbar,.mobile-nav,.report-title-head,.report-filters,.report-export-note,.toast,#modalRoot,#timePickerRoot{display:none!important}
  .app-shell,.content-shell,.content{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important}
  .content{padding:0!important}
  #reportBody{display:block!important}
  .report-print-head{display:flex!important;border:0!important;border-bottom:1px solid #bbb!important;border-radius:0!important;padding:0 0 12px!important;margin-bottom:14px!important}
  .report-print-head img{width:54px!important;height:54px!important}
  .report-primary-stats{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:4px!important;margin-bottom:7px!important}
  .report-primary-stats .card{padding:7px 9px!important}
  .report-primary-stats .stat-value{font-size:16px!important;margin-top:2px!important}
  .report-primary-stats .stat-note{font-size:8px!important;margin-top:1px!important}
  .report-primary-stats .card,.report-metrics,.report-results-card{box-shadow:none!important;border:1px solid #ccc!important}
  .report-metrics{display:grid!important;grid-template-columns:repeat(7,1fr)!important;break-inside:avoid}
  .report-metrics>div{padding:7px!important}
  .report-results-head{display:flex!important}
  .report-table-scroll{max-height:none!important;overflow:visible!important}
  .report-table{min-width:0!important;width:100%!important;font-size:9px!important}
  .report-table thead th{position:static!important;background:#f4f4f4!important}
  .report-table th,.report-table td{padding:5px 4px!important}
  .badge{border:1px solid #aaa!important;background:#fff!important;color:#111!important}
  .card{break-inside:avoid}
  .report-results-card{break-inside:auto!important;page-break-inside:auto!important;overflow:visible!important}
  .report-table{page-break-inside:auto!important}
  .report-table tr{break-inside:avoid!important;page-break-inside:avoid!important}
  .report-table thead{display:table-header-group!important}
  .report-results-head{break-after:avoid!important;page-break-after:avoid!important}
  @page{size:landscape;margin:8mm}
}

/* v2.0.2 responsive Admin/Manager containment */
@media(max-width:760px){
  /* The phone viewport is the hard page boundary. Wide management content scrolls inside cards only. */
  html,body,#app,.app-shell,.content-shell,.content{width:100%;max-width:100%;overflow-x:hidden}
  .content>* , .split>* , .grid>* , .wide-left>* , .people-workforce>*{min-width:0;max-width:100%}
  .split,.wide-left,.people-workforce{width:100%;max-width:100%;min-width:0}
  .section-head{width:100%;max-width:100%;min-width:0;flex-wrap:wrap;align-items:flex-start}
  .section-head>div{min-width:0;max-width:100%}
  .section-head .btn,.section-head .mini-btn{max-width:100%}
  .form-card,.timesheet-filters,.schedule-view-card,.bulk-schedule-card,.report-filters,.company-timezone-card{width:100%;max-width:100%;min-width:0}
  .form-card form,.modal-form,.timesheet-filter-grid,.schedule-view-filters,.bulk-shift-fields,.report-filter-grid{min-width:0;max-width:100%}
  label,input,select,textarea{min-width:0;max-width:100%}

  /* Defined swipe boxes: outer card remains fixed, only the data plane moves. */
  .table-card,
  .schedule-list-scroll,
  .report-table-scroll,
  .leave-list-scroll,
  .availability-list-scroll{
    width:100%;max-width:100%;min-width:0;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    touch-action:pan-x pan-y;
    scrollbar-gutter:stable;
  }
  .table-card{
    border:1px solid var(--line);
    border-radius:15px;
    background:#fff;
    box-shadow:0 8px 24px rgba(30,45,75,.04), inset -12px 0 16px -18px rgba(21,32,51,.35);
  }
  .table-card>.data-table,
  .schedule-list-scroll .data-table,
  .report-table-scroll .data-table,
  .leave-list-scroll .data-table,
  .availability-list-scroll .data-table{
    width:max-content;
    max-width:none;
  }
  .data-table{min-width:720px}
  .timesheet-table{min-width:1050px}
  .schedule-manage-table{min-width:940px}
  .report-table{min-width:1060px}
  .attendance-report-table{min-width:1120px}
  .leave-report-table,.availability-report-table{min-width:900px}
  .leave-table{min-width:880px}.availability-table{min-width:720px}
  .data-table th,.data-table td{white-space:nowrap}
  .data-table .address-cell{white-space:normal;min-width:260px;max-width:360px}
  .data-table .cell-sub{white-space:normal;max-width:240px}
  .row-actions{white-space:nowrap;flex-wrap:nowrap}

  /* People and Locations: keep forms clean while tables swipe inside their own card. */
  .people-workforce{display:grid;grid-template-columns:1fr!important;gap:14px}
  .company-timezone-card{overflow:hidden}
  .company-timezone-controls{width:100%;max-width:100%}
  .company-timezone-controls .btn{width:100%}

  /* Schedule controls remain stacked; only the shift listing is horizontally swipeable. */
  .schedule-list-scroll{border-radius:15px}
  .schedule-list-actions{width:100%;max-width:100%}
  .schedule-list-actions .mini-btn{min-width:0}
  .bulk-apply-bar,.bulk-select-head,.schedule-view-head{max-width:100%}

  /* Reports/Timesheets use the same contained-data convention. */
  .report-results-card{width:100%;max-width:100%;min-width:0;overflow:hidden}
  .report-table-scroll{border-top:1px solid var(--line)}
  .timesheet-filters,.report-filters{overflow:hidden}
  .filter-actions,.report-filter-actions{width:100%;max-width:100%}

  /* Long admin labels and status text must wrap rather than enlarge the page. */
  .role-note,.section-sub,.field-help,.timezone-note,.company-timezone-card p,
  .schedule-view-head p,.report-export-note{overflow-wrap:anywhere;word-break:normal}

  /* Make nested horizontal scrolling visually and physically distinct from page scrolling. */
  .table-card::-webkit-scrollbar,
  .schedule-list-scroll::-webkit-scrollbar,
  .report-table-scroll::-webkit-scrollbar,
  .leave-list-scroll::-webkit-scrollbar,
  .availability-list-scroll::-webkit-scrollbar{height:7px;width:7px}
  .table-card::-webkit-scrollbar-thumb,
  .schedule-list-scroll::-webkit-scrollbar-thumb,
  .report-table-scroll::-webkit-scrollbar-thumb,
  .leave-list-scroll::-webkit-scrollbar-thumb,
  .availability-list-scroll::-webkit-scrollbar-thumb{background:#cdd5e2;border-radius:999px}
}

/* v2.1 F3E Platform Administration */
.badge.red{background:#fdeaea;color:#a63e3e}.platform-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:20px 22px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#fbfdff,#f6f9ff);margin-bottom:18px}.platform-hero h3{margin:4px 0 5px;font-size:22px}.platform-hero p{margin:0;color:var(--muted);font-size:13px;max-width:680px}.platform-hero-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.platform-stats{margin-bottom:18px}.platform-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 190px minmax(280px,1.2fr);gap:14px;align-items:end;padding:16px 18px}.platform-toolbar label{min-width:0}.platform-context-note{display:flex;align-items:center;gap:9px;flex-wrap:wrap;min-width:0;padding:9px 11px;background:#f8faff;border:1px solid #e3eaf8;border-radius:12px}.platform-context-note b{min-width:0;overflow-wrap:anywhere}.platform-context-note small{width:100%;color:var(--muted);font-size:10px}.platform-table{min-width:980px}.platform-audit-scroll{max-height:380px;overflow:auto}.platform-audit-table{min-width:820px}.platform-form-divider{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;padding-top:6px;border-top:1px solid var(--line)}.platform-form-divider span{font-size:11px;color:var(--muted)}.platform-manage-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;min-width:760px}.platform-company-form h4,.platform-service-panel h4{margin:0 0 10px;font-size:14px}.platform-service-panel{display:grid;align-content:start;gap:12px}.platform-admin-head{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:14px;margin-top:4px}.platform-admin-head h4,.platform-admin-head small{margin:0;display:block}.platform-admin-head small{font-size:10px;color:var(--muted);margin-top:2px}.platform-admin-list{display:grid;gap:8px;max-height:230px;overflow:auto}.platform-admin-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:#fbfcfe}.platform-admin-row>div{min-width:0}.platform-admin-row b,.platform-admin-row small{display:block}.platform-admin-row small{margin-top:2px;color:var(--muted);font-size:10px;overflow-wrap:anywhere}.platform-admin-row>div:last-child{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1050px){.platform-toolbar{grid-template-columns:1fr 1fr}.platform-context-note{grid-column:1/-1}.platform-manage-grid{min-width:0;grid-template-columns:1fr}}
@media(max-width:760px){.platform-hero{align-items:stretch;flex-direction:column;padding:16px}.platform-hero-actions{display:grid;grid-template-columns:1fr;width:100%}.platform-stats{grid-template-columns:1fr 1fr}.platform-toolbar{grid-template-columns:1fr;padding:14px}.platform-context-note{grid-column:auto}.platform-table,.platform-audit-table{width:max-content;max-width:none}.platform-manage-grid{min-width:0;width:100%}.platform-admin-row{align-items:flex-start;flex-direction:column}.platform-admin-row>div:last-child{justify-content:flex-start;width:100%}.platform-service-panel,.platform-company-form{min-width:0;max-width:100%}}
.platform-modal-wide{width:min(900px,100%)}
@media(max-width:760px){.platform-modal-wide{width:100%}.platform-manage-grid{grid-template-columns:1fr}}

/* v2.2 Platform and Company branding */
.btn.primary{background:var(--brand-primary);color:var(--brand-on-primary)}
.btn.success{background:var(--brand-accent);color:var(--brand-on-accent)}
.nav-btn.active{background:var(--brand-primary-soft);color:var(--brand-primary)}
.badge.blue{background:var(--brand-primary-soft);color:var(--brand-primary)}
.badge.green{background:var(--brand-accent-soft);color:var(--brand-accent)}
.user-chip>span{background:var(--brand-primary-soft);color:var(--brand-primary)}
input:focus,select:focus,textarea:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-primary) 13%,transparent)}
.auth-shell{background:radial-gradient(circle at 15% 15%,var(--brand-primary-soft) 0,transparent 30%),radial-gradient(circle at 85% 85%,var(--brand-accent-soft) 0,transparent 28%),#f8fafc}
.branding-settings-grid{align-items:start}.branding-preview{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fbfcfe}.branding-preview-top{display:flex;align-items:center;gap:16px;min-width:0}.branding-preview-top img{width:78px;height:78px;object-fit:contain;flex:0 0 auto}.branding-preview-top b,.branding-preview-top small{display:block}.branding-preview-top small{margin-top:4px;color:var(--muted);font-size:12px}.branding-preview-actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}.branding-preview-actions span{padding:10px 15px;border-radius:11px;font-size:12px;font-weight:850}.brand-preview-primary{background:var(--preview-primary);color:#fff}.brand-preview-accent{background:var(--preview-accent);color:#fff}.branding-guidance{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.branding-guidance p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.branding-colors{align-items:start}.color-field{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:10px;border:1px solid #d9deea;border-radius:12px;padding:8px 10px;background:#fff}.color-field input[type=color]{width:48px;height:38px;padding:2px;border:0;border-radius:9px;cursor:pointer}.color-field code{font-size:12px;color:#52627a;overflow-wrap:anywhere}.branding-modal-form{margin-top:16px}.branding-modal-form .modal-actions{justify-content:space-between}.brand-logo{transition:opacity .15s ease}
@media(max-width:760px){.branding-settings-grid{display:block}.branding-settings-grid>.card+ .card{margin-top:14px}.branding-preview-top img{width:66px;height:66px}.branding-colors{grid-template-columns:1fr}.branding-modal-form .modal-actions{display:grid;grid-template-columns:1fr}.branding-modal-form .modal-actions .btn{width:100%}}

/* v2.3 Company Settings & Policies */
.settings-stack{display:grid;gap:22px}.settings-policy-form{display:grid;gap:18px}.policy-card{padding:20px}.policy-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.policy-card-head h3{margin:0 0 4px}.policy-card-head p{margin:0;color:var(--muted);font-size:.9rem}.policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}.policy-switches{display:grid;gap:10px;margin-top:14px}.policy-switches .check-line{padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft,#f8fafc)}.policy-leave-list{display:grid;gap:8px}.policy-leave-row{display:grid;grid-template-columns:minmax(170px,1.4fr) repeat(3,minmax(120px,.7fr)) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:12px}.policy-leave-row>input{min-width:0}.compact-check{font-size:.85rem;margin:0}.policy-save-bar{position:sticky;bottom:12px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(20,31,51,.08)}.policy-save-bar small{display:block;color:var(--muted);margin-top:2px}
@media(max-width:760px){.policy-grid{grid-template-columns:1fr}.policy-card-head{flex-direction:column}.policy-leave-row{grid-template-columns:1fr 1fr}.policy-leave-row>input{grid-column:1/-1}.policy-leave-row .mini-btn{justify-self:start}.policy-save-bar{position:static;align-items:stretch;flex-direction:column}.policy-save-bar .btn{width:100%}}

/* v2.4 notifications and communication indicators */
.topbar-actions{display:flex;align-items:center;gap:8px}.notification-bell{position:relative;width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);display:grid;place-items:center;cursor:pointer;font-size:22px;line-height:1}.notification-bell:hover{background:#f7f9fc}.notification-bell-count{position:absolute;right:-5px;top:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--red);color:#fff;border:2px solid #fff;display:grid;place-items:center;font-size:9px;line-height:1;font-weight:900}.nav-btn{position:relative}.nav-label{min-width:0}.nav-count{margin-left:auto;min-width:20px;height:20px;border-radius:10px;padding:0 6px;background:var(--red);color:#fff;display:inline-grid;place-items:center;font-size:9px;font-weight:900;line-height:1}.notification-list{display:grid;gap:10px}.notification-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:13px;align-items:start;padding:15px 16px}.notification-card.unread{border-color:#cbd9f8;background:linear-gradient(135deg,#fff,#f8fbff)}.notification-icon{width:38px;height:38px;border-radius:12px;background:var(--brand-primary-soft);color:var(--brand-primary);display:grid;place-items:center;font-weight:900;font-size:17px}.notification-copy{min-width:0}.notification-head{display:flex;align-items:center;gap:8px;min-width:0}.notification-head strong{font-size:13px;overflow-wrap:anywhere}.notification-unread-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--brand-primary)}.notification-copy p{margin:4px 0 5px;font-size:12px;line-height:1.45;color:#52617a;overflow-wrap:anywhere}.notification-copy small{font-size:10px;color:var(--muted)}.notification-actions{display:flex;gap:7px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.notification-card.unread .notification-copy strong{color:var(--brand-primary)}
@media(max-width:760px){.topbar-actions{gap:3px}.notification-bell{width:39px;height:39px;border-radius:11px;font-size:20px}.notification-bell-count{right:-3px;top:-4px}.mobile-nav .nav-btn{position:relative}.mobile-nav .nav-count{position:absolute;right:4px;top:4px;margin:0;min-width:17px;height:17px;padding:0 4px;font-size:8px;border:1px solid #fff}.notification-card{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:13px}.notification-icon{width:34px;height:34px;border-radius:10px}.notification-actions{grid-column:2;justify-content:flex-start}.notification-actions .mini-btn{padding:7px 9px}.notification-head{align-items:flex-start}.notification-list{gap:8px}}


/* v2.4.1 remembered collapsible Company Settings */
.settings-collapse-box{min-width:0}.settings-section.settings-collapse-box{border:1px solid var(--border);border-radius:16px;padding:18px;background:var(--card,#fff)}.settings-section.settings-collapse-box>.section-head{margin-bottom:16px}.settings-collapse-toggle{margin-left:auto;flex:0 0 auto}.settings-collapse-icon{display:inline-block;min-width:12px;text-align:center}.settings-collapsed>.section-head,.settings-collapsed>.policy-card-head{margin-bottom:0}.settings-collapsed>:not(.section-head):not(.policy-card-head){display:none!important}.settings-collapsed #addLeaveType{display:none}.policy-card-head>.settings-collapse-toggle{align-self:flex-start}
@media(max-width:760px){.settings-section.settings-collapse-box{padding:14px}.settings-section.settings-collapse-box>.section-head,.policy-card-head{flex-direction:row;align-items:flex-start}.settings-section.settings-collapse-box>.section-head>div,.policy-card-head>div{min-width:0;flex:1}.settings-collapse-toggle{width:auto!important;white-space:nowrap}.settings-collapse-label{display:none}.policy-card-head>#addLeaveType{order:2}.policy-card-head>.settings-collapse-toggle{order:3}.settings-collapsed .policy-card-head>#addLeaveType{display:none}}

/* V4 F3E VDO.Ninja verification communication */
.message-call-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.call-action-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--brand-primary);display:grid;place-items:center;font-size:17px;font-weight:900;cursor:pointer}.call-action-btn:hover{background:var(--brand-primary-soft);border-color:color-mix(in srgb,var(--brand-primary) 32%,var(--line))}.message-call-event{align-self:center;width:min(92%,520px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 11px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);box-shadow:0 3px 10px rgba(30,45,75,.03)}.call-event-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--brand-primary-soft);color:var(--brand-primary);font-weight:900}.message-call-event b,.message-call-event small{display:block;min-width:0}.message-call-event b{font-size:12px}.message-call-event small{font-size:9px;color:var(--muted);margin-top:3px}.incoming-call-banner{position:fixed;right:18px;top:18px;z-index:180;width:min(430px,calc(100vw - 36px));display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 18px 50px rgba(22,35,58,.2)}.incoming-call-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--brand-accent-soft);color:var(--brand-accent);font-size:21px;font-weight:900}.incoming-call-copy{min-width:0}.incoming-call-copy span,.incoming-call-copy b{display:block}.incoming-call-copy span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.incoming-call-copy b{font-size:14px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.incoming-call-actions{display:flex;gap:7px;align-items:center}.f3e-call-overlay{position:fixed;inset:0;z-index:170;background:rgba(12,20,34,.82);padding:18px;display:grid;place-items:center}.f3e-call-shell{width:min(1120px,100%);height:min(760px,calc(100vh - 36px));min-height:460px;background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 90px rgba(0,0,0,.36)}.f3e-call-head{padding:11px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff}.f3e-call-head .eyebrow{font-size:9px}.f3e-call-head b,.f3e-call-head small{display:block}.f3e-call-head b{font-size:15px;margin-top:2px}.f3e-call-head small{font-size:10px;color:var(--muted);margin-top:2px}.f3e-call-head-actions{display:flex;gap:8px;align-items:center}.vdo-mount{flex:1 1 auto;min-height:0;background:#101217;position:relative;overflow:hidden}.vdo-fallback{flex:1 1 auto}.vdo-mount iframe{display:block;width:100%!important;height:100%!important;border:0}.vdo-loading{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:8px;color:#fff}.vdo-loading b{font-size:16px}.vdo-loading small{font-size:11px;color:#bbc3cf}.call-spinner{width:32px;height:32px;margin:0 auto 5px;border:3px solid rgba(255,255,255,.22);border-top-color:#fff;border-radius:50%;animation:f3eSpin .8s linear infinite}@keyframes f3eSpin{to{transform:rotate(360deg)}}.vdo-fallback{min-height:0;background:#f7f9fc;display:grid;place-content:center;text-align:center;gap:10px;padding:24px}.vdo-fallback span{font-size:12px;color:var(--muted)}.vdo-slow-note{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:3;width:min(92%,460px);padding:9px 11px;border-radius:10px;background:rgba(12,20,34,.88);color:#fff;text-align:center;font-size:11px;line-height:1.4}.vdo-slow-note button{margin-left:6px}.communication-note{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#f8fafd}.communication-note b{font-size:12px}.communication-note span{font-size:11px;line-height:1.5;color:var(--muted)}
@media(max-width:760px){.message-head-actions{gap:5px}.message-call-actions{gap:4px}.call-action-btn{width:35px;height:35px;border-radius:9px}.message-head-actions .live-state{display:none}.message-call-event{width:100%;grid-template-columns:auto minmax(0,1fr) auto}.incoming-call-banner{top:auto;bottom:84px;left:10px;right:10px;width:auto;grid-template-columns:auto minmax(0,1fr);padding:11px}.incoming-call-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.incoming-call-actions .btn{width:100%}.f3e-call-overlay{padding:0}.f3e-call-shell{width:100%;height:100%;min-height:100%;border-radius:0}.f3e-call-head{padding:9px 10px}.f3e-call-head-actions{gap:5px}.f3e-call-head-actions .btn{padding:9px 10px;font-size:10px}.f3e-call-head b{max-width:145px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
@media print{#f3eCallRoot,.incoming-call-banner,.incoming-call-screen{display:none!important}}

/* v2.6 F3E Verified Presence */
.presence-badge{white-space:nowrap}
.presence-request-card{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid color-mix(in srgb,var(--brand-primary,#2563eb) 30%,#dbe3ec);background:color-mix(in srgb,var(--brand-primary,#2563eb) 6%,#fff);margin-bottom:16px}
.presence-request-card h3{margin:4px 0 7px}.presence-request-card p{margin:0;max-width:620px;color:var(--muted,#64748b)}
.presence-code{min-width:168px;text-align:center;border:1px solid var(--border,#d9e1ea);border-radius:14px;background:#fff;padding:12px 14px}
.presence-code span,.presence-code small{display:block;color:var(--muted,#64748b);font-size:12px}.presence-code b{display:block;font-size:28px;letter-spacing:5px;margin:4px 0;color:var(--text,#172033)}
.presence-result-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding:14px 16px}.presence-result-card span{color:var(--muted,#64748b);font-size:13px}.presence-result-card.verified{border-color:#9ad8b1;background:#f3fbf6}.presence-result-card.approved{border-color:#b8d4f7;background:#f5f9ff}.presence-result-card.review{border-color:#f2c2c2;background:#fff7f7}.presence-result-card.neutral{background:#fafbfc}
.presence-call-strip{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.12);background:#101a2b;color:#fff}.presence-call-strip>div:first-child span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;opacity:.7}.presence-call-strip>div:first-child b{display:block;font-size:26px;letter-spacing:5px}.presence-call-strip p{margin:0;font-size:13px;line-height:1.45;opacity:.86}.presence-call-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.presence-call-strip.presence-complete{background:#123c2a}.presence-call-strip.presence-review{background:#4b2c1b}
@media(max-width:760px){.presence-request-card,.presence-result-card{align-items:stretch;flex-direction:column}.presence-code{width:100%}.presence-call-strip{grid-template-columns:1fr;text-align:left}.presence-call-actions{justify-content:stretch}.presence-call-actions .btn{flex:1}.data-table .presence-badge{font-size:11px}}

/* v2.6.2 resilient calls + compact notification history */
.notification-bell.has-unread{border-color:color-mix(in srgb,var(--brand-primary) 32%,var(--line));background:var(--brand-primary-soft);color:var(--brand-primary)}
.notification-bell.has-message:not(.call-ringing){box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand-primary) 10%,transparent)}
.notification-bell.call-ringing{border-radius:50%;border-color:#d92f3f;background:#d92f3f;color:#fff;box-shadow:0 0 0 0 rgba(217,47,63,.48);animation:f3eIncomingCallPulse 1.05s ease-in-out infinite}
.notification-bell.call-ringing:hover{background:#c92536}
@keyframes f3eIncomingCallPulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(217,47,63,.42)}50%{transform:scale(1.08);box-shadow:0 0 0 10px rgba(217,47,63,0)}}
.notification-history-box{padding:0;overflow:hidden}.notification-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid var(--line)}.notification-history-head b,.notification-history-head small{display:block}.notification-history-head b{font-size:13px}.notification-history-head small{margin-top:3px;color:var(--muted);font-size:10px}.notification-history-body{padding:12px}.notification-history-collapsed .notification-history-head{border-bottom:0}.notification-history-body .notification-list{margin:0}.vdo-fallback-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
@media(max-width:760px){.notification-history-head{padding:12px}.notification-history-body{padding:9px}.vdo-fallback-actions{display:grid;grid-template-columns:1fr;min-width:min(300px,80vw)}.vdo-fallback-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.notification-bell.call-ringing{animation:none}}

/* v2.6.3 communication archive and retention */
.message-list-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:8px 10px;border-bottom:1px solid var(--line);background:#fafbfd}.message-list-tab{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:9px;padding:8px 9px;font-size:11px;font-weight:800;cursor:pointer}.message-list-tab.active{background:var(--brand-primary-soft);border-color:color-mix(in srgb,var(--brand-primary) 35%,var(--line));color:var(--brand-primary)}
.call-history-section{display:grid;gap:8px}.call-history-section h4{margin:0 0 3px}.call-history-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.call-history-row:last-child{border-bottom:0}.call-history-row b,.call-history-row small{display:block}.call-history-row b{font-size:12px}.call-history-row small{font-size:10px;color:var(--muted);margin-top:3px}.call-history-actions{display:flex;gap:6px;align-items:center}.call-history-archived{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.call-history-archived summary{cursor:pointer;font-size:12px;font-weight:800;color:var(--brand-primary);padding:3px 0 10px}.message-head-actions{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:760px){.message-list-tabs{padding:7px 9px}.message-thread-head{align-items:flex-start}.message-head-actions{max-width:145px;gap:4px}.message-head-actions #callHistoryBtn,.message-head-actions #archiveConversationBtn{padding:7px 8px;font-size:9px}.call-history-row{grid-template-columns:auto minmax(0,1fr)}.call-history-actions{grid-column:1/-1;justify-content:flex-end}.call-history-actions .mini-btn{min-height:34px}}

/* v2.7 Verified Presence automation + clearer call actions */
.prominent-call-actions{padding:3px;border:1px solid var(--line);border-radius:12px;background:#f8fafd;gap:5px!important}
.prominent-call-actions .call-action-btn{width:auto;min-width:68px;height:40px;padding:0 10px;display:flex;align-items:center;justify-content:center;gap:6px;border-width:1px;box-shadow:0 2px 7px rgba(30,45,75,.05)}
.prominent-call-actions .voice-call-action{background:var(--brand-primary-soft);border-color:color-mix(in srgb,var(--brand-primary) 34%,var(--line));color:var(--brand-primary)}
.prominent-call-actions .video-call-action{background:var(--brand-accent-soft);border-color:color-mix(in srgb,var(--brand-accent) 34%,var(--line));color:var(--brand-accent)}
.call-action-icon{font-size:18px;line-height:1}.call-action-label{font-size:10px;font-weight:900;letter-spacing:.02em;text-transform:uppercase}
.presence-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}
.presence-summary{padding:13px 14px;display:grid;gap:3px;border-left:3px solid #9aa5b5}.presence-summary span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.presence-summary b{font-size:22px;line-height:1}.presence-summary.green{border-left-color:#37a36a}.presence-summary.amber{border-left-color:#d99a2b}.presence-summary.red{border-left-color:#d55d5d}.presence-summary.blue{border-left-color:var(--brand-primary)}
.presence-filters{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;margin-bottom:18px}.presence-filters label{min-width:0}.presence-trigger-text{font-size:11px;line-height:1.35}.presence-table-card{overflow:hidden}.presence-dashboard-table{min-width:860px}
.presence-policy-grid{margin-top:10px}.presence-targets{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.presence-targets>div{min-width:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fbfcfe}.presence-targets>div>b{display:block;font-size:12px;margin-bottom:8px}.policy-target-list{max-height:175px;overflow:auto;display:grid;gap:6px;padding-right:4px;overscroll-behavior:contain}.policy-target-list .check-line{margin:0;padding:5px 6px;border-radius:8px}.policy-target-list .check-line:hover{background:#f4f7fb}
@media(max-width:920px){.presence-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.presence-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.prominent-call-actions{width:100%;justify-content:stretch}.prominent-call-actions .call-action-btn{flex:1;min-width:0;height:42px;padding:0 8px}.call-action-label{font-size:9px}.message-head-actions{max-width:180px}.presence-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.presence-summary{padding:11px 12px}.presence-summary b{font-size:19px}.presence-filters{grid-template-columns:1fr}.presence-targets{grid-template-columns:1fr}.presence-table-card{overflow-x:auto;-webkit-overflow-scrolling:touch}.presence-dashboard-table{min-width:780px}}

/* v2.7.1 mobile Messages containment and conversation header refinement */
.prominent-call-actions .video-call-action{background:var(--brand-primary-soft);border-color:color-mix(in srgb,var(--brand-primary) 34%,var(--line));color:var(--brand-primary)}
@media(max-width:760px){
  .message-layout,.message-layout.thread-open,.message-thread,.message-thread-head,.message-thread-body,.message-composer{width:100%;max-width:100%;min-width:0}
  .message-layout{overflow:hidden}
  .message-thread{overflow:hidden}
  .message-thread-head{display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto auto;align-items:start;gap:10px 8px;padding:10px 10px 12px;min-height:0}
  .message-thread-left{display:contents}
  .message-back{grid-column:1;grid-row:1;width:38px;height:38px;align-self:start}
  .message-head-actions{grid-column:2;grid-row:1;width:100%;max-width:none;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;align-items:stretch}
  .prominent-call-actions{grid-column:1/-1;width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px!important;padding:3px}
  .prominent-call-actions .call-action-btn{width:100%;min-width:0;height:42px;padding:0 8px;overflow:hidden}
  .prominent-call-actions .voice-call-action,.prominent-call-actions .video-call-action{background:var(--brand-primary-soft);border-color:color-mix(in srgb,var(--brand-primary) 34%,var(--line));color:var(--brand-primary)}
  .message-head-actions #callHistoryBtn,.message-head-actions #archiveConversationBtn{width:100%;min-width:0;justify-self:stretch;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .message-thread-person{grid-column:1/-1;grid-row:2;width:100%;min-width:0;padding:3px 2px 0;display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center}
  .message-thread-person .message-avatar{width:38px;height:38px;min-width:38px}
  .message-thread-person>div{min-width:0}
  .message-thread-person b{max-width:none!important;width:100%;font-size:16px;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
  .message-thread-person small{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
  .message-thread-body{overflow-x:hidden;padding:12px}
  .message-row,.message-call-event{max-width:100%;min-width:0}
  .message-call-event{width:100%;overflow:hidden}
  .message-call-event>div{min-width:0}
  .message-call-event b,.message-call-event small{white-space:normal;overflow-wrap:anywhere}
  .message-bubble{max-width:88%;min-width:0;overflow-wrap:anywhere}
  .message-composer{grid-template-columns:minmax(0,1fr) auto;padding:10px;gap:8px;overflow:hidden}
  .message-composer textarea{width:100%;min-width:0}
  .message-composer .btn{min-width:64px;max-width:84px}
}

/* v2.7.3 Platform Administration refinements */
.password-input-wrap{position:relative;display:block;width:100%;min-width:0}.password-input-wrap>input{width:100%;padding-right:62px!important}.password-visibility-btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);height:30px;min-width:48px;padding:0 8px;border:0;border-radius:8px;background:#eef3f9;color:var(--brand-primary);font-size:10px;font-weight:900;cursor:pointer}.password-visibility-btn:hover{background:var(--brand-primary-soft)}
.package-selection-help{display:block;margin-top:6px;line-height:1.4;min-height:30px}
.platform-collapse-box{padding:0;overflow:visible;margin-bottom:14px}.platform-collapse-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line)}.platform-collapse-head h3{margin:0;font-size:15px}.platform-collapse-head small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.platform-collapse-head-actions{display:flex;align-items:center;gap:8px}.platform-collapse-body{padding:14px 16px}.platform-collapse-toggle{display:none}.platform-contained-table{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.platform-search-label{position:relative}.platform-search-suggestions{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 4px);display:grid;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 12px 28px rgba(31,45,68,.16);overflow:hidden;max-height:260px;overflow-y:auto}.platform-search-suggestions button{display:grid;gap:2px;text-align:left;padding:10px 12px;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}.platform-search-suggestions button:last-child{border-bottom:0}.platform-search-suggestions button:hover{background:#f7f9fc}.platform-search-suggestions b{font-size:12px}.platform-search-suggestions small{font-size:9px;color:var(--muted)}
@media(max-width:760px){.platform-collapse-toggle{display:inline-flex!important}.platform-collapse-head{padding:12px 13px;align-items:flex-start}.platform-collapse-head>div:first-child{min-width:0;flex:1}.platform-collapse-head-actions{flex-wrap:wrap;justify-content:flex-end}.platform-collapse-body{padding:11px 12px}.platform-collapsed>.platform-collapse-head{border-bottom:0}.platform-collapsed>.platform-collapse-body{display:none}.platform-collapse-box .platform-stats{margin:0}.platform-collapse-box .platform-toolbar{margin:0 0 10px}.platform-search-suggestions{max-height:210px}.password-visibility-btn{height:32px;min-width:50px}}

/* v2.7.4 app-wide mobile collapsible record boxes */
@media(max-width:760px){
  .global-mobile-collapse-wrap{
    width:100%;max-width:100%;min-width:0;
    border:1px solid var(--line);border-radius:15px;background:#fff;
    box-shadow:0 8px 24px rgba(30,45,75,.04);overflow:hidden;
  }
  .global-mobile-list-head{
    display:flex;align-items:center;justify-content:space-between;gap:10px;
    padding:10px 12px;border-bottom:1px solid var(--line);background:#fff;
  }
  .global-mobile-list-meta{min-width:0;display:grid;gap:2px}
  .global-mobile-list-meta b{font-size:12px;line-height:1.2;overflow-wrap:anywhere}
  .global-mobile-list-meta small{font-size:10px;color:var(--muted)}
  .global-mobile-list-toggle{flex:0 0 auto;min-width:54px}
  .global-mobile-collapse-wrap>.global-mobile-list-body{
    width:100%;max-width:100%;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;
  }
  .global-mobile-collapsed>.global-mobile-list-head{border-bottom:0}
  .global-mobile-collapsed>.global-mobile-list-body{display:none!important}
}
@media(min-width:761px){
  .global-mobile-list-head{display:none!important}
}

/* v2.8 production health */
.health-overall{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;margin-bottom:12px}.health-overall.ok{background:rgba(27,154,105,.08)}.health-overall.warn{background:rgba(215,143,0,.08)}.health-overall.error{background:rgba(190,45,45,.08)}.health-overall span{font-size:.82rem;color:var(--muted)}.health-check-list{display:grid;gap:8px}.health-check{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border);border-radius:10px}.health-check small{display:block;color:var(--muted);margin-top:2px;overflow-wrap:anywhere}.health-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-weight:800;flex:0 0 auto}.health-check.ok .health-icon{background:rgba(27,154,105,.12)}.health-check.warn .health-icon{background:rgba(215,143,0,.14)}.health-check.error .health-icon{background:rgba(190,45,45,.12)}

/* Release 3 full platform/workforce package */
.first-run-copy{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.first-run-copy h2{margin:6px 0 4px;font-size:22px}.first-run-copy+.hidden{}#firstRunSetup form{display:grid;gap:16px;margin-top:20px}

.clock-geo-note{max-width:520px;margin:16px auto 0;font-size:11px;color:var(--muted);line-height:1.45}.geo-out{color:#b43b3b!important;font-weight:800}.geo-in{color:#13764f!important;font-weight:800}.geo-warn{color:#9b6a17!important;font-weight:800}
/* Release 3.4: address/map work-area selection */
.work-area-choice p{margin-top:0}.work-area-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.map-search-row{display:flex;gap:8px;align-items:center}.map-search-row input{flex:1}.map-search-results{display:grid;gap:6px;margin:10px 0;max-height:150px;overflow:auto}.map-result{border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 10px;text-align:left;font-size:11px;line-height:1.35;cursor:pointer}.map-result.selected{border-color:#7da7e8;background:#f3f7ff}.work-area-map{height:320px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#f6f8fb;margin:12px 0}.map-loading{height:100%;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px}.map-confirm-address{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--line);background:#f8faff;border-radius:10px;font-size:11px}.map-confirm-address span{color:var(--muted);line-height:1.4}@media(max-width:620px){.work-area-choice-grid{grid-template-columns:1fr}.map-search-row{align-items:stretch;flex-direction:column}.work-area-map{height:280px}}


/* v3.5 intuitive branding colour + gradient controls */
.branding-colour-editor{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 16px}.brand-colour-card{border:1px solid var(--line);border-radius:15px;padding:14px;background:#fbfcff}.brand-colour-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.gradient-toggle{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:7px;font-size:12px}.gradient-toggle input{width:18px;height:18px;margin:0;accent-color:var(--blue)}.brand-color-picker{gap:8px}.brand-wheel-row{display:flex;align-items:center;gap:12px}.brand-wheel{width:64px!important;height:64px!important;border-radius:50%;padding:3px;border:1px solid #d9deea;background:#fff;cursor:pointer}.brand-wheel::-webkit-color-swatch-wrapper{padding:2px}.brand-wheel::-webkit-color-swatch{border:0;border-radius:50%}.brand-wheel::-moz-color-swatch{border:0;border-radius:50%}.brand-color-picker code{font-size:12px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:6px 8px}.brand-color-picker small{font-size:10px;color:var(--muted);font-weight:500}.brand-gradient-extra{display:grid;gap:12px;margin-top:13px;padding-top:13px;border-top:1px solid var(--line)}.brand-gradient-extra input[type=range]{padding:0;accent-color:var(--blue)}.branding-preview-actions .brand-preview-primary{background:var(--preview-primary)!important}.branding-preview-actions .brand-preview-accent{background:var(--preview-accent)!important}
@media(max-width:760px){.branding-colour-editor{grid-template-columns:1fr}.brand-wheel{width:72px!important;height:72px!important}}


/* v3.6 F3E colour wheel + message attendance verification */
.brand-wheel-button{width:70px;height:70px;border:1px solid #d9deea;border-radius:50%;background:conic-gradient(from 0deg,#f33,#ff0,#0f0,#0ff,#33f,#f0f,#f33);padding:5px;cursor:pointer;box-shadow:0 3px 12px rgba(30,45,75,.08)}
.brand-wheel-button span{display:block;width:100%;height:100%;border-radius:50%;background:var(--picker-colour);border:4px solid #fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}
.f3e-colour-wheel-wrap{display:grid;gap:14px;justify-items:center}.f3e-colour-wheel{width:min(320px,82vw);height:auto;touch-action:none;border-radius:50%;box-shadow:0 7px 24px rgba(20,32,54,.14);cursor:crosshair}.f3e-colour-selected{display:flex;align-items:center;gap:10px}.f3e-colour-selected span{width:38px;height:38px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px var(--line)}.f3e-colour-selected code{font-size:13px;background:#f8fafd;border:1px solid var(--line);border-radius:8px;padding:7px 10px}.colour-brightness{width:min(320px,82vw);display:grid;gap:7px}.colour-brightness input{padding:0;height:14px;border-radius:999px;appearance:none;-webkit-appearance:none}.colour-brightness input::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:#fff;border:2px solid #20283a;box-shadow:0 2px 6px rgba(0,0,0,.2)}.colour-brightness input::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:2px solid #20283a}.verify-attendance-message{font-weight:850;white-space:nowrap}
@media(max-width:760px){.brand-wheel-button{width:76px;height:76px}.message-head-actions .verify-attendance-message{order:-1;flex-basis:100%;width:100%}}


/* v3.7 full-screen incoming attendance verification alert */
.incoming-call-screen{position:fixed;inset:0;z-index:190;display:grid;place-items:center;overflow:hidden;padding:24px;background:radial-gradient(circle at center,color-mix(in srgb,var(--brand-primary) 18%,rgba(8,16,30,.94)) 0%,rgba(8,16,30,.97) 58%,rgba(5,10,20,.99) 100%);color:#fff}
.incoming-call-card{position:relative;z-index:3;width:min(520px,92vw);display:grid;justify-items:center;text-align:center;gap:16px;padding:32px 24px 26px;border:1px solid rgba(255,255,255,.16);border-radius:26px;background:rgba(255,255,255,.10);backdrop-filter:blur(14px);box-shadow:0 28px 90px rgba(0,0,0,.38)}
.incoming-call-icon-large{width:92px;height:92px;font-size:38px;background:var(--brand-primary);color:#fff;box-shadow:0 0 0 12px color-mix(in srgb,var(--brand-primary) 18%,transparent);animation:f3eCallIconPulse 1.25s ease-in-out infinite}
.incoming-call-copy-large span{font-size:11px;color:rgba(255,255,255,.72);letter-spacing:.12em}.incoming-call-copy-large b{margin-top:8px;font-size:25px;color:#fff;white-space:normal}.incoming-call-copy-large small{display:block;margin-top:7px;font-size:12px;color:rgba(255,255,255,.78)}
.incoming-call-actions-large{width:min(360px,100%);display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:4px}.incoming-call-actions-large .btn{min-height:52px;border-radius:14px;font-size:13px;font-weight:900}.incoming-call-note{margin:0;color:rgba(255,255,255,.66);font-size:11px}
.incoming-call-pulse{position:absolute;left:50%;top:50%;width:220px;height:220px;border-radius:50%;border:3px solid color-mix(in srgb,var(--brand-primary) 65%,#fff);transform:translate(-50%,-50%);opacity:0;pointer-events:none;animation:f3eFullScreenCallPulse 2.1s ease-out infinite}
.incoming-call-pulse-two{animation-delay:1.05s}
@keyframes f3eFullScreenCallPulse{0%{width:190px;height:190px;opacity:.58}80%,100%{width:min(92vw,850px);height:min(92vw,850px);opacity:0}}
@keyframes f3eCallIconPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.075)}}
@media(max-width:600px){.incoming-call-screen{padding:16px}.incoming-call-card{width:100%;padding:28px 18px 22px;border-radius:22px}.incoming-call-icon-large{width:82px;height:82px;font-size:34px}.incoming-call-copy-large b{font-size:22px}.incoming-call-actions-large{width:100%}}
@media(prefers-reduced-motion:reduce){.incoming-call-pulse,.incoming-call-icon-large{animation:none}.incoming-call-pulse{display:none}}


/* v4.2 VDO.Ninja verification call controls + reliable post-login navigation */
.verification-action-stack{display:grid;gap:6px;min-width:min(270px,100%)}
.verification-action-stack .verify-attendance-message{width:100%;min-width:0;justify-content:center;text-align:center;white-space:normal;line-height:1.15;padding:9px 12px}
.verification-action-secondary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}
.verification-action-secondary .btn{width:100%;min-width:0;justify-content:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.f3e-call-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px;background:#f7f9fc;border-bottom:1px solid var(--line)}
.call-control-btn{min-height:42px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);font:inherit;font-size:11px;font-weight:850;cursor:pointer;padding:8px 10px;white-space:nowrap}
.call-control-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary)}
.call-control-btn.active{background:var(--brand-primary-soft);border-color:color-mix(in srgb,var(--brand-primary) 42%,var(--line));color:var(--brand-primary)}
.vdo-side-by-side{min-height:420px;aspect-ratio:9/16;max-height:72vh;overflow:hidden;background:#0c1320;margin-inline:auto;width:min(100%,430px)}
.vdo-side-by-side iframe{display:block;width:100%;height:100%}
.audio-output-list{display:grid;gap:8px;margin-top:12px}
@media(max-width:760px){.message-head-actions{max-width:none;width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}.verification-action-stack{grid-column:1/-1;width:100%}.message-head-actions>#messageFreshness{grid-column:1/2;align-self:center}.message-head-actions>#toggleChatsBtn{grid-column:2/3;width:100%}.f3e-call-controls{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.call-control-btn{font-size:10px;min-height:40px;padding:7px 6px}.vdo-side-by-side{min-height:420px;aspect-ratio:9/16;max-height:68vh;width:min(100%,390px)}.f3e-call-shell{width:min(100%,100vw)}.f3e-call-overlay{padding:0}}

/* V4.4 VDO.Ninja landscape stacked verification video */
.vdo-side-by-side,.vdo-stack-landscape{min-height:0;aspect-ratio:8/9;max-height:72vh;overflow:hidden;background:#0c1320;margin-inline:auto;width:min(100%,760px)}
.vdo-stack-landscape iframe{display:block;width:100%;height:100%}
@media(max-width:760px){.vdo-side-by-side,.vdo-stack-landscape{min-height:0;aspect-ratio:8/9;max-height:none;width:100%}}
/* v4.6 mobile messaging safe area */
@media(max-width:760px){
 .message-layout,.message-layout.sidebar-collapsed{height:calc(100dvh - 152px);min-height:0}
 .message-thread{padding-bottom:env(safe-area-inset-bottom,0px)}
 .message-composer{position:relative;z-index:2;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
}
.danger-note{display:grid;gap:4px;padding:12px 14px;border:1px solid #f0b8b8;border-radius:12px;background:#fff5f5;color:#8f2525}.danger-note span{font-size:11px;line-height:1.45}
/* v4.8 live attendance filters */
.attendance-live-filters{margin-bottom:16px;padding:16px}
.attendance-filter-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(180px,.8fr) auto;gap:12px;align-items:end}
.attendance-filter-grid label{display:grid;gap:6px}
@media(max-width:760px){.attendance-filter-grid{grid-template-columns:1fr}.attendance-filter-grid .btn{width:100%}}

/* v4.8 compact attendance column filters + follow-up review */
.attendance-live-filters{margin:0 0 8px;padding:0 10px;background:transparent;border:0;box-shadow:none}
.attendance-filter-grid{display:grid;grid-template-columns:minmax(120px,1.35fr) minmax(110px,1fr) minmax(120px,1.15fr) minmax(120px,1.15fr) minmax(120px,.8fr) auto;gap:10px;align-items:end}
.attendance-filter-grid label{display:grid;gap:4px;font-size:12px;font-weight:700;color:var(--muted)}
.attendance-filter-grid input,.attendance-filter-grid select{height:34px;padding:6px 9px;font-size:13px;max-width:190px}
.attendance-filter-grid label:nth-child(1) input{max-width:210px}
.attendance-filter-grid label:nth-child(2) input{max-width:180px}
.attendance-clear-filter{height:34px;align-self:end}
.follow-up-existing{padding:12px 14px;border-radius:12px;background:rgba(220,38,38,.06);border:1px solid rgba(220,38,38,.16)}
.follow-up-existing span{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:5px}
.follow-up-existing p{margin:0;white-space:pre-wrap}
.presence-review-actions{flex-wrap:wrap}
@media(max-width:760px){.attendance-live-filters{padding:0}.attendance-filter-grid{grid-template-columns:1fr 1fr;gap:8px}.attendance-filter-grid>div{display:none}.attendance-filter-grid input,.attendance-filter-grid select,.attendance-filter-grid label:nth-child(1) input,.attendance-filter-grid label:nth-child(2) input{max-width:none;width:100%}.attendance-clear-filter{width:100%}.presence-review-actions .btn{flex:1 1 46%}}


/* v4.9 interface polish - Liro-inspired restrained light workspace */
:root{--bg:#f6f8fb;--card:#fff;--ink:#1d2939;--muted:#667085;--line:#e4e7ec;--red:#c73f4d;--red-soft:#fff4f5;--shadow:0 10px 30px rgba(16,24,40,.055);--radius:16px}
html,body{font-family:"Avenir Next","Segoe UI Variable","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.005em}
body{background:var(--bg)}
.sidebar,.topbar,.card,.auth-card,.modal-card{border-color:var(--line)}
.sidebar{background:#fff;padding-left:18px;padding-right:18px}
.topbar{background:rgba(255,255,255,.94);backdrop-filter:saturate(160%) blur(14px)}
.card{box-shadow:0 4px 18px rgba(16,24,40,.035)}
.nav-btn{font-weight:700;color:#475467}
.nav-btn.active{background:color-mix(in srgb,var(--brand-primary-soft) 78%,#fff);box-shadow:inset 3px 0 0 var(--brand-primary)}
.btn{font-weight:750;box-shadow:none}
.btn.ghost{background:#f2f4f7;color:#344054}
input,select,textarea{border-color:#d0d5dd;background:#fff;color:#101828}
input:focus,select:focus,textarea:focus{border-color:color-mix(in srgb,var(--brand-primary) 55%,#98a2b3);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-primary) 10%,transparent)}
.data-table th{background:#f9fafb;color:#667085;font-weight:750;letter-spacing:.055em}
.data-table td{color:#344054}
.section-head h3,.modal-head h3,.topbar h2{color:#101828;letter-spacing:-.02em}
.pwa-install{margin-top:10px;border:1px solid var(--line)}
.presence-review-actions{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;align-items:stretch}
.presence-review-actions .btn{min-width:0!important;width:100%!important;padding:10px 7px!important;font-size:12px!important;white-space:nowrap}
@media(max-width:420px){.presence-review-actions{gap:5px!important}.presence-review-actions .btn{padding:10px 4px!important;font-size:11px!important}}


/* v4.10 message fluidity, notification popup and dimensional polish */
.card{background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%);box-shadow:0 9px 26px rgba(47,111,237,.045),0 2px 7px rgba(16,24,40,.035)}
.form-card,.table-card,.message-sidebar,.message-thread,.clock-card,.notice-card{box-shadow:0 10px 28px rgba(47,111,237,.05),0 2px 8px rgba(16,24,40,.04)}
.message-contacts,.message-thread-body,.message-directory{-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior-y:auto;scroll-behavior:auto;will-change:scroll-position}
.message-thread-body{background:linear-gradient(180deg,#f8faff 0%,#f4f7fb 100%)}
.incoming-message-popup{position:fixed;right:20px;top:84px;z-index:175;width:min(390px,calc(100vw - 32px));display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;text-align:left;border:1px solid #dbe4f2;border-radius:16px;background:rgba(255,255,255,.98);color:var(--ink);padding:13px 14px;box-shadow:0 18px 50px rgba(16,24,40,.16),0 5px 18px rgba(47,111,237,.08);cursor:pointer;opacity:0;transform:translateY(-10px) scale(.985);transition:opacity .18s ease,transform .18s ease;backdrop-filter:blur(12px)}
.incoming-message-popup.show{opacity:1;transform:translateY(0) scale(1)}
.incoming-message-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--brand-primary-soft);border:1px solid color-mix(in srgb,var(--brand-primary) 20%,#fff);color:var(--brand-primary);font-size:20px;font-weight:800}
.incoming-message-copy{display:grid;min-width:0;gap:2px}.incoming-message-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--brand-primary)}.incoming-message-copy b{font-size:13px;color:#101828;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.incoming-message-copy span{font-size:12px;color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.presence-review-actions .btn{background:#fff!important;border:1px solid #d0d5dd!important;color:#475467!important}
.presence-review-actions .btn:hover{background:#f8fafc!important}
.presence-review-actions #presenceResetBtn{border-color:#e4b86a!important;color:#8a5b08!important;background:#fffaf0!important}
.presence-review-actions #presenceFlagBtn{border-color:#efb6bc!important;color:#a93845!important;background:#fff1f3!important}
.presence-review-actions button[type="submit"]{border-color:#a9d7bd!important;color:#1e7046!important;background:#eef9f2!important}
.presence-review-actions button[data-close-modal]{border-color:#d0d5dd!important;color:#475467!important;background:#fff!important}
@media(max-width:760px){.message-layout,.message-layout.sidebar-collapsed{height:calc(100dvh - 152px);min-height:0}.message-sidebar,.message-thread{min-height:0}.message-contacts,.message-thread-body{overflow-y:auto!important;overflow-x:hidden!important}.incoming-message-popup{top:auto;right:12px;left:12px;bottom:calc(76px + env(safe-area-inset-bottom,0px));width:auto}.card{box-shadow:0 6px 18px rgba(47,111,237,.04),0 2px 6px rgba(16,24,40,.03)}}

/* v4.11 branding preview stability + softer global buttons */
.brand-colour-submodal{position:relative;z-index:120}
.brand-colour-submodal .modal-backdrop{z-index:130;background:rgba(18,28,44,.32)}
.brand-colour-card-modal{width:min(500px,100%)}
.btn,.mini-btn,.nav-btn,.icon-btn,.menu-action,.call-action-btn,.platform-search-suggestions button{
  font-weight:600;
}
.btn{
  border:1px solid color-mix(in srgb,var(--brand-primary) 12%,#d0d5dd);
  background:#fff;
  color:#344054;
  box-shadow:0 2px 7px rgba(16,24,40,.045),0 1px 2px rgba(47,111,237,.025);
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .12s ease;
}
.btn:hover{
  border-color:color-mix(in srgb,var(--brand-primary) 24%,#cfd5df);
  box-shadow:0 4px 10px rgba(16,24,40,.055),0 1px 4px color-mix(in srgb,var(--brand-primary) 6%,transparent);
}
.btn:active{transform:translateY(1px)}
.btn.primary{
  border-color:color-mix(in srgb,var(--brand-primary) 70%,#c9d2df);
  background:var(--brand-primary-fill,var(--brand-primary));
  color:var(--brand-on-primary,#fff);
  box-shadow:0 3px 9px color-mix(in srgb,var(--brand-primary) 13%,transparent);
}
.btn.success{
  border-color:color-mix(in srgb,var(--brand-accent) 60%,#c9d2df);
  background:var(--brand-accent-fill,var(--brand-accent));
  color:var(--brand-on-accent,#fff);
  box-shadow:0 3px 9px color-mix(in srgb,var(--brand-accent) 12%,transparent);
}
.btn.danger{
  border-color:#d99aa2;
  background:#fff3f4;
  color:#a93845;
  box-shadow:0 2px 7px rgba(169,56,69,.055);
}
.btn.ghost{
  border-color:#d9dee7;
  background:#f8f9fb;
  color:#475467;
  box-shadow:0 2px 6px rgba(16,24,40,.025);
}
.mini-btn{
  font-weight:600;
  border-color:#d9dee7;
  box-shadow:0 2px 6px rgba(16,24,40,.025);
}

/* V4.13 platform typography preview */
.branding-preview{transition:font-family .15s ease}


/* V5.3 visual status system, charts and desktop audit collapse */
.colour-brightness input{background:var(--brightness-track,linear-gradient(90deg,#05070b,#4b79ff))!important;overflow:visible}
.colour-brightness input::-webkit-slider-runnable-track{height:14px;border-radius:999px;background:transparent!important}
.colour-brightness input::-moz-range-track{height:14px;border-radius:999px;background:transparent!important}
.colour-brightness input::-webkit-slider-thumb{background:var(--brightness-thumb,#fff)!important}
.colour-brightness input::-moz-range-thumb{background:var(--brightness-thumb,#fff)!important}
.platform-collapse-box[data-platform-collapse="audit"] .platform-collapse-toggle{display:inline-flex!important}
.platform-collapse-box[data-platform-collapse="audit"].platform-collapsed>.platform-collapse-head{border-bottom:0}
.platform-collapse-box[data-platform-collapse="audit"].platform-collapsed>.platform-collapse-body{display:none}
.metric-icon{width:42px;height:42px;border-radius:12px;display:inline-grid;place-items:center;flex:0 0 42px;background:#eef6ff;color:#2389dd}.metric-icon svg{width:22px;height:22px}.tone-blue .metric-icon{background:#eaf5ff;color:#2288df}.tone-purple .metric-icon{background:#f0edff;color:#7162d3}.tone-green .metric-icon{background:#e9f8f1;color:#2ba66d}.tone-amber .metric-icon{background:#fff5e3;color:#d69324}.tone-red .metric-icon{background:#fff0ef;color:#cf5b57}
.visual-stats .visual-stat-card{display:flex;align-items:center;gap:14px;min-height:112px}.visual-stat-card .stat-value{margin-top:2px}.visual-stat-card>div:last-child{min-width:0}
.dashboard-insight-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr);gap:16px;align-items:start;margin-top:4px}.dashboard-insight-grid>.presence-visual-card{margin-top:43px}
.presence-visual-card{padding:18px!important}.presence-visual-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.presence-visual-head h3{margin:2px 0 0}.presence-visual-head p{font-size:11px;color:var(--muted);margin:5px 0 0}.section-kicker{font-size:9px;letter-spacing:.11em;font-weight:800;color:#6e7f98}.presence-chart-wrap{display:grid;grid-template-columns:132px minmax(0,1fr);gap:18px;align-items:center;margin-top:20px}.presence-donut{width:128px;height:128px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#39b879 0 var(--p1),#e6aa43 var(--p1) var(--p2),#df6864 var(--p2) var(--p3),#7c8ca4 var(--p3) 100%);position:relative}.presence-donut:after{content:"";position:absolute;inset:20px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #edf1f6}.presence-donut>div{position:relative;z-index:1;display:grid;text-align:center}.presence-donut b{font-size:22px;line-height:1}.presence-donut span{font-size:9px;color:var(--muted);margin-top:3px}.presence-legend{display:grid;gap:9px}.presence-legend>div{display:grid;grid-template-columns:10px 1fr auto;gap:7px;align-items:center;font-size:11px}.presence-legend b{font-size:12px}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-dot.verified{background:#39b879}.legend-dot.requested{background:#e6aa43}.legend-dot.attention{background:#df6864}.legend-dot.clocked{background:#7c8ca4}.compact-empty{padding:26px 6px 10px}
.attendance-visual-summary{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.75fr);gap:14px;margin:0 0 14px}.attendance-mini-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mini-stat{display:flex;align-items:center;gap:12px;padding:14px!important;min-height:76px}.mini-stat .metric-icon{width:36px;height:36px;flex-basis:36px;border-radius:10px}.mini-stat .metric-icon svg{width:19px;height:19px}.mini-stat span,.mini-stat b{display:block}.mini-stat span{font-size:10px;color:var(--muted);font-weight:700}.mini-stat b{font-size:21px;color:var(--ink);margin-top:2px}.attendance-visual-summary .presence-visual-card{padding:14px!important}.attendance-visual-summary .presence-chart-wrap{grid-template-columns:92px minmax(0,1fr);gap:13px;margin-top:12px}.attendance-visual-summary .presence-donut{width:88px;height:88px}.attendance-visual-summary .presence-donut:after{inset:14px}.attendance-visual-summary .presence-donut b{font-size:17px}.attendance-visual-summary .presence-legend{gap:5px}.attendance-visual-summary .presence-legend>div{font-size:9px}.attendance-visual-summary .presence-legend b{font-size:10px}
@media(max-width:1050px){.dashboard-insight-grid{grid-template-columns:1fr}.dashboard-insight-grid>.presence-visual-card{margin-top:0}.attendance-visual-summary{grid-template-columns:1fr}}
@media(max-width:760px){.visual-stats{grid-template-columns:1fr 1fr!important}.visual-stats .visual-stat-card{min-height:94px;padding:13px!important;display:grid;grid-template-columns:36px 1fr;gap:9px}.visual-stat-card .metric-icon{width:36px;height:36px;flex-basis:36px}.visual-stat-card .metric-icon svg{width:19px;height:19px}.visual-stat-card .stat-value{font-size:23px}.presence-chart-wrap{grid-template-columns:108px 1fr}.presence-donut{width:104px;height:104px}.attendance-mini-stats{grid-template-columns:1fr 1fr}.attendance-visual-summary .presence-chart-wrap{grid-template-columns:92px 1fr}}


/* F3E V6 Messages visual refresh */
.message-layout{gap:16px}
.message-sidebar,.message-thread{border:1px solid #dce7f2!important;border-radius:17px!important;background:#fff!important;box-shadow:0 10px 28px rgba(45,78,112,.075),0 2px 5px rgba(45,78,112,.045)!important}
.message-sidebar-head{min-height:70px;padding:15px 16px 13px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.message-sidebar-head h3{font-size:18px;letter-spacing:-.02em;color:#17263d}
.message-sidebar-head p{font-size:11px;color:#74839a}
.message-list-tabs{padding:9px 11px;background:#f7faff;gap:8px}
.message-list-tab{border-color:#dce7f2;border-radius:10px;background:#fff;font-weight:650;box-shadow:0 1px 2px rgba(45,78,112,.035)}
.message-list-tab.active{box-shadow:0 4px 12px rgba(37,142,231,.10)}
.message-contact{position:relative;min-height:72px;padding:12px 14px;border-bottom-color:#e6edf5;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}
.message-contact:hover{background:#f7fbff}
.message-contact.active{background:linear-gradient(90deg,color-mix(in srgb,var(--brand-primary) 10%,#fff),#fff);box-shadow:inset 3px 0 0 var(--brand-primary)}
.message-contact.has-unread{background:#fbfdff}
.message-contact.has-unread .message-contact-top b{font-weight:750;color:#17263d}
.message-contact.has-unread .message-preview{color:#34445d;font-weight:600}
.message-avatar{width:42px;height:42px;min-width:42px;border:1px solid rgba(37,142,231,.14);box-shadow:0 3px 9px rgba(37,142,231,.08);font-weight:750}
.message-contact[data-role="manager"] .message-avatar,.message-thread-person[data-role="manager"] .message-avatar{background:#eef0ff;color:#6256c8;border-color:#dcd8ff}
.message-contact[data-role="company_admin"] .message-avatar,.message-thread-person[data-role="company_admin"] .message-avatar{background:#e9f7f0;color:#26855a;border-color:#d3eddf}
.message-contact[data-role="employee"] .message-avatar,.message-thread-person[data-role="employee"] .message-avatar{background:#eaf4ff;color:#2873ba;border-color:#d5e9fb}
.message-contact-copy{gap:3px}
.message-contact-top b{font-size:13.5px;font-weight:650}
.message-preview{font-size:11.5px;color:#74839a}
.message-unread{min-width:21px;height:21px;border-radius:999px;font-weight:750;box-shadow:0 3px 8px rgba(37,142,231,.22)}
.message-thread{grid-template-rows:auto minmax(0,1fr) auto}
.message-thread-head{min-height:70px;padding:12px 16px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.message-thread-person b{font-size:14px;color:#17263d}
.message-thread-body{padding:20px;background:linear-gradient(180deg,#f6faff 0%,#f2f7fc 100%);gap:9px}
.message-bubble{padding:11px 13px;border-radius:15px;border-color:#dfe8f2;box-shadow:0 4px 12px rgba(45,78,112,.045)}
.message-row.theirs .message-bubble{background:#fff;color:#26364e}
.message-row.mine .message-bubble{background:linear-gradient(135deg,var(--brand-primary),color-mix(in srgb,var(--brand-primary) 78%,#4da5ff));box-shadow:0 6px 16px color-mix(in srgb,var(--brand-primary) 18%,transparent)}
.message-composer{padding:12px 14px;background:#fff;gap:10px}
.message-composer textarea{border-radius:13px!important;background:#f8fbfe;border-color:#dce7f2;box-shadow:inset 0 1px 2px rgba(45,78,112,.025)}
.message-composer textarea:focus{background:#fff}
.message-composer .btn{border-radius:11px;min-width:82px}
.message-call-event{border-radius:13px!important;background:#fff!important;border-color:#dce7f2!important;box-shadow:0 4px 12px rgba(45,78,112,.04)}
.call-event-icon{background:#eef7ff!important;color:#287ac2!important;border-radius:10px!important}
.new-message-search input{border-radius:12px;background:#f7faff}
.message-directory{border-color:#dce7f2;border-radius:13px;overflow:hidden}
.directory-contact{min-height:62px;border-bottom-color:#e7eef5}
.directory-contact:hover{background:#f7fbff}
@media(max-width:760px){
 .message-layout,.message-layout.sidebar-collapsed{height:calc(100dvh - 150px)}
 .message-sidebar,.message-thread{border-radius:14px!important}
 .message-sidebar-head{min-height:64px;padding:12px 13px}
 .message-contact{min-height:70px;padding:11px 12px}
 .message-avatar{width:40px;height:40px;min-width:40px}
 .message-thread-head{background:#fff}
 .message-thread-body{padding:12px 10px 14px;gap:8px}
 .message-bubble{max-width:90%;padding:10px 12px}
 .message-composer{padding:9px 10px calc(9px + env(safe-area-inset-bottom,0px));background:#fff}
 .message-composer textarea{min-height:44px}
}


/* V6 Timesheet summary refinement */
.timesheet-stats .timesheet-stat-card{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:104px;
  padding:16px 17px!important;
}
.timesheet-stat-card .metric-icon{
  width:40px;
  height:40px;
  flex:0 0 40px;
  border-radius:11px;
}
.timesheet-stat-card .metric-icon svg{width:21px;height:21px}
.timesheet-stat-copy{min-width:0}
.timesheet-stat-card .stat-label{margin-bottom:2px}
.timesheet-stat-card .stat-value{
  font-size:25px!important;
  line-height:1.08;
  letter-spacing:-.025em;
}
.timesheet-stat-card .stat-note{margin-top:5px}
@media(max-width:760px){
  .timesheet-stats .timesheet-stat-card{
    min-height:88px;
    padding:12px!important;
    gap:9px;
  }
  .timesheet-stat-card .metric-icon{
    width:34px;
    height:34px;
    flex-basis:34px;
    border-radius:9px;
  }
  .timesheet-stat-card .metric-icon svg{width:18px;height:18px}
  .timesheet-stat-card .stat-value{
    font-size:20px!important;
  }
  .timesheet-stat-card .stat-note{
    font-size:9px;
    line-height:1.25;
  }
}


/* Platform company feature master switches */
.platform-feature-panel{margin-top:18px;padding-top:18px;border-top:1px solid var(--line,#e3e8ef)}
.platform-feature-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.platform-feature-head h4{margin:0 0 4px}.platform-feature-head small{display:block;color:var(--muted,#667085);line-height:1.4}
.platform-module-list{display:grid;gap:8px;margin:10px 0 14px}
.platform-module-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid var(--line,#e3e8ef);border-radius:12px;background:#fff;cursor:pointer}
.platform-module-row.not-in-package{background:#f7f8fa;opacity:.72;cursor:not-allowed}
.platform-module-copy{display:grid;gap:3px}.platform-module-copy b{font-size:14px}.platform-module-copy small{color:var(--muted,#667085);font-size:12px;line-height:1.35}
.platform-module-switch{display:flex;align-items:center;gap:7px;min-width:74px;justify-content:flex-end;font-size:12px;font-weight:700}.platform-module-switch input{width:18px;height:18px;accent-color:var(--primary,#2878d0)}
@media(max-width:700px){.platform-module-row{align-items:flex-start}.platform-module-switch{min-width:62px}.platform-feature-head{align-items:flex-start}}


/* V6.2.5 Availability target interface */
.availability-page{max-width:980px;margin:0 auto}.availability-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin:0 0 28px}.availability-title-row h2{margin:0;color:var(--ink);font-size:32px;line-height:1.12;letter-spacing:-.025em}.availability-title-row p{margin:9px 0 0;color:var(--muted);font-size:16px;line-height:1.45}.availability-help{border:1px solid #cfe0f7;background:#edf5ff;color:#1265c4;border-radius:14px;padding:11px 16px;display:inline-flex;align-items:center;gap:9px;font:inherit;font-weight:700;cursor:pointer;box-shadow:0 6px 18px rgba(31,86,151,.07);white-space:nowrap}.availability-help-icon{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#1671dc;color:#fff;font-size:15px;font-weight:800}.availability-guide{margin:-12px 0 22px;padding:18px 20px}.availability-guide p{margin:0 0 14px}.availability-guide p:last-child{margin-bottom:0}.availability-action-stack{display:grid;gap:16px}.availability-action-card{padding:0;overflow:hidden;border-radius:20px}.availability-action-head{width:100%;border:0;background:transparent;padding:20px 24px;display:grid;grid-template-columns:76px minmax(0,1fr) 32px;align-items:center;gap:18px;text-align:left;cursor:pointer;color:inherit;font:inherit}.availability-action-icon{width:64px;height:64px;border-radius:16px;display:grid;place-items:center}.availability-action-icon svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.availability-action-icon-record{background:#e9f8f1;color:#0e9a64}.availability-action-icon-request{background:#edf4ff;color:#116bd5}.availability-action-icon-records{background:#f3edff;color:#7142b9}.availability-action-icon-work{background:#fff4e5;color:#b65b00}.availability-action-copy{min-width:0;display:block}.availability-action-copy strong{display:block;color:var(--ink);font-size:20px;line-height:1.2;letter-spacing:-.01em}.availability-action-copy small{display:block;margin-top:7px;color:var(--muted);font-size:14px;line-height:1.4}.availability-action-chevron{justify-self:end;color:#59697b;font-size:42px;font-weight:300;line-height:1;transition:transform .18s ease}.availability-action-open .availability-action-chevron{transform:rotate(90deg)}.availability-action-body{border-top:1px solid var(--line);padding:20px 24px 24px}.availability-action-card.mobile-collapsed .availability-action-body{display:none}.availability-action-card form{display:grid;gap:14px;margin:0}.availability-action-card.mobile-list-box .leave-list-scroll,.availability-action-card.mobile-list-box .availability-list-scroll{margin:0;max-height:360px;border:0;border-radius:0}.availability-action-card .mobile-collapse-toggle{display:grid;min-width:0}.availability-action-card .mobile-collapse-body{min-width:0}
@media(max-width:760px){.availability-page{max-width:none}.availability-title-row{gap:12px;margin-bottom:22px}.availability-title-row h2{font-size:28px}.availability-title-row p{font-size:15px;line-height:1.4;margin-top:7px}.availability-help{padding:9px 12px;border-radius:13px;gap:7px}.availability-help-icon{width:22px;height:22px}.availability-action-stack{gap:14px}.availability-action-card{border-radius:18px}.availability-action-head{grid-template-columns:62px minmax(0,1fr) 24px;gap:14px;padding:17px 18px}.availability-action-icon{width:56px;height:56px;border-radius:14px}.availability-action-icon svg{width:31px;height:31px}.availability-action-copy strong{font-size:18px}.availability-action-copy small{font-size:13px;margin-top:5px;line-height:1.35}.availability-action-chevron{font-size:36px}.availability-action-body{padding:17px 18px 20px}.availability-action-card:not(.mobile-collapsed) .availability-action-head{border-bottom:0;margin-bottom:0}.availability-action-card .mobile-collapse-head{border:0}.availability-action-card.mobile-list-box .mobile-collapse-body{padding:17px 18px 20px}.availability-action-card.mobile-list-box .leave-list-scroll,.availability-action-card.mobile-list-box .availability-list-scroll{max-height:360px}}
@media(max-width:480px){.availability-title-row h2{font-size:26px}.availability-title-row p{font-size:14px}.availability-help span:last-child{display:inline}.availability-action-head{grid-template-columns:54px minmax(0,1fr) 22px;gap:12px;padding:15px 16px}.availability-action-icon{width:50px;height:50px;border-radius:13px}.availability-action-icon svg{width:28px;height:28px}.availability-action-copy strong{font-size:17px}.availability-action-copy small{font-size:12.5px}.availability-action-chevron{font-size:32px}}


/* V6.2.6 app-wide Availability-style collapsible controls */
.slick-chevron-toggle{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:#59697b;display:inline-grid;place-items:center;width:44px;height:44px;min-width:44px;padding:0;border-radius:12px;cursor:pointer;font:inherit;box-shadow:none;transition:background .16s ease,color .16s ease}
.slick-chevron-toggle:hover{background:#f3f6fa}.slick-chevron-toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:2px}
.slick-chevron-toggle>span{display:block;font-size:36px;font-weight:300;line-height:1;transform:rotate(0deg);transition:transform .18s ease;transform-origin:center}
.slick-collapse-open>.mobile-collapse-head .slick-chevron-toggle>span,.settings-collapse-box.slick-collapse-open>.section-head .slick-chevron-toggle>span,.settings-collapse-box.slick-collapse-open>.policy-card-head .slick-chevron-toggle>span,.platform-collapse-box.slick-collapse-open>.platform-collapse-head .slick-chevron-toggle>span,.global-mobile-collapse-wrap.slick-collapse-open>.global-mobile-list-head .slick-chevron-toggle>span,.notification-history-box.slick-collapse-open>.notification-history-head .slick-chevron-toggle>span{transform:rotate(90deg)}
.availability-help{gap:0}.availability-help-icon{display:none!important}
@media(max-width:760px){
  .mobile-collapse-head{align-items:center;padding:15px 16px;min-height:72px}
  .mobile-collapse-head h3{font-size:17px;line-height:1.25}.mobile-collapse-head p{font-size:12.5px;line-height:1.35;margin-top:5px}
  .mobile-collapse-toggle{display:inline-grid;min-width:44px;padding:0}
  .mobile-collapse-box{border-radius:18px;box-shadow:0 8px 24px rgba(30,45,75,.055)}
  .mobile-collapse-box:not(.mobile-collapsed) .mobile-collapse-head{margin-bottom:0;border-bottom:1px solid var(--line)}
  .mobile-collapse-body{padding:16px}
  .settings-section.settings-collapse-box,.policy-card.settings-collapse-box{border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(30,45,75,.045)}
  .settings-section.settings-collapse-box>.section-head,.policy-card.settings-collapse-box>.policy-card-head{align-items:center!important;min-height:68px}
  .settings-collapse-toggle{display:inline-grid!important;width:44px!important;min-width:44px!important;height:44px!important;padding:0!important;border:0!important;background:transparent!important}
  .settings-collapse-label{display:none!important}
  .platform-collapse-box{border-radius:18px;overflow:hidden}.platform-collapse-head{align-items:center;min-height:68px;padding:14px 15px}.platform-collapse-toggle{display:inline-grid!important}
  .global-mobile-list-head{min-height:64px;padding:12px 14px}.global-mobile-list-meta b{font-size:14px}.global-mobile-list-meta small{font-size:10.5px}.global-mobile-list-toggle{min-width:44px!important;width:44px!important;padding:0!important}
  .notification-history-head{min-height:64px;padding:12px 14px}.notification-history-head b{font-size:14px}.notification-history-head small{font-size:10.5px}
  .notification-history-box.slick-collapse-open .notification-history-head{border-bottom:1px solid var(--line)}
}
@media(max-width:760px){
  .collapsible-section-head .collapse-btn{display:inline-grid!important;width:44px!important;min-width:44px!important;height:44px!important;padding:0!important}
  .collapsible-section-head.slick-collapse-open .collapse-btn>span{transform:rotate(90deg)}
  .collapse-label{display:none!important}
}

/* V6.2.7 Availability spacing refinement - approved visual reference */
@media(max-width:760px){
  .availability-action-head{
    grid-template-columns:62px minmax(0,1fr) 24px;
    column-gap:18px;
    padding:20px 28px 20px 24px;
  }
  .availability-action-icon{margin-left:0}
  .availability-action-chevron{justify-self:end;margin-right:0}
}
@media(max-width:480px){
  .availability-action-head{
    grid-template-columns:54px minmax(0,1fr) 22px;
    column-gap:16px;
    padding:18px 24px 18px 20px;
  }
  .availability-action-icon{margin-left:0}
  .availability-action-chevron{justify-self:end;margin-right:0}
}

/* V6.2.8 mobile Availability spacing correction */
@media(max-width:760px){
  .availability-action-card .availability-action-head.mobile-collapse-toggle{
    padding-top:20px!important;
    padding-bottom:20px!important;
    padding-left:28px!important;
    padding-right:30px!important;
    column-gap:22px!important;
  }
  .availability-action-card .availability-action-icon{margin-left:0!important}
  .availability-action-card .availability-action-chevron{justify-self:end!important;margin-right:0!important}
}
@media(max-width:480px){
  .availability-action-card .availability-action-head.mobile-collapse-toggle{
    grid-template-columns:54px minmax(0,1fr) 22px!important;
    padding-top:18px!important;
    padding-bottom:18px!important;
    padding-left:26px!important;
    padding-right:28px!important;
    column-gap:20px!important;
  }
}

/* V6.2.9 Availability Help polish */
.availability-help{
  min-width:88px;
  justify-content:center;
  text-align:center;
  box-sizing:border-box;
}
.availability-guide{
  overflow:hidden;
  opacity:0;
  transform:translateY(-10px) scale(.985);
  max-height:0;
  margin-top:-12px;
  margin-bottom:0;
  padding-top:0;
  padding-bottom:0;
  transition:max-height 1s ease,opacity 1s ease,transform 1s ease,
             padding-top 1s ease,padding-bottom 1s ease,margin-bottom 1s ease;
}
.availability-guide.availability-guide-open{
  opacity:1;
  transform:translateY(0) scale(1);
  max-height:420px;
  margin-bottom:22px;
  padding-top:18px;
  padding-bottom:18px;
}

/* V6.2.10 Help countdown line and touch pause/resume */
.availability-guide{position:relative}
.availability-guide-timer{
  --guide-progress:100%;
  position:absolute;
  left:8px;
  top:12px;
  width:2px;
  height:calc(100% - 24px);
  border-radius:2px;
  background:linear-gradient(to bottom,rgba(76,128,190,.16) 0 var(--guide-progress),rgba(76,128,190,0) var(--guide-progress) 100%);
  pointer-events:none;
  transition:background .2s linear,opacity .2s ease;
  opacity:.8;
}
.availability-guide.availability-guide-paused .availability-guide-timer{opacity:.45}

/* V6.2.11 Help countdown indicator refinement */
.availability-guide-timer{
  --guide-progress:100%;
  --guide-dot-hue:120;
  position:absolute;
  left:8px;
  top:12px;
  width:4px;
  height:calc(100% - 24px);
  border-radius:4px;
  background:rgba(102,145,190,.10);
  overflow:visible;
  pointer-events:none;
  opacity:.95;
}
.availability-guide-timer::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:4px;
  height:var(--guide-progress);
  border-radius:4px;
  background:rgba(91,142,197,.24);
}
.availability-guide-timer-dot{
  position:absolute;
  left:50%;
  top:var(--guide-progress);
  width:10px;
  height:10px;
  border-radius:50%;
  transform:translate(-50%,-50%);
  background:hsl(var(--guide-dot-hue) 58% 48%);
  box-shadow:0 0 0 3px color-mix(in srgb,hsl(var(--guide-dot-hue) 58% 48%) 12%,transparent);
}
.availability-guide-timer.guide-final-three .availability-guide-timer-dot{
  animation:availabilityTimerPulse .8s ease-in-out infinite;
}
.availability-guide.availability-guide-paused .availability-guide-timer-dot{
  animation-play-state:paused;
}
@keyframes availabilityTimerPulse{
  0%,100%{transform:translate(-50%,-50%) scale(1);box-shadow:0 0 0 3px color-mix(in srgb,hsl(var(--guide-dot-hue) 58% 48%) 12%,transparent)}
  50%{transform:translate(-50%,-50%) scale(1.28);box-shadow:0 0 0 7px color-mix(in srgb,hsl(var(--guide-dot-hue) 58% 48%) 8%,transparent)}
}

/* V6.2.12 configurable Help timer and site-wide chevron motion */
.availability-guide-timer{
  background:color-mix(in srgb,var(--help-countdown-colour,#5B8EC5) 10%,transparent);
}
.availability-guide-timer::before{
  top:calc(100% - var(--guide-progress));
  height:var(--guide-progress);
  background:color-mix(in srgb,var(--help-countdown-colour,#5B8EC5) 34%,transparent);
}
.availability-guide-timer-dot{
  top:calc(100% - var(--guide-progress));
}
.branding-motion-settings{display:grid;gap:14px;margin-top:18px;padding-top:4px}
.branding-motion-settings .platform-form-divider{margin-top:0}
.branding-motion-check{margin:2px 0}
html.chevron-animations-enabled .slick-chevron-toggle>span{
  transition:transform var(--chevron-animation-duration,1s) cubic-bezier(.22,.72,.22,1);
}

/* V6.2.13 anchored panel motion and soft landings */
.availability-guide{
  margin-top:0!important;
  margin-bottom:22px;
  max-height:none!important;
  transition:none!important;
  transform:none;
}
.availability-guide.hidden{display:none!important}
.availability-guide.availability-guide-open{
  max-height:none!important;
  margin-bottom:22px;
  padding-top:18px;
  padding-bottom:18px;
}
.leave-types-controls{
  display:flex;
  justify-content:flex-start;
  align-items:center;
  margin:2px 0 12px;
}
.leave-types-controls #addLeaveType{
  flex:0 0 auto;
}
html.chevron-animations-enabled .slick-chevron-toggle>span,
html.chevron-animations-enabled .availability-action-chevron{
  transition:transform var(--chevron-animation-duration,1s) cubic-bezier(.22,.72,.22,1);
  transform-origin:center;
}
@media(prefers-reduced-motion:reduce){
  .availability-guide,.slick-chevron-toggle>span,.availability-action-chevron{animation:none!important;transition:none!important}
}

/* V6.2.14 Availability anchored motion + Company Branding heading layout */
.company-branding-head>div{
  min-width:0;
  width:100%;
}
.company-branding-status{
  margin-top:9px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
}
.availability-action-card{
  overflow:hidden;
}
.availability-action-card .availability-action-head{
  position:relative;
  z-index:2;
  background:#fff;
}
.availability-action-card .availability-action-body{
  transform-origin:top;
  position:relative;
  z-index:1;
}
.availability-action-card.mobile-collapsed .availability-action-body{
  display:none;
}
.availability-guide{
  transform:none!important;
  transform-origin:top!important;
}
@media(max-width:760px){
  .company-branding-head{
    align-items:flex-start!important;
  }
  .company-branding-status{
    margin-top:8px;
  }
}

/* V6.2.15 interface refinements */
.help-countdown-colour-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.help-colour-reference{display:block;width:100%;height:2px;border:0;padding:0;border-radius:2px;margin:8px 0 3px;background:var(--help-reference,#5B8EC5);cursor:pointer}
.interface-collapse-box{overflow:hidden}
.interface-collapse-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.interface-collapse-head>div{min-width:0;flex:1}
.interface-collapse-head p{margin:4px 0 0;color:var(--muted);font-size:12px}
.interface-collapse-body{min-width:0}
.interface-collapsed>.interface-collapse-body{display:none!important}
.schedule-view-card>.interface-collapse-head{margin-bottom:12px}
.bulk-schedule-card>.interface-collapse-head{margin-bottom:14px}
.schedule-list-collapse{padding:16px 18px}
.schedule-list-collapse>.schedule-list-head{margin-bottom:12px}
.report-filters>.interface-collapse-head,.report-results-collapse>.interface-collapse-head{margin-bottom:14px}
.report-results-collapse{padding:16px 18px;margin-top:14px}
.report-results-collapse #reportBody{min-width:0}
.presence-mobile-list{display:none}
@media(max-width:760px){
 .presence-mobile-list{display:grid}
 .presence-table-card .responsive-table-desktop{display:none!important}
 .schedule-list-collapse,.report-results-collapse{padding:14px}
}

/* V6.2.16 People, Locations and Employee Home collapsibles */
.company-timezone-card.interface-collapse-box{padding:16px 18px}
.company-timezone-card.interface-collapse-box>.interface-collapse-head{margin-bottom:12px}
.people-workforce .form-card.interface-collapse-box,
.split.wide-left .form-card.interface-collapse-box{padding:16px 18px}
.people-workforce .form-card.interface-collapse-box>.interface-collapse-head,
.split.wide-left .form-card.interface-collapse-box>.interface-collapse-head{margin-bottom:14px}
.people-workforce .form-card.interface-collapse-box h3,
.split.wide-left .form-card.interface-collapse-box h3{margin:0}
#recentAttendanceBody{transform-origin:top}
@media(max-width:760px){
 .company-timezone-card.interface-collapse-box,
 .people-workforce .form-card.interface-collapse-box,
 .split.wide-left .form-card.interface-collapse-box{padding:14px}
}

/* V6.2.17 anchored collapsibles + smart reveal scrolling */
.interface-collapse-box>.interface-collapse-head{position:relative;z-index:2;background:var(--card,#fff)}
.interface-collapse-box>.interface-collapse-body{position:relative;z-index:1;transform-origin:top}
.interface-collapsed>.interface-collapse-body{display:none!important}
.interface-collapsed>.interface-collapse-head{margin-bottom:0!important}
.settings-collapse-box>.settings-collapse-body{position:relative;z-index:1;transform-origin:top;min-width:0}
.settings-collapsed>.settings-collapse-body{display:none!important}
.settings-collapse-box>.section-head,
.settings-collapse-box>.policy-card-head{position:relative;z-index:2;background:var(--card,#fff)}
.settings-collapsed>:not(.section-head):not(.policy-card-head):not(.settings-collapse-body){display:initial}
.workforce-collapse-box{padding:16px 18px}
.workforce-collapse-box>.interface-collapse-head{margin-bottom:12px}
.workforce-collapse-box .table-card{padding:0;overflow:auto}
.dashboard-recent-collapse{padding:16px 18px}
.dashboard-recent-collapse>.interface-collapse-head{margin-bottom:12px}
.dashboard-recent-collapse .table-card{padding:0;overflow:auto}
.interface-collapse-head,.collapsible-section-head,.settings-collapse-box>.section-head,.settings-collapse-box>.policy-card-head{
 scroll-margin-top:76px;
}
@media(max-width:760px){
 .workforce-collapse-box,.dashboard-recent-collapse{padding:14px}
}

/* V6.2.19 smooth-close stabilization */
.interface-collapsed>.interface-collapse-head,
.settings-collapsed>.section-head,
.settings-collapsed>.policy-card-head,
.platform-collapsed>.platform-collapse-head,
.global-mobile-collapsed>.global-mobile-list-head,
.notification-history-collapsed>.notification-history-head,
.mobile-collapse-box.mobile-collapsed>.mobile-collapse-head{
  margin-bottom:0!important;
  border-bottom-width:0!important;
}
.interface-collapse-body,
.settings-collapse-body,
.platform-collapse-body,
.global-mobile-list-body,
.notification-history-body,
.mobile-collapse-body,
.availability-action-body{
  transform-origin:top;
  min-height:0;
}

/* V6.2.21 single-chevron sections, schedule header placement and settings copy */
.verification-calling-settings>.policy-card-head>div,
.verified-presence-settings>.policy-card-head>div{
  width:100%;
  max-width:none;
  min-width:0;
  flex:1 1 auto;
}
.verification-calling-settings>.policy-card-head p,
.verified-presence-settings>.policy-card-head p{
  max-width:none;
  margin-top:6px;
  line-height:1.55;
  padding-right:8px;
}
.interface-collapse-head>.interface-collapse-toggle{
  margin-left:auto;
  flex:0 0 44px;
  align-self:flex-start;
}
.schedule-view-card>.schedule-view-head>.interface-collapse-toggle,
.schedule-list-collapse>.schedule-list-head>.interface-collapse-toggle{
  margin-left:auto;
}
.presence-page-title{align-items:flex-start}
.presence-table-card{overflow:hidden}
@media(max-width:760px){
  .schedule-view-card>.schedule-view-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 44px;
    grid-template-areas:
      "copy toggle"
      "summary toggle";
    column-gap:10px;
    row-gap:4px;
    align-items:start!important;
    flex-direction:initial!important;
  }
  .schedule-view-card>.schedule-view-head>div{grid-area:copy;min-width:0}
  .schedule-view-card>.schedule-view-head>.muted{grid-area:summary;text-align:left!important;min-width:0}
  .schedule-view-card>.schedule-view-head>.interface-collapse-toggle{
    grid-area:toggle;
    justify-self:end;
    align-self:start;
    margin-left:0;
  }

  .schedule-list-collapse>.schedule-list-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 44px;
    grid-template-areas:
      "copy toggle"
      "actions actions";
    column-gap:10px;
    row-gap:10px;
    align-items:start!important;
    flex-direction:initial!important;
  }
  .schedule-list-collapse>.schedule-list-head>div:first-child{grid-area:copy;min-width:0}
  .schedule-list-collapse>.schedule-list-head>.schedule-list-actions{
    grid-area:actions;
    width:100%;
  }
  .schedule-list-collapse>.schedule-list-head>.interface-collapse-toggle{
    grid-area:toggle;
    justify-self:end;
    align-self:start;
    margin-left:0;
  }

  .verification-calling-settings>.policy-card-head,
  .verified-presence-settings>.policy-card-head{
    align-items:flex-start!important;
  }
  .verification-calling-settings>.policy-card-head>div,
  .verified-presence-settings>.policy-card-head>div{
    width:100%;
  }
}

/* V6.2.22 app-wide chevron direction + adaptive mobile header text */

/* Keep the established chevron glyph, size and weight. Only its orientation changes.
   Closed = down. Open = up. */
.slick-chevron-toggle>span,
.availability-action-chevron{
  transform:rotate(90deg);
}
.slick-collapse-open>.mobile-collapse-head .slick-chevron-toggle>span,
.settings-collapse-box.slick-collapse-open>.section-head .slick-chevron-toggle>span,
.settings-collapse-box.slick-collapse-open>.policy-card-head .slick-chevron-toggle>span,
.platform-collapse-box.slick-collapse-open>.platform-collapse-head .slick-chevron-toggle>span,
.global-mobile-collapse-wrap.slick-collapse-open>.global-mobile-list-head .slick-chevron-toggle>span,
.notification-history-box.slick-collapse-open>.notification-history-head .slick-chevron-toggle>span,
.collapsible-section-head.slick-collapse-open .collapse-btn>span,
.interface-collapse-box.slick-collapse-open>.interface-collapse-head .slick-chevron-toggle>span,
.availability-action-open .availability-action-chevron{
  transform:rotate(-90deg);
}

/* On mobile, the chevron only reserves the upper-right corner.
   Wrapped lines below it can use the full card width. */
@media(max-width:760px){
  .interface-collapse-head,
  .settings-collapse-box>.section-head,
  .settings-collapse-box>.policy-card-head,
  .mobile-collapse-head{
    position:relative;
    display:block;
    min-width:0;
  }

  .interface-collapse-head>.interface-collapse-toggle,
  .settings-collapse-box>.section-head>.settings-collapse-toggle,
  .settings-collapse-box>.policy-card-head>.settings-collapse-toggle,
  .mobile-collapse-head>.mobile-collapse-toggle{
    position:absolute;
    top:0;
    right:0;
    margin:0!important;
    z-index:3;
  }

  .interface-collapse-head>div,
  .settings-collapse-box>.section-head>div,
  .settings-collapse-box>.policy-card-head>div,
  .mobile-collapse-head>div{
    width:100%;
    max-width:none;
    min-width:0;
    display:block;
  }

  .interface-collapse-head>div::before,
  .settings-collapse-box>.section-head>div::before,
  .settings-collapse-box>.policy-card-head>div::before,
  .mobile-collapse-head>div::before{
    content:"";
    float:right;
    width:54px;
    height:46px;
  }

  /* Schedule headers retain their action rows while using the same corner-wrap rule. */
  .schedule-view-card>.schedule-view-head,
  .schedule-list-collapse>.schedule-list-head{
    position:relative;
    display:block!important;
  }
  .schedule-view-card>.schedule-view-head>.interface-collapse-toggle,
  .schedule-list-collapse>.schedule-list-head>.interface-collapse-toggle{
    position:absolute;
    top:0;
    right:0;
    margin:0!important;
  }
  .schedule-view-card>.schedule-view-head>.muted{
    display:block;
    width:100%;
    text-align:left!important;
    margin-top:5px;
  }
  .schedule-list-collapse>.schedule-list-head>.schedule-list-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    width:100%;
    margin-top:10px;
  }

  /* Availability keeps its current icon and chevron sizing, but the chevron no longer
     forces a permanent narrow text column below its own height. */
  .availability-action-card .availability-action-head.mobile-collapse-toggle{
    position:relative;
    grid-template-columns:54px minmax(0,1fr)!important;
  }
  .availability-action-card .availability-action-chevron{
    position:absolute;
    top:18px;
    right:28px;
    margin:0!important;
    transform-origin:center;
  }
  .availability-action-card .availability-action-copy{
    min-width:0;
    width:100%;
  }
  .availability-action-card .availability-action-copy::before{
    content:"";
    float:right;
    width:46px;
    height:48px;
  }
}
@media(max-width:480px){
  .availability-action-card .availability-action-chevron{
    top:16px;
    right:26px;
  }
  .availability-action-card .availability-action-copy::before{
    width:42px;
    height:46px;
  }
}

@media(max-width:760px){
  /* Extend the same corner-wrap behaviour to the remaining app-wide chevron headers. */
  .global-mobile-list-head,
  .notification-history-head,
  .collapsible-section-head{
    position:relative;
    display:block;
    min-width:0;
  }
  .global-mobile-list-head>.global-mobile-list-toggle,
  .notification-history-head .slick-chevron-toggle,
  .collapsible-section-head>.collapse-btn{
    position:absolute;
    top:0;
    right:0;
    margin:0!important;
    z-index:3;
  }
  .global-mobile-list-head>.global-mobile-list-meta,
  .notification-history-head>div:first-child,
  .collapsible-section-head>div:first-child{
    width:100%;
    max-width:none;
    min-width:0;
    display:block;
  }
  .global-mobile-list-head>.global-mobile-list-meta::before,
  .notification-history-head>div:first-child::before,
  .collapsible-section-head>div:first-child::before{
    content:"";
    float:right;
    width:54px;
    height:46px;
  }

  .platform-collapse-head{
    position:relative;
    display:block;
    min-width:0;
  }
  .platform-collapse-head>div:first-child{
    width:100%;
    max-width:none;
    min-width:0;
    display:block;
  }
  .platform-collapse-head>div:first-child::before{
    content:"";
    float:right;
    width:54px;
    height:46px;
  }
  .platform-collapse-head>.platform-collapse-toggle{
    position:absolute;
    top:14px;
    right:15px;
    margin:0!important;
  }
  .platform-collapse-head>.platform-collapse-head-actions{
    position:absolute;
    top:14px;
    right:15px;
    margin:0;
    display:flex;
    align-items:center;
    gap:8px;
  }
  .platform-collapse-head:has(>.platform-collapse-head-actions)>div:first-child::before{
    width:170px;
    height:46px;
  }
}

/* V6.2.23 consistent contextual count labels */
.count-badge{
  margin-left:8px;
  white-space:nowrap;
  letter-spacing:.01em;
}
.count-inline{
  display:block;
  margin-top:4px;
  letter-spacing:.01em;
}
@media(max-width:760px){
  .section-head>.count-badge,
  .interface-collapse-head>.count-badge{
    margin-left:0;
    margin-top:7px;
  }
  .platform-collapse-head-actions .count-badge{
    margin-left:0;
  }
}

/* V6.2.24 plain bracketed counts + Company Recent Attendance cleanup */
.count-badge{
  background:transparent!important;
  color:var(--muted)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  font-size:11.5px;
  font-weight:750;
  line-height:1.35;
}
.count-inline{
  color:var(--muted);
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.dashboard-recent-collapse .count-inline{
  margin-top:5px;
}

/* V6.2.25 Employee Home / Schedule polish + full-header mobile collapse targets */
.employee-work-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  min-width:104px;
}

@media(max-width:760px){
  .personal-hero .employee-work-status{
    align-self:center;
    justify-self:center;
    text-align:center;
  }

  .employee-schedule-head{
    margin-top:12px;
    margin-bottom:7px;
    gap:5px;
  }
  .employee-schedule-head>.count-badge{
    order:-1;
    width:100%;
    margin-top:0!important;
    margin-bottom:1px;
    line-height:1.2;
  }
  .employee-schedule-head>div{
    width:100%;
  }
  .employee-schedule-head .section-sub{
    margin-top:3px;
  }

  .interface-collapse-head,
  .settings-collapse-box>.section-head,
  .settings-collapse-box>.policy-card-head,
  .platform-collapse-head,
  .global-mobile-list-head,
  .notification-history-head,
  .collapsible-section-head,
  .mobile-collapse-head{
    cursor:pointer;
    -webkit-tap-highlight-color:rgba(40,92,184,.06);
  }

  /* Interactive controls within a tappable header remain independent. */
  .interface-collapse-head button,
  .settings-collapse-box>.section-head button,
  .settings-collapse-box>.policy-card-head button,
  .platform-collapse-head button,
  .global-mobile-list-head button,
  .notification-history-head button,
  .collapsible-section-head button,
  .mobile-collapse-head button{
    cursor:pointer;
  }
}

/* V6.2.26 distance measurement settings */
.branding-measurement-settings{display:grid;gap:12px;margin-top:16px}
.branding-measurement-settings label{max-width:520px}

/* V6.2.27 Schedule mobile action alignment */
@media(max-width:760px){
  .schedule-list-collapse>.schedule-list-head>.schedule-list-actions{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px;
    width:100%;
    max-width:100%;
  }
  .schedule-list-collapse>.schedule-list-head>.schedule-list-actions .btn{
    flex:1 1 0;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    white-space:nowrap;
    padding-left:8px;
    padding-right:8px;
    font-size:11px;
  }
}

/* V6.2.28 unscheduled attendance */
.attendance-unscheduled-badge{display:block;width:max-content;margin-top:5px}

/* V6.2.32 Schedule day overview */
.schedule-day{padding:0!important;display:flex;flex-direction:column;overflow:hidden}
.schedule-date-number{flex:1;width:100%!important;height:auto!important;min-height:46px;border-radius:0!important;display:grid!important;place-items:center!important;margin:0!important;padding:8px}
.schedule-date-number{touch-action:none;-webkit-user-select:none;user-select:none}
.schedule-info-zone{touch-action:manipulation}
.schedule-info-zone{display:grid!important;grid-template-rows:1fr 1fr;width:100%!important;height:42px!important;min-height:42px;border-top:1px solid var(--line);background:#fafbfd;align-content:center;padding:3px 6px;cursor:default}
.schedule-info-zone.has-schedule-info{cursor:pointer;background:#f7f9fc}
.schedule-info-zone.has-schedule-info:hover{background:#eef4ff}
.schedule-zone-line{display:flex!important;align-items:center;justify-content:center;width:100%!important;height:auto!important;min-height:17px;border-radius:0!important;font-size:9px;font-weight:800;color:#52627a!important;line-height:1.1}
.schedule-zone-unavailable{color:#8a6418!important}
.schedule-zone-mobile{display:none!important;width:auto!important;height:auto!important;border-radius:0!important;font:inherit!important;color:inherit!important}
.schedule-zone-desktop{display:inline!important;width:auto!important;height:auto!important;border-radius:0!important;font:inherit!important;color:inherit!important}
.schedule-zone-empty{visibility:hidden}
.schedule-day.selected .schedule-date-number{background:var(--blue);color:#fff}
.schedule-day.selected .schedule-info-zone{background:#f7f9fc}
.schedule-day.today:not(.selected) .schedule-date-number{box-shadow:inset 0 0 0 2px #8eb0f6;color:#285cb8}
.schedule-view-head b,.bulk-schedule-card>.interface-collapse-head b{font-size:14px}
.day-overview-section{margin-top:14px}.day-overview-section h4{margin:0 0 8px}.day-overview-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.day-overview-row:last-child{border-bottom:0}.day-overview-row b,.day-overview-row small{display:block}.day-overview-row small{margin-top:3px;color:var(--muted);font-size:11px}.day-overview-row strong{font-size:12px;white-space:nowrap}
.modal-backdrop.modal-motion-enter{opacity:0;transition:opacity var(--modal-motion-ms,1s) cubic-bezier(.22,.72,.22,1)}
.modal-backdrop.modal-motion-enter .modal-card{opacity:0;transform:translateY(18px) scale(.985);transition:opacity var(--modal-motion-ms,1s) cubic-bezier(.22,.72,.22,1),transform var(--modal-motion-ms,1s) cubic-bezier(.22,.72,.22,1)}
.modal-backdrop.modal-motion-open{opacity:1}.modal-backdrop.modal-motion-open .modal-card{opacity:1;transform:translateY(0) scale(1)}
.modal-backdrop.modal-motion-close{opacity:0}.modal-backdrop.modal-motion-close .modal-card{opacity:0;transform:translateY(12px) scale(.99)}
@media(max-width:760px){
 .schedule-date-number{min-height:38px;padding:5px}
 .schedule-info-zone{height:38px!important;min-height:38px;padding:2px 4px}
 .schedule-zone-line{font-size:9px;min-height:16px}
 .schedule-zone-mobile{display:inline!important}.schedule-zone-desktop{display:none!important}
 .day-overview-row{align-items:flex-start}.day-overview-row strong{font-size:11px}
}
.schedule-day.selected .schedule-info-zone span{background:transparent!important;color:inherit!important;box-shadow:none!important}
.schedule-day.selected .schedule-info-zone .schedule-zone-shifts{color:#52627a!important}
.schedule-day.selected .schedule-info-zone .schedule-zone-unavailable{color:#8a6418!important}

/* V7.1 automatic checkout policy */
.auto-checkout-switches{display:grid;gap:12px}.auto-checkout-duration{display:grid;grid-template-columns:minmax(180px,1fr) minmax(90px,120px) minmax(90px,120px);gap:10px;align-items:end;padding:2px 0 8px 28px}.auto-checkout-duration>span{align-self:center;font-size:.9rem;color:var(--muted)}.auto-checkout-duration label{margin:0}.auto-checkout-inherit{margin-bottom:4px}.attendance-auto-source{margin-top:3px;font-weight:700;color:var(--muted)}
@media(max-width:760px){.auto-checkout-duration{grid-template-columns:1fr 1fr;padding-left:0}.auto-checkout-duration>span{grid-column:1/-1}.attendance-auto-source{display:block}}
