@font-face{font-family:Barlow;src:url('../fonts/barlow-latin-400-normal.woff2')}@font-face{font-family:Barlow;src:url('../fonts/barlow-latin-600-normal.woff2');font-weight:600}@font-face{font-family:Barlow;src:url('../fonts/barlow-latin-700-normal.woff2');font-weight:700}@font-face{font-family:BarlowCondensed;src:url('../fonts/barlow-condensed-latin-600-normal.woff2');font-weight:600}@font-face{font-family:BarlowCondensed;src:url('../fonts/barlow-condensed-latin-700-normal.woff2');font-weight:700}@font-face{font-family:JetBrains;src:url('../fonts/jetbrains-mono-latin-500-normal.woff2');font-weight:500}
:root{--bg:#FFFFFF;--panel:#FFFFFF;--panel2:#F0F0F0;--line:#DADADA;--line2:#C7C7C7;--fg:#171717;--dim:#454545;--mute:#707070;--cyan:#D71920;--amber:#B5121B;--green:#B5121B;--body:Barlow,system-ui,sans-serif;--display:BarlowCondensed,Impact,sans-serif;--mono:JetBrains,Consolas,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;padding:0 16px 48px;background:radial-gradient(1000px 440px at 70% -12%,#D7192010,transparent 62%),radial-gradient(800px 400px at 0 0,#D7192010,transparent 60%),var(--bg);background-attachment:fixed;color:var(--fg);font-family:var(--body);font-size:16px}.wrap{max-width:1180px;margin:0 auto}.top{position:sticky;top:0;z-index:30;margin-inline:-16px;padding:10px 16px;background:#FFFFFFF0;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.topin{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{color:var(--fg);display:flex;align-items:center;gap:11px;text-decoration:none}.brand-mark{width:37px;height:37px;border:1px solid var(--cyan);border-radius:50%;display:grid;place-items:center;font:700 22px var(--display);color:var(--cyan)}.brand b{display:block;font:700 19px var(--display);letter-spacing:.09em}.brand small{display:block;color:var(--mute);font:10px var(--mono);letter-spacing:.11em;margin-top:2px}.nav{display:flex;align-items:center;gap:5px}.nav a,.nav button{border:0;background:transparent;color:var(--dim);padding:9px 12px;border-radius:7px;text-decoration:none;font:600 14px var(--display);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.nav a:hover,.nav a[aria-current=page]{color:var(--cyan);background:var(--panel2)}.search-btn{border:1px solid var(--line2)!important;color:var(--fg)!important}.nav kbd{font:10px var(--mono);color:var(--mute);border:1px solid var(--line2);padding:2px 5px;border-radius:3px}.top-progress{text-align:right;min-width:70px}.top-progress span{display:block;color:var(--green);font:500 16px var(--mono)}.top-progress small{color:var(--mute);font:9px var(--mono);letter-spacing:.08em}.hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:30px;align-items:center;padding:47px 4px 29px;border-bottom:1px solid var(--line)}.eyebrow{font:10px var(--mono);letter-spacing:.16em;color:var(--cyan);text-transform:uppercase}.hero h1{font:700 clamp(48px,8vw,88px)/.9 var(--display);letter-spacing:.01em;text-transform:uppercase;margin:13px 0 16px}.hero h1 em{font-style:normal;color:var(--amber)}.hero p{color:var(--dim);font-size:17px;max-width:60ch;line-height:1.6;margin:0 0 20px}.actions{display:flex;gap:9px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid #D7192088;border-radius:9px;background:#D7192018;color:var(--cyan);text-decoration:none;text-transform:uppercase;letter-spacing:.07em;font:600 14px var(--display);cursor:pointer}.btn.secondary{border-color:var(--line2);background:var(--panel);color:var(--fg)}.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{padding:15px;border:1px solid var(--line);background:linear-gradient(145deg,#F7F7F7,#F7F7F7);border-radius:12px}.stat b{display:block;font:600 26px var(--display);color:var(--cyan)}.stat small{font:9px var(--mono);color:var(--mute);letter-spacing:.09em}.group{margin:34px 0}.group-head{display:flex;align-items:center;gap:12px;margin-bottom:13px}.group-head h2{margin:0;color:var(--dim);font:600 15px var(--display);letter-spacing:.14em;text-transform:uppercase}.group-head:after{content:"";height:1px;background:var(--line);flex:1}.group-head span{color:var(--mute);font:10px var(--mono)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.card{color:var(--fg);text-decoration:none;border:1px solid var(--line);background:var(--panel);border-radius:12px;overflow:hidden;transition:.16s;display:flex;flex-direction:column;min-height:145px}.card:hover{border-color:var(--cyan);transform:translateY(-2px)}.card-art{height:4px;background:var(--accent,var(--cyan))}.card-body{padding:13px 15px;display:grid;gap:5px}.card small{color:var(--mute);font:10px var(--mono)}.card b{font:600 23px/1.05 var(--display);text-transform:uppercase}.card span{color:var(--dim);font-size:13px;line-height:1.35}.card-foot{margin-top:auto;padding:0 15px 12px;color:var(--mute);font:9px var(--mono);display:flex;justify-content:space-between}.migalha{display:flex;gap:8px;align-items:center;color:var(--mute);font-size:12px;margin:20px 0}.migalha a{color:var(--dim);text-decoration:none}.lesson-hero{padding:19px 0 18px;border-bottom:1px solid var(--line)}.lesson-hero h1{font:700 clamp(34px,5vw,52px)/.98 var(--display);text-transform:uppercase;margin:8px 0}.lesson-hero p{color:var(--dim);margin:0;line-height:1.5}.lesson-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.lesson-grid{display:grid;grid-template-columns:248px minmax(0,1fr);gap:26px;margin-top:22px;align-items:start}.index{position:sticky;top:78px;max-height:calc(100vh - 98px);overflow:auto;padding:0 4px 12px 0}.index h3{margin:0 0 10px;color:var(--mute);font:600 12px var(--display);letter-spacing:.12em;text-transform:uppercase}.index-list{display:grid;gap:3px}.page-link{display:flex;gap:9px;align-items:start;width:100%;padding:8px;border:0;border-radius:6px;background:transparent;color:var(--dim);text-align:left;cursor:pointer;font:13px var(--body)}.page-link:hover,.page-link[aria-current=true]{background:var(--panel2);color:var(--fg)}.page-link[aria-current=true]{box-shadow:inset 2px 0 var(--cyan)}.page-no{width:23px;flex:none;color:var(--cyan);font:10px var(--mono);padding-top:3px}.page-link-title{line-height:1.28}.content{min-width:0}.content-top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--mute);font:10px var(--mono);margin-bottom:11px}.content-top .read-state{color:var(--green)}.lesson-text{padding:clamp(18px,3vw,32px);background:var(--panel);border:1px solid var(--line);border-radius:12px;color:#333333;font:17px/1.75 var(--body);white-space:pre-wrap;overflow-wrap:anywhere;min-height:230px}.page-title{font:600 25px/1.1 var(--display);margin:0 0 14px;color:var(--fg);text-transform:uppercase}.source-scan{margin-top:13px;border:1px solid var(--line);background:#FFFFFF;border-radius:10px;overflow:hidden}.source-scan summary{padding:12px 15px;color:var(--cyan);font:600 12px var(--display);letter-spacing:.09em;text-transform:uppercase;cursor:pointer}.source-scan img{display:block;width:100%;height:auto;background:#F0F0F0}.pager{display:flex;justify-content:space-between;gap:10px;margin:14px 0 30px}.pager button{flex:1;justify-content:center}.progress-line{height:4px;background:var(--panel2);border-radius:5px;overflow:hidden;margin:12px 0}.progress-line span{display:block;height:100%;background:var(--green);transition:width .2s}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.review-card{padding:14px;border:1px solid var(--line);background:var(--panel);border-radius:10px}.review-card b{display:block;color:var(--cyan);font:600 15px var(--display);text-transform:uppercase}.review-card button{margin-top:8px;border:0;background:none;color:var(--dim);cursor:pointer;padding:0;font:13px var(--body)}.empty{padding:24px;border:1px dashed var(--line2);color:var(--dim);border-radius:10px}.sources{padding:18px;border:1px solid var(--line);background:var(--panel);border-radius:12px;color:var(--dim);line-height:1.65}.sources h2{font:600 23px var(--display);color:var(--fg);text-transform:uppercase}.sources b{color:var(--fg)}footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:18px 3px;color:var(--mute);font:10px var(--mono)}footer a{color:var(--cyan);text-decoration:none}.modal{position:fixed;inset:0;z-index:80;background:#17171770;display:grid;place-items:start center;padding:12vh 16px 20px}.modal[hidden]{display:none}.search-box{width:min(650px,100%);max-height:76vh;overflow:auto;background:var(--panel);border:1px solid var(--line2);border-radius:14px;padding:15px;box-shadow:0 25px 80px #0009}.search-head{display:flex;justify-content:space-between;align-items:center;color:var(--cyan);font:600 12px var(--display);letter-spacing:.12em}.search-head button{background:none;border:0;color:var(--dim);font-size:24px;cursor:pointer}.search-box input{width:100%;padding:13px 12px;margin:12px 0;border:1px solid var(--line2);background:#FFFFFF;color:var(--fg);border-radius:8px;font:16px var(--body);outline:none}.search-box input:focus{border-color:var(--cyan)}.results{display:grid;gap:4px}.result{padding:10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--fg);text-align:left;cursor:pointer}.result:hover{background:var(--panel2);border-color:var(--line)}.result b{display:block;color:var(--cyan);font:600 14px var(--display)}.result span{display:block;margin-top:3px;color:var(--dim);font-size:12px;line-height:1.4}.search-hint{display:block;color:var(--mute);font:10px/1.5 var(--mono);margin-top:10px}.toast{position:fixed;bottom:19px;left:50%;transform:translateX(-50%);z-index:90;padding:9px 13px;background:#F0F0F0;border:1px solid var(--line2);border-radius:8px;color:var(--fg);font:11px var(--mono)}
@media(max-width:850px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-grid{grid-template-columns:210px minmax(0,1fr);gap:18px}.hero{grid-template-columns:1fr .65fr}}@media(max-width:650px){body{padding-inline:10px}.top{margin-inline:-10px;padding-inline:10px}.topin{flex-wrap:wrap}.brand b{font-size:17px}.top-progress{display:none}.nav{gap:0}.nav a,.nav button{padding:7px 8px;font-size:12px}.hero{grid-template-columns:1fr;padding-top:31px}.stats{grid-template-columns:repeat(4,1fr)}.stat{padding:9px}.stat b{font-size:19px}.stat small{font-size:8px}.cards{grid-template-columns:1fr}.lesson-grid{grid-template-columns:1fr}.index{position:static;max-height:none;border-bottom:1px solid var(--line);padding-bottom:9px}.index-list{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-text{font-size:16px}.review-grid{grid-template-columns:1fr}}@media(max-width:420px){.brand small{font-size:8px}.nav a,.nav button{font-size:10px;padding:7px 6px}.search-btn kbd{display:none}.stats{grid-template-columns:repeat(2,1fr)}footer{flex-direction:column}}
