:root { color-scheme: light; }
body { -webkit-text-size-adjust:100%; }
button, .secondary, input, select { min-height:44px; }
input, select, textarea { font-size:17px !important; }
.subtext, .notice, .person small { font-size:14px; }
.boot-error { padding:32px 24px; line-height:1.8; }
.backup-actions { display:grid; gap:14px; margin-top:24px; }
.backup-actions label { text-align:center; cursor:pointer; }
.bottomnav { padding-bottom: max(8px, env(safe-area-inset-bottom)); }
.sheet { padding-bottom:max(24px,env(safe-area-inset-bottom)); }
@media(max-width:600px) {
  h1 {font-size:25px;letter-spacing:-.5px;}
  .top {gap:12px;align-items:flex-start;}
  .top .avatar {display:none;}
  .top .primary {white-space:nowrap;padding:10px 12px;font-size:14px;}
  .eyebrow {font-size:13px;line-height:1.5;}
  .lesson h3 {font-size:18px;}
  .lesson p {font-size:14px;}
  .day {min-height:75px;}
  .personal-day {min-height:56px;}
  .calhead h2 {font-size:18px;}
  .sheet {max-height:90dvh;overflow-y:auto;}
  .fields {gap:14px;}
  .toast {max-width:calc(100vw - 24px);}
}
@media(max-width:400px) {
  .top h1 {font-size:22px;}
}
.session-locked aside,.session-locked main,.session-locked .bottomnav,.session-locked #modal,.session-locked .workspace-bar{display:none!important}
#auth-layer{display:none}.session-locked #auth-layer{display:flex;min-height:100dvh;align-items:center;justify-content:center;padding:28px 18px;background:linear-gradient(145deg,#fff8f8,#f6eded)}
.login-card{width:min(440px,100%);padding:36px 30px;border:1px solid #f0dddd;border-radius:28px;background:white;box-shadow:0 18px 60px #79373b0b}.login-icon{width:76px;height:76px;border-radius:20px;margin-bottom:22px}.login-card h1{font-size:28px;letter-spacing:0}.login-lead{font-size:17px;color:#967d80;margin:12px 0 28px}.login-card .field,.sheet form>.field{display:flex;flex-direction:column;gap:9px;margin:18px 0}.login-card label,.sheet form>.field label{font-size:16px;color:#665158}.login-card input,.sheet form>.field input{width:100%;border:1px solid #e7d8db;border-radius:12px;padding:13px 14px;background:white;color:var(--ink)}.login-card small{font-size:13px;line-height:1.5;color:#98858a}.form-error{color:#b7424c;font-size:15px;line-height:1.6;min-height:20px}.login-card .subtext{margin-top:22px;line-height:1.7}
.workspace-bar{margin-left:234px;padding:16px 48px 0;max-width:1500px;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;color:#6f5960;font-size:14px}.workspace-label{color:#a38e92}.workspace-actions{display:flex;gap:4px}.workspace-actions button{font-size:14px;padding:8px 12px;color:#b95562;border-radius:10px}.workspace-actions button:hover{background:#fff0f1}#network-status{margin:0;width:100%;color:#b07732;font-size:13px;line-height:1.6}#network-status:empty{display:none}.management-tools,.conflict-actions{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 20px}.conflict-actions{margin:12px 0 0}.user-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0;border-bottom:1px solid var(--line)}.user-row small{display:block;margin-top:7px;line-height:1.5;color:#9a858b}.user-row b{overflow-wrap:anywhere}.warning p{line-height:1.7}.backup-actions .secondary{display:block;padding:14px;text-align:center}button:disabled{opacity:.55;cursor:wait}
@media(max-width:800px){.workspace-bar{margin-left:0;padding:14px 22px 0;gap:8px}.workspace-actions button{padding:8px;font-size:13px}.workspace-label{display:none}}
@media(max-width:600px){.login-card{padding:28px 24px}.workspace-bar{font-size:13px}.management-tools{gap:8px}.management-tools button{font-size:14px;padding:10px 12px}.user-row{align-items:flex-start}.conflict-actions button{width:100%}}
aside{top:0}.stat small{font-size:13px}.chatwrap .notice{font-size:13px}.asidefoot{font-size:13px}
@media(max-width:1150px){.workspace-bar{margin-left:195px;padding-left:28px;padding-right:28px}}
@media(max-width:600px){.workspace-bar{margin-left:0;padding:12px 20px 0}.day small{font-size:13px}.stat small{font-size:12px}}

.home-screen-help{margin-top:26px;padding-top:18px;border-top:1px solid #e7d8db;font-size:15px;line-height:1.8;color:#75646b}.home-screen-help summary{cursor:pointer;color:#a64a57;font-weight:600;min-height:44px;padding:8px 0}.home-screen-help p{margin:10px 0}
