* { -webkit-tap-highlight-color: transparent; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; overscroll-behavior: none; }
.tab-active { color: #16a34a; border-top: 3px solid #16a34a; }
.tab-inactive { color: #9ca3af; border-top: 3px solid transparent; }
.podio-1 { background: linear-gradient(135deg, #fef9c3, #fef08a); border-left: 4px solid #eab308; }
.podio-2 { background: linear-gradient(135deg, #f1f5f9, #e2e8f0); border-left: 4px solid #94a3b8; }
.podio-3 { background: linear-gradient(135deg, #fff7ed, #fed7aa); border-left: 4px solid #f97316; }
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
input[type=number] { -moz-appearance: textfield; }
.section { display: none; }
.section.active { display: block; }
#login-screen { min-height: 100dvh; display: none; }
#app { padding-bottom: 5rem; min-height: 100dvh; }
.loader { border: 3px solid #e5e7eb; border-top-color: #16a34a; border-radius: 50%; width: 2rem; height: 2rem; animation: spin 0.8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes pulse-border-orange { 0%, 100% { border-color: #fb923c; } 50% { border-color: #ea580c; } }
.animate-pulse-border-orange { animation: pulse-border-orange 2s ease-in-out infinite; }
.toggle-dot { transition: transform 0.2s ease-in-out; }
