:root{--paper:#f8f7f3;--white:#fff;--ink:#182e33;--muted:#697773;--forest:#245848;--forest-dark:#1a4438;--sage:#e8eee6;--line:#e5e8e0;--peach:#f5e7dc;--sky:#e8eef1;--radius:16px;--shadow:0 4px 18px #243b2c05}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px;color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}svg{width:22px;height:22px;flex-shrink:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:1.25;letter-spacing:-.035em}button{border:0}input,textarea,select{width:100%;border:1px solid #d8dfd6;border-radius:9px;padding:12px 14px;background:#fff;color:var(--ink);transition:border-color .18s,box-shadow .18s}input::placeholder,textarea::placeholder{color:#939e95}textarea{resize:vertical;min-height:100px}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--forest);box-shadow:0 0 0 3px #24584812}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #d8a16d;outline-offset:4px}input[readonly]{background:#f7f8f4}button:disabled{opacity:.55;cursor:not-allowed}label{display:block;font-size:13px;font-weight:650;color:#354c43;margin:0 0 7px}.field-help{font-size:12px;color:var(--muted);line-height:1.7}.field-help a{color:var(--forest);text-decoration:underline}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;padding:10px 15px;background:white;z-index:1000;border:1px solid var(--forest)}.skip-link:focus{top:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 20px;border-radius:8px;font-weight:650;font-size:13px;line-height:1.5;white-space:nowrap;min-height:43px;transition:background .15s,transform .15s;border:1px solid transparent}.button svg{width:18px;height:18px}.button:hover{transform:translateY(-1px)}.primary{background:var(--forest);color:white}.primary:hover{background:var(--forest-dark)}.secondary{background:white;color:var(--ink);border-color:#dbe2d8}.secondary:hover{background:#f2f5ed}.cream{background:#f5f0df;color:var(--forest-dark)}.cream:hover{background:white}.small-button{min-height:36px;padding:8px 13px;font-size:12px}.full{width:100%}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--forest);font-size:13px;font-weight:650}.text-link svg{width:16px}.text-link:hover{text-decoration:underline}.eyebrow{font-size:10px;font-weight:750;letter-spacing:.15em;text-transform:uppercase;color:#7d8c80}.pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:10px;font-weight:650;line-height:1.6;white-space:nowrap}.warm{background:#eadfc8;color:#695e42}.neutral{background:#f0f2ed;color:#6c7b6c}.sage{background:var(--sage);color:var(--forest)}.peach{background:var(--peach);color:#956b4d}.sky{background:var(--sky);color:#557785}.notice{display:flex;align-items:flex-start;gap:10px;border-radius:10px;padding:13px 16px;margin:0 0 22px;font-size:13px;line-height:1.6}.notice.error{border:1px solid #eecfc4;background:#fdf0e9;color:#8b4533}.notice.success{background:#e8f1e6;color:#2d603e;border:1px solid #d2e4cc}.notice svg{width:19px;height:19px;margin-top:1px}.brand{display:flex;gap:11px;align-items:center;color:#254c3d;font-size:25px;letter-spacing:-1.2px;font-weight:750;line-height:1.05}.brand-caption{display:block;font-size:9px;letter-spacing:3.4px;font-weight:650;margin:7px 0 0 2px;color:#81917f}.brand-mark{position:relative;display:grid;place-items:center;width:36px;height:42px;font-size:40px;line-height:1;font-family:Georgia,serif;font-weight:800;letter-spacing:0;color:var(--forest)}.brand-mark>span{position:absolute;width:12px;height:12px;border:2px solid #a8b9a3;right:-1px;top:3px;transform:rotate(30deg)}
/* Workspace */
.app-shell{display:flex;min-height:100vh}.sidebar{width:246px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:38px 24px 20px;border-right:1px solid var(--line);background:#fbfcf8;z-index:30}.sidebar .brand{padding-left:10px;margin-bottom:47px}.nav-label{font-size:8px;letter-spacing:.13em;font-weight:750;color:#9aa393;margin:0 0 15px 13px}.nav-item{display:flex;align-items:center;gap:13px;color:#6a7971;padding:12px 14px;border-radius:8px;font-weight:550;font-size:13px;margin-bottom:6px}.nav-item svg{width:19px;height:19px}.nav-item:hover{background:#f0f3eb;color:var(--forest)}.nav-item.active{background:#e7eee2;color:#315b40;font-weight:700}.admin-label{margin-top:32px}.sidebar-note{margin-top:auto;padding:38px 12px 29px}.tiny-spark{font-size:32px;font-weight:300;color:#9baf83;line-height:1.2}.sidebar-note p{font-size:11px;color:#87927f;line-height:1.85;margin-top:11px}.sidebar-note strong{font-weight:500;color:#596f55}.sidebar-bottom{display:flex;align-items:center;gap:7px;font-size:9px;color:#a0a99b;padding:18px 12px 0;border-top:1px solid var(--line)}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#6c9272;flex-shrink:0}.workspace{width:calc(100% - 246px);margin-left:246px}.topbar{height:89px;border-bottom:1px solid var(--line);padding:0 44px;display:flex;align-items:center;justify-content:space-between;background:#fafbf6}.breadcrumb{color:#758472;font-size:11px}.breadcrumb span{padding:0 12px;color:#b6beb0}.account-menu{position:relative;z-index:50}.account-menu summary{list-style:none;display:flex;align-items:center;gap:10px;cursor:pointer}.account-menu summary::-webkit-details-marker{display:none}.avatar{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;background:#e5eddd;border-radius:50%;color:#4c6d47;font-size:13px;font-weight:650;flex-shrink:0;letter-spacing:.02em}.avatar.small{width:34px;height:34px;font-size:10px}.avatar.tiny{width:28px;height:28px;font-size:9px}.avatar svg{width:20px;height:20px}.account-name{font-size:11px;line-height:1.4;color:#344e40;font-weight:650;max-width:170px}.account-name small{display:block;font-size:9px;color:#95a08d;font-weight:400;margin-top:3px}.chevron{color:#8c9c87;font-size:16px;margin-left:6px}.account-popover{position:absolute;top:calc(100% + 15px);right:0;min-width:238px;background:white;border:1px solid var(--line);padding:9px;border-radius:12px;box-shadow:0 14px 35px #20322313}.account-popover p{padding:8px 10px 12px;font-size:11px;color:var(--muted);border-bottom:1px solid var(--line);overflow-wrap:anywhere}.account-popover a,.account-popover button{display:flex;gap:8px;align-items:center;padding:10px;width:100%;background:transparent;font-size:12px;text-align:left;border-radius:7px}.account-popover a:hover,.account-popover button:hover{background:var(--sage)}.account-popover svg{width:16px;height:16px}.main-content{padding:38px 44px 0;max-width:1520px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:29px}.page-heading h1{font-size:27px;font-weight:650;letter-spacing:-.045em;margin:8px 0 9px}.subtitle{font-size:12px;color:#7e8a7b}.page-footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:24px 0;margin-top:45px;color:#9ca494;font-size:10px}.welcome-banner{background:#264f40;color:#fbfbf0;border-radius:17px;min-height:264px;display:flex;align-items:center;justify-content:space-between;padding:30px 35px;overflow:hidden;position:relative}.welcome-banner .pill{font-size:8px;letter-spacing:.08em;padding:4px 9px;background:#dce1b6;color:#445137}.welcome-banner h2{font-size:27px;font-weight:500;line-height:1.3;letter-spacing:-.03em;margin:15px 0 11px}.welcome-banner p{font-size:11px;line-height:1.8;color:#bbcebb}.welcome-banner .button{margin-top:20px;padding:10px 17px;min-height:38px;font-size:10px;gap:20px}.welcome-symbol{width:220px;height:210px;position:relative;display:flex;align-items:center;justify-content:center;margin-right:30px;flex-shrink:0}.welcome-symbol>span:first-child{position:relative;z-index:1;font-size:210px;font-weight:300;line-height:1;color:#bbcc8e;transform:rotate(14deg)}.symbol-circle{width:174px;height:174px;border:1px solid #5e7e5e;border-radius:50%;position:absolute;left:44px;top:15px}.symbol-circle:after{content:"";width:215px;height:110px;border:1px solid #5e7e5e;border-radius:50%;position:absolute;left:-45px;top:34px;transform:rotate(-30deg)}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:22px 0 34px}.stat-card{background:white;border:1px solid var(--line);border-radius:11px;display:flex;gap:16px;align-items:center;padding:19px 20px}.stat-icon{display:inline-flex;align-items:center;justify-content:center;width:41px;height:41px;border-radius:10px;flex-shrink:0}.stat-icon svg{width:20px;height:20px}.stat-card strong{font-size:24px;line-height:1.15;font-weight:600;letter-spacing:-.04em}.stat-card p{font-size:10px;color:#8b9584;margin-top:6px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:32px 0 18px}.section-heading h2{font-size:17px;font-weight:650;letter-spacing:-.035em}.section-heading .text-link{font-size:10px;gap:8px}.section-heading .text-link svg{width:14px;height:14px}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.course-card{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}.course-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #24433212}.course-art{height:142px;background:#e7eddd;position:relative;overflow:hidden;padding:15px}.course-card:nth-child(3n+2) .course-art{background:#e9e1d5}.course-card:nth-child(3n) .course-art{background:#dfe7e9}.course-category{position:relative;z-index:2;background:#ffffffe0;border-radius:5px;padding:4px 8px;font-size:8px;letter-spacing:.03em;color:#61705a;display:inline-block;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-art-icon{position:absolute;right:30px;bottom:13px;color:#7c9667;transform:rotate(-12deg)}.course-art-icon svg{width:77px;height:77px;stroke-width:1}.course-card:nth-child(3n+2) .course-art-icon{color:#a48a70}.course-card:nth-child(3n) .course-art-icon{color:#7a969a}.course-art-lines{position:absolute;width:130px;height:130px;border:1px solid #a6b7946b;border-radius:50%;left:-40px;bottom:-55px}.course-art-lines:after{content:"";position:absolute;border:1px solid #a6b7946b;width:150px;height:150px;border-radius:50%;left:24px;top:-26px}.draft-badge{position:absolute;bottom:12px;left:14px;font-size:8px;text-transform:uppercase;font-weight:650;letter-spacing:.09em;color:#81795d}.course-card-body{padding:18px 18px 0}.course-card h3{font-size:15px;line-height:1.4;font-weight:650;letter-spacing:-.025em}.course-description{font-size:11px;line-height:1.7;color:#85917f;margin:9px 0 18px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:37px}.course-meta{font-size:9px;color:#8a9683;display:flex;justify-content:space-between;gap:4px}progress{width:100%;height:4px;border:0;border-radius:3px;display:block;margin:9px 0 16px;background:#edf1e8;color:#6a915f}progress::-webkit-progress-bar{background:#edf1e8;border-radius:3px}progress::-webkit-progress-value{background:#6a915f;border-radius:3px}progress::-moz-progress-bar{background:#6a915f;border-radius:3px}.course-cta{font-size:10px;border-top:1px solid #edf0e8;padding:13px 0 15px;display:flex;justify-content:space-between;align-items:center;color:#58724c}.course-cta svg{width:15px;height:15px}.community-teaser{display:flex;align-items:center;gap:17px;padding:25px;background:#efeee5;border:1px solid #e8e7d9;border-radius:13px}.teaser-icon{color:#8e9b75;flex-shrink:0}.teaser-icon svg{width:32px;height:32px;stroke-width:1.2}.community-teaser h3{font-size:12px;font-weight:600}.community-teaser p{font-size:10px;color:#8b917f;margin-top:6px}.community-teaser .button{margin-left:auto;background:transparent;font-size:10px;padding:8px 12px;min-height:36px}.collection-label{display:flex;align-items:center;gap:8px;font-size:11px;color:#85907f;margin:-9px 0 25px}.empty-state{text-align:center;padding:65px 24px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.empty-state.compact{padding:34px 24px}.empty-icon{display:grid;place-items:center;width:60px;height:60px;background:#edf1e6;color:#789365;border-radius:19px;margin:0 auto 20px}.empty-icon svg{width:28px;height:28px;stroke-width:1.4}.empty-state h2{font-size:25px;margin:12px 0}.empty-state h3{font-size:18px;margin-bottom:12px}.empty-state p:not(.eyebrow){max-width:430px;margin:0 auto;color:#7b8876;font-size:12px;line-height:1.9}.empty-state .button{margin-top:24px}.empty-state .eyebrow{font-size:8px}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}.panel-heading{display:flex;align-items:center;gap:14px;margin-bottom:23px}.panel-heading h2{font-size:17px;font-weight:650}.panel-heading p{font-size:11px;color:var(--muted);margin-top:6px}.between{justify-content:space-between}.panel-description{font-size:12px;color:var(--muted);margin:0 0 20px;max-width:650px;line-height:1.9}.panel-empty{font-size:12px;color:var(--muted);padding:20px 0}.preserve-lines,.post-text{white-space:pre-wrap;overflow-wrap:anywhere}.stack-form{display:flex;flex-direction:column;gap:0}.stack-form label{margin-top:20px}.stack-form label:first-child{margin-top:0}.stack-form .field-help{margin-top:8px}.stack-form .button{align-self:flex-start;margin-top:24px}.stack-form .button.full{align-self:stretch}.two-fields{display:grid;grid-template-columns:1fr 100px;gap:20px}.two-fields label{margin-top:0}.back-link{margin-bottom:20px;font-size:11px}.check-label{display:flex;align-items:center;gap:12px;padding:14px;background:#f6f8f2;border-radius:9px;border:1px solid var(--line);cursor:pointer}.check-label input{width:17px;height:17px;accent-color:var(--forest);padding:0}.check-label strong{font-size:12px;font-weight:600;display:block}.check-label small{font-size:10px;font-weight:400;color:var(--muted);margin-top:3px;display:block}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:26px;align-items:start}.editor-note{padding:24px 15px;color:#6e8068}.editor-note h2{font-size:22px;color:#425e3f;line-height:1.4;font-weight:500;margin-top:17px}.editor-note p{font-size:12px;line-height:1.9;margin:18px 0}.editor-note ol{padding:18px 0 0 17px;font-size:11px;line-height:2.4;border-top:1px solid var(--line)}.lessons-editor{margin-top:28px}.lessons-editor .panel-heading{justify-content:space-between}.admin-lesson-list{padding:0;list-style:none;margin:0 0 25px}.admin-lesson-list li{display:flex;align-items:center;gap:13px;padding:15px 0;border-bottom:1px solid var(--line)}.admin-lesson-list li>span:nth-child(2){min-width:0;flex:1}.admin-lesson-list strong{display:block;font-size:12px}.admin-lesson-list small{display:block;font-size:11px;color:var(--muted);max-width:550px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-lesson-list a{font-size:10px}.lesson-form{padding-top:12px}.course-toolbar{display:flex;align-items:center;justify-content:space-between;margin:-5px 0 20px}.course-toolbar .text-link{font-size:11px}.classroom-grid{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:24px;align-items:start}.video-frame{aspect-ratio:16/9;background:#20392f;border-radius:14px;overflow:hidden}.video-frame iframe{width:100%;height:100%;border:0;display:block}.video-placeholder{height:100%;padding:30px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#eff3df}.video-placeholder>span{width:45px;height:45px;display:grid;place-items:center;border-radius:50%;border:1px solid #849b72;color:#bdcba6;margin-bottom:15px}.video-placeholder h3{font-size:16px;font-weight:500}.video-placeholder p{font-size:11px;color:#b8c6ac;margin-top:10px;max-width:400px;line-height:1.9}.video-placeholder .button{margin-top:18px;font-size:10px}.lesson-detail{padding:27px 0 22px}.lesson-kicker{font-size:9px;color:#8b9a80;letter-spacing:.12em;font-weight:650}.lesson-detail h2{font-size:23px;margin:9px 0 16px;font-weight:550}.lesson-detail>p{font-size:12px;color:#77866f;line-height:1.9;margin-bottom:21px}.lesson-detail .field-help{font-size:10px;margin:11px 0 0}.course-about{padding:24px}.course-about p:not(.eyebrow){font-size:12px;line-height:1.9;color:var(--muted);margin-top:12px}.lesson-sidebar{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}.lesson-sidebar-heading{padding:22px 20px;border-bottom:1px solid var(--line)}.lesson-sidebar-heading h2{font-size:14px;font-weight:650}.lesson-sidebar-heading>span{font-size:10px;color:var(--muted);display:block;margin-top:7px}.lesson-list{list-style:none;padding:9px;margin:0}.lesson-item{display:flex;align-items:center;gap:12px;padding:14px 10px;border-radius:9px;font-size:11px;line-height:1.6}.lesson-item:hover{background:#f4f6f0}.lesson-item.selected{background:#edf1e7}.lesson-item>span:nth-child(2){flex:1}.lesson-item small{font-size:9px;color:#919d87;display:block;margin-top:3px}.lesson-number{width:29px;height:29px;border:1px solid #dce4d5;display:grid;place-items:center;border-radius:50%;font-size:10px;color:#81936f;flex-shrink:0}.lesson-number.done{background:#e1ead5;border-color:#e1ead5;color:#6e8a56}.lesson-number svg{width:15px;height:15px}.current-dot{width:5px;height:5px;border-radius:50%;background:#6d8b58}.learning-tip{border-top:1px solid var(--line);display:flex;gap:9px;padding:18px;background:#fafbf7;color:#95a184}.learning-tip svg{width:15px;height:15px;margin-top:3px}.learning-tip p{font-size:9px;line-height:1.8}.lesson-empty{padding:20px;font-size:11px;color:var(--muted)}
/* Community and administration */
.community-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:25px;align-items:start}.feed{display:flex;flex-direction:column;gap:23px}.compose-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px}.compose-heading strong{font-size:13px}.compose-heading p{font-size:10px;color:var(--muted);margin-top:3px}.compose-form textarea{background:#f9faf6;border-color:#e6eadf;padding:15px;font-size:12px;min-height:115px}.compose-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:15px;gap:12px}.compose-bottom>span{font-size:9px;color:#9ba58f}.compose-bottom .button{font-size:11px}.post-header{display:flex;gap:12px;align-items:center;margin-bottom:18px}.post-header h3{font-size:12px;letter-spacing:-.01em}.post-header time{font-size:9px;color:var(--muted)}.post-card>.post-text{font-size:12px;line-height:1.9;color:#50654d;margin-bottom:21px}.comments{border-top:1px solid var(--line);padding-top:15px}.comments-label{display:flex;align-items:center;gap:6px;font-size:10px;color:#8e9d83;margin-bottom:15px}.comments-label svg{width:14px;height:14px}.comment{display:flex;gap:10px;padding:12px 0}.comment h4{font-size:10px;letter-spacing:0}.comment h4 time{font-size:8px;font-weight:400;color:var(--muted);margin-left:10px}.comment p{font-size:11px;line-height:1.8;color:#6f8065;margin-top:5px}.comment-form{display:flex;gap:8px;margin-top:13px}.comment-form input{font-size:11px;padding:10px;background:#f8faf4}.icon-button{display:grid;place-items:center;width:37px;height:37px;border-radius:8px;background:#e9efe1;color:#6b8854;flex-shrink:0}.icon-button svg{width:18px;height:18px}.community-card{padding:26px;background:#e9eddf;border:1px solid #e0e5d3;border-radius:14px}.community-card .tiny-spark{font-size:40px;color:#8da26b}.community-card h2{font-size:22px;font-weight:500;line-height:1.4;color:#3f5e3e;margin:17px 0}.community-card>p{font-size:11px;line-height:1.9;color:#829171;margin-bottom:23px}.community-rule{font-size:9px;color:#a0ae8e;padding:12px 0;border-top:1px solid #d9e0ca}.community-rule span{color:#768869;margin-left:15px;font-size:10px}.recent-posts{display:flex;flex-direction:column;gap:13px}.recent-post{display:flex;gap:14px;padding:19px 22px;border:1px solid var(--line);border-radius:12px;background:#fff}.recent-post>div{min-width:0;flex:1}.recent-post h3{font-size:11px;letter-spacing:0;display:flex;justify-content:space-between;gap:10px}.recent-post h3 time{font-size:9px;color:var(--muted);font-weight:400}.recent-post p{font-size:11px;line-height:1.8;margin-top:9px;color:#819076;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.members-layout{display:flex;flex-direction:column;gap:25px}.invite-form{display:grid;grid-template-columns:minmax(0,1fr) 180px auto;gap:18px;align-items:end}.invite-form label{font-size:11px}.invite-form input,.invite-form select{font-size:12px;min-height:43px}.invitation-panel .field-help{margin-top:13px;font-size:10px}.invite-result{margin-top:25px;padding:20px;background:#f0f5e9;border:1px solid #dce7cd;border-radius:10px}.invite-result>strong{font-size:13px;color:#557045}.invite-result>p:not(.field-help){font-size:11px;margin:7px 0 15px;color:#7c8c6f}.invite-result label{font-size:10px}.copy-row{display:flex;gap:9px}.copy-row input{font-size:11px;min-width:0;background:#fff}.copy-row button{font-size:10px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:11px;white-space:nowrap}th{font-size:9px;font-weight:550;letter-spacing:.04em;color:#97a18a;padding:0 15px 13px}td{padding:17px 15px;border-top:1px solid #edf0e6;color:#809071}th:first-child,td:first-child{padding-left:0}th:last-child,td:last-child{padding-right:0}.member-name{display:flex;align-items:center;gap:10px}.member-name strong{font-size:11px;font-weight:550;color:#4b6541}td .pill{font-size:8px}.settings-stack{display:flex;flex-direction:column;gap:25px;max-width:1050px}.connection-title{display:flex;align-items:center;gap:15px}.google-symbol{font-size:27px;display:grid;place-items:center;width:47px;height:47px;border:1px solid #e3e8dc;border-radius:12px;font-weight:750;color:#5d7950}.connected-account{display:flex;gap:14px;align-items:center;padding:18px;background:#f5f8ef;border:1px solid #e5eadc;border-radius:10px}.connected-account strong{font-size:12px}.connected-account p{font-size:10px;color:var(--muted);margin-top:4px}.connected-account form{margin-left:auto}.connection-pending{display:flex;align-items:flex-start;gap:14px;padding:20px;background:#f8f6ed;border:1px solid #ebe6d5;border-radius:10px}.connection-pending>span{color:#a79d7c}.connection-pending strong{font-size:12px;color:#827955}.connection-pending p{font-size:11px;color:#a2987b;line-height:1.9;margin-top:6px;max-width:650px}.password-panel .stack-form{max-width:520px}.search-form{display:flex;gap:10px;margin-bottom:20px}.search-form input{font-size:12px}.video-library{max-height:430px;overflow:auto}.video-library-item{display:flex;align-items:center;gap:13px;padding:17px 0;border-top:1px solid var(--line)}.video-library-item>div{flex:1;min-width:0}.video-library-item strong{display:block;font-size:12px;margin-bottom:6px}.video-library-item input{font-size:10px;padding:4px 8px;width:100%;max-width:380px;border:0;background:#f7f8f2}.video-library-item .button{font-size:10px}
/* Authentication */
.auth-shell{display:grid;grid-template-columns:46% 54%;min-height:100vh}.auth-story{background:#234b3d;min-height:100vh;display:flex;flex-direction:column;color:#f5f4e7;padding:46px 54px 29px;overflow:hidden}.brand.light{color:#f0f1dc}.brand.light .brand-mark{color:#d7e1b8}.brand.light .brand-caption{color:#9bab83}.brand.light .brand-mark>span{border-color:#8fa66f}.auth-story-content{max-width:450px;margin:auto 0;padding-top:55px}.auth-story-content .eyebrow{font-size:9px;color:#acbf8f;letter-spacing:.19em}.auth-story-content h2{font-size:43px;font-weight:400;line-height:1.2;letter-spacing:-.04em;margin:22px 0}.auth-story-content>p:not(.eyebrow){font-size:13px;color:#b5c7a6;line-height:1.95}.auth-story-footer{font-size:10px;color:#91aa7d;margin-top:23px}.learning-art{position:relative;height:290px;width:330px;margin:15px auto -4px}.art-orbit{position:absolute;border:1px solid #6d8b5a66;border-radius:50%;width:240px;height:240px;left:35px;top:20px}.orbit-two{width:300px;height:155px;top:64px;left:8px;transform:rotate(-35deg)}.art-card{position:absolute;top:55px;left:45px;transform:rotate(-8deg);width:220px;height:160px;padding:23px 24px;background:#dfe5c7;box-shadow:12px 17px 0 #163b2c50;border-radius:10px;display:flex;flex-direction:column}.art-icon{width:38px;height:38px;display:grid;place-items:center;background:#bdcba3;color:#6d8851;border-radius:9px;margin-bottom:15px}.art-icon svg{width:22px;height:22px}.art-line{height:4px;width:90px;border-radius:3px;background:#a5b78a;margin-top:7px}.art-line.long{width:149px}.art-progress{width:165px;height:4px;background:#b7c59f;margin-top:20px;border-radius:3px}.art-progress i{display:block;height:4px;width:108px;background:#5e7d43;border-radius:3px}.art-tag{font-size:6px;letter-spacing:.14em;color:#739055;margin-top:9px}.art-badge{position:absolute;right:34px;bottom:45px;width:51px;height:51px;border-radius:50%;background:#c9d89e;color:#527135;display:grid;place-items:center;border:5px solid #234b3d}.art-badge svg{width:23px;height:23px}.art-star{position:absolute;color:#b7c79b;font-size:55px;top:13px;right:8px}.auth-main{display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;padding:60px 45px;background:#fafbf7}.auth-form-wrap{width:100%;max-width:365px;margin:auto 0}.auth-form-wrap>.eyebrow{font-size:8px;color:#9ba58c;letter-spacing:.16em}.auth-form-wrap h1{font-size:31px;font-weight:600;letter-spacing:-.045em;margin:12px 0 16px}.auth-form-wrap .notice{margin-top:16px;font-size:12px}.form-intro{font-size:12px;line-height:1.9;color:#929e87;margin-bottom:27px}.auth-form-wrap label{font-size:11px}.auth-form-wrap input{padding:13px 14px;font-size:12px;background:white}.auth-form-wrap .button{font-size:12px;justify-content:space-between;margin-top:27px;min-height:47px}.label-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:20px}.label-row label{margin:0 0 7px}.label-row a{font-size:10px;color:#6e885a}.auth-invite-note{display:flex;align-items:flex-start;gap:10px;border-top:1px solid var(--line);padding-top:22px;margin-top:27px;color:#9aaa8d}.auth-invite-note svg{width:17px;height:17px;flex-shrink:0;margin-top:3px}.auth-invite-note p{font-size:10px;line-height:1.9;max-width:300px}.auth-footnote{font-size:9px;color:#a9b19d;margin-top:40px}.auth-secondary{font-size:11px;color:#8c9a7f;margin-top:23px}.auth-secondary a{color:#557743;font-weight:600}.email-chip{background:#eef3e7;color:#6f895b;padding:9px 13px;border-radius:7px;font-size:12px;margin-bottom:20px;overflow-wrap:anywhere}.auth-mobile-brand{display:none}.loading-bar{position:fixed;top:0;left:0;width:100%;height:3px;background:#98b47d;z-index:2000;opacity:0;pointer-events:none;transform:scaleX(.2);transform-origin:left;transition:opacity .1s}.loading-bar.htmx-request{opacity:1;animation:loading 1.5s ease-in-out infinite}@keyframes loading{0%{transform:scaleX(.1)}60%{transform:scaleX(.75)}100%{transform:scaleX(1)}}.network-notice{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);background:#fff3e8;color:#8d5331;border:1px solid #edd5c2;border-radius:10px;padding:15px 22px;max-width:90vw;box-shadow:0 7px 20px #0001;font-size:12px;z-index:200}
@media(min-width:1500px){.main-content{padding-left:60px;padding-right:60px}.topbar{padding-left:60px;padding-right:60px}.welcome-banner{min-height:295px}.welcome-banner h2{font-size:32px}.course-art{height:160px}}
@media(max-width:1200px){.sidebar{width:217px;padding-left:15px;padding-right:15px}.workspace{margin-left:217px;width:calc(100% - 217px)}.topbar{padding:0 30px}.main-content{padding:31px 30px 0}.page-heading h1{font-size:25px}.welcome-symbol{margin-right:0;width:190px}.stat-card{padding:17px 14px;gap:11px}.stat-card p{font-size:9px}.stat-icon{width:34px;height:34px}.community-layout{grid-template-columns:minmax(0,1fr) 215px}.community-card{padding:21px}.community-card h2{font-size:19px}.course-card-body{padding:15px 14px 0}.classroom-grid{grid-template-columns:minmax(0,1fr) 240px;gap:18px}.editor-grid{grid-template-columns:minmax(0,1fr) 220px;gap:18px}.auth-story{padding:40px}.auth-story-content h2{font-size:36px}.learning-art{margin-left:-5px}.invite-form{grid-template-columns:minmax(0,1fr) 155px;gap:15px}.invite-form>.button{grid-column:1/-1;justify-self:start}.course-meta{font-size:8px}.panel{padding:23px}}
@media(max-width:1000px){.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-grid>.course-card:nth-child(3){display:none}.page-heading{align-items:flex-start}.page-heading>.button{font-size:11px;padding:10px 12px}.welcome-banner{padding:27px}.welcome-banner h2{font-size:24px}.welcome-symbol{width:145px}.welcome-symbol>span:first-child{font-size:160px}.symbol-circle{width:140px;height:140px;left:15px;top:35px}.symbol-circle:after{width:155px;left:-20px;height:90px}.stat-grid{gap:10px}.stat-card{display:block;padding:16px}.stat-card .stat-icon{margin-bottom:12px}.stat-card strong{font-size:23px}.stat-card p{line-height:1.7}.community-layout{grid-template-columns:1fr}.community-aside{display:none}.community-teaser{flex-wrap:wrap}.community-teaser .button{margin-left:49px}.classroom-grid{grid-template-columns:1fr}.lesson-sidebar{order:-1}.lesson-sidebar-heading{padding:15px 18px;display:flex;justify-content:space-between;align-items:center}.lesson-sidebar-heading>span{margin:0}.lesson-list{display:flex;overflow:auto;gap:8px;padding:0 6px 4px}.lesson-list li{min-width:190px}.lesson-item{padding:10px}.learning-tip{display:none}.video-placeholder h3{font-size:15px}.editor-grid{grid-template-columns:1fr}.editor-note{display:none}.connected-account{flex-wrap:wrap}.connected-account form{margin-left:57px}.connection-title h2{font-size:15px}.connection-title p{font-size:10px}.auth-story{padding:36px 30px}.auth-story-content h2{font-size:32px}.auth-main{padding:55px 35px}.learning-art{transform:scale(.9);transform-origin:left center;margin-left:-15px}.auth-form-wrap h1{font-size:27px}.copy-row{flex-wrap:wrap}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:sticky;top:0;width:100%;height:auto;padding:12px 20px 0;border-right:0;border-bottom:1px solid var(--line);background:#fbfcf8;z-index:60}.sidebar .brand{font-size:20px;margin:0 0 13px;padding:0;gap:8px}.brand-mark{width:24px;height:32px;font-size:29px}.brand-mark>span{width:9px;height:9px;right:-3px}.brand-caption{font-size:7px;letter-spacing:2.5px;margin:4px 0 0 1px}.nav-label,.sidebar-note,.sidebar-bottom{display:none}.sidebar nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.sidebar nav::-webkit-scrollbar{display:none}.nav-item{gap:7px;font-size:10px;padding:9px 11px;white-space:nowrap;border-radius:7px 7px 0 0;margin:0}.nav-item svg{width:15px;height:15px}.nav-item.active{border-bottom:2px solid #5f8051;background:#edf1e6}.workspace{width:100%;margin:0}.topbar{height:64px;padding:0 22px}.breadcrumb{font-size:9px}.account-name{font-size:10px;max-width:145px}.account-name small{font-size:8px}.avatar.small{width:29px;height:29px}.main-content{padding:25px 22px 0}.page-heading{margin-bottom:24px}.page-heading h1{font-size:24px;line-height:1.25}.page-heading .eyebrow{font-size:8px}.subtitle{font-size:11px;line-height:1.8}.welcome-banner{padding:25px;min-height:247px}.welcome-banner h2{font-size:25px}.welcome-symbol{width:165px}.welcome-symbol>span:first-child{font-size:175px}.symbol-circle{left:25px}.stat-card{padding:16px 12px}.stat-card p{font-size:9px}.stat-grid{margin-bottom:30px}.section-heading h2{font-size:16px}.community-teaser{padding:21px}.course-art{height:135px}.course-card h3{font-size:14px}.course-description{font-size:10px}.course-meta{font-size:8px}.panel{padding:22px}.panel-heading h2{font-size:16px}.panel-heading p{font-size:10px}.page-footer{font-size:9px;margin-top:35px}.invite-form{grid-template-columns:minmax(0,1fr) 155px}.table-scroll table{font-size:10px}.table-scroll td{padding:13px 12px}.auth-shell{grid-template-columns:1fr}.auth-story{display:none}.auth-main{min-height:100vh;padding:35px 28px;justify-content:flex-start}.auth-form-wrap{max-width:390px;margin:65px 0 auto}.auth-mobile-brand{display:block;width:100%;max-width:390px;font-size:23px;line-height:1;font-weight:750;letter-spacing:-1px;color:var(--forest)}.auth-mobile-brand span{display:inline-block;font-size:8px;letter-spacing:2px;margin-left:8px;font-weight:500}.auth-form-wrap h1{font-size:31px}.auth-footnote{margin-top:80px}.auth-form-wrap>.eyebrow{font-size:8px}.form-intro{font-size:12px}.auth-form-wrap label{font-size:12px}.auth-form-wrap input{font-size:13px}.back-link{font-size:10px}.video-placeholder{padding:20px}.video-placeholder p{font-size:10px}.video-placeholder .button{font-size:9px;padding:7px 12px}.course-toolbar .small-button{font-size:10px}.course-toolbar .text-link{font-size:10px}.lesson-detail h2{font-size:21px}.course-cta{font-size:9px}.admin-lesson-list li{flex-wrap:wrap}.admin-lesson-list a{margin-left:42px}.connected-account strong{font-size:11px}.connection-title{gap:11px}.google-symbol{width:35px;height:35px;font-size:22px;flex-shrink:0}.video-library-item{gap:10px}.video-library-item .button{font-size:9px;padding:7px 10px}.video-library-item strong{font-size:11px}}
@media(max-width:480px){.main-content{padding:22px 17px 0}.topbar{padding:0 17px}.page-heading{display:block}.page-heading>.button{margin-top:15px}.welcome-banner{padding:23px;min-height:243px}.welcome-banner h2{font-size:22px;line-height:1.35}.welcome-banner p{font-size:10px}.welcome-symbol{position:absolute;right:-47px;bottom:-9px;width:145px;height:160px;opacity:.32}.welcome-symbol>span:first-child{font-size:155px}.symbol-circle{width:110px;height:110px;top:20px;left:32px}.symbol-circle:after{width:130px;height:75px;left:-30px;top:15px}.welcome-banner>div:first-child{position:relative;z-index:2}.welcome-banner .button{font-size:10px}.stat-grid{gap:8px;margin-top:16px}.stat-card{padding:13px 10px}.stat-card .stat-icon{width:29px;height:29px;margin-bottom:10px}.stat-card .stat-icon svg{width:16px;height:16px}.stat-card strong{font-size:23px}.stat-card p{font-size:8px;margin-top:6px;line-height:1.6}.course-grid{grid-template-columns:1fr}.course-grid>.course-card:nth-child(3){display:block}.course-art{height:150px}.course-card-body{padding:18px 19px 0}.course-card h3{font-size:17px}.course-description{font-size:12px;min-height:0}.course-meta{font-size:10px}.course-cta{font-size:11px}.course-art-icon{right:38px}.course-art-icon svg{width:90px;height:90px}.course-category{font-size:9px}.course-cta svg{width:16px;height:16px}.section-heading h2{font-size:17px}.section-heading .text-link{font-size:9px}.panel{padding:20px 17px}.empty-state{padding:43px 19px}.empty-state.compact{padding:31px 18px}.empty-state h2{font-size:22px}.empty-state h3{font-size:17px}.empty-state p:not(.eyebrow){font-size:11px}.community-teaser{gap:13px}.community-teaser>div{flex:1}.community-teaser h3{font-size:12px;line-height:1.7}.community-teaser p{font-size:10px}.community-teaser .button{margin-left:45px}.invite-form{grid-template-columns:1fr;gap:16px}.invite-form>.button{grid-column:auto;justify-self:stretch}.invite-form label{font-size:12px}.invite-form input,.invite-form select{font-size:13px}.members-layout{gap:19px}.panel-heading{margin-bottom:20px;align-items:flex-start}.panel-heading h2{font-size:15px}.invitation-panel .panel-heading{gap:12px}.panel-heading p{line-height:1.8;font-size:10px}.panel-heading .pill{font-size:8px}.compose-bottom>span{display:none}.compose-bottom{justify-content:flex-end}.compose-form textarea{font-size:12px}.post-card>.post-text{font-size:12px}.comment h4{line-height:1.7}.comment h4 time{display:block;margin-left:0}.comment p{font-size:11px}.recent-post{padding:18px 15px;gap:11px}.recent-post h3{display:block;font-size:11px}.recent-post h3 time{display:block;font-size:8px;margin-top:5px}.recent-post p{font-size:10px}.connection-title h2{font-size:14px;line-height:1.5}.connection-title p{font-size:9px}.settings-stack>.panel>.panel-heading.between{flex-wrap:wrap;gap:14px}.connected-account{padding:15px}.connected-account strong{font-size:10px;overflow-wrap:anywhere}.connected-account p{font-size:9px}.connected-account .avatar{width:33px;height:33px}.connected-account form{margin-left:47px}.connection-pending{padding:15px;gap:10px}.connection-pending p{font-size:10px}.connection-pending strong{font-size:11px}.lesson-sidebar-heading h2{font-size:13px}.video-placeholder>span{width:30px;height:30px;margin-bottom:9px}.video-placeholder>span svg{width:17px;height:17px}.video-placeholder h3{font-size:13px}.video-placeholder p{margin-top:7px;line-height:1.7;font-size:9px}.video-placeholder .button{margin-top:12px;font-size:8px;min-height:27px;padding:5px 9px}.video-placeholder{padding:15px}.video-library-item .stat-icon{display:none}.video-library-item strong{font-size:10px}.video-library-item input{font-size:9px}.page-footer span:last-child{display:none}.auth-form-wrap{margin-top:63px}.auth-form-wrap h1{font-size:28px}.auth-main{padding:30px 24px}.auth-footnote{font-size:8px}.two-fields{grid-template-columns:1fr 80px;gap:12px}.course-toolbar{gap:10px}.course-toolbar .button{padding:7px 10px;font-size:9px}.course-toolbar .text-link{font-size:9px}}
@media(max-width:760px){.sidebar nav{overflow:visible;gap:9px}.sidebar nav .nav-item[href="/members"],.sidebar nav .nav-item[href="/admin/courses/new"],.sidebar nav .nav-item[href="/settings"]{display:none}.sidebar nav .nav-item{flex:1;justify-content:center;font-size:11px;padding:10px 8px;gap:8px}.account-popover{min-width:260px}.account-popover a,.account-popover button{min-height:42px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
