:root{--navy:#1e3a5f;--bg-light:#e4ecf5;--gold:#a6862f;--white:#fff;--error:#b3261e;--serif:"Times New Roman", Times, Georgia, serif;font:17px/1.5 var(--serif);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--navy);background:var(--bg-light)}*{box-sizing:border-box}body{margin:0}#root{flex-direction:column;min-height:100svh;display:flex}h1{color:var(--navy);margin:0 0 16px;font-size:32px;font-weight:700}h2{color:var(--navy);margin:24px 0 8px;font-size:20px;font-weight:700}a{color:var(--navy)}.site{flex-direction:column;flex:1;display:flex}.site-header{background:var(--white);align-items:center;gap:32px;padding:16px 32px;display:flex}.logo{color:var(--navy);font-size:18px;font-weight:700;text-decoration:none}.site-nav{flex:1;gap:24px;display:flex}.site-nav a{color:var(--navy);text-decoration:none}.site-nav a:hover{color:var(--gold)}.site-account{align-items:center;gap:16px;display:flex}.site-account a{text-decoration:none}.account-name{color:var(--navy)}.button-link{background:var(--gold);padding:8px 16px;color:var(--white)!important}.site-main{flex:1;padding:0 32px}.site-footer{background:var(--navy);color:var(--white);justify-content:space-between;align-items:center;padding:20px 32px;display:flex}.site-footer a{color:var(--white)}.site-footer .button-link{color:var(--white)!important}.page{width:100%;max-width:900px;margin:0 auto;padding:32px 20px}.home{max-width:1000px;margin:0 auto}.hero{text-align:center;padding:48px 0 32px}.hero-subtitle{color:var(--navy);opacity:.75}.topic-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;padding-bottom:48px;display:grid}.topic-card{background:var(--white);color:var(--navy);align-items:center;gap:12px;padding:16px;text-decoration:none;display:flex}.topic-card:hover{color:var(--gold)}.topic-number{background:var(--gold);width:32px;height:32px;color:var(--white);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.topic-card-locked{opacity:.6}.topic-soon{opacity:.8;margin-left:auto;font-size:13px;font-style:italic}.topic-card-placeholder{cursor:default;opacity:.5}.topic-card-placeholder:hover{color:var(--navy)}.topic-card-placeholder .topic-number{background:var(--navy);opacity:.5}.topic-card-placeholder .topic-title{font-style:italic}.breadcrumb{opacity:.75;font-size:14px}.topic-section{margin-top:8px}.muted{opacity:.6;font-style:italic}.video-player{background:#000;width:100%;max-width:900px}.video-wrap{max-width:900px;position:relative}.video-overlay{text-align:center;color:var(--white);background:#1e3a5feb;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:absolute;inset:0}.video-overlay p{max-width:420px;margin:0}.auth-form{flex-direction:column;gap:14px;width:100%;max-width:360px;margin:64px auto;padding:0 20px;display:flex}.auth-form label{text-align:left;flex-direction:column;gap:4px;font-size:15px;display:flex}.auth-form input{font:inherit;border:1px solid var(--navy);background:var(--white);color:var(--navy);padding:10px 12px}.auth-form img{background:#fff;align-self:center;padding:8px}button{font:inherit;border:1px solid var(--gold);background:var(--gold);color:var(--white);cursor:pointer;padding:10px 16px}button:disabled{opacity:.5;cursor:default}.form-error{color:var(--error);margin:0;font-size:14px}.consent-label{text-align:left;flex-direction:row;align-items:flex-start;gap:8px;font-size:13px;line-height:1.4;display:flex}.consent-label input{flex-shrink:0;margin-top:3px}.about-page{max-width:760px}.about-page p{margin:0 0 14px}.about-page h2:first-of-type{margin-top:8px}.about-note{background:var(--white);border-left:3px solid var(--gold);padding:12px 16px}.legal-page{text-align:left;max-width:700px}.legal-page p{margin-bottom:12px}.access-status{background:var(--white);border-left:3px solid var(--gold);max-width:560px;padding:20px 24px}.access-status h2{margin-top:0}.access-status p{margin:0 0 16px}.access-status .button-link{text-decoration:none;display:inline-block}.home .access-status{margin:0 auto 32px}.auth-form .button-link{text-align:center;text-decoration:none}.offer-meta{opacity:.7;font-size:14px}.offer-key{background:var(--white);border-left:3px solid var(--gold);padding:12px 16px}.footer-links{gap:20px;font-size:14px;display:flex}.footer-links a{text-decoration:none}.admin-layout{flex-direction:column;flex:1;display:flex}.admin-nav{background:var(--white);align-items:center;gap:16px;padding:16px 32px;display:flex}.admin-nav a{text-decoration:none}.admin-nav-note{opacity:.7;font-size:13px;font-style:italic}.admin-nav button{margin-left:auto}.admin-table-wrap{width:100%;overflow-x:auto}.admin-table{border-collapse:collapse;text-align:left;width:100%;font-size:15px}.admin-table th,.admin-table td{border-bottom:1px solid var(--bg-light);padding:8px 12px}.device-count-warning{color:var(--error);font-weight:700}.flags{flex-direction:column;gap:4px;display:flex}.flag{color:var(--error);font-size:13px;display:inline-block}.flag:before{content:"⚠ "}.block-reason{color:var(--error);font-size:13px}.inline-form{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.inline-form input{font:inherit;border:1px solid var(--navy);background:var(--white);color:var(--navy);flex:1;min-width:180px;padding:8px 10px}.stacked-form{flex-direction:column;gap:12px;max-width:620px;margin-bottom:24px;display:flex}.stacked-form label{flex-direction:column;gap:4px;font-size:15px;display:flex}.stacked-form input,.stacked-form textarea{font:inherit;border:1px solid var(--navy);background:var(--white);color:var(--navy);resize:vertical;padding:8px 10px}.saved-note{color:var(--gold);font-size:14px}.hint{opacity:.7;font-size:13px}.admin-list{flex-direction:column;gap:8px;margin:0 0 24px;padding:0;list-style:none;display:flex}.admin-list-item{background:var(--white);align-items:center;gap:12px;padding:12px 16px;display:flex}.admin-list-main{flex-direction:column;flex:1;min-width:0;display:flex}.admin-list-title{color:var(--navy)}.admin-list-meta{opacity:.7;overflow-wrap:anywhere;font-size:13px}.admin-list-actions{flex-shrink:0;gap:6px;display:flex}.admin-list-actions button{padding:6px 10px;font-size:14px}.upload-progress{width:100%;max-width:620px;height:20px}.note-viewer{background:var(--white);border:1px solid var(--navy);width:100%;height:70vh}.stat-row{flex-wrap:wrap;gap:16px;margin-bottom:24px;display:flex}.stat-card{background:var(--white);flex-direction:column;min-width:130px;padding:16px 20px;display:flex}.stat-value{color:var(--navy);font-size:28px;font-weight:700}.stat-label{opacity:.7;font-size:13px}.page-wide{max-width:1200px}.badges{flex-wrap:wrap;gap:6px;display:inline-flex}.badge{border:1px solid var(--navy);color:var(--navy);background:var(--white);white-space:nowrap;padding:2px 8px;font-size:13px;display:inline-block}.badge-ok{background:var(--navy);color:var(--white)}.badge-muted{opacity:.7}.badge-partial{border-color:var(--gold);color:var(--gold)}.topic-access-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;margin:0 0 24px;padding:0;list-style:none;display:grid}.topic-access-item{background:var(--white);cursor:pointer;opacity:.65;align-items:center;gap:10px;padding:10px 12px;display:flex}.topic-access-item.open{opacity:1}.badge-blocked{border-color:var(--error);color:var(--error)}.access-actions{flex-wrap:wrap;gap:6px;display:flex}.access-actions button{white-space:nowrap;padding:6px 10px;font-size:14px}button.button-secondary{background:var(--white);color:var(--navy);border-color:var(--navy)}button.button-danger{background:var(--white);color:var(--error);border-color:var(--error)}.login-cell{flex-direction:column;gap:2px;display:flex}.login-meta{opacity:.75;font-size:13px}.user-contact{opacity:.8;margin-top:-8px}.user-summary{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.ip-list{overflow-wrap:anywhere;font-size:14px}.secondary-button{border:1px solid var(--navy);color:var(--navy);white-space:nowrap;align-items:center;padding:6px 10px;font-size:14px;text-decoration:none;display:inline-flex}.secondary-button:hover{color:var(--gold);border-color:var(--gold)}.admin-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-title-row h1{margin-bottom:0}.admin-preview-banner{background:var(--white);border-left:3px solid var(--gold);padding:10px 16px;font-size:14px}.row-progress{vertical-align:middle;width:90px}.upload-filename{overflow-wrap:anywhere;max-width:260px;font-size:14px}.section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}button.button-small{padding:4px 10px;font-size:14px}.description-text{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--white);padding:14px 16px}.description-editor textarea,.comment-form textarea{width:100%;font:inherit;border:1px solid var(--navy);background:var(--white);color:var(--navy);resize:vertical;padding:10px 12px}.editor-actions{gap:8px;margin-top:8px;display:flex}.comment-list{flex-direction:column;gap:10px;margin:0 0 16px;padding:0;list-style:none;display:flex}.comment{background:var(--white);padding:12px 16px}.comment-head{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:4px;font-size:14px;display:flex}.comment-author{font-weight:700}.comment-role{border:1px solid var(--gold);color:var(--gold);padding:1px 6px;font-size:12px}.comment-date{opacity:.65}button.comment-delete{background:var(--white);color:var(--error);border-color:var(--error);margin-left:auto;padding:2px 8px;font-size:13px}.comment-body{white-space:pre-wrap;overflow-wrap:anywhere}.comment-form{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.setting-row{background:var(--white);cursor:pointer;align-items:flex-start;gap:10px;max-width:720px;padding:12px 16px;display:flex}.setting-row input{margin-top:4px}.setting-hint{margin-top:4px;display:block}.setting-actions{margin:12px 0 24px}@media (width<=640px){:root{font-size:16px}h1{font-size:24px}.site-header{flex-wrap:wrap;gap:12px 20px;padding:12px 16px}.site-nav{flex-basis:100%;order:3;gap:16px}.site-account{gap:10px;margin-left:auto}.account-name{display:none}.site-main{padding:0 16px}.site-footer{text-align:center;flex-wrap:wrap;gap:10px;padding:16px}.footer-links{flex-basis:100%;order:3;justify-content:center;gap:16px}.page{padding:20px 16px}.hero{padding:24px 0 16px}.topic-grid{grid-template-columns:1fr}.auth-form{margin:32px auto}.admin-nav{flex-wrap:wrap;padding:12px 16px}}
