[hidden]{display:none!important}
.login-wrap{min-height:100dvh;display:grid;place-items:center;padding:24px;background:#173c42}
.login-card{width:100%;max-width:420px;background:#fff;border-radius:12px;padding:36px 30px;text-align:left}
.login-logo{display:block;width:220px;max-width:80%;margin:0 auto 18px;filter:brightness(0) saturate(100%) invert(27%) sepia(30%) saturate(900%) hue-rotate(145deg)}
.login-card .audience-badge{display:table;margin:0 auto 22px}
.login-card h1{font-size:22px;margin-bottom:10px;font-family:inherit;font-weight:600}
.login-card p{font-size:13px;color:var(--muted);line-height:1.9}
.login-card input{display:block;width:100%;padding:13px;border:1px solid #bfd2d5;border-radius:6px;font-size:16px;margin-bottom:16px}
.login-card .primary{width:100%}
.login-card .text-button{display:block;margin:16px auto 0}
.login-msg{margin-top:16px;padding:12px 14px;background:#eaf3f4;border-radius:6px;color:#173c42!important}
.env-badge{font-size:10px;font-weight:700;color:#8a5a00;background:#fff4dc;border:1px solid #f0d9a8;border-radius:4px;padding:3px 8px;margin-left:auto;white-space:nowrap}
.loading{color:var(--muted);font-size:13px;padding:40px 0}
.nav-count{display:inline-block;min-width:18px;margin-left:6px;padding:0 6px;border-radius:9px;background:#b23b3b;color:#fff;font-size:10px;line-height:18px;text-align:center}
.nav-count:empty{display:none}
.video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#0d2125;border-radius:10px;overflow:hidden;margin:18px 0 6px}
.video-frame iframe,.video-frame #yt-player{position:absolute;inset:0;width:100%;height:100%;border:0}
.share-preview-box{border:1px solid var(--line);border-radius:8px;padding:16px 18px;margin:16px 0;background:#f8fafb;font-size:13px;line-height:1.9;max-height:260px;overflow:auto}
.next-chapter{margin:22px 0;padding:20px;border:1px solid var(--line);border-radius:10px;background:#fff}
.next-chapter h3{margin:6px 0 14px}
.stage-dots li.outside{opacity:.45}
.plan-note{margin:14px 0 0}
.member-table tr.inactive td{opacity:.55}
.member-table small.unread{color:#b23b3b;font-weight:600}
.member-table.compact{min-width:0}
.member-table.compact td{padding:12px 10px}
.check-field{display:flex;gap:8px;align-items:flex-start;font-size:12px;margin:16px 0}
.sticky-actions{position:sticky;bottom:0;background:#f8fafb;padding:14px 0;margin:10px 0 24px;border-top:1px solid var(--line);z-index:5}
.member-progress,.sub-item{margin-top:22px}
.sub-item{border-top:1px solid var(--line);padding-top:14px}
.card.sub-item{border-top:1px solid var(--line);padding:20px;margin:0 0 16px}
.sub-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}
.sub-head small{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.sub-item p{font-size:13px;line-height:1.9}
.unread-item{border-left:3px solid var(--green)!important}
.history{font-size:12px;color:var(--muted);padding-left:18px;line-height:2}
.status.draft{color:#946200;font-weight:600}
@media(max-width:700px){.env-badge{font-size:9px;padding:2px 6px}.login-card{padding:28px 20px}.sub-head{flex-direction:column}}
