@tailwind base;@tailwind components;@tailwind utilities;[x-cloak]{display:none!important}@layer base{html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:DM Sans,system-ui,-apple-system,sans-serif;@apply text-slate-800 bg-pjuris-light;}h1,h2,h3,.font-serif{letter-spacing:-.02em;font-family:"Source Serif 4",Georgia,Cambria,Times New Roman,serif}}@layer components{.skeleton{@apply relative overflow-hidden bg-gray-200 dark:bg-slate-700 rounded-lg;}.skeleton{background-image:linear-gradient(90deg,#0000,#ffffff59,#0000);background-size:200% 100%;animation:1.5s linear infinite shimmer}.card-surface{@apply bg-white dark:bg-slate-800/90 border border-gray-100 dark:border-slate-700 shadow-sm rounded-2xl transition-all duration-200;}.card-surface:hover{@apply shadow-md;}.card-lift{@apply transition-all duration-300 ease-out;}.card-lift:hover{transform:translateY(-3px);box-shadow:0 12px 28px #1e3a5f1f}.btn-primary{@apply inline-flex items-center justify-center gap-2 bg-pjuris-navy text-white font-semibold px-5 py-2.5 rounded-xl shadow-sm shadow-pjuris-navy/20 hover:bg-pjuris-navy-dark hover:shadow-md hover:-translate-y-0.5 active:translate-y-0 transition-all duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-pjuris-gold focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none;}.btn-gold{@apply inline-flex items-center justify-center gap-2 bg-pjuris-gold text-pjuris-navy font-bold px-5 py-2.5 rounded-xl shadow-sm shadow-pjuris-gold/30 hover:bg-pjuris-gold-light hover:shadow-md hover:-translate-y-0.5 active:translate-y-0 transition-all duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-pjuris-navy focus-visible:ring-offset-2;}.btn-ghost{@apply inline-flex items-center justify-center gap-2 border border-gray-200 dark:border-slate-600 bg-white/80 dark:bg-slate-800 text-gray-700 dark:text-slate-200 font-semibold px-5 py-2.5 rounded-xl hover:bg-gray-50 dark:hover:bg-slate-700 transition-all duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-pjuris-gold focus-visible:ring-offset-2;}.btn-whatsapp{@apply inline-flex items-center justify-center gap-2 bg-[#25d366] text-white font-bold py-3 px-6 rounded-xl shadow-lg shadow-green-500/25 transition transform hover:-translate-y-0.5 hover:shadow-xl hover:bg-[#20bd5a] focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-[#25d366];}.input-field{@apply w-full px-4 py-3 bg-white dark:bg-slate-800 border border-gray-200 dark:border-slate-600 rounded-xl text-sm text-gray-800 dark:text-slate-100 placeholder:text-gray-400 dark:placeholder:text-slate-500 focus:ring-2 focus:ring-pjuris-navy/30 focus:border-pjuris-navy outline-none transition duration-200;}.badge{@apply inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-semibold tracking-wide;}.badge-pending{@apply badge bg-amber-100 text-amber-800 dark:bg-amber-900/40 dark:text-amber-200;}.badge-info{@apply badge bg-blue-100 text-blue-800 dark:bg-blue-900/40 dark:text-blue-200;}.badge-success{@apply badge bg-emerald-100 text-emerald-800 dark:bg-emerald-900/40 dark:text-emerald-200;}.badge-danger{@apply badge bg-red-100 text-red-800 dark:bg-red-900/40 dark:text-red-200;}.badge-muted{@apply badge bg-gray-100 text-gray-700 dark:bg-slate-700 dark:text-slate-200;}.stat-card{@apply card-surface p-5 relative overflow-hidden;}.stat-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#c9a84c1f,#0000 70%);border-radius:9999px;width:120px;height:120px;position:absolute;top:-40%;right:-20%}.nav-link{@apply flex items-center gap-3 px-3 py-2 mx-2 rounded-lg text-sm font-medium text-white/75 hover:text-white hover:bg-white/10 transition-all duration-200;}.nav-link-active{@apply nav-link text-white bg-white/10 shadow-inner border border-white/10;}.nav-link-active{box-shadow:inset 3px 0 #c9a84c}.page-title{@apply text-2xl lg:text-3xl font-bold text-gray-800 dark:text-slate-100 font-serif tracking-tight;}.page-subtitle{@apply text-gray-500 dark:text-slate-400 mt-1 text-sm lg:text-base;}.alert-success{@apply mb-4 p-4 bg-emerald-50 dark:bg-emerald-900/30 border border-emerald-200 dark:border-emerald-800 text-emerald-800 dark:text-emerald-200 rounded-xl flex items-start gap-3 text-sm shadow-sm;}.alert-error{@apply mb-4 p-4 bg-red-50 dark:bg-red-900/30 border border-red-200 dark:border-red-800 text-red-800 dark:text-red-200 rounded-xl flex items-start gap-3 text-sm shadow-sm;}.alert-info{@apply mb-4 p-4 bg-blue-50 dark:bg-blue-900/30 border border-blue-200 dark:border-blue-800 text-blue-800 dark:text-blue-200 rounded-xl flex items-start gap-3 text-sm shadow-sm;}.sidebar-shell{background:linear-gradient(#1e3a5f 0%,#152a45 55%,#0f1f35 100%)}.topbar-blur{@apply bg-white/90 dark:bg-slate-900/90 backdrop-blur-md border-b border-gray-200/80 dark:border-slate-700/80;}}.dark .text-gray-800{color:#e2e8f0}.dark .text-gray-700{color:#cbd5e1}.dark .text-gray-600,.dark .text-gray-500{color:#94a3b8}.dark .text-gray-400{color:#64748b}.dark .bg-white{background-color:#1e293b}.dark .bg-pjuris-light{background-color:#0f172a}.dark .bg-gray-50{background-color:#1e293b}.dark .border-gray-100,.dark .border-gray-200,.dark .divide-gray-50>:not([hidden])~:not([hidden]),.dark .divide-gray-100>:not([hidden])~:not([hidden]){border-color:#334155}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes float-soft{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-fade-in-up{animation:.5s cubic-bezier(.22,1,.36,1) both fade-in-up}.hero-bg-zoom{animation:18s ease-in-out infinite alternate hero-zoom}@keyframes hero-zoom{0%{transform:scale(1.05)}to{transform:scale(1.12)}}.stagger>*{animation:.55s cubic-bezier(.22,1,.36,1) both fade-in-up}.stagger>:first-child{animation-delay:40ms}.stagger>:nth-child(2){animation-delay:80ms}.stagger>:nth-child(3){animation-delay:.12s}.stagger>:nth-child(4){animation-delay:.16s}.stagger>:nth-child(5){animation-delay:.2s}.stagger>:nth-child(6){animation-delay:.24s}@media (prefers-reduced-motion:reduce){.hero-bg-zoom,.animate-fade-in-up,.skeleton,.stagger>*,.card-lift:hover{transition:none!important;animation:none!important;transform:none!important}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #c9a84c}.table-modern{@apply w-full text-sm;}.table-modern thead{@apply bg-gray-50/80 dark:bg-slate-800/80 text-left text-xs uppercase tracking-wider text-gray-400;}.table-modern th{@apply px-3 sm:px-4 py-3 font-semibold;}.table-modern td{@apply px-3 sm:px-4 py-3 sm:py-3.5 align-middle;}.table-modern tbody tr{@apply border-t border-gray-100 dark:border-slate-700/80 hover:bg-slate-50/80 dark:hover:bg-slate-800/50 transition;}html,body{max-width:100vw;overflow-x:hidden}img,video,canvas,svg{max-width:100%;height:auto}@media (pointer:coarse){button,.btn-primary,.btn-gold,.btn-ghost,.btn-whatsapp,a.nav-link,a.nav-link-active{min-height:2.75rem}input,select,textarea{font-size:16px!important}}.table-scroll,.overflow-x-auto{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.table-scroll{position:relative}@media (width<=767px){.table-scroll:after{content:"";pointer-events:none;background:linear-gradient(270deg,#ffffffe6,#0000);width:28px;position:absolute;top:0;bottom:0;right:0}.dark .table-scroll:after{background:linear-gradient(270deg,#1e293be6,#0000)}}@media (width<=640px){.page-title{@apply text-xl leading-snug;}.page-title{word-break:break-word}.page-subtitle{@apply text-sm;}.btn-primary,.btn-gold,.btn-ghost{@apply w-full sm:w-auto justify-center;}.flex.sm\:flex-row>.btn-primary,.flex.sm\:flex-row>.btn-gold{width:100%}}@media (width<=380px){.grid.grid-cols-2{grid-template-columns:1fr}}@media (width<=1023px){.min-h-screen.flex>.flex-1{min-height:100dvh;padding-top:max(1rem, env(safe-area-inset-top));padding-bottom:max(1rem, env(safe-area-inset-bottom))}}@media (width<=640px){.max-w-\[70\%\]{max-width:88%!important}}.container-app{@apply w-full max-w-[1600px] mx-auto px-3 sm:px-4 md:px-6 lg:px-8;}.main-column{flex-direction:column;flex:auto;width:100%;min-width:0;min-height:100dvh;display:flex}.page-main{width:100%;max-width:1600px;padding:.75rem;padding-bottom:max(1.5rem, env(safe-area-inset-bottom));box-sizing:border-box;flex-direction:column;flex:auto;margin-left:auto;margin-right:auto;display:flex}@media (width>=640px){.page-main{padding:1rem;padding-bottom:max(1.5rem, env(safe-area-inset-bottom))}}@media (width>=768px){.page-main{padding:1.5rem;padding-bottom:max(1.75rem, env(safe-area-inset-bottom))}}@media (width>=1024px){.page-main{max-width:min(100%,1680px);padding:1.75rem 2rem 2rem}}@media (width>=1536px){.page-main{max-width:min(100%,1800px);padding-left:2.5rem;padding-right:2.5rem}}.page-content{flex-direction:column;flex:auto;width:100%;min-height:0;display:flex}.page-content>*{flex:auto;width:100%;margin-left:auto;margin-right:auto;max-width:100%!important}.page-content>.max-w-lg,.page-content>.max-w-xl{width:100%;max-width:min(100%,42rem)!important}.page-content .card-surface,.page-content .stat-card,.page-content table,.page-content .table-scroll,.page-content .grid{width:100%}.page-content .card-surface.p-14,.page-content .card-surface.text-center.p-10,.page-content .card-surface.text-center.p-12{flex-direction:column;justify-content:center;align-items:center;min-height:min(48vh,22rem);display:flex}section>.max-w-6xl,nav>.max-w-6xl,footer>.max-w-6xl,header>.max-w-6xl,.relative.z-10.max-w-6xl{width:100%;margin-left:auto;margin-right:auto;max-width:min(100% - 2rem,80rem)!important}body>.min-h-screen.flex{width:100%;min-height:100dvh}@media (width<=640px){.card-surface.p-6{padding:1rem!important}.card-surface.p-5{padding:.875rem!important}}.main-shell,.flex-1.min-w-0{min-width:0}.sticky-filters{@apply sticky top-0 z-20 bg-white/95 dark:bg-slate-900/95 backdrop-blur border-b border-gray-100 dark:border-slate-700;}nav[role=navigation] span,.pagination{flex-wrap:wrap;gap:.25rem}.safe-bottom{padding-bottom:max(1rem, env(safe-area-inset-bottom))}.safe-top{padding-top:max(.75rem, env(safe-area-inset-top))}
