:root{--c4lab-primary-50:#eff6ff;--c4lab-primary-100:#dbeafe;--c4lab-primary-200:#bfdbfe;--c4lab-primary-300:#93c5fd;--c4lab-primary-400:#60a5fa;--c4lab-primary-500:#3b82f6;--c4lab-primary-600:#2563eb;--c4lab-primary-700:#1d4ed8;--c4lab-primary-800:#1e40af;--c4lab-primary-900:#1e3a8a;--c4lab-secondary-50:#fefce8;--c4lab-secondary-100:#fef9c3;--c4lab-secondary-200:#fef08a;--c4lab-secondary-300:#fde047;--c4lab-secondary-400:#facc15;--c4lab-secondary-500:#eab308;--c4lab-secondary-600:#ca8a04;--c4lab-secondary-700:#a16207;--c4lab-secondary-800:#854d0e;--c4lab-secondary-900:#713f12;--c4lab-success:#22c55e;--c4lab-error:#ef4444;--c4lab-warning:#f59e0b;--c4lab-info:#3b82f6;--c4lab-transition-fast:.1s cubic-bezier(.4,0,.2,1);--c4lab-transition-normal:.15s cubic-bezier(.4,0,.2,1);--c4lab-transition-slow:.3s cubic-bezier(.4,0,.2,1);--c4lab-shadow-hover:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--c4lab-shadow-active:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}.c4lab-interactive{transition-property:all;transition-duration:.15s;transition-timing-function:ease-out}.c4lab-interactive:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-opacity:1;--tw-ring-color:rgba(59,130,246,var(--tw-ring-opacity));box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent);outline:none}.c4lab-interactive:disabled{opacity:.5;pointer-events:none;cursor:not-allowed}.c4lab-button-hover:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow);transform:translateY(-.125rem)}.c4lab-button-hover:active{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow);transform:translateY(0)}.c4lab-card-hover:hover{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);box-shadow:var(--tw-ring-offset-shadow,0 0 transparent),var(--tw-ring-shadow,0 0 transparent),var(--tw-shadow);transform:translateY(-.25rem)}.c4lab-card-hover{transition-property:all;transition-duration:.2s;transition-timing-function:ease-out}.c4lab-input-focus:focus{--tw-ring-opacity:1;--tw-ring-color:rgba(59,130,246,var(--tw-ring-opacity));--tw-ring-offset-shadow:var(--tw-ring-inset)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 transparent);border-color:rgba(59,130,246,var(--tw-border-opacity));--tw-border-opacity:1}@layer utilities{.animate-press{animation:.1s ease-out press}.animate-bounce-soft{animation:.2s ease-out bounce-soft}.animate-scale-in{animation:.15s ease-out scale-in}.animate-fade-in{animation:.2s ease-out fade-in}.animate-slide-up{animation:.2s ease-out slide-up}}@keyframes press{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}@keyframes bounce-soft{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hover-lift{transition-property:transform;transition-duration:.2s;transition-timing-function:ease-out}.hover-lift:hover{transform:translateY(-2px)}.hover-scale{transition-property:transform;transition-duration:.2s;transition-timing-function:ease-out}.hover-scale:hover{transform:scale(1.02)}.hover-glow:hover{box-shadow:0 0 20px var(--c4lab-primary-400)}
