:root{--green:#0e7a50;--green-dark:#0a5c3c;--green-tint:#e9f6ef;--orange:#e8590c;--orange-text:#9a3a06;--orange-tint:#fdeee4;--ink:#16181d;--text-2:#3d434c;--muted:#565e69;--paper:#fafaf7;--line:#e3e5e0;--line-2:#d5d9d2;--head:#f1f3ef;--display:"Space Grotesk", system-ui, sans-serif;--body:Inter, system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--body);margin:0}a{color:var(--green)}a:hover{color:var(--green-dark)}h1,h2,h3,p{margin:0}.wrap{max-width:1200px;margin:0 auto;padding-left:24px;padding-right:24px}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.logo{color:var(--ink);font-family:var(--display);letter-spacing:-.03em;align-items:center;gap:10px;font-size:22px;font-weight:700;text-decoration:none;display:flex}.logo b{color:var(--green);font-weight:700}.logo:hover{color:var(--ink)}.site-header{border-bottom:1px solid var(--line);background:#fff}.site-header .row{padding-top:14px;padding-bottom:14px}.nav{flex-wrap:wrap;align-items:center;gap:20px;font-size:15px;font-weight:500;display:flex}.nav a:not(.btn){color:var(--text-2);text-decoration:none}.btn{min-height:44px;font:inherit;cursor:pointer;border:1px solid var(--line-2);color:var(--ink);background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--muted);color:var(--ink)}.btn-primary{background:var(--green);border-color:var(--green);color:#fff}.btn-primary:hover{background:var(--green-dark);border-color:var(--green-dark);color:#fff}.btn-lg{border-radius:12px;padding:16px 24px;font-size:17px}.pill{border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:14px;font-weight:600;display:inline-flex}.pill-orange{background:var(--orange-tint);color:var(--orange-text)}.pill-green{background:var(--green-tint);color:var(--green-dark)}.pill-grey{background:var(--head);color:var(--text-2)}.card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:22px}.hero{flex-wrap:wrap;align-items:center;gap:56px;padding-top:72px;padding-bottom:64px;display:flex}.hero-copy{flex-direction:column;flex:440px;gap:24px;min-width:0;display:flex}.hero-copy h1{font-family:var(--display);letter-spacing:-.03em;font-size:clamp(38px,5vw,56px);line-height:1.05}.lead{color:var(--text-2);font-size:20px;line-height:1.55}.small-muted{color:var(--muted);font-size:14px}.hero-demo{border-radius:20px;flex-direction:column;flex:460px;gap:14px;min-width:0;display:flex;box-shadow:0 12px 32px #16181d14}.section-title{font-family:var(--display);letter-spacing:-.02em;font-size:clamp(30px,4vw,40px)}.band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.section{flex-direction:column;gap:32px;padding-top:72px;padding-bottom:72px;display:flex}.grid-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;display:grid}.step-num{width:44px;height:44px;font-family:var(--display);background:var(--green-tint);color:var(--green);border-radius:12px;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex}.step{flex-direction:column;gap:12px;display:flex}.step h3{font-size:20px;font-weight:600}.step p,.track p{color:var(--text-2);font-size:16px;line-height:1.6}.track{color:var(--ink);flex-direction:column;gap:10px;text-decoration:none;display:flex}.track:hover{border-color:var(--green);color:var(--ink)}.track code{font-family:var(--mono);color:var(--green);font-size:15px;font-weight:700}.track h3{font-size:20px;font-weight:600}.track .count{color:var(--muted);font-size:14px;font-weight:600}.site-footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:40px;padding-bottom:40px;font-size:14px;display:flex}.sheet{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.fxbar{border-bottom:1px solid var(--line);background:#f7f8f5;align-items:center;gap:10px;padding:8px 12px;display:flex}.cellname{font-family:var(--mono);color:var(--muted);border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 10px;font-size:14px;font-weight:700}.fxbar label{font-family:var(--mono);color:var(--muted);font-weight:700}.fxbar input{min-width:0;font-family:var(--mono);border:2px solid var(--green);color:var(--ink);background:#fff;border-radius:8px;outline:none;flex:1;padding:10px 12px;font-size:16px}.fxbar input:focus{box-shadow:0 0 0 3px #0e7a502e}.sheet-scroll{overflow-x:auto}.sheet table{border-collapse:collapse;width:100%;min-width:460px;font-size:15px}.sheet th,.sheet td{border:1px solid var(--line);padding:8px}.sheet th{background:var(--head);color:var(--muted);font-weight:500}.sheet td.rownum{background:var(--head);color:var(--muted);text-align:center;width:40px}.sheet td.num{text-align:right}.sheet td.header{font-weight:600}.sheet td.target{outline:3px solid var(--green);outline-offset:-3px;font-family:var(--mono);text-align:right;font-weight:700}.sheet td.target.solved{background:var(--green-tint)}.lesson-layout{flex-wrap:wrap;align-items:flex-start;gap:24px;padding-top:24px;padding-bottom:48px;display:flex}.lesson-main{flex-direction:column;flex:999 600px;gap:18px;min-width:0;display:flex}.lesson-side{flex-direction:column;flex:300px;gap:16px;min-width:0;display:flex}.crumbs{color:var(--muted);flex-wrap:wrap;gap:6px;font-size:14px;display:flex}.crumbs a{color:var(--muted)}.lesson-title{font-family:var(--display);letter-spacing:-.02em;font-size:clamp(26px,3.5vw,34px)}.progressbar{background:var(--line);border-radius:999px;height:6px;overflow:hidden}.progressbar>div{background:var(--green);height:100%}.task{font-size:17px;line-height:1.55}.task strong.ref{font-family:var(--mono);color:var(--green)}.feedback{border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-size:16px;font-weight:600;display:flex}.feedback.good{background:var(--green-tint);color:var(--green-dark)}.feedback.bad{background:var(--orange-tint);color:#8a3305}.answer-box{border:1px dashed var(--line-2);color:var(--text-2);background:#fff;border-radius:12px;padding:14px 16px;font-size:15px}.answer-box code{font-family:var(--mono);color:var(--green);font-weight:700}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.side-title{align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.hint{color:var(--text-2);background:#f7f8f5;border-radius:10px;padding:12px;font-size:15px;line-height:1.6}.stats{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.stat{flex-direction:column;gap:6px;display:flex}.stat .big{font-family:var(--display);font-size:40px;font-weight:700}.stat.dark{background:var(--ink);color:#fff;border-color:var(--ink)}.stat.dark .sub{color:#c9ced6}.stat .sub{color:var(--muted);font-size:14px}.week{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.day{color:var(--muted);flex-direction:column;align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.day span.cell{aspect-ratio:1;background:var(--head);border:1px solid var(--line);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:100%;max-width:72px;display:flex}.day span.cell.on{background:var(--green);border-color:var(--green)}.day span.cell.today:not(.on){background:var(--orange-tint);border:2px dashed var(--orange)}.lesson-list{flex-direction:column;gap:4px;display:flex}.lesson-list a{color:var(--ink);border-radius:8px;justify-content:space-between;gap:12px;padding:10px 8px;font-size:15px;text-decoration:none;display:flex}.lesson-list a:hover{background:var(--head);color:var(--ink)}
