@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--paper:#f7f5ef;--white:#fffefa;--ink:#242820;--muted:#818579;--green:#526950;--green-dark:#354d39;--green-pale:#e9eee5;--line:#e9e7df;--orange:#d99a62;--red:#b85d51;--shadow:0 10px 32px #25301a0a}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}.app-shell{min-height:100vh}.sidebar{width:244px;position:fixed;inset:0 auto 0 0;background:#f0efe8;border-right:1px solid #e9e7df;padding:30px 19px 20px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);padding:2px 9px 0;margin-bottom:63px}.brand-mark{font-family:'Playfair Display',serif;font-weight:700;font-size:32px;letter-spacing:-3px;color:var(--green)}.brand-mark span{color:var(--orange)}.brand-copy{display:flex;flex-direction:column;font-size:15px;line-height:1.1;letter-spacing:-.4px}.brand-copy strong{font-weight:700}.brand-copy small{font-size:13px;color:var(--muted);letter-spacing:.2px}.nav-label{font-size:9px;font-weight:700;letter-spacing:1.7px;color:#999b8e;padding:0 12px;margin-bottom:13px}.nav-list{display:grid;gap:6px}.nav-item{border:0;background:transparent;color:#6b7065;text-align:left;padding:12px 13px;border-radius:8px;font:500 13px 'DM Sans',sans-serif;display:flex;gap:12px;align-items:center;cursor:pointer;transition:.2s}.nav-item:hover{background:#e9e9df;color:var(--green-dark)}.nav-item.active{background:#e5eae0;color:var(--green-dark);font-weight:700}.nav-icon{width:17px;text-align:center;font-size:17px}.sidebar-bottom{margin-top:auto}.tip-card{background:#e7e9df;border-radius:10px;padding:15px 15px 14px;margin:0 3px 27px}.tip-icon{color:var(--green);font-size:17px}.tip-card p{font-family:'Playfair Display',serif;font-size:14px;line-height:1.55;margin:9px 0 0;color:#525a4f}.version{font-size:9px;letter-spacing:1.3px;color:#999b8e;padding-left:11px}.main-area{margin-left:244px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5.8%;}.breadcrumb{color:#9a9b90;font-size:9px;font-weight:700;letter-spacing:1.4px}.breadcrumb span{padding:0 9px;color:#c8c8be}.breadcrumb strong{color:#60675c}.topbar-right{display:flex;gap:15px;align-items:center}.level-pill{color:#667460;font-size:11px;background:#e9eee5;border-radius:30px;padding:8px 12px}.level-pill span{display:inline-block;background:#7c9a72;width:6px;height:6px;border-radius:50%;vertical-align:1px;margin-right:6px}.mobile-menu{display:none;border:0;background:none;font-size:20px;color:var(--green)}.content{width:min(990px,88%);margin:0 auto;padding:42px 0 50px;flex:1}.footer{height:53px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5.8%;color:#999b90;font-size:10px}.footer span:last-child{letter-spacing:1.2px;font-size:8px}.footer b{color:var(--orange)}.eyebrow{font-size:9px;font-weight:700;letter-spacing:1.8px;color:var(--green);text-transform:uppercase}.hero{background:var(--green-dark);color:#f7f5ef;border-radius:12px;padding:42px 46px 40px;position:relative;overflow:hidden;min-height:230px;display:flex;align-items:center;justify-content:space-between}.hero:after{content:'“';font-family:'Playfair Display',serif;font-size:350px;line-height:1;position:absolute;right:6%;top:-97px;color:#ffffff0b}.hero-copy{position:relative;z-index:1;max-width:550px}.hero .eyebrow{color:#bdc9b6}.hero h1{font:600 clamp(32px,4vw,45px)/1.14 'Playfair Display',serif;letter-spacing:-1px;margin:14px 0 13px}.hero p{font-size:13px;line-height:1.75;color:#d4dacd;margin:0;max-width:450px}.hero-art{width:145px;height:145px;border:1px solid #ffffff30;border-radius:50%;display:grid;place-items:center;margin-right:35px;position:relative;z-index:1;color:#d7ddcb;font:italic 30px 'Playfair Display',serif;transform:rotate(-8deg)}.hero-art:before,.hero-art:after{content:'';position:absolute;border:1px solid #ffffff28;border-radius:50%;inset:13px}.hero-art:after{inset:-11px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:35px 0 16px}.section-heading h2{font:600 22px 'Playfair Display',serif;margin:7px 0 0;letter-spacing:-.3px}.subtle-link{border:0;background:none;color:var(--green);font:600 11px 'DM Sans',sans-serif;cursor:pointer;padding:6px}.subtle-link:hover{text-decoration:underline}.concept-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.concept-card{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:21px 22px;min-height:137px;box-shadow:var(--shadow);cursor:pointer;transition:transform .2s,border .2s}.concept-card:hover{transform:translateY(-2px);border-color:#b9c6b3}.concept-top{display:flex;justify-content:space-between;align-items:center}.concept-icon{width:33px;height:33px;display:grid;place-items:center;background:#edf0e9;border-radius:8px;color:var(--green);font-size:16px}.concept-tag{font-size:9px;letter-spacing:1.2px;color:#8d9287;font-weight:700}.concept-card h3{font:600 18px 'Playfair Display',serif;margin:13px 0 5px}.concept-card p{font-size:11px;line-height:1.6;color:#83867c;margin:0}.concept-arrow{float:right;color:#99a28f;margin-top:-3px}.practice-row{background:#efeee7;border-radius:10px;padding:16px 19px;display:flex;align-items:center;justify-content:space-between;margin-top:29px;gap:15px}.practice-info{display:flex;align-items:center;gap:13px}.practice-icon{font-size:19px;color:var(--orange)}.practice-info strong{display:block;font-size:12px;margin-bottom:3px}.practice-info span{font-size:10px;color:#888c82}.button{border:0;border-radius:6px;background:var(--green);color:white;padding:11px 16px;font:600 11px 'DM Sans',sans-serif;cursor:pointer;transition:background .2s,transform .15s}.button:hover{background:#3d5941;transform:translateY(-1px)}.button.secondary{background:#ecefe8;color:var(--green-dark)}.button.secondary:hover{background:#dfe6da}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.stat{padding:15px 17px;border-left:2px solid #c9d2c3}.stat span{display:block;color:#8a8d82;font-size:9px;letter-spacing:1px;text-transform:uppercase}.stat strong{font:600 22px 'Playfair Display',serif;display:block;margin-top:5px}.page-head{margin-bottom:26px}.page-head h1{font:600 34px 'Playfair Display',serif;margin:8px 0 8px;letter-spacing:-.7px}.page-head p{color:#7e8278;margin:0;font-size:12px;line-height:1.7;max-width:620px}.filter-row{display:flex;gap:8px;margin:24px 0 17px;flex-wrap:wrap}.filter-chip{border:1px solid #deded4;border-radius:30px;padding:8px 14px;background:transparent;color:#74786d;font:500 10px 'DM Sans',sans-serif;cursor:pointer}.filter-chip.active,.filter-chip:hover{background:var(--green);color:white;border-color:var(--green)}.sheet-list{display:grid;gap:10px}.sheet-card{background:var(--white);border:1px solid var(--line);border-radius:9px;overflow:hidden}.sheet-trigger{width:100%;border:0;background:transparent;padding:16px 19px;display:flex;align-items:center;gap:13px;text-align:left;cursor:pointer;color:var(--ink)}.sheet-symbol{width:35px;height:35px;border-radius:8px;display:grid;place-items:center;background:#edf0e9;color:var(--green);font:600 16px 'Playfair Display',serif;flex:none}.sheet-label{flex:1}.sheet-label strong{font:600 16px 'Playfair Display',serif;display:block}.sheet-label small{color:#909388;font-size:10px;display:block;margin-top:3px}.sheet-chevron{color:#8e9688;font-size:17px;transition:transform .2s}.sheet-card.open .sheet-chevron{transform:rotate(180deg)}.sheet-detail{display:none;border-top:1px solid var(--line);padding:16px 20px 19px 68px;color:#62675d;font-size:12px;line-height:1.8}.sheet-card.open .sheet-detail{display:block}.sheet-detail p{margin:0 0 10px}.example{background:#f1f2ec;border-radius:6px;padding:10px 12px;color:#465444}.example em{color:var(--green);font-style:normal;font-weight:700}.quiz-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:18px;align-items:start}.quiz-card,.quiz-side{background:var(--white);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.quiz-card{padding:24px 27px 25px}.quiz-top{display:flex;align-items:center;justify-content:space-between}.quiz-type{color:var(--green);font-weight:700;letter-spacing:1.2px;font-size:9px}.quiz-count{font-size:10px;color:#8c8f84}.progress-track{height:4px;background:#eeeee7;border-radius:10px;margin:14px 0 24px;overflow:hidden}.progress-fill{height:100%;background:#7c9871;border-radius:10px;transition:width .3s}.question-sentence{background:#f2f2ec;padding:17px 18px;border-radius:7px;font:500 18px/1.6 'Playfair Display',serif;margin-bottom:20px}.question-sentence .target{color:var(--green-dark);border-bottom:2px solid #86a27a;padding-bottom:1px;font-weight:700}.question-prompt{font-size:12px;font-weight:600;margin:0 0 13px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:8px}.answer-btn{border:1px solid #e6e6dc;border-radius:6px;background:white;padding:11px 12px;text-align:left;font:500 11px 'DM Sans',sans-serif;color:#555b51;cursor:pointer;transition:.15s}.answer-btn:hover{border-color:#8da185;background:#f6f8f4}.answer-btn.correct{border-color:#6e9270;background:#edf4eb;color:#33583a}.answer-btn.incorrect{border-color:#c98174;background:#fbefed;color:#95483e}.answer-btn:disabled{cursor:default}.feedback{margin-top:13px;border-radius:6px;padding:11px 13px;font-size:11px;line-height:1.6;display:none}.feedback.show{display:block}.feedback.good{background:#edf4eb;color:#3c6741}.feedback.bad{background:#f9eeeb;color:#914e42}.quiz-actions{display:flex;align-items:center;justify-content:space-between;margin-top:17px}.quiz-side{padding:20px}.quiz-side h3{font:600 16px 'Playfair Display',serif;margin:0 0 15px}.side-score{background:#eff1ea;padding:14px;border-radius:7px;margin-bottom:15px}.side-score span{font-size:9px;color:#85897e;display:block}.side-score strong{font:600 25px 'Playfair Display',serif;display:block;margin-top:3px}.side-note{font-size:10px;line-height:1.7;color:#888c82}.quiz-side .button{width:100%;margin-top:13px}.result{text-align:center;padding:26px 12px 15px}.result-mark{width:56px;height:56px;background:#e9eee5;color:var(--green);border-radius:50%;display:grid;place-items:center;font-size:26px;margin:0 auto 14px}.result h2{font:600 25px 'Playfair Display',serif;margin:0 0 7px}.result p{color:#81857a;font-size:12px;margin:0 auto 20px;max-width:360px;line-height:1.7}.result-score{font:600 37px 'Playfair Display',serif;color:var(--green);margin-bottom:20px}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,14px);opacity:0;pointer-events:none;background:#344a38;color:white;padding:10px 16px;border-radius:8px;font-size:11px;transition:.2s;z-index:10}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:850px){.sidebar{width:210px;padding-left:14px;padding-right:14px}.main-area{margin-left:210px}.hero{padding:34px}.hero-art{width:110px;height:110px;margin-right:15px;font-size:24px}.content{width:90%}}
@media(max-width:650px){.sidebar{width:250px;transform:translateX(-100%);transition:transform .25s;box-shadow:8px 0 25px #0001}.sidebar.open{transform:translateX(0)}.main-area{margin-left:0}.topbar{height:60px;padding:0 5%}.mobile-menu{display:block}.level-pill{font-size:10px}.content{width:90%;padding:27px 0 37px}.footer{padding:0 5%;height:47px;font-size:9px}.footer span:first-child{max-width:190px}.hero{min-height:215px;padding:28px 25px}.hero h1{font-size:32px}.hero-art{width:77px;height:77px;font-size:19px;margin-right:0;flex:none}.hero-art:before{inset:8px}.hero-art:after{inset:-7px}.hero-copy{max-width:76%}.hero p{font-size:11px}.concept-grid{gap:9px}.concept-card{padding:15px;min-height:147px}.concept-card h3{font-size:15px}.concept-card p{font-size:10px}.concept-tag{font-size:8px;letter-spacing:.6px}.practice-row{align-items:flex-start;padding:14px}.practice-info{gap:8px}.practice-info span{font-size:9px}.practice-row .button{padding:10px;font-size:10px;white-space:nowrap}.stats-row{gap:6px}.stat{padding:12px 9px}.stat strong{font-size:18px}.stat span{font-size:8px}.page-head h1{font-size:29px}.quiz-layout{grid-template-columns:1fr}.quiz-side{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8px;padding:14px}.quiz-side h3{grid-column:1/-1;margin:0}.side-score{margin:0}.quiz-side .button{margin:0}.side-note{display:none}.quiz-card{padding:19px}.question-sentence{font-size:16px}.answers{grid-template-columns:1fr}.sheet-detail{padding-left:20px}}
@media(max-width:380px){.hero-art{display:none}.hero-copy{max-width:100%}.concept-card{padding:12px}.concept-tag{display:none}.practice-row{flex-direction:column}.practice-row .button{width:100%}}
