.btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;font-size:.875rem;background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--primary)/.9));color:hsl(var(--primary-foreground));border:none;box-shadow:0 4px 12px -2px hsl(var(--primary)/.3),0 2px 4px -1px hsl(var(--primary)/.1);transition:all .3s cubic-bezier(.4,0,.2,1);gap:.5rem;min-height:44px;cursor:pointer;text-decoration:none;position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn-primary:hover:before{left:100%}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 20px -4px hsl(var(--primary)/.4),0 4px 8px -2px hsl(var(--primary)/.2)}.btn-primary:active{transform:translateY(0);transition-duration:.1s}.btn-primary:focus{outline:none;box-shadow:0 0 0 3px hsl(var(--primary)/.3)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;font-size:.875rem;background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border:1px solid hsl(var(--border));box-shadow:0 2px 4px -1px rgb(0 0 0/.1);transition:all .3s cubic-bezier(.4,0,.2,1);gap:.5rem;min-height:44px;cursor:pointer;text-decoration:none}.btn-secondary:hover{background:hsl(var(--secondary)/.8);border-color:hsl(var(--primary)/.3);box-shadow:0 4px 12px -2px rgb(0 0 0/.15);transform:translateY(-1px)}.btn-secondary:focus{outline:none;box-shadow:0 0 0 3px hsl(var(--ring)/.2)}.btn-accent{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;font-size:.875rem;background:linear-gradient(135deg,hsl(var(--accent)),hsl(var(--accent)/.9));color:hsl(var(--accent-foreground));border:none;box-shadow:0 4px 12px -2px hsl(var(--accent)/.3);transition:all .3s cubic-bezier(.4,0,.2,1);gap:.5rem;min-height:44px;cursor:pointer;text-decoration:none}.btn-accent:hover{transform:translateY(-1px);box-shadow:0 8px 20px -4px hsl(var(--accent)/.4)}.btn-danger{background:linear-gradient(135deg,hsl(var(--destructive)),hsl(var(--destructive)/.9));border:none;box-shadow:0 4px 12px -2px hsl(var(--destructive)/.3);transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-danger:hover{transform:translateY(-1px);box-shadow:0 8px 20px -4px hsl(var(--destructive)/.4)}.btn-ghost,.btn-outline{transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-outline{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;font-size:.875rem;background-color:transparent;color:hsl(var(--primary));border:2px solid hsl(var(--primary));gap:.5rem;min-height:44px;cursor:pointer;text-decoration:none}.btn-outline:hover{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));transform:translateY(-1px);box-shadow:0 4px 12px -2px hsl(var(--primary)/.3)}.btn-destructive{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;font-size:.875rem;background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground));border:2px solid hsl(var(--destructive));transition:all .3s cubic-bezier(.4,0,.2,1);gap:.5rem;min-height:44px;cursor:pointer;text-decoration:none}.btn-destructive:hover{background-color:hsl(var(--destructive)/.9);transform:translateY(-1px);box-shadow:0 4px 12px -2px hsl(var(--destructive)/.3)}.btn-sm{border-radius:.5rem}.btn-lg,.btn-xl{border-radius:1rem}.btn-xl{padding:1.25rem 2.5rem;font-size:1.125rem;min-height:60px}.btn-icon{width:44px;height:44px;padding:0;border-radius:.75rem;display:inline-flex;align-items:center;justify-content:center}.btn-icon.btn-sm{width:36px;height:36px;border-radius:.5rem}.btn-icon.btn-lg{width:52px;height:52px;border-radius:.75rem}.form-group{margin-bottom:1.5rem}.form-control{padding:.875rem 1rem;border-radius:.75rem;border:2px solid hsl(var(--border));background-color:hsl(var(--input));transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px 0 rgb(0 0 0/.05)}.form-control:focus{box-shadow:0 0 0 3px hsl(var(--ring)/.2),0 1px 2px 0 rgb(0 0 0/.05);transform:translateY(-1px)}.form-control.error{box-shadow:0 0 0 3px hsl(var(--destructive)/.2)}.form-label.required:after{content:" *";color:hsl(var(--destructive))}.form-error{display:flex;align-items:center;gap:.25rem}.form-error,.form-help{margin-top:.5rem}.form-control-lg{padding:1rem 1.25rem;font-size:1rem;border-radius:1rem}.form-control-sm{padding:.5rem .75rem;font-size:.75rem;border-radius:.5rem}.card{transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,hsl(var(--primary)),hsl(var(--accent)));opacity:0;transition:opacity .3s ease}.card-hover:hover{box-shadow:0 10px 25px -5px rgb(0 0 0/.1),0 4px 6px -2px rgb(0 0 0/.05);border-color:hsl(var(--primary)/.3)}.card-hover:hover:before{opacity:1}.card-title{line-height:1.4;margin:0}.card-subtitle{margin-top:.5rem;margin-bottom:0}.card-content{flex:1}.card-footer{border-top:1px solid hsl(var(--border));padding-top:1rem;margin-top:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.card-elevated{box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1)}.card-glass{background:hsl(var(--card)/.8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid hsl(var(--border)/.5)}.card-bordered{border:2px solid hsl(var(--border))}.badge{text-transform:uppercase;letter-spacing:.025em;transition:all .2s ease}.badge-primary{background-color:hsl(var(--primary)/.1);color:hsl(var(--primary));border:1px solid hsl(var(--primary)/.2)}.badge-secondary{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border:1px solid hsl(var(--border))}.badge-success{background-color:hsl(var(--success)/.1);color:hsl(var(--success));border:1px solid hsl(var(--success)/.2)}.badge-warning{background-color:hsl(var(--warning)/.1);color:hsl(var(--warning));border:1px solid hsl(var(--warning)/.2)}.badge-danger{background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive));border:1px solid hsl(var(--destructive)/.2)}.badge-info{background-color:hsl(var(--info)/.1);color:hsl(var(--info));border:1px solid hsl(var(--info)/.2)}.badge-sm{padding:.125rem .5rem;font-size:.625rem}.badge-lg{padding:.375rem 1rem;font-size:.875rem}.alert{padding:1rem 1.25rem;margin-bottom:1rem}.alert-icon{flex-shrink:0;width:1.25rem;height:1.25rem;margin-top:.125rem}.alert-content{flex:1}.alert-title{font-weight:600;font-size:.875rem;margin-bottom:.25rem}.alert-description{font-size:.875rem;line-height:1.5}.alert-success{background-color:hsl(var(--success)/.05);border-color:hsl(var(--success)/.2);color:hsl(var(--success))}.alert-warning{background-color:hsl(var(--warning)/.05);border-color:hsl(var(--warning)/.2);color:hsl(var(--warning))}.alert-error{background-color:hsl(var(--destructive)/.05);border-color:hsl(var(--destructive)/.2);color:hsl(var(--destructive))}.alert-info{background-color:hsl(var(--info)/.05);border-color:hsl(var(--info)/.2);color:hsl(var(--info))}.table-container{border-radius:1rem;overflow:hidden;background:hsl(var(--card));box-shadow:0 1px 3px 0 rgb(0 0 0/.1)}.table th{background:hsl(var(--muted));padding:1rem;text-transform:uppercase;letter-spacing:.025em;font-size:.75rem}.table td{padding:1rem;vertical-align:middle}.table tbody tr{transition:background-color .2s ease}.table tbody tr:hover{background:hsl(var(--muted)/.3)}.table tbody tr:last-child td{border-bottom:none}.table-striped tbody tr:nth-child(2n){background:hsl(var(--muted)/.2)}.table-compact td,.table-compact th{padding:.5rem .75rem}.nav-tabs{display:flex;border-bottom:1px solid hsl(var(--border));gap:0}.nav-tab{padding:.75rem 1.5rem;font-weight:500;color:hsl(var(--muted-foreground));border-bottom:2px solid transparent;transition:all .3s ease;cursor:pointer;text-decoration:none;border-radius:.5rem .5rem 0 0}.nav-tab:hover{color:hsl(var(--foreground));background:hsl(var(--muted)/.5)}.nav-tab.active{color:hsl(var(--primary));border-bottom-color:hsl(var(--primary));background:hsl(var(--background))}.nav-pills{display:flex;gap:.25rem;padding:.25rem;background:hsl(var(--muted));border-radius:.75rem}.nav-pill{padding:.5rem 1rem;font-weight:500;color:hsl(var(--muted-foreground));border-radius:.5rem;transition:all .3s ease;cursor:pointer;text-decoration:none}.nav-pill:hover{color:hsl(var(--foreground));background:hsl(var(--background)/.5)}.nav-pill.active{color:hsl(var(--primary-foreground));background:hsl(var(--primary));box-shadow:0 1px 2px 0 rgb(0 0 0/.1)}.loading-spinner{display:inline-block;width:1rem;height:1rem;border-radius:50%;border:2px solid hsl(var(--muted));border-top-color:hsl(var(--primary));animation:spin 1s linear infinite}.loading-spinner-lg{width:1.5rem;height:1.5rem;border-width:3px}.loading-dots{display:inline-flex;gap:.25rem}.loading-dots:after,.loading-dots:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:hsl(var(--primary));animation:pulse 1.5s ease-in-out infinite}.loading-dots:after{animation-delay:.75s}.skeleton{background:linear-gradient(90deg,hsl(var(--muted)) 25%,hsl(var(--muted)/.5) 50%,hsl(var(--muted)) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:.5rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1rem;margin-bottom:.5rem}.skeleton-text:last-child{width:60%;margin-bottom:0}.skeleton-avatar{width:3rem;height:3rem;border-radius:50%}.skeleton-button{height:2.5rem;width:6rem;border-radius:.5rem}.glass-morphism{background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px 0 rgba(31,38,135,.37)}.dark .glass-morphism{background:rgba(15,23,42,.1);border:1px solid rgba(255,255,255,.1)}.gradient-text{background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent)));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-glow{text-shadow:0 0 10px hsl(var(--primary)/.5)}.shadow-medical{box-shadow:0 4px 20px -4px hsl(var(--primary)/.25)}.shadow-soft{box-shadow:0 2px 8px -2px rgb(0 0 0/.08)}.border-gradient{border:2px solid transparent;background:linear-gradient(hsl(var(--background)),hsl(var(--background))) padding-box,linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent))) border-box}@media (max-width:768px){.btn-accent,.btn-danger,.btn-ghost,.btn-outline,.btn-primary,.btn-secondary{min-height:48px}.form-control{padding:1rem;font-size:1rem}.card{padding:1rem;border-radius:.75rem}.table td,.table th{padding:.75rem .5rem}}.dark .card{box-shadow:0 4px 6px -1px rgb(0 0 0/.2),0 2px 4px -2px rgb(0 0 0/.1)}.dark .card-hover:hover{box-shadow:0 10px 25px -5px rgb(0 0 0/.3),0 4px 6px -2px rgb(0 0 0/.1)}.dark .table-container{box-shadow:0 4px 6px -1px rgb(0 0 0/.2)}@media print{.btn-accent,.btn-danger,.btn-ghost,.btn-outline,.btn-primary,.btn-secondary{box-shadow:none!important;background:transparent!important;color:black!important;border:1px solid black!important}.card{border:1px solid black!important;box-shadow:none!important}}.btn-accent:hover{background-color:hsl(var(--accent)/.9);border-color:hsl(var(--accent)/.9);box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1)}.btn-accent:focus{outline:none;box-shadow:0 0 0 4px hsl(var(--accent)/.3)}.btn-danger{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;font-size:.875rem;background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground));border:1px solid hsl(var(--destructive));box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1);transition:all .2s ease-in-out;gap:.5rem;min-height:44px;cursor:pointer;text-decoration:none}.btn-danger:hover{background-color:hsl(var(--destructive)/.9);border-color:hsl(var(--destructive)/.9);box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1)}.btn-danger:focus{outline:none;box-shadow:0 0 0 4px hsl(var(--destructive)/.3)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;font-size:.875rem;background-color:transparent;color:hsl(var(--foreground));border:1px solid transparent;transition:all .2s ease-in-out;gap:.5rem;min-height:44px;cursor:pointer;text-decoration:none}.btn-ghost:hover{background-color:hsl(var(--muted));border-color:hsl(var(--border))}.btn-ghost:focus{outline:none;box-shadow:0 0 0 4px hsl(var(--ring)/.2)}.btn-sm{padding:.5rem 1rem;font-size:.75rem;min-height:36px}.btn-lg{padding:1rem 2rem;font-size:1rem;min-height:52px}.form-control{width:100%;padding:.75rem 1rem;border-radius:.5rem;border:1px solid hsl(var(--border));background-color:hsl(var(--background));color:hsl(var(--foreground));font-size:.875rem;transition:all .2s ease-in-out}.form-control:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 4px hsl(var(--ring)/.3)}.form-control:disabled{opacity:.6;cursor:not-allowed;background-color:hsl(var(--muted))}.form-control.error{border-color:hsl(var(--destructive));box-shadow:0 0 0 4px hsl(var(--destructive)/.3)}.form-control::-moz-placeholder{color:hsl(var(--muted-foreground))}.form-control::placeholder{color:hsl(var(--muted-foreground))}.form-label{display:block;font-size:.875rem;font-weight:600;color:hsl(var(--foreground));margin-bottom:.5rem}.form-error{color:hsl(var(--destructive));font-weight:500}.form-error,.form-help{font-size:.75rem;margin-top:.25rem}.form-help{color:hsl(var(--muted-foreground))}.card{background-color:hsl(var(--card));color:hsl(var(--card-foreground));border:1px solid hsl(var(--border));border-radius:1rem;padding:1.5rem;box-shadow:0 1px 3px 0 rgb(0 0 0/.1),0 1px 2px -1px rgb(0 0 0/.1);transition:all .2s ease-in-out}.card-hover{cursor:pointer}.card-hover:hover{box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1);transform:translateY(-2px)}.card-header{border-bottom:1px solid hsl(var(--border));padding-bottom:1rem;margin-bottom:1.5rem}.card-title{font-size:1.25rem;font-weight:700;color:hsl(var(--foreground));line-height:1.6}.card-subtitle{color:hsl(var(--muted-foreground));font-size:.875rem;margin-top:.25rem}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;gap:.25rem}.badge-success{background-color:hsl(142 76% 94%);color:hsl(142 72% 29%);border:1px solid hsl(142 76% 73%)}.badge-warning{background-color:hsl(48 96% 89%);color:hsl(25 95% 53%);border:1px solid hsl(48 96% 71%)}.badge-danger{background-color:hsl(0 86% 97%);color:hsl(0 74% 42%);border:1px solid hsl(0 93% 94%)}.badge-info{background-color:hsl(var(--primary)/.1);color:hsl(var(--primary));border:1px solid hsl(var(--primary)/.2)}.badge-neutral{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border))}.alert{padding:1rem;border-radius:.75rem;border:1px solid;display:flex;align-items:flex-start;gap:.75rem;font-size:.875rem;font-weight:500}.alert-success{background-color:hsl(142 76% 94%);border-color:hsl(142 76% 73%);color:hsl(142 72% 29%)}.alert-warning{background-color:hsl(48 96% 89%);border-color:hsl(48 96% 71%);color:hsl(25 95% 53%)}.alert-danger{background-color:hsl(0 86% 97%);border-color:hsl(0 93% 94%);color:hsl(0 74% 42%)}.alert-info{background-color:hsl(var(--primary)/.1);border-color:hsl(var(--primary)/.2);color:hsl(var(--primary))}.table-container{overflow-x:auto;border-radius:.75rem;border:1px solid hsl(var(--border));background-color:hsl(var(--card))}.table{width:100%;font-size:.875rem;border-collapse:collapse}.table th{background-color:hsl(var(--muted));text-align:left;font-weight:600}.table td,.table th{padding:1rem 1.5rem;color:hsl(var(--foreground));border-bottom:1px solid hsl(var(--border))}.table tr:hover td{background-color:hsl(var(--muted)/.5)}.table tr:last-child td{border-bottom:none}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:.75rem;font-size:.875rem;font-weight:500;transition:all .2s ease-in-out;text-decoration:none;cursor:pointer}.nav-item,.nav-item:hover{color:hsl(var(--foreground))}.nav-item:hover{background-color:hsl(var(--muted))}.nav-item.active{background-color:hsl(var(--primary)/.1);color:hsl(var(--primary));font-weight:600}.sidebar{background-color:hsl(var(--sidebar));border-right:1px solid hsl(var(--border));height:100%;transition:all .3s ease-in-out}.modal-overlay{position:fixed;inset:0;background-color:rgb(0 0 0/.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}.modal{background-color:hsl(var(--card));border-radius:1rem;box-shadow:0 25px 50px -12px rgb(0 0 0/.25);max-width:32rem;width:100%;max-height:90vh;overflow-y:auto;border:1px solid hsl(var(--border))}.modal-header{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid hsl(var(--border))}.modal-title{font-size:1.125rem;font-weight:700;color:hsl(var(--foreground))}.modal-body{padding:1.5rem}.modal-footer{padding:1rem 1.5rem 1.5rem;border-top:1px solid hsl(var(--border));display:flex;gap:.75rem;justify-content:flex-end}.toast{position:fixed;top:1rem;right:1rem;z-index:50;max-width:24rem;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1);padding:1rem;transform:translateX(100%);transition:all .3s ease-in-out}.toast.show{transform:translateX(0)}.toast.success{border-color:hsl(142 76% 73%);background-color:hsl(142 76% 94%)}.toast.error{border-color:hsl(0 93% 94%);background-color:hsl(0 86% 97%)}.toast.warning{border-color:hsl(48 96% 71%);background-color:hsl(48 96% 89%)}.toast.info{border-color:hsl(var(--primary)/.2);background-color:hsl(var(--primary)/.1)}.glass-card{-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);background-color:hsl(var(--card)/.8);border:1px solid hsl(var(--border)/.2);border-radius:1rem}.hero-gradient,.text-gradient{background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent)))}.text-gradient{background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.container-responsive{max-width:80rem;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.container-responsive{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.container-responsive{padding-left:2rem;padding-right:2rem}}.grid-responsive{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width:640px){.grid-responsive{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.grid-responsive{grid-template-columns:repeat(3,1fr)}}@media (min-width:1280px){.grid-responsive{grid-template-columns:repeat(4,1fr)}}.flex-responsive{display:flex;flex-direction:column;gap:1rem}@media (min-width:640px){.flex-responsive{flex-direction:row}}.animate-fade-in{animation:fadeIn .5s ease-out}.animate-slide-up{animation:slideUp .3s ease-out}.animate-slide-down{animation:slideDown .3s ease-out}.animate-scale-in{animation:scaleIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.focus-visible:focus-visible{outline:none;box-shadow:0 0 0 4px hsl(var(--ring)/.3)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spinner{display:inline-block;width:1.25rem;height:1.25rem;border:2px solid;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.skeleton{background-color:hsl(var(--muted));border-radius:.25rem;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.scrollbar-thin{scrollbar-width:thin;scrollbar-color:hsl(var(--muted-foreground)/.3) hsl(var(--muted))}.scrollbar-thin::-webkit-scrollbar{width:6px;height:6px}.scrollbar-thin::-webkit-scrollbar-track{background:hsl(var(--muted))}.scrollbar-thin::-webkit-scrollbar-thumb{background:hsl(var(--muted-foreground)/.3);border-radius:3px}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground)/.5)}.medical-card{background:linear-gradient(135deg,hsl(var(--card)),hsl(var(--primary)/.05));border:1px solid hsl(var(--primary)/.2);border-radius:1rem;padding:1.5rem;box-shadow:0 4px 6px -1px hsl(var(--primary)/.1),0 2px 4px -2px hsl(var(--primary)/.1);transition:all .3s ease-in-out}.medical-card:hover{box-shadow:0 10px 15px -3px hsl(var(--primary)/.15),0 4px 6px -4px hsl(var(--primary)/.1);transform:translateY(-2px)}.health-indicator{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600}.health-indicator.good{background-color:hsl(142 76% 94%);color:hsl(142 72% 29%)}.health-indicator.warning{background-color:hsl(48 96% 89%);color:hsl(25 95% 53%)}.health-indicator.critical{background-color:hsl(0 86% 97%);color:hsl(0 74% 42%)}.formio-form{background:transparent}.formio-form .form-group{margin-bottom:1.5rem}.formio-form .control-label{display:block;font-size:.875rem;font-weight:600;color:hsl(var(--foreground));margin-bottom:.5rem}.formio-form .form-control{width:100%;padding:.75rem 1rem;border-radius:.5rem;border:1px solid hsl(var(--border));background-color:hsl(var(--background));color:hsl(var(--foreground));font-size:.875rem;transition:all .2s ease-in-out}.formio-form .form-control:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 4px hsl(var(--ring)/.3)}.formio-form .btn{padding:.75rem 1.5rem;border-radius:.75rem;font-weight:600;font-size:.875rem;transition:all .2s ease-in-out;gap:.5rem;min-height:44px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.formio-form .btn-primary{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border:1px solid hsl(var(--primary));box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1)}.formio-form .btn-primary:hover{background-color:hsl(var(--primary)/.9);border-color:hsl(var(--primary)/.9);box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1)}.formio-form .btn-primary:focus{outline:none;box-shadow:0 0 0 4px hsl(var(--primary)/.3)}.formio-form .btn-secondary{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border:1px solid hsl(var(--border));box-shadow:0 1px 2px 0 rgb(0 0 0/.05)}.formio-form .btn-secondary:hover{background-color:hsl(var(--secondary)/.8);border-color:hsl(var(--border));box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1)}.formio-form .btn-secondary:focus{outline:none;box-shadow:0 0 0 4px hsl(var(--ring)/.2)}@media (max-width:640px){.btn-accent,.btn-danger,.btn-ghost,.btn-primary,.btn-secondary{width:100%;justify-content:center}.modal{margin:.5rem;max-width:none}.table-container{font-size:.75rem}.card{padding:1rem}.nav-item{padding:.5rem .75rem}}.dark .badge-success{background-color:rgb(22 101 52/.3);color:rgb(187 247 208);border-color:rgb(22 101 52)}.dark .badge-warning{background-color:rgb(146 64 14/.3);color:rgb(253 230 138);border-color:rgb(146 64 14)}.dark .badge-danger{background-color:rgb(153 27 27/.3);color:rgb(254 202 202);border-color:rgb(153 27 27)}.dark .alert-success{background-color:rgb(22 101 52/.2);border-color:rgb(22 101 52);color:rgb(187 247 208)}.dark .alert-warning{background-color:rgb(146 64 14/.2);border-color:rgb(146 64 14);color:rgb(253 230 138)}.dark .alert-danger{background-color:rgb(153 27 27/.2);border-color:rgb(153 27 27);color:rgb(254 202 202)}.dark .health-indicator.good{background-color:rgb(22 101 52/.3);color:rgb(187 247 208)}.dark .health-indicator.warning{background-color:rgb(146 64 14/.3);color:rgb(253 230 138)}.dark .health-indicator.critical{background-color:rgb(153 27 27/.3);color:rgb(254 202 202)}@media print{.no-print{display:none!important}.print-break{page-break-after:always}body{color:black!important;background:white!important}.alert,.card,.modal{box-shadow:none!important;border:1px solid #ccc!important}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.product-stats-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:1.5rem;box-shadow:0 2px 4px -1px hsl(var(--foreground)/.1);transition:all .3s cubic-bezier(.4,0,.2,1)}.product-stats-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px -4px hsl(var(--foreground)/.15)}.upload-zone{border:2px dashed hsl(var(--border));border-radius:var(--radius);padding:2rem;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);background:hsl(var(--muted)/.3)}.upload-zone:hover{border-color:hsl(var(--primary)/.5);background:hsl(var(--primary)/.05)}.upload-zone.drag-over{border-color:hsl(var(--primary));background:hsl(var(--primary)/.1);transform:scale(1.02)}.product-form-enter{opacity:0;transform:translateY(-10px);animation:productFormEnter .3s ease-out forwards}@keyframes productFormEnter{to{opacity:1;transform:translateY(0)}}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.status-badge.active{background:hsl(var(--success)/.1);color:hsl(var(--success));border:1px solid hsl(var(--success)/.2)}.status-badge.draft{background:hsl(var(--warning)/.1);color:hsl(var(--warning));border:1px solid hsl(var(--warning)/.2)}.status-badge.inactive{background:hsl(var(--muted));color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border))}.product-input{width:100%;padding:.75rem 1rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--background));color:hsl(var(--foreground));font-size:.875rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.product-input:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.1)}.product-input:invalid{border-color:hsl(var(--destructive));box-shadow:0 0 0 3px hsl(var(--destructive)/.1)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.product-list{display:flex;flex-direction:column;gap:1rem}@media (max-width:768px){.product-grid{grid-template-columns:1fr;gap:1rem}.product-stats-card{padding:1rem}.upload-zone{padding:1.5rem}}.dark .upload-zone{background:hsl(var(--muted)/.2)}.dark .upload-zone:hover{background:hsl(var(--primary)/.1)}.dark .product-stats-card{box-shadow:0 2px 4px -1px hsl(0 0% 0%/.3)}.dark .product-stats-card:hover{box-shadow:0 8px 20px -4px hsl(0 0% 0%/.4)}