.patient-portal{font-family:DM Sans,system-ui,sans-serif}.patient-gradient{background:linear-gradient(135deg,#dc2626,#991b1b);box-shadow:0 10px 20px #dc26264d}.patient-card{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:1rem;box-shadow:0 4px 6px -1px #00000014,0 2px 4px -1px #0000000a;border:1px solid rgba(226,232,240,.8);transition:all .3s cubic-bezier(.4,0,.2,1)}.patient-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:#dc262633}.patient-status-badge{display:inline-flex;align-items:center;padding:.5rem 1rem;border-radius:9999px;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 4px #0000001a;transition:all .2s ease}.patient-status-badge.waiting{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #fbbf24}.patient-status-badge.serving,.patient-status-badge.called{background:linear-gradient(135deg,#86efac,#4ade80);color:#065f46;border:1px solid #22c55e;animation:pulse-glow 2s ease-in-out infinite}.patient-status-badge.completed{background:linear-gradient(135deg,#bfdbfe,#93c5fd);color:#1e40af;border:1px solid #3b82f6}.patient-status-badge.cancelled{background:linear-gradient(135deg,#fecaca,#fca5a5);color:#991b1b;border:1px solid #ef4444}@keyframes pulse-glow{0%,to{box-shadow:0 2px 4px #0000001a,0 0 #22c55e66}50%{box-shadow:0 2px 4px #0000001a,0 0 0 8px #22c55e00}}.stats-card{position:relative;overflow:hidden}.stats-card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(220,38,38,.05) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.stats-card:hover:before{opacity:1}.tab-btn{transition:all .2s ease;position:relative}.tab-btn:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,#dc2626,#ef4444);transform:scaleX(0);transition:transform .2s ease}.tab-btn.border-red-600:after{transform:scaleX(1)}.journey-step{animation:slideInUp .4s ease backwards}.journey-step:nth-child(1){animation-delay:.05s}.journey-step:nth-child(2){animation-delay:.1s}.journey-step:nth-child(3){animation-delay:.15s}.journey-step:nth-child(4){animation-delay:.2s}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.department-stat{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);transition:all .2s ease}.department-stat:hover{background:linear-gradient(135deg,#fee2e2,#fecaca);transform:translate(4px)}@media print{.no-print{display:none!important}body{background:#fff}}
