:root{
  font-family:system-ui,-apple-system,Arial,sans-serif;
  color:#252C32;
  background:#FAF8F5;
  --orange:#D96A1D;
  --line:#EDE8E2
}
*{box-sizing:border-box}
body{margin:0}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
[hidden]{display:none!important}
.shell{
  display:grid;
  grid-template-columns:242px 1fr;
  min-height:100vh
}
aside{
  background:white;
  border-right:1px solid var(--line);
  padding:28px 15px;
  position:sticky;
  top:0;
  height:100vh;
  display:flex;
  flex-direction:column
}
.logo{display:flex;align-items:center;gap:12px;padding:0 8px}
.logo>span{
  background:var(--orange);
  border-radius:13px;
  padding:14px 6px;
  color:white;
  letter-spacing:2px;
  font-size:9px
}
.logo b{font-size:19px}
.logo small{
  display:block;
  font-size:11px;
  color:#88929A;
  margin-top:4px
}
.navtitle{
  font-size:10px;
  letter-spacing:1px;
  color:#A3A8AD;
  margin:42px 10px 13px;
  font-weight:800
}
#side{display:grid;gap:4px}
.nav{
  padding:12px 13px;
  border-radius:10px;
  font-size:14px;
  color:#606D76;
  display:flex;
  gap:12px;
  align-items:center;
  font-weight:600
}
.nav i{
  font-style:normal;
  font-size:18px;
  width:23px;
  text-align:center
}
.nav.active{background:#FFF1E5;color:#A34C12}
.nav:hover{background:#FFF8F0}
.foot{
  margin-top:auto;
  padding:17px 12px;
  border-top:1px solid var(--line);
  font-size:12px;
  color:#9C672C
}
.foot small{display:block;color:#89939B;line-height:2}
header{
  background:white;
  border-bottom:1px solid var(--line);
  padding:20px 4%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px
}
header small{
  font-size:10px;
  letter-spacing:2px;
  font-weight:800;
  color:var(--orange)
}
header h1{margin:4px 0 0;font-size:23px}
.preview{
  background:#FFF2E5;
  color:#9B4B16;
  border-radius:40px;
  padding:10px 13px;
  font-size:10px;
  font-weight:800
}
main{
  padding:30px 4% 70px;
  max-width:1370px;
  margin:auto
}
.hero{
  background:linear-gradient(110deg,#FFF0DF,#FFFBF7);
  padding:29px;
  border-radius:18px;
  border:1px solid #F4E1CC
}
.hero h2{font-size:29px;letter-spacing:-1px;margin:6px 0 10px}
.hero p,.desc{
  color:#6E7880;
  font-size:13px;
  line-height:1.65
}
.title{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin:24px 0 16px
}
.title h2{font-size:21px;margin:0}
.pill{
  background:#FFE9D0;
  color:#9B4B16;
  font-size:10px;
  border-radius:30px;
  padding:7px 10px;
  font-weight:800
}
.cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px
}
.card{
  background:white;
  border:1px solid var(--line);
  border-radius:15px;
  padding:20px;
  box-shadow:0 7px 20px #211E1608
}
.module{min-height:176px}
.symbol{
  font-size:21px;
  color:var(--orange);
  background:#FFF4E8;
  width:41px;
  height:41px;
  display:grid;
  place-items:center;
  border-radius:12px
}
.card h3{font-size:15px;margin:15px 0 8px}
.card p{
  color:#75818A;
  font-size:12px;
  line-height:1.55
}
.card a{
  color:#A34C12;
  font-size:12px;
  font-weight:800
}
.banner{
  background:#FFF9F1;
  border:1px solid #F3DFCA;
  border-radius:12px;
  color:#8B592D;
  font-size:12px;
  line-height:1.6;
  padding:15px;
  margin:18px 0
}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.stats .card b{
  display:block;
  color:#AAB2B7;
  font-size:28px;
  margin-top:12px
}
.empty{
  background:white;
  border:1px dashed #DCD8D2;
  border-radius:15px;
  text-align:center;
  padding:42px 20px;
  margin-top:15px
}
.empty h3{margin:0 0 7px;font-size:17px}
.empty p{
  color:#7C878F;
  font-size:13px;
  max-width:450px;
  margin:auto;
  line-height:1.6
}
.form{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px
}
.field{
  font-size:12px;
  color:#53616C;
  font-weight:700;
  display:grid;
  gap:7px
}
.field.wide{grid-column:1/-1}
input,select,textarea{
  width:100%;
  min-width:0;
  border-radius:9px;
  border:1px solid #E1DEDA;
  background:white;
  padding:11px;
  color:#313840;
  font-size:13px
}
textarea{min-height:114px;resize:vertical}
.button{
  border:0;
  background:var(--orange);
  color:white;
  padding:11px 16px;
  border-radius:10px;
  font-size:13px;
  font-weight:700;
  margin-top:15px
}
.previewtext{
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  background:#FAF8F5;
  border:1px solid var(--line);
  border-radius:10px;
  padding:16px;
  margin-top:14px;
  min-height:70px;
  font-size:13px;
  color:#56636D
}
.entry{
  display:flex;
  justify-content:space-between;
  gap:13px;
  padding:16px;
  background:white;
  border:1px solid var(--line);
  border-radius:12px;
  margin-bottom:10px;
  font-size:13px
}
.entry span{
  background:#F1F1F1;
  border-radius:7px;
  padding:7px;
  font-size:10px;
  color:#79848C
}
#bottom,#more{display:none}
#notice{
  position:fixed;
  bottom:18px;
  right:18px;
  background:#2B343C;
  color:white;
  padding:14px;
  border-radius:12px;
  font-size:13px;
  z-index:9
}
@media(max-width:800px){
  .shell{display:block}
  aside{display:none}
  header{padding:18px}
  header h1{font-size:20px}
  .preview{font-size:9px;padding:8px}
  main{padding:20px 15px 110px}
  .hero{padding:22px}
  .hero h2{font-size:23px}
  .cards{grid-template-columns:repeat(2,1fr);gap:10px}
  .card{padding:15px}
  .form{grid-template-columns:1fr}
  .stats{gap:8px}
  .stats .card b{font-size:20px}
  #bottom{
    display:flex;
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    height:calc(69px + env(safe-area-inset-bottom));
    padding:6px 5px calc(5px + env(safe-area-inset-bottom));
    border-top:1px solid var(--line);
    background:white;
    z-index:5;
    justify-content:space-around
  }
  #bottom a,#bottom button{
    border:0;
    background:white;
    min-width:0;
    flex:1;
    display:grid;
    place-content:center;
    justify-items:center;
    gap:3px;
    font-size:10px;
    color:#79848D;
    border-radius:9px
  }
  #bottom i{font-size:20px;font-style:normal}
  #bottom .active{color:#A34C12;background:#FFF2E5}
  #more:not([hidden]){
    display:grid;
    position:fixed;
    bottom:calc(74px + env(safe-area-inset-bottom));
    left:10px;
    right:10px;
    background:white;
    border-radius:13px;
    padding:12px;
    grid-template-columns:1fr 1fr;
    border:1px solid var(--line);
    box-shadow:0 0 30px #0002;
    z-index:6
  }
  #more a{
    padding:14px;
    border-radius:9px;
    background:#FAF8F5;
    font-size:12px
  }
  #notice{bottom:85px;left:10px;right:10px}
}

/* INOVA-PWA-AJUSTE-V1 */

@media(max-width:800px){

 html{
  scroll-padding-bottom:100px;
 }

 body{
  overflow-x:hidden;
 }

 .shell,.body,main{
  min-width:0;
 }

 main{
  padding:18px 14px calc(110px + env(safe-area-inset-bottom));
 }

 .hero{
  padding:22px 19px;
  border-radius:15px;
 }

 .hero h2{
  font-size:23px;
  line-height:1.25;
 }

 .cards{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
 }

 .module{
  min-height:155px;
  display:flex;
  flex-direction:column;
 }

 .module h3{
  margin:12px 0 5px;
 }

 .module p{
  margin:4px 0 10px;
 }

 .module a{
  margin-top:auto;
  padding-top:8px;
 }

 .cards>.module:last-child:nth-child(odd){
  grid-column:1/-1;
  min-height:130px;
 }

 .card{
  border-radius:14px;
  padding:17px;
 }

 .title{
  align-items:center;
 }

 .title h2{
  font-size:19px;
 }

 #bottom{
  height:calc(72px + env(safe-area-inset-bottom));
  background:#fff;
  box-shadow:0 -4px 18px #0000000b;
  z-index:50;
 }

 #bottom a,#bottom button{
  min-height:52px;
  padding:5px 2px;
  touch-action:manipulation;
 }

 #bottom i{
  font-size:21px;
 }

 #more:not([hidden]){
  bottom:calc(77px + env(safe-area-inset-bottom));
  z-index:51;
 }

 .button{
  min-height:44px;
 }

 .entry{
  align-items:center;
 }
}

@media(max-width:360px){
 .cards{
  grid-template-columns:1fr;
 }
 .module{
  min-height:125px;
 }
 .stats{
  grid-template-columns:1fr;
 }
}

