:root{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#22232a;background:#f2f2f7;font-size:16px;line-height:1.5;color-scheme:light;--ink:#22232a;--muted:#626470;--surface:#fff;--line:#dcdce3}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #285cc8;outline-offset:4px}header{padding:20px max(24px,calc((100% - 1120px)/2));background:var(--surface);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:750;text-decoration:none;letter-spacing:-.6px}.brand-mark{display:grid;place-items:center;width:35px;height:35px;background:#ba3456;border-radius:10px;color:white}nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap}nav a,nav button{padding:10px 12px;font-size:14px;color:var(--muted);border:0;background:none;text-decoration:none;border-radius:9px}nav a[aria-current=page]{color:var(--ink);background:#f2f2f7}main{max-width:1120px;margin:auto;padding:36px 24px;min-height:65vh;outline:none}h1{font-size:clamp(29px,4vw,40px);line-height:1.15;letter-spacing:-1.2px;margin:0 0 12px}h2{font-size:23px;line-height:1.25;letter-spacing:-.5px;margin:0 0 12px}h3{font-size:17px;margin:24px 0 8px}p{margin:0 0 14px;color:var(--muted)}.eyebrow{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:10px;font-weight:650}.intro{margin-bottom:24px}.subjects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.discipline{display:flex;align-items:center;gap:20px;min-height:100px;padding:23px 26px;border-radius:18px;color:#fff;text-decoration:none;background:var(--subject);transition:transform .15s}.discipline:hover{transform:translateY(-2px)}.subject-icon{font-size:29px;min-width:39px;text-align:center;font-weight:500}.discipline strong{font-size:25px;letter-spacing:-.5px;font-weight:600}.arrow{margin-left:auto;font-size:24px}.subject-portugues{--subject:#bf3e4b}.subject-matematica{--subject:#2766b5}.subject-fisica{--subject:#7550b5}.subject-quimica{--subject:#007e80}.subject-biologia{--subject:#38823c}.subject-historia{--subject:#a65c2b}.subject-geografia{--subject:#167d9d}.subject-sociologia{--subject:#af3d70}.subject-filosofia{--subject:#62519a}.subject-educacao-fisica{--subject:#b75b13}.subject-lingua-estrangeira{--subject:#aa3959}.subject-cultura-digital{--subject:#4165a1}.back{display:inline-block;margin-bottom:24px;color:var(--muted);font-size:14px;text-decoration:none}.category-head{border-left:5px solid var(--subject);padding-left:18px;margin-bottom:25px}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}.filters label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.filters label:first-child{flex:1;min-width:160px}input,select{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px;background:white;color:var(--ink)}.squares{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.square{aspect-ratio:1;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:24px;background:var(--surface);border-radius:18px;box-shadow:inset 0 4px 0 var(--subject);text-decoration:none}.square h2{font-size:26px;margin:20px 0;overflow-wrap:anywhere}.square small{color:var(--muted)}.square-bottom{display:flex;justify-content:space-between;width:100%;font-size:13px;color:var(--muted)}.hero{background:var(--subject);padding:32px;border-radius:20px;color:#fff;margin-bottom:28px}.hero p{color:white;max-width:730px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.tags span{padding:6px 10px;border-radius:7px;background:#0002;font-size:13px}.detail{display:grid;grid-template-columns:1.4fr 1fr;gap:32px}.package,.empty,.account-panel{padding:26px;background:var(--surface);border-radius:18px;align-self:start}.package ul{padding-left:22px;color:var(--muted);font-size:14px;margin:18px 0 24px}.package li{margin-bottom:10px}.btn{display:inline-block;padding:12px 16px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none;text-align:center;font-weight:600}.btn.primary{background:var(--subject,#22232a);color:#fff;border-color:transparent}.package .btn{width:100%;margin-top:10px}.quiet{border:0;background:none;padding:10px 0;color:var(--muted);text-align:left}.small{font-size:13px}.notice{padding:11px 24px;text-align:center;background:#e8edf8;color:#3b496b;font-size:13px}.success{color:#236d35}.files{list-style:none;padding:0}.files li{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.files button{font-size:13px}.empty{grid-column:1/-1}dialog{border:1px solid var(--line);border-radius:20px;padding:32px;width:min(470px,calc(100% - 32px));color:var(--ink);background:var(--surface)}dialog::backdrop{background:#1118}.close{display:block;margin-left:auto;background:none;border:0;font-size:25px;line-height:1}.form label{display:block;margin:18px 0 6px;font-size:14px}.form .btn{width:100%;margin-top:20px}.error{color:#a51e31;margin-top:16px}#status{max-width:1072px;margin:0 auto;padding:0 24px 18px;font-size:14px}footer{padding:24px;text-align:center;color:var(--muted);font-size:13px}.skip{position:absolute;left:12px;top:-100px;z-index:5;background:white;padding:12px}.skip:focus{top:12px}.checks{display:flex;gap:10px;margin-top:20px}.checks input{width:auto}.checks label{margin:0}.account-panel{max-width:680px}.account-panel .btn{margin:8px 8px 8px 0}@media(max-width:760px){.detail{grid-template-columns:1fr}.squares{grid-template-columns:repeat(2,minmax(0,1fr))}.discipline strong{font-size:21px}.discipline{padding:20px;gap:12px}header{padding:17px 20px}nav{gap:0}nav a,nav button{padding:9px;font-size:13px}}@media(max-width:520px){main{padding:26px 18px}.subjects{grid-template-columns:1fr;gap:10px}.discipline{min-height:86px;gap:20px}.discipline strong{font-size:24px}.squares{gap:12px}.square{padding:17px}.square h2{font-size:20px}.hero{padding:24px}.package{padding:24px}.filters label{flex:1}button,.btn{min-height:44px}}@media(max-width:350px){.squares{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
