/* ------------------------------------------------------------------
   CRM white label — folha de estilo unica.

   As cores da marca sao variaveis que o app.js reescreve a partir do
   banco. Cliente sem marca cai no neutro e a tela nao quebra.
   ------------------------------------------------------------------ */

:root {
  /* Marca — sobrescritas em tempo de execucao pelo cliente */
  --marca: #4a5568;
  --marca-escura: #2d3748;
  --marca-clara: #edf2f7;
  --marca-contraste: #ffffff;

  /* Neutros */
  --tinta: #1a1d1f;
  --tinta-media: #5c5c5c;
  --tinta-fraca: #8b9196;
  --linha: #e6e8ea;
  --linha-forte: #d4d8db;
  --fundo: #f7f8f9;
  --papel: #ffffff;
  --papel-hover: #fafbfb;

  /* Sinais */
  --ok: #2f855a;
  --ok-fundo: #f0fdf4;
  --alerta: #b45309;
  --alerta-fundo: #fffbeb;
  --erro: #c53030;
  --erro-fundo: #fef2f2;
  --info: #2b6cb0;
  --info-fundo: #eff6ff;

  /* Escala de espaco */
  --e1: 4px;  --e2: 8px;  --e3: 12px; --e4: 16px;
  --e5: 24px; --e6: 32px; --e7: 48px; --e8: 64px;

  --raio: 10px;
  --raio-p: 6px;
  --sombra: 0 1px 2px rgba(16, 24, 40, 0.04), 0 1px 3px rgba(16, 24, 40, 0.06);
  --sombra-alta: 0 4px 6px -1px rgba(16, 24, 40, 0.07), 0 10px 20px -4px rgba(16, 24, 40, 0.08);

  --lateral: 286px;
}

* { box-sizing: border-box; }

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
}

body {
  font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: var(--tinta);
  background: var(--fundo);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 { margin: 0; font-weight: 600; letter-spacing: -0.015em; }
h1 { font-size: 22px; }
h2 { font-size: 17px; }
h3 { font-size: 15px; }
p  { margin: 0 0 var(--e3); }

a { color: var(--marca); text-decoration: none; }
a:hover { text-decoration: underline; }

:focus-visible {
  outline: 2px solid var(--marca);
  outline-offset: 2px;
  border-radius: var(--raio-p);
}

/* ---------------------------------------------------- Céu estrelado */
/* Posições fixas por semente: um céu que muda a cada carregamento
   chama atenção para si, e esta é uma tela de passagem. */

.estrelas, .estrelas::before, .estrelas::after {
  position: absolute;
  top: 0; left: 0;
  width: 1px; height: 1px;
  border-radius: 50%;
  pointer-events: none;
}

.estrelas {
  content: '';
  box-shadow: 1444px 1186px 0 rgba(255,255,255,.18),
    706px 99px 0 rgba(255,255,255,.25),
    943px 480px 0 rgba(255,255,255,.25),
    2239px 269px 0 rgba(255,255,255,.25),
    814px 396px 0 rgba(255,255,255,.18),
    436px 396px 0 rgba(255,255,255,.25),
    2081px 237px 0 rgba(255,255,255,.25),
    1847px 10px 0 rgba(170,220,255,.22),
    470px 752px 0 rgba(255,255,255,.25),
    2395px 712px 0 rgba(255,255,255,.18),
    233px 126px 0 rgba(255,255,255,.25),
    601px 936px 0 rgba(255,255,255,.25),
    443px 1152px 0 rgba(255,255,255,.25),
    2101px 1051px 0 rgba(255,255,255,.18),
    388px 363px 0 rgba(255,255,255,.18),
    1705px 182px 0 rgba(255,255,255,.18),
    1871px 93px 0 rgba(255,255,255,.25),
    1580px 1081px 0 rgba(255,255,255,.25),
    236px 147px 0 rgba(255,255,255,.18),
    392px 609px 0 rgba(170,220,255,.22),
    784px 11px 0 rgba(255,255,255,.25),
    307px 798px 0 rgba(255,255,255,.25),
    2331px 996px 0 rgba(255,255,255,.18),
    304px 1091px 0 rgba(255,255,255,.25),
    1497px 84px 0 rgba(170,220,255,.22),
    1551px 10px 0 rgba(170,220,255,.22),
    1967px 74px 0 rgba(255,255,255,.25),
    116px 330px 0 rgba(255,255,255,.18),
    2115px 1028px 0 rgba(170,220,255,.22),
    2117px 1362px 0 rgba(255,255,255,.18),
    173px 631px 0 rgba(255,255,255,.18),
    59px 245px 0 rgba(255,255,255,.25),
    1198px 1191px 0 rgba(170,220,255,.22),
    206px 91px 0 rgba(170,220,255,.22),
    2067px 28px 0 rgba(255,255,255,.18),
    2105px 575px 0 rgba(255,255,255,.18),
    81px 942px 0 rgba(170,220,255,.22),
    1390px 1364px 0 rgba(255,255,255,.25),
    1295px 1312px 0 rgba(170,220,255,.22),
    2286px 1373px 0 rgba(170,220,255,.22),
    2162px 993px 0 rgba(255,255,255,.18),
    1055px 646px 0 rgba(170,220,255,.22),
    1626px 1136px 0 rgba(170,220,255,.22),
    1455px 732px 0 rgba(255,255,255,.25),
    618px 1026px 0 rgba(255,255,255,.25),
    1908px 1055px 0 rgba(255,255,255,.18),
    1848px 311px 0 rgba(170,220,255,.22),
    34px 78px 0 rgba(170,220,255,.22),
    1883px 1193px 0 rgba(255,255,255,.18),
    2205px 1046px 0 rgba(255,255,255,.25),
    504px 998px 0 rgba(255,255,255,.18),
    2299px 302px 0 rgba(255,255,255,.25),
    1971px 503px 0 rgba(170,220,255,.22),
    72px 1244px 0 rgba(255,255,255,.18),
    2057px 1182px 0 rgba(255,255,255,.18),
    365px 378px 0 rgba(255,255,255,.18),
    1379px 115px 0 rgba(255,255,255,.18),
    446px 1243px 0 rgba(170,220,255,.22),
    800px 23px 0 rgba(170,220,255,.22),
    1105px 734px 0 rgba(255,255,255,.18),
    2176px 942px 0 rgba(255,255,255,.25),
    88px 313px 0 rgba(255,255,255,.25),
    2009px 413px 0 rgba(255,255,255,.18),
    263px 201px 0 rgba(255,255,255,.25),
    1937px 486px 0 rgba(255,255,255,.25),
    1649px 868px 0 rgba(255,255,255,.18),
    767px 799px 0 rgba(255,255,255,.18),
    1251px 104px 0 rgba(255,255,255,.25),
    395px 1338px 0 rgba(170,220,255,.22),
    1858px 1058px 0 rgba(255,255,255,.25),
    1943px 258px 0 rgba(255,255,255,.25),
    1169px 365px 0 rgba(170,220,255,.22),
    1959px 978px 0 rgba(255,255,255,.18),
    1498px 808px 0 rgba(255,255,255,.18),
    252px 1221px 0 rgba(255,255,255,.25),
    2235px 285px 0 rgba(170,220,255,.22),
    909px 797px 0 rgba(170,220,255,.22),
    2279px 941px 0 rgba(255,255,255,.25),
    1641px 1038px 0 rgba(170,220,255,.22),
    2340px 1057px 0 rgba(255,255,255,.25),
    759px 186px 0 rgba(255,255,255,.25),
    2352px 945px 0 rgba(255,255,255,.25),
    945px 1139px 0 rgba(170,220,255,.22),
    2264px 639px 0 rgba(255,255,255,.25),
    2307px 691px 0 rgba(255,255,255,.18),
    732px 1063px 0 rgba(255,255,255,.18),
    2376px 715px 0 rgba(255,255,255,.25),
    224px 1129px 0 rgba(170,220,255,.22),
    1105px 494px 0 rgba(255,255,255,.18),
    514px 583px 0 rgba(255,255,255,.18),
    1455px 1345px 0 rgba(255,255,255,.25),
    543px 1260px 0 rgba(255,255,255,.25),
    1752px 1155px 0 rgba(255,255,255,.25),
    1261px 923px 0 rgba(170,220,255,.22),
    1302px 794px 0 rgba(255,255,255,.25),
    2173px 410px 0 rgba(255,255,255,.25),
    820px 1400px 0 rgba(255,255,255,.25),
    1415px 773px 0 rgba(255,255,255,.18),
    1967px 714px 0 rgba(170,220,255,.22),
    532px 692px 0 rgba(170,220,255,.22),
    801px 513px 0 rgba(255,255,255,.18),
    382px 1167px 0 rgba(170,220,255,.22),
    1500px 246px 0 rgba(170,220,255,.22),
    2018px 1010px 0 rgba(255,255,255,.25),
    1193px 607px 0 rgba(255,255,255,.25),
    1364px 1139px 0 rgba(255,255,255,.18),
    19px 889px 0 rgba(170,220,255,.22),
    1559px 551px 0 rgba(255,255,255,.25),
    1222px 235px 0 rgba(255,255,255,.25),
    2150px 1115px 0 rgba(170,220,255,.22),
    547px 296px 0 rgba(255,255,255,.25),
    249px 708px 0 rgba(255,255,255,.18),
    421px 531px 0 rgba(255,255,255,.18),
    2352px 1146px 0 rgba(170,220,255,.22),
    716px 1143px 0 rgba(255,255,255,.25),
    1593px 32px 0 rgba(255,255,255,.18),
    439px 724px 0 rgba(255,255,255,.25),
    2297px 930px 0 rgba(255,255,255,.18),
    700px 659px 0 rgba(255,255,255,.18),
    1533px 1113px 0 rgba(255,255,255,.25),
    1360px 741px 0 rgba(255,255,255,.18),
    205px 210px 0 rgba(255,255,255,.18),
    604px 530px 0 rgba(170,220,255,.22),
    1485px 747px 0 rgba(255,255,255,.25),
    1402px 181px 0 rgba(255,255,255,.25),
    937px 1243px 0 rgba(255,255,255,.18),
    863px 176px 0 rgba(255,255,255,.18),
    2105px 117px 0 rgba(255,255,255,.25),
    1631px 191px 0 rgba(255,255,255,.25),
    1374px 335px 0 rgba(255,255,255,.25),
    31px 473px 0 rgba(255,255,255,.18),
    1690px 8px 0 rgba(170,220,255,.22),
    248px 1304px 0 rgba(170,220,255,.22),
    215px 647px 0 rgba(255,255,255,.18),
    1691px 722px 0 rgba(170,220,255,.22),
    694px 568px 0 rgba(170,220,255,.22),
    931px 586px 0 rgba(255,255,255,.18),
    2107px 1353px 0 rgba(255,255,255,.18),
    2219px 634px 0 rgba(255,255,255,.25),
    1549px 524px 0 rgba(255,255,255,.18),
    169px 1374px 0 rgba(255,255,255,.25),
    0px 323px 0 rgba(255,255,255,.25),
    1325px 462px 0 rgba(255,255,255,.25),
    221px 87px 0 rgba(255,255,255,.18),
    98px 635px 0 rgba(170,220,255,.22),
    1179px 49px 0 rgba(170,220,255,.22),
    815px 760px 0 rgba(255,255,255,.18),
    364px 1282px 0 rgba(170,220,255,.22),
    713px 1205px 0 rgba(255,255,255,.18),
    585px 927px 0 rgba(255,255,255,.25),
    1541px 652px 0 rgba(170,220,255,.22),
    558px 236px 0 rgba(255,255,255,.25),
    2329px 154px 0 rgba(255,255,255,.25),
    888px 119px 0 rgba(255,255,255,.18),
    158px 628px 0 rgba(255,255,255,.25),
    650px 343px 0 rgba(255,255,255,.25),
    357px 507px 0 rgba(255,255,255,.18),
    1973px 188px 0 rgba(255,255,255,.25),
    642px 437px 0 rgba(255,255,255,.18),
    1087px 1246px 0 rgba(170,220,255,.22),
    1609px 385px 0 rgba(255,255,255,.25),
    2279px 435px 0 rgba(170,220,255,.22),
    2134px 283px 0 rgba(255,255,255,.25),
    1178px 1392px 0 rgba(255,255,255,.25),
    214px 875px 0 rgba(170,220,255,.22),
    1096px 282px 0 rgba(255,255,255,.18),
    825px 1286px 0 rgba(255,255,255,.18),
    1155px 690px 0 rgba(255,255,255,.25),
    2097px 120px 0 rgba(170,220,255,.22),
    368px 1080px 0 rgba(255,255,255,.18),
    1065px 411px 0 rgba(170,220,255,.22),
    2374px 1313px 0 rgba(255,255,255,.18),
    1874px 258px 0 rgba(170,220,255,.22),
    1970px 281px 0 rgba(255,255,255,.18),
    593px 998px 0 rgba(255,255,255,.25),
    1325px 982px 0 rgba(255,255,255,.18),
    1668px 650px 0 rgba(255,255,255,.18),
    950px 693px 0 rgba(255,255,255,.25),
    904px 1152px 0 rgba(170,220,255,.22),
    922px 1244px 0 rgba(255,255,255,.25),
    1729px 793px 0 rgba(255,255,255,.25),
    176px 179px 0 rgba(255,255,255,.25),
    1636px 661px 0 rgba(170,220,255,.22),
    2130px 493px 0 rgba(255,255,255,.18),
    345px 1185px 0 rgba(170,220,255,.22),
    976px 229px 0 rgba(255,255,255,.25),
    1258px 1234px 0 rgba(255,255,255,.25),
    2326px 1326px 0 rgba(170,220,255,.22),
    2400px 600px 0 rgba(255,255,255,.18),
    703px 502px 0 rgba(255,255,255,.18),
    1132px 798px 0 rgba(170,220,255,.22),
    1993px 327px 0 rgba(255,255,255,.25),
    689px 264px 0 rgba(170,220,255,.22),
    1094px 1329px 0 rgba(170,220,255,.22),
    930px 1383px 0 rgba(255,255,255,.18),
    1453px 828px 0 rgba(255,255,255,.25),
    216px 495px 0 rgba(255,255,255,.18),
    2010px 509px 0 rgba(255,255,255,.25),
    688px 1087px 0 rgba(170,220,255,.22),
    2375px 552px 0 rgba(255,255,255,.18),
    1773px 1204px 0 rgba(255,255,255,.25),
    1568px 457px 0 rgba(170,220,255,.22),
    1662px 802px 0 rgba(170,220,255,.22),
    1919px 870px 0 rgba(255,255,255,.25),
    449px 912px 0 rgba(255,255,255,.25),
    819px 1316px 0 rgba(255,255,255,.25),
    1533px 144px 0 rgba(255,255,255,.18),
    826px 1107px 0 rgba(255,255,255,.18),
    1851px 78px 0 rgba(170,220,255,.22),
    1096px 719px 0 rgba(255,255,255,.18),
    1522px 1104px 0 rgba(170,220,255,.22),
    859px 524px 0 rgba(255,255,255,.18),
    2321px 1382px 0 rgba(170,220,255,.22),
    2014px 276px 0 rgba(170,220,255,.22),
    565px 835px 0 rgba(255,255,255,.25),
    1180px 1316px 0 rgba(255,255,255,.25),
    674px 1178px 0 rgba(170,220,255,.22),
    707px 1245px 0 rgba(255,255,255,.18),
    577px 193px 0 rgba(255,255,255,.18),
    2325px 964px 0 rgba(255,255,255,.18),
    498px 224px 0 rgba(170,220,255,.22),
    849px 330px 0 rgba(255,255,255,.18),
    433px 197px 0 rgba(255,255,255,.18),
    601px 1057px 0 rgba(255,255,255,.18),
    2189px 164px 0 rgba(255,255,255,.25),
    2385px 135px 0 rgba(255,255,255,.18),
    861px 1181px 0 rgba(255,255,255,.18),
    989px 445px 0 rgba(255,255,255,.25),
    835px 382px 0 rgba(255,255,255,.18),
    1014px 161px 0 rgba(170,220,255,.22),
    2327px 1310px 0 rgba(255,255,255,.25),
    317px 593px 0 rgba(255,255,255,.18),
    355px 1175px 0 rgba(170,220,255,.22),
    809px 147px 0 rgba(170,220,255,.22),
    350px 792px 0 rgba(255,255,255,.25),
    1083px 188px 0 rgba(255,255,255,.18),
    2359px 92px 0 rgba(255,255,255,.25),
    155px 523px 0 rgba(170,220,255,.22),
    1859px 119px 0 rgba(255,255,255,.25),
    1975px 261px 0 rgba(255,255,255,.18),
    1125px 1206px 0 rgba(255,255,255,.18),
    271px 464px 0 rgba(170,220,255,.22),
    87px 922px 0 rgba(255,255,255,.18),
    1813px 772px 0 rgba(255,255,255,.25),
    1103px 535px 0 rgba(255,255,255,.18),
    90px 301px 0 rgba(255,255,255,.25),
    1063px 930px 0 rgba(255,255,255,.18),
    334px 456px 0 rgba(255,255,255,.25),
    1424px 510px 0 rgba(255,255,255,.25),
    337px 1188px 0 rgba(255,255,255,.25),
    1436px 597px 0 rgba(255,255,255,.18),
    1713px 459px 0 rgba(255,255,255,.25),
    2262px 55px 0 rgba(255,255,255,.25),
    2016px 974px 0 rgba(255,255,255,.25),
    989px 1209px 0 rgba(255,255,255,.18),
    969px 396px 0 rgba(255,255,255,.25),
    782px 416px 0 rgba(170,220,255,.22),
    553px 272px 0 rgba(255,255,255,.25),
    2022px 996px 0 rgba(255,255,255,.25),
    143px 1184px 0 rgba(255,255,255,.18);
}

.estrelas::before {
  content: '';
  width: 2px; height: 2px;
  box-shadow: 556px 200px 0 rgba(77,213,235,.45),
    1611px 3px 0 rgba(190,235,255,.5),
    970px 402px 0 rgba(190,235,255,.5),
    1035px 115px 0 rgba(77,213,235,.45),
    1887px 256px 0 rgba(255,255,255,.55),
    359px 1099px 0 rgba(190,235,255,.5),
    165px 586px 0 rgba(77,213,235,.45),
    144px 177px 0 rgba(255,255,255,.55),
    352px 1188px 0 rgba(190,235,255,.5),
    608px 822px 0 rgba(77,213,235,.45),
    243px 1203px 0 rgba(77,213,235,.45),
    2307px 178px 0 rgba(255,255,255,.55),
    1394px 372px 0 rgba(255,255,255,.55),
    9px 952px 0 rgba(255,255,255,.55),
    1830px 841px 0 rgba(255,255,255,.55),
    1869px 554px 0 rgba(255,255,255,.55),
    1671px 642px 0 rgba(255,255,255,.55),
    605px 1188px 0 rgba(77,213,235,.45),
    1101px 470px 0 rgba(190,235,255,.5),
    1144px 345px 0 rgba(255,255,255,.55),
    1268px 977px 0 rgba(255,255,255,.55),
    100px 352px 0 rgba(190,235,255,.5),
    843px 23px 0 rgba(77,213,235,.45),
    711px 216px 0 rgba(77,213,235,.45),
    262px 71px 0 rgba(255,255,255,.55),
    1004px 768px 0 rgba(77,213,235,.45),
    588px 420px 0 rgba(190,235,255,.5),
    18px 98px 0 rgba(77,213,235,.45),
    1451px 1013px 0 rgba(77,213,235,.45),
    1305px 176px 0 rgba(255,255,255,.55),
    1114px 383px 0 rgba(255,255,255,.55),
    2343px 1217px 0 rgba(190,235,255,.5),
    1955px 592px 0 rgba(77,213,235,.45),
    91px 290px 0 rgba(255,255,255,.55),
    700px 1250px 0 rgba(255,255,255,.55),
    268px 531px 0 rgba(77,213,235,.45),
    53px 1303px 0 rgba(255,255,255,.55),
    713px 157px 0 rgba(190,235,255,.5),
    1989px 154px 0 rgba(190,235,255,.5),
    935px 1333px 0 rgba(255,255,255,.55),
    2323px 841px 0 rgba(77,213,235,.45),
    871px 1159px 0 rgba(255,255,255,.55),
    900px 1387px 0 rgba(190,235,255,.5),
    2072px 983px 0 rgba(255,255,255,.55),
    1622px 500px 0 rgba(255,255,255,.55),
    687px 1338px 0 rgba(190,235,255,.5),
    93px 941px 0 rgba(190,235,255,.5),
    317px 43px 0 rgba(77,213,235,.45),
    1763px 527px 0 rgba(255,255,255,.55),
    1817px 643px 0 rgba(77,213,235,.45),
    561px 352px 0 rgba(255,255,255,.55),
    416px 1350px 0 rgba(255,255,255,.55),
    1562px 1360px 0 rgba(77,213,235,.45),
    1561px 1391px 0 rgba(190,235,255,.5),
    262px 733px 0 rgba(77,213,235,.45),
    1395px 211px 0 rgba(190,235,255,.5),
    2077px 350px 0 rgba(255,255,255,.55),
    2244px 826px 0 rgba(255,255,255,.55),
    392px 1248px 0 rgba(77,213,235,.45),
    1960px 77px 0 rgba(77,213,235,.45),
    25px 1326px 0 rgba(255,255,255,.55),
    2141px 1256px 0 rgba(255,255,255,.55),
    1042px 1216px 0 rgba(190,235,255,.5),
    1092px 1210px 0 rgba(190,235,255,.5),
    571px 1349px 0 rgba(190,235,255,.5),
    1674px 726px 0 rgba(190,235,255,.5),
    350px 197px 0 rgba(77,213,235,.45),
    598px 696px 0 rgba(77,213,235,.45),
    2381px 984px 0 rgba(190,235,255,.5),
    264px 412px 0 rgba(190,235,255,.5),
    1453px 520px 0 rgba(190,235,255,.5),
    969px 884px 0 rgba(77,213,235,.45),
    602px 979px 0 rgba(255,255,255,.55),
    978px 1219px 0 rgba(190,235,255,.5),
    1854px 149px 0 rgba(77,213,235,.45),
    1050px 994px 0 rgba(255,255,255,.55),
    1781px 907px 0 rgba(77,213,235,.45),
    2221px 1111px 0 rgba(190,235,255,.5),
    1846px 497px 0 rgba(190,235,255,.5),
    46px 381px 0 rgba(77,213,235,.45),
    489px 125px 0 rgba(190,235,255,.5),
    781px 912px 0 rgba(190,235,255,.5),
    902px 965px 0 rgba(190,235,255,.5),
    914px 530px 0 rgba(77,213,235,.45),
    1577px 1059px 0 rgba(255,255,255,.55),
    1132px 2px 0 rgba(77,213,235,.45),
    2286px 1213px 0 rgba(77,213,235,.45),
    2158px 1098px 0 rgba(77,213,235,.45),
    271px 464px 0 rgba(77,213,235,.45),
    1274px 56px 0 rgba(255,255,255,.55);
}

.estrelas::after {
  content: '';
  width: 3px; height: 3px;
  box-shadow: 2265px 728px 0 rgba(77,213,235,.85),
    1451px 1349px 0 rgba(5,125,245,.8),
    1596px 869px 0 rgba(5,125,245,.8),
    833px 826px 0 rgba(255,255,255,.92),
    2089px 814px 0 rgba(5,125,245,.8),
    2252px 1033px 0 rgba(5,125,245,.8),
    1740px 154px 0 rgba(255,255,255,.92),
    261px 173px 0 rgba(255,255,255,.92),
    1789px 256px 0 rgba(5,125,245,.8),
    2069px 969px 0 rgba(255,255,255,.92),
    335px 514px 0 rgba(77,213,235,.85),
    867px 570px 0 rgba(5,125,245,.8),
    825px 34px 0 rgba(5,125,245,.8),
    1291px 361px 0 rgba(5,125,245,.8),
    805px 817px 0 rgba(255,255,255,.92),
    2026px 1307px 0 rgba(77,213,235,.85),
    953px 884px 0 rgba(255,255,255,.92),
    2287px 256px 0 rgba(77,213,235,.85),
    1019px 295px 0 rgba(5,125,245,.8),
    781px 155px 0 rgba(5,125,245,.8),
    1932px 402px 0 rgba(5,125,245,.8),
    1388px 1123px 0 rgba(77,213,235,.85),
    2284px 109px 0 rgba(5,125,245,.8),
    657px 215px 0 rgba(77,213,235,.85),
    1666px 1px 0 rgba(77,213,235,.85),
    101px 1242px 0 rgba(255,255,255,.92);
  animation: cintila 7s ease-in-out infinite;
}

@keyframes cintila {
  0%, 100% { opacity: 1; }
  50%       { opacity: 0.55; }
}

@media (prefers-reduced-motion: reduce) {
  .estrelas::after { animation: none; }
}

/* ---------------------------------------------------------- Acesso */

/* Céu quase preto, como o material da NEXUS. O azul entra como brilho
   distante, nunca como fundo. */
.acesso {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  display: grid;
  place-items: center;
  padding: var(--e4);
  background:
    radial-gradient(760px 520px at 24% 46%, rgba(5, 125, 245, 0.17), transparent 68%),
    radial-gradient(900px 620px at 88% 88%, rgba(77, 213, 235, 0.09), transparent 66%),
    linear-gradient(165deg, #02060f 0%, #040a18 48%, #061225 100%);
}

/* A tela em dois lados: NEXUS à esquerda, acesso à direita. */
.acesso-grade {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1080px;
  display: grid;
  grid-template-columns: 1fr minmax(380px, 420px);
  align-items: center;
  gap: var(--e8);
}

.nexus-lado {
  position: relative;
  display: grid;
  place-items: center;
}

/* Zona limpa: apaga as estrelas atrás do logo. Sem isso os pontos dos
   ramos neurais e as estrelas viram a mesma coisa, e o desenho some. */
.nexus-lado::before {
  content: '';
  position: absolute;
  inset: -45% -30%;
  /* O tom é o mesmo do fundo nessa altura da tela: assim ele apaga a
     estrela sem virar uma mancha de borda visível. */
  background: radial-gradient(
    closest-side,
    rgba(4, 10, 24, 0.99) 26%,
    rgba(4, 10, 24, 0.92) 42%,
    rgba(4, 10, 24, 0.6) 62%,
    rgba(4, 10, 24, 0) 100%
  );
  z-index: 0;
}

.nexus-lado img {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 520px;
  height: auto;
}

/* O halo do logo tem inset negativo e invade a coluna do cartão. Sem um
   contexto de empilhamento próprio aqui, ele pintaria por cima. */
.acesso-cartao {
  position: relative;
  z-index: 3;
  width: 100%;
  background: var(--papel);
  border-radius: 16px;
  box-shadow: 0 30px 70px -14px rgba(0, 0, 0, 0.7), 0 0 0 1px rgba(255, 255, 255, 0.07);
  padding: var(--e5) var(--e6);
}

/* Logo do cliente: grande e centralizado, como dono do cartão. */
.acesso-marca {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--e2);
  margin-bottom: var(--e4);
  padding-bottom: var(--e4);
  border-bottom: 1px solid var(--linha);
}

.acesso-marca img { height: 76px; width: auto; max-width: 100%; }
.acesso-marca .nome-cliente { font-weight: 600; font-size: 16px; }

.acesso h1 { font-size: 20px; margin-bottom: var(--e1); }
.acesso .sub { color: var(--tinta-media); margin-bottom: var(--e4); }

/* Uma linha só: 11px e sem quebra. */
.acesso .credito {
  font-size: 11px;
  line-height: 1.4;
  color: var(--tinta-fraca);
  text-align: center;
  white-space: nowrap;
  margin: 0;
}

/* A Fly assina a autoria, dentro do cartão: o PNG dela tem fundo branco
   sólido, então só funde em superfície branca -- sobre o escuro viraria
   um bloco recortado. */
.credito-fly {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--e2);
  margin-top: var(--e4);
  padding-top: var(--e3);
  border-top: 1px solid var(--linha);
}

.credito-fly img { height: 86px; width: auto; }

/* Abaixo de 900px não há dois lados: a NEXUS vai para cima, menor. */
@media (max-width: 900px) {
  .acesso-grade {
    grid-template-columns: 1fr;
    gap: var(--e5);
    max-width: 420px;
    justify-items: center;
  }
  .nexus-lado img { max-width: 300px; }
  .nexus-lado::before { inset: -22% -18%; }
}

@media (max-width: 480px) {
  .acesso .credito { white-space: normal; }
  .nexus-lado img { max-width: 240px; }
  .credito-fly img { height: 68px; }
}

/* --------------------------------------------------------- Estrutura */

.app {
  display: grid;
  grid-template-columns: var(--lateral) 1fr;
  min-height: 100vh;
}

.lateral {
  background: var(--papel);
  border-right: 1px solid var(--linha);
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 0;
  height: 100vh;
}

.lateral-topo {
  padding: var(--e4);
  border-bottom: 1px solid var(--linha);
  display: flex;
  align-items: center;
  gap: var(--e3);
  min-height: 65px;
}

.lateral-topo img { height: 30px; width: auto; flex: none; }

.lateral-topo .nome {
  font-weight: 600;
  font-size: 14px;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lateral-topo .tipo { font-size: 11px; color: var(--tinta-fraca); }

nav { padding: var(--e3); flex: 1; overflow-y: auto; }

.nav-grupo {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--tinta-fraca);
  padding: var(--e4) var(--e3) var(--e2);
}

.nav-item {
  display: flex;
  align-items: center;
  gap: var(--e3);
  width: 100%;
  padding: 9px var(--e3);
  border: 0;
  border-radius: var(--raio-p);
  background: transparent;
  color: var(--tinta-media);
  font: inherit;
  font-weight: 500;
  cursor: pointer;
  text-align: left;
  margin-bottom: 2px;
}

.nav-item:hover { background: var(--fundo); color: var(--tinta); }

.nav-item[aria-current='page'] {
  background: var(--marca-clara);
  color: var(--marca-escura);
  font-weight: 600;
}

.nav-item .ic { width: 18px; text-align: center; flex: none; opacity: 0.9; }

/* Rótulos longos quebram em duas linhas em vez de vazar da barra. */
.nav-item > span:not(.ic):not(.conta) { min-width: 0; line-height: 1.3; }

.nav-item .conta {
  margin-left: auto;
  font-size: 11px;
  font-weight: 600;
  background: var(--linha);
  color: var(--tinta-media);
  border-radius: 20px;
  padding: 1px 7px;
}

.nav-item[aria-current='page'] .conta {
  background: var(--marca);
  color: var(--marca-contraste);
}

/* Marcador de sincronizacao — canto da barra lateral, secao 4 do PRD */
.sinc {
  margin: var(--e3);
  padding: var(--e3);
  border-radius: var(--raio-p);
  background: var(--alerta-fundo);
  border: 1px solid #fde68a;
  font-size: 12px;
  color: var(--alerta);
  cursor: pointer;
  text-align: left;
  width: calc(100% - var(--e5));
  font-family: inherit;
}

.sinc strong { display: block; font-size: 12px; }
.sinc .idade { opacity: 0.85; }
.sinc.quieta { background: var(--fundo); border-color: var(--linha); color: var(--tinta-fraca); }

/* ---------------------------------------------------------- Conteudo */

.corpo { display: flex; flex-direction: column; min-width: 0; }

.topo {
  background: var(--papel);
  border-bottom: 1px solid var(--linha);
  padding: 0 var(--e5);
  min-height: 65px;
  display: flex;
  align-items: center;
  gap: var(--e4);
  position: sticky;
  top: 0;
  z-index: 10;
}

.topo .titulo { flex: 1; min-width: 0; }
.topo .titulo h1 { font-size: 18px; }
.topo .titulo .desc { font-size: 12px; color: var(--tinta-fraca); }

.usuario { display: flex; align-items: center; gap: var(--e3); }

.avatar {
  width: 32px; height: 32px;
  border-radius: 50%;
  background: var(--marca);
  color: var(--marca-contraste);
  display: grid;
  place-items: center;
  font-weight: 600;
  font-size: 12px;
  flex: none;
}

.usuario .quem { line-height: 1.3; text-align: right; }
.usuario .quem b { font-size: 13px; font-weight: 600; display: block; }
.usuario .quem span { font-size: 11px; color: var(--tinta-fraca); }

main { flex: 1; padding: var(--e5); min-width: 0; }

.rodape {
  border-top: 1px solid var(--linha);
  padding: var(--e4) var(--e5);
  font-size: 12px;
  color: var(--tinta-fraca);
  display: flex;
  flex-wrap: wrap;
  gap: var(--e2) var(--e4);
  align-items: center;
  background: var(--papel);
}

.rodape a { color: var(--tinta-media); }

/* ---------------------------------------------------------- Cartoes */

.cartao {
  background: var(--papel);
  border: 1px solid var(--linha);
  border-radius: var(--raio);
  box-shadow: var(--sombra);
}

.cartao-topo {
  padding: var(--e4) var(--e5);
  border-bottom: 1px solid var(--linha);
  display: flex;
  align-items: center;
  gap: var(--e4);
}

.cartao-topo h2 { flex: 1; }
.cartao-corpo { padding: var(--e5); }

/* ---------------------------------------------------------- Botoes */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--e2);
  padding: 8px 14px;
  border-radius: var(--raio-p);
  border: 1px solid var(--linha-forte);
  background: var(--papel);
  color: var(--tinta);
  font: inherit;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
}

.btn:hover { background: var(--fundo); }
.btn:disabled { opacity: 0.5; cursor: not-allowed; }

.btn-principal {
  background: var(--marca);
  border-color: var(--marca);
  color: var(--marca-contraste);
}

.btn-principal:hover { background: var(--marca-escura); border-color: var(--marca-escura); }

.btn-perigo { color: var(--erro); border-color: #fecaca; }
.btn-perigo:hover { background: var(--erro-fundo); }

.btn-largo { width: 100%; padding: 10px 14px; }
.btn-p { padding: 5px 10px; font-size: 12px; }

/* ---------------------------------------------------------- Campos */

.campo { margin-bottom: var(--e4); }

.campo label {
  display: block;
  font-weight: 600;
  font-size: 13px;
  margin-bottom: var(--e2);
}

.campo .ajuda {
  font-size: 12px;
  color: var(--tinta-fraca);
  margin: -2px 0 var(--e2);
}

input[type='text'], input[type='email'], input[type='password'],
input[type='number'], select, textarea {
  width: 100%;
  padding: 9px var(--e3);
  border: 1px solid var(--linha-forte);
  border-radius: var(--raio-p);
  font: inherit;
  color: var(--tinta);
  background: var(--papel);
}

input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: var(--marca);
  box-shadow: 0 0 0 3px var(--marca-clara);
}

textarea { resize: vertical; min-height: 84px; line-height: 1.6; }

::placeholder { color: #b6bbbf; }

.exemplo {
  font-size: 12px;
  color: var(--tinta-fraca);
  margin-top: var(--e2);
  padding-left: var(--e3);
  border-left: 2px solid var(--linha);
  white-space: pre-wrap;
}

.exemplo b { color: var(--tinta-media); font-weight: 600; }

/* ---------------------------------------------------------- Etiquetas */

.etiqueta {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 20px;
  background: var(--linha);
  color: var(--tinta-media);
  white-space: nowrap;
}

.etiqueta.fato      { background: var(--info-fundo);   color: var(--info); }
.etiqueta.conduta   { background: #f5f3ff;             color: #6d28d9; }
.etiqueta.contexto  { background: var(--fundo);        color: var(--tinta-fraca); }
.etiqueta.ok        { background: var(--ok-fundo);     color: var(--ok); }
.etiqueta.alerta    { background: var(--alerta-fundo); color: var(--alerta); }
.etiqueta.erro      { background: var(--erro-fundo);   color: var(--erro); }

/* ---------------------------------------------------------- Tabela */

table { width: 100%; border-collapse: collapse; }

th {
  text-align: left;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--tinta-fraca);
  padding: var(--e2) var(--e3);
  border-bottom: 1px solid var(--linha);
  background: var(--fundo);
}

td {
  padding: var(--e2) var(--e3);
  border-bottom: 1px solid var(--linha);
  vertical-align: middle;
}

tbody tr:hover { background: var(--papel-hover); }

/* Edicao na propria linha — sem modal, secao 6.3 do PRD */
td input, td select {
  border-color: transparent;
  background: transparent;
  padding: 5px var(--e2);
}

td input:hover, td select:hover { border-color: var(--linha-forte); background: var(--papel); }
td input:focus, td select:focus { background: var(--papel); }

.preco-vazio { color: var(--tinta-fraca); font-style: italic; font-size: 12px; }

/* ---------------------------------------------------------- Kanban */

.quadro {
  display: grid;
  grid-template-columns: repeat(6, minmax(210px, 1fr));
  gap: var(--e3);
  overflow-x: auto;
  padding-bottom: var(--e3);
}

.coluna {
  background: var(--papel);
  border: 1px solid var(--linha);
  border-radius: var(--raio);
  display: flex;
  flex-direction: column;
  min-height: 320px;
}

.coluna-topo {
  padding: var(--e3);
  border-bottom: 1px solid var(--linha);
  display: flex;
  align-items: center;
  gap: var(--e2);
}

.coluna-topo .ponto { width: 8px; height: 8px; border-radius: 50%; flex: none; }
.coluna-topo h3 { font-size: 13px; flex: 1; }
.coluna-topo .conta { font-size: 12px; color: var(--tinta-fraca); font-weight: 600; }

.coluna-lista { padding: var(--e2); display: flex; flex-direction: column; gap: var(--e2); flex: 1; }

.card {
  background: var(--papel);
  border: 1px solid var(--linha);
  border-radius: var(--raio-p);
  padding: var(--e3);
  cursor: pointer;
}

.card:hover { border-color: var(--linha-forte); box-shadow: var(--sombra); }
.card .nome { font-weight: 600; font-size: 13px; }
.card .fone { font-size: 12px; color: var(--tinta-media); }
.card .pe { display: flex; align-items: center; gap: var(--e2); margin-top: var(--e2); flex-wrap: wrap; }
.card .parado { font-size: 11px; color: var(--tinta-fraca); }

.ponto-azul    { background: #3b82f6; }
.ponto-violeta { background: #8b5cf6; }
.ponto-ambar   { background: #f59e0b; }
.ponto-ciano   { background: #06b6d4; }
.ponto-verde   { background: #10b981; }
.ponto-cinza   { background: #9ca3af; }

/* ---------------------------------------------------------- Anamnese */

.anamnese { display: grid; grid-template-columns: 260px 1fr; gap: var(--e5); align-items: start; }

.secoes {
  background: var(--papel);
  border: 1px solid var(--linha);
  border-radius: var(--raio);
  padding: var(--e2);
  position: sticky;
  top: 89px;
  max-height: calc(100vh - 140px);
  overflow-y: auto;
}

.secao-item {
  display: flex;
  align-items: center;
  gap: var(--e2);
  width: 100%;
  padding: 8px var(--e2);
  border: 0;
  background: transparent;
  border-radius: var(--raio-p);
  font: inherit;
  font-size: 13px;
  color: var(--tinta-media);
  cursor: pointer;
  text-align: left;
}

.secao-item:hover { background: var(--fundo); }
.secao-item[aria-current='true'] { background: var(--marca-clara); color: var(--marca-escura); font-weight: 600; }

.secao-item .num {
  width: 20px; height: 20px;
  border-radius: 50%;
  background: var(--linha);
  color: var(--tinta-media);
  font-size: 11px;
  font-weight: 600;
  display: grid;
  place-items: center;
  flex: none;
}

.secao-item.completa .num { background: var(--ok); color: #fff; }
.secao-item .rot { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.barra { height: 6px; background: var(--linha); border-radius: 20px; overflow: hidden; }
.barra i { display: block; height: 100%; background: var(--marca); border-radius: 20px; transition: width 0.3s; }

/* ------------------------------------------------------------- Abas */

.abas { display: flex; gap: var(--e2); flex-wrap: wrap; }

.aba {
  display: inline-flex;
  align-items: center;
  gap: var(--e2);
  padding: 7px 14px;
  border-radius: var(--raio-p);
  border: 1px solid var(--linha-forte);
  background: var(--papel);
  color: var(--tinta-media);
  font: inherit;
  font-weight: 600;
  font-size: 13px;
  cursor: pointer;
}

.aba:hover { background: var(--fundo); color: var(--tinta); }

.conta-aba {
  font-size: 11px;
  font-weight: 700;
  padding: 1px 7px;
  border-radius: 20px;
  background: var(--linha);
  color: var(--tinta-media);
}

/* Ativa e cheia; inativa fica so com a cor na contagem, para a tela nao
   ficar com dois botoes gritando ao mesmo tempo. */
.aba.ativa {
  background: var(--marca);
  border-color: var(--marca);
  color: var(--marca-contraste);
}

.aba.ativa .conta-aba { background: rgba(255, 255, 255, 0.25); color: var(--marca-contraste); }

.aba-vermelha.ativa {
  background: var(--erro);
  border-color: var(--erro);
  color: #fff;
}

.aba-vermelha:not(.ativa) .conta-aba { background: var(--erro-fundo); color: var(--erro); }
.aba-vermelha:not(.ativa):hover { border-color: #fecaca; }

/* ---------------------------------------------------------- Janela */

.fundo-janela {
  position: fixed;
  inset: 0;
  background: rgba(10, 14, 22, 0.55);
  display: grid;
  place-items: center;
  padding: var(--e4);
  z-index: 300;
}

.janela {
  background: var(--papel);
  border-radius: 14px;
  box-shadow: 0 24px 60px -12px rgba(0, 0, 0, 0.4);
  width: 100%;
  max-width: 680px;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
}

.janela-topo {
  padding: var(--e4) var(--e5);
  border-bottom: 1px solid var(--linha);
  display: flex;
  align-items: center;
  gap: var(--e3);
}

.janela-topo h2 { flex: 1; font-size: 16px; }

.janela-corpo { padding: var(--e5); overflow-y: auto; flex: 1; }

.janela-pe {
  padding: var(--e4) var(--e5);
  border-top: 1px solid var(--linha);
  display: flex;
  gap: var(--e2);
  align-items: center;
}

.fechar {
  border: 0;
  background: transparent;
  font-size: 20px;
  line-height: 1;
  color: var(--tinta-fraca);
  cursor: pointer;
  padding: var(--e1) var(--e2);
  border-radius: var(--raio-p);
}

.fechar:hover { background: var(--fundo); color: var(--tinta); }

/* ------------------------------------------------- Tabela compacta */

.barra-tabela {
  padding: var(--e3) var(--e5);
  border-bottom: 1px solid var(--linha);
  display: flex;
  align-items: center;
  gap: var(--e3);
}

.barra-tabela input[type='text'] { max-width: 300px; }
.barra-tabela.filtros { flex-wrap: wrap; gap: var(--e2); }
.barra-tabela.filtros select { max-width: 200px; width: auto; }

.resumo {
  display: flex;
  flex-wrap: wrap;
  gap: var(--e2) var(--e5);
  padding: var(--e3) var(--e5);
  border-bottom: 1px solid var(--linha);
  background: var(--fundo);
  font-size: 12px;
  color: var(--tinta-media);
}

.resumo b { color: var(--tinta); font-weight: 600; }
.btn-apagar:hover { background: var(--erro-fundo) !important; color: var(--erro) !important; }

.tabela-rolagem { max-height: 440px; overflow-y: auto; }
.tabela-rolagem thead th { position: sticky; top: 0; z-index: 1; }

td.recorta {
  max-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.btn-lapis {
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
  padding: 4px 7px;
  border-radius: var(--raio-p);
  font-size: 13px;
  color: var(--tinta-fraca);
}

tr:hover .btn-lapis { border-color: var(--linha-forte); color: var(--tinta); background: var(--papel); }
.btn-lapis:hover { background: var(--marca-clara) !important; color: var(--marca-escura); }

.sem-filtro { padding: var(--e5); text-align: center; color: var(--tinta-fraca); font-size: 13px; }

/* ---------------------------------------------------------- Vazio */

.vazio {
  text-align: center;
  padding: var(--e7) var(--e5);
  color: var(--tinta-fraca);
}

.vazio .icone { font-size: 30px; opacity: 0.4; margin-bottom: var(--e3); }
.vazio h3 { color: var(--tinta-media); margin-bottom: var(--e2); }
.vazio p { max-width: 380px; margin: 0 auto var(--e4); font-size: 13px; }

.coluna .vazio { padding: var(--e5) var(--e3); font-size: 12px; }

/* ---------------------------------------------------------- Avisos */

.aviso {
  padding: var(--e3) var(--e4);
  border-radius: var(--raio-p);
  margin-bottom: var(--e4);
  font-size: 13px;
  border: 1px solid;
}

.aviso.erro   { background: var(--erro-fundo);   border-color: #fecaca; color: #991b1b; }
.aviso.ok     { background: var(--ok-fundo);     border-color: #bbf7d0; color: #166534; }
.aviso.alerta { background: var(--alerta-fundo); border-color: #fde68a; color: #92400e; }
.aviso.info   { background: var(--info-fundo);   border-color: #bfdbfe; color: #1e40af; }

/* Faixa vermelha enquanto a credencial padrao estiver viva */
.faixa-risco {
  background: #991b1b;
  color: #fff;
  padding: var(--e2) var(--e5);
  font-size: 12px;
  font-weight: 500;
  text-align: center;
}

.recado {
  position: fixed;
  bottom: var(--e5);
  right: var(--e5);
  background: var(--tinta);
  color: #fff;
  padding: var(--e3) var(--e4);
  border-radius: var(--raio-p);
  box-shadow: var(--sombra-alta);
  font-size: 13px;
  z-index: 100;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.2s, transform 0.2s;
  pointer-events: none;
}

.recado.aparece { opacity: 1; transform: translateY(0); }
.recado.erro { background: var(--erro); }

/* ---------------------------------------------------------- Diversos */

.linha-flex { display: flex; align-items: center; gap: var(--e3); flex-wrap: wrap; }
.espaco { flex: 1; }
.duas { display: grid; grid-template-columns: 1fr 1fr; gap: var(--e4); }
.pilha { display: flex; flex-direction: column; gap: var(--e4); }
.discreto { color: var(--tinta-fraca); font-size: 12px; }
.mono { font-family: ui-monospace, 'SF Mono', Menlo, Consolas, monospace; font-size: 12px; }

.previa {
  background: #1a1d1f;
  color: #d9dde1;
  padding: var(--e4);
  border-radius: var(--raio-p);
  font-family: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
  font-size: 12px;
  line-height: 1.7;
  max-height: 440px;
  overflow: auto;
  white-space: pre-wrap;
}

.oculto { display: none !important; }

/* ---------------------------------------------------------- Cookies */

.cookies {
  position: fixed;
  bottom: var(--e4);
  left: var(--e4);
  right: var(--e4);
  max-width: 540px;
  margin: 0 auto;
  background: var(--papel);
  border: 1px solid var(--linha-forte);
  border-radius: var(--raio);
  box-shadow: var(--sombra-alta);
  padding: var(--e4);
  z-index: 200;
}

.cookies h3 { margin-bottom: var(--e2); }
.cookies p { font-size: 13px; color: var(--tinta-media); }
.cookies .acoes { display: flex; gap: var(--e2); margin-top: var(--e4); }
.cookies .acoes .btn { flex: 1; }

/* ---------------------------------------------------------- Estreito */

@media (max-width: 960px) {
  .app { grid-template-columns: 1fr; }
  .lateral { position: static; height: auto; flex-direction: row; overflow-x: auto; border-right: 0; border-bottom: 1px solid var(--linha); }
  .lateral-topo { border-bottom: 0; border-right: 1px solid var(--linha); }
  nav { display: flex; gap: var(--e1); padding: var(--e2); }
  .nav-grupo, .sinc { display: none; }
  .nav-item { white-space: nowrap; }
  .anamnese { grid-template-columns: 1fr; }
  .secoes { position: static; max-height: none; }
  .duas { grid-template-columns: 1fr; }
  main { padding: var(--e4); }
  .topo { padding: 0 var(--e4); }
}
