/* LBF v8 Hostinger/hPanel-inspired portal skin. Visual layer only; existing permissions/data remain unchanged. */
:root{--lbf-hp-purple:#673de6;--lbf-hp-purple-2:#7b57ef;--lbf-hp-ink:#1d1e20;--lbf-hp-navy:#111827;--lbf-hp-side:#121826;--lbf-hp-bg:#f5f6fb;--lbf-hp-card:#fff;--lbf-hp-line:#e6e8f0;--lbf-hp-muted:#6b7280;--lbf-hp-green:#12a150;--lbf-hp-orange:#e98217;--lbf-hp-red:#d14343}
.lbf-hpanel{background:var(--lbf-hp-bg)!important;min-height:100%;color:var(--lbf-hp-ink)}
.lbf-hpanel .lbf-school-nav{background:linear-gradient(180deg,#111827 0%,#18202f 100%)!important;border:0!important;color:#eef2ff!important}
.lbf-hpanel .lbf-school-brand{border-bottom:1px solid rgba(255,255,255,.08)!important}
.lbf-hpanel .lbf-school-brand strong,.lbf-hpanel .lbf-school-nav-user strong{color:#fff!important}
.lbf-hpanel .lbf-school-brand small,.lbf-hpanel .lbf-school-nav-user small,.lbf-hpanel .lbf-school-nav-group>small{color:#8792a6!important}
.lbf-hpanel .lbf-school-nav-group a{color:#dbe1ec!important;border-radius:9px!important;margin:2px 9px!important;padding:9px 10px!important}
.lbf-hpanel .lbf-school-nav-group a:hover{background:rgba(255,255,255,.06)!important;color:#fff!important}
.lbf-hpanel .lbf-school-nav-group a.active{background:linear-gradient(90deg,var(--lbf-hp-purple),var(--lbf-hp-purple-2))!important;color:#fff!important;box-shadow:0 8px 18px rgba(103,61,230,.24)!important}
.lbf-hpanel .lbf-school-nav-user{border-top:1px solid rgba(255,255,255,.08)!important;background:rgba(255,255,255,.02)!important}
.lbf-hpanel .lbf-school-main{background:var(--lbf-hp-bg)!important}
.lbf-hpanel .lbf-school-top{background:#fff!important;border-bottom:1px solid var(--lbf-hp-line)!important;box-shadow:none!important;padding-top:14px!important;padding-bottom:14px!important}
.lbf-hpanel .lbf-school-top>div:first-child small{color:var(--lbf-hp-muted)!important}
.lbf-hpanel .lbf-school-top h1{font-size:24px!important;color:var(--lbf-hp-ink)!important;letter-spacing:-.02em!important}
.lbf-hpanel .lbf-top-user{background:#fafaff!important;border:1px solid var(--lbf-hp-line)!important;border-radius:12px!important;padding:6px 9px!important}
.lbf-hpanel .lbf-top-user strong{color:var(--lbf-hp-ink)!important}.lbf-hpanel .lbf-top-user small{color:var(--lbf-hp-muted)!important}
.lbf-hpanel .lbf-btn.primary{background:var(--lbf-hp-purple)!important;border-color:var(--lbf-hp-purple)!important}.lbf-hpanel .lbf-btn.secondary{background:#fff!important;color:#4338ca!important;border-color:var(--lbf-hp-line)!important}
.lbf-guide-download{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 12px;border-radius:10px;background:#f2efff;color:#5132c7!important;text-decoration:none!important;font-weight:800;font-size:12px;border:1px solid #e1dcff}.lbf-guide-download:hover{background:#e8e2ff}.lbf-login-card>.lbf-guide-download{width:100%;justify-content:center;margin-top:10px}
.lbf-hpanel-welcome{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:20px 0 14px;padding:4px 2px}.lbf-hpanel-welcome span{color:var(--lbf-hp-purple);font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.lbf-hpanel-welcome h2{margin:4px 0 4px;font-size:28px;line-height:1.15;color:var(--lbf-hp-ink)}.lbf-hpanel-welcome p{margin:0;color:var(--lbf-hp-muted);max-width:720px}.lbf-hpanel-date{background:#fff;border:1px solid var(--lbf-hp-line);border-radius:12px;padding:10px 14px;text-align:right;white-space:nowrap}.lbf-hpanel-date strong,.lbf-hpanel-date small{display:block}.lbf-hpanel-date small{color:var(--lbf-hp-muted);font-size:11px;margin-top:2px}
.lbf-hpanel-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.lbf-hpanel-stat-grid>a{min-width:0;display:flex;gap:11px;align-items:center;background:#fff;border:1px solid var(--lbf-hp-line);border-radius:13px;padding:14px;text-decoration:none!important;color:inherit!important;box-shadow:0 2px 6px rgba(17,24,39,.025)}.lbf-hpanel-stat-grid>a:hover{border-color:#cec5fb;box-shadow:0 8px 20px rgba(17,24,39,.06)}.lbf-hpanel-stat-grid .lbf-stat-icon{width:42px;height:42px;border-radius:11px;background:#f1efff;color:var(--lbf-hp-purple);display:grid;place-items:center;flex:0 0 42px}.lbf-hpanel-stat-grid .lbf-stat-icon svg{width:21px;height:21px}.lbf-hpanel-stat-grid .lbf-stat-icon.fees{background:#e9faf0;color:var(--lbf-hp-green)}.lbf-hpanel-stat-grid .lbf-stat-icon.attendance{background:#eaf4ff;color:#1c74d9}.lbf-hpanel-stat-grid .lbf-stat-icon.registrations{background:#fff4e8;color:var(--lbf-hp-orange)}.lbf-hpanel-stat-grid small,.lbf-hpanel-stat-grid strong,.lbf-hpanel-stat-grid em{display:block;font-style:normal}.lbf-hpanel-stat-grid small{font-size:11px;color:var(--lbf-hp-muted);font-weight:700}.lbf-hpanel-stat-grid strong{font-size:21px;color:var(--lbf-hp-ink);margin-top:2px}.lbf-hpanel-stat-grid em{font-size:10px;color:var(--lbf-hp-green);margin-top:2px}
.lbf-hpanel-main-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.9fr);gap:14px;align-items:start}.lbf-hpanel .lbf-admin-panel,.lbf-hpanel .lbf-student-section{background:#fff!important;border:1px solid var(--lbf-hp-line)!important;border-radius:14px!important;box-shadow:0 2px 7px rgba(17,24,39,.025)!important}.lbf-hpanel-main-grid .lbf-admin-panel{margin:0!important}.lbf-hpanel .lbf-panel-head h2{font-size:16px!important;color:var(--lbf-hp-ink)!important}.lbf-hpanel .lbf-panel-head small{color:var(--lbf-hp-muted)!important}.lbf-hpanel .lbf-panel-head>a{color:var(--lbf-hp-purple)!important;font-weight:800!important}
.lbf-hpanel-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.lbf-hpanel-quick-grid>a{min-height:92px;border:1px solid #ececf4;border-radius:11px;background:#fbfbfe;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:10px;text-decoration:none!important;color:var(--lbf-hp-ink)!important;gap:7px}.lbf-hpanel-quick-grid>a:hover{background:#f3f0ff;border-color:#ded7ff}.lbf-hpanel-quick-grid span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#eeebff;color:var(--lbf-hp-purple)}.lbf-hpanel-quick-grid svg{width:18px;height:18px}.lbf-hpanel-quick-grid strong{font-size:11px}
.lbf-hpanel .lbf-dashboard-list article{border-bottom:1px solid #eff0f5!important;padding:11px 0!important}.lbf-hpanel .lbf-dashboard-list article:last-child{border-bottom:0!important}.lbf-hpanel .lbf-list-icon{background:#eef4ff!important;color:#2878da!important;border-radius:50%!important}.lbf-hpanel-attention{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:14px 0;background:#fff8e8;border:1px solid #f7dfa8;border-radius:13px;padding:13px 15px}.lbf-hpanel-attention strong,.lbf-hpanel-attention span{display:block}.lbf-hpanel-attention span{font-size:12px;color:#765b23;margin-top:3px}
.lbf-dashboard-customizer .lbf-widget-role{border-top:1px solid var(--lbf-hp-line);padding:18px 0}.lbf-widget-role-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.lbf-widget-role-head h3{margin:0;color:var(--lbf-hp-ink)}.lbf-widget-role-head>span{background:#eeeaff;color:var(--lbf-hp-purple);border-radius:999px;padding:5px 9px;font-size:10px;font-weight:900;text-transform:uppercase}.lbf-widget-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:8px 0 18px}.lbf-widget-choice-grid label{border:1px solid var(--lbf-hp-line);border-radius:11px;padding:10px;background:#fff;display:flex;gap:9px;align-items:flex-start}.lbf-widget-choice-grid input{margin-top:3px}.lbf-widget-choice-grid strong,.lbf-widget-choice-grid small{display:block}.lbf-widget-choice-grid small{color:var(--lbf-hp-muted);font-size:10px;margin-top:2px}.lbf-admin-panel-note{background:#f7f7fb;border:1px solid var(--lbf-hp-line);border-radius:10px;padding:10px 12px;margin:8px 0 14px;font-size:12px;color:#555}
.lbf-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lbf-guide-grid article{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--lbf-hp-line);border-radius:12px;background:#fff}.lbf-guide-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#f0edff;color:var(--lbf-hp-purple);font-weight:900;font-size:11px}.lbf-guide-grid strong,.lbf-guide-grid small{display:block}.lbf-guide-grid small{color:var(--lbf-hp-muted);margin-top:2px}
/* Role dashboards use the same visual language. */
.lbf-role-app-v45.lbf-hpanel .lbf-role-content{padding-top:0}.lbf-role-app-v45.lbf-hpanel .lbf-dash-welcome{background:transparent!important;border:0!important;padding:4px 2px 12px!important;box-shadow:none!important}.lbf-role-app-v45.lbf-hpanel .lbf-admin-stat-grid>a{background:#fff!important;border-color:var(--lbf-hp-line)!important;border-radius:13px!important}.lbf-role-app-v45.lbf-hpanel .lbf-dashboard-grid{gap:14px!important}.lbf-role-app-v45.lbf-hpanel .lbf-action-grid>a{border:1px solid #ececf4!important;background:#fbfbfe!important;border-radius:11px!important}
@media(max-width:1100px){.lbf-hpanel-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lbf-hpanel-main-grid{grid-template-columns:1fr}.lbf-widget-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.lbf-hpanel .lbf-school-mobile-header{background:#fff!important;border-bottom:1px solid var(--lbf-hp-line)!important}.lbf-hpanel-welcome{align-items:flex-start;margin-top:10px}.lbf-hpanel-welcome h2{font-size:20px}.lbf-hpanel-welcome p{font-size:12px}.lbf-hpanel-date{padding:7px 9px;font-size:11px}.lbf-hpanel-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lbf-hpanel-stat-grid>a{padding:10px;gap:8px}.lbf-hpanel-stat-grid .lbf-stat-icon{width:36px;height:36px;flex-basis:36px}.lbf-hpanel-stat-grid strong{font-size:17px}.lbf-hpanel-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lbf-hpanel-quick-grid>a{min-height:78px;padding:7px}.lbf-hpanel-quick-grid strong{font-size:10px}.lbf-widget-choice-grid,.lbf-guide-grid{grid-template-columns:1fr}.lbf-hpanel .lbf-mobile-bottom-nav{background:#fff!important;border-top:1px solid var(--lbf-hp-line)!important}.lbf-hpanel .lbf-mobile-bottom-nav a.active{color:var(--lbf-hp-purple)!important}.lbf-hpanel .lbf-mobile-plus{background:var(--lbf-hp-purple)!important}.lbf-hpanel-attention{align-items:flex-start}.lbf-school-top-actions .lbf-guide-download{display:none}}
.lbf-hpanel .lbf-global-search{margin:14px 0 16px!important;background:transparent!important;border:0!important;padding:0!important}.lbf-hpanel .lbf-global-search form{max-width:760px;background:#fff;border:1px solid var(--lbf-hp-line);border-radius:12px;padding:7px 8px;display:flex;align-items:center;gap:6px}.lbf-hpanel .lbf-global-search input{border:0!important;box-shadow:none!important;background:transparent!important;min-width:220px}.lbf-hpanel .lbf-global-search select{border:0!important;background:#f7f7fb!important;max-width:150px}.lbf-hpanel .lbf-global-search-icon{color:var(--lbf-hp-purple);font-size:20px}.lbf-hpanel .lbf-global-search .lbf-btn{min-height:34px!important;padding:6px 10px!important}
@media(max-width:760px){.lbf-hpanel .lbf-global-search form{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px}.lbf-hpanel .lbf-global-search select,.lbf-hpanel .lbf-global-search .lbf-btn{grid-column:2;max-width:none;width:100%}.lbf-hpanel .lbf-global-search input{min-width:0;width:100%}}

/* v8.0.1 navigation reliability fix — desktop sidebar always visible, phone drawer vertically scrollable. */
@media (min-width:769px), (hover:hover) and (pointer:fine){
  .lbf-school-app-v44{display:grid!important;grid-template-columns:238px minmax(0,1fr)!important;min-height:820px!important;padding-bottom:0!important}
  .lbf-school-app-v44 .lbf-school-nav{display:flex!important;flex-direction:column!important;position:sticky!important;left:auto!important;right:auto!important;top:0!important;bottom:auto!important;width:auto!important;height:100vh!important;max-height:100vh!important;transform:none!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;z-index:40!important}
  .lbf-school-app-v44 .lbf-school-main{padding:0 26px 34px!important}
  .lbf-school-app-v44 .lbf-school-top{display:flex!important}
  .lbf-school-app-v44 .lbf-school-mobile-header,.lbf-school-app-v44 .lbf-mobile-bottom-nav,.lbf-school-app-v44 .lbf-mobile-quick-sheet,.lbf-school-app-v44 .lbf-school-nav-overlay{display:none!important}
  .lbf-school-app-v44 .lbf-dashboard-grid{grid-template-columns:1.12fr 1fr 1fr}
  .lbf-school-app-v44 .lbf-dashboard-gallery{grid-column:2/4}
  .lbf-school-app-v44 .lbf-admin-stat-grid-v44{grid-template-columns:repeat(6,minmax(0,1fr))}
  .lbf-school-app-v44 .lbf-school-brand button{display:none!important}
}
@media (min-width:769px) and (max-width:1180px){
  .lbf-school-app-v44{grid-template-columns:218px minmax(0,1fr)!important}
  .lbf-school-app-v44 .lbf-dashboard-grid{grid-template-columns:1fr 1fr!important}
  .lbf-school-app-v44 .lbf-dashboard-gallery{grid-column:1/-1!important}
  .lbf-school-app-v44 .lbf-admin-stat-grid-v44{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width:768px){
  .lbf-school-app-v44{display:block!important;padding-bottom:82px!important}
  .lbf-school-app-v44 .lbf-school-nav{display:flex!important;flex-direction:column!important;position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(86vw,330px)!important;height:100dvh!important;max-height:100dvh!important;min-height:0!important;transform:translateX(-105%)!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-y!important;scrollbar-gutter:stable;z-index:100!important;padding:16px 13px 24px!important}
  .lbf-school-app-v44 .lbf-school-nav nav{display:block!important;flex:0 0 auto!important;min-height:max-content!important}
  .lbf-school-app-v44 .lbf-school-nav-group{display:grid!important}
  .lbf-school-app-v44 .lbf-school-nav-user{flex:0 0 auto!important;margin-top:16px!important;margin-bottom:16px!important}
  .lbf-school-app-v44.is-nav-open .lbf-school-nav{transform:translateX(0)!important}
  .lbf-school-app-v44 .lbf-school-nav-overlay{display:none!important}
  .lbf-school-app-v44.is-nav-open .lbf-school-nav-overlay{display:block!important}
  html.lbf-school-menu-open,html.lbf-school-menu-open body{overflow:hidden!important}
  .lbf-school-app-v44 .lbf-school-mobile-header{display:grid!important}
  .lbf-school-app-v44 .lbf-mobile-bottom-nav{display:grid!important}
  .lbf-school-app-v44 .lbf-school-top{display:none!important}
}


/* v8.3 Teacher Role & Contribution */
.lbf-teacher-role-card{margin:0 0 14px;padding:18px;border:1px solid #e7e3fb;border-radius:16px;background:linear-gradient(135deg,#fff 0%,#faf9ff 55%,#f5f2ff 100%);box-shadow:0 4px 18px rgba(65,48,137,.05)}
.lbf-teacher-role-head{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px}.lbf-teacher-role-badge{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#efeaff;color:#6847dc}.lbf-teacher-role-badge svg{width:24px;height:24px}.lbf-teacher-role-head small{display:block;color:#6847dc;font-size:8px;font-weight:950;letter-spacing:.12em}.lbf-teacher-role-head h2{margin:3px 0 2px!important;font-size:18px!important;color:#1d2644}.lbf-teacher-role-head p{margin:0;color:#7b8295;font-size:9px}.lbf-valued-educator{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border-radius:999px;background:#eaf8ef;color:#1e8d4d;font-size:9px;font-weight:900;white-space:nowrap}.lbf-teacher-impact-message{margin-top:14px;padding:14px 15px;border-radius:13px;background:#fff;border:1px solid #ece9f8}.lbf-teacher-impact-message>strong{display:block;color:#222d4c;font-size:12px}.lbf-teacher-impact-message p{margin:5px 0 0;color:#667087;font-size:10px;line-height:1.55}.lbf-teacher-impact-message .lbf-teacher-impact-personal{color:#4f3fb4}.lbf-teacher-impact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.lbf-teacher-impact-grid>div{padding:11px;border:1px solid #eceaf5;border-radius:12px;background:#fff}.lbf-teacher-impact-grid small,.lbf-teacher-impact-grid strong,.lbf-teacher-impact-grid span{display:block}.lbf-teacher-impact-grid small{font-size:8px;color:#7e879a}.lbf-teacher-impact-grid strong{margin:3px 0;font-size:20px;color:#2a3352}.lbf-teacher-impact-grid span{font-size:8px;color:#9aa1b0}.lbf-teacher-role-note{margin-top:9px;font-size:8px;color:#8a91a1}.lbf-teacher-message-setting{margin-top:16px;padding:15px;border:1px solid #e4e8f0;border-radius:14px;background:#fbfcfe}.lbf-teacher-message-setting h4{margin:0 0 8px}.lbf-teacher-message-setting label span,.lbf-teacher-message-setting label small{display:block}.lbf-teacher-message-setting textarea{width:100%;margin:6px 0;min-height:88px}
@media(max-width:900px){.lbf-teacher-impact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.lbf-teacher-role-card{padding:14px}.lbf-teacher-role-head{grid-template-columns:40px minmax(0,1fr)}.lbf-teacher-role-badge{width:40px;height:40px}.lbf-valued-educator{grid-column:1/-1;justify-self:start}.lbf-teacher-impact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lbf-teacher-impact-grid strong{font-size:18px}}


/* v8.4 Attendance & Leave Center */
.lbf-att-center-page{max-width:1320px;margin:0 auto;padding:18px;background:#f5f6fb;min-height:100vh}
.lbf-att-center-top{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:1px solid #e6e8f0;border-radius:16px;padding:15px 18px;margin-bottom:14px}.lbf-att-center-top a{font-size:12px;font-weight:800;color:#673de6;text-decoration:none}.lbf-att-center-top small{display:block;margin-top:5px;color:#7a8190;font-size:9px;font-weight:900;letter-spacing:.08em}.lbf-att-center-top h1{margin:2px 0 0;font-size:24px;color:#1d1e20}.lbf-att-center-top>span{font-size:12px;font-weight:800;color:#4b5563}
.lbf-att-center{display:block}.lbf-att-center-hero,.lbf-att-center-panel{background:#fff;border:1px solid #e6e8f0;border-radius:16px;padding:18px;margin:0 0 14px}.lbf-att-center-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.lbf-att-center-hero small,.lbf-att-panel-head small{color:#673de6;font-size:9px;font-weight:900;letter-spacing:.08em}.lbf-att-center-hero h2,.lbf-att-panel-head h2{margin:4px 0 6px;color:#1d1e20}.lbf-att-center-hero p,.lbf-att-panel-head p{margin:0;color:#6b7280}.lbf-att-center-hero time{white-space:nowrap;padding:8px 10px;border-radius:10px;background:#f3f1ff;color:#5132c7;font-size:12px;font-weight:850}
.lbf-att-center-windows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.lbf-att-window{display:grid;grid-template-columns:54px minmax(0,1fr);gap:14px;padding:20px;border:1px solid #e6e8f0;border-radius:18px;background:#fff;text-decoration:none;color:#1f2937;min-width:0}.lbf-att-window:hover{border-color:#cfc5fa;background:#fbfaff}.lbf-att-window-icon{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;background:#f0ecff;color:#673de6;font-size:24px;font-weight:900}.lbf-att-window small{color:#7a8190;font-size:9px;font-weight:900;letter-spacing:.08em}.lbf-att-window h3{margin:4px 0;font-size:21px;color:#1d1e20}.lbf-att-window p{margin:0;color:#6b7280;line-height:1.5}.lbf-att-window-mini{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.lbf-att-window-mini span{padding:9px 10px;border-radius:11px;background:#f7f8fb;color:#667085;font-size:10px}.lbf-att-window-mini b{display:block;font-size:17px;color:#24262b}.lbf-att-open{grid-column:1/-1;color:#673de6;font-size:12px}
.lbf-att-center-secondary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.lbf-att-center-secondary a{display:block;padding:14px;border:1px solid #e6e8f0;border-radius:14px;background:#fff;text-decoration:none;color:#1f2937}.lbf-att-center-secondary span,.lbf-att-center-secondary strong,.lbf-att-center-secondary small{display:block}.lbf-att-center-secondary span{font-size:10px;color:#7a8190;font-weight:850}.lbf-att-center-secondary strong{font-size:17px;margin:3px 0}.lbf-att-center-secondary small{color:#6b7280}.lbf-att-center-note{padding:12px 14px;border-radius:12px;background:#f1edff;color:#5132c7}
.lbf-att-center-breadcrumb{display:flex;gap:8px;align-items:center;margin:4px 0 12px;font-size:12px}.lbf-att-center-breadcrumb a{color:#673de6;text-decoration:none;font-weight:800}.lbf-att-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.lbf-att-filter,.lbf-att-inline{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.lbf-att-filter label,.lbf-att-inline label{display:grid;gap:5px;font-size:10px;font-weight:800;color:#667085}.lbf-att-filter input,.lbf-att-filter select,.lbf-att-inline input{min-height:42px;border:1px solid #dfe3ec;border-radius:10px;background:#fff;padding:8px 10px;font:inherit}
.lbf-att-group-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.lbf-att-group-tabs a{padding:9px 12px;border-radius:10px;background:#f4f5f8;color:#4b5563;text-decoration:none;font-size:11px;font-weight:850}.lbf-att-group-tabs a.active{background:#673de6;color:#fff}
.lbf-att-take-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.lbf-att-take-head h3{margin:0}.lbf-att-take-head p{margin:4px 0 0;color:#6b7280}.lbf-att-take-head>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.lbf-att-live-counts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:12px 0}.lbf-att-live-counts span{padding:9px;border-radius:10px;background:#f7f8fb}.lbf-att-live-counts small,.lbf-att-live-counts strong{display:block}.lbf-att-live-counts small{font-size:9px;color:#7a8190}.lbf-att-live-counts strong{font-size:17px;margin-top:2px}
.lbf-att-person-list{display:grid;gap:8px}.lbf-att-person{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2fr);align-items:center;gap:12px;border:1px solid #e7e9f0;border-radius:13px;padding:11px;background:#fff}.lbf-att-person>div:first-of-type strong,.lbf-att-person>div:first-of-type small{display:block}.lbf-att-person>div:first-of-type small{margin-top:3px;color:#7a8190;font-size:10px}.lbf-att-picks{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.lbf-att-picks label{position:relative}.lbf-att-picks input{position:absolute;opacity:0;pointer-events:none}.lbf-att-picks span{display:grid;place-items:center;min-height:38px;padding:5px;border:1px solid #dfe3eb;border-radius:9px;background:#fafbfc;color:#667085;font-size:9px;font-weight:850;text-align:center;cursor:pointer}.lbf-att-picks input:checked+span{border-color:#673de6;background:#f0ecff;color:#5132c7}.lbf-att-picks label.absent input:checked+span{border-color:#efb7b7;background:#fff1f1;color:#b42318}.lbf-att-picks label.leave input:checked+span{border-color:#c8bdfa;background:#f4f1ff;color:#5d3fd3}
.lbf-att-savebar{position:sticky;bottom:8px;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:12px 14px;border:1px solid #ded9f6;border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 8px 24px rgba(28,35,55,.1)}.lbf-att-savebar strong,.lbf-att-savebar small{display:block}.lbf-att-savebar small{color:#6b7280;margin-top:2px}.lbf-att-center-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.lbf-att-center-stats>div{padding:10px;border-radius:11px;background:#f7f8fb}.lbf-att-center-stats small,.lbf-att-center-stats strong{display:block}.lbf-att-center-stats small{font-size:9px;color:#7a8190}.lbf-att-center-stats strong{font-size:18px}
@media(max-width:760px){.lbf-att-center-page{padding:10px 10px 80px}.lbf-att-center-top{padding:12px}.lbf-att-center-top h1{font-size:19px}.lbf-att-center-top>span{display:none}.lbf-att-center-hero{display:block}.lbf-att-center-hero time{display:inline-block;margin-top:10px}.lbf-att-center-windows{grid-template-columns:1fr}.lbf-att-window{padding:15px}.lbf-att-center-secondary{grid-template-columns:1fr}.lbf-att-panel-head,.lbf-att-take-head{display:block}.lbf-att-take-head>div:last-child{margin-top:10px}.lbf-att-filter,.lbf-att-inline{display:grid;grid-template-columns:1fr}.lbf-att-filter label,.lbf-att-filter button,.lbf-att-inline label,.lbf-att-inline button{width:100%}.lbf-att-live-counts{grid-template-columns:repeat(3,minmax(0,1fr))}.lbf-att-person{grid-template-columns:1fr}.lbf-att-picks{grid-template-columns:repeat(2,minmax(0,1fr))}.lbf-att-picks label:first-child{grid-column:1/-1}.lbf-att-picks span{min-height:44px;font-size:10px}.lbf-att-savebar{align-items:stretch;flex-direction:column;bottom:70px}.lbf-att-savebar .lbf-btn{width:100%}.lbf-att-center-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v8.4.1 visible dashboard user guides */
.lbf-user-guide-card{display:flex;align-items:center;gap:14px;padding:14px 16px;margin:0 0 14px;border:1px solid #ddd8fb;border-radius:14px;background:#fbfaff;box-shadow:0 2px 7px rgba(17,24,39,.025)}
.lbf-user-guide-icon{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border-radius:13px;background:#ede9fe;color:#5b3bd1;font-size:12px;font-weight:900;letter-spacing:.08em}
.lbf-user-guide-copy{min-width:0;flex:1}.lbf-user-guide-copy small{display:block;color:#6d5bd0;font-size:10px;font-weight:900;letter-spacing:.12em}.lbf-user-guide-copy h3{margin:3px 0 4px;font-size:17px;color:#20212a}.lbf-user-guide-copy p{margin:0;color:#697084;font-size:12px;line-height:1.45}
.lbf-user-guide-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lbf-user-guide-actions .lbf-btn{white-space:nowrap}
@media(max-width:760px){.lbf-user-guide-card{align-items:flex-start;flex-wrap:wrap;padding:13px}.lbf-user-guide-icon{flex-basis:46px;width:46px;height:46px}.lbf-user-guide-copy{flex-basis:calc(100% - 64px)}.lbf-user-guide-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.lbf-user-guide-actions .lbf-btn{justify-content:center;text-align:center}}


/* v9.4.4 — Attendance Window Override: Automatic / 30 Min / Permanent / Closed */
.lbf-att-window-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 14px}
.lbf-att-window-control{background:#fff;border:1px solid #e3e7ef;border-radius:16px;padding:15px 16px;margin:0 0 14px;box-shadow:0 4px 16px rgba(35,34,64,.035)}
.lbf-att-window-control-grid .lbf-att-window-control{margin:0}
.lbf-att-window-control-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.lbf-att-window-control-head small{display:block;color:#6a46d9;font-size:9px;font-weight:900;letter-spacing:.08em}
.lbf-att-window-control-head h3{margin:4px 0 4px;font-size:17px;color:#202126}
.lbf-att-window-control-head p{margin:0;color:#6b7280;font-size:11px;line-height:1.45}
.lbf-att-window-state{flex:0 0 auto;min-width:104px;text-align:center;border-radius:12px;padding:8px 10px;background:#f4f5f8;color:#505968;border:1px solid #e3e6eb}
.lbf-att-window-state span,.lbf-att-window-state strong{display:block}.lbf-att-window-state span{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.lbf-att-window-state strong{font-size:17px;margin-top:2px;color:#5637d0}
.lbf-att-window-state.mode-open_30,.lbf-att-window-state.mode-open_permanent{background:#effaf4;border-color:#cfe9da;color:#176941}.lbf-att-window-state.mode-open_30 strong{color:#176941}.lbf-att-window-state.mode-closed{background:#fff4f3;border-color:#f0d3cf;color:#a23b32}.lbf-att-window-state.mode-automatic{background:#f4f2ff;border-color:#ded8fa;color:#5b3dc9}
.lbf-att-window-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.lbf-att-window-actions form{margin:0}.lbf-att-window-actions .lbf-btn{min-height:38px;padding:8px 11px;font-size:10px}
.lbf-att-window-help{display:block;margin-top:9px;color:#7a8190;font-size:10px;line-height:1.45}
@media(max-width:760px){.lbf-att-window-control-grid{grid-template-columns:1fr}.lbf-att-window-control{padding:13px}.lbf-att-window-control-head{display:grid;grid-template-columns:minmax(0,1fr) auto}.lbf-att-window-state{min-width:92px}.lbf-att-window-actions{display:grid;grid-template-columns:1fr 1fr}.lbf-att-window-actions .lbf-btn{width:100%;justify-content:center}}

/* v9.6.0 — child-simple connected Master Editor + Manage Information */
.lbf-master-editor-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#fff,#f7f8ff)}
.lbf-master-editor-hero h2{margin:5px 0}.lbf-master-editor-hero p{max-width:760px;margin:0;color:#5b6473}
.lbf-master-editor-switch{display:flex;gap:6px;padding:5px;background:#f1f3f7;border-radius:14px}.lbf-master-editor-switch a{padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:800;color:#465266}.lbf-master-editor-switch a.active{background:#fff;color:#111827;box-shadow:0 1px 5px rgba(17,24,39,.08)}
.lbf-master-editor-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.lbf-editor-step{display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center}.lbf-editor-step>b{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#ede9fe;color:#5b21b6;font-weight:900}.lbf-editor-step label{margin:0;font-weight:800}.lbf-editor-step select{width:100%;margin-top:6px}.lbf-editor-step.action{grid-template-columns:34px auto}.lbf-editor-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:30px!important;background:#fbfbfd!important}.lbf-editor-empty strong{font-size:18px}.lbf-editor-empty span{color:#6b7280}
.lbf-master-editor-table-wrap{max-height:65vh}.lbf-master-editor-table th:first-child,.lbf-master-editor-table td:first-child{position:sticky;left:0;background:#fff;z-index:2;min-width:220px}.lbf-master-editor-table thead th:first-child{z-index:4}.lbf-master-editor-table td strong,.lbf-master-editor-table td small{display:block}.lbf-master-editor-table td small{color:#6b7280;margin-top:3px}.lbf-master-editor-table input,.lbf-master-editor-table select,.lbf-master-editor-table textarea{min-width:220px;width:100%;font-size:15px;padding:10px 11px;border:1px solid #d7dce5;border-radius:9px;background:#fff}.lbf-master-editor-table input.is-missing,.lbf-master-editor-table select.is-missing,.lbf-master-editor-table textarea.is-missing{border-color:#f59e0b;background:#fffbeb}.lbf-master-editor-savebar{position:sticky;bottom:10px;z-index:10;margin-top:14px;padding:12px 14px;border:1px solid #e5e7eb;border-radius:14px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 8px 30px rgba(17,24,39,.08)}.lbf-master-editor-savebar strong,.lbf-master-editor-savebar span{display:block}.lbf-master-editor-savebar span{font-size:12px;color:#6b7280;margin-top:2px}
.lbf-editor-add-drawer{margin:14px 0;padding:15px;border:1px solid #ddd6fe;background:#faf8ff;border-radius:14px}.lbf-editor-add-drawer>form>div:first-child strong,.lbf-editor-add-drawer>form>div:first-child small{display:block}.lbf-editor-add-drawer>form>div:first-child small{color:#6b7280;margin-top:3px}.lbf-editor-add-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.lbf-editor-add-grid label{font-weight:800;font-size:13px}.lbf-editor-add-grid input,.lbf-editor-add-grid select{width:100%;margin-top:5px}
.lbf-info-manager-hero{background:linear-gradient(135deg,#fff,#f8fbff)}.lbf-info-manager-hero h2{margin:5px 0}.lbf-info-manager-hero p{max-width:820px;margin:0;color:#5f6877}.lbf-info-manager-grid{margin-top:14px}.lbf-simple-head-form label{font-weight:800}.lbf-required-big{align-self:end;padding:12px;border:1px solid #e5e7eb;border-radius:12px;background:#fafafa}.lbf-info-default-note{margin:8px 0 14px;padding:10px 12px;border-radius:10px;background:#ecfdf5;color:#065f46;font-size:12px;font-weight:800}.lbf-info-current-list>div{align-items:center}.lbf-profile-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.lbf-profile-detail-grid article{padding:13px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}.lbf-profile-detail-grid small,.lbf-profile-detail-grid strong{display:block}.lbf-profile-detail-grid small{color:#6b7280}.lbf-profile-detail-grid strong{margin-top:5px;word-break:break-word}
@media(max-width:900px){.lbf-master-editor-hero{align-items:flex-start;flex-direction:column}.lbf-master-editor-controls{grid-template-columns:1fr}.lbf-editor-step.action{grid-template-columns:34px 1fr}.lbf-editor-add-grid,.lbf-profile-detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.lbf-master-editor-switch{width:100%}.lbf-master-editor-switch a{flex:1;text-align:center}.lbf-editor-add-grid,.lbf-profile-detail-grid{grid-template-columns:1fr}.lbf-master-editor-savebar{bottom:70px;align-items:stretch;flex-direction:column}.lbf-master-editor-savebar .lbf-btn{width:100%}.lbf-master-editor-table th:first-child,.lbf-master-editor-table td:first-child{min-width:170px}.lbf-master-editor-table input,.lbf-master-editor-table select,.lbf-master-editor-table textarea{min-width:170px}}
@media print{.lbf-master-editor-hero,.lbf-master-editor-controls,.lbf-editor-add-drawer,.lbf-master-editor-savebar,.lbf-student-subnav,.lbf-row-actions,.lbf-master-editor-table td:last-child,.lbf-master-editor-table th:last-child{display:none!important}.lbf-master-editor-table-wrap{max-height:none;overflow:visible}.lbf-master-editor-table th:first-child,.lbf-master-editor-table td:first-child{position:static}}

/* v9.7.0 Master Editor: fixed name + three selectable fields + field-level access */
.lbf-master-editor-class-only{grid-template-columns:minmax(260px,1fr) auto}
.lbf-master-editor-three .lbf-column-picker{min-width:190px;width:100%;font-weight:800;border:1px solid #d7dce5;border-radius:9px;background:#fff;padding:9px 10px}
.lbf-column-empty{display:block;min-width:170px;color:#7b8494;font-size:13px;padding:10px;border:1px dashed #d7dce5;border-radius:9px;background:#fafbfc}
.lbf-readonly-value{min-width:170px;padding:10px 11px;border:1px solid #e4e7ec;border-radius:9px;background:#f7f8fa;color:#303846}
.lbf-view-only{display:block;margin-top:4px;color:#7b8494;font-size:11px;font-weight:700}
.lbf-master-editor-access[hidden]{display:none!important}
.lbf-master-field-head,.lbf-master-field-row{display:grid;grid-template-columns:minmax(180px,1fr) 72px 72px;gap:10px;align-items:center}
.lbf-master-field-head{padding:0 12px 8px;color:#667085;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.lbf-master-field-head b{text-align:center}
.lbf-master-field-grid{border:1px solid #e5e7eb;border-radius:14px;overflow:hidden}
.lbf-master-field-row{padding:11px 12px;margin:0;background:#fff;border-bottom:1px solid #eef0f3;cursor:pointer}
.lbf-master-field-row:last-child{border-bottom:0}.lbf-master-field-row:hover{background:#fafbff}.lbf-master-field-row span{font-weight:750;color:#263244}
.lbf-master-field-row input{justify-self:center;width:19px;height:19px;margin:0}
@media(max-width:600px){.lbf-master-editor-class-only{grid-template-columns:1fr}.lbf-master-field-head,.lbf-master-field-row{grid-template-columns:minmax(140px,1fr) 58px 58px}.lbf-master-editor-three .lbf-column-picker{min-width:155px}}

/* v9.9.0 — Monthly Attendance & Performance Center + Physical Register Desk */
.lbf-att-inline select,.lbf-att-explorer input,.lbf-att-explorer select,.lbf-att-physical-panel input,.lbf-att-physical-panel select{min-height:42px;border:1px solid #dfe3ec;border-radius:10px;background:#fff;padding:8px 10px;font:inherit;color:#222}
.lbf-att-performance-stats{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:0 0 14px}.lbf-att-performance-stats>div,.lbf-att-performance-stats>a{display:block;min-width:0;padding:12px;border:1px solid #e5e7ee;border-radius:12px;background:#f8f9fb;text-decoration:none;color:#1f2937}.lbf-att-performance-stats>a:hover{border-color:#cfc5fa;background:#fbfaff}.lbf-att-performance-stats small,.lbf-att-performance-stats strong,.lbf-att-performance-stats span{display:block}.lbf-att-performance-stats small{font-size:8px;font-weight:850;color:#747d8f;text-transform:uppercase;letter-spacing:.04em}.lbf-att-performance-stats strong{font-size:20px;margin-top:3px;color:#22283a}.lbf-att-performance-stats span{font-size:8px;margin-top:4px;color:#6743d8;font-weight:800}.lbf-att-performance-stats .present{background:#f1fbf5;border-color:#d9efe1}.lbf-att-performance-stats .absent{background:#fff5f5;border-color:#f2dddd}.lbf-att-performance-stats .leave{background:#f6f3ff;border-color:#e2dbfb}.lbf-att-performance-stats .unmarked{background:#fff9ec;border-color:#f2e6c3}
.lbf-att-school-performance .lbf-att-panel-head,.lbf-att-monthly .lbf-att-panel-head{align-items:end}.lbf-att-month-nav label{min-width:145px}.lbf-att-performance-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;margin:8px 0;background:#f7f8fb;border-radius:11px}.lbf-att-performance-tools strong{font-size:12px}.lbf-att-performance-tools span{font-size:10px;color:#727b8e}.lbf-att-performance-table th{white-space:nowrap}.lbf-att-performance-table td small{display:block;margin-top:2px;color:#7b8394;font-size:9px}.lbf-att-performance-table .lbf-btn{white-space:nowrap;padding:7px 9px;font-size:9px}
.lbf-att-explorer{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin:12px 0;padding:12px;border:1px solid #e6e8ef;border-radius:12px;background:#fbfcfe}.lbf-att-explorer label{display:grid;gap:5px;min-width:160px;font-size:9px;font-weight:850;color:#697386}.lbf-att-explorer button{min-height:42px}.lbf-att-drilldown{margin-top:16px;padding-top:16px;border-top:1px solid #e6e8ef}
.lbf-att-person-month{margin-top:16px;padding:15px;border:1px solid #ddd9f3;border-radius:14px;background:#fbfaff}.lbf-att-person-month .lbf-att-panel-head{margin-bottom:10px}.lbf-att-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.lbf-att-day-grid>div{min-height:65px;padding:7px;border:1px solid #e5e7eb;border-radius:9px;background:#fff}.lbf-att-day-grid small,.lbf-att-day-grid strong,.lbf-att-day-grid span{display:block}.lbf-att-day-grid small{font-size:8px;color:#8a92a2}.lbf-att-day-grid strong{font-size:15px;margin:2px 0}.lbf-att-day-grid span{font-size:8px;font-weight:800;color:#606979}.lbf-att-day-grid .status-present,.lbf-att-day-grid .status-late{background:#f1fbf5;border-color:#d4ebdc}.lbf-att-day-grid .status-absent{background:#fff2f2;border-color:#efcfcf}.lbf-att-day-grid .status-leave{background:#f5f1ff;border-color:#ded4fb}.lbf-att-day-grid .status-not-marked{background:#fff9ea;border-color:#f1dfaa}.lbf-att-day-grid .status-closed{background:#f3f4f6;color:#8a8f9a}
.lbf-att-physical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lbf-att-physical-grid form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:14px;border:1px solid #e5e7ee;border-radius:13px;background:#fbfcfe}.lbf-att-physical-grid h3{grid-column:1/-1;margin:0 0 2px;font-size:14px;color:#2b3144}.lbf-att-physical-grid label{display:grid;gap:5px;font-size:9px;font-weight:850;color:#697386}.lbf-att-physical-actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap;margin-top:3px}.lbf-att-physical-actions .lbf-btn{flex:1;justify-content:center;white-space:nowrap}
@media(max-width:1100px){.lbf-att-performance-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.lbf-att-physical-grid{grid-template-columns:1fr}}
@media(max-width:760px){.lbf-att-performance-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.lbf-att-performance-stats strong{font-size:17px}.lbf-att-explorer{display:grid;grid-template-columns:1fr}.lbf-att-explorer label,.lbf-att-explorer button{width:100%}.lbf-att-day-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.lbf-att-physical-grid form{grid-template-columns:1fr}.lbf-att-physical-grid h3,.lbf-att-physical-actions{grid-column:1}.lbf-att-physical-actions{display:grid;grid-template-columns:1fr}.lbf-att-performance-tools{align-items:flex-start;flex-direction:column}}
.lbf-att-trend-note{margin:8px 0 13px;padding:9px 11px;border-radius:10px;background:#f5f3ff;color:#5e6472;font-size:10px}.lbf-att-trend-note strong{color:#4f36bf}

/* v9.10.1 — Class Teacher Attendance Completion Board */
.lbf-att-completion-board .lbf-att-panel-head time{white-space:nowrap;padding:8px 10px;border-radius:10px;background:#f3f1ff;color:#5132c7;font-size:12px;font-weight:850}
.lbf-att-completion-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 12px}.lbf-att-completion-stats>div{padding:11px 12px;border:1px solid #e8eaf0;border-radius:12px;background:#f8f9fb}.lbf-att-completion-stats small,.lbf-att-completion-stats strong{display:block}.lbf-att-completion-stats small{font-size:9px;color:#7a8190}.lbf-att-completion-stats strong{font-size:20px;margin-top:2px;color:#23262d}.lbf-att-completion-stats .completed{background:#effaf4;border-color:#cfe9da}.lbf-att-completion-stats .completed strong{color:#176941}.lbf-att-completion-stats .partial{background:#fff8e8;border-color:#f1dfad}.lbf-att-completion-stats .partial strong{color:#8a5a00}.lbf-att-completion-stats .missed{background:#fff2f1;border-color:#f1d0cc}.lbf-att-completion-stats .missed strong{color:#a23b32}
.lbf-att-completion-filter{margin:0 0 12px}.lbf-att-completion-filter select{min-height:42px;border:1px solid #dfe3ec;border-radius:10px;background:#fff;padding:8px 10px;font:inherit}
.lbf-att-completion-table td small{display:block;margin-top:3px;color:#7a8190;font-size:9px}.lbf-att-completion-status{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;background:#f1f3f6;color:#596171;font-size:9px;font-weight:900;white-space:nowrap}.lbf-att-completion-status.status-completed{background:#e9f8ef;color:#176941}.lbf-att-completion-status.status-partial{background:#fff5d9;color:#805400}.lbf-att-completion-status.status-not_started{background:#f3f4f6;color:#4b5563}.lbf-att-completion-status.status-missed{background:#fff0ee;color:#a23b32}.lbf-att-completion-status.status-no_class,.lbf-att-completion-status.status-no_students{background:#f1edff;color:#5a3ec5}.lbf-att-completion-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.lbf-att-completion-actions form{margin:0}.lbf-att-completion-actions .lbf-btn{min-height:34px;padding:7px 9px;font-size:9px;white-space:nowrap}.lbf-att-teacher-complete{margin-bottom:14px}
@media(max-width:760px){.lbf-att-completion-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.lbf-att-completion-board .lbf-att-panel-head time{display:inline-block;margin-top:8px}.lbf-att-completion-actions{display:grid;grid-template-columns:1fr}.lbf-att-completion-actions .lbf-btn{width:100%;justify-content:center}.lbf-att-completion-filter select{width:100%}}

/* v9.10.2 — Simple Attendance Day / Month Experience */
.lbf-att-simple-controls .lbf-att-panel-head{margin-bottom:12px}
.lbf-att-view-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px}
.lbf-att-view-switch a{display:block;padding:13px 14px;border:1px solid #e2e5ed;border-radius:13px;background:#fafbfc;color:#242936;text-decoration:none;font-size:13px;font-weight:900}
.lbf-att-view-switch a small{display:block;margin-top:3px;color:#7a8190;font-size:9px;font-weight:700}
.lbf-att-view-switch a.active{border-color:#9a86eb;background:#f3f0ff;color:#5132c7;box-shadow:0 0 0 2px rgba(103,61,230,.06)}
.lbf-att-simple-filter{padding:12px;border:1px solid #e7e9ef;border-radius:13px;background:#fbfcfe}
.lbf-att-day-state{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}
.lbf-att-day-state.working{background:#eaf8ef;color:#176941}.lbf-att-day-state.closed{background:#f2f3f5;color:#616977}
.lbf-att-plain-message,.lbf-att-what-it-says{display:grid;gap:4px;margin:0 0 14px;padding:13px 14px;border-radius:13px;background:#f6f4ff;border:1px solid #e3dcfb}
.lbf-att-plain-message strong,.lbf-att-what-it-says strong{font-size:13px;line-height:1.5;color:#2d2c37}.lbf-att-plain-message span,.lbf-att-what-it-says span{font-size:10px;color:#717887}
.lbf-att-what-it-says small{font-size:8px;font-weight:900;letter-spacing:.08em;color:#6743d8}
.lbf-att-simple-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 16px}
.lbf-att-simple-stats a{display:grid;gap:2px;padding:12px 10px;border:1px solid #e6e8ee;border-radius:12px;background:#fafbfc;text-decoration:none;color:#28303d;text-align:center}
.lbf-att-simple-stats strong{font-size:22px}.lbf-att-simple-stats span{font-size:9px;font-weight:850;color:#6a7280}
.lbf-att-simple-stats .status-present{background:#eefaf3;border-color:#d1eadb}.lbf-att-simple-stats .status-absent{background:#fff2f2;border-color:#f0d4d4}.lbf-att-simple-stats .status-leave{background:#f5f2ff;border-color:#ded7f7}.lbf-att-simple-stats .status-not-marked{background:#fff8e7;border-color:#efdfb3}
.lbf-att-day-list-head,.lbf-att-month-days-head,.lbf-att-student-month-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:14px 0 9px}
.lbf-att-day-list-head h3,.lbf-att-month-days-head h3,.lbf-att-student-month-head h3{margin:0;color:#242936;font-size:16px}.lbf-att-day-list-head p,.lbf-att-month-days-head p,.lbf-att-student-month-head p{margin:3px 0 0;color:#7a8190;font-size:10px}
.lbf-att-day-student-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.lbf-att-day-student-list article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid #e7e9ef;border-radius:12px;background:#fff}
.lbf-att-day-student-list article strong,.lbf-att-day-student-list article small{display:block}.lbf-att-day-student-list article small{margin-top:2px;color:#818898;font-size:9px}
.lbf-att-status-badge{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:78px;min-height:31px;padding:6px 8px;border-radius:999px;background:#f1f3f6;color:#596171;font-size:9px;font-weight:900}
.lbf-att-status-badge.status-present{background:#e9f8ef;color:#176941}.lbf-att-status-badge.status-absent{background:#fff0ee;color:#a23b32}.lbf-att-status-badge.status-leave{background:#f1edff;color:#5a3ec5}.lbf-att-status-badge.status-not-marked{background:#fff4d8;color:#805400}.lbf-att-status-badge.status-half-day,.lbf-att-status-badge.status-late{background:#eef6ff;color:#315f91}
.lbf-att-month-key-numbers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 16px}.lbf-att-month-key-numbers>div{padding:13px;border:1px solid #e7e9ef;border-radius:12px;background:#fafbfc}.lbf-att-month-key-numbers strong,.lbf-att-month-key-numbers span,.lbf-att-month-key-numbers small{display:block}.lbf-att-month-key-numbers strong{font-size:21px;color:#242936}.lbf-att-month-key-numbers span{margin-top:2px;font-size:10px;font-weight:900}.lbf-att-month-key-numbers small{margin-top:3px;color:#808797;font-size:8px}.lbf-att-month-key-numbers .needs-attention{background:#fff7e6;border-color:#efdfb3}.lbf-att-month-key-numbers .good{background:#eefaf3;border-color:#d1eadb}
.lbf-att-month-day-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.lbf-att-month-day-cards>a{display:grid;grid-template-columns:48px minmax(0,1fr) 14px;align-items:center;gap:10px;padding:11px;border:1px solid #e6e8ef;border-radius:12px;background:#fff;color:#242936;text-decoration:none}.lbf-att-month-day-cards .date{display:grid;place-items:center;min-height:52px;border-radius:10px;background:#f5f6f9}.lbf-att-month-day-cards .date small,.lbf-att-month-day-cards .date strong{display:block}.lbf-att-month-day-cards .date small{font-size:8px;color:#7a8190}.lbf-att-month-day-cards .date strong{font-size:18px}.lbf-att-month-day-cards .story strong,.lbf-att-month-day-cards .story span,.lbf-att-month-day-cards .story small{display:block}.lbf-att-month-day-cards .story strong{font-size:11px}.lbf-att-month-day-cards .story span{margin-top:2px;color:#626b7a;font-size:9px}.lbf-att-month-day-cards .story small{margin-top:3px;color:#868d9b;font-size:8px}.lbf-att-month-day-cards>a>b{font-size:18px;color:#9aa1ae}.lbf-att-month-day-cards .state-complete{border-color:#d3e9db;background:#fbfffc}.lbf-att-month-day-cards .state-partial{border-color:#f0dfae;background:#fffdf8}.lbf-att-month-day-cards .state-not-started{border-color:#e6d5d1;background:#fffafa}
.lbf-att-simple-search{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.lbf-att-simple-search input,.lbf-att-simple-search select{min-height:38px;border:1px solid #dfe3ec;border-radius:9px;background:#fff;padding:7px 9px;font:inherit;color:#222}.lbf-att-simple-search .lbf-btn{min-height:38px}
.lbf-att-student-month-cards{display:grid;gap:8px}.lbf-att-student-month-cards article{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,2fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid #e6e8ef;border-radius:12px;background:#fff}.lbf-att-student-month-cards .student strong,.lbf-att-student-month-cards .student small,.lbf-att-student-month-cards .student-story strong,.lbf-att-student-month-cards .student-story span,.lbf-att-student-month-cards .student-story small{display:block}.lbf-att-student-month-cards .student small{margin-top:3px;color:#838a98;font-size:9px}.lbf-att-student-month-cards .student-story strong{font-size:11px;color:#313745}.lbf-att-student-month-cards .student-story span{margin-top:3px;color:#5f6877;font-size:10px;font-weight:850}.lbf-att-student-month-cards .student-story small{margin-top:3px;color:#858c9a;font-size:9px}.lbf-att-empty{grid-column:1/-1;padding:14px;border:1px dashed #dfe2e9;border-radius:11px;background:#fafbfc;color:#747c8b;text-align:center}
.lbf-att-simple-student-detail{background:#fcfbff}.lbf-att-detail-line{padding:9px 10px;margin:7px 0;border-radius:9px;background:#f7f8fa;color:#5d6573;font-size:10px}.lbf-att-detail-line.absent{background:#fff2f2;color:#873e3a}.lbf-att-detail-line.leave{background:#f4f1ff;color:#5b45a8}.lbf-att-detail-line.missing{background:#fff7e6;color:#775a16}
.lbf-att-mark-panel{margin-top:14px}.lbf-att-mark-panel .lbf-att-take-head small{display:block;margin-bottom:3px;color:#6743d8;font-size:8px;font-weight:900;letter-spacing:.08em}
@media(max-width:980px){.lbf-att-simple-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.lbf-att-month-day-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.lbf-att-student-month-cards article{grid-template-columns:minmax(130px,.8fr) minmax(0,2fr)}.lbf-att-student-month-cards article>.lbf-btn{grid-column:1/-1;justify-self:start}}
@media(max-width:760px){.lbf-att-view-switch{grid-template-columns:1fr 1fr}.lbf-att-view-switch a{padding:11px 10px;font-size:11px}.lbf-att-view-switch a small{font-size:8px}.lbf-att-simple-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.lbf-att-simple-stats strong{font-size:20px}.lbf-att-day-student-list{grid-template-columns:1fr}.lbf-att-day-list-head,.lbf-att-month-days-head,.lbf-att-student-month-head{align-items:stretch;flex-direction:column}.lbf-att-month-key-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}.lbf-att-month-day-cards{grid-template-columns:1fr}.lbf-att-simple-search{display:grid;grid-template-columns:1fr}.lbf-att-simple-search input,.lbf-att-simple-search select,.lbf-att-simple-search .lbf-btn{width:100%}.lbf-att-student-month-cards article{grid-template-columns:1fr}.lbf-att-student-month-cards article>.lbf-btn{grid-column:1;width:100%;justify-content:center}.lbf-att-day-student-list article{padding:11px}.lbf-att-status-badge{min-width:70px}.lbf-att-day-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* Mobile-only plain-language attendance companion stays invisible on desktop. */
.lbf-clear-attendance{display:none}
