:root{
 --bg:#F8F6F1;--surface:#fff;--surface2:#EEF3F7;--ink:#29313D;--muted:#687382;
 --line:#D9E0E5;--accent:#4F8FCB;--accent2:#315F8C;--danger:#b42318;--warn:#b54708;
 --success:#067647;--radius:16px;--shadow:0 8px 30px rgba(16,24,40,.08);
 --nav:#303654;--nav-ink:#F7F8FC;--tap:48px;
 /* Semantic pastel accents (Section 6/11 design tokens) — additive, do not replace the tokens above.
    These are literal (non-derived) fallbacks for guest/print/pre-theme contexts. The theme-derived
    --primary-soft/--primary-border/--primary-strong/--focus-ring/--surface-subtle are declared on
    body below (NOT here) because color-mix(var(--accent)) must be computed on the same element
    where the theme engine's inline --accent override actually lives, or it freezes to this fallback. */
 --info:#175cd3;--info-soft:#eff8ff;--info-border:#b2ddff;
 --success-soft:#ecfdf3;--success-border:#abefc6;
 --warning-soft:#fffaeb;--warning-border:#fedf89;
 --danger-soft:#fef3f2;--danger-border:#fecdca;
 --primary-soft:#E8F2FA;--primary-border:#C8DDEF;--primary-strong:#315F8C;
 --secondary:#7567A8;--secondary-soft:#F0EDF7;--secondary-border:#D9D2EA;--warm-accent:#D98255;--warm-accent-soft:#FBEDE4;--notice-soft:#FFF1BF;--human-accent:#E8A6B4;--human-accent-soft:#FAEDF0;
 --text-secondary:#475467;--focus-ring:0 0 0 3px #D8E8F5;
 --surface-subtle:#f5f6f9;
}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
.btn,.nav-link,.tab,.badge,select,.input,.select,.textarea,.card,.status-btn{transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}
@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}
body{margin:0;background:var(--bg)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
button{cursor:pointer}.app{min-height:100vh;display:grid;grid-template-columns:264px 1fr}
.sidebar{background:var(--nav);color:var(--nav-ink);padding:22px 16px;position:sticky;top:0;height:100vh;overflow:auto}
.brand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:18px;padding:0 10px 22px}.brand-mark{width:36px;height:36px;border-radius:12px;background:#fff;color:#0f1f33;display:grid;place-items:center;font-weight:900}
.nav-group{margin:18px 0 8px;padding:0 10px;color:#B9C0D8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.nav-link{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;color:var(--nav-ink);margin:3px 0;font-weight:650;font-size:14px}.nav-link:hover,.nav-link.active{background:var(--nav-active,#464E78);color:var(--nav-active-ink,#fff)}
.main{min-width:0}.topbar{height:72px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;background:color-mix(in srgb,var(--topbar-bg,var(--bg)) 92%,transparent);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20;border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent)}
.page-title{font-size:22px;font-weight:800;letter-spacing:-.02em}.content{padding:28px;max-width:1600px;margin:0 auto}.grid{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 1px 2px rgba(16,24,40,.02)}.card-title{font-weight:800;font-size:17px;margin:0 0 4px}.subtle{color:var(--muted);font-size:14px}.metric{font-size:28px;font-weight:850;letter-spacing:-.04em}.metric-label{color:var(--muted);font-size:13px;font-weight:650}
.card--accent-primary{background:var(--primary-soft);border-color:var(--primary-border)}.card--accent-primary .metric,.card--accent-primary.metric strong{color:var(--primary-strong)}
.card--accent-info{background:var(--info-soft);border-color:var(--info-border)}.card--accent-info .metric,.card--accent-info.metric strong{color:var(--info)}
.card--accent-success{background:var(--success-soft);border-color:var(--success-border)}.card--accent-success .metric,.card--accent-success.metric strong{color:var(--success)}
.card--accent-warning{background:var(--warning-soft);border-color:var(--warning-border)}.card--accent-warning .metric,.card--accent-warning.metric strong{color:var(--warn)}
.card--accent-danger{background:var(--danger-soft);border-color:var(--danger-border)}.card--accent-danger .metric,.card--accent-danger.metric strong{color:var(--danger)}
.card--accent-secondary{background:var(--secondary-soft);border-color:var(--secondary-border)}.card--accent-secondary .metric,.card--accent-secondary.metric strong{color:var(--secondary)}
.card--muted{background:var(--surface-subtle);border-style:dashed}
/* Section/step identity system — reusable across multi-section builder pages (Section 11/12) */
.section-step{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--section-accent-strong,var(--primary-strong));color:#fff;font-weight:800;font-size:13px;flex:0 0 auto}
.section-tinted{border-top:3px solid var(--section-accent-strong,var(--accent));background:var(--section-accent-soft,var(--primary-soft))}
.section-tinted .card-title,.section-tinted h3{color:var(--section-accent-strong,var(--primary-strong))}
.section--primary{--section-accent-soft:var(--primary-soft);--section-accent-strong:var(--primary-strong)}
.section--success{--section-accent-soft:var(--success-soft);--section-accent-strong:var(--success)}
.section--info{--section-accent-soft:var(--info-soft);--section-accent-strong:var(--info)}
.section--warning{--section-accent-soft:var(--warning-soft);--section-accent-strong:var(--warn)}
.section--secondary{--section-accent-soft:var(--secondary-soft);--section-accent-strong:var(--secondary)}
.toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap}.toolbar-left,.toolbar-right{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.btn{min-height:42px;border:1px solid var(--line);border-radius:11px;padding:9px 14px;background:var(--surface);color:var(--ink);font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn:hover{background:var(--surface2)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent2)}.btn-danger{color:#fff;background:var(--danger);border-color:var(--danger)}.btn-success{color:#fff;background:var(--success);border-color:var(--success)}.btn-ghost{border-color:transparent;background:transparent}.btn-ghost:hover{background:var(--surface2)}.btn-soft{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary-strong)}.btn-soft:hover{background:var(--primary-border)}.btn-secondary{background:var(--secondary-soft);border-color:var(--secondary-border);color:var(--secondary)}.btn-secondary:hover{background:var(--secondary-border)}.btn-sm{min-height:34px;padding:6px 10px;font-size:13px}
.input,.select,.textarea{width:100%;min-height:44px;border:1px solid #cfd8e1;border-radius:11px;padding:10px 12px;background:var(--input-bg,var(--surface));color:var(--input-ink,var(--ink));outline:none}.textarea{min-height:100px;resize:vertical}.input:hover,.select:hover,.textarea:hover{border-color:#98a7b7}.input:focus,.select:focus,.textarea:focus{border-color:#84adff;box-shadow:var(--focus-ring)}.input:disabled,.select:disabled,.textarea:disabled,.input[readonly]{background:var(--surface2);color:var(--muted);cursor:not-allowed}
.btn:focus-visible,.nav-link:focus-visible,.tab:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
label.field{display:block;font-size:13px;font-weight:750;color:#344054;margin-bottom:12px}label.field>span{display:block;margin-bottom:6px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.table{width:100%;border-collapse:collapse;min-width:720px}.table th,.table td{padding:12px 14px;border-bottom:1px solid #edf1f4;text-align:left;vertical-align:top}.table th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--table-head-ink,#566274);background:var(--table-head-bg,#EEF3F7);position:sticky;top:0}.table tr:last-child td{border-bottom:0}
.badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;background:#eef2f6;color:#344054}.badge-success{background:#ecfdf3;color:#067647}.badge-warning{background:#fffaeb;color:#b54708}.badge-danger{background:#fef3f2;color:#b42318}.badge-info{background:#eff8ff;color:#175cd3}
.alert{padding:13px 15px;border-radius:12px;margin:0 0 16px;border:1px solid}.alert-success{background:#ecfdf3;color:#05603a;border-color:#abefc6}.alert-warning{background:#fffaeb;color:#934a05;border-color:#fedf89}.alert-danger{background:#fef3f2;color:#912018;border-color:#fecdca}.alert-info{background:#eff8ff;color:#1849a9;border-color:#b2ddff}
.tabs{display:flex;gap:6px;overflow:auto;padding-bottom:4px;margin:0 0 18px}.tab{white-space:nowrap;padding:9px 13px;border-radius:10px;background:var(--surface2);font-weight:750;font-size:14px;border:2px solid transparent}.tab.active{background:var(--primary-soft);color:var(--primary-strong);border-color:var(--primary-border)}
.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;gap:12px;align-items:center}.row-between{display:flex;gap:12px;align-items:center;justify-content:space-between}.divider{height:1px;background:var(--line);margin:16px 0}
.empty{text-align:center;padding:30px 18px;color:var(--muted);border:1.5px dashed var(--line);border-radius:calc(var(--radius) - 4px);background:var(--surface-subtle);font-size:13.5px}
.activity-card{display:grid;grid-template-columns:90px 1fr auto;gap:16px;align-items:center}.time{font-size:20px;font-weight:850}.activity-name{font-size:17px;font-weight:800}
.attendance-list{display:flex;flex-direction:column;gap:8px}.attendance-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:14px}.person-name{font-weight:800}.person-meta{font-size:13px;color:var(--muted)}.status-buttons{display:flex;gap:6px;flex-wrap:wrap}.status-btn{min-height:40px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:7px 10px;font-weight:750}.status-btn.active-present{background:#ecfdf3;color:#067647;border-color:#75e0a7}.status-btn.active-absent{background:#fef3f2;color:#b42318;border-color:#fda29b}
.signature-wrap{border:1px dashed #98a2b3;border-radius:14px;background:#fff;padding:8px}.signature-pad{width:100%;height:180px;display:block;touch-action:none;background:#fff;border-radius:10px}
.mobile-bottom{display:none}.mobile-top{display:none}.desktop-only{display:block}
@media(max-width:1024px){
 .app{grid-template-columns:88px 1fr}.sidebar{padding:18px 10px}.brand span:last-child,.nav-link span,.nav-group{display:none}.brand{justify-content:center;padding-left:0;padding-right:0}.nav-link{justify-content:center;padding:12px}.content{padding:20px}.topbar{padding:0 20px}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
 body{padding-bottom:74px}.app{display:block}.sidebar{display:none}.topbar{height:62px;padding:0 16px}.page-title{font-size:19px}.content{padding:14px 12px}.grid-2,.grid-3,.grid-4,.form-grid{grid-template-columns:1fr}.card{padding:15px;border-radius:14px}.toolbar{align-items:stretch}.toolbar-left,.toolbar-right{width:100%}.toolbar .btn{flex:1}.table-wrap{border:0;background:transparent;overflow:visible}.table{min-width:0}.table thead{display:none}.table,.table tbody,.table tr,.table td{display:block;width:100%}.table tr{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:10px;padding:10px}.table td{border:0;padding:6px 8px}.table td:before{content:attr(data-label);display:block;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;margin-bottom:2px}
 .activity-card{grid-template-columns:64px 1fr}.activity-card>.btn{grid-column:1/-1}.attendance-row{grid-template-columns:1fr}.status-buttons{width:100%}.status-btn{flex:1;min-height:48px}.btn{min-height:48px}.input,.select{min-height:50px}
 .mobile-bottom{position:fixed;bottom:0;left:0;right:0;height:68px;background:#fff;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);z-index:60;padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom a{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:11px;font-weight:750;color:#667085;gap:3px}.mobile-bottom a.active{color:var(--accent)}.mobile-bottom b{font-size:18px}.desktop-only{display:none}
}

.password-input-wrap{position:relative;display:block}.password-input{padding-right:56px}.password-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#566575;cursor:pointer}.password-toggle:hover{background:#f0f4f8;color:var(--ink)}.password-toggle:focus-visible{outline:3px solid #dbe7ff;outline-offset:1px}.password-toggle-icon{width:22px;height:22px;display:block}.password-toggle-icon[hidden]{display:none}@media(max-width:760px){.password-toggle{width:48px;height:48px}.password-input{padding-right:60px}}
.grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.nav-sub{padding-left:34px;font-size:13px}.count-row{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) minmax(220px,1.2fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.count-main{min-width:0}.count-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.count-input{max-width:160px}
@media(max-width:1200px){.grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}.count-row{grid-template-columns:1fr 1fr}.count-details{grid-column:1/-1}}
@media(max-width:720px){.grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}.count-row{grid-template-columns:1fr}.count-details{grid-template-columns:1fr}.count-input{max-width:none}.nav-sub{padding-left:12px}}

/* Application navigation */
.sidebar{display:flex;flex-direction:column;overflow:hidden;padding:18px 14px}
.brand{flex:0 0 auto;padding:2px 8px 16px}.sidebar-nav{min-height:0;overflow-y:auto;overflow-x:hidden;padding:0 2px 18px;scrollbar-width:thin;scrollbar-color:#39516b transparent}.sidebar-nav::-webkit-scrollbar{width:7px}.sidebar-nav::-webkit-scrollbar-thumb{background:#39516b;border-radius:999px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}
.nav-group{margin:18px 0 7px;padding:0 10px;color:#8fa6bf;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.11em}
.nav-link{min-height:42px;display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:10px;color:#d9e5f2;margin:2px 0;font-weight:700;font-size:13.5px;transition:background .15s ease,color .15s ease}.nav-link:hover{background:#172f49;color:#fff}.nav-link.active{background:#1d3d5e;color:#fff}
.nav-icon{width:19px;height:19px;display:grid;place-items:center;flex:0 0 19px}.nav-icon svg,.mobile-nav-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-module{margin:2px 0}.nav-module-head{display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center}.nav-module-link{margin:0}.nav-module-toggle{width:30px;height:34px;border:0;border-radius:8px;background:transparent;color:#8fa6bf;display:grid;place-items:center;font-size:16px;transition:transform .15s ease,background .15s ease,color .15s ease}.nav-module-toggle:hover{background:#172f49;color:#fff}.nav-module-toggle span{transition:transform .15s ease}.nav-module.open .nav-module-toggle span{transform:rotate(180deg)}
.nav-children{display:none;margin:3px 0 7px 29px;padding-left:9px;border-left:1px solid #29435f}.nav-module.open .nav-children{display:block}.nav-sub{min-height:34px;padding:7px 9px;font-size:12.5px;font-weight:650;border-radius:8px;color:#b9c9da}.nav-sub.active{background:#173653;color:#fff}.nav-sub:hover{background:#152e47}
.topbar-actions{flex:0 0 auto}.mobile-menu-sheet,.mobile-menu-backdrop{display:none}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media(max-width:1024px) and (min-width:721px){
 .app{grid-template-columns:80px 1fr}.sidebar{padding:16px 9px}.brand{justify-content:center;padding-left:0;padding-right:0}.brand span:last-child,.nav-label,.nav-group,.nav-module-toggle,.nav-children{display:none!important}.nav-module-head{display:block}.nav-link{justify-content:center;padding:11px}.nav-icon{width:21px;height:21px;flex-basis:21px}.nav-icon svg{width:20px;height:20px}.content{padding:20px}.topbar{padding:0 20px}
}

@media(max-width:720px){
 body{padding-bottom:76px}.sidebar{display:none}.mobile-bottom{position:fixed;bottom:0;left:0;right:0;height:68px;background:#fff;border-top:1px solid var(--line);display:grid;grid-auto-flow:column;grid-auto-columns:1fr;z-index:60;padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom a,.mobile-more-button{border:0;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:10.5px;font-weight:750;color:#667085;gap:3px;min-width:0;padding:6px 2px}.mobile-bottom a.active{color:var(--accent)}.mobile-nav-icon{width:20px;height:20px;display:grid;place-items:center}.mobile-more-icon{font-size:18px;line-height:18px;font-weight:900;letter-spacing:1px}.mobile-more-button[aria-expanded="true"]{color:var(--accent)}
 .mobile-menu-backdrop{position:fixed;inset:0;background:rgba(15,31,51,.4);z-index:70}.mobile-menu-backdrop:not([hidden]){display:block}.mobile-menu-sheet{position:fixed;left:0;right:0;bottom:0;max-height:min(82vh,720px);background:#fff;border-radius:20px 20px 0 0;z-index:71;box-shadow:0 -16px 40px rgba(15,31,51,.18);overflow:hidden}.mobile-menu-sheet:not([hidden]){display:flex;flex-direction:column}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 16px 12px;border-bottom:1px solid var(--line)}.mobile-menu-scroll{overflow:auto;padding:8px 12px calc(18px + env(safe-area-inset-bottom))}.mobile-menu-section-title{margin:15px 8px 6px;color:#7a8898;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.mobile-menu-link{min-height:46px;display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:10px;font-weight:700;color:#27384a}.mobile-menu-link.active{background:#eef4ff;color:#155eef}.mobile-menu-module{margin-bottom:4px}.mobile-menu-module-title{font-weight:800}.mobile-menu-child{min-height:40px;margin-left:30px;padding-left:11px;font-size:13px;color:#526276}.mobile-nav-open{overflow:hidden}
}

/* Academic context + pedagogical catalogue */
.academic-context-form{min-width:188px}.academic-context-select{height:38px;min-width:188px;font-weight:750;background:#fff}.filter-panel{padding:14px 16px}.filter-summary{margin-top:10px;color:var(--muted);font-size:13px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.check-row{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff}.check-row input{margin-top:3px}
@media(max-width:900px){.academic-context-form{min-width:0}.academic-context-select{min-width:150px;max-width:180px}.check-grid{grid-template-columns:1fr}}
@media(max-width:680px){.topbar-actions .academic-context-select{max-width:135px;min-width:120px;font-size:12px}.topbar-actions{gap:6px}}

/* LFB_ACTIVITY_WORKSPACE_SCALE_START */
.activity-workspace{gap:16px}
.activity-workspace__summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.activity-workspace__summary--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.activity-workspace__metric{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:66px}
.activity-workspace__metric span{color:var(--muted);font-size:13px;font-weight:750}
.activity-workspace__metric strong{font-size:22px;letter-spacing:-.03em}
.activity-workspace__toolbar{margin:0;padding:2px 0}
.activity-workspace__editor{padding:18px}
.activity-workspace__field-wide{grid-column:1/-1}
.activity-workspace__form-actions{display:flex;justify-content:flex-end;gap:10px;align-items:center}
.activity-workspace__list-card{padding:16px}
.activity-workspace__filters{display:grid;grid-template-columns:minmax(260px,2fr) repeat(3,minmax(150px,1fr)) 110px auto;gap:10px;align-items:end}
.activity-workspace__filters--packages{grid-template-columns:minmax(260px,2fr) minmax(150px,1fr) minmax(170px,1fr) 110px auto}
.activity-workspace__filters .field{margin:0}
.activity-workspace__reset{margin-bottom:0;white-space:nowrap}
.activity-workspace__list-heading{margin-top:2px}
.activity-workspace__table{min-width:1060px}
.activity-workspace__table td{vertical-align:middle}
.activity-workspace__row-action{text-align:right;white-space:nowrap}
.activity-workspace__row-actions{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.activity-workspace__pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;color:var(--muted);font-size:13px;font-weight:700}
.activity-workspace__schedule{border-left:4px solid var(--accent)}
.activity-workspace__schedule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.activity-workspace__schedule-grid .field{margin:0}
.activity-workspace__hint{border:1px dashed var(--line);border-radius:12px;padding:12px 14px;background:#f8fafb;color:var(--muted);font-size:13px;align-self:end}
.activity-workspace__error{display:block;color:var(--danger);font-size:12px;margin-top:5px;font-weight:650}
.activity-workspace__picker{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fbfcfd}
.activity-workspace__picker h3{margin:0 0 4px;font-size:15px}
.activity-workspace__selected-items{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.activity-workspace__selected-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid #b2ddff;background:#eff8ff;color:#175cd3;border-radius:999px;padding:7px 9px 7px 11px;font-size:13px;font-weight:750;max-width:100%}
.activity-workspace__selected-pill>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.activity-workspace__selected-pill button{border:0;background:transparent;color:inherit;font-weight:900;font-size:17px;line-height:1;padding:0 2px}
.activity-workspace__candidate-filters{display:grid;grid-template-columns:minmax(240px,2fr) minmax(150px,1fr);gap:10px;margin-top:12px}
.activity-workspace__candidate-filters .field{margin:0}
.activity-workspace__candidate-list{display:flex;flex-direction:column;gap:6px;margin:10px 0;max-height:340px;overflow:auto;padding-right:2px}
.activity-workspace__candidate{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px 12px}
@media(max-width:1200px){
 .activity-workspace__filters,.activity-workspace__filters--packages{grid-template-columns:repeat(3,minmax(0,1fr))}
 .activity-workspace__search{grid-column:span 2}
 .activity-workspace__schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
 .activity-workspace__summary,.activity-workspace__summary--three{grid-template-columns:repeat(2,minmax(0,1fr))}
 .activity-workspace__metric{min-height:58px;padding:11px 12px}
 .activity-workspace__metric strong{font-size:19px}
 .activity-workspace__filters,.activity-workspace__filters--packages,.activity-workspace__candidate-filters,.activity-workspace__schedule-grid{grid-template-columns:1fr}
 .activity-workspace__search{grid-column:auto}
 .activity-workspace__reset{width:100%}
 .activity-workspace__form-actions{display:grid;grid-template-columns:1fr 1fr}
 .activity-workspace__pagination{justify-content:space-between}
 .activity-workspace__candidate{align-items:flex-start}
 .activity-workspace__candidate .btn{flex:0 0 auto}
}
/* LFB_ACTIVITY_WORKSPACE_SCALE_END */

/* LFB_GLOBAL_SELECT_UX_START */
select:not([multiple]):not([size]),select.select:not([multiple]){
 -webkit-appearance:none;-moz-appearance:none;appearance:none;
 padding-right:42px;
 background-color:#fff;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5.25 7.5 10 12.25 14.75 7.5' stroke='%23344054' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
 background-repeat:no-repeat;background-position:right 13px center;background-size:18px 18px;
 cursor:pointer;
}
select:not([multiple]):not([size]):hover,select.select:not([multiple]):hover{border-color:#98a7b7;background-color:#fbfdff}
select:not([multiple]):not([size]):focus-visible,select.select:not([multiple]):focus-visible{border-color:#5b8ff9;box-shadow:0 0 0 3px #dbe7ff;outline:none}
select:not([multiple]):not([size]):disabled,select.select:not([multiple]):disabled{cursor:not-allowed;opacity:.68;background-color:#f2f4f7}
select[multiple],select[size]:not([size="1"]){background-image:none;padding-right:12px}
.field>span{line-height:1.25}.field .select,.field select{font-weight:650}

.activity-catalog{gap:14px}.activity-catalog__heading{margin:0;padding:0 1px}.activity-catalog__panel{padding:14px 16px 16px}.activity-catalog__result-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 1px 10px;font-size:13px}.activity-catalog__name{font-weight:800;color:#173f80}.activity-catalog__name:hover{text-decoration:underline;text-underline-offset:3px}.activity-catalog .table th{padding-top:10px;padding-bottom:10px}.activity-catalog .table td{padding-top:10px;padding-bottom:10px}
.entity-page{width:100%;max-width:none;margin:0}.entity-page__toolbar{margin:0}.entity-page__span-all{grid-column:1/-1}.entity-form-card{padding:22px}.entity-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding-top:4px}.entity-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}.entity-hero__eyebrow{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:9px}.entity-hero h2{margin:0 0 7px;font-size:24px;letter-spacing:-.03em}.entity-hero p{margin:0;color:var(--muted);line-height:1.55}.entity-hero__metrics{display:flex;gap:24px;align-items:center}.entity-hero__metrics>div{min-width:96px}.entity-hero__metrics span{display:block;color:var(--muted);font-size:12px;font-weight:750;margin-bottom:4px}.entity-hero__metrics strong{font-size:20px}.entity-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:0}.entity-facts>div{padding:11px 0;border-bottom:1px solid #edf1f4}.entity-facts dt{color:var(--muted);font-size:12px;font-weight:750;margin-bottom:3px}.entity-facts dd{margin:0;font-weight:700}.entity-list{display:flex;flex-direction:column;gap:0}.entity-list__row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid #edf1f4}.entity-list__row:last-child{border-bottom:0}
@media(max-width:900px){.entity-hero{grid-template-columns:1fr}.entity-hero__metrics{justify-content:flex-start;flex-wrap:wrap}.entity-facts{grid-template-columns:1fr}.activity-catalog__result-bar{align-items:flex-start}}
@media(max-width:720px){select:not([multiple]):not([size]),select.select:not([multiple]){padding-right:46px;background-position:right 15px center;background-size:19px 19px}.entity-form-card{padding:16px}.entity-form-actions{display:grid;grid-template-columns:1fr 1fr}.entity-hero__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.activity-catalog__panel{padding:12px}.activity-catalog__result-bar{flex-direction:column;gap:2px}.activity-catalog__name{font-size:15px}}
/* LFB_GLOBAL_SELECT_UX_END */

/* LFB_ADMIN_THEME_SYSTEM_START */
html{font-family:var(--font-family,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);font-size:var(--font-body-size,14px)}
body{background:var(--bg);color:var(--ink);
 --theme-primary:var(--accent);--theme-primary-text:var(--accent-ink,#fff);
 --theme-border:var(--line);--border:var(--line);
 --theme-surface:var(--surface);--theme-secondary-surface:var(--surface2);--surface-soft:var(--surface2);
 --theme-muted-text:var(--muted);--theme-radius:var(--radius);
 /* Theme-derived pastel tokens: MUST live on the same element as the theme engine's inline
    --accent/--ink/--surface override (body), otherwise color-mix() freezes to the :root fallback
    and admin brand-color changes silently stop propagating (the exact bug this pass fixes). */
 --primary-soft:color-mix(in srgb,var(--accent) 8%,var(--surface));
 --primary-border:color-mix(in srgb,var(--accent) 26%,var(--line));
 --primary-strong:color-mix(in srgb,var(--accent) 80%,black);
 --focus-ring:0 0 0 3px color-mix(in srgb,var(--accent) 22%,white);
 --surface-subtle:color-mix(in srgb,var(--ink) 3%,var(--surface));
}
.app{grid-template-columns:var(--sidebar-width,264px) minmax(0,1fr)}
.sidebar{background:var(--nav);color:var(--nav-ink)}
.brand{font-size:calc(var(--font-nav-size,14px) + 4px)}
.nav-link{font-size:var(--font-nav-size,14px);color:var(--nav-ink)}
.nav-link:hover,.nav-link.active{background:var(--nav-active,#1d3d5e);color:var(--nav-active-ink,#fff)}
.topbar{background:var(--topbar-bg,var(--bg));color:var(--topbar-ink,var(--ink));border-bottom-color:var(--line)}
.page-title{font-size:var(--font-page-title-size,22px)}
.content{max-width:var(--content-max-width,1600px);padding:var(--content-padding,28px)}
.card{background:var(--surface);border-color:var(--line);border-radius:var(--radius);padding:var(--card-padding,20px)}
.card-title{font-size:var(--font-section-title-size,17px)}
.btn{min-height:var(--control-height,44px);background:var(--surface);color:var(--ink);border-color:var(--line)}
.btn:hover{background:var(--surface2)}
.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink,#fff)}
.btn-primary:hover{background:var(--accent2);border-color:var(--accent2);color:var(--accent-ink,#fff)}
.input,.select,.textarea{min-height:var(--control-height,44px);background-color:var(--input-bg,#fff);color:var(--input-ink,var(--ink));border-color:var(--line)}
.table-wrap{background:var(--surface);border-color:var(--line)}
.table th,.table td{padding-top:var(--table-cell-y,12px);padding-bottom:var(--table-cell-y,12px);border-bottom-color:var(--line)}
.table th{background:var(--table-head-bg,#f8fafb);color:var(--table-head-ink,#667085)}
.tab{background:var(--surface2);color:var(--ink)}
.tab.active{background:var(--primary-soft);color:var(--primary-strong);border-color:var(--primary-border)}
.mobile-bottom{background:var(--surface);border-top-color:var(--line)}
.mobile-bottom a,.mobile-more-button{background:var(--surface);color:var(--muted)}

.appearance-settings{margin-top:20px}.appearance-settings__heading{margin-bottom:0}.appearance-settings__layout-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.appearance-settings__group{padding:16px;border:1px solid var(--line);border-radius:calc(var(--radius) - 3px);background:var(--surface2)}
.appearance-settings input[type="range"]{width:100%;accent-color:var(--accent)}.appearance-settings__palette-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.appearance-color-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:750;color:var(--muted)}.appearance-color-field__control{display:grid;grid-template-columns:42px 1fr;gap:8px}.appearance-color-field input[type="color"]{width:42px;height:var(--control-height,44px);padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--surface);cursor:pointer}.text-danger{color:var(--danger)}
.appearance-preview{min-height:240px;display:grid;grid-template-columns:minmax(180px,var(--sidebar-width,264px)) 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--bg);color:var(--ink);font-family:var(--font-family);font-size:var(--font-body-size)}.appearance-preview__sidebar{background:var(--nav);color:var(--nav-ink);padding:18px;display:flex;flex-direction:column;gap:10px}.appearance-preview__sidebar strong{font-size:calc(var(--font-nav-size) + 3px)}.appearance-preview__sidebar span{font-size:var(--font-nav-size);padding:8px 10px;border-radius:10px}.appearance-preview__sidebar span.active{background:var(--nav-active);color:var(--nav-active-ink)}.appearance-preview__main{min-width:0}.appearance-preview__main>header{min-height:58px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;background:var(--topbar-bg);color:var(--topbar-ink);border-bottom:1px solid var(--line)}.appearance-preview__main>header strong{font-size:var(--font-page-title-size)}.appearance-preview__content{padding:var(--content-padding)}.appearance-preview__card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--card-padding);max-width:560px}.appearance-preview__card h3{margin:0 0 8px;font-size:var(--font-section-title-size)}.appearance-preview__card p{margin:0 0 12px}.appearance-preview__card .input{margin-bottom:10px}

.reference-directory__panel{padding:var(--card-padding)}.reference-directory__filters{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,260px) 110px;gap:12px;align-items:end}.reference-directory__filters .field{margin-bottom:0}.reference-directory__per-page{grid-column:-2/-1}.pagination-wrap{margin-top:14px}.reference-directory .tabs{margin-bottom:0}
@media(max-width:1024px) and (min-width:721px){.app{grid-template-columns:80px 1fr}.content{padding:20px}.appearance-settings__palette-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.appearance-settings__layout-grid{grid-template-columns:1fr}.reference-directory__filters{grid-template-columns:1fr 180px}.reference-directory__per-page{grid-column:auto}.appearance-preview{grid-template-columns:150px 1fr}}
@media(max-width:720px){.content{padding:14px 12px}.page-title{font-size:min(var(--font-page-title-size,22px),21px)}.appearance-settings__palette-grid{grid-template-columns:1fr}.appearance-preview{display:block}.appearance-preview__sidebar{display:none}.appearance-preview__content{padding:14px}.reference-directory__filters{grid-template-columns:1fr}.reference-directory__per-page{grid-column:auto}}
/* LFB_ADMIN_THEME_SYSTEM_END */

/* LFB_COMPENSATION_SETTLEMENT_START */
.page-subnav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 4px}.page-subnav .btn{min-height:36px;padding:7px 11px}.compensation-kpi-warning{color:#9a3412}.compensation-statement-total{font-size:20px;font-weight:850}.compensation-payee-sensitive{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em}.compensation-workflow-note{padding:12px 14px;border:1px solid var(--line);border-radius:calc(var(--radius) - 3px);background:var(--surface2);color:var(--muted);line-height:1.5}.soft-panel{border:1px solid var(--line);border-radius:calc(var(--radius) - 3px);padding:14px;background:var(--surface2)}
@media(max-width:720px){.page-subnav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.page-subnav .btn{width:100%}}
/* LFB_COMPENSATION_SETTLEMENT_END */

/* LFB_COMPENSATION_DISTRIBUTION_START */
.compensation-page-head{margin-top:16px;align-items:flex-start}.compensation-page-title{margin:5px 0 4px;font-size:clamp(22px,2vw,30px);line-height:1.08;letter-spacing:-.03em}.compensation-back-link{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;font-weight:750}.compensation-back-link:hover{color:var(--accent)}
.compensation-distribution-layout,.compensation-form-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:16px;align-items:start}.compensation-side-panel{position:sticky;top:92px}.compensation-channel-card{display:flex;flex-direction:column;gap:12px;border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--surface2);cursor:pointer}.compensation-channel-card:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent);background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.compensation-channel-card.is-disabled{opacity:.68;cursor:not-allowed}.compensation-channel-toggle,.compensation-setting-toggle{display:flex;align-items:flex-start;gap:10px}.compensation-channel-toggle input,.compensation-setting-toggle input{margin-top:3px;width:18px;height:18px;accent-color:var(--accent)}.compensation-channel-toggle span,.compensation-setting-toggle span{display:flex;flex-direction:column;gap:2px}.compensation-channel-toggle small,.compensation-setting-toggle small{font-weight:500;color:var(--muted)}.compensation-channel-status{font-size:12px;color:var(--muted);font-weight:700}.compensation-channel-status.is-ok{color:var(--success)}.compensation-channel-status.is-warning{color:var(--warn)}
.compensation-callout{display:flex;flex-direction:column;gap:4px;border:1px solid #b2ddff;border-radius:12px;padding:12px 14px;background:#eff8ff;color:#1849a9}.compensation-callout.is-warning{border-color:#fedf89;background:#fffaeb;color:#934a05}.compensation-callout strong{font-size:13px}.compensation-callout span{font-size:13px;line-height:1.5}.compensation-facts{display:grid;gap:10px;margin:0}.compensation-facts div{display:grid;grid-template-columns:108px minmax(0,1fr);gap:10px;padding-bottom:9px;border-bottom:1px solid var(--line)}.compensation-facts div:last-child{border-bottom:0;padding-bottom:0}.compensation-facts dt{color:var(--muted);font-size:12px;font-weight:750}.compensation-facts dd{margin:0;font-size:13px;font-weight:700;overflow-wrap:anywhere}.compensation-history-card{margin-top:16px}.compensation-workflow-strip{display:flex;gap:6px;margin:16px 0;overflow:auto}.compensation-workflow-strip span{flex:1;min-width:130px;padding:9px 12px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:12px;font-weight:800;text-align:center}.compensation-workflow-strip span:first-child{border-radius:12px 0 0 12px}.compensation-workflow-strip span:last-child{border-radius:0 12px 12px 0}.compensation-workflow-strip .is-current{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:var(--accent);color:var(--accent)}.compensation-narrow-form{max-width:720px}.compensation-linked-batch{margin-top:16px;display:flex;justify-content:space-between;align-items:center;gap:12px}.compensation-channel-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.compensation-setting-toggle{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface2)}.compensation-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.compensation-template-wide{grid-column:1/-1}.compensation-template-help{display:flex;gap:6px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:12px}.compensation-template-help strong{margin-right:4px}.compensation-template-help code{padding:4px 7px;border-radius:7px;background:var(--surface2);border:1px solid var(--line);color:var(--ink)}.compensation-inline-field{display:flex;align-items:center;gap:8px}.compensation-inline-field .input{max-width:180px}.sticky-form-actions{position:sticky;bottom:12px;z-index:10;display:flex;justify-content:flex-end;gap:10px;padding:10px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(10px);box-shadow:var(--shadow)}
@media(max-width:960px){.compensation-distribution-layout,.compensation-form-layout{grid-template-columns:1fr}.compensation-side-panel{position:static}.compensation-channel-settings,.compensation-template-grid{grid-template-columns:1fr}.compensation-template-wide{grid-column:auto}}
@media(max-width:720px){.compensation-page-head>.toolbar-right{display:grid;grid-template-columns:1fr 1fr}.compensation-page-head>.toolbar-right .btn{width:100%}.compensation-workflow-strip span{min-width:112px}.compensation-facts div{grid-template-columns:90px minmax(0,1fr)}.sticky-form-actions{bottom:80px}.compensation-channel-card{padding:12px}}
/* LFB_COMPENSATION_DISTRIBUTION_END */

/* LFB_COMPENSATION_INTEGRITY_UI_START */
.compensation-subnav{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:thin}.compensation-subnav .btn{flex:0 0 auto;white-space:nowrap}
.compensation-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 18px}.compensation-kpi{min-height:92px;display:flex;flex-direction:column;justify-content:center}.compensation-action-alert{display:flex;align-items:center;justify-content:space-between;gap:12px}.compensation-filter-card{margin-bottom:16px}.compensation-table-card{margin-top:0}.compensation-pagination{margin-top:14px}.compensation-table td[data-label] strong{overflow-wrap:anywhere}
@media(max-width:1000px){.compensation-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.compensation-kpi-grid{grid-template-columns:1fr 1fr;gap:8px}.compensation-kpi{min-height:78px;padding:12px}.compensation-action-alert{align-items:stretch;flex-direction:column}.compensation-action-alert .btn{width:100%}.compensation-subnav{margin-inline:-2px}.compensation-table-card{padding:10px}}
@media(max-width:440px){.compensation-kpi-grid{grid-template-columns:1fr}}
/* LFB_COMPENSATION_INTEGRITY_UI_END */

/* LFB_APPLICATION_UI_I18N_PAYSLIP_START */
.external-content{max-width:1100px}.login-locale-form{display:flex;justify-content:flex-end;margin:0 0 14px}.login-locale-form .select{width:auto;min-width:84px}.dashboard-panels{margin-top:18px}.dashboard-metrics .card{min-height:108px}.compensation-form-shell{max-width:1180px}.compensation-option-list{display:grid;gap:8px}.compensation-option-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.compensation-option-row>span{display:flex;flex-direction:column;gap:2px}.compensation-option-row input{width:18px;height:18px;accent-color:var(--accent)}
.compensation-template-editor{margin-top:16px}.compensation-template-editor-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:16px;align-items:start}.compensation-template-preview-card{position:sticky;top:92px}.compensation-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compensation-color-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.theme-color-control{display:grid;grid-template-columns:46px minmax(0,1fr);gap:8px;align-items:center}.theme-color-control input[type="color"]{width:46px;height:44px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:3px}.payslip-mini-preview{border:1px solid var(--line);border-top:4px solid var(--pt-accent);border-radius:12px;padding:18px;background:#fff;color:var(--pt-text);font-size:12px}.payslip-mini-brand{display:flex;align-items:center;justify-content:space-between;gap:10px}.payslip-mini-brand img{width:36px;height:36px;object-fit:contain}.payslip-mini-brand>div{margin-left:auto;text-align:right;display:flex;flex-direction:column}.payslip-mini-brand small,.payslip-mini-preview p{color:var(--pt-muted)}.payslip-mini-preview h3{font-size:18px;margin:16px 0 4px}.payslip-mini-line,.payslip-mini-total{display:flex;justify-content:space-between;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.payslip-mini-table{display:grid;grid-template-columns:1fr auto;gap:0;margin-top:14px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.payslip-mini-table>*{padding:7px}.payslip-mini-table b{background:var(--pt-head);color:var(--pt-head-text)}.payslip-mini-total{font-size:14px;color:var(--pt-accent)}.compensation-chip-list{display:flex;gap:8px;flex-wrap:wrap}.compensation-detail-grid{margin-top:16px}.compensation-statement-summary{margin-top:16px}
@media(max-width:980px){.compensation-template-editor-grid{grid-template-columns:1fr}.compensation-template-preview-card{position:static}.compensation-color-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.dashboard-panels{margin-top:12px}.dashboard-metrics{grid-template-columns:1fr 1fr}.dashboard-metrics .card{min-height:86px}.compensation-toggle-grid,.compensation-color-grid{grid-template-columns:1fr}.compensation-template-preview-card{display:none}.compensation-option-row{min-height:52px}.external-content{padding-inline:12px}}
@media(max-width:440px){.dashboard-metrics{grid-template-columns:1fr}}
/* LFB_APPLICATION_UI_I18N_PAYSLIP_END */

/* LFB_SERVICE_PACKAGE_BENEFIT_BUILDER_START */
.package-builder__section{gap:16px}.package-builder__section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.package-builder__section-head>div:first-child{min-width:0}.package-builder__section-head h3{display:inline;margin:0 0 0 8px}.package-builder__step{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--section-accent-strong,var(--theme-primary,#2563eb));color:#fff;font-weight:800}.package-selected-grid,.offering-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.offering-choice{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:14px;border:1px solid var(--theme-border,#d8e0ea);border-radius:var(--theme-radius,14px);background:var(--theme-surface,#fff)}.offering-choice--selected{border-style:solid}.offering-choice--benefit{border-left:4px solid var(--theme-primary,#2563eb)}.offering-choice h4,.benefit-config h4{margin:0 0 8px;font-size:1rem}.offering-choice__actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.offering-meta{display:grid;gap:5px;font-size:.88rem}.offering-meta__row{display:flex;gap:7px;align-items:baseline;flex-wrap:wrap}.offering-meta__row strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--theme-muted-text,#64748b)}.offering-meta__muted{color:var(--theme-muted-text,#64748b)}.benefit-config{padding:14px;border:1px solid var(--theme-border,#d8e0ea);border-radius:var(--theme-radius,14px);background:var(--theme-secondary-surface,#f8fafc)}.benefit-config__summary{display:flex;justify-content:space-between;gap:14px}.benefit-config__fields{margin-top:14px}.benefit-badge{display:inline-flex;margin-top:8px;padding:5px 9px;border-radius:999px;background:var(--theme-secondary-surface,#eef4ff);font-weight:700}.activity-level-picker{border:1px solid var(--theme-border,#d8e0ea);border-radius:var(--theme-radius,14px);padding:16px}.activity-level-picker legend{font-weight:800;padding:0 6px}.activity-level-picker__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.activity-level-option{display:flex;gap:9px;align-items:flex-start;padding:10px;border:1px solid var(--theme-border,#d8e0ea);border-radius:10px;cursor:pointer;background:var(--theme-surface,#fff)}.activity-level-option input{margin-top:3px}.activity-level-option span{display:grid;min-width:0}.activity-level-option small{color:var(--theme-muted-text,#64748b);white-space:normal}.activity-level-option:has(input:checked){outline:2px solid var(--theme-primary,#2563eb);outline-offset:-2px}.field-error{color:#b42318;font-size:.82rem}.package-show-grid{align-items:start}@media(max-width:900px){.package-selected-grid,.offering-picker-grid{grid-template-columns:1fr}.activity-level-picker__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.offering-choice,.benefit-config__summary{flex-direction:column}.offering-choice__actions{justify-content:flex-start}}@media(max-width:560px){.activity-level-picker__grid{grid-template-columns:1fr}.package-builder__section-head{align-items:center}.offering-choice__actions>.btn{flex:1 1 auto}}
/* LFB_SERVICE_PACKAGE_BENEFIT_BUILDER_END */

/* LFB_FORM_FIELD_UX_I18N_START */
.app-filter-grid{display:grid;gap:12px;align-items:end}.app-filter-grid--4{grid-template-columns:minmax(240px,1.5fr) repeat(2,minmax(180px,1fr)) minmax(110px,.55fr)}.app-filter-grid--3{grid-template-columns:minmax(260px,1.6fr) minmax(180px,.9fr) minmax(110px,.55fr)}.app-filter-field{margin:0}.app-filter-field>span{min-height:18px;color:var(--theme-muted-text,var(--muted));font-size:.78rem;font-weight:800}.app-filter-field--compact .select{min-width:96px}.app-check-field{display:flex;align-items:flex-start;gap:10px;min-height:44px;padding:10px 12px;border:1px solid var(--theme-border,var(--line));border-radius:11px;background:var(--theme-secondary-surface,var(--surface2));font-size:.9rem;font-weight:750}.app-check-field input{width:18px;height:18px;margin-top:1px;accent-color:var(--theme-primary,var(--accent))}.form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1080px){.app-filter-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.app-filter-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.app-filter-grid--4,.app-filter-grid--3,.form-grid--3{grid-template-columns:1fr}.app-filter-field--compact .select{min-width:0}.app-filter-field>span{font-size:.8rem}.compensation-page-head .toolbar-right{width:100%}.compensation-page-head .toolbar-right .btn{width:100%}}
/* LFB_FORM_FIELD_UX_I18N_END */

/* LFB_PROJECT_UI_I18N_START */
.project-filter-grid{grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(150px,1fr))}.project-index-presets{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:thin}.project-index-presets .tab{flex:0 0 auto;white-space:nowrap}.project-subnav{overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:4px;scrollbar-width:thin}.project-subnav .tab{flex:0 0 auto;white-space:nowrap}.project-direction-filters{grid-template-columns:repeat(3,minmax(150px,1fr));min-width:min(100%,560px)}.project-finance-filter-grid{grid-template-columns:repeat(5,minmax(130px,1fr))}.app-form-shell{max-width:1180px;margin-inline:auto}.app-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.app-form-section{padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface2)}.selection-chip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.selection-chip{display:flex;gap:9px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);cursor:pointer}.selection-chip input{width:18px;height:18px;margin-top:2px;accent-color:var(--accent)}.selection-chip span{display:grid;min-width:0}.selection-chip small{color:var(--muted);overflow-wrap:anywhere}.selection-chip:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}.app-form-actions{position:sticky;bottom:14px;z-index:8;padding:10px 12px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(10px);box-shadow:var(--shadow);justify-content:flex-end}
@media(max-width:1180px){.project-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-finance-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.selection-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.project-filter-grid,.project-direction-filters,.project-finance-filter-grid,.selection-chip-grid{grid-template-columns:1fr}.app-form-actions{bottom:80px;display:grid;grid-template-columns:1fr 1fr}.app-form-actions .btn{width:100%}.project-subnav,.project-index-presets{margin-inline:-2px}.project-direction-filters{min-width:0;width:100%}}
/* LFB_PROJECT_UI_I18N_END */

/* LFB_PROJECT_SUBPAGES_UI_I18N_START */
.field-inline{display:flex;align-items:center;gap:8px}.field-inline>span{white-space:nowrap}.project-subpage-actions{display:flex;flex-wrap:wrap;gap:8px}.project-subpage-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.project-subpage-summary .field{margin:0}.project-subpage-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.project-external-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
@media(max-width:760px){.field-inline{width:100%;justify-content:space-between}.project-subpage-card-grid,.project-external-section-grid{grid-template-columns:1fr}.project-subpage-actions{width:100%}.project-subpage-actions .btn{flex:1 1 auto}}
/* LFB_PROJECT_SUBPAGES_UI_I18N_END */

/* LFB_ACTIVITIES_UI_I18N_START */
.activity-attendance-page .attendance-row{gap:14px;align-items:flex-start}.activity-attendance-page .status-buttons{display:flex;gap:6px;flex-wrap:wrap}.activity-attendance-page details>summary{cursor:pointer;font-weight:700}.activity-date-field{min-width:160px;margin:0}.activity-today-toolbar{align-items:flex-end}.activity-summary-grid .metric-label{min-height:1.35em}.activity-pickup-grid .signature-wrap{min-height:150px}.compensation-page-head .toolbar-right{flex-wrap:wrap}.compensation-narrow-form{max-width:760px}.lfb-filter-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.55fr) minmax(110px,.25fr);gap:12px;align-items:end}.lfb-filter-grid .field{margin:0}
@media(max-width:980px){.activity-attendance-grid{grid-template-columns:1fr}.activity-today-toolbar{align-items:stretch}.activity-today-toolbar .toolbar-left{flex-wrap:wrap}.lfb-filter-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.lfb-filter-grid{grid-template-columns:1fr}.activity-date-field{width:100%}.activity-today-toolbar .toolbar-left{width:100%}.activity-today-toolbar .toolbar-left .btn{min-height:42px}.activity-attendance-page .status-buttons{width:100%}.activity-attendance-page .status-btn{flex:1 1 calc(50% - 6px);min-height:40px}.compensation-page-head .toolbar-right{width:100%}.compensation-page-head .toolbar-right>.btn,.compensation-page-head .toolbar-right>form,.compensation-page-head .toolbar-right>form .btn{width:100%}}
/* LFB_ACTIVITIES_UI_I18N_END */

/* LFB dense desktop forms */
@media(min-width:1280px){.content{max-width:none}.form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid.form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rich-output p{margin:.35rem 0}.rich-output ul,.rich-output ol{padding-left:1.4rem}
/* Project finance create — dense desktop operational layout */
.project-finance-create{width:100%}.project-finance-create__head{margin-bottom:12px}.project-finance-setup__grid{grid-template-columns:minmax(240px,1.4fr) minmax(160px,.75fr) minmax(160px,.75fr) minmax(160px,.65fr);align-items:end}.project-finance-context{min-height:68px;border:1px solid var(--line);border-radius:11px;background:var(--surface2);padding:10px 12px;display:flex;flex-direction:column;justify-content:center}.project-finance-context strong{font-size:1.05rem}.project-finance-hint{margin:0}.project-finance-lines__table{min-width:1120px}.project-finance-lines__table th:nth-child(1){width:15%}.project-finance-lines__table th:nth-child(2){width:24%}.project-finance-lines__table th:nth-child(3){width:15%}.project-finance-lines__table th:nth-child(4){width:8%}.project-finance-lines__table th:nth-child(5){width:12%}.project-finance-lines__table th:nth-child(6){width:10%}.project-finance-lines__table th:nth-child(7){width:11%}.project-finance-lines__table .input,.project-finance-lines__table .select{min-width:0}.finance-money{white-space:nowrap}.finance-toggle{display:flex;align-items:center;gap:7px;font-size:.8rem;font-weight:750;white-space:nowrap}.finance-toggle input{width:18px;height:18px;accent-color:var(--accent)}.project-finance-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.project-finance-kpi{border:1px solid var(--line);border-radius:12px;background:var(--surface2);padding:12px 14px;display:grid;gap:3px;min-width:0}.project-finance-kpi span{font-size:.76rem;color:var(--muted);font-weight:800}.project-finance-kpi strong{font-size:1.35rem;line-height:1.1;overflow-wrap:anywhere}.project-finance-kpi small{font-size:.7rem;color:var(--muted);font-weight:750}.project-finance-summary__help{margin:10px 2px 0}.project-finance-actions{display:flex;gap:8px}.content{width:100%;max-width:none}.app-form-shell{max-width:none}
@media(max-width:1200px){.project-finance-setup__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-finance-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.project-finance-setup__grid,.project-finance-kpis{grid-template-columns:1fr}.project-finance-lines__table{min-width:0}.finance-toggle{white-space:normal}.project-finance-actions .btn{flex:1}}

/* LFB_GLOBAL_FORMAT_PROJECT_UX_MATURITY_START */
.format-preview{display:grid;gap:3px;padding:12px 14px;border:1px dashed var(--line);border-radius:12px;background:var(--surface2)}.format-preview>span{font-size:.75rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.format-preview>strong{font-size:1.15rem}.format-preview>small{color:var(--muted)}
.finance-overview{display:grid;grid-template-columns:minmax(210px,.9fr) minmax(0,3fr) minmax(180px,.75fr);gap:12px;margin:14px 0 16px}.finance-overview__primary,.finance-variance,.finance-stat{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:14px 16px}.finance-overview__primary{display:grid;align-content:center;background:color-mix(in srgb,var(--accent) 6%,var(--surface));border-color:color-mix(in srgb,var(--accent) 22%,var(--line))}.finance-overview__primary span,.finance-variance span,.finance-stat span{font-size:.74rem;font-weight:850;color:var(--muted);text-transform:uppercase;letter-spacing:.035em}.finance-overview__primary strong{font-size:1.55rem;line-height:1.15;margin-top:4px}.finance-overview__primary small,.finance-variance small{color:var(--muted);margin-top:3px}.finance-overview__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.finance-stat{padding:11px 13px;display:grid;align-content:center;gap:4px;min-height:76px}.finance-stat strong{font-size:1.02rem;white-space:nowrap}.finance-variance{display:grid;align-content:center;gap:4px}.finance-variance strong{font-size:1.15rem}.project-finance-lines__table td{vertical-align:middle}.project-finance-lines__table .input,.project-finance-lines__table .select{min-height:40px}.project-finance-summary{padding:14px 16px}.project-finance-kpi strong{font-size:1.08rem;white-space:nowrap}.project-finance-kpi{min-height:78px;align-content:center}.project-index-presets .tab,.project-subnav .tab{min-height:38px;display:inline-flex;align-items:center}.table td .row{gap:6px;flex-wrap:nowrap}.table td .row .btn{white-space:nowrap}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.detail-list>div{display:grid;gap:3px}.detail-list dt{font-size:.75rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.detail-list dd{margin:0;font-weight:650}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.metric-grid .metric{min-height:82px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.metric-grid .metric span{font-size:.75rem;font-weight:800;color:var(--muted)}.metric-grid .metric strong{font-size:1.15rem;line-height:1.2;margin-top:4px;overflow-wrap:anywhere}
@media(min-width:1440px){.content{padding-inline:24px}.card{padding:16px 18px}.project-finance-lines__table{min-width:0;width:100%}}
@media(max-width:1050px){.finance-overview{grid-template-columns:1fr 2fr}.finance-variance{grid-column:1/-1}.finance-overview__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.finance-overview{grid-template-columns:1fr}.finance-overview__metrics{grid-template-columns:1fr 1fr}.finance-variance{grid-column:auto}.detail-list{grid-template-columns:1fr}.table td .row{flex-wrap:wrap}}
/* LFB_GLOBAL_FORMAT_PROJECT_UX_MATURITY_END */
.finance-item-detail{margin-top:6px;max-width:720px;white-space:pre-line;line-height:1.45}.finance-accounting-note{margin-top:8px;padding:8px 10px;background:var(--surface-soft,#f6f8fb);border-radius:10px;font-size:.88rem}.finance-issue{margin-top:6px;color:#a33;font-weight:650}.finance-item-actions{display:grid;grid-template-columns:minmax(145px,1fr) 145px 140px;gap:6px;min-width:460px}.finance-item-actions input[type=file]{grid-column:1/3;max-width:290px;font-size:.8rem}.finance-item-actions .btn{align-self:end}.form-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.field--span-2{grid-column:span 2}.textarea{width:100%;border:1px solid var(--border,#d7dee8);border-radius:12px;padding:10px 12px;font:inherit;resize:vertical;background:#fff}@media(max-width:1100px){.form-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-item-actions{min-width:320px;grid-template-columns:1fr 1fr}}@media(max-width:700px){.form-grid--4{grid-template-columns:1fr}.field--span-2{grid-column:auto}.finance-item-actions{min-width:0;grid-template-columns:1fr}}
.finance-followup{margin-top:6px;padding:7px 9px;border-radius:10px;background:#f7f9fc;font-size:.84rem;line-height:1.35}.finance-action-panel{min-width:150px}.finance-action-panel>summary{cursor:pointer;list-style:none}.finance-action-panel>summary::-webkit-details-marker{display:none}.finance-action-panel[open]{position:relative}.finance-action-panel__body{margin-top:8px;padding:12px;border:1px solid var(--border,#dbe2ea);border-radius:12px;background:#fff;min-width:min(720px,70vw);box-shadow:0 12px 30px rgba(15,23,42,.08)}.finance-history{margin-top:7px;font-size:.82rem}.finance-history summary{cursor:pointer;font-weight:650}.finance-notify-toggle{align-content:start;padding-top:4px}.finance-notify-toggle input{margin-top:8px}@media(max-width:900px){.finance-action-panel__body{min-width:0;width:min(88vw,620px)}}

/* LFB_PILOTAGE_EVOLUTION_CHARTS_START */
.pilotage-chart-card{overflow:hidden}.pilotage-chart-head{padding:0;border:0;background:transparent;align-items:end}.pilotage-chart-selector{min-width:220px;margin:0}.pilotage-chart-current{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.pilotage-chart-current span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.pilotage-chart-current strong{font-size:14px}.pilotage-chart{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(78px,1fr);gap:10px;align-items:end;min-height:260px;margin-top:18px;padding:18px 8px 4px;border-top:1px solid var(--line);overflow-x:auto}.pilotage-bar-column{appearance:none;border:0;background:transparent;color:var(--ink);font:inherit;display:grid;grid-template-rows:28px 170px 34px;gap:6px;align-items:end;min-width:78px;padding:0 4px;cursor:pointer;border-radius:12px}.pilotage-bar-column:hover,.pilotage-bar-column:focus-visible{background:var(--surface2);outline:none}.pilotage-bar-column.is-active{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.pilotage-bar-value{align-self:center;font-size:12px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.pilotage-bar-track{position:relative;height:170px;width:min(42px,72%);justify-self:center;border-radius:10px 10px 5px 5px;background:var(--surface2);border:1px solid var(--line);overflow:hidden}.pilotage-bar-fill{position:absolute;left:0;right:0;bottom:0;min-height:3px;border-radius:8px 8px 3px 3px;background:var(--accent);transition:height .22s ease}.pilotage-bar-column.is-active .pilotage-bar-fill{box-shadow:inset 0 0 0 2px color-mix(in srgb,#fff 32%,transparent)}.pilotage-bar-label{align-self:start;text-align:center;font-size:12px;line-height:1.2;font-weight:750;color:var(--muted)}.pilotage-bar-column.is-active .pilotage-bar-label{color:var(--accent)}.pilotage-chart-foot{margin-top:10px;color:var(--muted);font-size:12px}.pilotage-chart--money{grid-auto-columns:minmax(94px,1fr)}
@media(max-width:720px){.pilotage-chart-head{align-items:stretch;gap:12px}.pilotage-chart-selector{min-width:0;width:100%}.pilotage-chart-current{align-items:flex-start}.pilotage-chart{min-height:230px;grid-auto-columns:82px}.pilotage-bar-column{grid-template-rows:26px 145px 34px}.pilotage-bar-track{height:145px}}
/* LFB_PILOTAGE_EVOLUTION_CHARTS_END */
/* Activity attendance execution maturity */
.attendance-title{font-size:24px;margin-top:8px}.attendance-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.attendance-kpi{appearance:none;text-align:left;border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px 14px;cursor:pointer}.attendance-kpi span{display:block;color:var(--muted);font-size:12px;font-weight:700}.attendance-kpi strong{display:block;font-size:24px;line-height:1.1;margin-top:4px}.attendance-kpi.is-active{box-shadow:0 0 0 2px var(--kpi-accent-strong,#84adff) inset}
.attendance-kpi--primary{--kpi-accent-strong:var(--primary-strong)}.attendance-kpi--primary strong{color:var(--primary-strong)}
.attendance-kpi--success{--kpi-accent-strong:var(--success);background:var(--success-soft);border-color:var(--success-border)}.attendance-kpi--success strong{color:var(--success)}
.attendance-kpi--danger{--kpi-accent-strong:var(--danger);background:var(--danger-soft);border-color:var(--danger-border)}.attendance-kpi--danger strong{color:var(--danger)}
.attendance-kpi--warning{--kpi-accent-strong:var(--warn);background:var(--warning-soft);border-color:var(--warning-border)}.attendance-kpi--warning strong{color:var(--warn)}
.attendance-kpi--info{--kpi-accent-strong:var(--info);background:var(--info-soft);border-color:var(--info-border)}.attendance-kpi--info strong{color:var(--info)}
.attendance-kpi--secondary{--kpi-accent-strong:var(--secondary);background:var(--secondary-soft);border-color:var(--secondary-border)}.attendance-kpi--secondary strong{color:var(--secondary)}.attendance-staff-add{margin-top:12px}.attendance-staff-add>summary{cursor:pointer;font-weight:800}.attendance-staff-add .form-grid{margin-top:10px}.attendance-staff-result{padding:8px 0;border-top:1px solid var(--line)}
@media(max-width:1100px){.attendance-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.attendance-kpis{grid-template-columns:repeat(2,1fr)}}

/* 2026-09-26 operational visual integrity: calendar + compact metrics */
.ops-calendar-page{display:grid;gap:16px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px}.calendar-filters{display:flex;gap:18px;flex-wrap:wrap}.calendar-filters label{display:inline-flex;align-items:center;gap:7px;font-weight:600}.calendar-shell{overflow:hidden;border:1px solid var(--border,#d9e1ea);border-radius:14px;background:#fff}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{background:#f7f9fc;border-bottom:1px solid var(--border,#d9e1ea)}.calendar-weekdays>div{padding:10px 12px;font-size:12px;font-weight:800;color:#64748b;text-transform:capitalize}.calendar-day{min-height:132px;padding:8px;border-right:1px solid #e8edf3;border-bottom:1px solid #e8edf3;background:#fff;min-width:0}.calendar-day:nth-child(7n){border-right:0}.calendar-day.is-outside{background:#f8fafc;color:#94a3b8}.calendar-day.is-today{box-shadow:inset 0 0 0 2px #2563eb}.calendar-day__number{font-size:12px;font-weight:800;margin-bottom:7px}.calendar-day__items{display:grid;gap:5px}.calendar-item{display:block;min-width:0;padding:5px 7px;border-radius:7px;background:#eef4ff;color:#173b70;text-decoration:none;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-item--event{background:#f3eefe;color:#6537a8}.calendar-item--activity{background:#e9f8f0;color:#176b45}.calendar-item--project{background:#eef4ff;color:#173b70}.activity-workspace__row-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.project-kpis,.project-summary-metrics,.finance-kpis,.metric-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px!important}.project-kpis>*,.project-summary-metrics>*,.finance-kpis>*,.metric-grid>*{min-width:0}.metric,.metric-value{font-size:clamp(20px,2vw,30px)!important;line-height:1.1!important;font-weight:800!important}.metric-label{display:block!important;margin-top:5px!important;font-size:12px!important;line-height:1.3!important;color:#64748b!important}@media(max-width:1000px){.calendar-day{min-height:105px}.project-kpis,.project-summary-metrics,.finance-kpis,.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.calendar-shell{overflow-x:auto}.calendar-weekdays,.calendar-grid{min-width:840px}.calendar-toolbar{align-items:flex-start;flex-direction:column}.project-kpis,.project-summary-metrics,.finance-kpis,.metric-grid{grid-template-columns:1fr}}

/* Project rich content and media gallery. */
.rich-text-field{min-width:0}.rich-editor{overflow:hidden;border:1px solid var(--border,#d7dee8);border-radius:12px;background:#fff}.rich-toolbar{display:flex;gap:5px;flex-wrap:wrap;padding:7px;border-bottom:1px solid var(--border,#d7dee8);background:#f8fafc}.rich-toolbar button{min-height:32px;padding:5px 9px;border:1px solid #d7dee8;border-radius:8px;background:#fff;cursor:pointer}.rich-toolbar button:hover,.rich-toolbar button:focus-visible{border-color:var(--theme-primary,#2563eb);outline:none}.rich-surface{min-height:150px;padding:12px;line-height:1.55;outline:none;overflow-wrap:anywhere}.rich-surface:focus{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--theme-primary,#2563eb) 18%,transparent)}.rich-output{overflow-wrap:anywhere;line-height:1.55}.project-gallery-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.project-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.project-gallery-item{min-width:0;overflow:hidden;border:1px solid var(--border,#d7dee8);border-radius:14px;background:#fff}.project-gallery-preview{display:block;aspect-ratio:4/3;background:#eef2f6;overflow:hidden}.project-gallery-preview img,.project-gallery-preview video{display:block;width:100%;height:100%;object-fit:cover}.project-gallery-meta{display:grid;gap:5px;padding:10px 12px;font-size:.85rem}.project-gallery-meta strong{overflow-wrap:anywhere}.project-gallery-meta span{color:#64748b}@media(max-width:1100px){.project-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.project-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-gallery-toolbar{align-items:stretch;flex-direction:column}}@media(max-width:480px){.project-gallery-grid{grid-template-columns:1fr}}

/* Searchable select: native select remains the form value and Livewire binding source. */
.search-select{position:relative;min-width:0;width:100%}.search-select__native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.search-select__trigger{width:100%;min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 11px;border:1px solid var(--border,#d7dee8);border-radius:11px;background:#fff;color:inherit;font:inherit;text-align:left;cursor:pointer}.search-select__trigger:focus-visible{outline:2px solid color-mix(in srgb,var(--theme-primary,#2563eb) 28%,transparent);outline-offset:1px}.search-select__arrow{margin-left:auto;color:#64748b}.search-select__panel{position:absolute;z-index:1200;left:0;right:0;top:calc(100% + 5px);padding:8px;border:1px solid var(--border,#d7dee8);border-radius:12px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.14)}.search-select__search{width:100%;margin-bottom:7px}.search-select__options{max-height:260px;overflow:auto;display:grid;gap:2px}.search-select__option{width:100%;display:grid;grid-template-columns:22px minmax(0,1fr);gap:7px;align-items:center;padding:8px 9px;border:0;border-radius:8px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;overflow-wrap:anywhere}.search-select__option:hover,.search-select__option:focus-visible{background:#f1f5f9;outline:none}.search-select__option[aria-selected=true]{background:#eef4ff;font-weight:700}.search-select__check{font-weight:900;color:var(--theme-primary,#2563eb)}.search-select__chips{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.search-select__chip{display:inline-flex;max-width:190px;padding:3px 7px;border-radius:999px;background:#eef4ff;color:#173b70;font-size:.78rem;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-select__empty{padding:12px;color:#64748b;text-align:center;font-size:.86rem}@media(max-width:640px){.search-select__panel{position:fixed;z-index:1600;left:12px;right:12px;top:auto;bottom:12px;max-height:70vh}.search-select__options{max-height:50vh}}

/* Compact global system actions. */
.system-nav-actions{display:flex;align-items:center;gap:6px}.topbar-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border,#dbe2ea);border-radius:10px;background:var(--surface,#fff);color:inherit;text-decoration:none;cursor:pointer}.topbar-icon:hover{background:var(--surface-soft,#f5f7fa)}.topbar-icon-danger{color:#b42318}.topbar-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#b42318;color:#fff;font-size:10px;line-height:18px;text-align:center}.topbar-popover{position:relative}.topbar-popover>summary{list-style:none}.topbar-popover>summary::-webkit-details-marker{display:none}.topbar-menu{display:none;position:absolute;right:0;top:42px;z-index:80;width:min(380px,calc(100vw - 24px));max-height:460px;overflow:auto;background:var(--surface,#fff);border:1px solid var(--border,#dbe2ea);border-radius:12px;box-shadow:0 12px 32px rgba(15,23,42,.14)}.topbar-popover[open] .topbar-menu{display:block}.topbar-menu-head,.topbar-menu-footer,.notification-preview{padding:10px 12px}.notification-preview{border-top:1px solid var(--border,#e5e7eb)}.notification-preview.is-unread,.notification-row.is-unread{background:rgba(37,99,235,.06)}.topbar-menu-footer{display:block;border-top:1px solid var(--border,#e5e7eb);font-weight:600}.topbar-empty{padding:16px 12px}.link-button{border:0;background:none;padding:0;color:inherit;text-decoration:underline;cursor:pointer}.notification-row{padding:12px;border:1px solid var(--border,#e5e7eb);border-radius:10px}.wrap-anywhere{overflow-wrap:anywhere}.min-w-0{min-width:0}@media(max-width:760px){.topbar-actions .desktop-only,.topbar-actions .academic-context-form,.topbar-logout-form{display:none}.topbar-actions{flex:0 1 auto;min-width:0}.system-nav-actions{gap:4px}.topbar-icon{width:34px;height:34px}}

.topbar-svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Operational density: keep compact controls on one row while desktop width permits it. */
.filter-bar{display:grid;grid-template-columns:minmax(280px,1.8fr) repeat(3,minmax(150px,1fr)) minmax(90px,.55fr);gap:10px;align-items:end}
.unexpected-student-results{margin-top:4px}.unexpected-student-result{text-align:left}.unexpected-student-result>span:first-child{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.unexpected-student-result small{color:var(--muted);font-size:.75rem}.unexpected-student-hint{padding:10px 2px;margin:0}
.project-planning-form .project-logistics-grid{display:grid;grid-template-columns:minmax(150px,.8fr) repeat(2,minmax(170px,1fr)) minmax(160px,.9fr) minmax(220px,1.25fr);gap:14px;align-items:end}.project-planning-form .project-logistics-rich{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.project-planning-form .project-team-grid{display:grid;grid-template-columns:minmax(240px,1.25fr) minmax(220px,1fr) minmax(180px,.8fr);gap:14px;align-items:end}
@media(max-width:1180px){.filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.project-planning-form .project-logistics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-planning-form .project-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.filter-bar,.project-planning-form .project-logistics-grid,.project-planning-form .project-logistics-rich,.project-planning-form .project-team-grid{grid-template-columns:1fr}}

/* Today/Operations desktop-density baseline: operational rows use the available width,
   while preserving a single-column mobile reading order. */
.activity-today-toolbar{align-items:end}
.activity-today-toolbar .toolbar-left{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
.activity-date-field{margin:0;min-width:190px}
.activity-today-list{gap:8px}
.activity-today-list .activity-card{display:grid;grid-template-columns:76px minmax(0,1fr) minmax(190px,auto);gap:16px;align-items:center;padding:14px 16px}
.activity-today-list .activity-card .time{font-size:1.05rem;font-weight:850}
.activity-daycare-live__grid>div{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
.activity-daycare-live__grid strong{font-size:1.15rem}
@media(max-width:900px){.activity-today-list .activity-card{grid-template-columns:68px minmax(0,1fr)}.activity-today-list .activity-card>div:last-child{grid-column:1/-1;justify-content:flex-start!important}}
@media(max-width:620px){.activity-today-toolbar .toolbar-left{display:grid;grid-template-columns:auto minmax(0,1fr) auto;width:100%}.activity-today-toolbar .toolbar-left>.btn:last-child{grid-column:1/-1}.activity-date-field{min-width:0}.activity-today-list .activity-card{grid-template-columns:1fr;gap:8px}.activity-today-list .activity-card>div:last-child{grid-column:auto}.activity-daycare-live__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
