:root{color-scheme:light;--ink:#20231e;--dark:#191c18;--paper:#f6f5ef;--white:#fffefa;--line:#dfdfd4;--muted:#595e50;--accent:#d6f36b;--green:#35451c;--radius:19px;font-family:Inter,"Avenir Next",system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.55}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.52}a{color:var(--green);text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #78932a;outline-offset:3px}.top{background:var(--dark);color:#fff}.top-inner{max-width:1190px;margin:auto;min-height:78px;display:flex;align-items:center;gap:24px;padding:12px 28px}.brand{color:white;text-decoration:none;display:flex;gap:12px;align-items:center;font-size:17px;font-weight:800;line-height:1.1;letter-spacing:-.035em;white-space:nowrap}.brand b{font-weight:500}.brand small{display:block;color:#b8bdaf;font-size:9px;font-weight:700;letter-spacing:.23em;margin-top:6px}.brand-icon{display:flex;align-items:center;justify-content:center;gap:2px;width:38px;height:38px;border-radius:11px;background:var(--accent)}.brand-icon i{width:2px;background:var(--dark);height:9px}.brand-icon i:nth-child(2n){height:17px}.brand-icon i:nth-child(3){height:23px}nav{margin-left:auto;display:flex;gap:6px}nav button,.languages button{border:0;background:transparent;color:#d8dbd1;padding:8px 12px;border-radius:9px;font-size:.85rem}nav button[aria-current=true],.languages button[aria-pressed=true]{background:#394031;color:#f2ffcb}.languages{display:flex;gap:2px;border:1px solid #51584a;border-radius:11px;padding:3px;margin-left:auto}.languages button{padding:5px 10px;font-weight:750}
main{max-width:1190px;margin:auto;padding:34px 28px 58px;min-height:70vh}.hero{background:var(--dark);color:#fff;min-height:240px;border-radius:24px;padding:36px 42px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center}.hero>div:first-child{z-index:1}.kicker{font-size:.73rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#65704f;margin:0 0 8px}.hero .kicker{color:var(--accent);display:flex;gap:9px;align-items:center}.hero .kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.45rem,5vw,4.4rem);line-height:1.03;letter-spacing:-.065em;margin-bottom:14px}h2{font-size:clamp(1.45rem,3vw,2.1rem);line-height:1.14;letter-spacing:-.045em;margin-bottom:13px}h3{font-size:1rem;margin-bottom:7px}.hero p:last-child{color:#d7dccd;margin-bottom:0;max-width:470px}.wave{position:absolute;right:0;width:44%;height:100%;display:flex;align-items:center;justify-content:center;gap:7px;background:radial-gradient(ellipse at center,#363e24,transparent 68%);mask-image:linear-gradient(90deg,transparent,black 28%,black 82%,transparent);pointer-events:none}.wave i{width:3px;background:#a1be59;border-radius:9px;opacity:.52}.grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);align-items:start;gap:22px;margin-top:24px}.stack{display:grid;gap:18px;min-width:0}.panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:23px;min-width:0}.panel p:last-child{margin-bottom:0}.row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.muted{color:var(--muted);font-size:.9rem}.week-nav{display:flex;gap:6px}.icon,.button{border:1px solid #d6dbc9;background:#fffefa;color:var(--ink);border-radius:10px;min-height:42px;padding:8px 13px;font-weight:700}.icon{width:42px;padding:0;font-size:1.25rem}.button.primary{background:var(--accent);border-color:#b0cb53}.button.secondary{background:#eff2e4}.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:14px}.day{border:1px solid var(--line);background:#f8f8f2;color:var(--ink);border-radius:10px;min-height:58px;padding:5px 0;font-weight:750;display:grid;place-items:center}.day small{font-size:.65rem;font-weight:600}.day[aria-pressed=true]{background:var(--dark);border-color:var(--dark);color:white}.day.done small{color:#526e23}.day.done[aria-pressed=true] small{color:var(--accent)}.reading{font-size:clamp(1.1rem,2.5vw,1.42rem);line-height:1.75;background:#f4f5ea;border-left:4px solid #a9c258;border-radius:0 12px 12px 0;padding:16px 19px;margin:15px 0}.pause{color:#587225;font-weight:800}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.chip{border:1px solid #dfe6cf;background:#eef3df;border-radius:8px;padding:5px 10px;font-weight:650}.tips{display:grid;gap:9px;padding-left:20px;margin:14px 0 0}.tips li{padding-left:3px}.timer{font-variant-numeric:tabular-nums;font-weight:800;font-size:2rem;letter-spacing:-.05em}.form{display:grid;gap:12px;margin-top:16px}label{display:grid;gap:6px;font-weight:650}input,select,textarea{max-width:100%;width:100%;background:#fff;color:var(--ink);border:1px solid #cdd1c4;padding:10px;border-radius:9px}textarea{resize:vertical;min-height:76px}audio{display:block;width:100%;margin-top:8px}.steps{padding-left:22px}.status-inline{min-height:1.5em;margin:0}.progress-track{height:8px;background:#e9ebdf;border-radius:9px;overflow:hidden;margin:12px 0}.progress-track i{display:block;height:100%;background:#91ae3b;width:var(--progress)}.resource{padding:12px 0;border-top:1px solid var(--line)}.resource:last-child{padding-bottom:0}.review{border-top:1px solid var(--line);padding-top:13px;margin-top:13px}footer{text-align:center;padding:23px;border-top:1px solid var(--line);font-size:.82rem;color:var(--muted)}footer span{padding:0 5px}#status{position:fixed;bottom:15px;right:15px;background:var(--dark);color:white;border-radius:10px;padding:11px 16px;z-index:5;max-width:calc(100% - 30px)}#status:empty{display:none}
@media(max-width:760px){.top-inner{padding:12px 15px;gap:10px;flex-wrap:wrap}.brand{font-size:15px}nav{order:3;width:100%;margin:0}nav:empty{display:none}nav button{padding:6px 10px}main{padding:17px 13px 36px}.hero{padding:28px 20px;min-height:200px;border-radius:17px}.wave{width:65%;opacity:.46}.hero p:last-child{max-width:310px}.grid{grid-template-columns:1fr;gap:15px;margin-top:15px}.stack{gap:14px}.panel{padding:16px}.reading{padding:12px}.day{min-height:54px}}
.wave .b0{height:5%}.wave .b1{height:9%}.wave .b2{height:14%}.wave .b3{height:19%}.wave .b4{height:25%}.wave .b5{height:34%}.wave .b6{height:42%}.wave .b7{height:49%}.wave .b8{height:56%}.wave .b9{height:63%}.wave .b10{height:72%}.wave .b11{height:82%}.p0{--progress:0%}.p1{--progress:14.29%}.p2{--progress:28.57%}.p3{--progress:42.86%}.p4{--progress:57.14%}.p5{--progress:71.43%}.p6{--progress:85.71%}.p7{--progress:100%}
.recorder{border:1px solid var(--line);border-radius:12px;padding:14px;margin:0;min-width:0;display:grid;gap:12px}.recorder legend{font-weight:800;padding:0 5px}.recorder p{margin:0}.record-actions{display:flex;flex-wrap:wrap;gap:8px}.recorder [hidden]{display:none}video{display:block;width:100%;max-height:360px;border-radius:9px;background:var(--dark);margin-top:8px}.roster-row{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--line);padding:10px 0}.roster-row small{display:block;color:var(--muted)}.roster-add{border-top:1px solid var(--line);padding-top:12px;margin-top:8px}.roster-add summary{cursor:pointer;font-weight:700}.roster-add p{margin-top:10px}
