.account-logout {
  width: 100%;
  margin-top: 12px;
  padding: 9px 12px;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 9px;
  background: rgba(255, 255, 255, .06);
  color: #f4eee3;
  font-weight: 750;
  text-align: center;
}
.account-logout:hover { background: rgba(255, 255, 255, .13); }
.sidebar-bottom .profile { gap: 13px; padding: 8px 7px; align-items:center; }
.sidebar-bottom .profile .avatar { width: 76px; height: 76px; min-width: 76px; font-size: 20px; border: 3px solid rgba(255,255,255,.82); box-shadow:0 10px 28px rgba(0,0,0,.22); }
.sidebar-bottom .profile .avatar img { display:block; width:100%; height:100%; padding:4.3%; box-sizing:border-box; object-fit:contain; object-position:50% 50%; transform:none; }
.sidebar-bottom .profile > span:nth-child(2) { min-width: 0; text-align: left; }
.sidebar-bottom .profile strong { font-size: 16px; line-height:1.2; }
.sidebar-bottom .profile small { margin-top: 5px; font-size: 12px; line-height:1.3; }
.top-message-button { min-height: 42px; display: inline-flex; align-items: center; gap: 7px; position: relative; padding: 0 14px; border: 1px solid #d4ddd8; border-radius: 10px; background: #fff; color: #1b2d24; font-weight: 800; }
.top-message-button:hover { border-color: #9db5a8; background: #f7faf8; }
.top-message-button .notification-dot { position: absolute; top: 7px; right: 7px; }
.student-side-bottom .account-logout { margin-top: 10px; }
.password-control { position: relative; display: block; width: 100%; }
.password-control > input { width: 100%; padding-right: 88px !important; }
.password-toggle {
  position: absolute;
  right: 7px;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  border-radius: 7px;
  background: #edf2ef;
  color: #244638;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 800;
}
.password-toggle:hover { background: #dfeae4; }
.danger-action {
  border: 1px solid #dfaaa4;
  border-radius: 10px;
  background: #fff4f2;
  color: #9b362e;
  padding: 11px 16px;
  font-weight: 800;
}
.danger-action:hover { background: #fee8e5; }
.full-action { width: 100%; margin-top: 10px; }
.rivercoach-login .rivercoach-login-brand h1 {
  color: #f7f1e6 !important;
  text-shadow: 0 2px 24px rgba(0, 0, 0, .22);
}
.coach-settings-layout { display: grid; grid-template-columns: minmax(260px, .7fr) minmax(420px, 1.3fr); gap: 18px; align-items: start; }
.coach-brand-preview { min-height: 360px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; background: radial-gradient(circle at 50% 30%, color-mix(in srgb, var(--coach-accent, #176347) 55%, transparent), transparent 42%), #0a1b14 !important; color: #fff; }
.coach-brand-preview small { color: #d8b47e; font-weight: 900; letter-spacing: .14em; }
.coach-settings-layout .coach-brand-preview h3 { margin: 18px 0 8px; color: #fff !important; font: 700 28px/1.15 Georgia, serif; text-shadow: 0 2px 22px rgba(0,0,0,.32); }
.coach-settings-layout .coach-brand-preview { position:sticky; top:20px; }
.coach-brand-preview p { max-width: 310px; color: #bdcec5; line-height: 1.55; }
.coach-logo-preview { width: 116px; height: 116px; margin-bottom: 24px; border: 4px solid rgba(255,255,255,.78); border-radius: 50%; display: grid; place-items: center; overflow: hidden; background: var(--coach-accent, #176347); color: #fff; font: 800 28px/1 Georgia, serif; box-shadow: 0 18px 46px rgba(0,0,0,.25); }
.coach-logo-preview img { width: 100%; height: 100%; padding: 5px; box-sizing: border-box; object-fit: contain; object-position: center; transform-origin: center; will-change: transform; }
.coach-logo-picker { display: grid; justify-items: center; cursor: pointer; color: #efd29f; font-size: 13px; font-weight: 850; }
.coach-logo-picker .coach-logo-preview { margin-bottom: 10px; transition: transform .18s ease, box-shadow .18s ease; }
.coach-logo-picker:hover .coach-logo-preview { transform: translateY(-2px); box-shadow: 0 20px 50px rgba(0,0,0,.34), 0 0 0 5px rgba(255,255,255,.1); }
.coach-logo-picker strong { margin-bottom: 22px; color: #efd29f !important; text-decoration: underline; text-underline-offset: 4px; }
.coach-settings-form { display: grid; gap: 16px; }
.coach-settings-form .field { gap: 8px; }
.coach-settings-form .field label { font-size: 12px; color: #52635a; letter-spacing: .04em; }
.coach-settings-form input { min-height: 46px; border: 1px solid #cbd8d0; border-radius: 10px; padding: 11px 13px; background: #fff; }
.coach-settings-form textarea { width: 100%; border: 1px solid #cbd8d0; border-radius: 10px; padding: 11px 13px; background: #fff; resize: vertical; }
.logo-framing-controls { display: grid; gap: 12px; margin: 0; padding: 15px; border: 1px solid #d7e1db; border-radius: 12px; background: #f8faf8; }
.logo-framing-controls legend { padding: 0 7px; color: #52635a; font-size: 12px; font-weight: 900; letter-spacing: .05em; }
.logo-framing-controls label { display: grid; grid-template-columns: 120px 1fr 54px; gap: 10px; align-items: center; color: #34483e; font-size: 13px; font-weight: 750; }
.logo-framing-controls input[type="range"] { min-height: 24px; padding: 0; accent-color: var(--coach-accent,#176347); }
.logo-framing-controls .secondary { justify-self: start; }
.admin-welcome h2,.coach-welcome h2,.hero h2,.student-hero h2,.coach-settings-layout .coach-brand-preview h3,.rivercoach-login-brand h1 { color: #fff !important; text-shadow: 0 2px 24px rgba(0,0,0,.28); }
.coach-color-control { display: flex; gap: 12px; align-items: center; }
.coach-color-control input[type="color"] { width: 70px; padding: 5px; }
.coach-color-control output { font-weight: 800; color: #43544b; }
.coach-settings-form > .primary { justify-self: start; min-width: 240px; background: var(--coach-accent, #176347); }
.settings-accordion { border:1px solid #cbd8d0; border-radius:12px; background:rgba(255,255,255,.72); overflow:hidden; }
.settings-accordion summary { cursor:pointer; padding:15px 17px; color:#20372c; font-weight:800; list-style:none; }
.settings-accordion summary::-webkit-details-marker { display:none; }
.settings-accordion summary::after { content:'＋'; float:right; color:var(--coach-accent,#176347); }
.settings-accordion[open] summary::after { content:'−'; }
.settings-accordion[open] summary { border-bottom:1px solid #d9e2dc; }
.settings-accordion-content { display:grid; gap:16px; padding:17px; }
.student-settings-panel { margin-bottom:24px; }
.student-settings-form { display:grid; gap:14px; max-width:820px; }
.student-settings-form>.primary { justify-self:start; min-width:230px; }
.student-settings-form input[type="color"] { width:100%; min-height:48px; padding:4px; }
body.student-settings-mode #studentHome > :not(.student-topbar):not(#studentSettings) { display:none !important; }
body[data-account-role="coach"] .primary { background: var(--coach-accent, #176347); }
body[data-account-role] .sidebar,body.student-view .student-sidebar { background: var(--coach-sidebar,#14263d) !important; color: var(--coach-sidebar-text,#fff); }
body[data-account-role] .sidebar .nav-item,body[data-account-role] .sidebar .profile,body[data-account-role] .sidebar .sidebar-motto,body.student-view .student-sidebar nav button,body.student-view .student-sidebar .student-coach,body.student-view .student-sidebar .student-motto { color: var(--coach-sidebar-text,#fff); }
body[data-account-role] main,body.student-view .student-main { background-color: var(--coach-page-bg,#edf1ef) !important; color: var(--coach-text,#16283f) !important; font-family: var(--coach-body-font,Arial,sans-serif) !important; }
body[data-account-role] .panel:not(.coach-brand-preview),body[data-account-role] .stat-card,body[data-account-role] .session-card,body[data-account-role] .student-card,body[data-account-role] .topbar,body.student-view .upload-panel,body.student-view .mini-panel,body.student-view .student-resource-library { background-color: var(--surface,#fff) !important; }
body.student-view .student-topbar,body.student-view .student-settings-form,body.student-view .student-corrected-library,body.student-view .course-month-group,body.student-view .student-corrected-course,body.student-view .capture-card,body.student-view .video-library { background:var(--surface,#fff) !important; color:var(--coach-text,#16283f) !important; }
body[data-account-role] main h1,body[data-account-role] main h2,body[data-account-role] main h3,body.student-view .student-main h1,body.student-view .student-main h2,body.student-view .student-main h3 { font-family: var(--coach-heading-font,Georgia,serif) !important; }
body[data-account-role] .section-heading h2,body[data-account-role] .topbar h1,body[data-account-role] .panel:not(.coach-brand-preview) h3,body.student-view .student-topbar h1,body.student-view .student-resource-library h2 { color: var(--coach-text,#16283f); }
body[data-account-role] .topbar { min-height:116px; height:auto; padding:22px 0; align-items:center; }
body[data-account-role] .topbar { background-color:var(--coach-header,#fff) !important; }
body[data-account-role] .topbar>div:first-child { display:flex; min-height:72px; flex-direction:column; justify-content:center; }
body[data-account-role] .topbar .top-actions { align-self:center; }
.sidebar .sidebar-version,.student-sidebar .sidebar-version { display:inline-flex; width:max-content; margin-top:9px; padding:3px 7px; border:1px solid currentColor !important; background:transparent !important; color:inherit !important; font-size:9px; line-height:1; opacity:.68; }
body[data-account-role="owner"] main,body[data-account-role="coach"] main { padding-top:34px !important; }
body[data-account-role="owner"] .topbar,body[data-account-role="coach"] .topbar { display:none !important; }
@media(max-width:760px){
  body[data-account-role="owner"] main,body[data-account-role="coach"] main { padding-top:0 !important; }
  body[data-account-role="owner"] .topbar,body[data-account-role="coach"] .topbar { display:flex !important; min-height:64px; height:64px; padding:10px 0; background:transparent !important; border:0 !important; }
  body[data-account-role="owner"] .topbar>div,body[data-account-role="coach"] .topbar>div { display:none !important; }
}
.student-resource-admin { padding: 20px; }
.student-resource-list { display: grid; gap: 10px; }
.student-resource-row { display: grid; grid-template-columns: 1fr minmax(220px, 1.4fr) auto auto; gap: 12px; align-items: center; padding: 14px; border: 1px solid #dce5df; border-radius: 13px; background: #fbfcfb; }
.student-resource-row strong,.student-resource-row small { display: block; }
.student-resource-row small { margin-top: 3px; color: #718078; overflow: hidden; text-overflow: ellipsis; }
.student-resource-row label { display: flex; gap: 8px; align-items: center; color: #46564d; font-weight: 750; }
.student-resource-library { margin-top: 22px; padding: 24px; border: 1px solid #dce4df; border-radius: 18px; background: #fff; box-shadow: 0 8px 28px rgba(20,47,35,.045); }
.student-resource-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 12px; }
.student-resource-card { display: flex; align-items: center; gap: 12px; min-height: 88px; padding: 16px; border: 1px solid #dce5df; border-radius: 14px; background: linear-gradient(135deg,#f7fbf8,#fff); color: #14241c; text-decoration: none; }
.student-resource-card > span { width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; background: color-mix(in srgb,var(--coach-accent,#176347) 14%,white); color: var(--coach-accent,#176347); font-size: 21px; }
.student-resource-card strong,.student-resource-card small { display: block; }
.student-resource-card small { margin-top: 5px; color: #708078; }
.student-resource-empty { color: #708078; padding: 18px 0; }
.coach-welcome { background: radial-gradient(circle at 85% 18%, color-mix(in srgb, var(--coach-accent, #176347) 70%, transparent), transparent 34%), #0b2419; }
.coach-welcome-actions { display: flex; gap: 10px; margin-top: 22px; flex-wrap: wrap; }
/* Match the saved logo preview and keep both motto lines visible in the sidebar. */
.sidebar .sidebar-motto { padding: 86px 8px 8px; overflow: visible; }
.sidebar .motto-aces { left: 28px; top: 8px; width: 132px; height: 88px; }
.sidebar .motto-aces i { width: 61px; height: 82px; padding: 10px 8px; border-radius: 11px; font-size: 19px; }
.sidebar .motto-aces i:first-child { left: 2px; top: 6px; }
.sidebar .motto-aces i:last-child { left: 52px; top: 0; }
.sidebar .sidebar-motto p { width: 100%; margin: 0; font-size: 9px; line-height: 1.45; white-space: pre-line; overflow: visible; }
.sidebar .sidebar-bottom { padding-top: 6px; }
.clip-card-actions { display: grid; grid-template-columns: 1fr auto; gap: 8px; margin-top: auto; }
.clip-card-actions button { margin-top: 0 !important; }
.session-card.session-deleting { opacity:.58; filter:grayscale(.25); pointer-events:none; }
.session-card.session-deleting .session-delete-course { min-width:190px; }
@media (max-width: 860px) { .coach-settings-layout { grid-template-columns: 1fr; } .coach-brand-preview { min-height: 280px; position:static !important; } .student-resource-row { grid-template-columns: 1fr; } .logo-framing-controls label { grid-template-columns: 1fr; } }
