:root{
  --rw28-glass:rgba(255,255,255,.76);
  --rw28-glass-strong:rgba(255,255,255,.9);
  --rw28-glass-soft:rgba(248,248,246,.66);
  --rw28-blur:20px;
  --rw28-border:rgba(196,198,193,.62);
  --rw28-border-soft:rgba(214,216,211,.74);
  --rw28-shadow:0 18px 48px rgba(18,20,19,.07);
  --rw28-shadow-hover:0 24px 58px rgba(18,20,19,.105);
  --rw28-radius:22px;
  --rw28-radius-sm:14px;
  --rw28-text:#151716;
  --rw28-muted:#737873;
  --rw28-dark:#111314;
}
html:not(.dark) body{
  background:#eef1ee!important;
}
.rw28-main{
  min-height:calc(100dvh - 64px);
  color:var(--rw28-text);
  background:
    radial-gradient(circle at 8% 0%,rgba(255,255,255,.98) 0,rgba(255,255,255,.66) 25%,transparent 48%),
    radial-gradient(circle at 93% 9%,rgba(223,232,226,.7) 0,rgba(235,239,235,.3) 26%,transparent 48%),
    linear-gradient(145deg,#f1f3f0 0%,#edf0ed 52%,#f4f5f3 100%)!important;
}
.rw28-page-heading{
  padding:3px 2px 2px;
}
.rw28-page-heading h1{
  font-size:30px!important;
  line-height:1.12!important;
  letter-spacing:-.04em!important;
  font-weight:720!important;
}
.rw28-page-heading p{
  margin-top:5px!important;
  font-size:13px!important;
  line-height:1.45!important;
  color:var(--rw28-muted)!important;
}
.rw28-surface,
.rw28-stat-card,
.rw28-sync-card{
  border-radius:var(--rw28-radius)!important;
  background:var(--rw28-glass)!important;
  border:1px solid var(--rw28-border)!important;
  box-shadow:var(--rw28-shadow),inset 0 1px 0 rgba(255,255,255,.78)!important;
  -webkit-backdrop-filter:blur(var(--rw28-blur)) saturate(118%);
  backdrop-filter:blur(var(--rw28-blur)) saturate(118%);
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.rw28-surface:hover,
.rw28-stat-card:hover{
  background:var(--rw28-glass-strong)!important;
  border-color:rgba(170,174,168,.68)!important;
  box-shadow:var(--rw28-shadow-hover),inset 0 1px 0 rgba(255,255,255,.84)!important;
}
.rw28-stat-grid{
  gap:14px!important;
}
.rw28-stat-card{
  min-height:132px;
}
.rw28-stat-card [class*="text-3xl"],
.rw28-stat-card [class*="text-4xl"]{
  letter-spacing:-.045em;
}
.rw28-dark-surface{
  border-radius:var(--rw28-radius)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:#171a1b!important;
  color:#fff!important;
  box-shadow:0 20px 48px rgba(17,19,20,.14),inset 0 1px 0 rgba(255,255,255,.035)!important;
  overflow:hidden;
}
.rw28-dark-surface.rw28-stat-card,
.rw28-dark-surface.rw28-stat-card:hover{
  background:#171a1b!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:0 20px 48px rgba(17,19,20,.14),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.rw28-toolbar{
  gap:8px!important;
}
.rw28-toolbar:not(.rw28-surface){
  padding:5px 0;
}
.rw28-toolbar button{
  min-height:36px;
  border-radius:12px!important;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.rw28-toolbar button:hover{
  transform:translateY(-1px);
}
.rw28-list-row{
  border-radius:16px!important;
  border:1px solid var(--rw28-border-soft)!important;
  background:rgba(255,255,255,.7)!important;
  box-shadow:0 8px 24px rgba(18,20,19,.035),inset 0 1px 0 rgba(255,255,255,.72)!important;
  -webkit-backdrop-filter:blur(14px) saturate(112%);
  backdrop-filter:blur(14px) saturate(112%);
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.rw28-list-row:hover{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(174,178,171,.78)!important;
  box-shadow:0 12px 30px rgba(18,20,19,.065)!important;
  transform:translateY(-1px);
}
.rw28-theme-row{
  min-height:76px;
  padding-left:18px!important;
  padding-right:18px!important;
}
.rw28-empty-state{
  min-height:150px!important;
  justify-content:center;
}
.rw28-sync-card{
  background:rgba(255,255,255,.8)!important;
}
.rw28-topbar{
  background:rgba(255,255,255,.72)!important;
  border-bottom:1px solid rgba(25,29,26,.08)!important;
  -webkit-backdrop-filter:blur(22px) saturate(122%)!important;
  backdrop-filter:blur(22px) saturate(122%)!important;
  box-shadow:0 10px 30px rgba(18,20,19,.045);
}
.rw28-sidebar{
  background:
    radial-gradient(circle at 15% 0%,rgba(255,255,255,.045),transparent 34%),
    linear-gradient(180deg,#111314 0%,#101212 58%,#0f1111 100%)!important;
  border-right:1px solid rgba(255,255,255,.06);
  box-shadow:10px 0 36px rgba(8,10,9,.10);
}
.rw28-nav-item{
  min-height:42px;
  border-radius:13px!important;
  border:1px solid transparent;
  transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease!important;
}
.rw28-nav-item:hover{
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(255,255,255,.055)!important;
  transform:translateX(1px);
}
.rw28-nav-active{
  background:rgba(255,255,255,.115)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.085)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 10px 26px rgba(0,0,0,.12);
}
.rw28-search{
  border-color:rgba(255,255,255,.055)!important;
  background:rgba(17,19,20,.96)!important;
  box-shadow:0 10px 26px rgba(17,19,20,.10),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.rw28-input{
  min-height:38px;
  border-radius:12px!important;
  background:rgba(255,255,255,.72)!important;
  border-color:rgba(193,197,191,.72)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.66)!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.rw28-input:focus{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(96,101,96,.62)!important;
  box-shadow:0 0 0 3px rgba(17,19,20,.055)!important;
}
.rw28-control{
  min-height:36px;
  border-radius:12px!important;
}
.rw28-main h2{
  letter-spacing:-.025em;
}
.rw28-main h3{
  letter-spacing:-.015em;
}
.rw28-main [class*="text-muted-foreground"]{
  color:#737873;
}
.rw28-route-temas .rw28-theme-row{
  background:rgba(255,255,255,.68)!important;
}
.rw28-route-flashcards .rw28-list-row{
  min-height:154px;
  padding:22px!important;
}
.rw28-route-simulados .rw28-dark-surface{
  border-radius:20px!important;
}
.rw28-route-mais .rw28-sync-card{
  border-radius:22px!important;
}
html.dark{
  --rw28-glass:rgba(28,32,33,.76);
  --rw28-glass-strong:rgba(35,39,40,.9);
  --rw28-glass-soft:rgba(31,35,36,.68);
  --rw28-border:rgba(68,74,73,.72);
  --rw28-border-soft:rgba(61,67,66,.82);
  --rw28-shadow:0 18px 48px rgba(0,0,0,.22);
  --rw28-shadow-hover:0 24px 58px rgba(0,0,0,.3);
  --rw28-text:#f0f2ef;
  --rw28-muted:#a7ada8;
}
html.dark .rw28-main{
  background:
    radial-gradient(circle at 7% 0%,rgba(255,255,255,.028),transparent 35%),
    radial-gradient(circle at 92% 10%,rgba(82,96,87,.08),transparent 38%),
    #171a1b!important;
}
html.dark .rw28-topbar{
  background:rgba(23,26,27,.76)!important;
  border-bottom-color:rgba(255,255,255,.06)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.18);
}
html.dark .rw28-surface,
html.dark .rw28-stat-card,
html.dark .rw28-sync-card{
  color:#eef0ed!important;
  box-shadow:var(--rw28-shadow),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html.dark .rw28-list-row{
  color:#eef0ed!important;
  background:rgba(31,35,36,.72)!important;
  box-shadow:0 9px 26px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html.dark .rw28-list-row:hover{
  background:rgba(40,44,45,.92)!important;
  border-color:rgba(93,99,97,.82)!important;
}
html.dark .rw28-input{
  color:#eef0ed!important;
  background:rgba(27,31,32,.76)!important;
  border-color:rgba(78,84,82,.8)!important;
}
html.dark .rw28-main [class*="text-muted-foreground"]{
  color:#a4aaa5;
}
@media(min-width:900px){
  .rw28-main{
    padding-left:30px!important;
    padding-right:30px!important;
  }
}
@media(max-width:899px){
  .rw28-main{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .rw28-page-heading h1{font-size:26px!important}
  .rw28-stat-grid{gap:10px!important}
  .rw28-surface,.rw28-stat-card{border-radius:18px!important}
}
@media(max-width:760px){
  :root{--rw28-radius:18px;--rw28-blur:16px}
  .rw28-page-heading{padding-top:2px}
  .rw28-page-heading h1{font-size:24px!important}
  .rw28-page-heading p{font-size:12px!important}
  .rw28-toolbar{
    overflow-x:auto;
    flex-wrap:nowrap!important;
    padding-bottom:4px;
    scrollbar-width:none;
  }
  .rw28-toolbar::-webkit-scrollbar{display:none}
  .rw28-toolbar button{white-space:nowrap}
  .rw28-theme-row{padding-left:14px!important;padding-right:14px!important}
}
