*{box-sizing:border-box}
body{margin:0;font-family:Arial,sans-serif;background:#080d18;color:#e5edf8}
a{text-decoration:none}
.layout{display:flex;min-height:100vh}
aside{width:270px;background:linear-gradient(180deg,#0c1424,#070b14);border-right:1px solid rgba(148,163,184,.14);padding:24px;position:fixed;left:0;top:0;bottom:0}
.logo{font-size:25px;font-weight:900}
.sub{color:#8da0bc;font-size:14px;margin:5px 0 30px}
nav a{display:block;color:#aebcd1;padding:13px 14px;border-radius:14px;margin-bottom:8px;font-size:15px;font-weight:700}
nav a.active,nav a:hover{background:#17233a;color:#fff}
.userbox{position:absolute;bottom:22px;left:24px;right:24px;background:#101a2d;border:1px solid rgba(148,163,184,.14);border-radius:18px;padding:16px;color:#dbeafe}
.userbox span{color:#8da0bc;font-size:13px}
main{margin-left:270px;width:calc(100% - 270px);padding:28px}
.top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}
h1{margin:0;font-size:33px}
h2{margin:0 0 16px;font-size:21px}
.top p{margin:7px 0 0;color:#91a4bf}
.top-actions{display:flex;gap:10px;flex-wrap:wrap}
.btn{display:inline-block;background:#2563eb;color:#fff;border:none;border-radius:12px;padding:11px 14px;font-weight:800;font-size:13px;cursor:pointer}
.btn.gray{background:#1e293b;color:#cbd5e1}
.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-bottom:18px}
.card{background:linear-gradient(180deg,#111b2e,#0d1524);border:1px solid rgba(148,163,184,.14);border-radius:22px;padding:19px;box-shadow:0 18px 40px rgba(0,0,0,.2)}
.card small{color:#91a4bf;font-weight:800;font-size:13px}
.num{font-size:32px;font-weight:950;margin:9px 0 4px}
.hint{color:#7f91ab;font-size:13px}
.bar{height:10px;background:#1d293d;border-radius:999px;overflow:hidden;margin-top:14px}
.bar span{display:block;height:100%;border-radius:999px;background:#2563eb}
.green span{background:#22c55e}.red span{background:#ef4444}.orange span{background:#f59e0b}.purple span{background:#8b5cf6}
.grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-bottom:18px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:18px}
.insights{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.insight{background:#0b1220;border:1px solid rgba(148,163,184,.12);border-radius:17px;padding:15px}
.insight span{color:#8da0bc;font-size:13px}
.insight strong{display:block;font-size:25px;margin-top:6px}
table{width:100%;border-collapse:collapse}
th,td{padding:13px;border-bottom:1px solid rgba(148,163,184,.12);text-align:left;font-size:14px;vertical-align:middle}
th{color:#91a4bf;font-size:12px;text-transform:uppercase}
.badge{display:inline-block;padding:7px 11px;border-radius:999px;background:#1f2937;color:#cbd5e1;font-size:12px;font-weight:900}
.badge.intensa{background:#7f1d1d;color:#fecaca}
.badge.moderada{background:#7c2d12;color:#fed7aa}
.badge.leve{background:#14532d;color:#bbf7d0}
.badge.controle{background:#164e63;color:#a5f3fc}
.badge.ok{background:#14532d;color:#bbf7d0}
.badge.warn{background:#713f12;color:#fde68a}
.muted{color:#91a4bf}
input,select{width:100%;background:#0b1220;color:#e5edf8;border:1px solid rgba(148,163,184,.18);border-radius:13px;padding:12px;font-size:14px;outline:none}
.empty{padding:30px;text-align:center;color:#91a4bf}
.mobile-list{display:none}
.patient-card{background:#101a2d;border:1px solid rgba(148,163,184,.14);border-radius:18px;padding:16px;margin-bottom:12px}
.line{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(148,163,184,.1)}
.line:last-child{border-bottom:none}
.line strong{color:#91a4bf;font-size:13px}
.hero{background:linear-gradient(135deg,#101a2d,#111827);border:1px solid rgba(148,163,184,.14);border-radius:26px;padding:26px;margin-bottom:20px}
.hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.score-big{font-size:54px;font-weight:950;line-height:1;text-align:right}
.answers{display:grid;gap:14px}
.answer{background:#0b1220;border:1px solid rgba(148,163,184,.14);border-radius:18px;padding:18px}
.answer-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}
.question{font-size:16px;font-weight:800;line-height:1.45;margin-bottom:12px}
.response{background:#111b2e;border-radius:14px;padding:13px}
.response strong{display:block;color:#91a4bf;font-size:13px;margin-bottom:5px}
@media(max-width:1250px){.cards{grid-template-columns:repeat(2,1fr)}.grid,.grid3{grid-template-columns:1fr}}
@media(max-width:900px){aside{display:none}main{margin-left:0;width:100%;padding:16px}.top{display:block}.top-actions{margin-top:14px}.desktop-table{display:none}.mobile-list{display:block}.hero-top{display:block}.score-big{text-align:left;margin-top:15px}}
@media(max-width:600px){h1{font-size:27px}.cards{grid-template-columns:1fr}.insights{grid-template-columns:1fr}.card,.hero{padding:18px;border-radius:20px}}
