*,*:before,*:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:80px}body{overflow-x:hidden;overscroll-behavior-y:contain}button,a,input,select,textarea{transition:all .2s cubic-bezier(.4,0,.2,1)}button,a,[role=button],.cursor-pointer,label[for]{cursor:pointer}button:disabled,.disabled{cursor:not-allowed;opacity:.55}input,textarea{cursor:text}input[type=file]{cursor:pointer}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}::selection{background:#10b98133;color:#065f46}::-moz-selection{background:#10b98133;color:#065f46}.overflow-y-auto,.overflow-y-scroll,.overflow-x-auto{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}img{image-rendering:auto;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;transition:opacity .3s ease}img[src]{opacity:1}img:not([src]),img[src=""]{opacity:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:.9;transform:scale(1.05)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(60px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.7}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes ripple{0%{transform:scale(0);opacity:.5}to{transform:scale(4);opacity:0}}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes subtle-pulse{0%,to{box-shadow:0 0 #10b98166}70%{box-shadow:0 0 0 10px #10b98100}}.animate-fade-in{animation:fadeIn .4s cubic-bezier(.4,0,.2,1) both}.animate-fade-in-up{animation:fadeInUp .5s cubic-bezier(.16,1,.3,1) both}.animate-fade-in-down{animation:fadeInDown .4s cubic-bezier(.16,1,.3,1) both}.animate-slide-up{animation:slideUp .6s cubic-bezier(.16,1,.3,1) both}.animate-slide-right{animation:slideInRight .5s cubic-bezier(.16,1,.3,1) both}.animate-slide-left{animation:slideInLeft .5s cubic-bezier(.16,1,.3,1) both}.animate-scale-in{animation:scaleIn .35s cubic-bezier(.16,1,.3,1) both}.animate-pop-in{animation:popIn .4s cubic-bezier(.16,1,.3,1) both}.animate-bounce-in{animation:bounceIn .6s cubic-bezier(.16,1,.3,1) both}.animate-modal{animation:modalSlideUp .45s cubic-bezier(.16,1,.3,1) both}.animate-float{animation:float 3s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.animate-subtle-pulse{animation:subtle-pulse 2s ease-in-out infinite}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}.stagger-9{animation-delay:.45s}.hover-lift{transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1);will-change:transform}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 12px 28px -4px #0000001f,0 4px 10px -2px #0000000f}.hover-lift:active{transform:translateY(-1px);box-shadow:0 4px 12px -2px #0000001a;transition-duration:.1s}.press-scale{transition:transform .15s cubic-bezier(.4,0,.2,1);will-change:transform}.press-scale:active{transform:scale(.96)}.hover-glow{transition:box-shadow .3s ease,transform .2s ease}.hover-glow:hover{box-shadow:0 0 20px #10b98159;transform:translateY(-1px)}.page-enter{animation:fadeInUp .4s cubic-bezier(.16,1,.3,1) both}.msg-in{animation:slideInLeft .3s cubic-bezier(.16,1,.3,1) both}.msg-out{animation:slideInRight .3s cubic-bezier(.16,1,.3,1) both}.glass{background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3)}.glass-dark{background:#0006;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001f;border-radius:100px;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:#00000040}*{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.12) transparent}input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px #10b98126;border-color:#10b981!important;transition:box-shadow .2s ease,border-color .2s ease}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:2px solid #10b981;outline-offset:2px;border-radius:8px}input::placeholder,textarea::placeholder{color:#9ca3af;transition:opacity .2s ease}input:focus::placeholder,textarea:focus::placeholder{opacity:.5}button{position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.btn-ripple:after{content:"";position:absolute;top:50%;left:50%;width:6px;height:6px;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:0}.btn-ripple:active:after{animation:ripple .5s ease-out}.card{background:#fff;border-radius:16px;border:1px solid rgba(0,0,0,.05);box-shadow:0 1px 3px #0000000a,0 1px 2px #0000000f;transition:box-shadow .25s ease,transform .25s ease}.card:hover{box-shadow:0 4px 16px #00000014,0 2px 6px #0000000a}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:100px;font-size:12px;font-weight:600;letter-spacing:.02em;line-height:1.5}.divider{height:1px;background:linear-gradient(90deg,transparent,rgba(0,0,0,.08),transparent);margin:16px 0}.skeleton{background:linear-gradient(90deg,#e5e7eb 25%,#d1d5db,#e5e7eb 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:8px}.spinner{width:24px;height:24px;border:3px solid rgba(0,0,0,.1);border-top-color:#10b981;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.gradient-text{background:linear-gradient(135deg,#059669,#10b981,#34d399);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-emerald{background:linear-gradient(135deg,#059669,#10b981,#34d399)}.tooltip{position:relative}.tooltip:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) scale(.9);padding:6px 10px;background:#1f2937;color:#fff;font-size:12px;font-weight:500;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:all .2s cubic-bezier(.16,1,.3,1)}.tooltip:hover:after{opacity:1;transform:translate(-50%) scale(1)}@media(max-width:640px){button,a,[role=button]{min-height:44px;min-width:44px}input,select,textarea{font-size:16px!important}@media(hover:none){.hover-lift:hover{transform:none;box-shadow:0 1px 3px #0000000a}.hover-glow:hover{box-shadow:none;transform:none}}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{.fixed,.sticky{position:relative!important}button,.no-print{display:none!important}}.theme-transition-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:55;pointer-events:none;background-color:var(--overlay-color, #111827);clip-path:circle(0px at var(--cx, 50%) var(--cy, 50%));opacity:0;will-change:clip-path,opacity}.theme-transition-overlay.theme-transition-active{animation:theme-reveal .8s ease-in-out forwards}@keyframes theme-reveal{0%{opacity:1;clip-path:circle(0px at var(--cx) var(--cy))}45%{opacity:1;clip-path:circle(var(--max-r) at var(--cx) var(--cy))}55%{opacity:1;clip-path:circle(var(--max-r) at var(--cx) var(--cy))}to{opacity:0;clip-path:circle(var(--max-r) at var(--cx) var(--cy))}}body,div,header,main,section,nav,aside,footer,button,a,input,select,textarea,label,span,p,h1,h2,h3,h4,h5,h6{transition:background-color .25s ease,border-color .25s ease,color .15s ease}html.dark body{background-color:#111827;color:#e5e7eb}html.dark .hover-glow:hover{box-shadow:0 0 20px #10b98140,0 0 40px #10b9811a}html.dark ::-webkit-scrollbar-thumb{background:#ffffff26}html.dark ::-webkit-scrollbar-thumb:hover{background:#ffffff4d}html.dark *{scrollbar-color:rgba(255,255,255,.15) transparent}html.dark input:focus,html.dark select:focus,html.dark textarea:focus{box-shadow:0 0 0 3px #10b98140;border-color:#10b981!important}html.dark ::selection{background:#10b98159;color:#d1fae5}html.dark ::-moz-selection{background:#10b98159;color:#d1fae5}html.dark .glass{background:#1e293bb3;border:1px solid rgba(255,255,255,.08)}html.dark .glass-dark{background:#0009;border:1px solid rgba(255,255,255,.05)}html.dark .skeleton{background:linear-gradient(90deg,#1f2937 25%,#374151,#1f2937 75%);background-size:200% 100%}html.dark .hover-lift:hover{box-shadow:0 12px 28px -4px #0006,0 4px 10px -2px #0000004d}html.dark .card{background:#1f2937;border-color:#ffffff0f;box-shadow:0 1px 3px #0000004d}html.dark .card:hover{box-shadow:0 4px 16px #0006}html.dark .animate-shimmer{background:linear-gradient(90deg,#1f2937 25%,#374151,#1f2937 75%);background-size:200% 100%}html.dark input::placeholder,html.dark textarea::placeholder{color:#6b7280}html.dark .tooltip:after{background:#e5e7eb;color:#111827}
