:root{--color-primary: #0d9488;--color-primary-dark: #0f766e;--color-primary-light: #14b8a6;--color-primary-bg: #f0fdfa;--color-primary-border: #99f6e4;--color-accent: #f59e0b;--color-accent-dark: #d97706;--color-accent-bg: #fffbeb;--color-bg: #f8fafc;--color-surface: #ffffff;--color-surface-alt: #f1f5f9;--color-border: #e2e8f0;--color-border-strong: #cbd5e1;--color-text: #1e293b;--color-text-muted: #64748b;--color-text-light: #94a3b8;--color-text-inverse: #ffffff;--color-success: #16a34a;--color-success-bg: #f0fdf4;--color-error: #dc2626;--color-error-bg: #fef2f2;--color-warning: #d97706;--color-warning-bg: #fffbeb;--color-info: #0284c7;--color-info-bg: #eff6ff;--font-sans: "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "SF Mono", "Fira Code", Consolas, monospace;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .12);--shadow-focus: 0 0 0 3px rgba(13, 148, 136, .35);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 40px;--space-2xl: 64px;--container-max: 1140px;--header-height: 64px;--transition: .2s ease;--z-header: 100;--z-overlay: 200;--z-toast: 300}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:16px;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);min-height:100vh;display:flex;flex-direction:column}#app{flex:1;display:flex;flex-direction:column}img{max-width:100%;display:block}a{color:var(--color-primary-dark);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-primary)}ul,ol{list-style:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,select,textarea{font-family:inherit;font-size:inherit}:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-sm)}.skip-link{position:absolute;top:-100px;left:0;background:var(--color-primary);color:#fff;padding:var(--space-sm) var(--space-md);z-index:var(--z-toast);border-radius:0 0 var(--radius-md) 0;font-weight:500}.skip-link:focus{top:0}.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}#main-content{outline:none}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-md)}@media (min-width: 768px){.container{padding:0 var(--space-lg)}}.main{flex:1;padding:var(--space-lg) 0}.page-header{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;padding:var(--space-xl) 0;text-align:center}.page-header h1{font-size:clamp(1.5rem,4vw,2.25rem);font-weight:700;margin-bottom:var(--space-sm)}.page-header p{font-size:1rem;opacity:.9;max-width:600px;margin:0 auto}.section{padding:var(--space-xl) 0}.section-title{font-size:clamp(1.25rem,3vw,1.75rem);font-weight:700;margin-bottom:var(--space-lg);display:flex;align-items:center;gap:var(--space-sm)}.section-title:before{content:"";display:inline-block;width:4px;height:1.5em;background:var(--color-primary);border-radius:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:10px 20px;border-radius:var(--radius-md);font-size:.95rem;font-weight:500;line-height:1.4;transition:all var(--transition);text-decoration:none;white-space:nowrap;border:1px solid transparent;min-height:44px}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong)}.btn-secondary:hover{background:var(--color-surface-alt);border-color:var(--color-primary);color:var(--color-primary-dark)}.btn-ghost{background:transparent;color:var(--color-primary-dark)}.btn-ghost:hover{background:var(--color-primary-bg)}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover{background:#b91c1c;color:#fff}.btn-outline-danger{background:transparent;color:var(--color-error);border-color:var(--color-error)}.btn-outline-danger:hover{background:var(--color-error-bg)}.btn-lg{padding:14px 32px;font-size:1.05rem}.btn-sm{padding:6px 14px;font-size:.85rem;min-height:36px}.btn:disabled,.btn.is-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-block{width:100%}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow var(--transition),transform var(--transition)}.card:hover{box-shadow:var(--shadow-md)}.card-body{padding:var(--space-md)}@media (min-width: 768px){.card-body{padding:var(--space-lg)}}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;line-height:1.4}.badge-primary{background:var(--color-primary-bg);color:var(--color-primary-dark)}.badge-accent{background:var(--color-accent-bg);color:var(--color-accent-dark)}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.badge-muted{background:var(--color-surface-alt);color:var(--color-text-muted)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.form-group{margin-bottom:var(--space-md)}.form-label{display:block;font-size:.9rem;font-weight:500;margin-bottom:var(--space-xs);color:var(--color-text)}.form-label .required{color:var(--color-error);margin-left:2px}.form-control{display:block;width:100%;padding:10px 14px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition),box-shadow var(--transition);min-height:44px}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.form-control::placeholder{color:var(--color-text-light)}.form-control.is-invalid{border-color:var(--color-error)}.form-control.is-invalid:focus{box-shadow:0 0 0 3px #dc262640}.form-error{display:block;color:var(--color-error);font-size:.85rem;margin-top:var(--space-xs);min-height:1.2em}.form-hint{color:var(--color-text-muted);font-size:.85rem;margin-top:var(--space-xs)}textarea.form-control{min-height:100px;resize:vertical}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2364748b' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.radio-group,.checkbox-group{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.radio-label,.checkbox-label{display:inline-flex;align-items:center;gap:var(--space-xs);padding:8px 16px;border:2px solid var(--color-border-strong);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition);font-size:.9rem;min-height:44px}.radio-label:hover,.checkbox-label:hover{border-color:var(--color-primary-light)}.radio-label:has(input:checked),.checkbox-label:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-bg);color:var(--color-primary-dark)}.radio-label input,.checkbox-label input{position:absolute;opacity:0;width:0;height:0}.grid{display:grid;gap:var(--space-md)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}@media (min-width: 640px){.grid-2,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1100px){.grid-4{grid-template-columns:repeat(4,1fr)}}.site-header{position:sticky;top:0;z-index:var(--z-header);background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.header-inner{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-md);height:var(--header-height);display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}@media (min-width: 768px){.header-inner{padding:0 var(--space-lg)}}.logo{display:flex;align-items:center;gap:var(--space-sm);font-size:1.15rem;font-weight:700;color:var(--color-text);flex-shrink:0}.logo:hover{color:var(--color-primary-dark)}.logo-icon{font-size:1.5rem;line-height:1}.logo-sub{font-size:.7rem;font-weight:400;color:var(--color-text-muted);display:block;margin-top:-2px}.nav-toggle{display:flex;flex-direction:column;gap:4px;padding:8px;border-radius:var(--radius-sm);background:transparent}.nav-toggle span{display:block;width:22px;height:2px;background:var(--color-text);border-radius:1px;transition:all var(--transition)}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.nav{display:none;position:absolute;top:var(--header-height);left:0;right:0;background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-md);flex-direction:column;padding:var(--space-sm) 0}.nav.is-open{display:flex}.nav-link{display:flex;align-items:center;gap:var(--space-xs);padding:12px var(--space-lg);color:var(--color-text);font-size:.95rem;font-weight:500;border-left:3px solid transparent;transition:all var(--transition)}.nav-link:hover{background:var(--color-primary-bg);color:var(--color-primary-dark);border-left-color:var(--color-primary-light)}.nav-link.active{color:var(--color-primary-dark);border-left-color:var(--color-primary);background:var(--color-primary-bg)}.nav-link .badge{margin-left:var(--space-xs)}@media (min-width: 900px){.nav-toggle{display:none}.nav{display:flex;position:static;flex-direction:row;align-items:center;border:none;box-shadow:none;padding:0;background:transparent}.nav-link{padding:8px 14px;border:none;border-radius:var(--radius-md);border-bottom:2px solid transparent;border-left:none}.nav-link:hover{border-left:none}.nav-link.active{background:var(--color-primary-bg);border-bottom:2px solid var(--color-primary);border-left:none}}.site-footer{background:#0f172a;color:#cbd5e1;padding:var(--space-xl) 0 var(--space-md);margin-top:auto}.footer-inner{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-md)}@media (min-width: 768px){.footer-inner{padding:0 var(--space-lg)}}.footer-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg);margin-bottom:var(--space-xl)}@media (min-width: 640px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}}.footer-brand h3{color:#fff;font-size:1.1rem;margin-bottom:var(--space-sm)}.footer-brand p{font-size:.9rem;line-height:1.7;color:#94a3b8}.footer-col h4{color:#fff;font-size:.95rem;margin-bottom:var(--space-sm)}.footer-col ul{display:flex;flex-direction:column;gap:var(--space-xs)}.footer-col a{color:#94a3b8;font-size:.9rem}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid #1e293b;padding-top:var(--space-md);text-align:center;font-size:.85rem;color:#64748b}.spinner{width:40px;height:40px;border:3px solid var(--color-primary-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-2xl) var(--space-md);color:var(--color-text-muted)}.app-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:var(--space-md);color:var(--color-text-muted)}.skeleton{background:linear-gradient(90deg,var(--color-surface-alt) 25%,#e2e8f0 50%,var(--color-surface-alt) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{to{background-position:-200% 0}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-2xl) var(--space-md);color:var(--color-text-muted)}.empty-state .empty-icon{font-size:3rem;margin-bottom:var(--space-md)}.empty-state h3{font-size:1.15rem;color:var(--color-text);margin-bottom:var(--space-xs)}.empty-state p{font-size:.95rem;max-width:400px;margin-bottom:var(--space-lg)}.toast-container{position:fixed;top:calc(var(--header-height) + var(--space-sm));right:var(--space-md);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-sm);pointer-events:none;max-width:360px}.toast{display:flex;align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);pointer-events:auto;animation:toastIn .3s ease;background:var(--color-surface);border-left:4px solid var(--color-primary)}.toast.success{border-left-color:var(--color-success)}.toast.error{border-left-color:var(--color-error)}.toast.warning{border-left-color:var(--color-warning)}.toast-icon{font-size:1.25rem;line-height:1.2;flex-shrink:0}.toast-body{flex:1;font-size:.9rem;line-height:1.5}.toast-close{flex-shrink:0;padding:2px 6px;color:var(--color-text-muted);font-size:1.1rem;line-height:1}@keyframes toastIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs);padding:var(--space-md) 0;font-size:.9rem;color:var(--color-text-muted)}.breadcrumb a{color:var(--color-text-muted)}.breadcrumb a:hover{color:var(--color-primary-dark)}.breadcrumb .separator{color:var(--color-text-light)}.breadcrumb .current{color:var(--color-text);font-weight:500}.tag-list{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.tag{display:inline-flex;align-items:center;padding:4px 12px;background:var(--color-primary-bg);color:var(--color-primary-dark);border-radius:var(--radius-full);font-size:.8rem;font-weight:500}.avatar{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;font-size:1.25rem;font-weight:600;color:#fff;flex-shrink:0}.avatar-lg{width:80px;height:80px;font-size:1.75rem}.doctor-card{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition);height:100%}.doctor-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-md);transform:translateY(-2px)}.doctor-card-header{display:flex;gap:var(--space-md);align-items:flex-start}.doctor-card-info h3{font-size:1.1rem;margin-bottom:2px}.doctor-card-info .dept{font-size:.85rem;color:var(--color-text-muted)}.doctor-card-specialties{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.doctor-card-footer{margin-top:auto;display:flex;gap:var(--space-sm)}.schedule-filter{display:grid;grid-template-columns:1fr;gap:var(--space-md);background:var(--color-surface);padding:var(--space-md);border-radius:var(--radius-lg);border:1px solid var(--color-border);margin-bottom:var(--space-lg)}@media (min-width: 768px){.schedule-filter{grid-template-columns:repeat(3,1fr);padding:var(--space-lg)}}.filter-field{display:flex;flex-direction:column;gap:var(--space-xs)}.filter-field label{font-size:.85rem;font-weight:500;color:var(--color-text-muted)}.schedule-list{display:flex;flex-direction:column;gap:var(--space-sm)}.schedule-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition)}.schedule-item:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-sm)}.schedule-item .schedule-date{flex-shrink:0;text-align:center;min-width:72px}.schedule-item .schedule-date .day{font-size:1.25rem;font-weight:700;color:var(--color-primary-dark)}.schedule-item .schedule-date .month{font-size:.75rem;color:var(--color-text-muted)}.schedule-item .schedule-body{flex:1;min-width:0}.schedule-item .schedule-body h4{font-size:1rem;margin-bottom:2px}.schedule-item .schedule-body p{font-size:.85rem;color:var(--color-text-muted)}.schedule-item .schedule-slot{flex-shrink:0;text-align:right}.schedule-item .schedule-slot .slot-label{font-weight:500;font-size:.95rem}.schedule-item .schedule-slot .slot-time{font-size:.8rem;color:var(--color-text-muted)}.weekly-schedule{display:grid;grid-template-columns:1fr;gap:var(--space-sm)}@media (min-width: 640px){.weekly-schedule{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.weekly-schedule{grid-template-columns:repeat(4,1fr)}}.day-card{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);text-align:center;transition:all var(--transition)}.day-card.has-slots{background:var(--color-surface)}.day-card.no-slots{background:var(--color-surface-alt);color:var(--color-text-light)}.day-card .day-header{font-weight:600;margin-bottom:var(--space-xs)}.day-card .day-date{font-size:.8rem;color:var(--color-text-muted);margin-bottom:var(--space-sm)}.day-card .day-slots{display:flex;flex-direction:column;gap:var(--space-xs)}.slot-btn{display:block;width:100%;padding:8px 12px;border-radius:var(--radius-sm);font-size:.85rem;font-weight:500;transition:all var(--transition);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.slot-btn.available:hover{border-color:var(--color-primary);background:var(--color-primary-bg);color:var(--color-primary-dark)}.slot-btn.booked{background:var(--color-surface-alt);color:var(--color-text-light);cursor:not-allowed;text-decoration:line-through}.slot-btn.today{border-color:var(--color-primary-light)}.article-card{display:flex;flex-direction:column;height:100%;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition)}.article-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-md);transform:translateY(-2px)}.article-card-body{padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm);flex:1}.article-card-body h3{font-size:1.05rem;line-height:1.4}.article-card-body h3 a{color:var(--color-text)}.article-card-body h3 a:hover{color:var(--color-primary-dark)}.article-card .article-meta{display:flex;align-items:center;gap:var(--space-sm);font-size:.8rem;color:var(--color-text-muted);margin-top:auto}.article-card .article-summary{font-size:.9rem;color:var(--color-text-muted);line-height:1.6}.article-detail{max-width:760px;margin:0 auto}.article-detail .article-header{margin-bottom:var(--space-lg);padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border)}.article-detail .article-header h1{font-size:clamp(1.3rem,4vw,1.85rem);line-height:1.4;margin-bottom:var(--space-md)}.article-detail .article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);font-size:.85rem;color:var(--color-text-muted)}.article-body p{margin-bottom:var(--space-md);line-height:1.8;font-size:1rem}.article-body h2{font-size:1.2rem;font-weight:700;margin:var(--space-lg) 0 var(--space-sm)}.article-body ul.bullet-list{list-style:none;margin-bottom:var(--space-md);padding-left:var(--space-sm)}.article-body ul.bullet-list li{position:relative;padding-left:var(--space-lg);margin-bottom:var(--space-xs);line-height:1.7}.article-body ul.bullet-list li:before{content:"•";position:absolute;left:var(--space-sm);color:var(--color-primary);font-weight:700}.announcement-item{display:flex;gap:var(--space-md);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition);align-items:flex-start}.announcement-item:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-sm)}.announcement-item .announcement-icon{flex-shrink:0;font-size:1.5rem;margin-top:2px}.announcement-item .announcement-body{flex:1;min-width:0}.announcement-item .announcement-body h3{font-size:1.05rem;margin-bottom:var(--space-xs)}.announcement-item .announcement-body h3 a{color:var(--color-text)}.announcement-item .announcement-body h3 a:hover{color:var(--color-primary-dark)}.announcement-item .announcement-meta{display:flex;align-items:center;gap:var(--space-sm);font-size:.8rem;color:var(--color-text-muted)}.booking-stepper{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:var(--space-xl);flex-wrap:wrap}.step{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-light);font-size:.85rem}.step .step-num{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--color-surface-alt);color:var(--color-text-light);font-weight:600;font-size:.85rem;border:2px solid var(--color-border-strong)}.step.active .step-num{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.step.active{color:var(--color-primary-dark);font-weight:600}.step.completed .step-num{background:var(--color-success);color:#fff;border-color:var(--color-success)}.step.completed{color:var(--color-success)}.step-divider{width:24px;height:2px;background:var(--color-border-strong);margin:0 var(--space-sm)}@media (max-width: 639px){.step-divider{display:none}.booking-stepper{gap:var(--space-sm)}}.booking-summary{background:var(--color-primary-bg);border:1px solid var(--color-primary-border);border-radius:var(--radius-lg);padding:var(--space-md);margin-bottom:var(--space-lg)}.booking-summary h4{font-size:.85rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm)}.booking-summary .summary-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-xs) 0;font-size:.9rem}.booking-summary .summary-row .label{color:var(--color-text-muted)}.booking-summary .summary-row .value{font-weight:500;color:var(--color-text)}.appointment-card{display:flex;flex-direction:column;gap:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md);transition:all var(--transition)}.appointment-card:hover{box-shadow:var(--shadow-md)}.appointment-card .appt-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm)}.appointment-card .appt-doctor{display:flex;gap:var(--space-sm);align-items:center}.appointment-card .appt-info{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm);font-size:.9rem;padding:var(--space-sm) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.appointment-card .appt-info .info-label{color:var(--color-text-muted);font-size:.8rem;display:block;margin-bottom:2px}.appointment-card .appt-actions{display:flex;gap:var(--space-sm)}.hero{position:relative;background:linear-gradient(135deg,#0f766e,#0d9488,#14b8a6);color:#fff;overflow:hidden}.hero:before{content:"";position:absolute;top:-50%;right:-10%;width:60%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);pointer-events:none}.hero-content{position:relative;z-index:1;max-width:var(--container-max);margin:0 auto;padding:var(--space-2xl) var(--space-md);display:grid;grid-template-columns:1fr;gap:var(--space-xl);align-items:center}@media (min-width: 768px){.hero-content{grid-template-columns:1.2fr 1fr;padding:var(--space-2xl) var(--space-lg)}}.hero-text h1{font-size:clamp(1.75rem,5vw,2.75rem);font-weight:700;line-height:1.2;margin-bottom:var(--space-md)}.hero-text p{font-size:clamp(1rem,2vw,1.15rem);opacity:.9;line-height:1.7;margin-bottom:var(--space-lg);max-width:500px}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.hero-actions .btn{min-width:160px}.hero-actions .btn-primary{background:#fff;color:var(--color-primary-dark)}.hero-actions .btn-primary:hover{background:#f0fdfa;color:var(--color-primary-dark)}.hero-actions .btn-secondary{background:transparent;color:#fff;border-color:#fff6}.hero-actions .btn-secondary:hover{background:#ffffff1a;border-color:#ffffffb3;color:#fff}.hero-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.hero-stat{background:#ffffff1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-lg);padding:var(--space-md);text-align:center}.hero-stat .stat-num{font-size:clamp(1.5rem,4vw,2.25rem);font-weight:700}.hero-stat .stat-label{font-size:.85rem;opacity:.85}.quick-access{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}@media (min-width: 640px){.quick-access{grid-template-columns:repeat(4,1fr)}}.quick-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-lg) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-align:center;transition:all var(--transition);color:var(--color-text)}.quick-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-3px);color:var(--color-primary-dark)}.quick-card .quick-icon{font-size:2rem}.quick-card .quick-label{font-size:.9rem;font-weight:500}.dept-card{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition);height:100%;color:var(--color-text)}.dept-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-md);transform:translateY(-2px);color:var(--color-text)}.dept-card-header{display:flex;align-items:center;gap:var(--space-sm)}.dept-card .dept-icon{font-size:2rem;line-height:1}.dept-card h3{font-size:1.05rem}.dept-card p{font-size:.85rem;color:var(--color-text-muted);line-height:1.6}.dept-card .dept-meta{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:var(--space-sm);border-top:1px solid var(--color-border);font-size:.8rem;color:var(--color-text-muted)}.result-card{max-width:540px;margin:0 auto;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl) var(--space-lg)}.result-card .result-icon{font-size:4rem;margin-bottom:var(--space-md)}.result-card h2{font-size:1.5rem;margin-bottom:var(--space-sm)}.result-card .result-detail{background:var(--color-surface-alt);border-radius:var(--radius-md);padding:var(--space-md);margin:var(--space-lg) 0;text-align:left}.result-card .result-detail .detail-row{display:flex;justify-content:space-between;padding:var(--space-xs) 0;font-size:.9rem;border-bottom:1px dashed var(--color-border)}.result-card .result-detail .detail-row:last-child{border-bottom:none}.result-card .result-detail .detail-label{color:var(--color-text-muted)}.result-card .result-detail .detail-value{font-weight:500;text-align:right}.result-card .result-actions{display:flex;gap:var(--space-sm);justify-content:center;flex-wrap:wrap}.guide-section{margin-bottom:var(--space-xl)}.guide-section h2{font-size:1.25rem;font-weight:700;margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:2px solid var(--color-primary-border);display:flex;align-items:center;gap:var(--space-sm)}.guide-section h2 .guide-icon{font-size:1.5rem}.guide-steps{display:grid;gap:var(--space-sm)}.guide-step{display:flex;gap:var(--space-md);align-items:flex-start;padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.guide-step .step-num{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--color-primary);color:#fff;font-weight:700;font-size:.95rem}.guide-step .step-content h4{font-size:1rem;margin-bottom:var(--space-xs)}.guide-step .step-content p{font-size:.9rem;color:var(--color-text-muted);line-height:1.6}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.mt-0{margin-top:0}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}@media (max-width: 639px){.schedule-item{flex-wrap:wrap}.schedule-item .schedule-slot{width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-sm);border-top:1px dashed var(--color-border)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
