
:root{--bg:#f4f7f6;--card:#fff;--ink:#12211f;--muted:#667773;--brand:#0f766e;--brand2:#115e59;--line:#dce6e3;--accent:#e6fffa}
*{box-sizing:border-box}body{margin:0;font-family:Tahoma,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.8}
button,textarea{font:inherit}.topbar{background:linear-gradient(135deg,#0f766e,#134e4a);color:white;padding:22px clamp(16px,4vw,48px);display:flex;justify-content:space-between;gap:20px;align-items:center}
.topbar h1{margin:0;font-size:clamp(24px,4vw,38px)}.topbar p{margin:4px 0 0;opacity:.9}.eyebrow{font-weight:800;letter-spacing:.5px}
.profile{display:flex;align-items:center;gap:10px;background:#ffffff18;border:1px solid #ffffff33;padding:10px 14px;border-radius:14px}.profile span{font-size:28px}.profile small,.profile strong{display:block}
.tabs{position:sticky;top:0;z-index:20;display:flex;gap:8px;overflow:auto;background:#fff;border-bottom:1px solid var(--line);padding:10px clamp(10px,3vw,40px)}
button{border:1px solid var(--line);background:#fff;padding:10px 14px;border-radius:12px;cursor:pointer;color:var(--ink)}button:hover{border-color:#93bdb6}
.tab{white-space:nowrap}.tab.active,.primary{background:var(--brand);color:white;border-color:var(--brand)}.primary:hover{background:var(--brand2)}.big{padding:14px 22px;font-weight:700}
main{max-width:1180px;margin:24px auto;padding:0 16px}.view{display:none}.view.active{display:block}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 8px 28px #0d332b0d;margin-bottom:18px}
.hero{display:flex;justify-content:space-between;gap:24px;align-items:center}.badge{display:inline-block;background:var(--accent);color:var(--brand2);border-radius:999px;padding:3px 10px;font-weight:700}
.stats{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.stats span{background:#f8faf9;border:1px solid var(--line);padding:6px 10px;border-radius:10px}.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.progress{height:14px;border-radius:999px;background:#e8efed;overflow:hidden}.progress>div{height:100%;width:0;background:var(--brand);transition:.3s}.streak{font-size:34px;font-weight:800;color:var(--brand)}
.hidden{display:none!important}.sectionhead{display:flex;justify-content:space-between;align-items:center}.daygrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.day{background:#fff;border:1px solid var(--line);padding:16px;border-radius:16px;cursor:pointer}.day:hover{transform:translateY(-1px);box-shadow:0 6px 20px #0d332b12}.day.done{border-color:#4ade80;background:#f0fdf4}.day h4{margin:4px 0}.day small{color:var(--muted)}
.lessonHeader{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.lessonBlock{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.phrase{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px dashed var(--line)}.phrase .en{direction:ltr;text-align:left;font-weight:700}.phrase .fa{color:var(--muted);font-size:14px}.speak{min-width:48px}
.vocab{display:flex;gap:8px;flex-wrap:wrap}.chip{background:#f7faf9;border:1px solid var(--line);padding:7px 10px;border-radius:999px}.row{display:flex;gap:10px;flex-wrap:wrap}
textarea{width:100%;padding:14px;border-radius:14px;border:1px solid var(--line);resize:vertical;margin:12px 0}.coachBubble{background:var(--accent);border-right:4px solid var(--brand);padding:15px;border-radius:12px}.feedback{margin-top:12px;padding:12px;border-radius:12px;background:#f8faf9;min-height:48px}
.drive{text-align:center}.driveControls{display:flex;justify-content:center;gap:12px;margin:20px 0}.driveStatus{font-size:26px;font-weight:800;color:var(--brand)}
.toolgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.tool{background:#f8faf9;border:1px solid var(--line);padding:14px;border-radius:14px}.tool b{display:block;direction:ltr;text-align:left}.tool span{color:var(--muted)}
footer{text-align:center;color:var(--muted);padding:26px}
@media(max-width:700px){.topbar{align-items:flex-start}.profile{display:none}.hero{display:block}.hero .big{width:100%;margin-top:14px}.grid.two{grid-template-columns:1fr}.phrase{grid-template-columns:1fr auto}.stats{font-size:14px}}
