body{-webkit-font-smoothing:antialiased}
  ::-webkit-scrollbar{width:6px;height:6px}
  ::-webkit-scrollbar-thumb{background:#e4e7ec;border-radius:99px}
  .locked-blur{ filter: blur(3px); pointer-events:none; user-select:none; }
  [data-route]{ cursor:pointer; }
  .luna-gradient-bg{
    background: linear-gradient(120deg,#E64B27,#FF5E3A 35%,#FF8A3D 65%,#FFC15E);
    background-size: 220% 220%;
    animation: luna-shine-bg 7s ease infinite;
  }
  .luna-gradient-text{
    background: linear-gradient(90deg,#E64B27,#FF5E3A,#FF8A3D,#FFC15E,#FF5E3A,#E64B27);
    background-size: 300% auto;
    -webkit-background-clip: text; background-clip: text; color: transparent;
    animation: luna-shine-text 6s linear infinite;
  }
  .luna-glow{ background: radial-gradient(circle, rgba(255,138,61,0.35) 0%, rgba(255,94,58,0) 70%); }
  @keyframes luna-shine-bg{ 0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%} }
  @keyframes luna-shine-text{ to{ background-position: 300% center; } }
  .luna-suggestions-scroll{display:flex;gap:.75rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:.25rem;overscroll-behavior-x:contain;}
  .luna-suggestions-scroll::-webkit-scrollbar{display:none;}
  .luna-suggestion-card{flex:0 0 calc(50% - .375rem);scroll-snap-align:start;}
  .luna-suggestions-wrap{position:relative;}
  .luna-carousel-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:5;height:38px;width:38px;border-radius:999px;background:#fff;border:1px solid #e4e7ec;box-shadow:0 4px 14px rgba(16,24,40,.10);display:flex;align-items:center;justify-content:center;color:#667085;transition:.2s ease;}
  .luna-carousel-btn:hover{color:#ff5e3a;border-color:#ffd3c8;}
  .luna-carousel-btn:disabled{opacity:0;pointer-events:none;}
  .luna-carousel-prev{left:-19px}.luna-carousel-next{right:-19px}
  @media (max-width:639px){.luna-suggestion-card{flex-basis:88%;}.luna-carousel-prev{left:-8px}.luna-carousel-next{right:-8px}.luna-carousel-btn{height:34px;width:34px;}}

  /* =========================================================
     MODO OSCURO — conserva la identidad naranja de Comparo y
     remapea las superficies neutrales sin duplicar componentes.
     ========================================================= */
  html.dark-mode{color-scheme:dark;}
  html.dark-mode body{background:#0b1018;color:#e6ebf2;}
  body, body *{transition-property:background-color,border-color,color;transition-duration:140ms;transition-timing-function:ease;}
  canvas, svg, img{transition:none;}

  html.dark-mode .bg-white{background-color:#121925 !important;}
  html.dark-mode [class~="bg-white/95"]{background-color:rgba(18,25,37,.95) !important;}
  html.dark-mode [class~="bg-white/75"]{background-color:rgba(18,25,37,.82) !important;}
  html.dark-mode [class~="bg-white/70"]{background-color:rgba(18,25,37,.78) !important;}
  html.dark-mode .bg-gray-25{background-color:#0d1420 !important;}
  html.dark-mode .bg-gray-50{background-color:#0f1622 !important;}
  html.dark-mode [class~="bg-gray-50/70"]{background-color:rgba(15,22,34,.78) !important;}
  html.dark-mode .bg-gray-100{background-color:#1a2331 !important;}
  html.dark-mode .bg-gray-200{background-color:#263142 !important;}
  html.dark-mode .bg-gray-800{background-color:#111827 !important;}
  html.dark-mode .bg-gray-900{background-color:#080d15 !important;}
  html.dark-mode [class~="bg-[#f6f2ed]"]{background-color:#1b1715 !important;}

  html.dark-mode .text-gray-900{color:#f7f9fc !important;}
  html.dark-mode .text-gray-800{color:#eef2f7 !important;}
  html.dark-mode .text-gray-700{color:#dce3ec !important;}
  html.dark-mode .text-gray-600{color:#c4ceda !important;}
  html.dark-mode .text-gray-500{color:#aeb9c9 !important;}
  html.dark-mode .text-gray-400{color:#8491a5 !important;}
  html.dark-mode .text-gray-300{color:#66758b !important;}

  html.dark-mode .border-gray-50{border-color:#182130 !important;}
  html.dark-mode .border-gray-100{border-color:#202a39 !important;}
  html.dark-mode .border-gray-200{border-color:#2c3748 !important;}
  html.dark-mode .border-gray-300{border-color:#3b485b !important;}
  html.dark-mode .divide-gray-50 > :not([hidden]) ~ :not([hidden]){border-color:#202a39 !important;}
  html.dark-mode [class~="border-[#eadfce]"]{border-color:#493a31 !important;}

  html.dark-mode .bg-brand-25,
  html.dark-mode .bg-brand-50,
  html.dark-mode [class~="bg-brand-25/30"]{background-color:#291713 !important;}
  html.dark-mode .bg-brand-100{background-color:#3a1d16 !important;}
  html.dark-mode .border-brand-100{border-color:#553025 !important;}
  html.dark-mode .border-brand-200{border-color:#6b382a !important;}
  html.dark-mode .text-brand-600{color:#ff866d !important;}
  html.dark-mode .text-brand-700{color:#ff9a83 !important;}

  html.dark-mode .bg-success-50{background-color:#0d281f !important;}
  html.dark-mode .bg-error-50{background-color:#301817 !important;}
  html.dark-mode .bg-warning-50{background-color:#2e2410 !important;}
  html.dark-mode .bg-blue-50{background-color:#14233b !important;}
  html.dark-mode .text-success-700{color:#55d89b !important;}
  html.dark-mode .text-error-700{color:#ff8a80 !important;}
  html.dark-mode .text-warning-700{color:#f6c35b !important;}
  html.dark-mode .text-blue-500{color:#77a9ff !important;}

  html.dark-mode [class~="hover:bg-gray-25"]:hover,
  html.dark-mode [class~="hover:bg-gray-50"]:hover{background-color:#192231 !important;}
  html.dark-mode [class~="hover:bg-gray-100"]:hover{background-color:#222d3d !important;}
  html.dark-mode [class~="hover:text-gray-600"]:hover,
  html.dark-mode [class~="hover:text-gray-800"]:hover,
  html.dark-mode [class~="hover:text-gray-900"]:hover{color:#f7f9fc !important;}
  html.dark-mode [class~="hover:bg-brand-25"]:hover{background-color:#321b15 !important;}

  html.dark-mode input:not([type="checkbox"]):not([type="radio"]),
  html.dark-mode textarea,
  html.dark-mode select{
    background-color:#0d1420 !important;
    border-color:#344154 !important;
    color:#eef2f7 !important;
    color-scheme:dark;
  }
  html.dark-mode input::placeholder, html.dark-mode textarea::placeholder{color:#718097 !important;}
  html.dark-mode option{background:#121925;color:#eef2f7;}
  html.dark-mode input:disabled, html.dark-mode textarea:disabled, html.dark-mode select:disabled{background:#182130 !important;color:#7f8ca0 !important;}

  html.dark-mode .shadow-theme-xs,
  html.dark-mode .shadow-theme-sm{box-shadow:0 1px 2px rgba(0,0,0,.28),0 10px 28px rgba(0,0,0,.12) !important;}
  html.dark-mode .luna-carousel-btn{background:#17202d;border-color:#344154;color:#bac5d3;box-shadow:0 6px 18px rgba(0,0,0,.28);}
  html.dark-mode .luna-carousel-btn:hover{color:#ff866d;border-color:#7d4334;}
  html.dark-mode ::-webkit-scrollbar-thumb{background:#344154;}
  html.dark-mode *{scrollbar-color:#344154 transparent;}

  .theme-toggle-btn{position:relative;display:inline-flex;height:38px;width:38px;align-items:center;justify-content:center;border-radius:10px;border:1px solid #e4e7ec;background:#fff;color:#667085;box-shadow:0 1px 2px rgba(16,24,40,.04);}
  .theme-toggle-btn:hover{background:#f9fafb;color:#344054;}
  html.dark-mode .theme-toggle-btn{background:#121925;border-color:#2c3748;color:#c4ceda;box-shadow:0 1px 2px rgba(0,0,0,.25);}
  html.dark-mode .theme-toggle-btn:hover{background:#1a2331;color:#fff;}
  .auth-theme-toggle{position:fixed;right:22px;top:22px;z-index:50;}
