:root{--p:#4f46e5;--pd:#3730a3;--bg:#f4f7fb;--card:#fff;--text:#0f172a;--muted:#64748b;--border:#dbe3ef;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #f59e0b}.login{background:linear-gradient(135deg,#e0e7ff,#f8fafc);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--border);background:#fff;border-radius:28px;gap:14px;width:min(100%,520px);padding:32px;display:grid;box-shadow:0 20px 60px #0f172a22}.login-card h1{margin:0;font-size:42px}.login-card p{color:var(--muted);margin:0}label{color:#334155;gap:7px;font-weight:700;display:grid}input,textarea,select{border:1px solid var(--border);background:#f8fafc;border-radius:14px;width:100%;min-height:44px;padding:12px}textarea{min-height:100px}.login-card button,.card button,.student a,.side button,.file-button{background:var(--p);color:#fff;cursor:pointer;border:0;border-radius:14px;min-height:44px;padding:10px 14px;font-weight:800;transition:background .15s,transform .1s}.login-card button:hover,.card button:hover,.student a:hover,.file-button:hover{background:var(--pd)}.login-card button:active,.card button:active,.student a:active,.file-button:active{transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed}.file-button{justify-content:center;align-items:center;display:inline-flex}.file-button input{display:none}.demo{gap:8px;margin-top:10px;display:grid}.demo button{color:#312e81;text-align:left;background:#eef2ff}.demo small{color:#64748b;display:block}.error{color:#b91c1c;font-weight:800}.shell{grid-template-columns:270px minmax(0,1fr);min-height:100vh;display:grid}.side{color:#cbd5e1;background:#0f172a;flex-direction:column;height:100vh;padding:18px;display:flex;position:sticky;top:0}.logo{color:#fff;margin-bottom:28px;font-size:24px;font-weight:900;display:grid}.logo span{color:#94a3b8;font-size:12px}.side nav{gap:8px;display:grid}.side nav a{border-radius:14px;align-items:center;gap:10px;padding:12px 14px;transition:background .15s;display:flex}.side nav a:hover{color:#fff;background:#ffffff1a}.nav-icon{font-size:16px;font-style:normal}.side footer{border-top:1px solid #fff2;gap:8px;margin-top:auto;padding-top:16px;display:grid}.side footer small{color:#94a3b8}.side button{background:0 0;border:1px solid #fff3}.school-switch{color:#94a3b8;gap:4px;font-size:12px;font-weight:700;display:grid}.school-switch select{color:#fff;background:#1e293b;border:1px solid #fff3;border-radius:10px;min-height:38px;padding:8px}.main{width:100%;max-width:1280px;padding:32px}.header{justify-content:space-between;gap:16px;margin-bottom:24px;display:flex}.header p{color:var(--p);text-transform:uppercase;letter-spacing:.08em;margin:0 0 6px;font-size:12px;font-weight:900}.header h1{letter-spacing:-.04em;margin:0;font-size:34px}.header span,.hint{color:var(--muted);line-height:1.5;display:block}.card{background:var(--card);border:1px solid var(--border);border-radius:24px;margin-bottom:18px;padding:22px;box-shadow:0 12px 30px #0f172a0d}.metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px;display:grid}.metrics .card{margin:0}.metrics strong{letter-spacing:-.05em;font-size:32px;display:block}.metrics span{color:var(--muted);font-weight:700}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.student,.list article,.log{border:1px solid var(--border);background:#f8fafc;border-radius:20px;gap:10px;padding:18px;transition:box-shadow .15s,transform .15s;display:grid}.student:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0f172a14}.student h2{margin:0}.student p,.student small,.list small,.log small{color:var(--muted)}.student a{justify-content:center;align-items:center;display:inline-flex}.ok{color:#15803d!important}.warn{color:#b45309!important}.tabs{gap:8px;margin-bottom:14px;display:flex;overflow:auto}.tabs button{border:1px solid var(--border);color:#334155;text-transform:capitalize;background:#fff;border-radius:999px;min-height:44px;padding:10px 14px;font-weight:800;transition:background .15s,color .15s,border-color .15s}.tabs button:hover{border-color:var(--p);color:var(--p)}.tabs button.active{background:var(--p);border-color:var(--p);color:#fff}.tabs button.active:hover{color:#fff}.actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.actions button{color:#312e81;background:#e0e7ff}.actions button:hover{background:#c7d2fe!important}.form{gap:14px;display:grid}.inline-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}fieldset{border:1px solid var(--border);border-radius:18px;margin:16px 0;padding:16px}legend{padding:0 8px;font-weight:900}.range{border-bottom:1px solid #eef2f7;grid-template-columns:260px minmax(160px,1fr) 48px;align-items:center;gap:12px;padding:10px 0;display:grid}.range small{color:var(--muted);margin-top:4px;font-weight:500;line-height:1.35;display:block}.diagnostic-task{font-style:italic;color:#4f46e5!important}.range input{min-height:26px;padding:0}.list{gap:12px;display:grid}.list article button{background:#0f766e;justify-self:start}.list article button:hover{background:#115e59!important}.activity-detail{color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:12px;font-size:14px;line-height:1.55}.priority,.privacy-box{background:#eef2ff;border:1px solid #c7d2fe;border-radius:18px;margin:16px 0;padding:16px}.privacy-box{background:#fff7ed;border-color:#fed7aa}.priority h3,.privacy-box h3{margin:0 0 8px}.priority p{color:#312e81;margin:6px 0}.privacy-box p{color:#7c2d12;margin:6px 0;line-height:1.55}.preline,.log p{white-space:pre-line}.split{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:16px;display:grid}.evolution-layout{grid-template-columns:minmax(320px,1fr) minmax(320px,1fr)}.radar{width:100%;max-width:520px;margin:auto;display:block}.radar circle,.radar line{fill:none;stroke:#cbd5e1;stroke-width:.8px}.radar text{fill:#475569;text-anchor:middle;dominant-baseline:middle;font-size:7px}.radar-initial{fill:#94a3b855;stroke:#64748b;stroke-width:2px}.radar-current{fill:#4f46e555;stroke:#4f46e5;stroke-width:2px}.legend{color:#475569;flex-wrap:wrap;gap:12px;margin-top:10px;font-weight:800;display:flex}.dot{vertical-align:-1px;border-radius:999px;width:12px;height:12px;margin-right:6px;display:inline-block}.dot.initial{background:#94a3b8}.dot.current{background:#4f46e5}.bars{gap:12px;display:grid}.bars div{grid-template-columns:120px 42px 1fr;align-items:center;gap:10px;display:grid}.bars span{color:#334155;font-weight:800}.bars b{color:#0f172a}.bars i{background:#c7d2fe;border-radius:999px;height:12px;display:block}.checkbox-list{gap:8px;margin-top:6px;display:grid}.checkbox-item{color:#334155;align-items:center;gap:8px;font-weight:600;display:flex!important}.checkbox-item input{width:18px;height:18px;min-height:auto}.badge{border-radius:999px;width:fit-content;margin:0;padding:6px 12px;font-size:12px;font-weight:800}.badge-alta{color:#991b1b;background:#fef2f2}.badge-media{color:#9a3412;background:#fff7ed}.badge-baixa{color:#166534;background:#ecfdf5}.nav-toggle{z-index:20;color:#fff;text-align:left;cursor:pointer;background:#0f172a;border:0;width:100%;padding:14px 18px;font-weight:800;display:none;position:sticky;top:0}@media (width<=850px){.shell{grid-template-columns:1fr}.nav-toggle{display:block}.side{height:auto;display:none;position:relative}.shell.nav-open .side{display:flex}.main{padding:18px}.metrics,.split,.inline-grid,.evolution-layout,.range{grid-template-columns:1fr}.header{display:block}.bars div{grid-template-columns:1fr 42px}.bars i{grid-column:1/3}}@media print{.side,.tabs,button{display:none!important}.shell{display:block}.main{padding:0}.card{box-shadow:none;border:0}.activity-detail{border:0;padding:0}}.action-link{background:var(--p);color:#fff;border-radius:14px;justify-content:center;align-items:center;min-height:44px;padding:10px 14px;font-weight:800;display:inline-flex}.action-link:hover{background:var(--pd)}.game-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.game-card{background:#eff6ff;border-color:#bfdbfe}.game-shell{gap:16px;display:grid}.game-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;display:flex}.game-toolbar label{min-width:220px}.game-status{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;padding:14px;font-weight:800}.memory-board{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:12px;display:grid}.memory-card{color:#312e81;cursor:pointer;background:#eef2ff;border:2px solid #c7d2fe;border-radius:18px;place-items:center;gap:4px;min-height:118px;font-weight:900;transition:transform .12s,background .15s,border-color .15s;display:grid}.memory-card span{letter-spacing:.04em;font-size:18px}.memory-card small{color:#475569;font-size:12px}.memory-card.open{border-color:var(--p);background:#fff}.memory-card.matched{color:#14532d;background:#dcfce7;border-color:#16a34a}.memory-card:hover{transform:translateY(-1px)}.game-metrics{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.game-metrics div{border:1px solid var(--border);background:#f8fafc;border-radius:16px;padding:14px}.game-metrics b{font-size:24px;display:block}.game-metrics span{color:var(--muted);font-size:12px;font-weight:800}.manual-link{text-align:center;color:var(--p);margin-top:6px;font-weight:700;text-decoration:underline;display:inline-block}.action-link{color:#312e81;cursor:pointer;background:#e0e7ff;border:0;border-radius:14px;justify-content:center;align-items:center;min-height:44px;padding:10px 14px;font-weight:800;display:inline-flex}.activity-sheet h2{margin:20px 0 8px;font-size:18px}.activity-sheet ul,.activity-sheet ol{margin-top:8px;line-height:1.6}.activity-meta-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px;display:grid}.activity-meta-grid div{border:1px solid var(--border);background:#f8fafc;border-radius:16px;gap:4px;padding:14px;display:grid}.activity-meta-grid b{text-transform:uppercase;color:var(--muted);letter-spacing:.06em;font-size:12px}.activity-meta-grid span{color:#334155;font-weight:800}.student-picker{margin:0 0 16px}.filter-panel{border:1px solid var(--border);background:#f8fafc;border-radius:18px;gap:12px;margin:12px 0 16px;padding:14px;display:grid}.filter-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.filter-panel .actions{margin-top:0}.recommendation-reason{color:#155e75;background:#ecfeff;border:1px solid #a5f3fc;border-radius:14px;padding:10px;font-size:14px;line-height:1.45}.list article .actions{align-items:center}.list article .action-link{color:#312e81;background:#eef2ff}.activity-detail b{color:#0f172a}.prontas-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.pronta-card{background:#fff7ed;border:1px solid #fed7aa}.pronta-card h3{margin:0}.pronta-card .actions button:first-child{background:#ea580c}.pronta-card .actions button:first-child:hover{background:#c2410c}@media print{.action-link,.student-picker,.filter-panel{display:none!important}.activity-sheet{box-shadow:none;border:0}.activity-meta-grid div{break-inside:avoid}}.evolution-dashboard{gap:18px;display:grid}.evolution-kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.evolution-kpis article{border:1px solid var(--border);background:#fff;border-radius:20px;gap:5px;padding:18px;display:grid}.evolution-kpis strong{font-size:30px}.evolution-kpis span{color:var(--muted);font-weight:700}.positive{color:#15803d}.negative{color:#b91c1c}.evolution-wide{grid-column:1/-1}.evolution-insight{border-radius:16px;gap:4px;margin:12px 0;padding:14px;display:grid}.positive-box{color:#166534;background:#ecfdf5;border:1px solid #a7f3d0}.warning-box{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa}.evolution-line{width:100%;min-height:220px}.evolution-line line{stroke:#e2e8f0;stroke-width:1px}.evolution-line polyline{fill:none;stroke:var(--p);stroke-width:4px;stroke-linejoin:round;stroke-linecap:round}.evolution-line circle{fill:var(--p)}.evolution-line text{fill:#64748b;font-size:11px}.evolution-line .point-value{text-anchor:middle;fill:#312e81;font-weight:800}.evolution-line .point-date{text-anchor:middle;font-size:9px}.result-trend{gap:10px;display:grid}.result-trend article{grid-template-columns:110px 1fr 48px;align-items:center;gap:10px;display:grid}.result-trend article span{color:#475569;font-weight:700}.result-trend article div{background:#e2e8f0;border-radius:999px;height:12px;overflow:hidden}.result-trend article i{background:var(--p);border-radius:999px;height:100%;display:block}.result-trend article b{text-align:right}.evolution-radar text{font-size:6px}.alert-list{gap:10px;display:grid}.alert{border:1px solid var(--border);border-radius:14px;gap:3px;padding:12px 14px;display:grid}.alert b{text-transform:uppercase;letter-spacing:.04em;font-size:12px}.alert-alta{color:#991b1b;background:#fef2f2;border-color:#fecaca}.alert-media{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.alert-baixa{color:#166534;background:#ecfdf5;border-color:#a7f3d0}@media (width<=850px){.evolution-wide{grid-column:auto}.result-trend article{grid-template-columns:90px 1fr 42px}}.reports-layout{align-items:start}.report-student-list{gap:10px;max-height:560px;padding-right:4px;display:grid;overflow:auto}.report-student-row{border:1px solid var(--border);background:#f8fafc;border-radius:16px;gap:8px;padding:14px;display:grid}.report-student-row label{color:#0f172a;align-items:center;gap:8px;font-weight:800;display:flex}.report-student-row input[type=checkbox]{width:18px;height:18px;min-height:auto}@media (width<=850px){.report-student-list{max-height:none}}.pei-smart-page{color:#0f172a;background:#f4f7fb;min-height:100vh;padding:32px}.pei-smart-header{justify-content:space-between;align-items:flex-start;gap:16px;max-width:1280px;margin:0 auto 20px;display:flex}.pei-smart-header p{color:#4f46e5;text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:12px;font-weight:900}.pei-smart-header h1{margin:6px 0;font-size:36px}.pei-smart-header span{color:#64748b}.pei-smart-header a{color:#fff;background:#4f46e5;border-radius:14px;padding:12px 16px;font-weight:800}.pei-smart-metrics{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;max-width:1280px;margin:0 auto 18px;display:grid}.pei-smart-metrics article,.pei-smart-card,.pei-goal-card{background:#fff;border:1px solid #dbe3ef;border-radius:22px;padding:20px;box-shadow:0 12px 30px #0f172a0d}.pei-smart-metrics strong{font-size:30px;display:block}.pei-smart-metrics span{color:#64748b;font-weight:700}.pei-smart-list{gap:16px;max-width:1280px;margin:auto;display:grid}.pei-goal-card header{justify-content:space-between;gap:16px;display:flex}.pei-goal-card header strong{font-size:30px}.pei-goal-card h2{margin:4px 0 12px}.pei-status{text-transform:uppercase;letter-spacing:.08em;color:#4f46e5;font-size:11px;font-weight:900}.pei-progress{background:#e2e8f0;border-radius:999px;height:12px;margin:12px 0 18px;overflow:hidden}.pei-progress i{background:#4f46e5;border-radius:999px;height:100%;display:block}.pei-goal-card dl{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.pei-goal-card dl div{background:#f8fafc;border-radius:14px;padding:12px}.pei-goal-card dt{color:#64748b;font-size:12px;font-weight:800}.pei-goal-card dd{margin:4px 0 0;font-weight:900}.pei-recommendation{background:#eef2ff;border-radius:14px;padding:14px}.pei-goal-card[data-status=vencida]{border-color:#fca5a5}.pei-goal-card[data-status=sem_atendimento]{border-color:#fcd34d}.pei-goal-card[data-status=concluida]{border-color:#86efac}@media (width<=700px){.pei-smart-page{padding:18px}.pei-smart-header{display:grid}.pei-smart-header h1{font-size:30px}}.today-dashboard{gap:1rem;display:grid}.today-dashboard>header,.teacher-copilot-panel{background:var(--surface,#fff);border:1px solid var(--border,#dfe7df);border-radius:18px;padding:1rem}.today-dashboard>header h2{margin:.15rem 0}.today-dashboard__grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.session-plan-card{background:#fff;border:1px solid #dfe7df;border-radius:18px;gap:.85rem;padding:1rem;display:grid;box-shadow:0 8px 24px #143c1e14}.session-plan-card__header{justify-content:space-between;gap:1rem;display:flex}.session-plan-card__eyebrow{text-transform:uppercase;letter-spacing:.06em;color:#2e7d32;margin:0;font-size:.78rem;font-weight:700}.session-plan-card h3,.session-plan-card p{margin:.15rem 0}.session-plan-card__items{gap:.75rem;margin:0;padding-left:1.2rem;display:grid}.session-plan-card__items li{background:#f7fbf7;border-radius:14px;padding:.75rem}.session-plan-card__items span{color:#4d6350;font-size:.85rem;display:block}.session-plan-card__item-actions,.session-plan-card__actions,.quick-result-form__scale{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.session-plan-card button,.quick-result-form button{cursor:pointer;background:#fff;border:1px solid #bfd4c1;border-radius:999px;padding:.55rem .85rem}.session-plan-card button.primary,.quick-result-form button.primary{color:#fff;background:#1b5e20;border-color:#1b5e20}.quick-result-form{gap:1rem;max-width:720px;display:grid}.quick-result-form fieldset{border:1px solid #dfe7df;border-radius:14px;padding:.85rem}.quick-result-form input,.quick-result-form textarea{border:1px solid #bfd4c1;border-radius:10px;width:100%;min-height:2.4rem;margin-top:.35rem;padding:.5rem;display:block}.quick-result-form__scale button[aria-pressed=true]{background:#e8f5e9;border-color:#1b5e20;font-weight:700}.today-dashboard__dialog{border:0;border-radius:18px;width:min(760px,92vw);padding:1rem}
