*{box-sizing:border-box}:root{--ink:#171717;--red:#b31f2b;--cream:#f5f2ed;--line:#dedbd6;--muted:#777}body{margin:0;color:var(--ink);font:15px Arial,Helvetica,sans-serif;background:#fff}.sitehead{height:100px;background:#fff;border-bottom:1px solid #e5e2de}.headinner{max-width:1180px;height:100%;margin:auto;padding:0 28px;display:flex;align-items:center;gap:40px}.sitebrand{display:grid;line-height:1}.sitebrand span{font-size:10px;letter-spacing:.3em}.sitebrand strong{font-size:20px;letter-spacing:.08em;margin-top:5px}.webnav{margin-left:auto;display:flex;align-items:center;gap:25px}.webnav a,.webnav b{color:#333;text-decoration:none;font-size:13px;font-weight:400}.webnav b{color:var(--red);border-bottom:2px solid var(--red);padding:40px 0 36px}main{max-width:1180px;margin:auto}.websitehero{height:450px;display:grid;grid-template-columns:57% 43%;background:var(--cream)}.heroimage,.loginphoto{background:linear-gradient(135deg,rgba(0,0,0,.12),rgba(0,0,0,.02)),url("https://static.wixstatic.com/media/841b57_a92acb3cd8a3479bb23041869785dd0d~mv2.jpg") center/cover no-repeat}.herotext{display:flex;flex-direction:column;justify-content:center;padding:55px}.herotext h1{font-family:Georgia,serif;font-weight:400;font-size:52px;line-height:1.03;margin:10px 0 20px}.herotext p{font-family:Georgia,serif;font-size:18px;line-height:1.55;max-width:370px}.kicker{font-size:10px;letter-spacing:.22em;font-weight:700;color:var(--red)}button{border:0;background:var(--ink);color:#fff;padding:13px 20px;min-height:44px;font:700 13px Arial;cursor:pointer}.herotext button{align-self:flex-start;margin-top:15px}.outline{background:#fff;color:var(--ink);border:1px solid #aaa}.intro{padding:75px 70px 55px;display:grid;grid-template-columns:1fr 1fr;align-items:end}.intro h2,.contentblock h2{font-family:Georgia,serif;font-weight:400;font-size:40px;margin:8px 0}.intro p{font-family:Georgia,serif;font-size:18px;line-height:1.6;color:#555}.numbers{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:#fff;margin:0 28px}.numbers div{padding:28px 30px;border-right:1px solid #444}.numbers b{display:block;font:400 35px Georgia,serif}.numbers span{font-size:11px;letter-spacing:.08em;color:#bbb}.contentblock{margin:70px 28px;padding:0}.categories{background:var(--cream);padding:48px}.blocktitle{margin-bottom:25px}.cats{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:#d8d4ce}.cat{background:#fff;color:var(--ink);border:0;padding:24px 16px;text-align:left}.cat:hover{background:var(--red);color:#fff}.cat b{display:block;font:400 28px Georgia,serif}.cat span{font-size:11px}.membertop{display:flex;align-items:center;justify-content:space-between;gap:20px}.membertop p{color:var(--muted)}.filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}input,select{width:100%;min-height:45px;padding:10px 12px;border:1px solid #ccc;background:#fff;font:14px Arial}.member{width:100%;background:#fff;color:var(--ink);border:0;border-bottom:1px solid var(--line);text-align:left;display:grid;grid-template-columns:1.5fr .7fr .7fr auto;align-items:center;gap:12px;padding:18px 4px}.member:hover{background:#faf8f5}.name{font:400 18px Georgia,serif}.muted{display:block;color:#888;font-size:12px;margin-top:4px}.pill,.badge{border:1px solid #ccc;padding:5px 8px;font-size:10px;text-transform:uppercase}.inactive{opacity:.55}.profilehead{display:flex;align-items:center;gap:22px;padding:35px 0;border-bottom:1px solid var(--line)}.avatar{width:85px;height:85px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font:400 27px Georgia,serif}.badges{display:flex;gap:7px;margin:10px 0}.profilegrid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:25px}.info{padding:25px;border:1px solid var(--line)}.info h3,form h3{font:400 22px Georgia,serif}.info dl{display:grid;grid-template-columns:130px 1fr;gap:10px}.info dt{font-size:12px;color:#888}.info dd{margin:0;font-weight:600}.soft{background:var(--cream)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.span2{grid-column:1/-1}label{display:grid;gap:6px;font-size:12px;font-weight:700}form h3{border-bottom:1px solid var(--line);padding-bottom:10px;margin-top:30px}.statusbox{background:var(--cream);padding:15px;margin-top:20px}.check{display:flex;gap:10px}.check input{width:20px;min-height:20px}.check span{display:grid}.check small{font-weight:400;color:#777}.actions{display:flex;gap:10px;margin-top:18px}.login{max-width:950px;margin:70px auto;display:grid;grid-template-columns:1fr 1fr;min-height:480px;background:var(--cream)}.loginbox{padding:65px 55px}.loginbox h1{font:400 44px Georgia,serif;margin:10px 0}.loginbox form{display:grid;gap:14px;margin-top:30px}footer{max-width:1180px;margin:90px auto 0;background:var(--ink);color:#fff;padding:45px 35px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.05em}@media(max-width:850px){.webnav{display:none}.websitehero{height:auto;grid-template-columns:1fr}.heroimage{height:300px}.herotext{padding:40px}.herotext h1{font-size:40px}.intro{padding:45px 28px;grid-template-columns:1fr}.numbers{grid-template-columns:1fr 1fr}.cats{grid-template-columns:repeat(3,1fr)}.filters,.grid,.profilegrid{grid-template-columns:1fr}.span2{grid-column:auto}.member{grid-template-columns:1fr auto}.member .optional{display:none}.login{margin:30px 15px;grid-template-columns:1fr}.loginphoto{height:220px}.loginbox{padding:35px}footer{margin-top:50px;display:grid;gap:12px}}

[hidden]{display:none!important}
.gradeMark{width:9px;height:38px;display:block;flex:0 0 9px}


.gradeText{flex:1}.deleteGrade{margin-left:auto;min-height:34px;padding:7px 11px;font-size:11px}.deleteGrade:hover{border-color:#b31f2b;color:#b31f2b}.deleteGrade:disabled{opacity:.5;cursor:wait}



.modulelinks{display:flex;gap:10px;margin-top:20px}.trainingEditor{margin:25px 0;padding:25px;background:var(--cream);border:1px solid var(--line)}.traininggrid{grid-template-columns:repeat(4,1fr)}.trainingList{margin-top:22px;border-top:1px solid var(--line)}.trainingRow{display:grid;grid-template-columns:1fr 1fr auto;gap:22px;align-items:center;padding:18px 4px;border-bottom:1px solid var(--line)}.trainingDate b{display:block;font:400 18px Georgia,serif}.trainingDate span{display:block;color:#888;font-size:12px;margin-top:4px}.trainingButtons{display:flex;gap:8px}.emptyTraining{padding:28px 0;color:#777}.traininghead{margin-top:18px}.trainingIcon{width:85px;height:85px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:400 23px Georgia,serif}.attendanceActions{display:flex;gap:8px}.attendanceTools{display:flex;align-items:center;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}.attendanceTools input{max-width:420px}.attendanceTools span{margin-left:auto;font-weight:700}.attendanceList{border-top:1px solid var(--line)}.attendanceMember{display:flex;align-items:center;gap:14px;padding:15px 4px;border-bottom:1px solid var(--line);cursor:pointer}.attendanceMember:hover{background:#faf8f5}.attendanceMember input{width:22px;min-height:22px}.attendanceName{display:grid;gap:3px}.attendanceName b{font:400 17px Georgia,serif}.attendanceName small{color:#888;font-weight:400}
@media(max-width:850px){.traininggrid{grid-template-columns:1fr}.trainingRow{grid-template-columns:1fr}.trainingButtons{justify-content:flex-start}.modulelinks{flex-wrap:wrap}.attendanceTools{align-items:stretch;flex-direction:column}.attendanceTools input{max-width:none}.attendanceTools span{margin-left:0}}


.attendanceQuickActions{display:flex;align-items:center;gap:16px;justify-content:space-between;margin:18px 0}
.primaryAction{min-height:54px;padding:0 24px;font-size:1rem;font-weight:700}
.attendanceStatus{display:flex;align-items:baseline;gap:8px;padding:10px 16px;border:1px solid #ddd;background:#fff}
.attendanceStatus strong{font-size:1.65rem}
.scanPlaceholder{margin:12px 0 18px;padding:18px;border:1px dashed #aaa;background:#faf9f6}
.scanPlaceholder strong,.scanPlaceholder span{display:block}
.scanPlaceholder span{margin-top:5px;color:#666}


.attendanceBadge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:8px 0 12px;
  padding:6px 10px;
  border:1px solid #d8d2ca;
  background:#f5f2ed;
  font-weight:700;
  font-size:.92rem;
}

/* V12.168 — schermvullend zonder horizontale paginaschuifbalk. */
html,body,#app,.dashShell,.dashWorkspace{max-width:100%;overflow-x:hidden!important}
body.dashboardMode .dashWorkspace{min-width:0!important;box-sizing:border-box!important}
body.dashboardMode .dashTop{min-width:0!important;box-sizing:border-box!important}
body.dashboardMode .dashTop>*{min-width:0!important;max-width:100%}
body.dashboardMode .dashWorkspace img,body.dashboardMode .dashWorkspace video,body.dashboardMode .dashWorkspace canvas{max-width:100%;height:auto}
body.dashboardMode .dashWorkspace input,body.dashboardMode .dashWorkspace select,body.dashboardMode .dashWorkspace textarea{min-width:0;max-width:100%;box-sizing:border-box}
body.dashboardMode .dashWorkspace .actions,body.dashboardMode .dashWorkspace .trainingButtons,body.dashboardMode .dashWorkspace .competitionButtons,body.dashboardMode .dashWorkspace .boardMeetingActions,body.dashboardMode .dashWorkspace .newsControls{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}
body.dashboardMode .dashWorkspace .profilegrid,body.dashboardMode .dashWorkspace .userAdminGrid,body.dashboardMode .dashWorkspace .permissionGrid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important}
body.dashboardMode .dashWorkspace table{width:100%!important;max-width:100%!important;table-layout:fixed;border-collapse:collapse}
body.dashboardMode .dashWorkspace th,body.dashboardMode .dashWorkspace td{min-width:0!important;overflow-wrap:anywhere;word-break:normal;white-space:normal}
@media screen and (min-width:1251px){
 body.dashboardMode .dashShell>.dashWorkspace{margin-left:238px!important;width:calc(100vw - 238px)!important;max-width:calc(100vw - 238px)!important;min-width:0!important;overflow-x:hidden!important}
 body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){width:min(1500px,calc(100% - 48px))!important;max-width:calc(100% - 48px)!important}
 body.dashboardMode .snsLicenseTableWrap,body.dashboardMode .licenseTableWrap,body.dashboardMode .tableWrap,body.dashboardMode [class*="TableWrap"]{overflow-x:hidden!important}
}
@media screen and (max-width:1250px){body.dashboardMode .dashShell>.dashWorkspace{margin-left:0!important;width:100%!important;max-width:100%!important;min-width:0!important}body.dashboardMode .dashTop{width:100%!important}}
@media screen and (max-width:850px){
 body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){width:calc(100% - 24px)!important;margin:12px auto 24px!important;padding:20px!important}
 body.dashboardMode .dashWorkspace .trainingRow,body.dashboardMode .dashWorkspace .competitionRow,body.dashboardMode .dashWorkspace .boardMeetingCard{grid-template-columns:1fr!important}
 body.dashboardMode .dashWorkspace .snsLicenseTableWrap,body.dashboardMode .dashWorkspace .licenseTableWrap,body.dashboardMode .dashWorkspace .tableWrap,body.dashboardMode .dashWorkspace [class*="TableWrap"]{overflow-x:auto!important}
 body.dashboardMode .dashWorkspace table{min-width:680px;table-layout:auto}
}
@media screen and (max-width:650px){body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){width:calc(100% - 12px)!important;margin:6px auto 18px!important;padding:14px!important}body.dashboardMode .dashWorkspace .actions>button,body.dashboardMode .dashWorkspace .actions>a{max-width:100%;white-space:normal}}

/* V12.168 — structurele breedtecorrectie voor alle platformpagina's. */
body.dashboardMode .dashShell{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important}
body.dashboardMode .dashShell>.dashWorkspace{min-width:0!important;box-sizing:border-box!important;overflow-x:hidden!important}
body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),
body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  margin:24px!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
}
body.dashboardMode .dashWorkspace>.contentblock:not([hidden]) *,
body.dashboardMode .dashWorkspace>.dashHome:not([hidden]) *{min-width:0;box-sizing:border-box}
body.dashboardMode #usersPanel,
body.dashboardMode #usersPanel .snsRightsAccounts,
body.dashboardMode #usersPanel .accessCard,
body.dashboardMode #usersPanel form,
body.dashboardMode #platformUsersList{width:auto!important;max-width:100%!important;min-width:0!important}
body.dashboardMode #usersPanel .snsRightsAccounts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
body.dashboardMode #usersPanel .platformUserRow{width:100%!important;max-width:100%!important;overflow:hidden!important}
body.dashboardMode #usersPanel .platformUserRow>span,
body.dashboardMode #usersPanel .platformUserRow em{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;white-space:normal!important}
body.dashboardMode .dashTop .dashAccount{min-width:0!important;max-width:min(52%,520px)!important;flex:0 1 auto!important}
body.dashboardMode .dashTop .profileIdentity{min-width:0!important;max-width:100%!important}
body.dashboardMode .dashTop .topProfileText{min-width:0!important;max-width:300px!important}
body.dashboardMode .dashTop .topProfileText>b,
body.dashboardMode .dashTop .topProfileText>span,
body.dashboardMode .dashTop .topProfileText>small{display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
@media screen and (min-width:1251px){
 body.dashboardMode .dashShell{display:block!important}
 body.dashboardMode .dashShell>aside.dashSidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:238px!important;max-width:238px!important}
 body.dashboardMode .dashShell>.dashWorkspace{margin:0 0 0 238px!important;width:calc(100% - 238px)!important;max-width:calc(100% - 238px)!important}
 body.dashboardMode .dashWorkspace>header.dashTop{left:0!important;right:auto!important;width:100%!important;max-width:100%!important}
}
@media screen and (max-width:1380px){
 body.dashboardMode #usersPanel .snsRightsAccounts{grid-template-columns:1fr!important}
 body.dashboardMode .dashTop .topProfileText{max-width:220px!important}
}
@media screen and (max-width:1250px){
 body.dashboardMode .dashShell>.dashWorkspace{margin-left:0!important;width:100%!important;max-width:100%!important}
 body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){margin:16px!important}
}
@media screen and (max-width:760px){
 body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){margin:8px!important;padding:14px!important}
 body.dashboardMode .dashTop .dashAccount{max-width:100%!important;margin-left:auto!important}
 body.dashboardMode .dashTop .topProfileText{display:none!important}
 body.dashboardMode #usersPanel .snsRightsAccounts{grid-template-columns:1fr!important}
}


.loginBrand{text-align:center;margin:0 auto 22px}
.loginClubLogo{display:block;width:min(230px,70%);height:auto;margin:0 auto 12px}
.loginBrand h1{margin:0 0 6px;font-family:Georgia,serif;font-size:2rem}
.loginBrand p{margin:0;color:#666}


body{
  background:
    linear-gradient(rgba(247,245,241,.90),rgba(247,245,241,.90)),
    #fff;
}
#loginView{
  background:
    linear-gradient(rgba(20,28,35,.20),rgba(20,28,35,.20)),
    #fff;
}
#appView main,
.panel,
.card,
.memberCard,
.trainingCard,
#trainingEditor,
#attendancePanel,
#profilePanel,
#editorPanel{
  backdrop-filter:blur(3px);
}


.hero img,.hero-media,.site-photo,.feature-photo{display:none!important}

body{
  background:
    linear-gradient(rgba(245,247,249,.72),rgba(245,247,249,.72)),
    #fff;
}
#loginView{
  min-height:100vh;
  background:
    linear-gradient(rgba(8,24,45,.08),rgba(8,24,45,.08)),
    #fff;
}
#loginView .login-card,
#loginView .loginCard,
#loginView .auth-card,
#loginView form{
  background:rgba(255,255,255,.90);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.loginClubLogo{width:min(260px,72%);margin-bottom:8px}
#appView .panel,#appView .card,#appView .memberCard,#appView .trainingCard,
#trainingEditor,#attendancePanel,#profilePanel,#editorPanel{
  background:rgba(255,255,255,.92);
}


#login.loginScreen{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;padding:28px 18px;box-sizing:border-box;background:#fff!important}
#login.loginScreen[hidden]{display:none!important}
.loginGlassCard{width:min(570px,calc(100vw - 36px));box-sizing:border-box;padding:38px 48px 42px;border:1px solid rgba(255,255,255,.75);border-radius:18px;background:rgba(255,255,255,.90);box-shadow:0 22px 70px rgba(8,25,48,.22);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.loginGlassCard .loginClubLogo{display:block;width:min(290px,72%);height:auto;margin:0 auto 14px}
.loginWelcome{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.loginWelcome span{height:1px;background:#142343}.loginWelcome h1{margin:0;font:400 clamp(2rem,4vw,2.6rem)/1.1 Georgia,serif;color:#142343}
.loginSubtitle{text-align:center;margin:10px 0 28px;color:#687087;font-size:1rem}
.modernLoginForm{background:transparent!important;padding:0!important;margin:0!important;box-shadow:none!important;border:0!important}
.inputShell{height:58px;display:flex;align-items:center;border:1px solid #cbd2de;border-radius:9px;background:rgba(255,255,255,.82);overflow:hidden;margin-bottom:16px}.fieldIcon{width:58px;text-align:center;color:#142343}.inputShell input{height:100%;flex:1;min-width:0;border:0!important;outline:0!important;background:transparent!important;padding:0 16px 0 0!important;font-size:1rem;box-shadow:none!important}
.loginPrimary{width:100%;height:58px;border:0;border-radius:9px;background:#087dd1;color:#fff;font-size:1.05rem;font-weight:700;cursor:pointer}.loginPrimary span{font-size:1.45rem;margin-left:8px}.loginMessage{text-align:center;margin:12px 0 0}
@media(max-width:600px){#login.loginScreen{padding:18px 14px}.loginGlassCard{padding:28px 22px 30px;border-radius:15px}.loginGlassCard .loginClubLogo{width:min(235px,78%)}.loginWelcome{gap:14px}.inputShell,.loginPrimary{height:54px}}


#login.loginScreen{
  min-height:100svh!important;
  height:100svh;
  padding:clamp(12px,3vh,34px) clamp(12px,3vw,42px);
  overflow:auto;
}
.loginGlassCard{
  width:clamp(340px,42vw,650px);
  max-width:calc(100vw - 28px);
  padding:
    clamp(24px,4vh,46px)
    clamp(22px,4vw,58px)
    clamp(26px,4.5vh,50px);
  border-radius:clamp(14px,1.4vw,22px);
}
.loginGlassCard .loginClubLogo{
  width:clamp(190px,18vw,300px);
  max-height:clamp(150px,25vh,250px);
  object-fit:contain;
}
.loginWelcome h1{font-size:clamp(1.8rem,2.5vw,2.7rem)}
.loginSubtitle{font-size:clamp(.92rem,1.1vw,1.05rem);margin-bottom:clamp(18px,3vh,30px)}
.inputShell,.loginPrimary{height:clamp(52px,6.5vh,62px)}
.inputShell input,.loginPrimary{font-size:clamp(.96rem,1.05vw,1.08rem)}

@media (min-width:1400px){
  .loginGlassCard{width:min(620px,40vw)}
}
@media (max-width:900px){
  .loginGlassCard{width:min(560px,88vw)}
}
@media (max-width:600px){
  #login.loginScreen{align-items:center;padding:12px}
  .loginGlassCard{width:100%;max-width:430px;padding:24px 20px 28px}
  .loginGlassCard .loginClubLogo{width:min(220px,68vw)}
  .loginWelcome{gap:12px}
}
@media (max-height:650px) and (min-width:601px){
  #login.loginScreen{align-items:flex-start}
  .loginGlassCard{margin:auto;padding-top:20px;padding-bottom:22px}
  .loginGlassCard .loginClubLogo{max-height:130px;width:190px}
  .loginSubtitle{margin-bottom:14px}
  .inputShell{height:48px;margin-bottom:10px}
  .loginPrimary{height:50px}
}


#app.dashboardApp{max-width:none!important;width:100%;min-height:100vh;background:#f4f7fb!important}
#app.dashboardApp::before,#app.dashboardApp::after{display:none!important;background-image:none!important}
body:has(#app:not([hidden])){background:#f4f7fb!important;background-image:none!important}
body:has(#app:not([hidden]))>.sitehead{display:none!important}
body:has(#app:not([hidden]))>main{max-width:none!important;margin:0!important}
body:has(#app:not([hidden])) footer{display:none!important}
.dashShell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr);background:#f4f7fb}
.dashSidebar{position:sticky;top:0;height:100vh;background:#0c2947;color:#fff;padding:24px 16px;display:flex;flex-direction:column}
.dashBrand{display:flex;align-items:center;gap:12px;padding:0 6px 24px;border-bottom:1px solid rgba(255,255,255,.13)}
.dashBrand img{width:58px;height:58px;object-fit:contain;background:#fff;border-radius:50%;padding:4px}
.dashBrand strong{font-size:18px;line-height:1.15}.dashBrand small{display:block;margin-top:5px;color:#b8c8da}
.dashNav{display:grid;gap:8px;margin-top:24px}.dashNav button{display:flex;align-items:center;gap:14px;width:100%;text-align:left;border-radius:9px;background:transparent;color:#fff;font-size:14px;font-weight:600;padding:14px 16px}.dashNav button.active,.dashNav button:hover{background:#1764c0}
.dashNav .navIcon{display:block;width:24px;height:24px;min-width:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:#fff}
.navMore{width:100%}.navMore summary{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;border-radius:9px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;list-style:none}.navMore summary::-webkit-details-marker{display:none}.navMore summary:hover,.navMore[open] summary{background:#123c68}.navMoreItems{display:grid;gap:6px;margin:6px 0 0 14px;padding-left:10px;border-left:1px solid rgba(255,255,255,.22)}.navMoreItems button{padding-top:11px!important;padding-bottom:11px!important}
.navMemberIcon{width:21px;height:21px;flex:0 0 21px;fill:currentColor;overflow:visible}.navMemberIcon .iconLine{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.dashAsideFoot{margin-top:auto;text-align:center;color:#d8e2ec;font-size:12px;line-height:1.6;padding:20px 0}
.dashWorkspace{min-width:0;background:#f4f7fb}
.dashTop{height:78px;background:#fff;border-bottom:1px solid #dfe6ee;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4vw,54px)}
.dashTopBrand{font-weight:700;color:#63738a;text-transform:uppercase;letter-spacing:.12em;font-size:11px}
.dashAccount{display:flex;align-items:center;gap:12px}.activeRole{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:19px;background:#edf4ff;color:#1764c0;font-size:13px;font-weight:700}
.dashLogout{background:#fff;color:#102b4c;border:1px solid #b9c6d5;border-radius:8px;padding:10px 16px}
.appSponsorBar{display:flex;align-items:center;justify-content:center;min-height:38px;padding:7px 18px;border-bottom:1px solid #dce6f0;background:#edf4ff;color:#526a84;font-size:12px;letter-spacing:.02em}.appSponsorBar strong{margin-left:4px;color:#1764c0;font-size:13px}
.dashHome{padding:36px clamp(22px,4vw,54px) 50px;max-width:1500px}
.dashHome[hidden]{display:none!important}.dashHeading h1{margin:0;color:#102b4c;font-size:36px}.dashHeading p{margin:7px 0 24px;color:#66778e;font-size:16px}
.dashStats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.dashStats[hidden]{display:none!important}
.dashStats article{background:#fff;border:1px solid #dfe6ee;border-radius:12px;min-height:122px;padding:22px;display:flex;align-items:center;gap:18px;box-shadow:0 4px 16px rgba(15,42,72,.035)}
.dashStats i{width:54px;height:54px;border-radius:11px;background:#edf4ff;color:#1764c0;display:grid;place-items:center;font-style:normal;font-size:25px}
.dashStats b{display:block;font-size:31px;color:#102b4c}.dashStats span{display:block;color:#60728a;margin-top:4px}
.dashboardCalendar{margin-top:20px}.calendarHead{display:flex;align-items:center;justify-content:space-between;gap:20px}.calendarHead h3{margin-bottom:5px}.calendarHead p{margin:0;color:#66778e}.calendarNav{display:flex;align-items:center;gap:12px}.calendarNav strong{min-width:150px;text-align:center;text-transform:capitalize;color:#102b4c}.calendarNav button{min-width:38px;padding:8px 12px}.calendarLegend{display:flex;gap:18px;margin:18px 0 12px;color:#65768b;font-size:12px}.calendarLegend span{display:flex;align-items:center;gap:7px}.calendarLegend i{width:9px;height:9px;border-radius:50%}.trainingDot{background:#2474d2}.competitionDot{background:#d08a14}.calendarWeek,.calendarGrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendarWeek span{text-align:center;padding:8px;color:#718096;font-size:12px;font-weight:700}.calendarGrid{border-top:1px solid #dfe6ee;border-left:1px solid #dfe6ee}.calendarDay{min-height:105px;padding:8px;border-right:1px solid #dfe6ee;border-bottom:1px solid #dfe6ee;background:#fff;overflow:hidden}.calendarDay.outside{background:#f8fafc}.calendarDay>b{display:block;margin-bottom:6px;color:#42546a;font-size:13px}.calendarDay.today>b{display:grid;place-items:center;width:25px;height:25px;margin-top:-2px;border-radius:50%;background:#1764c0;color:#fff}.calendarEvent{display:block;width:100%;min-height:0;margin:4px 0;padding:5px 6px;border:0;border-radius:5px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:700}.calendarEvent.training{background:#e7f1ff;color:#195da9}.calendarEvent.competition{background:#fff1d5;color:#8a5a00}
.calendarHeaderTools{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.calendarSubscribe{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.calendarSubscribe button{min-height:36px;padding:7px 11px;font-size:12px}.calendarSubscribeMsg{margin:10px 0 0;color:#63768b;font-size:12px}.calendarSubscribeMsg:before{content:"↻ ";color:#2474d2;font-weight:800}@media(max-width:900px){.calendarHead{align-items:flex-start;flex-direction:column}.calendarHeaderTools{width:100%;align-items:stretch}.calendarSubscribe{justify-content:flex-start}.calendarSubscribe button{flex:1 1 145px}.calendarNav{justify-content:space-between}.calendarNav strong{min-width:0;flex:1}}
.dashGrid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:20px}.dashPanel{background:#fff;border:1px solid #dfe6ee;border-radius:12px;padding:24px}.dashPanel h3{margin:0 0 18px;color:#102b4c;font-size:18px}
.quickGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quickGrid button{min-height:94px;border-radius:10px;background:#edf5ff;color:#103a70;text-align:left;font-size:14px;display:flex;align-items:center;gap:12px}.quickGrid button:nth-child(2){background:#edf9f1;color:#176a3a}.quickGrid button:nth-child(3){background:#f4efff;color:#5533b8}.quickGrid button:nth-child(4){background:#fff6df;color:#815d00}
.clubPanel p{color:#64758a;line-height:1.6}.clubTags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.clubTags span{background:#edf4ff;color:#1764c0;border-radius:18px;padding:8px 16px;font-size:12px}
.newsHead p{margin:-10px 0 18px}.newsForm{display:grid;gap:10px;margin-bottom:20px;padding:16px;border-radius:10px;background:#f5f8fc}.newsForm textarea{width:100%;min-height:90px;padding:10px 12px;border:1px solid #cbd2de;resize:vertical;font:14px Arial}.newsForm>small{color:#718096}.newsForm button{justify-self:start}.newsForm p{margin:0}.newsList{border-top:1px solid #e1e7ee}.newsItem{padding:16px 2px;border-bottom:1px solid #e1e7ee}.newsImage{display:block;width:100%;height:auto;max-height:440px;object-fit:contain;object-position:center;border-radius:9px;margin-bottom:13px;background:#f4f7fb}.newsMeta{display:flex;justify-content:space-between;gap:12px;color:#728197;font-size:11px}.newsItem h4{margin:8px 0 6px;color:#102b4c;font-size:16px}.newsItem p{margin:0;white-space:normal;color:#52677e}.newsItem .deleteNews{min-height:32px;margin-top:10px;padding:6px 10px;font-size:11px;color:#a62d38;border-color:#d6a2a7}
.memberQrPreview{display:grid;justify-items:center;gap:8px;margin:14px 0 18px;padding:16px;border:1px solid #dfe6ee;border-radius:10px;background:#fff}.memberQrPreview #memberQrCanvas{padding:10px;background:#fff;border-radius:8px}.memberQrPreview canvas,.memberQrPreview img{display:block;width:190px!important;height:190px!important;image-rendering:pixelated}.memberQrPreview small{color:#64748b;text-align:center}
.newsSlide{animation:newsFade .35s ease}.newsControls{display:flex;align-items:center;justify-content:center;gap:14px;padding-top:12px}.newsControls button{min-width:36px;min-height:34px;padding:5px 10px}.newsControls span{color:#65768b;font-size:12px;font-weight:700}@keyframes newsFade{from{opacity:.25;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}
.dashboardPresence{margin-top:20px}.presenceQuickGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.presenceQuickGrid button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:62px;border-radius:10px;background:#edf5ff;color:#103a70}.presenceQuickGrid i{font-style:normal;font-size:22px}.dashboardRegistrations{margin-top:20px}.dashboardPanelHead p{margin:-10px 0 18px;color:#66778e}.dashboardRegistrationsList{max-height:430px;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid #e4eaf1;scrollbar-gutter:stable}.dashboardRegistrationRow{display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:16px;padding:15px 8px 15px 4px;border-bottom:1px solid #e4eaf1}.dashboardRegistrationRow b,.dashboardRegistrationRow small{display:block}.dashboardRegistrationRow small{margin-top:4px;color:#687990}.registrationType{color:#1764c0;font-size:12px;font-weight:700;text-transform:uppercase}.registrationStatus{padding:6px 10px;border-radius:15px;background:#e9f7ee;color:#176a3a;font-size:12px;font-weight:700}
.registrationStatus.cancelled{background:#fdebed;color:#a62d38}
.registrationSource{display:inline-flex!important;width:max-content;margin-top:6px;padding:3px 8px;border-radius:12px;background:#eef3f8;color:#52657a;font-size:10px!important;font-weight:700;line-height:1.3}.registrationSource.qr{background:#e8f2ff;color:#1764c0}.registrationSource.platform{background:#f1f3f5;color:#52606d}
.registrationTime{display:block;margin-top:5px;color:#8290a2;font-size:10px}.registrationPerson{grid-template-columns:34px minmax(0,1fr) auto}.registrationPersonActions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.registrationPersonActions .removeRegistration{min-height:34px;padding:6px 10px;font-size:11px}
.moduleHeaderActions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.moduleHeaderActions .outline{white-space:nowrap}
@media(max-width:650px){.membertop{align-items:flex-start;flex-direction:column}.moduleHeaderActions{width:100%;justify-content:flex-start}.moduleHeaderActions button{flex:1 1 auto}}
@media(max-width:700px){.presenceQuickGrid{grid-template-columns:1fr 1fr}.registrationPerson{grid-template-columns:34px 1fr}.registrationPersonActions{grid-column:2;justify-content:flex-start}}
#app .contentblock{margin:32px clamp(22px,4vw,54px)!important;padding:28px!important;background:#fff!important;border:1px solid #dfe6ee;border-radius:12px;max-width:none}
#app .categories{display:none!important}
#app .numbers,#app .websitehero,#app .intro{display:none!important}
@media(max-width:650px){.dashboardRegistrationRow{grid-template-columns:1fr auto}.registrationType{grid-column:1/-1}.registrationStatus{grid-column:2;grid-row:2}}
@media(max-width:600px){.dashTop{height:auto;min-height:78px;gap:12px}.dashTopBrand{display:none}.dashAccount{width:100%;justify-content:space-between}.activeRole{font-size:12px;padding:0 10px}}
@media(max-width:700px){.calendarHead{align-items:flex-start;flex-direction:column}.calendarNav{width:100%;justify-content:space-between}.calendarNav strong{min-width:0}.calendarDay{min-height:72px;padding:5px}.calendarWeek span{font-size:10px}.calendarEvent{height:8px;padding:0;font-size:0;border-radius:4px}.calendarEvent.training{background:#2474d2}.calendarEvent.competition{background:#d08a14}}
@media(max-width:900px){.dashShell{grid-template-columns:82px minmax(0,1fr)}.dashBrand div,.dashNav span,.dashAsideFoot{display:none}.dashBrand{justify-content:center}.dashBrand img{width:48px;height:48px}.dashNav button{justify-content:center;font-size:20px;padding:14px 8px}.dashStats{grid-template-columns:1fr 1fr}.dashGrid{grid-template-columns:1fr}}
@media(max-width:600px){.dashShell{display:block}.dashSidebar{position:static;height:auto;padding:10px 12px;display:block}.dashBrand{border:0;padding:4px 0 10px}.dashBrand div{display:block}.dashNav{grid-template-columns:repeat(3,1fr);margin:0}.dashNav button{font-size:12px;gap:5px;justify-content:center}.dashNav span{display:none}.dashTop{height:64px;padding:0 16px}.dashHome{padding:24px 14px}.dashStats{grid-template-columns:1fr 1fr;gap:10px}.dashStats article{padding:14px;min-height:96px}.dashStats i{width:42px;height:42px}.dashStats b{font-size:25px}.dashStats span{font-size:12px}.quickGrid{grid-template-columns:1fr}.dashGrid{gap:12px}#app .contentblock{margin:18px 14px!important;padding:18px!important}}


body>.sitehead{display:none!important}
body>main{max-width:none!important;margin:0!important}
#login.loginScreen{
  min-height:100svh!important;
  height:auto!important;
  padding:24px!important;
  background:#fff!important;
}
.loginGlassCard{
  width:min(470px,calc(100vw - 32px))!important;
  padding:34px 38px 28px!important;
  border:1px solid rgba(255,255,255,.78)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 18px 55px rgba(7,25,47,.22)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
.loginGlassCard::before,.loginGlassCard::after{display:none!important;content:none!important}
.loginGlassCard .loginClubLogo{width:150px!important;max-height:150px!important;margin:0 auto 18px!important}
.loginWelcome{gap:16px!important}
.loginWelcome h1{font-size:2rem!important}
.loginSubtitle{margin:9px 0 22px!important}
.modernLoginForm{display:block!important;background:transparent!important;box-shadow:none!important}
.inputShell{height:54px!important;margin-bottom:13px!important;background:#fff!important}
.inputShell input,.inputShell input:-webkit-autofill,.inputShell input:-webkit-autofill:hover,.inputShell input:-webkit-autofill:focus{
  background:#fff!important;
  -webkit-box-shadow:0 0 0 1000px #fff inset!important;
  -webkit-text-fill-color:#17233a!important;
  transition:background-color 9999s ease-out 0s;
}
.loginPrimary{height:54px!important;background:#1764c0!important}
.loginSponsor{
  margin:20px 0 0;
  padding-top:16px;
  border-top:1px solid #e2e7ee;
  text-align:center;
  color:#69778a;
  font-size:13px;
  letter-spacing:.01em;
}
.loginSponsor strong{display:inline-block;color:#1764c0;font-size:15px;font-weight:800;margin-left:3px}
@media(max-width:600px){
  #login.loginScreen{padding:14px!important}
  .loginGlassCard{padding:28px 20px 24px!important}
  .loginGlassCard .loginClubLogo{width:128px!important;max-height:128px!important}
}


.platformAccessBox,.accessCard{padding:22px;border:1px solid #dfe6ee;border-radius:12px;background:#f8fafc}
.platformAccessBox #memberAccessFields{margin-top:20px;padding-top:20px;border-top:1px solid #dfe6ee}
.permissionGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}
.permissionCheck{display:flex;grid-template-columns:none;align-items:center;gap:10px;min-height:48px;padding:10px 12px;border:1px solid #d8e0e9;border-radius:9px;background:#fff;font-size:13px;cursor:pointer}
.permissionCheck input{width:20px;min-height:20px;margin:0;flex:0 0 auto}
.userAdminGrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:20px;align-items:start}
.accessCard h3{margin-top:0}.accessHint{color:#68788c;font-size:12px;line-height:1.5}
.authActions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px;padding-top:16px;border-top:1px solid #dfe6ee}.authActions button{min-height:44px;border-radius:8px}.dangerOutline{background:#fff;color:#a51f2b;border:1px solid #d8a8ad}.dangerOutline:hover{background:#fff3f4}
#accessMembers{min-height:120px}
.platformUserRow{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;background:#fff;color:#1a2f49;border:1px solid #dfe6ee;border-radius:9px;margin-bottom:9px;padding:13px 14px}
.platformUserRow span{display:grid;gap:4px}.platformUserRow small{color:#718096;font-weight:400}.platformUserRow em{font-style:normal;text-transform:capitalize;font-size:12px;color:#1764c0;background:#edf4ff;border-radius:14px;padding:6px 10px}
.platformConnections{grid-column:1/-1}.connectionRow{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #e2e7ee}.connectionRow:last-child{border-bottom:0}.connectionRow div{display:grid;gap:4px}.connectionRow small{color:#718096}.connectionRow span{text-transform:capitalize;color:#1764c0;background:#edf4ff;border-radius:14px;padding:6px 11px;font-size:12px}
.memberRegistrations{grid-column:1/-1}.registrationRow{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #e2e7ee}.registrationRow:last-child{border-bottom:0}.registrationRow>span{min-width:82px;text-align:center;color:#1764c0;background:#edf4ff;border-radius:14px;padding:6px 10px;font-size:11px}.registrationRow div{display:grid;gap:4px}.registrationRow small{color:#718096}
.competitionList{margin-top:20px;border-top:1px solid #dfe6ee}.competitionRow{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:22px;align-items:center;padding:20px 4px;border-bottom:1px solid #dfe6ee}.competitionDate{display:grid;gap:5px}.competitionDate b{font:400 17px Georgia,serif}.competitionDate span,.competitionDetails small{color:#718096;font-size:12px}.competitionDetails h3{margin:0 0 6px;color:#102b4c}.competitionDetails p{margin:0 0 5px;color:#4e6075}.competitionButtons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.registrationsDialog{width:min(680px,calc(100vw - 30px));max-height:80vh;padding:28px;border:0;border-radius:14px;box-shadow:0 24px 70px rgba(11,35,61,.28)}.registrationsDialog::backdrop{background:rgba(7,24,46,.48)}.registrationsOverview{margin-top:18px;border-top:1px solid #dfe6ee}.registrationTotal{padding:15px 2px;margin:0;color:#50647c}.registrationPerson{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 2px;border-top:1px solid #edf0f4}.registrationPerson>span{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#edf4ff;color:#1764c0;font-weight:700}.registrationPerson b,.registrationPerson small{display:block}.registrationPerson small{margin-top:3px;color:#718096}
.participatedCheck{display:flex;align-items:center;gap:8px;font-size:12px}.participatedCheck input{width:19px;min-height:19px}.participationCounters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.participationCounters>div{padding:16px;border-radius:10px;background:#f3f7fc}.participationCounters b{display:block;color:#1764c0;font-size:30px}.participationCounters span{display:block;margin-top:4px;color:#60728a;font-size:12px}
.cancelTrainingRegistration,.cancelCompetitionRegistration{border-color:#c66565!important;color:#a62d38!important;background:#fff!important}
.dashboardRegistrationsList{max-height:560px!important;overflow-y:scroll!important;overflow-x:hidden!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding-right:8px;scrollbar-gutter:stable;scrollbar-color:#9fb1c5 #edf2f7}
.qrActions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.qrActions button{min-height:38px;padding:9px 12px}.qrDialog{width:min(620px,calc(100vw - 28px));padding:28px;border:0;border-radius:14px;box-shadow:0 24px 70px rgba(11,35,61,.28)}.qrDialog::backdrop{background:rgba(7,24,46,.48)}.qrDialog>p{color:#61748a}.qrDialog video{display:block;width:100%;max-height:360px;margin:15px 0;border-radius:10px;background:#111}.qrScannerActions{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0}.qrUploadButton{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;background:#1764c0;color:#fff;cursor:pointer}.qrUploadButton input{display:none}.qrDialog>label{margin:14px 0}.qrDialog>button{margin-top:8px}
.profileTopActions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.boardMemberCheck{margin:14px 0;padding:14px;border:1px solid #dfe6ee;border-radius:10px;background:#f7faff}


#login.loginScreen{background:#fff!important;background-image:none!important}
.loginGlassCard{background:#fff!important;box-shadow:0 12px 38px rgba(15,42,72,.10)!important}
.participationPeriod{margin-top:18px;padding-top:16px;border-top:1px solid #e0e6ed}.participationPeriod h4{margin:0 0 12px;color:#102b4c}.periodInputs{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.periodInputs button{min-height:42px}.periodSummary{margin:16px 0 8px;padding:10px 12px;border-radius:8px;background:#edf4ff;color:#35516f}.periodRow{display:grid;grid-template-columns:85px 1fr;gap:10px;padding:10px 2px;border-top:1px solid #edf0f4}.periodRow>span{color:#1764c0;font-size:11px;font-weight:700;text-transform:uppercase}.periodRow b,.periodRow small{display:block}.periodRow small{margin-top:3px;color:#718096}@media(max-width:650px){.periodInputs{grid-template-columns:1fr}.participationCounters{grid-template-columns:1fr}.periodRow{grid-template-columns:1fr}.periodRow>span{margin-bottom:-5px}}
.accessDenied{max-width:680px;margin:80px auto;padding:40px;background:#fff;border:1px solid #dfe6ee;border-radius:14px;text-align:center}.accessDenied h1{color:#102b4c}
@media(max-width:900px){.userAdminGrid{grid-template-columns:1fr}.competitionRow{grid-template-columns:1fr}.competitionButtons{justify-content:flex-start}}
@media(max-width:600px){.permissionGrid,.authActions{grid-template-columns:1fr}.platformAccessBox,.accessCard{padding:16px}.dashNav{grid-template-columns:repeat(3,1fr)}.registrationRow{align-items:flex-start;flex-direction:column}}


@media (min-width:601px) and (max-width:1100px){
  .dashShell{display:block}
  .dashSidebar{position:static;width:100%;height:auto;padding:12px 18px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px}
  .dashBrand{justify-content:flex-start;padding:0;border:0}.dashBrand img{width:48px;height:48px}.dashBrand div{display:block}.dashBrand strong{font-size:15px}.dashBrand small{font-size:11px}
  .dashNav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0}.dashNav button{justify-content:center;gap:7px;min-height:48px;padding:9px 8px;font-size:13px;text-align:center}.dashNav span{display:inline}
  .dashAsideFoot{display:none}
  .dashTop{height:auto;min-height:72px;padding:12px 24px}.dashTopBrand{display:block}.dashAccount{flex-wrap:wrap;justify-content:flex-end}
  .dashHome{max-width:none;padding:28px 24px 42px}.dashStats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashGrid{grid-template-columns:1fr}
  #app .contentblock{margin:24px!important;padding:24px!important}
  .calendarDay{min-height:88px}
}
@media (min-width:601px) and (max-width:1100px){.navMore{grid-column:span 1}.navMore summary{justify-content:center;min-height:48px;padding:9px 8px}.navMoreItems{position:absolute;z-index:20;width:230px;margin:6px 0 0;padding:8px;border:0;border-radius:10px;background:#0c2947;box-shadow:0 12px 28px rgba(0,0,0,.24)}}
@media (min-width:601px) and (max-width:760px){.dashSidebar{grid-template-columns:1fr}.dashBrand{justify-content:center}.dashNav{grid-template-columns:repeat(3,minmax(0,1fr))}.dashTopBrand{display:none}.dashAccount{width:100%;justify-content:space-between}}

.qrRegistrationGrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:24px;margin-top:24px}.qrRegistrationSetup,.qrRegistrationResult{padding:24px;border:1px solid #dfe6ee;border-radius:14px;background:#fff}.qrRegistrationSetup{display:grid;gap:16px}.registrationQrVideo{width:100%;max-height:420px;border-radius:12px;background:#0b1724}.manualQrRegistration{display:grid;grid-template-columns:1fr auto;gap:10px}.qrRegistrationResult{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:290px;text-align:center;background:#f5f9fe}.qrScanIcon{width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:#e4efff;color:#1764c0;font-size:34px}.qrRegistrationResult h3{margin:18px 0 8px;color:#102b4c}.qrRegistrationResult p{margin:0;color:#61748a}.qrRegistrationResult.success{border-color:#9bd3ad;background:#f1fbf4}.qrRegistrationResult.success .qrScanIcon{background:#dff4e6;color:#19713d}.qrRegistrationResult.error{border-color:#e1aaaa;background:#fff7f7}.qrRegistrationResult.error .qrScanIcon{background:#f9dddd;color:#a62d38}
@media(max-width:760px){.qrRegistrationGrid{grid-template-columns:1fr}.manualQrRegistration{grid-template-columns:1fr}.qrRegistrationSetup,.qrRegistrationResult{padding:18px}}
.boardMeetingGrid textarea{min-height:130px}.boardMeetingGrid small{display:block;margin-top:6px;color:#718096}.boardMeetingList{margin-top:24px;border-top:1px solid #dfe6ee}.boardMeetingCard{display:grid;grid-template-columns:145px minmax(0,1fr) auto;gap:22px;align-items:start;padding:22px 4px;border-bottom:1px solid #dfe6ee}.boardMeetingDate{display:grid;gap:5px}.boardMeetingDate b{font:400 17px Georgia,serif;color:#102b4c}.boardMeetingDate span,.boardMeetingContent small{color:#718096;font-size:12px}.boardMeetingContent h3{margin:0 0 6px;color:#102b4c}.boardMeetingContent p{margin:0 0 12px;color:#50647c}.boardAgenda{margin:12px 0;padding:14px;border-radius:9px;background:#f4f7fb;color:#40556e;line-height:1.55}.boardMeetingActions{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:165px}.buttonLink{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;border-radius:7px;background:#1764c0;color:#fff;font-size:13px;font-weight:700;text-decoration:none}.buttonLink:hover{background:#0f4f9c}.noMinutes{padding:10px;color:#718096;font-size:12px;text-align:center}.emptyBoardMeetings{padding:50px 20px;text-align:center;color:#61748a}.emptyBoardMeetings h3{color:#102b4c}
@media(max-width:850px){.boardMeetingCard{grid-template-columns:1fr}.boardMeetingActions{flex-direction:row;flex-wrap:wrap;min-width:0}}
.eventDot{background:#8b5cf6}.campDot{background:#16835f}.calendarEvent.event{background:#efe8ff;color:#6840b8}.calendarEvent.camp{background:#e1f5ed;color:#126247}
@media(max-width:700px){.calendarEvent.event{background:#8b5cf6}.calendarEvent.camp{background:#16835f}.calendarLegend{flex-wrap:wrap}}
.beltDashboard{margin-top:20px}.beltCountGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.beltCount{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:13px;border:1px solid #e1e7ef;border-radius:10px;background:#fff}.beltCount span{color:#4f6278;font-size:13px}.beltCount b{color:#102b4c;font-size:21px}.beltColor{width:26px;height:12px;border-radius:4px;border:1px solid rgba(16,43,76,.18)}.beltColor.white{background:#fff}.beltColor.whiteYellow{background:linear-gradient(90deg,#fff 50%,#f3d21f 50%)}.beltColor.yellow{background:#f3d21f}.beltColor.orange{background:#ed8b24}.beltColor.green{background:#34965c}.beltColor.blue{background:#2875c7}.beltColor.brown{background:#81512f}.beltColor.black{background:#171a1f}
@media(max-width:800px){.beltCountGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.participationCounters{grid-template-columns:1fr 1fr}}


.trainingKioskPanel{max-width:1100px!important;margin-left:auto!important;margin-right:auto!important}.kioskHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.kioskHeaderActions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.kioskHeader h2{margin:7px 0}.kioskHeader p{margin:0;color:#66778e}.kioskControls{display:grid;grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:16px;margin:24px 0}.kioskButtons{display:flex;gap:9px}.kioskScanArea{display:grid;grid-template-columns:minmax(280px,1.15fr) minmax(260px,.85fr);gap:18px;align-items:stretch}.kioskScanArea video{width:100%;min-height:320px;max-height:480px;border-radius:14px;background:#081827;object-fit:cover}.kioskResult{display:flex;min-height:180px;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:28px;border:2px dashed #c7d4e2;border-radius:14px;background:#f7faff;text-align:center}.kioskResult strong{color:#102b4c;font-size:25px}.kioskResult span{color:#63758a;font-size:15px}.kioskResult.success{border-style:solid;border-color:#6dc18c;background:#ecf9f1}.kioskResult.success strong{color:#176a3a}.kioskResult.warning{border-style:solid;border-color:#e2b75c;background:#fff8e6}.kioskResult.error{border-style:solid;border-color:#d77f88;background:#fff0f1}.kioskAttendanceHead{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px;padding:18px 20px;border-radius:12px;background:#0c2947;color:#fff}.kioskAttendanceHead>div{display:flex;align-items:baseline;gap:10px}.kioskAttendanceHead b{font-size:42px}.kioskAttendanceHead span{font-size:16px}.kioskAttendanceList{max-height:520px;overflow-y:auto;border:1px solid #dfe6ee;border-top:0;border-radius:0 0 12px 12px}.kioskAttendanceRow{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 18px;border-top:1px solid #e8edf3}.kioskAttendanceRow>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#edf4ff;color:#1764c0;font-weight:700}.kioskAttendanceRow b,.kioskAttendanceRow small{display:block}.kioskAttendanceRow small{margin-top:3px;color:#718096}.kioskAttendanceRow em{color:#176a3a;font-style:normal;font-weight:700}.kioskAttendanceList>.muted{padding:20px}.trainingKioskMode .dashShell{display:block}.trainingKioskMode .dashSidebar,.trainingKioskMode .dashTop,.trainingKioskMode .appSponsorBar{display:none!important}.trainingKioskMode #trainingKioskPanel{margin-top:0!important;min-height:100vh;border:0;border-radius:0}
@media(max-width:750px){.kioskHeader,.kioskControls{display:flex;flex-direction:column;align-items:stretch}.kioskButtons{display:grid;grid-template-columns:1fr 1fr}.kioskScanArea{grid-template-columns:1fr}.kioskScanArea video{min-height:260px}.kioskAttendanceRow{grid-template-columns:36px 1fr}.kioskAttendanceRow em{grid-column:2}.kioskAttendanceHead b{font-size:34px}}


@media(max-width:600px){
  .dashNav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .dashNav button{min-width:0;min-height:68px;padding:10px 7px;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:18px;text-align:center;line-height:1.15}
  .dashNav button span{display:block!important;width:100%;font-size:11px;line-height:1.2;white-space:normal;overflow-wrap:anywhere}
  .dashNav .navMemberIcon{width:20px;height:20px;flex-basis:20px}
  .navMore summary{min-height:68px;flex-direction:column;justify-content:center;gap:6px;padding:10px 7px;text-align:center}.navMore summary span{display:block!important;font-size:11px}.navMoreItems{grid-column:1/-1;margin:6px 0 0;padding:8px;border:0;border-radius:10px;background:#0a223d}.navMoreItems button{min-height:58px!important}
}


.dashboardQrHero{width:100%;margin:0 0 18px;padding:17px 20px;border:0;border-radius:12px;background:#1764c0;color:#fff;display:flex;align-items:center;gap:14px;text-align:left;box-shadow:0 5px 16px rgba(23,100,192,.16)}
.dashboardQrHero[hidden]{display:none!important}.dashboardQrHero:hover{background:#1359ad}.dashboardQrHeroIcon{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.14)}.dashboardQrHeroIcon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dashboardQrHero>span:nth-child(2){display:grid;gap:3px;flex:1}.dashboardQrHero strong{font-size:16px}.dashboardQrHero small{color:#dceaff;font-size:12px;font-weight:500}.dashboardQrHero>b{font-size:13px;white-space:nowrap}

.dashStats article{min-height:104px;padding:18px}.dashStats i{background:#eef4fa;color:#315b86}.dashStats article:nth-child(2) i{background:#eef7f3;color:#36705a}.dashStats article:nth-child(3) i{background:#eef4ff;color:#1764c0}.dashStats article:nth-child(4) i{background:#f3f4f6;color:#687386}.dashStats b{font-size:28px}
.quickGrid{gap:10px}.quickGrid button,.quickGrid button:nth-child(2),.quickGrid button:nth-child(3),.quickGrid button:nth-child(4){min-height:66px;background:#f5f8fc;color:#24496f;border:1px solid #e1e8f0;box-shadow:none}.quickGrid button:hover{background:#edf4fb}.dashPanel{padding:20px}.dashGrid{gap:14px}.dashboardCalendar,.dashboardPresence,.dashboardRegistrations,.beltDashboard{margin-top:14px}

.dashSidebar{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.navMoreItems{max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
@media(max-width:600px){
  .dashSidebar{overflow:visible}.navMore[open]{grid-column:1/-1}.navMoreItems{max-height:min(58dvh,430px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:calc(16px + env(safe-area-inset-bottom));scrollbar-gutter:stable}
  .dashboardQrHero{padding:14px;margin-bottom:14px}.dashboardQrHeroIcon{width:40px;height:40px;flex-basis:40px}.dashboardQrHero>b{display:none}.dashboardQrHero strong{font-size:15px}
  .dashHeading h1{font-size:29px}.dashHeading p{margin-bottom:16px;font-size:14px}.dashStats article{min-height:86px;padding:12px;gap:10px}.dashStats i{width:38px;height:38px;font-size:20px}.dashStats b{font-size:23px}.dashPanel{padding:16px}.quickGrid button,.quickGrid button:nth-child(n){min-height:58px}
}


.presenceQuickGrid .presenceNavIcon{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.presenceQuickGrid button i{font-style:normal;display:grid;place-items:center}
.navSponsor{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14);font-size:11px;line-height:1.45;color:rgba(255,255,255,.68)}
.navSponsor strong{display:block;margin-top:2px;color:#fff;font-size:12px}
@media(max-width:900px){.dashAsideFoot{display:flex;align-items:center;justify-content:space-between;gap:16px}.navSponsor{margin-top:0;padding-top:0;padding-left:14px;border-top:0;border-left:1px solid rgba(255,255,255,.14);text-align:right}}
@media(max-width:600px){.dashAsideFoot{margin-top:10px;display:flex}.navSponsor{font-size:10px}.navSponsor strong{font-size:11px}}


.dashboardRegistrationsHead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dashboardRegistrationsHead>div{min-width:0}.dashboardRegistrationsHead>button{flex:0 0 auto;margin-top:0}
@media(max-width:600px){.dashboardRegistrationsHead{flex-direction:column}.dashboardRegistrationsHead>button{width:100%}.dashSidebar{max-height:none;overflow:visible}.dashNav{padding-bottom:calc(8px + env(safe-area-inset-bottom))}}


.campCareField{gap:7px}.campCareField .inlineCheck{display:flex;align-items:center;gap:7px;font-weight:600}.campCareField .inlineCheck input{width:auto;margin:0}


.statusBadge{font-weight:800;border-width:1px}.statusActive{color:#176b42;background:#edf8f2;border-color:#6fbd91}.statusInactive{color:#a12626;background:#fff0f0;border-color:#e08a8a}.beltBadge{display:inline-flex;align-items:center;gap:7px}.profileBeltMark{display:inline-block;width:24px;height:9px;border-radius:2px;border:1px solid rgba(0,0,0,.18);flex:0 0 auto}
.itemDetailDialog{width:min(680px,calc(100vw - 28px));max-height:88dvh;border:0;border-radius:16px;padding:0;box-shadow:0 24px 70px rgba(13,34,57,.25)}.itemDetailDialog::backdrop{background:rgba(7,22,38,.48)}.itemDetailHead{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 18px;background:#fff;border-bottom:1px solid #e2e8ef}.itemDetailHead h2{margin:5px 0 0;font:400 30px Georgia,serif;color:#102b4c}.itemDetailBody{padding:10px 26px 28px;overflow:auto}.itemDetailLine{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:15px 0;border-bottom:1px solid #e7ebef}.itemDetailLine span{font-size:12px;color:#718096;text-transform:uppercase;letter-spacing:.04em}.itemDetailLine b{font-size:15px;color:#172b3f;line-height:1.45}.viewTrainingDetail,.viewCompetitionDetail,.viewActivityDetail{border-color:#b9c7d6;color:#24496f;background:#f7faff}
@media(max-width:600px){.itemDetailDialog{width:calc(100vw - 16px);max-height:92dvh}.itemDetailHead{padding:19px 18px 15px}.itemDetailHead h2{font-size:25px}.itemDetailBody{padding:6px 18px 22px}.itemDetailLine{grid-template-columns:1fr;gap:5px;padding:13px 0}.badges{flex-wrap:wrap}}


.campRegistrationBody{padding:20px 26px 26px}.campCareChoices{display:grid;gap:10px;margin:18px 0}.campCareChoice{display:flex;align-items:center;gap:14px;padding:15px 16px;border:1px solid #dbe4ed;border-radius:12px;background:#f8fbfe;cursor:pointer}.campCareChoice input{width:20px;height:20px;margin:0;flex:0 0 auto}.campCareChoice span{display:grid;gap:3px}.campCareChoice b{color:#173a5e}.campCareChoice small{color:#64788d}.campCareSummary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.campCareSummary>div{padding:12px;border:1px solid #dfe7ef;border-radius:10px;background:#f7fafc;text-align:center}.campCareSummary b{display:block;font-size:22px;color:#173a5e}.campCareSummary span{font-size:11px;color:#66788a}.careBadges{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.careBadge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f1f3f5;color:#7b8793;font-size:11px;font-weight:700}.careBadge.selected{background:#eaf7f0;color:#176b42;border:1px solid #9bd1b2}
@media(max-width:600px){.campRegistrationBody{padding:16px 18px 22px}.campCareSummary{grid-template-columns:1fr}.registrationPerson{align-items:flex-start}.careBadges{margin-top:6px}}



.dashboardUpcomingList{display:grid;gap:9px}.upcomingItem{display:grid;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 13px;border:1px solid #e0e7ee;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.upcomingItem:hover,.upcomingItem:focus-visible{border-color:#a9bfd4;box-shadow:0 5px 16px rgba(23,58,94,.08);outline:0;transform:translateY(-1px)}.upcomingType{display:inline-flex;justify-content:center;align-items:center;min-height:30px;padding:6px 9px;border-radius:8px;background:#eef4f9;color:#294f75;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}.upcomingType.activity{background:#f3f0fb;color:#594687}.upcomingType.competition{background:#fff6e7;color:#8a5a12}.upcomingMain{min-width:0;display:grid;gap:4px}.upcomingTitleLine{display:flex;align-items:center;gap:8px;min-width:0}.upcomingTitleLine b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#173a5e}.upcomingMain>span{font-size:12px;color:#6c7f91}.newBadge{display:inline-flex;align-items:center;padding:3px 6px;border-radius:999px;background:#eaf7f0;color:#176b42;border:1px solid #a9d5bb;font-size:9px;font-weight:900;letter-spacing:.05em}.upcomingActions{display:flex;gap:7px;align-items:center}.upcomingActions button{white-space:nowrap;margin:0;padding:8px 10px;font-size:12px}
@media(max-width:720px){.upcomingItem{grid-template-columns:78px minmax(0,1fr);gap:10px}.upcomingActions{grid-column:1/-1;justify-content:flex-end}.upcomingActions button{flex:1}.upcomingType{font-size:10px}.upcomingTitleLine{align-items:flex-start;flex-wrap:wrap}.upcomingTitleLine b{white-space:normal}}

.upcomingRegistrationStatus{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.upcomingRegistrationStatus span{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;font-size:10px;font-weight:800;border:1px solid #d7e0e8;background:#f7f9fb;color:#617283}.upcomingRegistrationStatus .registrationOk,.upcomingRegistrationStatus .careState.selected{border-color:#a9d5bb;background:#eaf7f0;color:#176b42}.upcomingRegistrationStatus .careState:not(.selected){background:#f6f7f8;color:#7c8791}


.extraFunctionsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.extraFunctionCard{height:100%}.extraFunctionCard .grid{margin-top:16px}.extraFunctionCard .actions{margin-top:16px}@media(max-width:800px){.extraFunctionsGrid{grid-template-columns:1fr}}

.boardDocumentsBlock{margin-top:28px;padding-top:24px;border-top:1px solid var(--line,#d9e1e8)}
.boardDocumentsHead{margin-bottom:14px}.driveSetupCard,.boardDocumentUploadCard{margin-bottom:16px}
.driveServiceAccount{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 14px;margin:10px 0 14px;border-radius:12px;background:#f5f8fb;border:1px solid #dbe5ee}.driveServiceAccount span{font-weight:700}.driveServiceAccount code{overflow-wrap:anywhere}
.boardDocumentsList{display:grid;gap:10px}.boardDocumentCard{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid #dce4eb;border-radius:14px;background:#fff}.boardDocumentCard h3{margin:0 0 5px}.boardDocumentMeta{display:flex;gap:8px;flex-wrap:wrap;font-size:.86rem;color:#637282}.boardDocumentCategory{font-weight:700;color:#0c2947}.boardDocumentActions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.boardDocumentActions a{text-decoration:none}.boardDocumentsEmpty{padding:22px;text-align:center;border:1px dashed #cbd7e1;border-radius:14px;color:#637282}
@media(max-width:720px){.boardDocumentCard{grid-template-columns:1fr}.boardDocumentActions{justify-content:flex-start}}


.platformManageCard{grid-column:1/-1}.platformToggleGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.driveStatusBox{padding:14px 16px;border:1px solid #dbe4ec;border-radius:12px;background:#f8fafc;margin:12px 0}.driveStatusBox span{color:#667789;font-size:.92rem}.platformManageCard .kicker{margin-bottom:4px}@media(max-width:720px){.platformToggleGrid{grid-template-columns:1fr}}


.pageManagerGrid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);gap:18px;margin-top:16px}.managedPagesList{display:grid;gap:7px;max-height:560px;overflow:auto}.managedPageRow{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;text-align:left;padding:10px 12px;background:#fff;color:#173a5e;border:1px solid #dbe4ec;border-radius:10px}.managedPageRow span{font-size:20px;text-align:center}.managedPageRow div{display:grid;gap:2px}.managedPageRow small{color:#6c7d8d;font-weight:400}.pageEditor{padding:16px;border:1px solid #dbe4ec;border-radius:12px;background:#f9fbfd}.pageEditor h4,.pageManagerGrid h4{margin:0 0 12px}.pageAccessChecks{display:flex;flex-wrap:wrap;gap:8px 14px;margin:14px 0}.pageAccessChecks>b{width:100%}.pageAccessChecks label{display:flex;align-items:center;gap:6px;font-weight:500}.pageAccessChecks input{width:auto}.customNavIcon{width:24px;display:grid;place-items:center;font-size:17px}.customPageContent{max-width:900px;font-size:1rem;line-height:1.7}.customPageContent p{margin:0 0 1.1em}.pageEditor textarea:disabled{background:#eef2f5;color:#7b8792}.boardMeetingActions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}@media(max-width:850px){.pageManagerGrid{grid-template-columns:1fr}.managedPagesList{max-height:330px}}


.navGroup{display:grid;gap:2px}.navGroupToggle{width:100%;display:grid!important;grid-template-columns:24px 1fr 18px;align-items:center;text-align:left}.navGroupDot{font-size:18px;line-height:1;text-align:center}.navChevron{font-size:16px;transition:transform .18s ease;text-align:center}.navGroup.open .navChevron{transform:rotate(180deg)}.navGroupItems{display:none;padding:2px 0 5px 17px}.navGroup.open .navGroupItems{display:grid;gap:2px}.navGroupItems>button{font-size:.93rem;padding-top:9px!important;padding-bottom:9px!important}.navGroupItems>button .navIcon,.navGroupItems>button .customNavIcon{width:20px;height:20px;opacity:.9}
.pageManagerHead{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.pageManagerHead h3{margin-bottom:5px}.pageManagerHead p{margin:0;max-width:720px}.pageManagerGrid{display:grid;grid-template-columns:minmax(270px,.78fr) minmax(420px,1.22fr);gap:18px;align-items:start}.pageManagerSidebar{border:1px solid #dbe4ec;border-radius:16px;background:#f8fafc;overflow:hidden}.pageListHead{display:grid;gap:3px;padding:14px 15px;border-bottom:1px solid #e3eaf0}.pageListHead small{color:#748494}.managedPagesList{display:grid;gap:0;max-height:650px;overflow:auto;padding:8px}.managedGroup{display:grid;gap:5px;margin-bottom:10px}.managedGroup:last-child{margin-bottom:0}.managedGroupTitle{display:flex;justify-content:space-between;align-items:center;padding:7px 8px 4px;color:#536b82;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.managedGroupTitle small{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#e8eef4;color:#52677b}.managedPageRow{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center;padding:0;border:1px solid transparent;border-radius:11px;background:transparent}.managedPageRow.selected{background:#fff;border-color:#cbdbe8;box-shadow:0 2px 8px rgba(24,55,85,.06)}.managedPageSelect{display:grid!important;grid-template-columns:34px 1fr;gap:8px;align-items:center;text-align:left!important;padding:9px!important;background:transparent!important;color:#173a5e!important;border:0!important;box-shadow:none!important}.managedPageIcon{font-size:19px;text-align:center}.managedPageText{display:grid;gap:1px;min-width:0}.managedPageText b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.managedPageText small{color:#748494;font-weight:400}.managedMove{display:flex;gap:2px;padding-right:5px}.managedMove button{width:28px;height:28px;padding:0!important;border-radius:7px!important;background:#edf2f6!important;color:#36536d!important;border:0!important}.managedMove button:disabled{opacity:.3}.pageEditor{padding:0;border:1px solid #dbe4ec;border-radius:16px;background:#fff;overflow:hidden}.pageEditorHead{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:17px 18px 13px}.pageEditorHead h4{margin:3px 0 0;font-size:1.12rem}.pageTypeBadge{font-size:.68rem;font-weight:800;letter-spacing:.08em;color:#65798b}.pageVisibleSwitch{display:flex!important;align-items:center;gap:8px;margin:0!important;padding:7px 10px;border:1px solid #dbe4ec;border-radius:999px;background:#f8fafc}.pageVisibleSwitch input{width:auto!important}.pageTabs{display:flex;gap:4px;padding:0 14px;border-bottom:1px solid #e1e8ee;overflow-x:auto}.pageTab{background:transparent!important;color:#63788b!important;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;padding:10px 11px!important;white-space:nowrap}.pageTab.active{color:#173a5e!important;border-bottom-color:currentColor!important}.pageTabPane{display:none;padding:18px}.pageTabPane.active{display:block}.pageTabPane .grid{margin:0}.pageTabPane label>small{display:block;margin-top:6px;color:#738394;font-weight:400}.pageAccessChecks{display:grid;grid-template-columns:1fr 1fr;gap:9px 14px;margin:0}.pageAccessChecks>b{grid-column:1/-1;margin-bottom:3px}.pageAccessChecks label{display:flex;align-items:center;gap:7px;padding:9px 10px;border:1px solid #e1e8ee;border-radius:10px;background:#fafcfd;font-weight:500}.pageAccessChecks input{width:auto}.navPreview{display:grid;gap:4px;margin-top:15px;padding:12px 14px;border-radius:11px;background:#f2f6f9}.navPreview span{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#748494;font-weight:800}.pageEditorFooter{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 18px;border-top:1px solid #e1e8ee;background:#fafcfd}.pageEditorFooter p{margin:0}.pageEditorFooter .actions{margin:0}.pageEditor textarea:disabled{background:#eef2f5;color:#7b8792}
@media(max-width:900px){.pageManagerGrid{grid-template-columns:1fr}.managedPagesList{max-height:360px}.pageManagerHead{align-items:center}}@media(max-width:600px){.pageManagerHead{display:grid}.pageManagerHead>button{width:100%}.pageAccessChecks{grid-template-columns:1fr}.pageEditorFooter{display:grid}.pageEditorFooter .actions{justify-content:stretch}.pageEditorFooter .actions button{flex:1}.navGroupItems{padding-left:10px}}


.pageManageCard{padding:0!important;overflow:hidden}.pageManageCard>.pageManagerHead{padding:20px 22px 16px;margin:0;border-bottom:1px solid #e2e9ef;background:#fff}.pageManagerTools{display:flex;gap:10px;align-items:center}.pageManagerTools input{width:210px;margin:0}.pageManagerGrid{margin:0;gap:0;grid-template-columns:minmax(285px,.72fr) minmax(520px,1.65fr);min-height:610px}.pageManagerSidebar{border:0;border-right:1px solid #e1e8ee;border-radius:0;background:#f7f9fb;padding:12px}.pageListFilters{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}.pageFilter{padding:8px 6px!important;background:#fff!important;color:#52677b!important;border:1px solid #dce5ec!important;border-radius:8px!important;font-size:.8rem}.pageFilter.active{background:#eaf4ff!important;color:#0d5cab!important;border-color:#acd1f3!important}.managedPagesList{max-height:620px;padding:0}.managedGroup{gap:3px;margin:0 0 10px}.managedGroupTitle{padding:9px 7px 5px}.managedPageRow{border-radius:9px}.managedPageRow.selected{background:#e8f3ff;border-color:#bdd8ef;box-shadow:none}.managedPageSelect{grid-template-columns:26px 10px 1fr!important;gap:7px!important;padding:8px!important}.managedPageSelect:before{content:"";width:8px;height:8px;border-radius:50%;background:#21b66f;grid-column:2}.managedPageRow.is-hidden .managedPageSelect:before{background:#aab6c0}.managedPageIcon{grid-column:1;grid-row:1;font-size:17px}.managedPageText{grid-column:3;grid-row:1}.managedPageText b{font-size:.92rem}.managedPageText small{font-size:.72rem}.managedMove{padding-right:3px}.managedMove button{width:26px;height:26px}.pageEditor{border:0;border-radius:0;background:#fff}.pageEditorHead{padding:20px 22px 16px;border-bottom:1px solid #e7edf2}.pageEditorIdentity{display:flex;align-items:center;gap:14px;min-width:0}.pageManagerHeroIcon{display:grid;place-items:center;width:54px;height:54px;flex:0 0 54px;border-radius:50%;background:#eaf4ff;color:#0867c2;font-size:25px}.pageTitleLine{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.pageTitleLine h4{font-size:1.35rem;margin:0}.pageEditorIdentity p{margin:4px 0 0}.pageTypeBadge{padding:4px 8px;border-radius:999px;background:#eaf4ff;color:#0d65b8;letter-spacing:0;font-size:.66rem}.pageVisibleSwitch{border:0!important;background:transparent!important;padding:5px!important}.pageVisibleSwitch input{position:absolute;opacity:0;pointer-events:none}.switchTrack{position:relative;width:42px;height:24px;border-radius:99px;background:#b7c3cd;transition:.2s}.switchTrack:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:.2s}.pageVisibleSwitch input:checked+.switchTrack{background:#20b66e}.pageVisibleSwitch input:checked+.switchTrack:after{transform:translateX(18px)}.pageTabs{padding:0 20px;gap:22px}.pageTab{padding:13px 4px!important}.pageTab.active{color:#0967bd!important;border-bottom-color:#0967bd!important}.pageTabPane{padding:20px 22px}.pageSettingsGrid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(210px,.8fr);gap:14px}.pageInfoGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.pageSettingsCard{padding:16px;border:1px solid #e0e7ed;border-radius:12px;background:#fff}.pageSettingsCard h5{margin:0 0 14px;color:#173a5e;font-size:.95rem}.pageSettingsCard .grid{margin:0}.pageSettingsCard p{margin:0}.pageIconPicker{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.pageIconPicker button{min-width:0;padding:8px!important;background:#f7f9fb!important;color:#38536c!important;border:1px solid #dce5ec!important;border-radius:8px!important;font-size:17px}.pageIconPicker button.active{background:#eaf4ff!important;color:#0867c2!important;border-color:#69aef0!important;box-shadow:0 0 0 2px rgba(55,144,226,.1)}.customIconField{margin-top:10px!important}.customIconField input{margin-top:5px}.pageEditorFooter{padding:14px 22px;background:#fafbfd}.pageEditorFooter .actions{flex-wrap:wrap}.pageEditorFooter .outline{background:#fff!important;color:#36536d!important;border:1px solid #d6e0e8!important}.pageEditorFooter button[type=submit]{min-width:175px}.navPreview{border:1px solid #e1e8ee}.pageAccessChecks label{background:#fff}.pageManagerSidebar::-webkit-scrollbar,.managedPagesList::-webkit-scrollbar{width:8px}.managedPagesList::-webkit-scrollbar-thumb{background:#c6d0d8;border-radius:20px}
@media(max-width:1000px){.pageManagerGrid{grid-template-columns:1fr}.pageManagerSidebar{border-right:0;border-bottom:1px solid #e1e8ee}.managedPagesList{max-height:340px}.pageSettingsGrid{grid-template-columns:1fr}.pageManagerTools input{width:180px}}
@media(max-width:650px){.pageManageCard>.pageManagerHead{padding:16px}.pageManagerTools{width:100%;display:grid;grid-template-columns:1fr}.pageManagerTools input{width:100%}.pageEditorHead{align-items:flex-start}.pageManagerHeroIcon{width:44px;height:44px;flex-basis:44px}.pageVisibleSwitch>span:last-child{display:none}.pageTabs{gap:12px;padding:0 14px}.pageTabPane{padding:15px}.pageInfoGrid{grid-template-columns:1fr}.pageEditorFooter{padding:12px 15px}.pageEditorFooter .actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.pageEditorFooter button[type=submit]{min-width:0}.pageEditorFooter .dangerOutline{grid-column:1/-1}.pageListFilters{position:sticky;top:0;z-index:1;background:#f7f9fb;padding-bottom:5px}}

.richEditorCard{padding:0!important;overflow:hidden}.richEditorTop{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 16px 12px;border-bottom:1px solid #e3eaf0}.richEditorTop h5{margin:0 0 3px}.editorModeSwitch{display:flex;padding:3px;background:#eef3f7;border-radius:9px}.editorModeSwitch button{padding:7px 11px!important;border:0!important;background:transparent!important;color:#607487!important;border-radius:7px!important}.editorModeSwitch button.active{background:#fff!important;color:#0a64b5!important;box-shadow:0 1px 4px rgba(20,50,80,.12)}.richToolbar{display:flex;flex-wrap:wrap;gap:5px;align-items:center;padding:10px;border-bottom:1px solid #e1e8ee;background:#f8fafc;position:sticky;top:0;z-index:2}.richToolbar>span{width:1px;height:26px;background:#dbe3ea;margin:0 2px}.richToolbar button,.richToolbar select{min-height:32px;padding:5px 8px!important;border:1px solid #d8e2ea!important;border-radius:7px!important;background:#fff!important;color:#294861!important;font-size:.82rem}.richToolbar button:hover{background:#edf6ff!important;border-color:#9dc9ef!important}.richToolbar select{max-width:135px}.editorColor{display:flex!important;align-items:center;gap:4px;padding:4px 6px;border:1px solid #d8e2ea;border-radius:7px;background:#fff;font-weight:800!important}.editorColor input{width:22px!important;height:22px!important;padding:0!important;border:0!important;background:transparent}.pageRichEditor,.pageRichPreview{min-height:360px;padding:24px;background:#fff;color:#243b50;line-height:1.65;outline:none;overflow:auto}.pageRichEditor:empty:before{content:attr(data-placeholder);color:#9aa8b4}.pageRichEditor h1,.pageRichPreview h1{font-size:2rem;color:#153b60;margin:.3em 0 .6em}.pageRichEditor h2,.pageRichPreview h2{font-size:1.55rem;color:#153b60;margin:.6em 0 .45em}.pageRichEditor h3,.pageRichPreview h3{font-size:1.2rem;color:#153b60;margin:.7em 0 .4em}.pageRichEditor blockquote,.pageRichPreview blockquote{margin:1em 0;padding:12px 16px;border-left:4px solid #2196d2;background:#f3f8fc;border-radius:0 8px 8px 0}.pageRichEditor table,.pageRichPreview table{width:100%;border-collapse:collapse;margin:1em 0}.pageRichEditor td,.pageRichEditor th,.pageRichPreview td,.pageRichPreview th{border:1px solid #ccd8e2;padding:8px}.pageRichEditor img,.pageRichPreview img{max-width:100%;height:auto;border-radius:10px}.pageRichEditor a,.pageRichPreview a{color:#0872c9}.pageRichEditor .snsButton,.pageRichPreview .snsButton{display:inline-block;padding:10px 16px;border-radius:9px;background:#0b69b7;color:#fff!important;text-decoration:none;font-weight:700}.editorHint{margin:0;padding:10px 14px;border-top:1px solid #e7edf2;background:#fafcfd;color:#738394;font-size:.78rem}.richEditorCard.isFullscreen{position:fixed!important;inset:12px;z-index:9999;background:#fff;box-shadow:0 20px 80px rgba(0,0,0,.3);border-radius:14px}.richEditorCard.isFullscreen .pageRichEditor,.richEditorCard.isFullscreen .pageRichPreview{height:calc(100vh - 180px)}.compactIconPicker{grid-template-columns:repeat(8,42px)!important;margin-top:12px}.navGroupIcon{font-size:17px;line-height:1;text-align:center}.customPageContent{max-width:1000px}.customPageContent table{width:100%;border-collapse:collapse}.customPageContent td,.customPageContent th{border:1px solid #ccd8e2;padding:8px}.customPageContent img{max-width:100%;height:auto;border-radius:10px}.customPageContent blockquote{padding:12px 16px;border-left:4px solid #2196d2;background:#f3f8fc}.customPageContent .snsButton{display:inline-block;padding:10px 16px;border-radius:9px;background:#0b69b7;color:#fff;text-decoration:none;font-weight:700}@media(max-width:700px){.richToolbar{max-height:150px;overflow:auto}.pageRichEditor,.pageRichPreview{padding:16px;min-height:300px}.compactIconPicker{grid-template-columns:repeat(4,42px)!important}.richEditorTop{align-items:flex-start;flex-direction:column}}


.managedSystemIntro{margin:0 0 18px;padding:18px 20px;border:1px solid #dce6ef;border-radius:16px;background:#f8fbfd;line-height:1.65}.managedSystemIntro:empty{display:none}.systemBlockNotice{display:flex;gap:12px;align-items:flex-start;margin:0 0 14px;padding:14px 16px;border:1px solid #c9d9e7;border-radius:14px;background:#f4f9fc}.systemBlockNotice span{color:#587084}.extraTopicNav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.extraTopicNav button{background:#eef4f8;color:#173a5e;border:1px solid #d8e3eb}.extraTopicNav button.active{background:#173a5e;color:white;border-color:#173a5e}.boardAgendaHub{margin:0 0 26px;padding:20px;border:1px solid #dce6ef;border-radius:18px;background:#fbfdff}.boardAgendaList{display:grid;gap:12px}.boardAgendaItem{display:grid;grid-template-columns:135px 1fr auto;gap:18px;align-items:start;padding:16px;border:1px solid #dce6ef;border-radius:15px;background:white}.boardAgendaDate{display:flex;flex-direction:column;gap:4px;color:#173a5e}.boardAgendaDescription{margin:8px 0;line-height:1.55}.boardAgendaActions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.agendaAccessBox{margin:14px 0;padding:14px;border-radius:14px;background:#f5f8fb}.agendaAccessBox>label{display:block;margin-top:12px}
@media(max-width:850px){.boardAgendaItem{grid-template-columns:1fr}.boardAgendaActions{justify-content:flex-start}.extraTopicNav{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.extraTopicNav button{white-space:nowrap}.managedSystemIntro{padding:14px}.systemBlockNotice{flex-direction:column}}


.formBuilderTabs{display:flex;gap:8px;margin:18px 0 12px;flex-wrap:wrap}.formBuilderTab{background:#eef4f8;color:#173a5e;border:1px solid #d8e4ec}.formBuilderTab.active{background:#173a5e;color:#fff;border-color:#173a5e}.formBuilderToolbar{display:flex;gap:8px;justify-content:flex-end;margin-bottom:12px;flex-wrap:wrap}.formFieldsManager{display:grid;gap:10px}.formFieldRow{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:14px;border:1px solid #dce6ed;border-radius:14px;background:#fbfdfe}.formFieldMove{display:flex;flex-direction:column;gap:5px}.formFieldMove button{min-width:38px;padding:7px}.formFieldMain{display:grid;gap:8px}.formFieldLabel{font-weight:700}.formFieldHelp{font-size:.92rem}.formFieldMeta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.formFieldMeta select{width:auto;min-width:150px}.formFieldMeta label{display:flex;align-items:center;gap:5px;margin:0}.systemFieldBadge{font-size:.72rem;font-weight:800;letter-spacing:.05em;color:#607788;background:#eaf0f4;padding:5px 8px;border-radius:999px}.formFieldOptions{margin-top:2px}.calendarEvent.boardagenda{border-left:3px solid currentColor;font-weight:700}.calendarEvent.boardagenda::before{content:"🥋 ";font-size:.85em}@media(max-width:700px){.formFieldRow{grid-template-columns:1fr}.formFieldMove{flex-direction:row;order:2}.formFieldMeta{align-items:flex-start;flex-direction:column}.formFieldMeta select{width:100%}.formBuilderToolbar{justify-content:stretch}.formBuilderToolbar button{flex:1}}


.beltVisual,.gradeBeltVisual,.examBeltVisual,.profileBeltVisual,.profileBeltMark{position:relative;display:inline-block;border-radius:4px;box-sizing:border-box;overflow:hidden;vertical-align:middle}
.beltVisual{width:62px;height:18px}.gradeBeltVisual{width:74px;height:22px;flex:0 0 74px}.examBeltVisual{width:150px;height:44px;border-radius:7px}.profileBeltVisual{width:72px;height:20px;margin-right:8px}.profileBeltMark{width:34px;height:11px;flex:0 0 34px}
.beltStripeStack{position:absolute;right:5px;top:0;height:100%;display:flex;gap:2px;align-items:stretch}.beltStripeStack b{display:block;width:3px;height:100%;background:#111;box-shadow:0 0 0 1px rgba(255,255,255,.2)}
.blackBeltVisual .beltStripeStack b{background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.5)}
.memberCardManagerTools{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;margin:16px 0}.memberCardSelectionList{max-height:520px;overflow-y:auto;border:1px solid #dfe8ef;border-radius:14px;background:#fff}.memberCardSelectRow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 15px;border-bottom:1px solid #edf2f5;cursor:pointer}.memberCardSelectRow:last-child{border-bottom:0}.memberCardSelectRow:hover{background:#f7fbff}.memberCardSelectRow input{width:20px;height:20px}.memberCardSelectRow b,.memberCardSelectRow small{display:block}.memberCardSelectRow small{margin-top:3px;color:#718096}.memberCardSelectRow em{color:#176a3a;font-size:12px;font-style:normal;font-weight:700}.memberCardSelectRow.disabled{cursor:not-allowed;opacity:.58}.memberCardSelectRow.disabled em{color:#a43b44}@media(max-width:700px){.memberCardManagerTools{grid-template-columns:1fr}.memberCardSelectRow{grid-template-columns:auto 1fr}.memberCardSelectRow em{grid-column:2}}
.gradeRow{align-items:center}.gradeText{min-width:0;flex:1}.gradeText small{display:block}.gradeDialog{width:min(760px,calc(100vw - 28px));max-width:760px}.gradeExamGrid{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:22px;align-items:stretch}.gradeExamFields{display:grid;gap:12px}.gradeExamPreview{border:1px solid #dbe4ec;border-radius:14px;background:#f7fafc;padding:18px;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;text-align:center}.gradeExamPreview>span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.gradeExamPreview #gradeCurrentPreview{display:flex;flex-direction:column;gap:10px;align-items:center}.gradeExamPreview small{color:#64748b;line-height:1.4}.beltBadge{white-space:nowrap}#pBelt{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
@media(max-width:700px){.gradeExamGrid{grid-template-columns:1fr}.gradeExamPreview{min-height:145px}.gradeDialog{width:calc(100vw - 18px)}.gradeBeltVisual{width:64px}}


.statMemberIcon{display:grid!important;place-items:center}.statMemberIcon .navIcon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.profilePhotoWrap{position:relative;flex:0 0 auto;text-align:center}.profilePhotoButton{border:0;padding:0;overflow:hidden;cursor:pointer}.profilePhotoButton img{width:100%;height:100%;object-fit:cover;display:block}.profilePhotoButton img[hidden],.profilePhotoButton span[hidden]{display:none!important}.profilePhotoActions{position:absolute;z-index:20;top:92px;left:0;width:190px;padding:8px;background:#fff;border:1px solid #dfe6ee;border-radius:10px;box-shadow:0 10px 28px rgba(11,35,61,.16);display:grid;gap:6px}.profilePhotoActions[hidden]{display:none}.profilePhotoActions button{min-height:38px;padding:8px 10px;font-size:11px}.profilePhotoMsg{display:block;width:170px;margin-top:6px;color:#60728a;font-size:10px}
@media(max-width:650px){.profilehead{align-items:flex-start}.profilePhotoActions{position:fixed;left:14px;right:14px;bottom:14px;top:auto;width:auto}.profilePhotoMsg{width:100%;max-width:150px}.profileTopActions{width:100%;justify-content:flex-start}.profileTopActions button{flex:1 1 auto}.info{padding:18px}.info dl{grid-template-columns:1fr;gap:5px}.info dd{margin:0 0 9px}.belt-history{overflow:hidden}.gradeRow{align-items:flex-start}}



body.loginMode{background:#fff!important;min-height:100dvh;overflow:hidden}
body.loginMode .sitehead,body.loginMode footer{display:none!important}
body.loginMode main{max-width:none!important;margin:0!important;width:100%!important;min-height:100dvh}
body.loginMode #login.loginScreen{min-height:100dvh!important;height:100dvh!important;margin:0!important;padding:20px!important;background:#fff!important;background-image:none!important;overflow:auto}
body.loginMode .loginGlassCard{margin:auto;background:#fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:0 18px 55px rgba(13,43,72,.12)!important;border:1px solid #e4e9ee!important}
.loginInstallButton{display:block;width:100%;margin-top:10px;background:#fff;color:#173a5e;border:1px solid #ccd9e4;border-radius:9px}.loginInstallButton[hidden]{display:none!important}.loginInstallHint{margin:9px 0 0;text-align:center;color:#60728a;font-size:.78rem;line-height:1.45}
.dashStats .statMemberIcon{width:34px;height:34px;display:grid!important;place-items:center}.dashStats .statMemberIcon .navIcon{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:650px){body.loginMode #login.loginScreen{padding:12px!important}.loginGlassCard{max-height:calc(100dvh - 24px);overflow:auto}.loginInstallButton{min-height:46px}}


.roleDefaultsCard{grid-column:1/-1}.socialGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.socialGrid .span2{grid-column:1/-1}.socialStatus{padding:12px 14px;border-radius:12px;background:#f2f6fa;font-weight:700;margin:12px 0}.profilePhotoActions{flex-wrap:wrap}.profilePhotoActions button{min-height:42px}@media(max-width:850px){.socialGrid{grid-template-columns:1fr}.socialGrid .span2{grid-column:auto}.roleDefaultsCard{grid-column:auto}.profilePhotoActions{width:min(92vw,360px)}.profilePhotoActions button{flex:1 1 100%}}



.dashMenuToggle{display:none;width:44px;height:44px;min-height:44px;padding:10px;border-radius:10px;background:#0c2947;color:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;flex:0 0 44px}
.dashMenuToggle span{display:block;width:21px;height:2px;border-radius:2px;background:currentColor}
.dashNavBackdrop{display:none}
@media(max-width:1250px){
  .dashShell{display:block!important;min-height:100vh}
  .dashWorkspace{width:100%;min-width:0}
  .dashSidebar{position:fixed!important;z-index:1002;left:0;top:0;bottom:0;width:min(330px,88vw)!important;height:100dvh!important;max-height:none!important;padding:20px 16px!important;display:flex!important;transform:translateX(-105%);transition:transform .22s ease;box-shadow:12px 0 38px rgba(4,22,42,.22);overflow-y:auto;overscroll-behavior:contain}
  .dashSidebar.navOpen{transform:translateX(0)}
  .dashBrand{justify-content:flex-start!important;border-bottom:1px solid rgba(255,255,255,.13)!important;padding:0 6px 18px!important}
  .dashBrand div{display:block!important}.dashBrand img{width:52px!important;height:52px!important}
  .dashNav{display:grid!important;grid-template-columns:1fr!important;gap:5px!important;margin:16px 0 0!important;padding:0 0 16px!important;width:100%}
  .dashNav button,.dashNav .navGroupToggle,.dashNav .navMore summary{justify-content:flex-start!important;width:100%!important;font-size:14px!important;padding:12px 14px!important;min-height:46px}
  .dashNav span{display:inline!important}.dashAsideFoot{display:block!important;margin-top:auto!important}
  .dashMenuToggle{display:flex}
  .dashTop{position:sticky;top:0;z-index:900;height:auto!important;min-height:72px!important;padding:10px clamp(14px,3vw,30px)!important;gap:14px;justify-content:flex-start!important}
  .dashTopBrand{margin-right:auto}
  .dashAccount{margin-left:auto}
  .dashNavBackdrop{position:fixed;z-index:1001;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(4,20,38,.42)}
  .dashNavBackdrop:not([hidden]){display:block}
  body.navDrawerOpen{overflow:hidden}
  .extraTopicNav{overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:6px;scrollbar-width:thin}
  .extraTopicNav button{white-space:nowrap;flex:0 0 auto}
}
@media(max-width:650px){
  .dashTopBrand{display:none!important}
  .dashTop{min-height:66px!important;padding:8px 12px!important}
  .dashAccount{gap:7px;min-width:0}
  .activeRole{max-width:52vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px!important;padding:0 9px!important}
  .dashLogout{padding:9px 11px!important;font-size:12px}
  .dashHome{padding:20px 12px!important}
  #app .contentblock{margin:14px 10px!important;padding:15px!important}
  .extraTopicNav{margin-left:-3px;margin-right:-3px}
}


#pageManagerBody[hidden]{display:none!important}
.pageManageCard>.pageManagerHead{margin-bottom:0}.pageManageCard #pageManagerBody{margin-top:18px}
@media(max-width:850px){.pageManagerTools{width:100%;display:grid;grid-template-columns:1fr;gap:8px}.pageManagerTools>*{width:100%}.profilePhotoActions{z-index:1000}.profilePhotoActions button{font-size:14px;min-height:48px}}


.messageError{color:#b42318!important;font-weight:700}.messageSuccess{color:#16803a!important;font-weight:700}.messageWarning{color:#a15c00!important;font-weight:700}
.statsToolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:14px 0}.statsToolbar label{min-width:150px}.statsSummary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.statsSummary article,.statsCard{background:#fff;border:1px solid #dce5ee;border-radius:16px;padding:16px}.statsSummary b{display:block;font-size:2rem;color:#123c69}.statsSummary span{color:#617286}.statsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.statsCard.span2{grid-column:1/-1}.simpleBars{display:grid;gap:9px}.statBarRow{display:grid;grid-template-columns:minmax(110px,180px) 1fr 42px;gap:10px;align-items:center}.statBarRow>div{height:12px;background:#edf2f7;border-radius:999px;overflow:hidden}.statBarRow i{display:block;height:100%;background:currentColor;color:#276da8;border-radius:999px}.statBarRow b{text-align:right}.trendChart{display:flex;align-items:end;gap:5px;height:190px;overflow-x:auto;padding:10px 4px 0}.trendPoint{height:100%;min-width:28px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px}.trendPoint i{width:18px;min-height:4px;background:#276da8;border-radius:5px 5px 0 0}.trendPoint small{font-size:9px;white-space:nowrap;transform:rotate(-45deg);transform-origin:center}.historyHead{display:flex;align-items:center;justify-content:space-between;gap:12px}.judoHistoryCard{grid-column:1/-1}.historyRow{display:grid;grid-template-columns:100px 1fr auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #e7edf3}.historyRow time{font-weight:700;color:#123c69}.historyRow small{display:block;color:#617286;margin-top:3px}.historyForm{margin-top:16px;padding-top:16px;border-top:1px solid #dce5ee}
@media(max-width:760px){.statsSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.statsGrid{grid-template-columns:1fr}.statsCard.span2{grid-column:auto}.statBarRow{grid-template-columns:90px 1fr 34px}.historyRow{grid-template-columns:82px 1fr}.historyRow button{grid-column:2}.statsToolbar label{min-width:0;flex:1 1 130px}}


.proAppearanceGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.proColorGrid{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px}.proColorGrid label{display:grid;gap:7px;font-size:.85rem;font-weight:700}.proColorGrid input[type=color]{width:100%;height:42px;border:1px solid #dbe6ef;border-radius:10px;padding:4px;background:#fff}.proPreviewCard{margin-top:16px}.proPreviewHead{display:flex;justify-content:space-between;gap:16px;align-items:center}.proDeviceSwitch{display:flex;gap:6px;padding:4px;background:#eef4f8;border-radius:12px}.proDeviceSwitch button{background:transparent;color:#31516d;padding:7px 11px;border-radius:9px}.proDeviceSwitch button.active{background:#fff;color:#0c2947;box-shadow:0 2px 8px #163b5d18}.proPagePreviewFrame{margin:16px auto 0;transition:max-width .2s ease;width:100%}.proPagePreviewFrame.desktop{max-width:100%}.proPagePreviewFrame.tablet{max-width:760px}.proPagePreviewFrame.mobile{max-width:390px}.proPagePreview{--page-bg:#fff;--page-text:#173a5e;--page-title:#0c2947;--page-accent:#2f7fc1;--page-card:#fff;--page-border:#dbe6ef;--page-radius:12px;background:var(--page-bg);color:var(--page-text);border:1px solid var(--page-border);border-radius:var(--page-radius);padding:24px;min-height:220px;transition:.2s}.proPagePreview h2{color:var(--page-title);margin:.25rem 0 1rem}.proPreviewKicker{color:var(--page-accent);font-weight:800;font-size:.72rem;letter-spacing:.12em}.proPreviewSample{margin-top:20px;padding:16px;border:1px solid var(--page-border);border-radius:var(--page-radius);background:var(--page-card);display:flex;align-items:center;justify-content:space-between;gap:12px}.proPreviewSample button{background:var(--page-accent)}.proStyleActions{display:flex;justify-content:flex-end;margin-top:12px}.pageIconPicker{max-height:178px;overflow:auto;align-content:flex-start}.pageIconPicker button{min-width:40px;min-height:40px;font-size:1.15rem}.customPagePanel,.contentblock[data-page-width]{background:var(--page-bg,#fff);color:var(--page-text,inherit);border-color:var(--page-border,#dbe6ef)}.customPagePanel h2,.contentblock[data-page-width] h2{color:var(--page-title,inherit)}.customPagePanel a,.managedSystemIntro a{color:var(--page-accent,#2f7fc1)}.customPagePanel[data-page-width="1200"]>*{max-width:1200px;margin-left:auto;margin-right:auto}.customPagePanel[data-page-width="1000"]>*{max-width:1000px;margin-left:auto;margin-right:auto}.customPagePanel[data-page-width="800"]>*{max-width:800px;margin-left:auto;margin-right:auto}.customPagePanel[data-page-spacing="compact"]{padding:14px}.customPagePanel[data-page-spacing="spacious"]{padding:32px}.customPagePanel[data-page-shadow="soft"]{box-shadow:0 10px 28px #173a5e12}.customPagePanel[data-page-shadow="strong"]{box-shadow:0 14px 40px #173a5e26}
@media(max-width:820px){.proAppearanceGrid{grid-template-columns:1fr}.proColorGrid{grid-template-columns:repeat(2,minmax(110px,1fr))}.proPreviewHead{align-items:flex-start;flex-direction:column}.proDeviceSwitch{width:100%;overflow:auto}.proDeviceSwitch button{flex:1}.pageIconPicker{max-height:220px}}

.navGroupToggle{border-color:color-mix(in srgb,var(--nav-group-color,#173a5e) 20%,transparent)} .navGroup.open>.navGroupToggle .navGroupIcon{color:var(--nav-group-color,#173a5e)} .groupManageActions{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}



.managedPageStyled{background:var(--page-bg,#fff)!important;color:var(--page-text,inherit);border-color:var(--page-border,#dbe6ef)!important;border-radius:var(--page-radius,12px)}
.managedPageStyled h1,.managedPageStyled h2,.managedPageStyled h3,.managedPageStyled h4,.managedPageStyled h5{color:var(--page-title,inherit)}
.managedPageStyled a{color:var(--page-accent,#2f7fc1)}
.managedPageStyled[data-page-width="1200"]>*{max-width:1200px;margin-left:auto;margin-right:auto}
.managedPageStyled[data-page-width="1000"]>*{max-width:1000px;margin-left:auto;margin-right:auto}
.managedPageStyled[data-page-width="800"]>*{max-width:800px;margin-left:auto;margin-right:auto}
.managedPageStyled[data-page-spacing="compact"]{padding:14px!important}
.managedPageStyled[data-page-spacing="normal"]{padding:22px!important}
.managedPageStyled[data-page-spacing="spacious"]{padding:32px!important}
.managedPageStyled[data-page-shadow="none"]{box-shadow:none!important}
.managedPageStyled[data-page-shadow="soft"]{box-shadow:0 10px 28px #173a5e12!important}
.managedPageStyled[data-page-shadow="strong"]{box-shadow:0 14px 40px #173a5e26!important}


.globalChromeCard{margin-top:16px}.globalChromeCard .grid{margin-top:12px}.pageTabPane[data-page-pane="chrome"] .pageSettingsCard{display:grid;gap:12px}.pageTabPane[data-page-pane="chrome"] input[type=color]{height:42px;width:100%;border:1px solid #dbe6ef;border-radius:10px;padding:4px;background:#fff}.pageTabPane[data-page-pane="chrome"] .check{margin:0}.dashTop,.dashTopBrand,body footer{transition:background-color .18s ease,color .18s ease,opacity .18s ease}.contentblock .kicker{transition:color .18s ease}
@media(max-width:760px){.pageTabPane[data-page-pane="chrome"] .grid{grid-template-columns:1fr}.pageTabs{overflow-x:auto;flex-wrap:nowrap}.pageTabs .pageTab{white-space:nowrap;flex:0 0 auto}}


.extraFunctionLauncher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:6px 0 22px}.extraLaunchButton{display:flex;align-items:center;gap:14px;min-height:92px;padding:17px 18px;text-align:left;border:1px solid #d8e3eb;border-radius:16px;background:#fff;color:#173a5e;box-shadow:0 4px 14px rgba(23,58,94,.06);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.extraLaunchButton:hover,.extraLaunchButton:focus-visible{transform:translateY(-1px);border-color:#9dbbd4;box-shadow:0 8px 22px rgba(23,58,94,.12);background:#f8fbfd}.extraLaunchIcon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:13px;background:#eaf3fa;color:#1764c0;font-size:23px;font-weight:800}.extraLaunchButton>span:last-child{display:grid;gap:4px}.extraLaunchButton b{font-size:15px;color:#173a5e}.extraLaunchButton small{font-size:12px;line-height:1.35;color:#6b7f91;font-weight:500}.extraFunctionCard.extraFocus{outline:3px solid rgba(47,127,193,.18);outline-offset:3px}.buttonLink,.buttonLink:visited{color:#fff!important}.buttonLink:hover,.buttonLink:focus-visible{color:#fff!important}.extraTopicNav{padding-top:2px;border-top:1px solid #e5edf3;padding-bottom:2px}
@media(max-width:1000px){.extraFunctionLauncher{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.extraFunctionLauncher{grid-template-columns:1fr;gap:10px}.extraLaunchButton{min-height:76px;padding:13px 14px}.extraLaunchIcon{width:42px;height:42px;flex-basis:42px;font-size:20px}}


#extraFunctionsPanel .extraFunctionsGrid{display:none}
#extraFunctionsPanel.extraCategoryOpen .extraFunctionsGrid{display:grid}
#extraFunctionsPanel.extraCategoryOpen .extraFunctionLauncher{display:none}
.extraHubHint{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 18px;color:#667b8e;font-size:13px}
.extraHubHint .outline{white-space:nowrap}
.calmHub{grid-template-columns:repeat(2,minmax(0,1fr));max-width:980px}
.calmHub .extraLaunchButton{min-height:104px;box-shadow:none;border-color:#e0e8ef}
.calmHub .extraLaunchButton:hover{box-shadow:0 7px 20px rgba(23,58,94,.08)}
.statsSummary article,.statsCard{box-shadow:none;border-color:#e2e9ef}
.statsSummary article{min-height:92px;display:flex;flex-direction:column;justify-content:center}
.yearLineChart{position:relative;min-height:280px;padding:8px 4px 0}
.yearLineChart svg{display:block;width:100%;height:260px;overflow:visible}
.yearLineChart .gridLine{stroke:#e7edf2;stroke-width:1}
.yearLineChart .axisLabel{fill:#728394;font-size:10px}
.yearLineChart .yearLine{fill:none;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
.yearLineChart .yearPoint{stroke:#fff;stroke-width:2;cursor:pointer}
.yearLegend{display:flex;gap:14px;flex-wrap:wrap;margin:4px 0 10px}
.yearLegend span{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#52687b;font-weight:700}
.yearLegend i{width:18px;height:3px;border-radius:999px;display:inline-block}
.chartEmpty{display:grid;place-items:center;min-height:220px;color:#728394}
@media(max-width:760px){.calmHub{grid-template-columns:1fr}.extraHubHint{align-items:flex-start;flex-direction:column}.yearLineChart{overflow-x:auto}.yearLineChart svg{min-width:640px}.statsSummary article{min-height:82px}}



.functionChoiceGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 18px}.functionChoiceButton{display:flex;align-items:center;gap:13px;min-height:82px;padding:14px 15px;border:1px solid #dce6ed;border-radius:15px;background:#fff;color:#173a5e;text-align:left;box-shadow:none;transition:border-color .15s ease,background .15s ease,transform .15s ease}.functionChoiceButton:hover,.functionChoiceButton:focus-visible{background:#f7fafc;border-color:#a9c1d5;transform:translateY(-1px)}.functionChoiceButton>span:last-child{display:grid;gap:3px;min-width:0}.functionChoiceButton b{font-size:14px;color:#173a5e}.functionChoiceButton small{font-size:12px;line-height:1.35;color:#6c7f90;font-weight:500}.functionChoiceIcon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:#edf4f9;color:#1764c0;font-size:20px;font-weight:800}.pageManagerLauncher{margin-top:4px}.pageManagerLauncher+.pageManagerBody{margin-top:8px}.pageTabs{gap:7px;flex-wrap:wrap}.pageTab{min-height:42px;padding:9px 13px;border-radius:10px}.pageTab.active{box-shadow:none}.pageEditorFooter .actions{flex-wrap:wrap}.calmHub,.pageManageCard,.extraFunctionCard{scroll-margin-top:18px}
@media(max-width:900px){.functionChoiceGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.functionChoiceGrid{grid-template-columns:1fr;gap:9px}.functionChoiceButton{min-height:70px;padding:12px 13px}.functionChoiceIcon{width:40px;height:40px;flex-basis:40px}.pageTabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.pageTab{width:100%}}


.pageStudioIntro{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;margin:18px 0;background:linear-gradient(135deg,#f8fbff,#eef5fb);border:1px solid #dce8f2;border-radius:18px}.pageStudioIntro h4{margin:4px 0 6px;font-size:20px}.pageStudioIntro p{margin:0;color:#64748b}.pageStudioEyebrow{font-size:11px;font-weight:800;letter-spacing:.14em;color:#2f7fc1}.navigationGroupOverview{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:0 0 18px}.navGroupStudioButton{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;text-align:left;padding:15px 16px;border:1px solid #dce6ef;background:#fff;color:#173a5e;border-radius:14px;box-shadow:0 5px 18px rgba(15,42,68,.04)}.navGroupStudioButton:hover{border-color:#9fc4e4;background:#f8fbff}.navGroupStudioIcon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#edf5fc;font-size:21px}.navGroupStudioButton b,.navGroupStudioButton small{display:block}.navGroupStudioButton small{margin-top:3px;color:#738398;font-weight:500}.pageEditorSteps{display:flex;gap:8px;padding:14px 18px;border-bottom:1px solid #e4edf4;background:#fbfdff;overflow:auto}.pageEditorSteps span{white-space:nowrap;font-size:12px;font-weight:700;color:#8a99aa;padding:7px 10px;border-radius:999px}.pageEditorSteps span.active{color:#145da0;background:#eaf4fd}.pageEditorSteps span.done{color:#2f7b59;background:#edf8f2}
.beltPageHero{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px}.beltPageHero h2{margin:3px 0 5px}.beltPageHero p{margin:0;color:#64748b}.beltPageFilters{display:flex;gap:12px;flex-wrap:wrap}.beltPageFilters label{min-width:170px}.beltPageSummary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}.beltPageSummary article{background:#fff;border:1px solid #dfe9f1;border-radius:16px;padding:18px 20px;box-shadow:0 8px 24px rgba(17,45,72,.05)}.beltPageSummary b{display:block;font-size:28px;color:#0c2947}.beltPageSummary span{color:#6b7b8e}.beltOverviewCard,.beltDetailPanel{background:#fff;border:1px solid #dfe9f1;border-radius:18px;padding:20px;box-shadow:0 8px 28px rgba(17,45,72,.05)}.beltOverviewBars{display:grid;gap:9px;margin-top:14px}.beltOverviewRow{display:grid;grid-template-columns:170px minmax(120px,1fr) 44px 48px;align-items:center;gap:12px;width:100%;padding:9px 10px;border:1px solid transparent;background:transparent;color:#173a5e;text-align:left;border-radius:12px}.beltOverviewRow:hover,.beltOverviewRow.active{background:#f7fbff;border-color:#d9e8f4}.beltOverviewName{display:flex;align-items:center;gap:10px}.beltOverviewTrack{height:18px;background:#edf2f6;border-radius:6px;overflow:hidden}.beltOverviewTrack i{display:block;height:100%;border-radius:6px;min-width:0}.beltOverviewRow strong{text-align:right}.beltOverviewRow small{color:#718096}.beltDetailPanel{margin-top:16px;border-color:#e6d8a1;background:linear-gradient(180deg,#fffdf6,#fff)}.beltDetailHead{display:flex;align-items:center;justify-content:space-between;gap:16px}.beltDetailHead>div{display:flex;align-items:center;gap:14px}.beltDetailHead h3{margin:0}.beltDetailHead p{margin:3px 0 0}.beltStripeSummary{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:18px 0}.beltStripeSummary article{padding:14px;text-align:center;border:1px solid #e5eaf0;border-radius:13px;background:#fff}.beltStripeSummary span,.beltStripeSummary small{display:block;color:#6b7b8e}.beltStripeSummary b{display:block;font-size:24px;margin:4px 0;color:#0c2947}.beltMemberTableWrap{border:1px solid #e2eaf1;border-radius:14px;overflow:hidden;background:#fff}.beltMemberTableHead{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;background:#f8fbfd}.beltMemberTableHead h4{margin:0}.beltMemberTableHead input{max-width:260px}.beltMemberList{display:grid}.beltMemberRow{display:grid;grid-template-columns:1fr 220px 90px;align-items:center;gap:12px;padding:12px 16px;border:0;border-top:1px solid #edf1f4;background:#fff;color:#173a5e;text-align:left;border-radius:0}.beltMemberRow:hover{background:#f8fbff}.beltMemberRow span{display:flex;align-items:center;gap:10px}.beltMemberRow span:first-child{display:block}.beltMemberRow b,.beltMemberRow small{display:block}.beltMemberRow small{color:#748497;font-weight:500}.beltMemberOpen{justify-content:flex-end;color:#2f7fc1;font-weight:700}.beltPageMini{transform:scale(.82);transform-origin:left center}.beltPageHeroVisual{transform:scale(1.15)}
@media(max-width:800px){.pageStudioIntro,.beltPageHero{align-items:stretch;flex-direction:column}.pageStudioIntro button{width:100%}.beltPageSummary{grid-template-columns:1fr}.beltPageFilters{display:grid;grid-template-columns:1fr;width:100%}.beltPageFilters label{min-width:0}.beltOverviewRow{grid-template-columns:125px 1fr 34px}.beltOverviewRow small{display:none}.beltMemberRow{grid-template-columns:1fr auto}.beltMemberOpen{display:none!important}.beltMemberTableHead{align-items:stretch;flex-direction:column}.beltMemberTableHead input{max-width:none;width:100%}}



.onlineUsersFooter{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:8px;font-size:.82rem;line-height:1.35}.onlineUsersFooter[hidden]{display:none!important}.onlineDot{width:8px;height:8px;border-radius:50%;background:#35b86b;box-shadow:0 0 0 3px rgba(53,184,107,.14)}.onlineNames{opacity:.88}.loginHistoryCard{margin-top:18px}.loginHistoryHead{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}.loginHistoryFilters{display:flex;gap:8px;align-items:center}.loginHistoryFilters select{min-width:160px}.loginHistoryRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:13px 0;border-bottom:1px solid #e6edf3}.loginHistoryRow:last-child{border-bottom:0}.loginHistoryRow>div{display:flex;flex-direction:column;gap:3px}.loginHistoryRow>div:last-child{text-align:right}.loginHistoryRow small,.loginHistoryRow span{color:#687b8e;font-size:.8rem}@media(max-width:700px){.onlineNames{display:none}.loginHistoryHead{flex-direction:column}.loginHistoryFilters{width:100%;flex-wrap:wrap}.loginHistoryFilters select{flex:1;min-width:0}.loginHistoryRow{grid-template-columns:1fr}.loginHistoryRow>div:last-child{text-align:left}}


:root{--crm-bg:#f5f8fb;--crm-card:#fff;--crm-line:#e3eaf1;--crm-text:#173a5e;--crm-muted:#6c7f91;--crm-accent:#2f7fc1;--crm-radius:14px}
body:not(.loginMode){background:var(--crm-bg)}
.contentblock,.accessCard,.dashboardCard{border-color:var(--crm-line);box-shadow:0 5px 18px rgba(25,55,85,.045);border-radius:var(--crm-radius)}
.actions{gap:10px}.actions button,button{min-height:42px}.muted,small{line-height:1.45}
.functionChoiceGrid{gap:14px}.functionChoiceButton{min-height:92px;border:1px solid var(--crm-line);background:var(--crm-card);box-shadow:none;border-radius:14px;padding:18px}.functionChoiceButton:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(25,55,85,.07)}


.pageManageCard{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
.pageManagerHead,.pageStudioIntro{background:#fff;border:1px solid var(--crm-line);border-radius:16px;padding:20px 22px;margin-bottom:14px;box-shadow:0 4px 14px rgba(25,55,85,.035)}
.pageStudioIntro{display:flex;align-items:center;justify-content:space-between;gap:20px}.pageStudioIntro h4{margin:4px 0 5px}.pageStudioIntro p{margin:0;color:var(--crm-muted)}
.pageManagerGrid{display:grid;grid-template-columns:245px minmax(0,1fr);gap:16px;align-items:start}
.pageManagerSidebar{position:sticky;top:12px;background:#fff;border:1px solid var(--crm-line);border-radius:16px;padding:12px;max-height:76vh;overflow:auto}
.pageEditor{background:#fff;border:1px solid var(--crm-line);border-radius:16px;padding:0;overflow:hidden;box-shadow:0 5px 18px rgba(25,55,85,.04)}
.pageEditorHead{padding:20px 22px;border-bottom:1px solid var(--crm-line);background:#fff}
.pageEditorSteps{display:none!important}
.pageTabs{display:flex;gap:4px;padding:10px 14px;border-bottom:1px solid var(--crm-line);background:#f9fbfd;overflow-x:auto;scrollbar-width:thin}
.pageTab{border:0!important;background:transparent!important;color:var(--crm-muted)!important;border-radius:9px!important;padding:10px 13px!important;white-space:nowrap;box-shadow:none!important}
.pageTab.active{background:#eaf3fb!important;color:#145b91!important;font-weight:700}
.pageTabPane{padding:22px;max-width:1100px;margin:0 auto}.pageTabPane:not(.active){display:none!important}
.pageSettingsGrid,.pageInfoGrid,.proAppearanceGrid{gap:16px}.pageSettingsCard{border:1px solid var(--crm-line)!important;border-radius:13px!important;box-shadow:none!important;background:#fff!important;padding:18px!important}.pageSettingsCard h5{margin-top:0;color:#173a5e;font-size:15px}
.pageEditorFooter,.pageManagerActions{position:sticky;bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-top:1px solid var(--crm-line);padding:13px 20px;z-index:4}
.managedPageRow{border-radius:10px;border:1px solid transparent}.managedPageRow:hover{background:#f5f9fc;border-color:var(--crm-line)}
.navigationGroupOverview{gap:10px}.navGroupStudioButton{border-color:var(--crm-line)!important;box-shadow:none!important}


#onlineUsersFooter{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:12px;opacity:.94}.onlineDot{width:8px;height:8px;border-radius:50%;background:#36a269;box-shadow:0 0 0 3px rgba(54,162,105,.12)}.onlineNames{opacity:.82}

@media(max-width:900px){.pageManagerGrid{grid-template-columns:1fr}.pageManagerSidebar{position:static;max-height:300px}.pageTabPane{padding:16px}.pageManagerHead,.pageStudioIntro{padding:16px}.pageStudioIntro{align-items:flex-start;flex-direction:column}.functionChoiceGrid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.functionChoiceGrid{grid-template-columns:1fr}.pageManagerTools{width:100%}.pageManagerTools input{width:100%}.pageEditorHead{padding:16px}.pageTabs{padding:8px}.pageTab{padding:9px 10px!important}#onlineUsersFooter .onlineNames{display:none}}


.dashAsideFoot{display:grid;gap:7px}.navOnlineUsers{justify-content:flex-start!important;margin-top:0!important;padding-top:7px;border-top:1px solid rgba(255,255,255,.12);font-size:11px!important;color:inherit}.navOnlineUsers .onlineDot{flex:0 0 8px}.navOnlineUsers .onlineNames{opacity:.8}.loginHistoryFilters input[type=search]{min-width:180px}.loginHistoryFilters select{min-width:135px}@media(max-width:700px){.navOnlineUsers .onlineNames{display:none}.loginHistoryFilters input[type=search]{width:100%;min-width:0}.loginHistoryFilters select{flex:1;min-width:120px}}


.onlineDotError{background:#d08a24!important;box-shadow:0 0 0 3px rgba(208,138,36,.14)!important}

.dashboardApp .dashSidebar{background:linear-gradient(180deg,#0b426d 0%,#062f52 55%,#052846 100%);border-right:0;color:#fff}.dashboardApp .dashBrand{background:rgba(255,255,255,.035);border-bottom:1px solid rgba(255,255,255,.08)}.dashboardApp .dashBrand strong,.dashboardApp .dashBrand small,.dashboardApp .dashNav button{color:#fff}.dashboardApp .dashNav button:hover{background:rgba(33,140,232,.18)}.dashboardApp .dashNav button.active{background:linear-gradient(90deg,#0c6bb0,#167fc9);box-shadow:0 8px 22px rgba(0,0,0,.16)}.dashboardApp .dashNav .navIcon{stroke:#fff}.dashboardApp .dashAsideFoot{color:#fff}.dashboardApp .navSponsor{color:rgba(255,255,255,.78)}.dashboardApp .navSponsor strong{color:#fff}
#extraFunctionsPanel.pagesStudioMode{padding:0!important;max-width:none!important;background:#f3f7fb}#extraFunctionsPanel.pagesStudioMode>.membertop,#extraFunctionsPanel.pagesStudioMode>.extraFunctionLauncher,#extraFunctionsPanel.pagesStudioMode>.extraHubHint,#extraFunctionsPanel.pagesStudioMode>.extraTopicNav,#extraFunctionsPanel.pagesStudioMode>.extraFunctionsGrid{display:none!important}.pagesProStudio{display:block;min-height:calc(100vh - 72px);padding:18px;background:#f3f7fb;color:#092653}.pagesProStudio[hidden]{display:none!important}.ppsTopbar{background:#fff;border:1px solid #e2eaf3;border-radius:14px;padding:18px 20px;margin-bottom:14px;display:flex;justify-content:space-between;align-items:flex-end;gap:18px;box-shadow:0 4px 18px rgba(19,54,88,.04)}.ppsCrumb{font-size:13px;color:#5e7593;margin-bottom:15px}.ppsCrumb span{margin:0 10px;color:#9aaabc}.ppsTitle{display:flex;gap:14px;align-items:center}.ppsTitleIcon{width:48px;height:48px;border-radius:11px;background:#eef6ff;color:#0879ef;display:grid;place-items:center;font-size:25px}.ppsTitle h2{font-size:28px;line-height:1.05;margin:0;color:#092653}.ppsTitle p{margin:5px 0 0;color:#6d809b}.ppsTopActions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ppsTopActions button,.ppsDetail button{height:46px;border-radius:8px;border:1px solid #0879ef;background:#0879ef;color:#fff;font-weight:700;padding:0 18px}.ppsTopActions .ppsOutline,.ppsDetail .ppsOutline{background:#fff;color:#0879ef}.ppsSearch{height:46px;min-width:215px;border:1px solid #d7e1ed;border-radius:8px;display:flex;align-items:center;gap:8px;padding:0 12px;color:#68809e;background:#fff}.ppsSearch input{border:0!important;outline:0;box-shadow:none!important;width:100%;padding:0!important}.ppsGrid{display:grid;grid-template-columns:minmax(235px,.82fr) minmax(330px,1.2fr) minmax(360px,1.35fr);gap:12px;align-items:stretch}.ppsPane{background:#fff;border:1px solid #e1e9f2;border-radius:12px;min-width:0;overflow:hidden;box-shadow:0 3px 14px rgba(18,52,86,.035)}.ppsPaneHead{height:58px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8eef5}.ppsPaneHead h3{margin:0;font-size:17px;color:#0a2853}.ppsPaneHead h3 span{font-weight:400;color:#7e91aa}.ppsPaneHead button{border:0;background:none;color:#55708e}.ppsPaneHead select{width:auto;padding:8px 28px 8px 10px;border:1px solid #d7e1ed;border-radius:7px;background:#fff}.ppsTree,.ppsList{height:calc(100vh - 225px);min-height:560px;overflow:auto;padding:8px}.ppsTreeGroup{border-bottom:1px solid #edf1f6;padding:7px 0}.ppsTreeGroupTitle{display:flex;align-items:center;gap:8px;font-weight:800;padding:7px 5px;color:#0a2853}.ppsTreeGroupTitle .chev{color:#0879ef}.ppsTreeItem{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:8px;text-align:left;padding:7px 8px 7px 29px;border-radius:6px;color:#173b68}.ppsTreeItem:hover,.ppsTreeItem.active{background:#e8f3ff;color:#075ca7}.ppsList{padding:10px}.ppsPageCard{width:100%;display:grid;grid-template-columns:86px 1fr auto;gap:12px;align-items:center;border:1px solid #e0e8f1;background:#fff;border-radius:10px;padding:8px;margin-bottom:8px;text-align:left;color:#092653;cursor:pointer}.ppsPageCard:hover{border-color:#9dc9f6}.ppsPageCard.active{border:2px solid #0879ef;background:#f8fbff;padding:7px}.ppsThumb{height:66px;border-radius:7px;background:linear-gradient(135deg,#eaf4ff,#d8e8f8);display:grid;place-items:center;overflow:hidden}.ppsThumb img{width:52px;height:52px;object-fit:contain}.ppsPageText b{display:block;font-size:14px;margin-bottom:2px}.ppsPath{display:block;color:#7186a0;font-size:13px;margin-bottom:7px}.ppsBadges{display:flex;gap:6px;flex-wrap:wrap}.ppsBadge{font-size:11px;border-radius:20px;padding:4px 9px;background:#f0f4f8;border:1px solid #dce5ef;color:#23466d}.ppsBadge.live{background:#dff8e8;border-color:#c6f0d4;color:#09813a}.ppsMore{font-size:18px;color:#0b62ad;padding:6px}.ppsDevices{height:58px;display:flex;align-items:center;justify-content:center;gap:8px;border-bottom:1px solid #e8eef5}.ppsDevices button{border:0;background:transparent;color:#687f9b;padding:10px 16px;border-radius:8px}.ppsDevices button.active{background:#e7f3ff;color:#0879ef;font-weight:700}.ppsHero{margin:10px;border-radius:8px;height:232px;background:linear-gradient(120deg,#1b3146,#0b4d80);display:flex;align-items:center;justify-content:center;gap:22px;color:#fff;overflow:hidden}.ppsHero img{width:105px;height:105px;object-fit:contain;background:rgba(255,255,255,.9);border-radius:50%;padding:7px}.ppsHero strong{display:block;font-size:32px;letter-spacing:1px}.ppsHero span{font-size:12px;letter-spacing:2px}.ppsDetail{padding:4px 18px 18px}.ppsDetail h2{margin:7px 0 2px;font-size:22px}.ppsDetailPath{color:#7287a1;margin-bottom:12px}.ppsDetailActions{display:grid;grid-template-columns:1fr 1.35fr 46px;gap:8px;margin:14px 0 18px}.ppsDetailActions button{padding:0 10px}.ppsMeta{border-top:1px solid #e5ebf2;padding-top:12px}.ppsMetaRow{display:grid;grid-template-columns:135px 1fr;gap:10px;padding:7px 0;font-size:13px}.ppsMetaRow span:first-child{color:#607994}.ppsDelete{width:100%;margin-top:18px!important;background:#fff1f2!important;border-color:#ffd2d7!important;color:#df2538!important}.ppsEmpty{padding:25px;color:#7186a0;text-align:center}
@media(max-width:1180px){.ppsGrid{grid-template-columns:250px 1fr}.ppsDetailPane{grid-column:1/-1}.ppsTree,.ppsList{height:520px;min-height:0}.ppsHero{height:190px}.ppsTopbar{align-items:flex-start;flex-direction:column}.ppsTopActions{width:100%}}
@media(max-width:760px){.pagesProStudio{padding:10px}.ppsGrid{display:block}.ppsTreePane{display:none}.ppsListPane,.ppsDetailPane{margin-bottom:10px}.ppsList{height:auto;max-height:500px}.ppsTopActions{display:grid;grid-template-columns:1fr 1fr}.ppsSearch{grid-column:1/-1;min-width:0}.ppsTopActions button{padding:0 10px}.ppsTitle h2{font-size:23px}.ppsPageCard{grid-template-columns:68px 1fr auto}.ppsThumb{height:56px}.ppsHero{height:165px}.ppsHero img{width:75px;height:75px}.ppsHero strong{font-size:23px}.ppsDetailActions{grid-template-columns:1fr}.ppsMetaRow{grid-template-columns:105px 1fr}}


body.pagesStudioActive .dashWorkspace{background:#f4f8fc}
body.pagesStudioActive .dashTop{background:#fff;border-bottom:1px solid #e5edf6;box-shadow:none}
body.pagesStudioActive .dashAside{background:linear-gradient(180deg,#083f6a 0,#052f54 38%,#062846 100%);border-right:0;box-shadow:6px 0 24px rgba(7,40,72,.08)}
body.pagesStudioActive .dashAside .brand{background:rgba(255,255,255,.035);border-bottom:1px solid rgba(255,255,255,.08)}
body.pagesStudioActive .dashNav button,body.pagesStudioActive .navGroupToggle{color:#fff}
body.pagesStudioActive #goPagesStudio{background:linear-gradient(90deg,#0879ef,#1166b4)!important;color:#fff!important;border-radius:8px!important}
body.pagesStudioActive .navSponsor{color:rgba(255,255,255,.82)}
body.pagesStudioActive .navSponsor strong{color:#fff}
body.pagesStudioActive #extraFunctionsPanel.pagesStudioMode{background:#f4f8fc!important}
body.pagesStudioActive .pagesProStudio{padding:14px 16px 20px!important;max-width:1600px;margin:0 auto}
body.pagesStudioActive .ppsTopbar{border-color:#e1eaf4;box-shadow:0 5px 20px rgba(16,54,91,.055)}
body.pagesStudioActive .ppsPane{box-shadow:0 5px 18px rgba(16,54,91,.045)}
body.pagesStudioActive .ppsPageCard{transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
body.pagesStudioActive .ppsPageCard:hover{box-shadow:0 6px 18px rgba(8,121,239,.08);transform:translateY(-1px)}
@media(max-width:1250px){body.pagesStudioActive .ppsGrid{grid-template-columns:minmax(220px,.85fr) minmax(330px,1.15fr)}body.pagesStudioActive .ppsDetailPane{grid-column:1/-1}.ppsTree,.ppsList{height:520px;min-height:0}}
@media(max-width:780px){body.pagesStudioActive .pagesProStudio{padding:8px}.ppsTopbar{align-items:stretch;flex-direction:column}.ppsTopActions{display:grid;grid-template-columns:1fr 1fr}.ppsSearch{grid-column:1/-1;min-width:0}.ppsGrid{display:block}.ppsTreePane{display:none}.ppsListPane,.ppsDetailPane{margin-bottom:10px}.ppsList{height:auto;min-height:0;max-height:none}.ppsPageCard{grid-template-columns:66px 1fr auto}.ppsThumb{height:56px}.ppsHero{height:180px}.ppsDetailActions{grid-template-columns:1fr}.ppsMetaRow{grid-template-columns:110px 1fr}}


/* V12.105 high-end global shell */
:root{--pro-navy:#072f53;--pro-navy2:#0b3f6b;--pro-blue:#0877ef;--pro-bg:#f3f7fb;--pro-line:#dce6f0;--pro-text:#0b2447;--pro-muted:#6e819b;--pro-card:#fff}
body.dashboardMode{background:var(--pro-bg)!important;color:var(--pro-text)}
.dashboardMode .dashAside{width:278px;background:linear-gradient(180deg,#0b416e 0%,#082f53 45%,#061f39 100%)!important;border:0!important;box-shadow:8px 0 30px rgba(10,44,75,.08);padding:0 10px!important}
.dashboardMode .dashBrand{margin:0 -10px 16px;padding:20px 24px!important;min-height:82px;background:rgba(19,94,149,.26)!important;border:0!important;border-radius:0!important}
.dashboardMode .dashBrand img{width:52px!important;height:52px!important}.dashboardMode .dashBrand strong{color:#fff!important;font-size:21px!important}.dashboardMode .dashBrand span{color:#cfe1f1!important}
.dashboardMode .dashNav{padding:4px 0}.dashboardMode .dashNav button,.dashboardMode .dashNav .navGroupTitle{min-height:52px!important;border-radius:9px!important;color:#fff!important;background:transparent!important;border:0!important;font-weight:600!important;margin:2px 0!important;padding:0 16px!important}.dashboardMode .dashNav button:hover{background:rgba(255,255,255,.08)!important}.dashboardMode .dashNav button.active{background:linear-gradient(90deg,#126eb4,#1b80ca)!important;box-shadow:0 8px 18px rgba(0,80,150,.22)!important}.dashboardMode .dashNav svg{stroke:#fff!important}.dashboardMode .dashAsideFoot{border-top:1px solid rgba(255,255,255,.16)!important;color:#fff!important;padding:18px 16px 16px!important}.dashboardMode .navSponsor{color:#dbeafa!important;text-align:left!important}.dashboardMode .navSponsor strong{display:block;color:#fff!important;font-size:19px;text-transform:uppercase}.dashboardMode .navOnlineUsers{color:#d8e9f6!important}
.dashboardMode .dashWorkspace{margin-left:278px!important;background:var(--pro-bg)!important;min-height:100vh}.dashboardMode .dashTop{height:72px!important;background:rgba(255,255,255,.88)!important;backdrop-filter:blur(14px);border-bottom:1px solid #e3ebf3!important;padding:0 30px!important;position:sticky;top:0;z-index:35}.dashboardMode .dashTopBrand{display:flex;align-items:center;gap:10px;color:#7487a0!important;font-size:14px!important}.dashboardMode .dashTopBrand strong{color:#0c2c55;font-weight:700}.topCrumbSep{color:#9eb0c4}.dashboardMode .dashAccount{position:relative;display:flex;align-items:center;gap:11px}.topBell{position:relative;border:0!important;background:transparent!important;color:#153b61!important;font-size:23px!important;padding:8px!important}.topBell i{position:absolute;right:7px;top:5px;width:9px;height:9px;border-radius:50%;background:#ef3340;border:2px solid #fff}.topProfileAvatar{width:42px;height:42px;border-radius:50%;background:#174f7d;color:#fff;display:grid;place-items:center;font-weight:700;overflow:hidden}.topProfileAvatar img{width:100%;height:100%;object-fit:cover}.topProfileText{display:flex;flex-direction:column;line-height:1.1}.topProfileText>span{font-size:11px;color:#71839b}.topProfileText>b{font-size:14px;color:#0b2749;margin:2px 0}.topProfileText small{font-size:12px;color:#637a97!important;background:none!important;padding:0!important;border:0!important}.profileMenuToggle{border:0!important;background:transparent!important;color:#1c456d!important;font-size:18px!important;padding:8px!important}.profileMenu{position:absolute;right:0;top:54px;width:180px;background:#fff;border:1px solid var(--pro-line);border-radius:12px;box-shadow:0 18px 45px rgba(14,43,73,.16);padding:7px;z-index:80}.profileMenu button{width:100%;text-align:left;background:transparent!important;color:#153756!important;border:0!important;padding:11px 12px!important;border-radius:8px!important}.profileMenu button:hover{background:#eef6ff!important}.profileMenu .profileLogout{color:#c73535!important}
.dashboardMode .dashHome,.dashboardMode .contentblock{max-width:none!important;margin:0!important;padding:28px 30px!important}.dashboardMode .dashHeading{display:flex;align-items:center;justify-content:space-between;gap:18px}.dashboardLayoutButton{background:#fff!important;color:#0877ef!important;border:1px solid #87baff!important;border-radius:9px!important;padding:12px 18px!important;font-weight:700!important}
/* Page studio: exact three-column workspace */
.dashboardMode.pagesStudioActive .dashWorkspace{background:#f2f6fa!important}.dashboardMode.pagesStudioActive .dashTop{display:flex!important}.dashboardMode.pagesStudioActive #extraFunctionsPanel{padding:18px 16px 28px!important}.dashboardMode.pagesStudioActive #extraFunctionsPanel>*:not(#pagesProStudio){display:none!important}.dashboardMode.pagesStudioActive #pagesProStudio{display:block!important;max-width:none!important}.pagesProStudio{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#09264a}.ppsTopbar{background:#fff!important;border:1px solid #e0e8f0!important;border-radius:14px!important;box-shadow:0 3px 16px rgba(23,58,94,.05)!important;padding:18px 20px!important;margin-bottom:14px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important}.ppsCrumb{display:none!important}.ppsTitle{display:flex!important;align-items:center!important;gap:16px!important}.ppsTitleIcon{width:48px;height:48px;border-radius:12px;background:#edf6ff;color:#0877ef;display:grid;place-items:center;font-size:25px}.ppsTitle h2{font-size:26px!important;line-height:1.05!important;margin:0 0 5px!important;color:#0a274d!important}.ppsTitle p{margin:0!important;color:#70849d!important}.ppsTopActions{display:flex!important;gap:10px!important;align-items:center!important}.ppsSearch{height:48px!important;width:250px!important;border:1px solid #d6e1ec!important;border-radius:9px!important;background:#fff!important;display:flex!important;align-items:center!important;padding:0 13px!important;color:#6c8098!important}.ppsSearch input{border:0!important;box-shadow:none!important;background:transparent!important;height:auto!important;padding:0 0 0 8px!important}.ppsTopActions button{height:48px!important;border-radius:8px!important;padding:0 18px!important;font-weight:700!important}.ppsTopActions>button:last-child{background:#0877ef!important;color:#fff!important;border-color:#0877ef!important}.ppsOutline{background:#fff!important;color:#0877ef!important;border:1px solid #68a9ff!important}.ppsGrid{display:grid!important;grid-template-columns:minmax(250px,.72fr) minmax(390px,1.08fr) minmax(410px,1.2fr)!important;gap:12px!important;align-items:stretch!important;min-height:calc(100vh - 188px)!important}.ppsPane{background:#fff!important;border:1px solid #dfe8f0!important;border-radius:12px!important;box-shadow:0 3px 15px rgba(23,58,94,.035)!important;min-width:0!important;overflow:hidden!important}.ppsPaneHead{height:58px!important;padding:0 14px!important;border-bottom:1px solid #edf1f5!important;display:flex!important;align-items:center!important;justify-content:space-between!important}.ppsPaneHead h3{font-size:17px!important;margin:0!important}.ppsPaneHead select{border:1px solid #d6e1ec!important;border-radius:8px!important;padding:9px 12px!important}.ppsTree{padding:10px 13px!important;max-height:calc(100vh - 258px)!important;overflow:auto!important}.ppsTreeGroup{border-bottom:1px solid #e7edf3!important;padding:4px 0 10px!important;margin-bottom:5px!important}.ppsTreeGroupTitle{font-weight:800!important;color:#0d2a50!important;padding:8px 5px!important;display:flex;gap:9px}.ppsTreeItem{width:100%!important;display:grid!important;grid-template-columns:18px 18px 1fr!important;gap:5px!important;align-items:center!important;text-align:left!important;background:transparent!important;color:#15375d!important;border:0!important;border-radius:7px!important;padding:7px 8px 7px 26px!important;font-weight:500!important}.ppsTreeItem.active{background:#ddecfb!important;color:#0b315b!important}.ppsList{padding:10px!important;max-height:calc(100vh - 258px)!important;overflow:auto!important}.ppsPageCard{width:100%!important;display:grid!important;grid-template-columns:82px 1fr 28px!important;gap:12px!important;align-items:center!important;background:#fff!important;color:#0d2b50!important;border:1px solid #e1e8ef!important;border-radius:10px!important;padding:9px!important;margin-bottom:8px!important;text-align:left!important;box-shadow:0 2px 8px rgba(20,55,88,.025)!important}.ppsPageCard.active{border-color:#1684ff!important;background:linear-gradient(90deg,#fff,#f1f8ff)!important;box-shadow:0 0 0 1px rgba(22,132,255,.12)!important}.ppsThumb{width:82px!important;height:62px!important;border-radius:7px!important;overflow:hidden!important;background:#e9f1f7!important}.ppsThumb img{width:100%!important;height:100%!important;object-fit:cover!important}.ppsPageText{display:flex!important;flex-direction:column!important;gap:2px!important;min-width:0!important}.ppsPageText>b{font-size:14px!important}.ppsPath{font-size:13px!important;color:#6c83a0!important}.ppsBadges{display:flex!important;gap:7px!important;margin-top:5px!important}.ppsBadge{display:inline-flex!important;align-items:center!important;padding:4px 11px!important;border-radius:999px!important;background:#f0f4f8!important;border:1px solid #dce5ed!important;color:#24415f!important;font-size:12px!important}.ppsBadge.live{background:#d9f8e5!important;border-color:#c5f0d4!important;color:#18824b!important}.ppsMore{color:#0c4e8c!important;font-weight:800!important}.ppsDetailPane{padding:0 10px 12px!important}.ppsDevices{height:58px!important;display:flex!important;justify-content:center!important;align-items:center!important;gap:8px!important;border-bottom:1px solid #edf1f5!important}.ppsDevices button{border:0!important;background:transparent!important;color:#6a7f98!important;border-radius:8px!important;padding:9px 15px!important}.ppsDevices button.active{background:#e2f1ff!important;color:#0877ef!important;font-weight:700!important}.ppsHero{height:235px!important;margin:10px 0 14px!important;border-radius:9px!important;background:linear-gradient(135deg,#172638,#745747)!important;position:relative!important;overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:center!important}.ppsHero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.14),transparent 35%),linear-gradient(90deg,rgba(4,20,35,.15),rgba(4,20,35,.45))}.ppsHero img{position:relative!important;width:82px!important;height:82px!important;object-fit:contain!important;filter:brightness(0) invert(1)!important}.ppsHero>div{position:relative!important;color:#fff!important;text-align:left!important;margin-left:15px!important}.ppsHero strong{display:block!important;font-size:28px!important}.ppsHero span{font-size:12px!important;letter-spacing:2px!important}.ppsDetail{padding:0 9px!important}.ppsDetail h2{font-size:20px!important;margin:0 0 3px!important}.ppsDetailPath{color:#587697!important;margin-bottom:8px!important}.ppsDetailActions{display:grid!important;grid-template-columns:1fr 1.2fr 48px!important;gap:8px!important;margin:16px 0!important;padding-bottom:16px!important;border-bottom:1px solid #e5ebf1!important}.ppsDetailActions button{height:48px!important;border-radius:8px!important;font-weight:700!important}.ppsDetailActions button:first-child{background:#0877ef!important;border-color:#0877ef!important;color:#fff!important}.ppsMeta{display:grid!important;gap:12px!important}.ppsMetaRow{display:grid!important;grid-template-columns:145px 1fr!important;font-size:13px!important}.ppsMetaRow span{color:#476886!important}.ppsDelete{width:100%!important;margin-top:24px!important;height:50px!important;border:1px solid #ffd0d0!important;background:#fff1f1!important;color:#e02c34!important;border-radius:8px!important;font-weight:700!important}
/* Dashboard layout manager */
.dashboardLayoutModal{position:fixed;inset:0;background:rgba(4,26,47,.52);backdrop-filter:blur(4px);z-index:300;display:grid;place-items:center;padding:24px}.dashboardLayoutModal[hidden]{display:none!important}.dashboardLayoutDialog{width:min(760px,96vw);max-height:88vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 28px 80px rgba(3,26,49,.3);padding:24px}.dashboardLayoutHead{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e5edf4;padding-bottom:18px;margin-bottom:16px}.dashboardLayoutHead h2{margin:3px 0 5px}.dashboardLayoutHead p{margin:0;color:#70839a}.iconClose{width:40px;height:40px;border-radius:9px!important;background:#f2f6fa!important;color:#173a5e!important;border:0!important;font-size:24px!important}.dashboardLayoutList{display:grid;gap:9px}.dashboardLayoutRow{display:grid;grid-template-columns:28px 1fr auto 150px 82px;align-items:center;gap:12px;border:1px solid #dce6ef;border-radius:10px;padding:12px;background:#fff}.dashboardLayoutRow .dragHandle{cursor:grab;color:#7f94aa;font-size:20px}.dashboardLayoutRow b{display:block}.dashboardLayoutRow small{display:block;color:#7c8fa3;margin-top:2px}.dashVisibility{display:flex!important;align-items:center!important;gap:6px!important}.dashboardLayoutRow select{height:40px!important}.dashMove{display:flex;gap:4px}.dashMove button{width:36px;height:36px;padding:0!important;background:#eef5fb!important;color:#164f7e!important;border:0!important}.dashboardLayoutActions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px;padding-top:18px;border-top:1px solid #e5edf4}.dashSizeFull{grid-column:1/-1}.dashSizeWide{grid-column:span 2}.modalOpen{overflow:hidden}
@media(max-width:1100px){.dashboardMode .dashAside{width:250px}.dashboardMode .dashWorkspace{margin-left:250px!important}.ppsGrid{grid-template-columns:270px 1fr!important}.ppsDetailPane{grid-column:1/-1!important}.ppsDetailPane .ppsHero{max-width:620px;margin-left:auto!important;margin-right:auto!important}.ppsTopbar{align-items:flex-start!important;flex-direction:column!important}.ppsTopActions{width:100%!important}.ppsSearch{flex:1!important;width:auto!important}}
@media(max-width:760px){.dashboardMode .dashWorkspace{margin-left:0!important}.dashboardMode .dashTop{padding:0 12px!important}.topProfileText{display:none}.dashboardMode .dashHome,.dashboardMode .contentblock{padding:16px!important}.ppsGrid{display:block!important}.ppsTreePane{display:none!important}.ppsListPane,.ppsDetailPane{margin-bottom:12px!important}.ppsTopActions{flex-wrap:wrap!important}.ppsSearch{width:100%!important;flex-basis:100%!important}.ppsTopActions button{flex:1!important}.ppsDetailActions{grid-template-columns:1fr!important}.dashboardLayoutRow{grid-template-columns:24px 1fr 90px}.dashboardLayoutRow .dashVisibility{grid-column:2}.dashboardLayoutRow select{grid-column:3;grid-row:1/3}.dashMove{grid-column:3}.dashboardLayoutActions{flex-direction:column}.dashboardLayoutActions button{width:100%}}

.dashboardUserHidden{display:none!important}

/* V12.107 shell refinement */
@media (min-width:1251px){
  .dashboardMode .dashShell{display:grid!important;grid-template-columns:258px minmax(0,1fr)!important;min-height:100vh!important}
  .dashboardMode .dashSidebar{position:sticky!important;top:0!important;width:258px!important;height:100vh!important;padding:0 10px!important;overflow-y:auto!important;z-index:45!important}
  .dashboardMode .dashWorkspace{margin-left:0!important;width:auto!important;min-width:0!important}
  .dashboardMode .dashHome,.dashboardMode .contentblock{width:100%!important;max-width:none!important;margin:0!important;padding:24px!important}
  .dashboardMode.pagesStudioActive #extraFunctionsPanel{width:100%!important;max-width:none!important;margin:0!important;padding:16px 18px 24px!important}
}
.dashboardMode .dashTop{padding-left:24px!important;padding-right:24px!important}.dashboardMode .dashTopBrand{text-transform:none!important;letter-spacing:0!important}
.dashboardMode .dashBrand{padding:18px 16px!important}.dashboardMode .dashBrand strong{font-size:19px!important}.dashboardMode .dashNav button{min-height:48px!important}
.dashboardMode .dashHeading{margin-bottom:18px}.dashboardMode .dashHeading h1{font-size:34px!important}.dashboardMode .dashHeading p{margin-bottom:0!important}
.dashboardMode .dashStats{gap:14px!important}.dashboardMode .dashStats article{min-height:112px!important;padding:18px 20px!important;border-radius:13px!important}
.dashAccount{position:relative}.profileIdentity{display:flex!important;align-items:center!important;gap:10px!important;border:0!important;background:transparent!important;color:inherit!important;padding:4px 6px!important;border-radius:10px!important;min-height:52px!important}.profileIdentity:hover{background:#f1f6fb!important}.profileChevron{color:#244d73;font-size:18px;margin-left:2px}.profileMenu{top:62px!important;width:205px!important}.notificationWrap{position:relative}.topBell{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;padding:9px!important;border-radius:10px!important}.topBell:hover{background:#eef5fb!important}.topBell svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.topBell i{right:7px!important;top:6px!important}.notificationPanel{position:absolute;right:0;top:52px;width:min(390px,calc(100vw - 28px));background:#fff;border:1px solid #dce6f0;border-radius:14px;box-shadow:0 20px 55px rgba(10,43,75,.18);z-index:95;overflow:hidden}.notificationPanel[hidden]{display:none!important}.notificationHead{display:flex;align-items:center;justify-content:space-between;padding:16px 17px;border-bottom:1px solid #e8eef4}.notificationHead>div{display:grid;gap:3px}.notificationHead b{font-size:16px;color:#0b2b50}.notificationHead span{font-size:12px;color:#71859c}.notificationHead button{width:34px;height:34px;padding:0!important;border:0!important;border-radius:8px!important;background:#f2f6fa!important;color:#365675!important;font-size:21px!important}.notificationList{max-height:390px;overflow:auto}.notificationItem{width:100%;display:grid;grid-template-columns:38px 1fr;gap:11px;text-align:left;border:0!important;border-bottom:1px solid #edf1f5!important;background:#fff!important;color:#173754!important;padding:13px 16px!important}.notificationItem:hover{background:#f6faff!important}.notificationIcon{width:36px;height:36px;border-radius:10px;background:#eaf4ff;color:#0877ef;display:grid;place-items:center;font-weight:800}.notificationItem b{display:block;font-size:13px;margin-bottom:3px}.notificationItem span{display:block;font-size:12px;color:#6d8198;line-height:1.35}.notificationEmpty{padding:26px 18px;margin:0;color:#71859c;text-align:center}.notificationAll{width:100%;border:0!important;border-top:1px solid #e8eef4!important;background:#fff!important;color:#0877ef!important;padding:13px!important;font-weight:700!important}.notificationAll:hover{background:#f6faff!important}
@media(max-width:760px){.profileIdentity .topProfileText{display:none!important}.profileIdentity{padding:3px!important}.notificationPanel{position:fixed;right:10px;top:70px}.dashboardMode .dashHome,.dashboardMode .contentblock{padding:14px!important}}

/* V12.108 — rustige navigatie en vaste Pagina's Studio */
.dashboardMode .dashNav button,.dashboardMode .dashNav .navGroupToggle{font-size:14px!important;font-weight:500!important;letter-spacing:0!important;min-height:44px!important;padding:0 14px!important;margin:1px 0!important}
.dashboardMode .dashNav button.active{font-weight:600!important}
.dashboardMode .dashNav .navIcon{width:21px!important;height:21px!important;min-width:21px!important;stroke-width:1.65!important}
.dashboardMode .dashNav{gap:2px!important}
.dashboardMode .dashAsideFoot{padding:11px 14px 10px!important}
.dashboardMode .navSponsor{font-size:9px!important;line-height:1.3!important;margin:0!important;padding:0!important;border:0!important;opacity:.78}
.dashboardMode .navSponsor strong{font-size:11px!important;line-height:1.25!important;margin-top:1px!important;letter-spacing:.02em!important;text-transform:none!important}
.dashboardMode .navOnlineUsers{font-size:9px!important;padding-top:5px!important;margin-top:4px!important}
body.pagesStudioActive #extraFunctionsPanel{margin:0!important;padding:14px 16px 24px!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#f2f6fa!important;max-width:none!important}
body.pagesStudioActive #extraFunctionsPanel > *:not(#pagesProStudio){display:none!important}
body.pagesStudioActive #pagesProStudio{display:block!important;visibility:visible!important;max-width:none!important;margin:0!important}
body.pagesStudioActive .pagesProStudio[hidden]{display:block!important}
@media(min-width:1251px){body.pagesStudioActive .pagesProStudio{padding:0!important}.dashboardMode .dashWorkspace{padding-left:0!important}}


/* V12.109 — shell correcties */
html,body{max-width:100%;overflow-x:hidden!important}
.dashboardMode .dashShell{width:100%!important;max-width:100vw!important;overflow-x:clip!important}
.dashboardMode .dashSidebar{left:0!important;transform:none!important;margin-left:0!important;box-sizing:border-box!important}
.dashboardMode .dashWorkspace{min-width:0!important;max-width:100%!important;overflow-x:hidden!important}
.dashboardMode #profile.contentblock{max-width:none!important;width:100%!important;box-sizing:border-box!important;overflow:hidden!important}
.dashboardMode #profile .membertop{flex-wrap:wrap!important;gap:14px!important}.dashboardMode #profile .membertop>.actions,.dashboardMode #profile .membertop>div:last-child{max-width:100%!important;flex-wrap:wrap!important}
.dashboardMode #profile .profilegrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dashboardMode #profile .info{min-width:0!important}
@media(min-width:1251px){.dashboardMode .dashShell{grid-template-columns:238px minmax(0,1fr)!important}.dashboardMode .dashSidebar{width:238px!important}.dashboardMode .dashHome,.dashboardMode .contentblock{padding-left:20px!important;padding-right:20px!important}}
@media(max-width:1250px) and (min-width:761px){.dashboardMode .dashSidebar{width:220px!important}.dashboardMode .dashWorkspace{margin-left:220px!important;width:calc(100% - 220px)!important}.dashboardMode .dashHome,.dashboardMode .contentblock{padding:18px!important}.dashboardMode #profile .profilegrid{grid-template-columns:1fr!important}}
@media(max-width:760px){.dashboardMode .dashWorkspace{width:100%!important;margin-left:0!important}.dashboardMode #profile .profilegrid{grid-template-columns:1fr!important}.dashboardMode #profile .membertop{align-items:flex-start!important}.dashboardMode #profile .membertop button{max-width:100%!important}}
/* profielfoto bovenaan */
.topProfileAvatar{overflow:hidden!important;border-radius:50%!important}.topProfileAvatar img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
/* wizard */
.pageWizard{position:fixed;inset:0;z-index:500;background:rgba(4,26,47,.52);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px}.pageWizard[hidden]{display:none!important}.pageWizardDialog{width:min(720px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 30px 90px rgba(5,31,56,.3)}.pageWizardHead{display:flex;justify-content:space-between;gap:20px;padding:24px 26px 18px;border-bottom:1px solid #e6edf4}.pageWizardHead small{color:#0877ef;font-weight:700}.pageWizardHead h2{margin:4px 0 4px;font-size:27px}.pageWizardHead p{margin:0;color:#6c8096}.pageWizardHead button{width:40px;height:40px;padding:0!important;border:0!important;background:#f2f6fa!important;color:#173a5e!important;border-radius:9px!important;font-size:24px!important}.pageWizardBody{padding:26px}.pageWizardBody h3{margin:0 0 16px;font-size:21px}.pwChoices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pwChoices label{display:block;cursor:pointer}.pwChoices input{position:absolute;opacity:0;pointer-events:none}.pwChoices span{display:block;border:1px solid #dbe6f0;border-radius:12px;padding:17px;min-height:78px;background:#fff}.pwChoices input:checked+span{border-color:#0877ef;background:#f0f7ff;box-shadow:0 0 0 1px #0877ef inset}.pwChoices b,.pwChoices small{display:block}.pwChoices small{margin-top:4px;color:#6d8197}.pwField{display:grid;gap:8px;font-weight:700}.pwField input,.pwField select{height:50px!important;border-radius:9px!important}.pwHint{color:#6d8197}.pwSummary{padding:18px;border-radius:11px;background:#f3f8fc;color:#315779}.pageWizardActions{display:grid;grid-template-columns:auto 1fr auto auto;gap:9px;padding:18px 26px;border-top:1px solid #e6edf4}.pageWizardActions button{min-width:110px}.pageWizardActions #pageWizardNext{background:#0877ef!important;color:#fff!important;border-color:#0877ef!important}@media(max-width:600px){.pwChoices{grid-template-columns:1fr}.pageWizardActions{grid-template-columns:1fr 1fr}.pageWizardActions span{display:none}.pageWizardActions button{width:100%}}

/* V12.110 rustige visuele pagina-editor */
.simplePageEditor{position:fixed;inset:0;z-index:430;background:#f4f7fb;overflow:auto;color:#173a5e}.simplePageEditor[hidden]{display:none!important}.simpleEditorOpen{overflow:hidden}.speTop{position:sticky;top:0;z-index:4;min-height:78px;background:#fff;border-bottom:1px solid #e1e8f0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 26px}.speTitle{display:flex;align-items:center;gap:14px}.speTitle h2{margin:2px 0 0;font-size:21px}.speTitle small{font-size:12px;color:#07835b;font-weight:800}.speBack{width:40px;height:40px;padding:0!important;border:1px solid #dbe5ee!important;background:#fff!important;color:#173a5e!important;border-radius:10px!important;font-size:20px!important}.speActions{display:flex;gap:8px;flex-wrap:wrap}.speActions button{min-height:40px!important;padding:8px 14px!important}.speDevice{display:flex;justify-content:center;gap:5px;padding:16px 20px 4px}.speDevice button{border:0!important;background:transparent!important;color:#71849a!important;padding:8px 13px!important;border-radius:8px!important}.speDevice button.active{background:#e9f3ff!important;color:#0877ef!important}.speCanvasWrap{padding:14px 24px 70px}.speCanvas{width:min(1100px,100%);min-height:640px;margin:0 auto;background:#fff;border:1px solid #e0e7ef;border-radius:15px;box-shadow:0 12px 36px rgba(23,58,94,.08);padding:clamp(28px,5vw,68px);transition:max-width .2s}.speCanvas[data-device="tablet"]{max-width:760px}.speCanvas[data-device="mobile"]{max-width:390px;padding:24px 18px}.speContent{min-height:430px;outline:0;line-height:1.7;font-size:16px}.speContent h1{font-size:clamp(30px,4vw,48px);line-height:1.12;margin:0 0 22px;color:#143a60}.speContent h2{font-size:28px;margin:32px 0 12px}.speContent h3{font-size:20px}.speContent p{margin:0 0 18px}.speContent:not(.previewMode):focus{box-shadow:0 0 0 2px rgba(8,119,239,.12);border-radius:8px}.speContent.previewMode{pointer-events:none}.speAdd{display:block;margin:34px auto 0!important;background:#fff!important;color:#0877ef!important;border:1px dashed #9fc7ef!important;border-radius:10px!important;padding:10px 18px!important}.speAddMenu{position:fixed;z-index:450;left:50%;bottom:24px;transform:translateX(-50%);display:flex;gap:7px;flex-wrap:wrap;justify-content:center;width:min(760px,calc(100vw - 32px));padding:10px;background:#fff;border:1px solid #dfe7ef;border-radius:13px;box-shadow:0 18px 50px rgba(13,42,70,.18)}.speAddMenu[hidden]{display:none!important}.speAddMenu button{background:#f5f8fb!important;color:#173a5e!important;border:1px solid #e2eaf1!important;padding:9px 13px!important}.spePlaceholder{display:grid;place-items:center;min-height:180px;background:#eef4f8;border:1px dashed #b7c8d7;border-radius:12px;color:#72869a;margin:16px 0}.speTwo{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:24px 0}.speMsg{position:fixed;right:24px;bottom:24px;background:#173a5e;color:#fff;border-radius:9px;padding:10px 14px;box-shadow:0 8px 30px rgba(0,0,0,.15)}.speMsg:empty{display:none}@media(max-width:800px){.speTop{align-items:flex-start;padding:11px 14px}.speActions{justify-content:flex-end}.speActions button{font-size:12px!important;padding:7px 9px!important}.speCanvasWrap{padding:10px 10px 70px}.speCanvas{border-radius:11px}.speTwo{grid-template-columns:1fr}.speTitle h2{font-size:17px}}@media(max-width:560px){.speTop{position:relative;display:block}.speTitle{margin-bottom:10px}.speActions{display:grid;grid-template-columns:1fr 1fr}.speDevice{padding-top:10px}.speCanvas{min-height:520px;padding:24px 17px}.speAddMenu{bottom:10px}}

/* V12.111 calm Pages & Navigation */
body.pagesStudioActive .ppsGrid{grid-template-columns:minmax(220px,.68fr) minmax(360px,1fr) minmax(400px,1.18fr)!important;gap:14px!important}
body.pagesStudioActive .ppsPane{border-color:#e5ebf1!important;box-shadow:0 2px 10px rgba(23,58,94,.025)!important}
body.pagesStudioActive .ppsPaneHead{height:54px!important;padding:0 16px!important}
body.pagesStudioActive .ppsPaneHead h3{font-size:16px!important;font-weight:700!important}
body.pagesStudioActive .ppsTree{padding:8px 12px!important}
body.pagesStudioActive .ppsTreeGroup{border-bottom:1px solid #edf1f5!important;padding:2px 0 7px!important;margin:0!important}
body.pagesStudioActive .ppsTreeGroupTitle{width:100%!important;border:0!important;background:transparent!important;color:#173a5e!important;display:grid!important;grid-template-columns:18px 1fr auto!important;align-items:center!important;text-align:left!important;padding:9px 5px!important;font-size:14px!important;font-weight:650!important}
body.pagesStudioActive .ppsTreeGroupTitle small{font-size:11px!important;font-weight:600!important;color:#8a9bad!important;background:#f3f6f9!important;border-radius:999px!important;padding:2px 7px!important}
body.pagesStudioActive .ppsTreeChildren{padding:0 0 3px 19px!important}
body.pagesStudioActive .ppsTreeItem{display:grid!important;grid-template-columns:12px 1fr!important;padding:7px 9px!important;gap:7px!important;font-size:13px!important;border-radius:7px!important}
body.pagesStudioActive .ppsTreeDot{width:5px;height:5px;border-radius:50%;background:#aebdca;display:block}
body.pagesStudioActive .ppsTreeItem.active .ppsTreeDot{background:#0877ef}
body.pagesStudioActive .ppsList{padding:8px!important}
body.pagesStudioActive .ppsPageCard{grid-template-columns:12px minmax(0,1fr) auto 26px!important;gap:9px!important;min-height:64px!important;padding:9px 10px!important;margin-bottom:6px!important;border-color:#e7edf3!important;box-shadow:none!important}
body.pagesStudioActive .ppsStatusDot{width:7px;height:7px;border-radius:50%;background:#aeb9c4}.ppsStatusDot.live{background:#38b66b}.ppsStatusDot.draft{background:#b9c3cd}
body.pagesStudioActive .ppsPageText>b{font-size:13.5px!important;font-weight:700!important}.ppsPath{font-size:11.5px!important}
body.pagesStudioActive .ppsCardMeta{display:flex;gap:5px;align-items:center}.ppsCardMeta span{font-size:10.5px;color:#647b92;background:#f3f6f9;border-radius:999px;padding:3px 7px;white-space:nowrap}
body.pagesStudioActive .ppsPageCard.active{background:#f7fbff!important;border-color:#78b8ff!important;box-shadow:0 0 0 1px rgba(8,119,239,.06)!important}
body.pagesStudioActive .ppsDetail h2{font-size:19px!important}.ppsDetailPath{font-size:12px!important}.ppsDetail .ppsBadges{margin-top:7px!important}
body.pagesStudioActive .ppsDetailActions{margin:13px 0!important;padding-bottom:13px!important}.ppsDetailActions button{height:44px!important;font-size:13px!important}
body.pagesStudioActive .ppsMetaDetails{border-top:1px solid #edf1f5;margin-top:2px;padding-top:4px}.ppsMetaDetails summary{cursor:pointer;color:#5f7890;font-size:12px;font-weight:650;padding:10px 2px;list-style:none}.ppsMetaDetails summary:after{content:' ›';float:right}.ppsMetaDetails[open] summary:after{content:' ⌄'}.ppsMetaDetails .ppsMeta{padding:7px 2px 2px!important;gap:9px!important}.ppsMetaDetails .ppsMetaRow{font-size:12px!important;grid-template-columns:120px 1fr!important}
body.pagesStudioActive .ppsDangerQuiet{height:40px!important;margin-top:14px!important;background:transparent!important;border:0!important;color:#b85151!important;font-size:12px!important}
body.pagesStudioActive .ppsHero{height:205px!important;margin-top:8px!important;margin-bottom:12px!important}
body.pagesStudioActive .ppsDevices{height:52px!important}.ppsDevices button{font-size:12px!important;padding:8px 12px!important}
@media(max-width:1250px){body.pagesStudioActive .ppsGrid{grid-template-columns:minmax(220px,.75fr) minmax(340px,1.25fr)!important}.ppsDetailPane{grid-column:1/-1!important}}
@media(max-width:780px){body.pagesStudioActive .ppsTreePane{display:none!important}.ppsCardMeta{display:none!important}.ppsPageCard{grid-template-columns:10px 1fr 24px!important}.ppsTopActions{gap:7px!important}}

/* V12.113 — compact WYSIWYG toolbar */
.speToolbar{position:sticky;top:78px;z-index:3;width:min(1100px,calc(100% - 48px));margin:10px auto 0;display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:8px 10px;background:rgba(255,255,255,.97);border:1px solid #e0e7ef;border-radius:11px;box-shadow:0 5px 18px rgba(23,58,94,.06)}
.speToolbar select,.speToolbar button{min-height:34px!important;height:34px!important;width:auto!important;margin:0!important;padding:5px 9px!important;border:0!important;border-radius:7px!important;background:transparent!important;color:#173a5e!important;font:500 13px/1.2 Arial,sans-serif!important;box-shadow:none!important}
.speToolbar select{border:1px solid #dfe7ef!important;background:#fff!important}.speToolbar button:hover{background:#eef5fc!important}.speToolSep{width:1px;height:22px;background:#dfe7ef;margin:0 3px}
.speContent:focus{outline:none}.speContent a{color:#0877ef;text-decoration:underline}.speContent ul,.speContent ol{padding-left:28px;margin:0 0 18px}.speContent blockquote{border-left:3px solid #c7d8e8;padding-left:16px;color:#536b82}
@media(max-width:800px){.speToolbar{top:0;width:calc(100% - 20px);margin-top:8px;overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start}.speToolSep{flex:0 0 1px}.speToolbar button,.speToolbar select{flex:0 0 auto}}

/* V12.116 */
.qrRegistrationResult.licenseExpired,.kioskResult.licenseExpired{background:#fff0f0!important;border:2px solid #b91c1c!important;color:#991b1b!important}.qrRegistrationResult.licenseExpired h3,.qrRegistrationResult.licenseExpired p,.kioskResult.licenseExpired strong,.kioskResult.licenseExpired span{color:#991b1b!important}.licenseExpiredText{color:#b91c1c!important;font-weight:800}.snsLicenseNotification{background:#fff3f3!important;border-left:4px solid #c62828!important}.snsLocationsManager{margin-bottom:18px}.snsLocationRow{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #e1e7ee}.snsLocationRow>div{flex:1;min-width:0}.snsLocationRow small{display:block;color:#65758a;margin-top:4px}.snsLocationRow button{min-height:36px;padding:7px 10px}@media(max-width:650px){.snsLocationRow{flex-wrap:wrap}.snsLocationRow>div{flex-basis:100%}}


/* V12.116d: blauwe zijbalk loopt mee tot onderkant van de pagina.
   Desktop: grid laat de aside meegroeien met de hoofdinhoud. */
@media (min-width:1251px) {
  .dashboardMode .dashShell {
    align-items:stretch!important;
    min-height:100vh!important;
  }
  .dashboardMode .dashSidebar {
    position:relative!important;
    top:auto!important;
    height:auto!important;
    min-height:100vh!important;
    align-self:stretch!important;
    overflow:visible!important;
    background:linear-gradient(180deg,#0b416e 0%,#082f53 45%,#061f39 100%)!important;
  }
}


/* V12.116e — training layout + consistent navigation, desktop only */
@media (min-width:1251px) {
  .dashboardMode .dashShell {
    display:grid!important;
    grid-template-columns:238px minmax(0,1fr)!important;
    align-items:stretch!important;
    background:linear-gradient(to right,#102e52 0,#102e52 238px,#f4f7fb 238px,#f4f7fb 100%)!important;
  }
  .dashboardMode .dashSidebar {
    grid-column:1!important;
    position:relative!important;
    width:238px!important;
    height:auto!important;
    min-height:100vh!important;
    max-height:none!important;
    overflow:visible!important;
    align-self:stretch!important;
    background:#102e52!important;
    box-shadow:none!important;
  }
  .dashboardMode .dashWorkspace {
    grid-column:2!important;
    margin-left:0!important;
    width:auto!important;
    min-width:0!important;
  }
  .dashboardMode .dashNav{overflow:visible!important}
}
/* Train list: consistent alignment and compact actions */
.dashboardMode #trainings .trainingList,
.dashboardMode #trainingsPanel .trainingList{margin-top:18px;border-top:1px solid #e4eaf0}
.dashboardMode .trainingRow{grid-template-columns:minmax(125px,.7fr) minmax(200px,1.3fr) auto!important;gap:16px!important;padding:20px 4px!important;align-items:start!important}
.dashboardMode .trainingRow > *{min-width:0}
.dashboardMode .trainingButtons{display:flex!important;gap:7px!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-start!important}
.dashboardMode .trainingButtons button{min-height:38px!important;padding:8px 12px!important;font-size:12px!important;border-radius:6px!important;white-space:nowrap}
.dashboardMode .trainingEditor{margin:16px 0 20px!important;padding:22px!important;border-radius:10px!important;background:#fff!important;border:1px solid #dfe6ee!important}
.dashboardMode .trainingEditor .traininggrid{gap:14px!important}
.dashboardMode .trainingEditor input,.dashboardMode .trainingEditor select{min-width:0!important}
@media(max-width:1250px){.dashboardMode .trainingRow{grid-template-columns:1fr!important;gap:10px!important}.dashboardMode .trainingButtons{justify-content:flex-start!important}}
@media(max-width:650px){.dashboardMode .trainingEditor{padding:15px!important}.dashboardMode .trainingButtons button{flex:0 1 auto}}

/* V12.116f — header remains fully inside the workspace */
@media (min-width:1251px) {
  .dashboardMode .dashWorkspace > .dashTop {
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0 30px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:20px!important;
    overflow:visible!important;
  }
  .dashboardMode .dashTop .dashTopBrand {
    display:flex!important;
    flex:1 1 auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    position:static!important;
    left:auto!important;
    transform:none!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  .dashboardMode .dashTop .dashAccount {
    flex:0 0 auto!important;
    margin-left:auto!important;
  }
}


/* V12.116g: force header breadcrumb to start inside its own header.
   Independent of older positioning and flex overrides. */
@media (min-width:1251px) {
  body.dashboardMode .dashWorkspace > header.dashTop {
    position:sticky!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    padding:0 28px!important;
    box-sizing:border-box!important;
    isolation:isolate!important;
  }
  body.dashboardMode .dashWorkspace > header.dashTop > .dashTopBrand {
    position:absolute!important;
    left:28px!important;
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
    margin:0!important;
    padding:0!important;
    width:auto!important;
    max-width:calc(100% - 420px)!important;
    z-index:2!important;
    white-space:nowrap!important;
  }
  body.dashboardMode .dashWorkspace > header.dashTop > .dashAccount {
    margin-left:auto!important;
  }
}

/* V12.116h — header across the entire viewport; navigation starts beneath it. */
@media (min-width:1251px) {
 body.dashboardMode .dashShell {padding-top:72px!important;}
 body.dashboardMode .dashWorkspace > header.dashTop {
   position:fixed!important;top:0!important;left:0!important;right:0!important;
   width:100vw!important;height:72px!important;margin:0!important;
   padding:0 30px!important;z-index:110!important;
   display:flex!important;align-items:center!important;justify-content:space-between!important;
   background:#fff!important;box-sizing:border-box!important;
 }
 body.dashboardMode .dashWorkspace > header.dashTop > .dashTopBrand {
   position:static!important;left:auto!important;top:auto!important;right:auto!important;
   transform:none!important;max-width:none!important;width:auto!important;
   flex:1 1 auto!important;display:flex!important;align-items:center!important;
   margin:0!important;padding:0!important;overflow:visible!important;
 }
 body.dashboardMode .dashWorkspace > header.dashTop > .dashAccount {
   flex:0 0 auto!important;margin-left:auto!important;
 }
 body.dashboardMode .dashSidebar {top:0!important;height:calc(100vh - 72px)!important;min-height:calc(100vh - 72px)!important;}
}

/* V12.116i — clubidentiteit altijd linksboven; header rechts van zijbalk. */
@media (min-width:1251px) {
  body.dashboardMode .dashShell {
    display:grid!important;grid-template-columns:238px minmax(0,1fr)!important;
    padding-top:0!important;align-items:stretch!important;min-height:100vh!important;
    background:linear-gradient(to right,#102e52 0 238px,#f4f7fb 238px 100%)!important;
  }
  body.dashboardMode .dashSidebar {
    grid-column:1!important;grid-row:1!important;
    position:sticky!important;top:0!important;left:0!important;
    width:238px!important;height:100vh!important;min-height:100vh!important;
    align-self:start!important;overflow-y:auto!important;overflow-x:hidden!important;
    z-index:120!important;background:#102e52!important;
  }
  body.dashboardMode .dashWorkspace {
    grid-column:2!important;grid-row:1!important;
    margin-left:0!important;padding-top:72px!important;min-width:0!important;
  }
  body.dashboardMode .dashWorkspace > header.dashTop {
    position:fixed!important;top:0!important;left:238px!important;right:0!important;
    width:calc(100% - 238px)!important;height:72px!important;
    margin:0!important;padding:0 28px!important;z-index:110!important;
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    box-sizing:border-box!important;transform:none!important;background:#fff!important;
  }
  body.dashboardMode .dashWorkspace > header.dashTop > .dashTopBrand {
    position:static!important;left:auto!important;top:auto!important;right:auto!important;
    transform:none!important;display:flex!important;align-items:center!important;
    max-width:none!important;width:auto!important;margin:0!important;padding:0!important;
  }
  body.dashboardMode .dashWorkspace > header.dashTop > .dashAccount {margin-left:auto!important;}
}

/* V12.116j: verberg uitsluitend de headertekst Clubadministratie. */
body.dashboardMode .dashWorkspace > header.dashTop > .dashTopBrand {display:none!important;}
body.dashboardMode .dashWorkspace > header.dashTop > .dashAccount {margin-left:auto!important;}

/* V12.116k: clublogo-achtergrond identiek aan de blauwe navigatie. */
body.dashboardMode .dashSidebar,
body.dashboardMode .dashSidebar .dashBrand {
  background:#102e52!important;
  background-image:none!important;
}
body.dashboardMode .dashSidebar .dashBrand {
  box-shadow:none!important;
}

/* V12.116l - donkerblauwe bovenbalk tot 10px voor het belletje.
   Desktop: links blijft de clubidentiteit in dezelfde kleur staan. */
@media (min-width:1251px) {
  body.dashboardMode .dashWorkspace > header.dashTop {
    background:#102e52!important;
    background-image:none!important;
    padding-right:0!important;
    border-bottom-color:#dfe6ee!important;
  }
  body.dashboardMode .dashWorkspace > header.dashTop > .dashAccount {
    align-self:stretch!important;
    height:72px!important;
    min-height:72px!important;
    display:flex!important;
    align-items:center!important;
    background:#fff!important;
    padding:0 28px 0 10px!important;
    margin-left:auto!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.dashboardMode .dashSidebar,
  body.dashboardMode .dashSidebar .dashBrand {
    background:#102e52!important;
  }
}

/* V12.116m — houd clublogo en clubnaam zichtbaar bij scrollen in zijbalk. */
@media (min-width:1251px) {
  body.dashboardMode .dashSidebar {
    position:sticky!important;top:0!important;height:100dvh!important;
    overflow-y:auto!important;overflow-x:hidden!important;
  }
  body.dashboardMode .dashSidebar > .dashBrand {
    position:sticky!important;top:0!important;z-index:5!important;
    flex-shrink:0!important;
    background:#102e52!important;
    margin:0 -10px 16px!important;
    padding:18px 20px!important;
    box-shadow:0 1px 0 rgba(255,255,255,.10)!important;
  }
}

/* V12.116n: fixed desktop sidebar; scroll navigation, not branding. */
@media (min-width:1251px) {
  body.dashboardMode .dashShell {
    display:grid!important;
    grid-template-columns:238px minmax(0,1fr)!important;
    padding-top:0!important;
    min-height:100vh!important;
  }
  body.dashboardMode .dashShell > aside.dashSidebar {
    position:fixed!important;
    inset:0 auto 0 0!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    width:238px!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:0!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    background:#102e52!important;
    z-index:120!important;
  }
  body.dashboardMode .dashSidebar > .dashBrand {
    position:relative!important;
    top:auto!important;
    margin:0!important;
    padding:18px 10px 20px!important;
    flex:0 0 auto!important;
    z-index:2!important;
    background:#102e52!important;
  }
  body.dashboardMode .dashSidebar > .dashNav {
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-width:thin;
  }
  body.dashboardMode .dashSidebar > .dashAsideFoot {
    flex:0 0 auto!important;
    margin-top:0!important;
    background:#102e52!important;
  }
  body.dashboardMode .dashShell > .dashWorkspace {
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    margin-left:0!important;
    padding-top:72px!important;
  }
}

/* V12.116o — compacte navigatie naar voorbeeld van live; behoud vaste sidebar. */
@media (min-width:1251px) {
  body.dashboardMode .dashSidebar > .dashNav {
    gap:2px!important;
    padding:6px 4px 12px!important;
    align-content:start!important;
  }
  body.dashboardMode .dashSidebar .dashNav button,
  body.dashboardMode .dashSidebar .dashNav .navGroupToggle,
  body.dashboardMode .dashSidebar .dashNav .navMore summary {
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:13px!important;
    font-weight:500!important;
    line-height:1.3!important;
    letter-spacing:0!important;
    min-height:42px!important;
    padding:9px 11px!important;
    margin:1px 0!important;
    gap:10px!important;
    border-radius:8px!important;
  }
  body.dashboardMode .dashSidebar .dashNav button.active {font-weight:600!important;}
  body.dashboardMode .dashSidebar .dashNav .navIcon,
  body.dashboardMode .dashSidebar .dashNav button svg {
    width:19px!important;
    height:19px!important;
    min-width:19px!important;
    flex-shrink:0!important;
  }
  body.dashboardMode .dashSidebar .dashNav .navGroupDot,
  body.dashboardMode .dashSidebar .dashNav .navGroupIcon {font-size:17px!important;}
  body.dashboardMode .dashSidebar .dashNav .navGroupItems,
  body.dashboardMode .dashSidebar .dashNav .navMoreItems {gap:1px!important;}
  body.dashboardMode .dashSidebar .dashNav .navGroupItems button,
  body.dashboardMode .dashSidebar .dashNav .navMoreItems button {
    min-height:38px!important;
    font-size:12.5px!important;
    padding:7px 10px!important;
  }
}

/* Ledenlijst: QR-status en een vaste, herkenbare Bekijk-actie per lid. */
body.dashboardMode #list .member.memberListRow {
  display:grid!important;
  grid-template-columns:minmax(165px,1.7fr) minmax(100px,1fr) minmax(85px,.75fr) minmax(90px,.85fr) minmax(100px,.85fr) 104px!important;
  align-items:center!important;column-gap:12px!important;row-gap:8px!important;
  width:100%!important;text-align:left!important;padding:14px 15px!important;
  border:1px solid #e1e7ef!important;border-radius:10px!important;
  background:#fff!important;color:#173a5e!important;margin-bottom:8px!important;
  opacity:1!important;
}
body.dashboardMode #list .member.memberListRow.inactive {background:#f7f8fa!important;opacity:.68!important;}
body.dashboardMode #list .memberListIdentity,body.dashboardMode #list .memberListCategory {min-width:0;}
body.dashboardMode #list .memberListIdentity .name {display:block;overflow-wrap:anywhere;font-size:15px;font-weight:700;}
body.dashboardMode #list .memberListCategory .muted {margin-top:3px;}
body.dashboardMode #list .memberListJv {font-size:12px;overflow-wrap:anywhere;}
body.dashboardMode #list .memberQrLabel {display:inline-block;border-radius:6px;padding:6px 8px;font-size:11px;font-weight:700;white-space:nowrap;}
body.dashboardMode #list .memberQrLabel.isLinked {color:#14633f;background:#e7f5ee;}
body.dashboardMode #list .memberQrLabel.isMissing {color:#6b7280;background:#eef0f3;}
body.dashboardMode #list .memberListView {display:inline-flex;justify-content:center;align-items:center;gap:7px;padding:10px 9px;border-radius:7px;background:#143b63;color:white;font-size:12px;font-weight:700;white-space:nowrap;}
body.dashboardMode #list .member.memberListRow:hover {border-color:#8fb1d4!important;box-shadow:0 2px 10px rgba(20,59,99,.08);}
body.dashboardMode #list .member.memberListRow:focus-visible {outline:3px solid #3c91d6!important;outline-offset:2px;}
@media(max-width:1100px){body.dashboardMode #list .member.memberListRow {grid-template-columns:minmax(130px,1.6fr) minmax(95px,1fr) minmax(75px,.8fr) 104px!important;}body.dashboardMode #list .memberListJv,body.dashboardMode #list .memberListQr {display:none!important;}}
@media(max-width:650px){body.dashboardMode #list .member.memberListRow {grid-template-columns:minmax(0,1fr) auto!important;padding:12px!important;}body.dashboardMode #list .memberListLicense,body.dashboardMode #list .memberListCategory,body.dashboardMode #list .memberListJv {display:none!important;}body.dashboardMode #list .memberListQr {display:block!important;grid-column:1;grid-row:2;}body.dashboardMode #list .memberListView {grid-column:2;grid-row:1 / span 2;}}

/* V12.116q — overzichtelijke ledenkaarten (desktop, tablet, mobiel). */
body.dashboardMode #list .member.memberDetailRow {
 display:grid!important;grid-template-columns:minmax(180px,1.45fr) minmax(140px,.92fr) minmax(110px,.95fr) minmax(110px,.92fr) minmax(155px,1.12fr) minmax(125px,.7fr)!important;
 align-items:center!important;gap:16px!important;width:100%!important;min-height:142px!important;
 padding:20px 22px!important;margin:0 0 12px!important;text-align:left!important;
 background:#fff!important;color:#15263e!important;border:1px solid #dfe5ed!important;border-radius:14px!important;
 box-shadow:0 1px 3px rgba(20,43,70,.025)!important;opacity:1!important;
}
body.dashboardMode #list .member.memberDetailRow.inactive {background:#f7f8fa!important;opacity:.75!important;}
body.dashboardMode #list .memberDetailIdentity {min-width:0;display:flex;flex-direction:column;gap:7px;align-items:flex-start;}
body.dashboardMode #list .memberDetailIdentity .name {font:700 18px/1.25 Arial,Helvetica,sans-serif!important;overflow-wrap:anywhere;}
body.dashboardMode #list .memberDetailIdentity .muted {margin:0!important;font:400 13px/1.3 Arial,Helvetica,sans-serif!important;color:#788396!important;}
body.dashboardMode #list .memberDetailStatus {font-size:13px;font-weight:700;margin-top:6px;color:#7c8797;}
body.dashboardMode #list .memberDetailStatus.valid {color:#32904e;}
body.dashboardMode #list .memberDetailStatus.soon {color:#b57b13;}
body.dashboardMode #list .memberDetailStatus.expired {color:#b3343e;}
body.dashboardMode #list .memberDetailField {display:flex;flex-direction:column;gap:12px;min-width:0;min-height:64px;padding-left:17px;border-left:1px solid #e7ebf1;justify-content:center;}
body.dashboardMode #list .memberDetailField small {color:#7b8798;font-size:12px;font-weight:400;line-height:1.3;}
body.dashboardMode #list .memberDetailField strong {color:#151b27;font-size:16px;font-weight:700;line-height:1.3;overflow-wrap:anywhere;}
body.dashboardMode #list .memberDetailBelt {display:flex;align-items:center;gap:10px;}
body.dashboardMode #list .memberDetailBelt i {width:34px;height:12px;flex:0 0 34px;border:1px solid rgba(0,0,0,.14);border-radius:3px;}
body.dashboardMode #list .memberDetailActions {display:flex;flex-direction:column;gap:12px;align-items:flex-end;justify-content:center;min-width:0;}
body.dashboardMode #list .memberDetailView {display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:11px 18px;min-width:116px;border-radius:999px;background:#111;color:#fff;font:700 14px Arial,Helvetica,sans-serif;white-space:nowrap;}
body.dashboardMode #list .memberDetailView span {font-size:22px;line-height:12px;font-weight:400;}
body.dashboardMode #list .memberDetailQr {font-size:12px;color:#7b8798;white-space:nowrap;}
body.dashboardMode #list .member.memberDetailRow:hover {border-color:#9bb5d4!important;box-shadow:0 3px 12px rgba(20,43,70,.08)!important;}
body.dashboardMode #list .member.memberDetailRow:focus-visible {outline:3px solid #3c91d6!important;outline-offset:2px;}
@media(max-width:1500px){body.dashboardMode #list .member.memberDetailRow {grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px 20px!important;}body.dashboardMode #list .memberDetailActions {align-items:flex-end;}}
@media(max-width:800px){body.dashboardMode #list .member.memberDetailRow {grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:18px!important;}body.dashboardMode #list .memberDetailIdentity {grid-column:1/-1;}body.dashboardMode #list .memberDetailField {padding-left:0;border:0;}body.dashboardMode #list .memberDetailActions {grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center;}}
@media(max-width:450px){body.dashboardMode #list .member.memberDetailRow {gap:12px!important;}body.dashboardMode #list .memberDetailField small {font-size:11px;}body.dashboardMode #list .memberDetailField strong {font-size:14px;}body.dashboardMode #list .memberDetailActions {flex-wrap:wrap;}body.dashboardMode #list .memberDetailQr {white-space:normal;}}

/* V12.116r — mobiel menu als echte uitschuiflade; desktop blijft ongewijzigd. */
@media(max-width:760px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:clip!important}
  body.dashboardMode .dashShell{display:block!important;grid-template-columns:minmax(0,1fr)!important}
  body.dashboardMode .dashWorkspace{margin:0!important;width:100%!important;max-width:100%!important;min-width:0!important}
  body.dashboardMode .dashSidebar{
    position:fixed!important;left:0!important;top:0!important;bottom:0!important;
    width:min(340px,85vw)!important;max-width:85vw!important;height:100dvh!important;
    min-height:0!important;z-index:250!important;
    transform:translateX(-105%)!important;transition:transform .22s ease!important;
    display:flex!important;flex-direction:column!important;overflow:hidden!important;
  }
  body.dashboardMode .dashSidebar.navOpen{transform:translateX(0)!important}
  body.dashboardMode .dashSidebar .dashBrand{position:relative!important;top:auto!important;left:auto!important;width:100%!important;min-height:0!important;padding:18px 16px!important;flex-shrink:0!important}
  body.dashboardMode .dashSidebar .dashBrand img{width:46px!important;height:46px!important;max-width:46px!important}
  body.dashboardMode .dashSidebar .dashBrand h1,body.dashboardMode .dashSidebar .dashBrand strong{font-size:17px!important;line-height:1.2!important}
  body.dashboardMode .dashSidebar .dashNav{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain!important;padding:8px 12px!important;align-items:stretch!important}
  body.dashboardMode .dashSidebar .dashNav button,body.dashboardMode .dashSidebar .dashNav .navGroupToggle{
    width:100%!important;min-height:42px!important;display:flex!important;
    justify-content:flex-start!important;align-items:center!important;gap:12px!important;
    padding:9px 12px!important;text-align:left!important;font-size:14px!important;
  }
  body.dashboardMode .dashSidebar .dashNav .navIcon{flex:0 0 20px!important}
  body.dashboardMode .dashSidebar .dashAsideFoot{position:relative!important;bottom:auto!important;flex-shrink:0!important;padding:10px 16px!important}
  body.dashboardMode .dashHome,body.dashboardMode .contentblock{width:100%!important;max-width:100%!important;min-width:0!important;padding:14px!important;box-sizing:border-box!important}
  body.dashboardMode .dashHome *,body.dashboardMode .contentblock *{min-width:0}
  body.dashboardMode #list .member.memberDetailRow{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.dashboardMode #list .memberDetailIdentity{grid-column:1/-1}
  body.dashboardMode #list .memberDetailActions{grid-column:1/-1}
}
@media(max-width:380px){
  body.dashboardMode #list .member.memberDetailRow{grid-template-columns:1fr!important}
  body.dashboardMode #list .memberDetailField{grid-column:1}
}
.qrRegistrationResult.licenseSoon,.kioskResult.licenseSoon{background:#fff6df!important;border:2px solid #d28b00!important;color:#8a5900!important}
.qrRegistrationResult.licenseUnknown,.kioskResult.licenseUnknown{background:#f1f3f6!important;border:2px solid #9ca3af!important;color:#475569!important}
.snsLicenseRow{font-style:normal!important;font-size:12px!important}
.snsLicenseRow.expired{color:#b91c1c!important;font-weight:800}
.snsLicenseRow.soon{color:#a16207!important;font-weight:700}
.snsLicenseRow.unknown{color:#64748b!important}
.snsLicenseRow.valid{color:#17804c!important}

/* V12.116s locatiebeheer */
.snsLocationsManager .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.snsLocationsManager .grid label{min-width:0}
@media(max-width:650px){.snsLocationsManager .grid{grid-template-columns:1fr!important}}

/* V12.117 */
.calendarLegend .boardAgendaDot{background:#9c46be!important;display:inline-block;width:9px;height:9px;border-radius:50%}
.calendarEvent.boardagenda{background:#9c46be!important;color:white!important}
.snsTrainingTypeRow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #e4eaf0}.snsTrainingTypeRow>div{display:flex;gap:6px;flex-wrap:wrap}
@media(max-width:760px){body.dashboardMode .dashWorkspace,body.dashboardMode .dashHome,body.dashboardMode .dashGrid,body.dashboardMode .dashPanel{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}body.dashboardMode .dashGrid{grid-template-columns:minmax(0,1fr)!important}body.dashboardMode .dashNav{grid-template-columns:1fr!important}body.dashboardMode .dashSidebar .dashNav span{display:inline!important}body.dashboardMode .dashTop{min-width:0!important}.snsTrainingTypeRow{align-items:flex-start;flex-direction:column}.snsTrainingTypeRow>div{width:100%}input,select,textarea{max-width:100%;box-sizing:border-box}}

/* V12.118: compact mobiel menu, ook bij oude schermstijlen */
@media(max-width:760px){
 body.dashboardMode .dashSidebar{width:min(280px,calc(100vw - 56px))!important;max-width:280px!important;transform:translate3d(-110%,0,0)!important;visibility:hidden!important;pointer-events:none!important;box-sizing:border-box!important}
 body.dashboardMode .dashSidebar.navOpen{transform:translate3d(0,0,0)!important;visibility:visible!important;pointer-events:auto!important}
 body.dashboardMode .dashShell,body.dashboardMode .dashWorkspace{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important}
 body.dashboardMode .dashMenuToggle{display:flex!important;visibility:visible!important}
 body.dashboardMode .extraFunctionLauncher{grid-template-columns:minmax(0,1fr)!important}
 body.dashboardMode .extraFunctionsGrid{grid-template-columns:minmax(0,1fr)!important}
}

/* V12.119 — definitive portrait/mobile drawer; appended after legacy rules */
@media screen and (max-width:1250px){
 body.dashboardMode .dashShell{display:block!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important}
 body.dashboardMode .dashWorkspace{margin-left:0!important;padding-left:0!important;width:100%!important;max-width:100%!important;min-width:0!important}
 body.dashboardMode .dashSidebar{position:fixed!important;inset:0 auto 0 0!important;left:0!important;top:0!important;bottom:0!important;right:auto!important;width:min(280px,85vw)!important;max-width:85vw!important;height:100dvh!important;min-height:0!important;z-index:2500!important;display:flex!important;flex-direction:column!important;overflow-y:auto!important;transform:translate3d(-110%,0,0)!important;visibility:hidden!important;pointer-events:none!important;transition:transform .22s ease,visibility .22s!important}
 body.dashboardMode .dashSidebar.navOpen{transform:translate3d(0,0,0)!important;visibility:visible!important;pointer-events:auto!important}
 body.dashboardMode .dashTop{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
 body.dashboardMode .dashHome,body.dashboardMode .contentblock{max-width:100%!important;box-sizing:border-box!important}
 body.dashboardMode .dashMenuToggle{display:flex!important}
 body.dashboardMode .dashNavBackdrop:not([hidden]){position:fixed!important;inset:0!important;z-index:2499!important;display:block!important}
}
@media screen and (max-width:600px) and (orientation:portrait){
 html,body{max-width:100%!important;overflow-x:hidden!important}
 body.dashboardMode .dashHome,body.dashboardMode .contentblock{min-width:0!important}
}

/* V12.120: compacte, consistente mobiele navigatie */
@media screen and (max-width:1250px){
 body.dashboardMode .dashSidebar{
   padding:0!important;display:flex!important;flex-direction:column!important;
   width:min(280px,calc(100vw - 48px))!important;max-width:280px!important;
   overflow:hidden!important;background:#142f52!important;
 }
 body.dashboardMode .dashSidebar>.dashBrand{
   display:flex!important;flex:0 0 auto!important;align-items:center!important;
   gap:10px!important;margin:0!important;padding:18px 13px 14px!important;
   border-bottom:1px solid rgba(255,255,255,.13)!important;
 }
 body.dashboardMode .dashSidebar>.dashBrand img{width:42px!important;height:42px!important;flex:0 0 42px!important;object-fit:contain!important}
 body.dashboardMode .dashSidebar>.dashBrand div{display:block!important;min-width:0!important}
 body.dashboardMode .dashSidebar>.dashBrand strong{font-size:14px!important;line-height:1.2!important}
 body.dashboardMode .dashSidebar>.dashBrand small{font-size:11px!important}
 body.dashboardMode .dashSidebar>.dashNav{
   display:flex!important;flex:1 1 auto!important;flex-direction:column!important;
   align-items:stretch!important;gap:2px!important;grid-template-columns:1fr!important;
   min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;
   margin:0!important;padding:9px 9px 14px!important;overscroll-behavior:contain!important;
 }
 body.dashboardMode .dashSidebar .dashNav button,
 body.dashboardMode .dashSidebar .dashNav .navGroupToggle,
 body.dashboardMode .dashSidebar .dashNav .navMore summary{
   display:flex!important;flex-direction:row!important;align-items:center!important;
   justify-content:flex-start!important;gap:11px!important;
   width:100%!important;min-height:40px!important;height:auto!important;
   padding:9px 11px!important;margin:1px 0!important;
   font-size:13px!important;line-height:1.25!important;text-align:left!important;
   border-radius:8px!important;box-sizing:border-box!important;
 }
 body.dashboardMode .dashSidebar .dashNav button span{display:inline!important;width:auto!important;font-size:inherit!important;line-height:inherit!important;text-align:left!important}
 body.dashboardMode .dashSidebar .dashNav .navIcon,
 body.dashboardMode .dashSidebar .dashNav button svg{
   display:block!important;width:19px!important;height:19px!important;min-width:19px!important;flex:0 0 19px!important;
 }
 body.dashboardMode .dashSidebar .dashNav .navGroup{display:block!important;width:100%!important}
 body.dashboardMode .dashSidebar .dashNav .navGroupToggle{display:grid!important;grid-template-columns:20px minmax(0,1fr) 16px!important;gap:10px!important}
 body.dashboardMode .dashSidebar .dashNav .navChevron{justify-self:end!important;margin-left:auto!important}
 body.dashboardMode .dashSidebar .dashNav .navGroupItems{padding-left:15px!important}
 body.dashboardMode .dashSidebar .dashAsideFoot{
   display:block!important;flex:0 0 auto!important;margin:0!important;
   padding:10px 13px calc(12px + env(safe-area-inset-bottom))!important;
   background:#142f52!important;border-top:1px solid rgba(255,255,255,.13)!important;
 }
 body.dashboardMode .dashSidebar .navSponsor{font-size:10px!important;line-height:1.25!important}
 body.dashboardMode .dashSidebar .navSponsor strong{font-size:12px!important;display:inline!important}
}

/* V12.121: één pagina-editor, duidelijke gebruikersrechten */
#usersPanel .snsRightsIntro{background:#fff;border:1px solid #dae5ef;border-radius:15px;padding:18px 20px;margin-bottom:16px}
#usersPanel .snsRightsIntro p{color:#62768a;margin:5px 0 15px;font-size:13px}
.snsRightsTabs{display:flex;flex-wrap:wrap;gap:8px}
.snsRightsTabs button{background:#f0f5f9!important;color:#234563!important;border:1px solid #d8e4ed!important;border-radius:9px!important;padding:10px 15px!important}
.snsRightsTabs button.active{background:#1768a7!important;color:#fff!important;border-color:#1768a7!important}
#usersPanel .snsRightsAccounts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px;align-items:start}
#usersPanel .snsRightsRoles{display:none;grid-column:1/-1}
#usersPanel.snsShowRoles .snsRightsAccounts>form,#usersPanel.snsShowRoles .snsRightsAccounts>.accessCard:not(.snsRightsRoles){display:none}
#usersPanel.snsShowRoles .snsRightsRoles{display:block}
#usersPanel .permissionGrid{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
.snsPermissionGroup{border:1px solid #dce6ee;border-radius:11px;background:#fff;overflow:hidden}
.snsPermissionGroup>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;font-weight:700;color:#193c5b;list-style:none}
.snsPermissionGroup>summary::-webkit-details-marker{display:none}
.snsPermissionGroup>summary:before{content:'▸';color:#557b9b;margin-right:3px}
.snsPermissionGroup[open]>summary:before{content:'▾'}
.snsPermissionGroup>summary small{margin-left:auto;color:#617b90;font-weight:500;white-space:nowrap}
.snsPermissionRows{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:6px;padding:10px 12px 13px;border-top:1px solid #edf1f5}
.snsPermissionRows .permissionCheck{margin:0!important;min-width:0}
@media(max-width:800px){#usersPanel .snsRightsAccounts{grid-template-columns:1fr}.snsRightsRows{grid-template-columns:1fr}.snsRightsTabs button{flex:1 1 auto}}

/* V12.122: de oude Pagina's-snelkoppeling altijd verbergen */
#goPagesStudio, #boardAgendaLegend[hidden]{display:none!important}

/* V12.123 licentiebeheer */
.snsLicenseTiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}
.snsLicenseTile{border:1px solid #dbe4ec;border-radius:12px;padding:15px;background:#f7fafc}
.snsLicenseTile small{display:block;color:#546575}.snsLicenseTile strong{font-size:25px;color:#173a5e}
.snsLicenseControls{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:15px 0}
.snsLicenseControls label{display:grid;gap:5px;min-width:135px}.snsLicenseControls input,.snsLicenseControls select{max-width:220px}
.snsLicenseTableWrap{overflow-x:auto}.snsLicenseTableWrap table{width:100%;border-collapse:collapse;min-width:590px}
.snsLicenseTableWrap th,.snsLicenseTableWrap td{text-align:left;padding:11px;border-bottom:1px solid #e2e8f0}
.snsLicenseState{display:inline-block;padding:4px 9px;border-radius:20px;background:#e8f2e8;color:#236236}
.snsLicenseState.soon{background:#fff1d6;color:#885300}.snsLicenseState.expired{background:#ffe5e5;color:#a42020}
.snsLicenseState.unknown{background:#edf0f3;color:#52606b}
@media(max-width:600px){.snsLicenseTiles{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V12.124: overzichtelijke licentiefilters en compacte headerwaarschuwing */
.snsLicenseTiles{grid-template-columns:repeat(5,minmax(0,1fr))}
.snsLicenseControls{display:grid;grid-template-columns:minmax(160px,1.2fr) minmax(155px,1fr) minmax(150px,1fr) minmax(170px,1.2fr) auto auto;gap:12px;align-items:end}
.snsLicenseControls label{min-width:0;display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}
.snsLicenseControls input,.snsLicenseControls select{width:100%;max-width:none;min-height:40px;box-sizing:border-box}
.snsDaysRow{display:flex;align-items:center;gap:7px;white-space:nowrap}
.snsDaysRow input{min-width:60px}
.snsLicenseState.verify{background:#e7eefb;color:#315a8d}
.licenseHeaderAlert{border:1px solid #e5bb62;border-radius:18px;background:#fff5df;color:#7b4b08;padding:7px 11px;font-size:12px;font-weight:700;max-width:310px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.licenseHeaderAlert[hidden]{display:none!important}
@media(max-width:1050px){.snsLicenseControls{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.snsLicenseControls{grid-template-columns:repeat(2,minmax(0,1fr))}.snsLicenseTiles{grid-template-columns:repeat(2,minmax(0,1fr))}.licenseHeaderAlert{max-width:155px;font-size:11px}}
@media(max-width:440px){.snsLicenseControls{grid-template-columns:1fr}.licenseHeaderAlert{max-width:105px}}

/* V12.125 */
.snsLicenseQuickFilters{display:flex;flex-wrap:wrap;gap:9px;margin:10px 0 15px}
.snsLicenseQuickFilters button{font-size:13px;white-space:normal}
.snsHelpPanel{max-width:1150px;margin:0 auto}
.snsHelpToolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:16px 0 20px}
.snsHelpToolbar label{display:flex;flex-direction:column;gap:6px;flex:1;max-width:500px;font-weight:600}
.groupMailRoleBox{margin:16px 0;padding:16px;border:1px solid #d7e3ef;border-radius:13px;background:#f7faff}.groupMailRoleBox h4{margin:0 0 4px;color:#173b5d}.groupMailRoleBox p{margin:0 0 12px}.groupMailRoleChecks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.groupMailRoleChecks .check{margin:0;background:#fff;border:1px solid #dce6f0;border-radius:9px;padding:10px}@media(max-width:850px){.groupMailRoleChecks{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.groupMailRoleChecks{grid-template-columns:1fr}}
.snsHelpToolbar input{width:100%;box-sizing:border-box;min-height:42px}
.snsHelpToolbar span{color:#57728c;font-size:13px}
.snsHelpTopics{display:grid;gap:10px}
.snsHelpTopic{border:1px solid #dce7f2;background:white;border-radius:13px;padding:0 16px}
.snsHelpTopic summary{cursor:pointer;padding:15px 0;font-weight:700;color:#173b5d}
.snsHelpTopic p{line-height:1.65;margin:0 0 16px;color:#43586b}
.snsHelpBody{padding:0 0 18px}.snsHelpBody>p{margin:8px 0 14px}.snsHelpBody h4{margin:4px 0 12px;color:#153a60;font-size:15px}.snsHelpStep{display:grid;grid-template-columns:30px 1fr;gap:11px;align-items:start;margin:8px 0;padding:9px 11px;border-radius:9px;background:#f5f9fd;color:#354f69;line-height:1.5}.snsHelpStep>b{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#176bc0;color:#fff}.snsHelpStep>span{padding-top:3px}.snsHelpExample,.snsHelpWarning,.snsHelpProblem{display:grid;grid-template-columns:130px 1fr;gap:12px;margin:14px 0;padding:13px 14px;border-radius:10px;line-height:1.55}.snsHelpExample{background:#edf7ff;border-left:4px solid #2380d7}.snsHelpWarning{background:#fff8e8;border-left:4px solid #e5a72a}.snsHelpProblem{background:#f5f1ff;border-left:4px solid #7958c7}.snsHelpFigure{margin:18px 0 4px;padding:12px;border:1px solid #d9e5ef;border-radius:13px;background:#f8fbfe}.snsHelpFigure img{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:9px;background:#eef4f9}.snsHelpFigure figcaption{padding:10px 4px 2px;color:#536a80;font-size:13px;line-height:1.5}@media(max-width:620px){.snsHelpExample,.snsHelpWarning,.snsHelpProblem{grid-template-columns:1fr;gap:4px}.snsHelpStep{grid-template-columns:28px 1fr}.snsHelpFigure{padding:7px;margin-left:-7px;margin-right:-7px}}
@media(max-width:650px){.snsHelpToolbar{display:block}.snsHelpToolbar span{display:block;margin-top:10px}}
@media print{body:has(#helpPanel:not([hidden])) .dashSidebar,body:has(#helpPanel:not([hidden])) .dashTop,body:has(#helpPanel:not([hidden])) #helpPrint,body:has(#helpPanel:not([hidden])) .snsHelpToolbar{display:none!important}body:has(#helpPanel:not([hidden])) #helpPanel{display:block!important;position:static;max-width:none}body:has(#helpPanel:not([hidden])) .snsHelpTopic{break-inside:avoid}body:has(#helpPanel:not([hidden])) .snsHelpTopic p{display:block!important}body:has(#helpPanel:not([hidden])) .snsHelpTopic:not([open]) p{display:block!important}}
@media print{body:has(#helpPanel:not([hidden])) .snsHelpBody{display:block!important}body:has(#helpPanel:not([hidden])) .snsHelpFigure{break-inside:avoid;page-break-inside:avoid}body:has(#helpPanel:not([hidden])) .snsHelpFigure img{max-height:105mm}}

/* V12.126 — handleiding met clublogo en administrator-editor */
.snsHelpIdentity{display:flex;align-items:center;gap:16px;min-width:0}
.snsHelpLogo{width:78px;height:78px;object-fit:contain;flex-shrink:0;background:transparent;mix-blend-mode:multiply}
.snsHelpActions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.snsHelpEditor{margin-top:22px;padding:20px;border:1px solid #c7d8ea;border-radius:16px;background:#f6f9fd;display:grid;gap:13px}
.snsHelpEditor[hidden]{display:none}
.snsHelpEditor label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:13px}
.snsHelpEditor input,.snsHelpEditor select,.snsHelpEditor textarea{width:100%;box-sizing:border-box;max-width:100%;font:inherit;padding:10px;border:1px solid #bdcee0;border-radius:8px;background:white}
.snsHelpEditor textarea{resize:vertical;line-height:1.5}
.snsHelpEditorMessage{font-weight:600}
@media(max-width:640px){.snsHelpIdentity{align-items:flex-start;gap:10px}.snsHelpLogo{width:55px;height:55px}.snsHelpActions{margin-top:12px}}
@media print{body:has(#helpPanel:not([hidden])) .snsHelpEditor,body:has(#helpPanel:not([hidden])) #helpEdit{display:none!important}body:has(#helpPanel:not([hidden])) .snsHelpLogo{display:block!important;width:70px;height:70px}}

/* V12.127 — dropdown toegankelijk boven alle panelen en correct verborgen */
#profileMenu[hidden]{display:none!important}
.dashboardMode .dashTop{overflow:visible!important}
.dashboardMode .dashAccount{overflow:visible!important}
.dashboardMode #profileMenu{z-index:5000!important;pointer-events:auto!important}
.dashboardMode #profileMenu button{pointer-events:auto!important;cursor:pointer!important}

/* V12.133: wachtwoordpaneel in het midden, op desktop en mobiel */
body.loginMode:has(#firstPasswordPanel:not([hidden])){min-height:100dvh!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:18px!important;box-sizing:border-box!important;overflow-y:auto!important}
body.loginMode #firstPasswordPanel:not([hidden]){display:block!important;width:min(100%,500px)!important;max-width:500px!important;box-sizing:border-box!important;margin:0 auto!important;padding:clamp(20px,4vw,30px)!important;position:relative!important;inset:auto!important;transform:none!important;box-shadow:0 12px 40px rgba(19,48,77,.12)}
body.loginMode #firstPasswordPanel input{box-sizing:border-box;width:100%;max-width:100%}
body.loginMode #firstPasswordPanel .actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-height:580px){body.loginMode:has(#firstPasswordPanel:not([hidden])){align-items:flex-start!important}}

/* V12.135: zelfde compacte en gecentreerde vormgeving als aanmeldpagina */
body.loginMode:has(#firstPasswordPanel:not([hidden])){min-height:100dvh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:20px!important;box-sizing:border-box!important}
body.loginMode #firstPasswordPanel:not([hidden]){display:block!important;max-width:460px!important;width:100%!important;margin:auto!important;padding:clamp(24px,4vw,36px)!important;background:#fff!important;border-radius:18px!important;box-shadow:0 18px 60px rgba(15,41,75,.12)!important}
.firstPasswordBrand{display:flex;align-items:center;gap:15px;margin-bottom:14px}.firstPasswordBrand img{object-fit:contain;border-radius:12px}.firstPasswordBrand h2{margin:0;font-size:1.4rem}
#firstPasswordSuccess{text-align:center}#firstPasswordSuccess button{width:100%;margin-top:12px}
@media(max-width:520px){body.loginMode #firstPasswordPanel:not([hidden]){padding:22px!important}.firstPasswordBrand{flex-direction:column;text-align:center}}

/* V12.137: consistent eerste wachtwoordscherm */
body.loginMode:has(#firstPasswordPanel:not([hidden])){display:flex!important;min-height:100dvh!important;align-items:center!important;justify-content:center!important;padding:20px!important}
body.loginMode #firstPasswordPanel:not([hidden]){margin:auto!important;width:min(100%,460px)!important;max-height:calc(100dvh - 40px);overflow:auto;background:#fff!important;border-radius:18px!important}
.ageCategoryManager{background:#f8fafc;border:1px solid #dce5ee;border-radius:14px;padding:22px!important}
.ageCategoryForm{margin:12px 0 20px}.ageCategoryRow{display:flex;align-items:center;gap:14px;padding:9px 0;border-top:1px solid #dce5ee}.ageCategoryRow span{margin-left:auto;color:#677687}.ageCategoryRow button{min-height:36px}
@media(max-width:600px){.ageCategoryRow{flex-wrap:wrap}.ageCategoryRow span{margin-left:0}}

/* V12.138: wachtwoordscherm als zelfstandig gecentreerd venster */
body.loginMode:has(#firstPasswordPanel:not([hidden])) #login,body.loginMode:has(#firstPasswordPanel:not([hidden])) #app{display:none!important}
body.loginMode:has(#firstPasswordPanel:not([hidden])){display:grid!important;grid-template-columns:minmax(0,1fr)!important;place-items:center!important;width:100%!important;min-height:100dvh!important;margin:0!important;padding:20px!important;overflow-x:hidden!important}
body.loginMode #firstPasswordPanel:not([hidden]){grid-column:1!important;justify-self:center!important;align-self:center!important;position:static!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important;margin:0!important;width:min(100%,460px)!important;max-width:460px!important}
.ageCategoryIndex{color:#7a8595;min-width:24px}.ageCategoryRow{gap:8px;flex-wrap:wrap}.ageCategoryRow strong{min-width:100px}.ageCategoryRow span:nth-of-type(2){margin-left:auto}

/* V12.144 – Desktop: reserveer vaste ruimte voor de navigatie.
   De bestaande shell gebruikt een vaste sidebar; de workspace mag niet op x=0 starten. */
@media screen and (min-width:1251px){
 body.dashboardMode .dashShell{
   display:block!important;
   width:100%!important;
   max-width:100%!important;
   min-width:0!important;
   grid-template-columns:none!important;
 }
 body.dashboardMode .dashShell > aside.dashSidebar{
   position:fixed!important;
   top:0!important;left:0!important;bottom:0!important;
   width:238px!important;
   max-width:238px!important;
   z-index:200!important;
 }
 body.dashboardMode .dashShell > .dashWorkspace{
   display:block!important;
   margin:0 0 0 238px!important;
   padding:72px 0 0!important;
   width:calc(100% - 238px)!important;
   max-width:calc(100% - 238px)!important;
   min-width:0!important;
   box-sizing:border-box!important;
   grid-column:auto!important;
 }
 body.dashboardMode .dashWorkspace > header.dashTop{
   left:238px!important;
   right:0!important;
   width:calc(100% - 238px)!important;
   box-sizing:border-box!important;
 }
}
/* Tablet/gsm: de sidebar is een lade, niet een permanente kolom. */
@media screen and (max-width:1250px){
 body.dashboardMode .dashShell > .dashWorkspace{
   margin-left:0!important;
   width:100%!important;
   max-width:100%!important;
   min-width:0!important;
   box-sizing:border-box!important;
 }
 body.dashboardMode .dashWorkspace > header.dashTop{
   left:0!important;
   right:0!important;
   width:100%!important;
   box-sizing:border-box!important;
 }
}

/* V12.146 - compacte zoek- en koppelfunctie */
.linkedMemberPicker{display:flex;flex-direction:column;gap:8px;min-width:0}
.linkedMemberPicker>label{font-weight:700}
.linkedMemberPicker input[type="search"]{width:100%;min-width:0}
.linkedMemberChips{display:flex;flex-wrap:wrap;gap:6px;min-height:28px;align-items:center}
.linkedMemberChip{display:inline-flex;align-items:center;gap:7px;background:#eaf1fc;border:1px solid #c6d7ee;color:#183a62;border-radius:999px;padding:4px 6px 4px 11px;font-size:13px}
.linkedMemberChip button{border:0;background:#fff;color:#1d3c63;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:18px;line-height:1;padding:0}
.linkedMemberResults{max-height:240px;overflow-y:auto;border:1px solid #d7dfe9;border-radius:10px;background:#fff}
.linkedMemberResults button{display:block;width:100%;border:0;border-bottom:1px solid #edf1f6;background:#fff;text-align:left;padding:10px 12px;cursor:pointer;color:#173a5e}
.linkedMemberResults button:hover,.linkedMemberResults button:focus{background:#eaf1fc}
.linkedMemberResults p{padding:10px 12px;margin:0}

#accessMembers[hidden],#accessMemberResults[hidden],#linkedMembersLabel[hidden]{display:none!important}

/* V12.147: uniforme verticale positie onder de vaste/sticky bovenbalk.
   De bovenbalk neemt al ruimte in de normale documentstroom in. */
body.dashboardMode .dashShell > .dashWorkspace{padding-top:0!important;}
body.dashboardMode .dashWorkspace > header.dashTop{position:sticky!important;top:0!important;z-index:350!important;min-height:72px!important;}
body.dashboardMode .dashWorkspace > .contentblock,body.dashboardMode .dashWorkspace > .dashHome{scroll-margin-top:88px!important;}
body.dashboardMode .dashWorkspace > .contentblock:not([hidden]),body.dashboardMode .dashWorkspace > .dashHome:not([hidden]){padding-top:28px!important;}
@media(max-width:760px){body.dashboardMode .dashWorkspace > .contentblock:not([hidden]),body.dashboardMode .dashWorkspace > .dashHome:not([hidden]){padding-top:18px!important;}}

/* V12.148: gezinsaanmelding */
.familyTrainingDialog{width:min(94vw,540px);max-height:85dvh;overflow:auto;border:1px solid #dce5ef;border-radius:16px;padding:22px;box-shadow:0 16px 70px #1235}.familyTrainingDialog::backdrop{background:#102f4c80}.familyTrainingHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.familyTrainingHeader h3{margin:0}.familyTrainingPerson{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #e4ebf3}.familyTrainingPerson span{display:flex;flex-direction:column}.familyTrainingPerson small{color:#6b7280}.familyTrainingPerson input{width:22px;height:22px}.familyTrainingDialog>button:last-child{margin-top:18px;width:100%}

/* V12.149: header position is relative to its workspace, not to viewport.
   V12.144 gave it a second sidebar offset; V12.147 changed it to sticky.
   Together these caused a grey gap and clipped header. */
body.dashboardMode .dashShell > .dashWorkspace > header.dashTop {
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:auto!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin-left:0!important;
  transform:none!important;
  background:#102e52!important;
  background-image:none!important;
  z-index:350!important;
}
@media screen and (max-width:1250px){
 body.dashboardMode .dashShell > .dashWorkspace > header.dashTop{left:0!important;width:100%!important;right:auto!important;}
}

/* V12.150: wachtwoordherstel */
.forgotPasswordLink{border:0;background:transparent;color:#23659b;text-decoration:underline;font-size:.88rem;cursor:pointer;align-self:flex-end;padding:3px 0 9px;display:block;margin-left:auto}.passwordResetPanel{background:#f4f8fc;border:1px solid #cbddeb;border-radius:12px;padding:15px;margin:12px 0;text-align:left}.passwordResetPanel[hidden]{display:none!important}.passwordResetPanel h2{font-size:1.05rem;margin:0 0 8px}.passwordResetPanel p{font-size:.85rem}.passwordResetPanel input{width:100%;box-sizing:border-box;margin-bottom:8px;padding:11px;border:1px solid #adc3d8;border-radius:8px}.passwordResetPanel button{margin:3px 4px 3px 0}.snsRightsRoles .actions button{white-space:normal}

/* V12.151 — uniforme horizontale paginapositie en breedte.
   Eén vaste sidebar-offset; de werkruimte en alle schermpanelen
   moeten binnen de resterende viewportbreedte passen. */
@media screen and (min-width:1251px){
  body.dashboardMode .dashShell > .dashWorkspace{
    margin-left:238px!important;
    padding-left:0!important;
    padding-right:0!important;
    width:calc(100vw - 238px)!important;
    max-width:calc(100vw - 238px)!important;
    min-width:0!important;
    overflow-x:clip!important;
  }
}
body.dashboardMode .dashWorkspace > .contentblock,
body.dashboardMode .dashWorkspace > .dashHome{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
body.dashboardMode .dashWorkspace > .contentblock > *,
body.dashboardMode .dashWorkspace > .dashHome > *{
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
@media screen and (max-width:1250px){
  body.dashboardMode .dashShell > .dashWorkspace{
    margin-left:0!important;
    width:100%!important;
    max-width:100%!important;
  }
}

/* V12.154 – rollen met meervoudige selectie */
.roleMultiCard{padding:14px;border:1px solid #dbe4ee;border-radius:12px;background:#f8fafc}.roleMultiGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:10px 0}.roleMultiGrid .check{display:flex;align-items:center;gap:7px;margin:0}.roleMultiGrid input{width:auto;min-width:16px}

/* V12.155 – compact gebruikersbeheer */
#userAccessForm #accessEmailLabel,#userAccessForm #accessUsernameLabel{min-width:0;align-self:start}
#userAccessForm #accessEmail,#userAccessForm #accessUsername{display:block!important;width:100%!important;height:48px!important;min-height:48px!important;max-height:48px!important;padding:10px 12px!important;resize:none!important;line-height:1.4!important;box-sizing:border-box}
.snsUserFilters{display:grid;grid-template-columns:minmax(0,1fr);gap:9px;margin:12px 0}
.snsUserFilters input,.snsUserFilters select{width:100%;min-width:0;max-width:100%;height:44px}
.snsUserCount{margin:4px 0 12px;font-size:12px}
.snsUserPager{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px}
.snsUserPager button{min-width:82px;padding:9px!important}
.snsUserPager button:disabled{opacity:.4;cursor:not-allowed}
.snsUserPager span{font-size:12px;color:#60758c;text-align:center}
.platformUserRow{min-width:0}.platformUserRow>span{min-width:0;overflow-wrap:anywhere}.platformUserRow em{max-width:50%;overflow-wrap:anywhere;text-align:right}
@media(max-width:600px){.platformUserRow{flex-direction:column;align-items:flex-start}.platformUserRow em{max-width:100%;text-align:left}}

/* V12.161 — uniforme, begrensde pagina-opmaak op desktop, tablet en gsm. */
#goUsers{display:none!important}
body.dashboardMode .dashWorkspace > .contentblock:not([hidden]),
body.dashboardMode .dashWorkspace > .dashHome:not([hidden]){
  width:calc(100% - 48px)!important;
  max-width:1500px!important;
  min-width:0!important;
  margin:24px auto 40px!important;
  padding:28px 30px!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
}
body.dashboardMode .dashWorkspace > .contentblock:not([hidden]) > *,
body.dashboardMode .dashWorkspace > .dashHome:not([hidden]) > *{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
body.dashboardMode .membertop{min-width:0!important;flex-wrap:wrap!important}
body.dashboardMode .profileTopActions{min-width:0!important;max-width:100%!important;display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important}
body.dashboardMode .profileTopActions button{white-space:normal!important}
body.dashboardMode .profilehead>div:last-child,body.dashboardMode .profilegrid,body.dashboardMode .info{min-width:0!important}
body.dashboardMode #pName,body.dashboardMode .info dd{overflow-wrap:anywhere!important}
body.dashboardMode .licenseFilters{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;align-items:end!important}
body.dashboardMode .licenseFilters>*{min-width:0!important;max-width:100%!important}
body.dashboardMode .snsLicenseQuickFilters{display:flex!important;flex-wrap:wrap!important;gap:10px!important}
body.dashboardMode .snsLicenseControls{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:12px!important;align-items:end!important;max-width:100%!important}
body.dashboardMode .snsLicenseControls>*{min-width:0!important;max-width:100%!important;width:100%!important}
body.dashboardMode .snsLicenseTableWrap{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
body.dashboardMode .licenseTableWrap,body.dashboardMode .tableWrap,body.dashboardMode [class*="TableWrap"]{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
@media(max-width:1050px){
 body.dashboardMode .dashWorkspace > .contentblock:not([hidden]),body.dashboardMode .dashWorkspace > .dashHome:not([hidden]){width:calc(100% - 32px)!important;margin:16px auto 30px!important;padding:22px!important}
 body.dashboardMode #profile .membertop{display:grid!important;grid-template-columns:1fr!important;align-items:start!important}
 body.dashboardMode .profileTopActions{justify-content:flex-start!important}
 body.dashboardMode #profile .profilegrid{grid-template-columns:1fr!important}
}
@media(max-width:650px){
 body.dashboardMode .dashWorkspace > .contentblock:not([hidden]),body.dashboardMode .dashWorkspace > .dashHome:not([hidden]){width:calc(100% - 16px)!important;margin:8px auto 22px!important;padding:16px!important;border-radius:12px!important}
 body.dashboardMode #profile .profileTopActions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}
 body.dashboardMode #profile .profileTopActions button{width:100%!important}
 body.dashboardMode #profile .profilehead{gap:14px!important;padding:24px 0!important}
 body.dashboardMode #profile #pName{font-size:clamp(28px,9vw,38px)!important}
}

/* V12.168 — definitieve schaalregels (laatste cascadeblok). */
html,body,#app,.dashShell,.dashWorkspace{max-width:100%;overflow-x:hidden!important}
body.dashboardMode .dashShell{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important}
body.dashboardMode .dashShell>.dashWorkspace{min-width:0!important;box-sizing:border-box!important;overflow-x:hidden!important}
body.dashboardMode .dashTop{min-width:0!important;box-sizing:border-box!important}
body.dashboardMode .dashTop>*{min-width:0!important;max-width:100%}
body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){width:auto!important;max-width:none!important;min-width:0!important;margin:24px!important;box-sizing:border-box!important;overflow-x:hidden!important}
body.dashboardMode .dashWorkspace>.contentblock:not([hidden]) *,body.dashboardMode .dashWorkspace>.dashHome:not([hidden]) *{min-width:0;box-sizing:border-box}
body.dashboardMode .dashWorkspace img,body.dashboardMode .dashWorkspace video,body.dashboardMode .dashWorkspace canvas{max-width:100%;height:auto}
body.dashboardMode .dashWorkspace input,body.dashboardMode .dashWorkspace select,body.dashboardMode .dashWorkspace textarea{min-width:0;max-width:100%;box-sizing:border-box}
body.dashboardMode .dashWorkspace .actions,body.dashboardMode .dashWorkspace .trainingButtons,body.dashboardMode .dashWorkspace .competitionButtons,body.dashboardMode .dashWorkspace .boardMeetingActions,body.dashboardMode .dashWorkspace .newsControls{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}
body.dashboardMode .dashWorkspace .profilegrid,body.dashboardMode .dashWorkspace .userAdminGrid,body.dashboardMode .dashWorkspace .permissionGrid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important}
body.dashboardMode .dashWorkspace table{width:100%!important;max-width:100%!important;table-layout:fixed;border-collapse:collapse}
body.dashboardMode .dashWorkspace th,body.dashboardMode .dashWorkspace td{min-width:0!important;overflow-wrap:anywhere;word-break:normal;white-space:normal}
body.dashboardMode #usersPanel,body.dashboardMode #usersPanel .snsRightsAccounts,body.dashboardMode #usersPanel .accessCard,body.dashboardMode #usersPanel form,body.dashboardMode #platformUsersList{width:auto!important;max-width:100%!important;min-width:0!important}
body.dashboardMode #usersPanel .snsRightsAccounts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
body.dashboardMode #usersPanel .platformUserRow{width:100%!important;max-width:100%!important;overflow:hidden!important}
body.dashboardMode #usersPanel .platformUserRow>span,body.dashboardMode #usersPanel .platformUserRow em{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;white-space:normal!important}
body.dashboardMode .dashTop .dashAccount{min-width:0!important;max-width:min(52%,520px)!important;flex:0 1 auto!important}
body.dashboardMode .dashTop .profileIdentity{min-width:0!important;max-width:100%!important}
body.dashboardMode .dashTop .topProfileText{min-width:0!important;max-width:300px!important}
body.dashboardMode .dashTop .topProfileText>b,body.dashboardMode .dashTop .topProfileText>span,body.dashboardMode .dashTop .topProfileText>small{display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
@media screen and (min-width:1251px){
 body.dashboardMode .dashShell{display:block!important}
 body.dashboardMode .dashShell>aside.dashSidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:238px!important;max-width:238px!important}
 body.dashboardMode .dashShell>.dashWorkspace{margin:0 0 0 238px!important;width:calc(100% - 238px)!important;max-width:calc(100% - 238px)!important}
 body.dashboardMode .dashWorkspace>header.dashTop{left:0!important;right:auto!important;width:100%!important;max-width:100%!important}
 body.dashboardMode .snsLicenseTableWrap,body.dashboardMode .licenseTableWrap,body.dashboardMode .tableWrap,body.dashboardMode [class*="TableWrap"]{overflow-x:hidden!important}
}
@media screen and (max-width:1380px){body.dashboardMode #usersPanel .snsRightsAccounts{grid-template-columns:1fr!important}body.dashboardMode .dashTop .topProfileText{max-width:220px!important}}
@media screen and (max-width:1250px){body.dashboardMode .dashShell>.dashWorkspace{margin-left:0!important;width:100%!important;max-width:100%!important}body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){margin:16px!important}body.dashboardMode .dashTop{width:100%!important}}
@media screen and (max-width:850px){body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){margin:12px!important;padding:20px!important}body.dashboardMode .dashWorkspace .trainingRow,body.dashboardMode .dashWorkspace .competitionRow,body.dashboardMode .dashWorkspace .boardMeetingCard{grid-template-columns:1fr!important}body.dashboardMode .dashWorkspace .snsLicenseTableWrap,body.dashboardMode .dashWorkspace .licenseTableWrap,body.dashboardMode .dashWorkspace .tableWrap,body.dashboardMode .dashWorkspace [class*="TableWrap"]{overflow-x:auto!important}body.dashboardMode .dashWorkspace table{min-width:680px;table-layout:auto}}
@media screen and (max-width:760px){body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){margin:8px!important;padding:14px!important}body.dashboardMode .dashTop .dashAccount{max-width:100%!important;margin-left:auto!important}body.dashboardMode .dashTop .topProfileText{display:none!important}body.dashboardMode #usersPanel .snsRightsAccounts{grid-template-columns:1fr!important}}
.memberCoachLicenseLabel{margin-top:8px!important;color:#76510b!important}.memberCoachLicenseDate{color:#76510b!important}
.feeReminderDialog{width:min(94vw,720px);max-height:90dvh;overflow:auto;border:0;border-radius:18px;padding:24px;box-shadow:0 24px 80px #102b4c44}.feeReminderDialog::backdrop{background:#102b4c99}.feeReminderGrid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:18px}.feeReminderGrid textarea{width:100%;max-width:100%;resize:vertical;padding:12px;border:1px solid #cbd7e2;font:14px Arial;box-sizing:border-box}.feeReminderButton{background:#1768a7!important;color:#fff!important}@media(max-width:650px){.feeReminderGrid{grid-template-columns:1fr}.feeReminderGrid .span2{grid-column:auto}.feeReminderDialog{padding:17px}}
.snsLicenseActionCell{position:relative;overflow:visible!important}.snsLicenseActions{position:relative;display:inline-block}.snsLicenseActions summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:8px;min-width:100px;min-height:40px;padding:8px 13px;border:1px solid #cad7e3;border-radius:9px;background:#fff;color:#173a5e;font-weight:700;cursor:pointer}.snsLicenseActions summary::-webkit-details-marker{display:none}.snsLicenseActions[open] summary{background:#edf5fc;border-color:#7aa8cf}.snsLicenseActions>div{position:absolute;right:0;top:calc(100% + 6px);z-index:80;width:180px;padding:6px;background:#fff;border:1px solid #d7e1ea;border-radius:11px;box-shadow:0 16px 38px #102b4c26}.snsLicenseActions>div button{display:block;width:100%;min-height:38px;padding:8px 10px;border:0;border-radius:7px;background:#fff;color:#173a5e;text-align:left}.snsLicenseActions>div button:hover{background:#edf5fc}.snsLicenseActions>div .feeReminderButton{background:#1768a7!important;color:#fff!important;margin-top:4px}@media(max-width:850px){.snsLicenseActions>div{position:fixed;right:12px;top:auto;width:min(260px,calc(100vw - 24px))}}
@media(min-width:851px){body.dashboardMode #licensesPanel .snsLicenseTableWrap{overflow:visible!important}}

/* V12.182 — licentiebeheer als leesbare kaarten op gsm. */
@media(max-width:650px){
 body.dashboardMode #licensesPanel{overflow:visible!important}
 body.dashboardMode #licensesPanel .snsLicenseTiles{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
 body.dashboardMode #licensesPanel .snsLicenseControls{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;align-items:stretch!important}
 body.dashboardMode #licensesPanel .snsLicenseControls label,body.dashboardMode #licensesPanel .snsLicenseControls input,body.dashboardMode #licensesPanel .snsLicenseControls select,body.dashboardMode #licensesPanel .snsLicenseControls button{width:100%!important;max-width:none!important}
 body.dashboardMode #licensesPanel .snsLicenseTableWrap{overflow:visible!important}
 body.dashboardMode #licensesPanel table,body.dashboardMode #licensesPanel tbody{display:block!important;width:100%!important;min-width:0!important}
 body.dashboardMode #licensesPanel thead{display:none!important}
 body.dashboardMode #licensesPanel tr{display:block!important;width:100%!important;margin:0 0 14px!important;padding:14px!important;border:1px solid #dbe5ee!important;border-radius:14px!important;background:#fff!important;box-shadow:0 3px 12px rgba(23,58,94,.06)!important}
 body.dashboardMode #licensesPanel td{display:grid!important;grid-template-columns:minmax(112px,42%) minmax(0,1fr)!important;gap:12px!important;align-items:center!important;width:100%!important;padding:9px 0!important;border:0!important;border-bottom:1px solid #edf1f5!important;text-align:right!important;overflow-wrap:anywhere!important;word-break:normal!important}
 body.dashboardMode #licensesPanel td:before{content:attr(data-label);font-size:12px;font-weight:800;color:#60758c;text-align:left}
 body.dashboardMode #licensesPanel td.snsLicenseMemberName{display:block!important;padding:0 0 12px!important;margin-bottom:3px!important;font-size:18px!important;font-weight:800!important;color:#173a5e!important;text-align:left!important}
 body.dashboardMode #licensesPanel td.snsLicenseMemberName:before{display:none!important}
 body.dashboardMode #licensesPanel td.snsLicenseActionCell{display:block!important;padding:12px 0 0!important;border-bottom:0!important}
 body.dashboardMode #licensesPanel td.snsLicenseActionCell:before{display:none!important}
 body.dashboardMode #licensesPanel .snsLicenseActions,body.dashboardMode #licensesPanel .snsLicenseActions summary{display:flex!important;width:100%!important}
 body.dashboardMode #licensesPanel .snsLicenseActions summary{justify-content:space-between!important}
 body.dashboardMode #licensesPanel .snsLicenseActions>div{position:static!important;width:100%!important;margin-top:7px!important;box-shadow:none!important}
 body.dashboardMode #licensesPanel .snsLicenseState{white-space:normal!important;text-align:center!important}
}

/* V12.182 — rustiger beheer op kleine schermen. */
@media(max-width:650px){
 body.dashboardMode #extraFunctionsPanel .extraHubHint{display:grid!important;gap:12px!important}
 body.dashboardMode #extraFunctionsPanel #closeExtraCategory{width:100%!important;min-height:48px!important}
 body.dashboardMode #extraFunctionsPanel .extraFunctionsGrid{gap:12px!important}
 body.dashboardMode #extraFunctionsPanel .accessCard{padding:17px!important;border-radius:14px!important}
 body.dashboardMode #extraFunctionsPanel .accessCard h3{font-size:20px!important;margin-top:0!important}
 body.dashboardMode #extraFunctionsPanel .actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
 body.dashboardMode #extraFunctionsPanel .actions button,body.dashboardMode #extraFunctionsPanel form button{width:100%!important;min-height:48px!important;white-space:normal!important}
 body.dashboardMode #extraFunctionsPanel .grid{grid-template-columns:1fr!important}
 body.dashboardMode #extraFunctionsPanel input,body.dashboardMode #extraFunctionsPanel select,body.dashboardMode #extraFunctionsPanel textarea{width:100%!important;max-width:none!important}
 body.dashboardMode #extraFunctionsPanel .snsTrainingTypeRow{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
 body.dashboardMode #extraFunctionsPanel .snsTrainingTypeRow>div{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
}

/* V12.169 — licenties op de ledenfiche overzichtelijk onder elkaar. */
#pBadges{flex-wrap:wrap!important}
#pBadges .licenseBadge{flex:0 0 100%;display:block;max-width:100%;line-height:1.45}

/* V12.170 — rustige groepsmailing voor computer, tablet en gsm. */
.groupMailManager{width:100%}.groupMailGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.groupMailSources{display:flex;flex-wrap:wrap;gap:10px 22px;padding:14px;border:1px solid #dbe4ec;border-radius:12px;background:#f7fafc}.groupMailSources .check{align-items:center}.groupMailSources input{width:18px;min-height:18px}.groupMailMemberList{max-height:360px;overflow:auto;border:1px solid #dbe4ec;border-radius:12px}.groupMailCompose{display:grid;gap:12px;margin-top:18px}.groupMailCompose textarea{width:100%;max-width:100%;padding:12px;border:1px solid #cbd7e2;resize:vertical;font:14px Arial;line-height:1.5}.groupMailManager .memberCardManagerTools strong{margin-left:auto;color:#173a5e;font-size:13px}.groupMailMemberList .memberCardSelectRow{grid-template-columns:auto minmax(0,1fr)}
@media(max-width:700px){.groupMailGrid{grid-template-columns:1fr}.groupMailGrid .span2{grid-column:auto}.groupMailSources{display:grid;grid-template-columns:1fr}.groupMailManager .memberCardManagerTools strong{width:100%;margin-left:0}.groupMailManager .actions{display:grid!important;grid-template-columns:1fr}.groupMailManager .actions button{width:100%}}

/* V12.171 — centrale betalingsgegevens. */
.paymentSettingsManager{width:100%}.paymentSettingsFields{margin:18px 0}.paymentSettingsPreview{display:grid;gap:5px;padding:14px 16px;border-left:4px solid #1768a7;border-radius:8px;background:#f2f7fb;color:#173a5e}.paymentSettingsPreview small{text-transform:uppercase;letter-spacing:.08em;color:#60758c}.paymentSettingsPreview strong{overflow-wrap:anywhere}

/* V12.172 — verzekeringsdocumenten. */
.insuranceDocumentsManager{width:100%}.insuranceUploadBox{margin:16px 0 22px;padding:18px;border:1px solid #dbe4ec;border-radius:13px;background:#f8fafc}.insuranceDocumentsList{display:grid;gap:10px}.insuranceDocumentRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:15px;border:1px solid #dbe4ec;border-radius:12px;background:#fff}.insuranceDocumentRow h4{margin:0 0 7px;color:#173a5e;overflow-wrap:anywhere}.insuranceDocumentMeta{display:flex;flex-wrap:wrap;gap:6px 12px;color:#60758c;font-size:12px}.insuranceDocumentMeta .expired{color:#a61b1b;font-weight:700}.insuranceDocumentActions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.insuranceDocumentActions .buttonLink,.insuranceDocumentActions button{min-height:40px;padding:9px 12px;text-decoration:none;white-space:nowrap}
@media(max-width:750px){.insuranceDocumentRow{grid-template-columns:1fr}.insuranceDocumentActions{justify-content:flex-start}.insuranceDocumentActions>*{flex:1;text-align:center}}

/* V12.174 — tijdelijke lidkaartselectie. */
#queueMemberCard.selected,.memberCardQueueButton.hasSelection{background:#eaf6ee!important;border-color:#77b88c!important;color:#155b2b!important}.memberCardQueueButton{white-space:nowrap}#queueMemberCard:disabled{opacity:.55;cursor:not-allowed}

/* V12.202: duidelijke aanmeldstatus en dashboardoverzicht */
.snsRegistrationBadge{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.28rem .65rem;font-size:.82rem;font-weight:700;line-height:1.35;white-space:nowrap;width:max-content;max-width:100%}
.snsRegistrationBadge.isRegistered{color:#146534;background:#e3f6e9;border:1px solid #9fd8b2}
.snsRegistrationBadge.isNotRegistered{color:#505d6e;background:#f1f3f6;border:1px solid #d9dfe7}
.competitionDetails>.snsRegistrationBadge{margin-top:.55rem}
.snsMyRegistrations{border:1px solid #dce7f3;border-radius:12px;padding:14px;margin:10px 0 16px;background:#f8fbff}
.snsMyRegistrations h3{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:1.05rem}
.snsMyCount{border-radius:999px;background:#e4eefb;color:#22578c;padding:2px 9px;font-size:.82rem}
.snsMyList{display:grid;gap:7px}
.snsMyItem{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border:1px solid #e2e9f2;border-radius:9px;background:#fff}
.snsMyItem>div{display:grid;gap:2px;min-width:0}.snsMyItem strong{overflow-wrap:anywhere}.snsMyItem small{color:#617084}
@media(max-width:540px){.snsMyItem{align-items:flex-start;flex-direction:column}.snsRegistrationBadge{white-space:normal}}

/* V12.203: Mijn aanmeldingen is een zelfstandig, verplaatsbaar dashboardblok */
#snsMyRegistrations{margin:0;min-width:0;background:#fff;border:1px solid #dce7f3;border-radius:14px;padding:20px;box-shadow:0 2px 10px rgba(20,50,90,.035)}
#snsMyRegistrations[hidden]{display:none!important}
#snsMyRegistrations .snsMyList{display:grid;gap:8px}
#snsMyRegistrations .snsMyItem{min-width:0}
@media(max-width:760px){#snsMyRegistrations{padding:15px}}

/* V12.219: hidden permission-filtered navigation must override all dashboard display rules. */
.dashboardApp .dashSidebar .dashNav button[hidden],
.dashboardApp .dashSidebar .dashNav .navGroup[hidden],
.dashboardApp .dashSidebar .dashNav .navGroupToggle[hidden],
.dashboardApp .dashSidebar .dashNav .navGroupItems > button[hidden] { display:none!important; }

/* V12.220: compact ouderoverzicht */
.myChildrenList{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px;margin-top:16px}.myChildCard{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;border:1px solid #dce6f2;border-radius:14px;background:#fff;color:#193956;text-align:left;min-height:90px}.myChildCard strong{font-size:1.05rem}.myChildCard span{font-size:.9rem;color:#52677c}.myChildCard:hover{border-color:#5a91c6}

/* V12.221 ouderfilters */
.familyRegistrationFiltersV12221{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.familyRegistrationFiltersV12221 select{min-width:145px;max-width:100%;padding:8px;border:1px solid #dce6f2;border-radius:8px;background:#fff}

/* V12.222 – compacte manuele ledenkeuze */
.snsManualMemberBox{margin:1rem 0;padding:1rem;border:1px solid #d5e1ec;border-radius:12px}.snsManualMemberList{max-height:240px;overflow:auto;display:grid;gap:5px;margin:.65rem 0}.snsManualMember{display:flex;gap:10px;align-items:center;padding:7px;border-bottom:1px solid #e9eff5}.snsManualMember small{display:block;opacity:.7}.snsManualMemberBox button{margin-top:8px}

/* V12.223 – overzichtelijke manuele aanmelding; overschrijft algemene formulierregels */
.snsManualMemberBox{min-width:0;width:100%;box-sizing:border-box;padding:clamp(14px,2vw,24px);background:#fff}
.snsManualMemberBox h3{margin:0 0 10px}
.snsManualFilters{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,210px);gap:10px;margin-top:16px}
.snsManualFilters input,.snsManualFilters select{box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:46px;padding:10px 12px}
.snsManualListInfo{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:14px 0 6px;color:#52637b;font-size:13px}
.snsManualMemberList{display:block;max-height:330px;overflow-y:auto;overflow-x:hidden;border:1px solid #dfe6ee;border-radius:10px;margin:0 0 16px;background:#fff}
.snsManualMemberBox .snsManualMember{display:flex!important;flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;text-align:left!important;gap:14px!important;width:100%!important;max-width:100%!important;box-sizing:border-box;padding:12px 14px!important;margin:0!important;border:0;border-bottom:1px solid #e9eff5;cursor:pointer;min-height:64px}
.snsManualMemberBox .snsManualMember:last-child{border-bottom:0}
.snsManualMemberBox .snsManualMember:hover{background:#f4f8fd}
.snsManualMemberBox .snsManualMember input[type="checkbox"]{appearance:auto!important;display:block!important;position:static!important;flex:0 0 20px!important;width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;margin:0!important;padding:0!important;transform:none!important;float:none!important}
.snsManualMemberBox .snsManualMemberName{display:flex!important;flex:1 1 auto!important;min-width:0!important;flex-direction:column!important;align-items:flex-start!important;text-align:left!important;gap:3px;line-height:1.35}
.snsManualMemberBox .snsManualMemberName strong{display:block;font-size:14px;overflow-wrap:anywhere}
.snsManualMemberBox .snsManualMemberName small{display:block;color:#61748a;font-size:12px;opacity:1}
.snsManualSubmitRow{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.snsManualSubmitRow button{margin-top:0}
@media(max-width:640px){.snsManualFilters{grid-template-columns:1fr}.snsManualMemberList{max-height:290px}.snsManualSubmitRow button{width:100%}}

/* V12.224 — accountaanvragen */
.usernameRequestRow{padding:12px 0;border-bottom:1px solid #dbe3ef;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.usernameRequestRow p{flex:1 1 220px;margin:0}.usernameRequestRow select{max-width:300px;min-width:180px}#usernameApprovalResult{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;border:1px solid #b7d0e8;border-radius:8px}

/* V12.225 — Sen No Sen modern, clean login (scoped: no dashboard changes) */
#login.loginScreen{background:#fff!important;min-height:100svh!important;height:auto!important;padding:22px 14px!important;align-items:center!important;overflow:visible!important}
#login .loginGlassCard{width:min(540px,100%)!important;max-width:100%!important;padding:32px clamp(22px,5vw,44px) 28px!important;background:#fff!important;border:1px solid #e0e6f0!important;border-radius:20px!important;box-shadow:0 15px 45px rgba(14,37,75,.07)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#login .loginClubLogo{width:clamp(150px,21vw,190px)!important;max-height:180px!important;object-fit:contain!important;margin:0 auto 16px!important}
#login .loginClubLabel{display:flex;align-items:center;gap:13px;margin:0 0 15px;color:#506587;text-align:center;font-size:10px;letter-spacing:.29em;font-weight:700}
#login .loginClubLabel span{height:1px;flex:1;background:#b8c7df}
#login .loginClubLabel strong{font:inherit;white-space:nowrap}
#login .loginWelcome{display:block!important;text-align:center}
#login .loginWelcome h1{font:800 clamp(2.3rem,5vw,3.1rem)/1.13 system-ui,-apple-system,'Segoe UI',sans-serif!important;letter-spacing:-.045em;color:#071c48!important}
#login .loginSubtitle{color:#657693!important;font-size:1rem!important;margin:10px 0 27px!important}
#login .inputShell{display:flex;align-items:center;height:57px!important;border:1px solid #cbd7e8!important;border-radius:10px!important;margin-bottom:12px!important;background:#fff!important;transition:border-color .2s,box-shadow .2s}
#login .inputShell:focus-within{border-color:#1d66ce!important;box-shadow:0 0 0 3px rgba(29,102,206,.1)!important}
#login .inputShell .fieldIcon{flex:0 0 53px;color:#536b93!important;font-size:23px}
#login .inputShell input{font-size:15px!important;color:#13284e!important}
#login .loginPasswordToggle{flex:0 0 45px;align-self:stretch;padding:0!important;border:0!important;background:transparent!important;color:#566b90!important;box-shadow:none!important;font-size:20px;cursor:pointer}
#login .forgotPasswordLink{display:block;margin:4px 0 16px auto!important;color:#0c64ce!important;font-size:13px!important;font-weight:650}
#login .loginPrimary{height:56px!important;border-radius:10px!important;background:linear-gradient(100deg,#1154bb,#1971e9)!important;font-size:17px!important;box-shadow:none!important}
#login .loginOrDivider{display:flex;align-items:center;gap:16px;margin:19px 0 15px;color:#71819b;font-size:13px}
#login .loginOrDivider:before,#login .loginOrDivider:after{content:'';height:1px;flex:1;background:#dce4ef}
#login .loginAccountChoices{display:grid;grid-template-columns:1fr 1fr;gap:11px}
#login .loginAccountChoice{min-width:0;display:flex;align-items:center;gap:9px;min-height:73px;padding:12px 11px!important;background:#fff!important;border:1px solid #d7e0ee!important;border-radius:11px!important;color:#0d2248!important;text-align:left!important;box-shadow:none!important;cursor:pointer}
#login .loginAccountChoice:hover,#login .loginAccountChoice:focus-visible{border-color:#2676dc!important;background:#f8fbff!important}
#login .choiceIcon{color:#1371e8;font-size:26px;line-height:1;flex:0 0 23px}
#login .choiceText{min-width:0;display:flex;flex:1;flex-direction:column;gap:4px}
#login .choiceText strong{font-size:12px;line-height:1.2;color:#10254b}
#login .choiceText small{font-size:11px;line-height:1.25;color:#6a7b96}
#login .choiceArrow{font-size:23px;color:#176cdd}
#login .loginSponsor{margin-top:24px!important;padding-top:17px!important;border-top:1px solid #dce4ef!important;color:#677b99!important;font-size:12px!important}
#login .loginSponsor strong{font-size:13px!important;color:#1468cf!important}
#login .loginInstallButton{min-height:45px;margin-top:15px!important;border:1px solid #d4dfef!important;border-radius:10px!important;background:#f5f8fc!important;color:#314a75!important;font-weight:650}
#login .loginInstallButton span{font-size:20px;margin-right:7px}
#login .passwordResetPanel{max-width:100%;margin-top:18px}
@media(max-width:440px){#login.loginScreen{padding:10px!important;align-items:flex-start!important}#login .loginGlassCard{padding:23px 18px!important;border-radius:15px!important}#login .loginClubLogo{width:145px!important}#login .loginClubLabel{font-size:8px;letter-spacing:.16em;gap:8px}#login .loginSubtitle{margin-bottom:19px!important}#login .loginAccountChoices{gap:8px}#login .loginAccountChoice{padding:10px 7px!important;gap:5px}#login .choiceText strong{font-size:11px}#login .choiceText small{font-size:10px}#login .choiceIcon{flex-basis:18px;font-size:20px}}
@media(max-width:350px){#login .loginAccountChoices{grid-template-columns:1fr}}


/* V12.227: loginpagina volledig bereikbaar bij kleine schermhoogte.
   Scroll binnen de logincontainer, ook wanneer de applicatie de body vastzet. */
#login.loginScreen:not([hidden]){
  position:relative!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:100vh!important;
  height:100dvh!important;
  min-height:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior-y:contain;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:20px 12px 28px!important;
  -webkit-overflow-scrolling:touch;
}
#login.loginScreen:not([hidden]) > .loginGlassCard{
  flex:0 0 auto!important;
  margin:0 auto!important;
  max-width:100%!important;
}
@media(max-width:440px){
  #login.loginScreen:not([hidden]){padding:10px 10px 22px!important}
}

/* V12.228: duidelijke aanmeldstatus per gekoppeld kind */
.snsFamilyStatus{margin-top:10px;display:grid;gap:6px;max-width:560px}
.snsFamilyStatusRow{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px 16px;padding:7px 10px;border:1px solid #dbe4ef;border-radius:9px;background:#f8fafc;font-size:13px}
.snsFamilyStatusRow>span:first-child{font-weight:650;color:#162c50}
.snsFamilyYes{color:#166534;font-weight:650}.snsFamilyNo{color:#52627a}
.snsTemporaryPassword{padding:12px;border:1px solid #d5e6f9;border-radius:8px;overflow-wrap:anywhere;background:#f1f7ff}

/* V12.231: first-login dialog stays within the visual viewport on iOS/PWA. */
body.loginMode #firstPasswordPanel:not([hidden]){position:fixed!important;inset:0!important;top:0!important;left:0!important;right:0!important;bottom:0!important;transform:none!important;z-index:99999!important;width:100%!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom))!important;overflow-y:auto!important;overscroll-behavior:contain;box-sizing:border-box!important;border-radius:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;background:#f5f7fc!important}
body.loginMode #firstPasswordPanel:not([hidden]) > *{width:100%;max-width:460px;flex-shrink:0}
@media(max-height:700px){body.loginMode #firstPasswordPanel:not([hidden]){justify-content:flex-start!important}}

/* V12.232 — lichte visuele vernieuwing; uitsluitend presentatiestijlen. */
body.dashboardMode{--sns-modern-blue:#2463a4;--sns-modern-line:#dce6f1;--sns-modern-shadow:0 5px 20px rgba(20,52,91,.065);background:#f5f8fc}
body.dashboardMode .dashWorkspace{background:#f5f8fc}
body.dashboardMode .dashWorkspace>.contentblock:not([hidden]),
body.dashboardMode .dashWorkspace>.dashHome:not([hidden]){border-radius:18px}
body.dashboardMode .dashWorkspace .info,
body.dashboardMode .dashWorkspace .trainingEditor,
body.dashboardMode .dashWorkspace .statusbox,
body.dashboardMode .dashWorkspace .dashStats>* ,
body.dashboardMode .dashWorkspace .quickGrid>* ,
body.dashboardMode .dashWorkspace .boardMeetingCard,
body.dashboardMode .dashWorkspace .ppsPageCard{
 border-radius:15px;box-shadow:var(--sns-modern-shadow);border-color:var(--sns-modern-line);
}
body.dashboardMode .dashWorkspace button:not(.navGroupToggle):not(.dashNavToggle),
body.dashboardMode .dashWorkspace .outline{border-radius:10px;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease}
body.dashboardMode .dashWorkspace button:focus-visible,
body.dashboardMode .dashSidebar button:focus-visible,
body.dashboardMode .dashWorkspace a:focus-visible{outline:3px solid #75b6f0;outline-offset:2px}
body.dashboardMode .dashWorkspace input:not([type=checkbox]):not([type=radio]),
body.dashboardMode .dashWorkspace select,
body.dashboardMode .dashWorkspace textarea{border-radius:10px;border-color:#ccd9e8;background-color:#fff}
body.dashboardMode .dashWorkspace input:focus,
body.dashboardMode .dashWorkspace select:focus,
body.dashboardMode .dashWorkspace textarea:focus{outline:2px solid rgba(45,125,197,.18);outline-offset:0;border-color:#428bc9}
body.dashboardMode .dashWorkspace .member,
body.dashboardMode .dashWorkspace .trainingRow,
body.dashboardMode .dashWorkspace .attendanceMember{transition:background-color .16s ease}
body.dashboardMode .dashWorkspace .member:hover,
body.dashboardMode .dashWorkspace .trainingRow:hover,
body.dashboardMode .dashWorkspace .attendanceMember:hover{background:#f0f6fd}
body.dashboardMode .dashSidebar{box-shadow:3px 0 18px rgba(11,41,74,.07)}
body.dashboardMode .dashNav a,
body.dashboardMode .dashNav button{border-radius:10px;transition:background-color .16s ease}
body.dashboardMode .dashTop{box-shadow:0 2px 12px rgba(12,45,78,.045)}
body.loginMode .loginGlassCard{border-radius:20px;box-shadow:0 12px 34px rgba(11,41,74,.11)}
@media(max-width:650px){body.dashboardMode .dashWorkspace .info,body.dashboardMode .dashWorkspace .trainingEditor,body.dashboardMode .dashWorkspace .statusbox{border-radius:13px;box-shadow:0 3px 12px rgba(20,52,91,.045)}}
@media(prefers-reduced-motion:reduce){body.dashboardMode .dashWorkspace button,body.dashboardMode .dashNav a,body.dashboardMode .dashNav button,body.dashboardMode .dashWorkspace .member,body.dashboardMode .dashWorkspace .trainingRow{transition:none!important}}

/* V12.233: zichtbare, lichte dashboardvernieuwing zonder JS-afhankelijkheden */
body.dashboardMode .dashWorkspace{background:linear-gradient(145deg,#f1f6fc 0%,#f8fbff 58%,#f3f7fc 100%)}
body.dashboardMode .dashHome .dashPanel,body.dashboardMode .dashHome .dashboardUpcomingPanel,body.dashboardMode .dashHome .clubPanel{background:#fff;border:1px solid #dce7f3;border-radius:20px;box-shadow:0 9px 28px rgba(23,63,112,.075);padding:clamp(16px,2vw,24px)}
body.dashboardMode .dashHome .dashboardUpcomingList > *,body.dashboardMode .dashHome .dashboardRegistrationsList > *{border-radius:14px;border:1px solid #e1eaf4;background:linear-gradient(110deg,#fff,#f9fbff);transition:border-color .16s,transform .16s,box-shadow .16s}
@media(hover:hover){body.dashboardMode .dashHome .dashboardUpcomingList > *:hover,body.dashboardMode .dashHome .dashboardRegistrationsList > *:hover{border-color:#9cc2eb;transform:translateY(-1px);box-shadow:0 5px 15px rgba(32,84,145,.09)}}
body.dashboardMode .dashHome h1,body.dashboardMode .dashHome h2{letter-spacing:-.025em;color:#172f55}
body.dashboardMode .dashSidebar .dashNav a,body.dashboardMode .dashSidebar .dashNav button{border-radius:12px}
body.dashboardMode .dashWorkspace button:not(.dashNavToggle):not(.navGroupToggle){border-radius:12px}
body.dashboardMode .dashHome .dashStats > *{border-radius:16px;background:#fff;box-shadow:0 6px 20px rgba(24,65,111,.06)}
@media(max-width:650px){body.dashboardMode .dashHome .dashPanel{border-radius:16px;padding:14px}body.dashboardMode .dashHome .dashboardUpcomingList > *{border-radius:12px}}

/* V12.234 – zichtbare frisse stijl; beperkt tot platform, zonder functionele wijzigingen. */
body.dashboardMode .dashSidebar{background:linear-gradient(180deg,#123d68 0%,#0a284a 100%)!important;border-right:3px solid #4ba5e5!important}
body.dashboardMode .dashSidebar .dashNav button.active,
body.dashboardMode .dashSidebar .dashNav a.active{background:#2381cf!important;color:#fff!important;box-shadow:inset 3px 0 0 #b7e3ff,0 4px 12px rgba(0,0,0,.12)!important}
body.dashboardMode .dashTop{background:#fff!important;border-bottom:2px solid #d6e8f8!important}
body.dashboardMode .dashHeading h1{color:#0c467b!important;font-weight:800!important;letter-spacing:-.035em!important}
body.dashboardMode .dashHeading p{color:#5b7895!important}
body.dashboardMode .dashStats article{border:1px solid #cfe2f5!important;border-top:4px solid #328ad1!important;border-radius:18px!important;box-shadow:0 8px 24px rgba(15,70,121,.09)!important}
body.dashboardMode .dashStats article i{background:#e0f1ff!important;color:#1266ac!important;border-radius:15px!important}
body.dashboardMode .dashHome .dashPanel,
body.dashboardMode .dashHome .dashboardUpcomingPanel,
body.dashboardMode .dashHome .clubPanel,
body.dashboardMode .dashHome .dashboardCalendar{border:1px solid #d4e4f2!important;border-radius:18px!important;box-shadow:0 8px 26px rgba(13,59,103,.075)!important}
body.dashboardMode .dashPanel h3{color:#0b4b82!important;font-weight:750!important}
body.dashboardMode .dashWorkspace .activeRole{background:#e0f1ff!important;color:#075b9d!important}
body.dashboardMode .dashWorkspace .outline{border-color:#9bc5e5!important;color:#135d98!important}
body.dashboardMode .dashWorkspace button:focus-visible{outline:3px solid #6ab5e7!important;outline-offset:2px}
@media(max-width:650px){body.dashboardMode .dashStats article{border-top-width:3px!important}body.dashboardMode .dashHome .dashPanel{box-shadow:0 4px 14px rgba(13,59,103,.06)!important}}


/* Sen No Sen V12.239 — Buddy-inspired light interface.
   Scoped to authenticated app only. Preserve functional DOM and permissions. */
body.dashboardMode #app .dashShell > aside.dashSidebar,
body.dashboardMode #app .dashSidebar,
#app.dashboardApp .dashShell > aside.dashSidebar {
 background:#ffffff!important;background-image:none!important;color:#344256!important;
 border-right:1px solid #e7ebf0!important;box-shadow:none!important;
 padding:18px 12px!important;scrollbar-width:thin;scrollbar-color:#d5dce5 transparent;
}
body.dashboardMode #app .dashSidebar .dashBrand,
#app.dashboardApp .dashSidebar .dashBrand {
 background:#fff!important;background-image:none!important;box-shadow:none!important;
 border:0!important;border-bottom:1px solid #edf0f4!important;
 padding:7px 6px 20px!important;margin-bottom:16px!important;min-height:80px;
}
body.dashboardMode #app .dashSidebar .dashBrand img {width:42px!important;height:42px!important;padding:2px!important;flex-shrink:0}
body.dashboardMode #app .dashSidebar .dashBrand strong,
#app.dashboardApp .dashSidebar .dashBrand strong {color:#192c40!important;font-size:15px!important;line-height:1.2!important;opacity:1!important;text-shadow:none!important}
body.dashboardMode #app .dashSidebar .dashBrand small {color:#8994a2!important;font-size:11px!important;opacity:1!important}
body.dashboardMode #app .dashSidebar .dashNav {gap:3px!important}
body.dashboardMode #app .dashSidebar .dashNav button,
body.dashboardMode #app .dashSidebar .navMore > summary {
 color:#475569!important;opacity:1!important;background:transparent!important;
 text-shadow:none!important;box-shadow:none!important;border:0!important;
 border-radius:9px!important;font-size:13px!important;font-weight:550!important;
 min-height:40px!important;transition:background-color .15s ease,color .15s ease!important;
}
body.dashboardMode #app .dashSidebar .dashNav button svg,
body.dashboardMode #app .dashSidebar .navMore > summary svg,
body.dashboardMode #app .dashSidebar .navIcon,
body.dashboardMode #app .dashSidebar .navMemberIcon {color:inherit!important;stroke:currentColor!important;opacity:1!important}
body.dashboardMode #app .dashSidebar .dashNav button:hover,
body.dashboardMode #app .dashSidebar .navMore > summary:hover,
body.dashboardMode #app .dashSidebar .navMore[open] > summary {background:#f1f6fb!important;color:#185d91!important}
body.dashboardMode #app .dashSidebar .dashNav button.active,
body.dashboardMode #app .dashSidebar .dashNav button.active:hover {background:#e2f1fc!important;color:#195c91!important;box-shadow:none!important;font-weight:700!important}
body.dashboardMode #app .dashSidebar .navMoreItems {background:#fff!important;border-left:1px solid #e5edf4!important}
body.dashboardMode #app .dashSidebar .navMoreItems button {color:#475569!important}
body.dashboardMode #app .dashSidebar .dashAsideFoot,
body.dashboardMode #app .dashSidebar .navSponsor {background:#fff!important;color:#8994a2!important;border-color:#e9edf2!important;opacity:1!important}
body.dashboardMode #app .dashSidebar .navSponsor strong {color:#53677d!important}
body.dashboardMode #app .dashWorkspace > header.dashTop {background:#fff!important;background-image:none!important;border-bottom:1px solid #e8edf2!important;box-shadow:none!important;min-height:66px!important}
body.dashboardMode #app .dashTopBrand {color:#66758a!important}
body.dashboardMode #app .dashWorkspace,
body.dashboardMode #app .dashHome {background:#fafbfc!important}
body.dashboardMode #app .dashHeading h1 {font-size:clamp(25px,2.25vw,33px)!important;letter-spacing:-.035em!important;color:#1b2839!important}
body.dashboardMode #app .dashHeading p {color:#778497!important}
body.dashboardMode #app .dashHome .dashPanel,
body.dashboardMode #app .dashHome .dashboardCalendar,
body.dashboardMode #app .dashHome .clubPanel,
body.dashboardMode #app .dashStats article {
 background:#fff!important;border:1px solid #e8ecf1!important;border-radius:13px!important;
 box-shadow:0 1px 3px rgba(20,40,60,.025)!important;
}
body.dashboardMode #app .dashPanel {padding:20px!important}
body.dashboardMode #app .dashStats article {border-top:1px solid #e8ecf1!important}
body.dashboardMode #app .dashWorkspace button.outline,
body.dashboardMode #app .dashWorkspace .outline {border-radius:9px!important;box-shadow:none!important}
@media(min-width:1101px){
 body.dashboardMode #app .dashShell {grid-template-columns:220px minmax(0,1fr)!important}
 body.dashboardMode #app .dashSidebar {width:220px!important;max-width:220px!important}
}
@media(max-width:600px){
 body.dashboardMode #app .dashSidebar {padding:18px 12px!important}
 body.dashboardMode #app .dashSidebar .dashBrand {min-height:0!important}
 body.dashboardMode #app .dashWorkspace > header.dashTop {min-height:64px!important}
 body.dashboardMode #app .dashPanel {padding:15px!important}
}
@media(prefers-reduced-motion:reduce){body.dashboardMode #app .dashSidebar .dashNav button{transition:none!important}}

/* V12.240 — complete light visual system, scoped to authenticated app.
   No JS or permission changes; overrides older dark theme and width offsets. */
body.dashboardMode #app .dashShell{background:#f8fafc!important}
body.dashboardMode #app .dashShell>aside.dashSidebar{
  background:#fff!important;background-image:none!important;border-right:1px solid #e6ebf0!important;
  box-shadow:none!important;color:#334155!important;
}
body.dashboardMode #app .dashSidebar::before,body.dashboardMode #app .dashSidebar::after{background:transparent!important;box-shadow:none!important}
body.dashboardMode #app .dashSidebar .dashBrand{background:#fff!important;color:#18283b!important;border-bottom:1px solid #edf0f4!important}
body.dashboardMode #app .dashSidebar .dashNav button,
body.dashboardMode #app .dashSidebar .dashNav a,
body.dashboardMode #app .dashSidebar .navMore>summary{color:#46566b!important;background:transparent!important;text-shadow:none!important;opacity:1!important;font-weight:500!important;box-shadow:none!important}
body.dashboardMode #app .dashSidebar .dashNav button.active,
body.dashboardMode #app .dashSidebar .dashNav a.active{color:#1763a0!important;background:#e5f2fc!important;box-shadow:none!important;font-weight:650!important}
body.dashboardMode #app .dashSidebar .dashNav button:hover,
body.dashboardMode #app .dashSidebar .dashNav a:hover{background:#f0f6fb!important;color:#165d98!important}
body.dashboardMode #app .dashSidebar .dashAsideFoot,
body.dashboardMode #app .dashSidebar .navSponsor{background:#fff!important;color:#74849a!important;border-color:#e8edf2!important}
body.dashboardMode #app .dashWorkspace{background:#f8fafc!important}
body.dashboardMode #app .dashWorkspace>header.dashTop{background:#fff!important;background-image:none!important;border-bottom:1px solid #e8edf2!important;box-shadow:none!important}
body.dashboardMode #app .dashHome{background:transparent!important}
body.dashboardMode #app .dashHeading h1{font-size:clamp(24px,2.1vw,32px)!important;font-weight:750!important;letter-spacing:-.035em!important;color:#1b293b!important}
body.dashboardMode #app .dashHome .dashPanel,
body.dashboardMode #app .dashHome .dashboardUpcomingPanel,
body.dashboardMode #app .dashHome .clubPanel,
body.dashboardMode #app .dashHome .dashboardCalendar,
body.dashboardMode #app .dashStats article,
body.dashboardMode #app .dashWorkspace .info,
body.dashboardMode #app .dashWorkspace .trainingEditor{
 background:#fff!important;background-image:none!important;border:1px solid #e7ecf1!important;
 border-radius:14px!important;box-shadow:0 2px 10px rgba(20,40,60,.035)!important;
}
body.dashboardMode #app .dashHome .dashboardUpcomingList>* ,
body.dashboardMode #app .dashHome .dashboardRegistrationsList>*{
 background:#fff!important;background-image:none!important;border:1px solid #e9edf2!important;
 border-radius:11px!important;box-shadow:none!important;
}
body.dashboardMode #app .dashWorkspace input,
body.dashboardMode #app .dashWorkspace select,
body.dashboardMode #app .dashWorkspace textarea{border-radius:9px;border-color:#dce4ec}
body.dashboardMode #app .dashWorkspace button{transition:background-color .15s,border-color .15s,color .15s}
body.dashboardMode #app .dashWorkspace button:focus-visible,
body.dashboardMode #app .dashSidebar button:focus-visible{outline:2px solid #4696d5!important;outline-offset:2px}
/* Resolve the dark vertical gutter caused by historic 238px desktop offset. */
@media(min-width:1251px){
 body.dashboardMode #app .dashShell>aside.dashSidebar{width:238px!important;max-width:238px!important;left:0!important}
 body.dashboardMode #app .dashShell>.dashWorkspace{margin-left:238px!important;width:calc(100% - 238px)!important;max-width:calc(100% - 238px)!important}
}
@media(min-width:1101px) and (max-width:1250px){
 body.dashboardMode #app .dashShell>aside.dashSidebar{width:220px!important;max-width:220px!important}
}
@media(max-width:760px){
 body.dashboardMode #app .dashWorkspace>.dashHome:not([hidden]),
 body.dashboardMode #app .dashWorkspace>.contentblock:not([hidden]){margin:10px!important;padding:12px!important}
 body.dashboardMode #app .dashHome .dashPanel{padding:14px!important}
}
@media(prefers-reduced-motion:reduce){body.dashboardMode #app .dashWorkspace button{transition:none!important}}

/* Sen No Sen V12.241: board hub + unified training rows; scoped changes only */
body.dashboardMode #app .dashTop .dashUserRole,body.dashboardMode #app .dashTop .profileRole{transform:translateY(3px)}
#boardPanel .snsBoardHubGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}
#boardPanel .snsBoardHubGrid button{display:flex;align-items:center;text-align:left;gap:14px;width:100%;min-height:78px;padding:16px;background:#fff!important;color:#18314f!important;border:1px solid #e1e8f0!important;border-radius:12px;box-shadow:none;font:inherit}
#boardPanel .snsBoardHubGrid button:hover{background:#f5f9fe!important;border-color:#a8c7e9!important}
#boardPanel .snsBoardHubGrid button>span:nth-child(2){display:flex;flex-direction:column;flex:1;gap:5px}
#boardPanel .snsBoardHubGrid small{font-size:12px;color:#73849a;font-weight:400}
#boardPanel .snsBoardHubIcon{width:34px;height:34px;display:grid;place-items:center;background:#eaf3fc;color:#316aa6;border-radius:9px;font-size:20px}
#boardPanel #snsBoardSectionNav{margin-bottom:18px}
#boardPanel .snsBoardSection[hidden],#boardPanel .snsBoardHub[hidden],#boardPanel #snsBoardSectionNav[hidden]{display:none!important}
#trainingsPanel .snsTrainingCompetitionRow{display:grid;grid-template-columns:minmax(125px, .7fr) minmax(200px,1.4fr) minmax(90px,.6fr) minmax(290px,auto);align-items:center;gap:16px;padding:18px 12px;border-bottom:1px solid #e2e8f0;background:#fff!important}
#trainingsPanel .snsTrainingCompetitionRow .trainingButtons{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:7px}
#trainingsPanel .snsTrainingCompetitionRow .trainingButtons button{white-space:nowrap}
#trainingsPanel .snsTrainingCompetitionRow .trainingDate{display:flex;flex-direction:column;gap:4px}
#trainingsPanel .snsTrainingCompetitionRow .attendanceBadge{justify-self:end}
@media(max-width:1150px){#trainingsPanel .snsTrainingCompetitionRow{grid-template-columns:125px minmax(0,1fr)}#trainingsPanel .snsTrainingCompetitionRow .attendanceBadge{justify-self:start}#trainingsPanel .snsTrainingCompetitionRow .trainingButtons{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:650px){#boardPanel .snsBoardHubGrid{grid-template-columns:1fr}#trainingsPanel .snsTrainingCompetitionRow{grid-template-columns:1fr;gap:9px}#trainingsPanel .snsTrainingCompetitionRow .trainingButtons{grid-column:1}#trainingsPanel .snsTrainingCompetitionRow .trainingButtons button{white-space:normal}#trainingsPanel .snsTrainingCompetitionRow .attendanceBadge{justify-self:start}}
body.dashboardMode #app .dashTop #activeRole{position:relative;top:3px}
body.dashboardMode #app #trainingsPanel .snsTrainingCompetitionRow{grid-template-columns:125px minmax(180px,1fr) minmax(90px,auto) minmax(290px,auto)!important}
@media(max-width:1150px){body.dashboardMode #app #trainingsPanel .snsTrainingCompetitionRow{grid-template-columns:125px minmax(0,1fr)!important}}
@media(max-width:650px){body.dashboardMode #app #trainingsPanel .snsTrainingCompetitionRow{grid-template-columns:minmax(0,1fr)!important}}

/* V12.242 — zachte actieknoppen, consistente responsieve weergave */
#dashApp button:not(.dashNav button):not(.danger):not(.delete):not(.profileLogout),
#dashApp .qrUploadButton {border-radius:10px;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease;}
#qrRegistrationPanel .qrScannerActions button,
#qrRegistrationPanel .qrScannerActions .qrUploadButton {background:#eaf3fc!important;color:#205582!important;border:1px solid #c9dfef!important;box-shadow:none!important;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;font-weight:600;}
#qrRegistrationPanel .qrScannerActions button:hover,
#qrRegistrationPanel .qrScannerActions .qrUploadButton:hover {background:#dcecf9!important;border-color:#a7cbe7!important;}
.proAccount .topProfileText {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;line-height:1.25;}
.proAccount .topProfileText .activeRole {display:block;position:static!important;transform:none!important;margin:3px auto 0!important;text-align:center;max-width:100%;}
@media(max-width:650px){#qrRegistrationPanel .qrScannerActions{display:flex;flex-wrap:wrap;gap:8px;}#qrRegistrationPanel .qrScannerActions button,#qrRegistrationPanel .qrScannerActions .qrUploadButton{flex:1 1 160px;max-width:100%;} .proAccount .topProfileText{gap:2px;}}

/* V12.245 – online-status leesbaar op alle schermen */
#onlineUsersFooter.navOnlineUsers{opacity:1!important;color:#9f2335!important;}
#onlineUsersFooter.navOnlineUsers b,#onlineUsersFooter.navOnlineUsers .onlineNames{color:#a51f35!important;opacity:1!important;font-weight:700!important;}
@media(max-width:900px){#onlineUsersFooter.navOnlineUsers .onlineNames{display:inline!important;overflow-wrap:anywhere;}}

/* Judopunten: dezelfde lichte vormgeving als de bestaande clubpagina's. */
.snsRewardsPage{padding:24px;max-width:1400px;margin:auto}.snsRewardsCard{background:#fff;border:1px solid #e0e8f2;border-radius:18px;padding:28px;box-shadow:0 8px 28px #19375a09}.snsRewardsCard h1{color:#162f55;font-size:clamp(24px,3vw,36px);margin:8px 0}.snsRewardsCard h2{margin:26px 0 12px;font-size:20px;color:#173a5e}.snsRewardsEyebrow{letter-spacing:.18em;color:#b4544c;font-size:12px}.snsRewardsTools{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:22px 0}.snsRewardsTools label{min-width:220px;flex:1}.snsRewardsBalance{padding:24px;border-radius:14px;background:#eff6ff;display:flex;flex-direction:column;gap:5px}.snsRewardsBalance strong{font-size:40px;color:#234e84}.snsRewardsBalance small{color:#59708d}.snsGiftGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.snsGift{padding:18px;border:1px solid #e1e9f4;border-radius:14px;display:flex;flex-direction:column;gap:10px}.snsGift p{margin:0;min-height:28px}.snsGift small{color:#65758b}.snsRewardRow{padding:12px 0;display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e8edf5}.snsRewardsPage button:not(.outline){background:#dceafb!important;color:#244c7e!important;border:1px solid #b8d2f2!important;border-radius:10px!important}.snsRewardsPage button:disabled{opacity:.5}.snsRewardsPage .outline{border:1px solid #b8d2f2!important;background:#fff!important;color:#244c7e!important}.snsRewardsPage label{display:flex;flex-direction:column;gap:5px;margin:6px 0}.snsRewardsPage input,.snsRewardsPage select{max-width:100%;min-width:0}.snsRewardsPage form{display:grid;gap:8px;max-width:520px}@media(max-width:600px){.snsRewardsPage{padding:10px}.snsRewardsCard{padding:16px}.snsRewardsTools{flex-direction:column;align-items:stretch}.snsRewardsTools label{min-width:0}.snsGiftGrid{grid-template-columns:1fr}}

.snsGiftImage{width:100%;height:125px;object-fit:contain;border-radius:10px;background:#f7faff}

/* V12.247: beheermodules in de bestaande lichte Sen No Sen-stijl */
#rewardGiftManager,#rewardReasonsBlock{margin-top:22px;padding:18px;border:1px solid #e1e9f4;border-radius:14px;background:#fbfdff}
#rewardGiftList{margin:10px 0 18px}#rewardPhotoPreview{border-radius:12px;border:1px solid #dce6f4;padding:6px;background:white}
@media(max-width:600px){#rewardGiftManager,#rewardReasonsBlock{padding:12px}.snsRewardRow{flex-wrap:wrap}}

/* V12.248: rewards lives inside the dashboard workspace, never below the application. */
.dashWorkspace>.snsRewardsPage{width:100%;max-width:none;min-width:0;margin:0;padding:clamp(12px,2.4vw,32px);box-sizing:border-box;align-self:stretch}
.snsRewardsPage[hidden],.snsRewardArea[hidden],[data-reward-section][hidden]{display:none!important}
.snsRewardsCard{max-width:1450px;margin:0 auto;padding:clamp(18px,2.5vw,36px);overflow:hidden}
.snsRewardsCard>p{color:#75849a;margin:8px 0 22px}
.snsRewardsTabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #e3eaf4;margin:24px 0 18px;padding-bottom:10px}
.snsRewardsTabs button{border:0!important;background:transparent!important;color:#354d72!important;font-weight:600;padding:13px 15px;min-height:44px;border-radius:11px!important}
.snsRewardsTabs button.is-active{background:#eaf3ff!important;color:#1753a4!important}
.snsRewardsTabs button[hidden]{display:none!important}
.snsRewardsTools{margin:8px 0 18px;max-width:550px}
.snsRewardOverview{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.snsRewardsBalance{min-height:145px;justify-content:center;padding:28px;background:linear-gradient(125deg,#eaf4ff,#f2f7ff)}
.snsRewardsBalance strong{font-size:44px;line-height:1.1;color:#153c77}
.snsRewardsGiftSummary{border:1px solid #e2eaf4;border-radius:14px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;padding:25px;background:#fff}
.snsRewardsGiftSummary>span{color:#637792}.snsRewardsGiftSummary strong{font-size:19px;color:#1c355c}
.snsRewardArea{margin-top:20px}
.snsRewardArea .snsGiftGrid{grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:16px}
.snsRewardArea .snsGift{background:white;box-shadow:0 3px 12px #203d5a08}
.snsRewardArea .snsGiftImage{height:155px}
#rewardAdmin [data-reward-section]{margin-top:18px}
@media(max-width:760px){.snsRewardOverview{grid-template-columns:1fr}.snsRewardsTabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.snsRewardsTabs button{white-space:nowrap;flex-shrink:0}.snsRewardsCard{padding:16px}.snsRewardsGiftSummary{min-height:110px}.snsRewardArea .snsGiftGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.snsRewardArea .snsGiftGrid{grid-template-columns:1fr}}

/* V12.250 */
.snsMemberRewardCard{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:16px 0;padding:20px 24px;background:#eef5ff;border:1px solid #d9e6f8;border-radius:16px}.snsMemberRewardCard[hidden],#goRewardManagement[hidden]{display:none!important}.snsMemberRewardCard>div{display:grid;gap:4px}.snsMemberRewardCard strong{font-size:32px;line-height:1.2;color:#183d77}.snsMemberRewardCard small{color:#62728b}#rewardsPanel .snsRewardsTabs button{background:#f1f6fe;color:#274d84;border:1px solid #d3e2fa}#rewardsPanel .snsRewardsTabs button.is-active{background:#e0edff;border-color:#b8d2fa}@media(max-width:650px){.snsMemberRewardCard{padding:15px;align-items:stretch}.snsMemberRewardCard button{width:100%}}

/* V12.251: uniform profile alignment, independent of older offsets */
body.dashboardMode .dashTop .profileIdentity{display:flex!important;align-items:center!important;gap:10px!important;height:58px!important;min-height:0!important;padding:4px 8px!important}
body.dashboardMode .dashTop .topProfileText{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;line-height:1.1!important;max-width:240px!important}
body.dashboardMode .dashTop .topProfileText>b{position:static!important;margin:0!important;line-height:1.15!important;white-space:nowrap!important;font-size:14px!important}
body.dashboardMode .dashTop #activeRole{position:static!important;top:auto!important;transform:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:auto!important;min-height:24px!important;margin:0!important;padding:4px 10px!important;border-radius:14px!important;background:#e7f2ff!important;color:#24518a!important;font-size:11px!important;line-height:1.1!important}
body.dashboardMode .dashTop .topProfileAvatar{flex:0 0 42px!important}
body.dashboardMode .dashTop .profileChevron{align-self:center!important}
/* Member-facing points and management are separate navigation destinations. */
#rewardsPanel.snsRewardManageMode .snsRewardsTabs,#rewardsPanel.snsRewardManageMode .snsRewardsTools,#rewardsPanel.snsRewardManageMode .snsRewardOverview,#rewardsPanel.snsRewardManageMode .snsRewardArea{display:none!important}
#rewardsPanel:not(.snsRewardManageMode) .snsRewardManagementTabs,#rewardsPanel:not(.snsRewardManageMode) #rewardAdmin{display:none!important}
#rewardsPanel .snsRewardManagementTabs{display:flex;flex-wrap:wrap;gap:9px;padding:12px 0 22px;border-bottom:1px solid #e4ebf5;margin-bottom:22px}
#rewardsPanel .snsRewardManagementTabs[hidden],#rewardsPanel .snsRewardManagementTabs button[hidden]{display:none!important}
#rewardsPanel .snsRewardManagementTabs button{background:#f1f6fe!important;border:1px solid #d1e0f4!important;border-radius:10px!important;color:#254b80!important;padding:11px 15px!important}
#rewardsPanel .snsRewardManagementTabs button.is-active{background:#dfeeff!important;border-color:#adc9ee!important}
#rewardsPanel.snsRewardManageMode #rewardAdmin{display:block!important}
#rewardsPanel.snsRewardManageMode #rewardAdmin [data-reward-section][hidden],#rewardsPanel.snsRewardManageMode #rewardAdmin [hidden]{display:none!important}
@media(max-width:760px){body.dashboardMode .dashTop .topProfileText{display:none!important}#rewardsPanel .snsRewardManagementTabs{flex-direction:column}#rewardsPanel .snsRewardManagementTabs button{width:100%!important}}

/* V12.253 — remove distracting sidebar/header separator only */
body.dashboardMode #app .dashSidebar .dashBrand{border-bottom:0!important;box-shadow:none!important}
body.dashboardMode #app .dashSidebar .dashBrand::after{display:none!important}

/* V12.254 fotoalbum overzicht */
.snsGalleryGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:16px;margin-top:16px}
.snsGalleryAlbum{display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;background:#fff;border:1px solid #dce7f0;border-radius:14px;padding:20px;min-height:155px;cursor:pointer;color:#20354a}
.snsGalleryAlbum:hover{border-color:#80afd4;box-shadow:0 4px 14px #133b5714}
.snsGalleryAlbumIcon{font-size:30px;color:#4686b5}.snsGalleryAlbum small{color:#6c7d8c}
.snsGalleryPhoto{margin:0;padding:10px;background:#fff;border:1px solid #e1e9ef;border-radius:12px}
.snsGalleryPhoto img{width:100%;height:200px;object-fit:cover;border-radius:8px}
.snsGalleryPhoto a{display:block;margin-top:8px}

/* V12.258 — consistente lichte acties op de ledenpagina */
#new.snsSoftAction,#trainerParentForm .snsSoftAction{background:#fff!important;color:#2464a1!important;border:1px solid #9bc2eb!important;box-shadow:none!important;border-radius:11px!important;padding:11px 18px!important;min-height:42px!important;font-weight:650!important;width:auto!important;max-width:100%!important;}
#new.snsSoftAction:hover,#trainerParentForm .snsSoftAction:hover{background:#eef6ff!important;}
#trainerParentForm .snsParentSubmit{justify-self:end;align-self:end;}

/* V12.259: consistent light album-management action buttons */
#snsAlbumForm button[type="submit"],#snsAlbumUpload,#snsAlbumList button:not([data-album-delete]){background:#fff!important;color:#21549a!important;border:1px solid #a8c4e9!important;border-radius:11px!important;box-shadow:none!important;min-height:40px}
#snsAlbumForm button:hover,#snsAlbumUpload:hover,#snsAlbumList button:not([data-album-delete]):hover{background:#edf5ff!important}
#snsAlbumList button[data-album-delete]{background:#fff!important;color:#a32c39!important;border:1px solid #e6aeb5!important}
#snsAlbumList .snsAlbumEntry button{margin:4px 6px 4px 0}

/* V12.261: compact fotoalbumbeheer en albumomslagen */
.snsAlbumPhotos{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px;align-items:start}
.snsAlbumPhotos .snsManagePhoto{min-width:0;padding:8px;border:1px solid #dce7f0;border-radius:12px;background:#fff}
.snsAlbumPhotos .snsManagePhoto>img{width:100%!important;height:140px!important;max-width:100%!important;object-fit:cover;display:block;border-radius:8px;cursor:zoom-in}
.snsManagePhotoActions{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.snsManagePhotoActions button,.snsManagePhotoActions a{font-size:12px!important;min-height:30px!important;padding:5px 8px!important;background:#fff!important;color:#24549a!important;border:1px solid #abc7e7!important;border-radius:8px!important;text-decoration:none!important}
.snsManagePhotoActions [data-photo-delete]{color:#ad3542!important;border-color:#e4a8af!important}
.snsGalleryAlbum .snsAlbumCover{width:100%;height:145px;object-fit:cover;border-radius:10px;margin-bottom:4px}
@media(max-width:520px){.snsAlbumPhotos{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V12.262: dropzone, PDF miniatuur en logo-omslag */
.snsDropZone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:2px dashed #92bce5;border-radius:15px;background:#f6faff;color:#225b97;padding:24px 14px;text-align:center;cursor:pointer;min-height:142px}
.snsDropZone.dragging,.snsDropZone:hover{background:#e8f3ff;border-color:#3378bb}
.snsDropZone:focus-visible{outline:3px solid #3378bb;outline-offset:2px}
.snsDropZone .snsDropIcon{font-size:30px;line-height:1}
.snsDropZone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.snsDropZone span:not(.snsDropIcon){font-size:13px;color:#536f8b}
.snsPdfThumb{position:relative;width:100%;height:140px;border-radius:8px;overflow:hidden;background:#edf3fa;border:1px solid #d5e2ed}
.snsPdfThumb iframe{width:100%;height:100%;border:0;pointer-events:none;background:#fff}
.snsPdfThumb span{position:absolute;bottom:0;left:0;right:0;padding:4px 6px;background:#f8fbffed;color:#234a73;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.snsGalleryPhoto .snsPdfThumb{height:200px}
.snsGalleryAlbum .snsAlbumCover{object-fit:contain;background:#f3f7fb}

/* V12.263 — compacte, transparante albumtegels */
#snsGalleryAlbums.snsGalleryGrid{grid-template-columns:repeat(auto-fill,minmax(150px,180px));gap:18px 20px;justify-content:start;align-items:start}
#snsGalleryAlbums .snsGalleryAlbum{width:100%;min-height:0;padding:7px 5px 12px;background:transparent!important;border:1px solid transparent!important;border-radius:12px;box-shadow:none!important;gap:5px;transition:background-color .15s ease,transform .15s ease}
#snsGalleryAlbums .snsGalleryAlbum:hover,#snsGalleryAlbums .snsGalleryAlbum:focus-visible{background:rgba(70,134,181,.07)!important;transform:translateY(-2px);outline:none}
#snsGalleryAlbums .snsGalleryAlbum .snsAlbumCover{width:100%;height:140px;max-width:170px;object-fit:contain;background:transparent!important;border-radius:9px;margin:0 0 6px}
#snsGalleryAlbums .snsGalleryAlbum strong{font-size:14px;line-height:1.3;color:#173a5e}
#snsGalleryAlbums .snsGalleryAlbum small,#snsGalleryAlbums .snsGalleryAlbum span{font-size:12px;line-height:1.3;overflow-wrap:anywhere}
@media(max-width:440px){#snsGalleryAlbums.snsGalleryGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#snsGalleryAlbums .snsGalleryAlbum .snsAlbumCover{height:116px}}

/* V12.264 — gecentreerde albuminhoud en subtiele scheiding */
#snsGalleryAlbums.snsGalleryGrid{gap:18px 20px}
#snsGalleryAlbums .snsGalleryAlbum{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;border:1px solid #dde7f0!important;border-radius:12px;padding:10px 8px 14px;background:transparent!important;min-height:210px;box-sizing:border-box}
#snsGalleryAlbums .snsGalleryAlbum .snsAlbumCover{display:block;margin:0 auto 8px;max-width:100%;height:140px;object-fit:contain}
#snsGalleryAlbums .snsGalleryAlbum strong,#snsGalleryAlbums .snsGalleryAlbum small,#snsGalleryAlbums .snsGalleryAlbum span{display:block;width:100%;text-align:center;margin-left:auto;margin-right:auto;overflow-wrap:anywhere}
#snsGalleryAlbums .snsGalleryAlbum:hover,#snsGalleryAlbums .snsGalleryAlbum:focus-visible{border-color:#a7c9e6!important;background:rgba(70,134,181,.07)!important}
@media(max-width:440px){#snsGalleryAlbums .snsGalleryAlbum{min-height:190px;padding:8px 5px 12px}#snsGalleryAlbums .snsGalleryAlbum .snsAlbumCover{height:116px}}
