[hidden]{display:none!important}input,select,textarea{font:inherit;color:inherit}label{display:block;font-size:14px;font-weight:600}label input,label select,label textarea{display:block;width:100%;margin-top:8px;border:1px solid #d8ddd5;border-radius:6px;padding:11px 12px;background:white;box-sizing:border-box}label textarea{resize:vertical}button,a,input,select,textarea{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b96643;outline-offset:3px}.account-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid #e0e2d8;font-size:13px}.account-bar #session-label{margin-right:auto}.account-bar a{color:#315446}.sync-line{font-size:12px;min-height:28px;padding:8px 0;color:#627166}.error{color:#a4372a!important}.auth-dialog{max-width:460px}.auth-dialog label{margin:18px 0}.auth-dialog form>.primary{width:100%}.auth-intro,.fine{color:#69766c;line-height:1.7}.auth-links{display:flex;justify-content:space-between;margin:20px 0;gap:15px}.form-message{font-size:14px;line-height:1.5}.admin-body{margin:0;background:#f6f6ef;color:#243e31;font-family:Arial,'PingFang SC',sans-serif}.admin-header{height:84px;box-sizing:border-box;padding:0 38px;border-bottom:1px solid #dce1d6;background:#fafaf5;display:flex;align-items:center;justify-content:space-between}.admin-header-actions{display:flex;gap:24px;align-items:center}.admin-header-actions a{font-size:14px;color:#536455;text-decoration:none}.admin-layout{display:grid;grid-template-columns:210px 1fr;min-height:calc(100vh - 84px)}.admin-nav{padding:34px 18px;background:#eff2e9;border-right:1px solid #dce1d6;display:flex;flex-direction:column;gap:10px}.admin-nav button{display:flex;align-items:center;gap:13px;padding:14px;border:0;background:none;border-radius:7px;text-align:left;font-size:15px;color:#536455}.admin-nav button.active{background:#dfe8da;color:#294833;font-weight:600}.admin-nav svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}.admin-main{padding:28px 36px 60px;min-width:0}.admin-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.admin-title h1{font:32px Georgia,'Songti SC',serif;margin:0 0 12px}.admin-title p{font-size:14px;color:#778173;margin:0}.admin-message{font-size:14px;margin-bottom:16px;line-height:1.6}.admin-message:empty{display:none}.editor-layout{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(360px,1.5fr);gap:24px;align-items:start}.course-list,.course-editor{background:#fff;border:1px solid #dce1d6;border-radius:10px;overflow:hidden}.course-list h2{font-size:16px;padding:22px;margin:0;border-bottom:1px solid #e5e8e0}.course-list h2 small{font-size:13px;font-weight:400;color:#788473}.course-row{border:0;border-bottom:1px solid #e6e9e1;background:white;padding:22px 16px;width:100%;display:flex;align-items:center;gap:12px;text-align:left;color:#344d3e}.course-row.selected{background:#edf2e7;box-shadow:inset 3px 0 #648354}.course-row>span{font:18px Georgia,serif;color:#788673}.course-row strong{font-size:14px;flex:1;font-weight:500}.pill{font-size:11px;white-space:nowrap;padding:4px 7px;border-radius:4px;background:#f3f0e8;color:#897653}.pill.published{background:#e3ecd9;color:#587143}.course-editor{padding:25px}.course-editor h2{font-size:19px;font-family:Georgia,'Songti SC',serif;margin:0 0 23px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.content-title{border-top:1px solid #e4e7df;margin-top:26px;padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:10px}.content-title h2{margin:0 0 18px}.content-title p{font-size:12px;color:#7a8574;margin:0 0 18px}.phrase-edit{border:1px solid #dfe4d8;border-radius:6px;margin-bottom:12px;background:#fff}.phrase-edit summary{padding:15px;cursor:pointer;font-size:14px;background:#f8faf5;display:flex;justify-content:space-between}.muted{font-size:11px;color:#788473}.phrase-fields{padding:16px}.phrase-fields>label{margin-top:17px}.phrase-actions{display:flex;gap:12px;justify-content:flex-end;margin-bottom:14px}.phrase-actions button{border:0;background:none;font-size:12px;color:#607354}.danger-text{border:0;background:none;color:#a25944!important;font-size:13px}.add-phrase{padding:13px;width:100%;background:#fafcf7;border:1px dashed #bfcbb4;border-radius:5px;color:#60764e;margin:6px 0 12px}.editor-actions{border-top:1px solid #e3e8dd;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:16px}.editor-actions>div{display:flex;gap:12px}.admin-gate{max-width:600px;margin:90px auto;padding:35px;text-align:center}.admin-gate h1{font:32px Georgia,'Songti SC',serif}.admin-gate p{line-height:1.8;margin-bottom:30px}.admin-empty{padding:32px;font-size:14px;color:#798373}.learner-toolbar{display:flex;align-items:end;gap:16px;margin-bottom:24px;flex-wrap:wrap}.learner-toolbar label{min-width:260px}.learner-toolbar>span{font-size:14px;margin-left:auto;padding:12px}.table-wrap{overflow-x:auto;background:white;border:1px solid #dce1d6;border-radius:8px}table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}th,td{padding:17px 14px;border-bottom:1px solid #e5e8e0;white-space:nowrap}th{background:#f0f4eb;font-weight:500}td small{display:block;color:#7c8776;margin-top:6px}td strong{font-weight:500}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:22px;font-size:13px}.learner-dialog{max-width:1000px;width:90vw}.learner-course{margin:20px 0}.learner-course summary{cursor:pointer;font-weight:600;padding:12px 0}.learner-course summary small{float:right;font-weight:400}.admin-body .primary{background:#657f50}.admin-body button:disabled{opacity:.45;cursor:default}
@media(max-width:1100px){.admin-layout{grid-template-columns:160px 1fr}.admin-main{padding:25px 20px}.editor-layout{grid-template-columns:1fr}.course-list{max-height:300px;overflow:auto}.course-row{padding:14px}.admin-header{padding:0 20px}}@media(max-width:640px){.admin-header{height:74px;padding:0 14px}.admin-header .brand{font-size:16px}.admin-header-actions{gap:10px}.admin-header-actions a{font-size:12px}.admin-layout{display:block}.admin-nav{flex-direction:row;padding:12px;border-right:0;border-bottom:1px solid #dce1d6}.admin-nav button{padding:10px}.admin-main{padding:24px 14px}.admin-title h1{font-size:27px}.admin-title{align-items:start}.admin-title .primary{padding:12px;font-size:12px;white-space:nowrap}.course-editor{padding:18px}.field-grid{grid-template-columns:1fr}.content-title{display:block}.account-bar{gap:10px}.learner-toolbar label{min-width:0;width:100%}.learner-dialog{padding:24px 14px}.editor-actions{gap:8px}.editor-actions .primary,.editor-actions .secondary{padding:12px}.admin-header .brand span:last-child{display:none}}
.social-buttons{display:grid;gap:12px;margin:25px 0 12px}.social-button{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;padding:14px 20px;border:1px solid #cbd4c8;border-radius:7px;background:#fff;color:#26382e;font:600 15px Arial,sans-serif;cursor:pointer}.social-button:hover{background:#f1f5ef}.social-button:disabled{opacity:.5;cursor:not-allowed}.provider-symbol{font-size:14px;min-width:26px}.provider-badge{display:inline-block;padding:4px 9px;margin:3px 4px 3px 0;border:1px solid #d6dfd0;border-radius:5px;background:#eff4e9;color:#42613d;font-size:12px;white-space:nowrap}
