/* Staff pages keep their existing layout; this sheet only replaces their visual skin. */
html[data-staff-theme]{
  --bg:#F3F4F6;--surface:#fff;--ink:#1F1F24;--mute:#6B6B76;--line:#E3E4E8;
  --accent:#FF7F66;--on-accent:#1F1F24;--accent-ink:#B8452F;--accent-soft:#FFEDE8;
  --r:18px;--r-sm:12px;--sh:0 1px 2px rgba(16,24,40,.05),0 6px 16px rgba(16,24,40,.06);
  --head:"Nunito","PingFang SC","Microsoft YaHei",sans-serif;
  --body:"Nunito","PingFang SC","Microsoft YaHei",sans-serif;
  --staff-border:1px solid var(--line);--staff-button-shadow:none;--staff-active:var(--accent-soft);
  --staff-field:#F3F4F6;--staff-hi:var(--accent-soft);--staff-ok:#E3F4E4;
}
html[data-staff-theme="a"]{
  --bg:#FFFBF2;--line:#1F1F24;--accent-soft:#FFE3DA;--r:14px;--r-sm:10px;
  --sh:3px 3px 0 #1F1F24;--staff-border:2px solid var(--line);
  --staff-button-shadow:2px 2px 0 var(--line);--staff-active:#FFD15C;
  --staff-field:#fff;--staff-hi:#FFD15C;
}
html[data-staff-theme="c"]{
  --bg:#fff;--line:#E9E9EC;--accent:#1F1F24;--on-accent:#fff;--accent-ink:#1F1F24;
  --accent-soft:#F4F4F6;--r:12px;--r-sm:10px;--sh:none;
  --head:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
  --body:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
  --staff-field:#F4F4F6;--staff-hi:#F4F4F6;
}
html[data-staff-theme="d"]{
  --bg:#EDF1F6;--ink:#1B2A44;--mute:#5E6A80;--line:#D5DCE6;
  --accent:#1B2A44;--on-accent:#fff;--accent-ink:#1B2A44;--accent-soft:#E3E9F2;
  --r:16px;--r-sm:10px;--sh:0 1px 2px rgba(27,42,68,.06),0 6px 16px rgba(27,42,68,.07);
  --head:"Barlow Condensed","Nunito Sans","PingFang SC","Microsoft YaHei",sans-serif;
  --body:"Nunito Sans","PingFang SC","Microsoft YaHei",sans-serif;
  --staff-field:#EDF1F6;--staff-hi:#F0B23A;--staff-ok:#E1F2E8;
}
html[data-staff-theme] body{
  background:var(--bg);color:var(--ink);font-family:var(--body);
  --ink:inherit;--mute:inherit;--soft:var(--staff-field);--paper:var(--surface);
  --sun:var(--staff-hi);--sky:var(--accent-soft);--coral:var(--accent);
  --leaf:var(--staff-ok);--s:var(--accent);--c:var(--accent);
}
html[data-staff-theme="a"] body{background:#FFFBF2 radial-gradient(#EFE5CF 1.2px,transparent 1.5px) 0 0/24px 24px;}
html[data-staff-theme="d"] body{background:#EDF1F6 repeating-linear-gradient(135deg,rgba(27,42,68,.025) 0 10px,transparent 10px 20px);}
html[data-staff-theme] :is(h1,h2,h3){font-family:var(--head);}
html[data-staff-theme] :is(.box,.adm .box){background:var(--surface);color:var(--ink);border:var(--staff-border);border-radius:var(--r);box-shadow:var(--sh);}
html[data-staff-theme] :is(.btn,.tab,.mode,.lk,.go,.back,.chip,.sess,.gear,.drawer .x,.lessons button,.rplay,.play,.exp){
  font-family:var(--body);color:var(--ink);border:var(--staff-border);border-radius:var(--r-sm);
  box-shadow:var(--staff-button-shadow);
}
html[data-staff-theme] :is(.btn,.tab,.mode,.lk,.go,.back,.chip,.sess,.drawer .x,.lessons button,.rplay,.play,.exp){background:var(--surface);}
html[data-staff-theme] :is(.btn.go2,.btn.dl,.btn.sun,.go,.gear){background:var(--accent);color:var(--on-accent);}
html[data-staff-theme] :is(.tab[aria-selected="true"],.tab.on,.mode.on,.chip.on,.sess.on,.lk.on){background:var(--staff-active);color:var(--ink);box-shadow:var(--staff-button-shadow);}
html[data-staff-theme] :is(.filter,.fbar,.bulkbar,.dlbar,.dsec,.tw,.blk,.saved-note,.rgrp,.adm .rgrp,.adm .sect.danger){
  border:var(--staff-border);border-radius:var(--r-sm);box-shadow:none;
}
html[data-staff-theme] :is(.filter,.fbar,.bulkbar,.dlbar,.dsec,.tw,.blk,.rgrp,.adm .rgrp){background:var(--surface);}
html[data-staff-theme] :is(input:not([type=checkbox]):not([type=radio]),select,textarea,.inp,.search,.adm .card input:not([type=checkbox]),.adm .card textarea,.adm .card select){
  font-family:var(--body);color:var(--ink);background:var(--staff-field);border:1px solid var(--line);border-radius:var(--r-sm);
}
html[data-staff-theme] :is(.pill,.tag,.st,.sc,.av,.k,.adm .pill,.adm .tag,.adm .sc){border:var(--staff-border);box-shadow:none;}
html[data-staff-theme] :is(.pill.lvl,.pill.todo,.st.me,.acc.now>summary b){background:var(--staff-hi);}
html[data-staff-theme] :is(.pill.ok,.pill.done,.st.done){background:var(--staff-ok);}
html[data-staff-theme] :is(.new,.adm .tag.new,.dot,.num,.mode-dot),
html[data-staff-theme] .st.hot::after{background:var(--accent);color:var(--on-accent);border-color:var(--line);}
html[data-staff-theme] :is(.top h1,.adm .top h1){font-family:var(--head);color:var(--ink);background:transparent;border:0;border-radius:0;box-shadow:none;transform:none;padding:0;}
html[data-staff-theme="a"] .top h1{background:var(--accent-soft);border:2px solid var(--line);border-radius:var(--r-sm);padding:2px 12px;}
html[data-staff-theme] :is(.top h1 small,.tz,.meta,.day,.adm .day,.adm .sub){color:var(--mute);font-family:var(--body);}
html[data-staff-theme] :is(.adm .btn.del,.adm .sect.danger){box-shadow:none;}
html[data-staff-theme] :is(.adm .btn.solid,.adm .btn.out,.btn.out){color:var(--on-accent);background:var(--accent);border-color:var(--accent);}
html[data-staff-theme] :is(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible){outline:3px solid var(--accent-ink);outline-offset:2px;}
html[data-staff-theme]:not([data-staff-theme="a"]) :is(button:active:not(:disabled),button.press:not(:disabled)){transform:none;box-shadow:none;filter:brightness(.96);}
html[data-staff-theme] .drawer{background:var(--surface);border-left:var(--staff-border);}
html[data-staff-theme] .staff-theme-picker{display:inline-flex;align-items:center;gap:7px;margin-left:auto;white-space:nowrap;color:var(--mute);font:700 13px var(--body);}
html[data-staff-theme] .staff-theme-picker select{min-height:44px;padding:5px 9px;cursor:pointer;font-size:14px;font-weight:700;background:var(--surface);}

/* The login-only door sits over the existing ID/password steps. */
html[data-staff-theme] body.staff-door-page:has(#app.hidden){background:linear-gradient(180deg,#FFE3DA 0%,var(--bg) 62%) no-repeat,var(--bg);}
html[data-staff-theme="a"] body.staff-door-page:has(#app.hidden){background:#FFFBF2 radial-gradient(#EFE5CF 1.2px,transparent 1.5px) 0 0/24px 24px;}
html[data-staff-theme="c"] body.staff-door-page:has(#app.hidden){background:#fff;}
html[data-staff-theme="d"] body.staff-door-page:has(#app.hidden){background:linear-gradient(180deg,#D9E2EE 0%,var(--bg) 60%) no-repeat,var(--bg);}
html[data-staff-theme] body.staff-door-page .wrap:has(#app.hidden){min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:185px 16px 35px;}
html[data-staff-theme] body.staff-door-page .login.box{
  position:relative;width:100%;max-width:460px;margin:0;padding:92px 22px 22px;
  border:var(--staff-border);border-radius:var(--r);background:var(--surface);
  box-shadow:var(--sh);text-align:center;
}
html[data-staff-theme] body.staff-door-page .staff-wordmark{
  position:absolute;top:-180px;left:50%;transform:translateX(-50%);
  white-space:nowrap;font:900 30px/1 var(--head);color:var(--ink);
}
html[data-staff-theme] body.staff-door-page .staff-wordmark span{color:var(--accent-ink);}
html[data-staff-theme] body.staff-door-page .staff-peek{
  position:absolute;top:-70px;left:50%;transform:translateX(-50%);
  width:140px;height:140px;display:grid;place-items:center;overflow:hidden;
  background:var(--accent-soft);border:var(--staff-border);border-radius:50%;box-shadow:var(--sh);
}
html[data-staff-theme] body.staff-door-page .staff-peek img{width:112px;height:112px;object-fit:contain;margin-top:22px;}
html[data-staff-theme] body.staff-door-page .staff-welcome{margin:0 0 8px;color:var(--mute);font:700 14px/1.45 var(--body);}
html[data-staff-theme] body.staff-door-page .login h1{margin:0 0 4px;font:900 24px/1.3 var(--head);}
html[data-staff-theme] body.staff-door-page .staff-sub{margin:0 0 18px;color:var(--mute);font:700 14px/1.4 var(--body);}
html[data-staff-theme] body.staff-door-page .login form{display:grid;gap:0;text-align:left;}
html[data-staff-theme] body.staff-door-page .login form label{margin:0 0 6px;color:var(--mute);font:800 14px var(--body);}
html[data-staff-theme] body.staff-door-page .login input{
  width:100%;min-height:58px;padding:12px 14px;text-align:center;
  font:800 20px/1.2 var(--body);color:var(--ink);background:var(--staff-field);
  border:2px solid transparent;border-radius:var(--r-sm);outline:none;
}
html[data-staff-theme] body.staff-door-page .login input:focus{border-color:var(--accent);background:var(--surface);}
html[data-staff-theme] body.staff-door-page .login .btn{
  display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;
  margin-top:12px;padding:8px 14px;border:var(--staff-border);border-radius:var(--r-sm);
  background:var(--accent);color:var(--on-accent);box-shadow:var(--sh);font:900 18px var(--head);
}
html[data-staff-theme] body.staff-door-page .login .msg{margin-top:8px;color:var(--accent-ink);}
html[data-staff-theme] body.staff-door-page .login .staff-foot{margin:18px 0 0;color:var(--mute);font:700 13px/1.8 var(--body);}
html[data-staff-theme] body.staff-door-page .login .staff-foot a{color:var(--accent-ink);font-weight:800;text-decoration:none;}
html[data-staff-theme] body.staff-door-page .login .staff-foot a:hover{text-decoration:underline;}
@media (max-width:600px){
  html[data-staff-theme] body.staff-door-page .wrap:has(#app.hidden){padding-top:145px;}
  html[data-staff-theme] body.staff-door-page .login.box{padding:80px 20px 20px;}
  html[data-staff-theme] body.staff-door-page .staff-wordmark{top:-145px;}
  html[data-staff-theme] body.staff-door-page .staff-peek{width:120px;height:120px;top:-58px;}
  html[data-staff-theme] body.staff-door-page .staff-peek img{width:96px;height:96px;margin-top:18px;}
}
