.hero-section{width:100%;min-height:80vh;padding:var(--space-20)var(--space-4);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero-content{text-align:center;align-items:center;gap:var(--space-6);will-change:transform,opacity;flex-direction:column;max-width:587px;margin:0 auto;display:flex}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.hero-title{font-family:var(--font-primary);font-size:clamp(36px,8vw,80px);font-weight:var(--font-weight-medium);font-optical-sizing:auto;letter-spacing:-.06em;color:var(--color-text-primary);opacity:0;will-change:transform,opacity;margin:0;line-height:.95;animation:.8s ease-out forwards heroFadeIn}.hero-description{font-family:var(--font-primary);font-size:clamp(16px,2.5vw,20px);font-weight:var(--font-weight-normal);font-optical-sizing:auto;line-height:var(--line-height-normal);color:var(--color-text-primary);opacity:0;will-change:transform,opacity;max-width:100%;margin:0;animation:.8s ease-out .2s forwards heroFadeInDescription}@keyframes heroFadeInDescription{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:.8;transform:translateY(0)scale(1)}}.hero-phones{justify-content:center;align-items:flex-end;gap:var(--space-4);margin-top:var(--space-20);width:100%;min-height:500px;display:flex;position:relative}.hero-phone{aspect-ratio:224/480;border-radius:var(--radius-2xl);width:clamp(180px,25vw,224px);height:clamp(360px,50vw,480px);box-shadow:var(--shadow-2xl);background-color:var(--color-bg-white);transition:transform var(--transition-slow);flex-shrink:0;position:relative;overflow:hidden}.hero-phone img{-o-object-position:center;object-position:center;width:100%;height:100%;display:block}.hero-phone[data-position=left]{z-index:10;position:absolute;top:-260px;left:0}.hero-phone[data-position=center]{z-index:20;position:relative;top:-40px}.hero-phone[data-position=right]{z-index:10;position:absolute;top:-260px;right:0}.hero-buttons{gap:var(--space-4);margin-top:var(--space-6);opacity:0;will-change:transform,opacity;flex-wrap:wrap;justify-content:center;animation:.8s ease-out .4s forwards heroFadeIn;display:flex}.hero-stats{gap:var(--space-4);margin-top:var(--space-16);grid-template-columns:repeat(2,1fr);max-width:512px;margin-left:auto;margin-right:auto;display:grid}@media (width>=768px){.hero-stats{grid-template-columns:repeat(4,1fr)}}.hero-stat{text-align:center}.hero-stat-icon{margin-bottom:var(--space-2);justify-content:center;display:flex}.hero-stat-value{font-family:var(--font-primary);font-size:var(--text-3xl);font-weight:var(--font-weight-bold);background:linear-gradient(135deg,var(--color-blue-400)0%,var(--color-blue-600)100%);-webkit-text-fill-color:transparent;background-clip:text;margin:0}.hero-stat-label{font-family:var(--font-primary);font-size:var(--text-sm);font-weight:var(--font-weight-normal);color:var(--color-text-muted);margin-top:var(--space-1)}@media (width<=1024px){.hero-phones{gap:var(--space-3)}.hero-phone[data-position=center]{margin-top:-24px}}@media (width<=768px){.hero-section{min-height:auto;padding:var(--space-12)var(--space-4)}.hero-content{gap:var(--space-4);max-width:100%}.hero-buttons{margin-top:var(--space-4)}.hero-phones{margin-top:var(--space-12);gap:0;min-height:400px}.hero-phone[data-position=left],.hero-phone[data-position=right]{display:none}.hero-phone[data-position=center]{aspect-ratio:224/480;width:min(280px,85vw);max-width:85vw;height:auto;margin-top:0}.hero-stats{gap:var(--space-3);margin-top:var(--space-12);grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.hero-section{padding:var(--space-8)var(--space-4)}.hero-content{gap:var(--space-3)}.hero-phone[data-position=center]{width:min(240px,90vw);max-width:90vw}.hero-stats{gap:var(--space-2);grid-template-columns:repeat(2,1fr)}.hero-stat-value{font-size:var(--text-2xl)}}@media (prefers-reduced-motion:reduce){.hero-phone{transition:none}.hero-phone:hover{transform:none}.hero-title,.hero-description,.hero-buttons{opacity:1;animation:none}.hero-description{opacity:.8}}.health-page{background:linear-gradient(to bottom right,var(--color-bg-muted),var(--color-bg-white),#ecfeff);min-height:100vh}.health-hero{background:linear-gradient(to right,var(--color-primary),#0891b2,var(--color-primary-dark));color:var(--color-text-inverse);position:relative;overflow:hidden}.health-hero:before{content:"";opacity:.2;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PHBhdHRlcm4gaWQ9ImdyaWQiIHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHBhdGggZD0iTSAxMCAwIEwgMCAwIDAgMTAiIGZpbGw9Im5vbmUiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMC41IiBvcGFjaXR5PSIwLjEiLz48L3BhdHRlcm4+PC9kZWZzPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JpZCkiLz48L3N2Zz4=);position:absolute;inset:0}.health-hero-content{max-width:1280px;padding:var(--space-2xl)var(--space-lg);text-align:center;margin:0 auto;position:relative}.health-hero-badge{align-items:center;gap:var(--space-xs);backdrop-filter:blur(8px);padding:var(--space-xs)var(--space-md);border-radius:var(--radius-full);margin-bottom:var(--space-lg);background-color:#ffffff1a;border:1px solid #fff3;display:inline-flex}.health-hero-badge-icon{font-size:var(--text-2xl)}.health-hero-badge-text{font-size:var(--text-sm);font-weight:var(--font-semibold)}.health-hero-title{font-size:3rem;font-weight:var(--font-bold);margin-bottom:var(--space-md);letter-spacing:-.025em}.health-hero-subtitle{font-size:var(--text-xl);color:#bfdbfe;max-width:42rem;margin:0 auto var(--space-xl)}.health-hero-action{align-items:center;gap:var(--space-xs);padding:var(--space-md)var(--space-xl);background-color:var(--color-bg-white);color:var(--color-primary);border-radius:var(--radius-lg);font-weight:var(--font-semibold);box-shadow:var(--shadow-2xl);transition:all var(--transition-base);font-size:var(--text-lg);min-height:44px;text-decoration:none;display:inline-flex}.health-hero-action:hover{background-color:var(--color-primary-light);transform:scale(1.05);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.health-content{max-width:1280px;padding:var(--space-2xl)var(--space-lg);margin:0 auto}.health-tabs{background-color:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-bottom:var(--space-xl);border:1px solid var(--color-border-subtle)}.health-tabs-nav{gap:var(--space-md);border-bottom:2px solid var(--color-border-muted);padding:0 var(--space-lg);display:flex}.health-tab-button{padding:var(--space-md)var(--space-lg);font-weight:var(--font-semibold);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base);background:0 0;border:none;border-bottom:4px solid #0000;min-height:44px;margin-bottom:-2px}.health-tab-button:hover{color:var(--color-primary);border-bottom-color:var(--color-border-default)}.health-tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.health-tab-content{padding:var(--space-lg)}.health-metrics-grid{gap:var(--space-lg);margin-bottom:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.health-metric-card{background-color:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border-subtle);padding:var(--space-lg);cursor:pointer;transition:all var(--transition-base)}.health-metric-card:hover{box-shadow:var(--shadow-2xl);transform:scale(1.05)}.health-metric-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.health-metric-icon{color:var(--color-primary);flex-shrink:0;font-size:2.25rem}.health-metric-name{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary)}.health-metric-value-row{align-items:baseline;gap:var(--space-xs);margin-bottom:var(--space-sm);display:flex}.health-metric-value{font-size:2.25rem;font-weight:var(--font-bold);color:var(--color-text-primary)}.health-metric-unit{font-size:var(--text-xl);color:var(--color-text-muted)}.health-metric-status{padding:var(--space-xs)var(--space-sm);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-semibold);border:1px solid;align-items:center;display:inline-flex}.health-metric-status.normal{background-color:var(--color-success-light);color:var(--color-success-dark);border-color:var(--color-success)}.health-metric-status.warning{background-color:var(--color-warning-light);color:var(--color-warning-dark);border-color:var(--color-warning)}.health-metric-status.critical{background-color:var(--color-error-light);color:var(--color-error-dark);border-color:var(--color-error)}.health-data-card{background-color:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border-subtle);padding:var(--space-lg);transition:all var(--transition-base);margin-bottom:var(--space-md)}.health-data-card:hover{box-shadow:var(--shadow-2xl)}.health-data-card-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:start;display:flex}.health-data-card-title-section{flex:1}.health-data-card-icon-title{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs);display:flex}.health-data-card-icon{flex-shrink:0;font-size:2rem}.health-data-card-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0}.health-data-card-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary);margin:var(--space-xs)0}.health-data-card-status{padding:var(--space-xs)var(--space-sm);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);margin-top:var(--space-xs);border:1px solid;align-items:center;display:inline-flex}.health-data-card-status.active{background-color:var(--color-success-light);color:var(--color-success-dark);border-color:var(--color-success)}.health-data-card-status.inactive{background-color:var(--color-bg-muted);color:var(--color-text-secondary);border-color:var(--color-border-muted)}.health-data-card-status.scheduled{background-color:var(--color-success-light);color:var(--color-success-dark);border-color:var(--color-success)}.health-data-card-status.completed{background-color:var(--color-info-light);color:var(--color-info-dark);border-color:var(--color-info)}.health-data-card-status.cancelled{background-color:var(--color-error-light);color:var(--color-error-dark);border-color:var(--color-error)}.health-data-card-status.no_show{background-color:var(--color-warning-light);color:var(--color-warning-dark);border-color:var(--color-warning)}.health-data-card-menu{color:var(--color-text-muted);font-size:var(--text-2xl);padding:var(--space-xs);cursor:pointer;transition:color var(--transition-base);background:0 0;border:none;min-width:44px;min-height:44px}.health-data-card-menu:hover{color:var(--color-text-secondary)}.health-data-details-grid{gap:var(--space-md);margin-bottom:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.health-data-detail{background-color:var(--color-bg-muted);border-radius:var(--radius-md);padding:var(--space-sm)}.health-data-detail-label{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:var(--space-xs);display:block}.health-data-detail-value{font-weight:var(--font-semibold);color:var(--color-text-primary);font-size:var(--text-base)}.health-info-box{background-color:var(--color-info-light);border:1px solid var(--color-info);border-radius:var(--radius-lg);padding:var(--space-md);margin-bottom:var(--space-md)}.health-info-box-label{font-weight:var(--font-semibold);color:var(--color-info-dark);font-size:var(--text-sm)}.health-info-box-text{font-size:var(--text-sm);color:var(--color-text-secondary)}.health-actions{background-color:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border-subtle);padding:var(--space-xl);margin-top:var(--space-xl)}.health-actions-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin-bottom:var(--space-lg)}.health-actions-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.health-action-primary{padding:var(--space-sm)var(--space-lg);background:linear-gradient(to right,var(--color-primary),var(--color-primary-dark));color:var(--color-text-inverse);border-radius:var(--radius-lg);font-weight:var(--font-semibold);box-shadow:var(--shadow-md);transition:all var(--transition-base);cursor:pointer;border:none;min-height:44px}.health-action-primary:hover{background:linear-gradient(to right,var(--color-primary-dark),#075985);box-shadow:var(--shadow-lg);transform:scale(1.05)}.health-action-secondary{padding:var(--space-sm)var(--space-lg);background-color:var(--color-bg-muted);color:var(--color-text-primary);border-radius:var(--radius-lg);font-weight:var(--font-semibold);border:2px solid var(--color-border-muted);transition:all var(--transition-base);cursor:pointer;min-height:44px}.health-action-secondary:hover{background-color:var(--color-border-muted)}.health-action-tertiary{padding:var(--space-sm)var(--space-lg);background-color:var(--color-bg-white);color:var(--color-text-primary);border-radius:var(--radius-lg);font-weight:var(--font-semibold);border:2px solid var(--color-border-default);transition:all var(--transition-base);cursor:pointer;min-height:44px}.health-action-tertiary:hover{background-color:var(--color-bg-muted)}.health-filter-toggle{align-items:center;gap:var(--space-md);margin-bottom:var(--space-xl);display:flex}.health-filter-button{padding:var(--space-sm)var(--space-lg);border-radius:var(--radius-lg);font-weight:var(--font-semibold);transition:all var(--transition-base);box-shadow:var(--shadow-sm);border:2px solid var(--color-border-muted);background-color:var(--color-bg-white);color:var(--color-text-secondary);cursor:pointer;min-height:44px}.health-filter-button.active{background:linear-gradient(to right,var(--color-primary),var(--color-primary-dark));color:var(--color-text-inverse);border-color:var(--color-primary);box-shadow:var(--shadow-md)}.health-filter-button:hover:not(.active){background-color:var(--color-bg-muted)}.health-loading{background:linear-gradient(to bottom right,var(--color-bg-muted),var(--color-bg-white),#ecfeff);min-height:100vh;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.health-loading-content{text-align:center}.health-loading-spinner{border-radius:var(--radius-full);background:linear-gradient(to bottom right,#60a5fa,var(--color-primary));width:80px;height:80px;color:var(--color-text-inverse);margin-bottom:var(--space-md);box-shadow:var(--shadow-lg);justify-content:center;align-items:center;font-size:2.25rem;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse;display:inline-flex}.health-loading-text{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-primary)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.health-error{background:linear-gradient(to bottom right,var(--color-bg-muted),var(--color-bg-white),#ecfeff);min-height:100vh;padding:var(--space-lg)}.health-error-container{max-width:42rem;margin:3rem auto 0}.health-error-content{background-color:var(--color-error-light);border-left:4px solid var(--color-error);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-2xl);text-align:center}.health-error-icon{margin-bottom:var(--space-md);font-size:4rem}.health-error-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-error-dark);margin-bottom:var(--space-md)}.health-error-message{color:var(--color-error-dark);margin-bottom:var(--space-lg);line-height:1.75}.health-error-action{padding:var(--space-sm)var(--space-xl);background:linear-gradient(to right,var(--color-primary),var(--color-primary-dark));color:var(--color-text-inverse);border-radius:var(--radius-lg);font-weight:var(--font-semibold);box-shadow:var(--shadow-md);transition:all var(--transition-base);cursor:pointer;border:none;min-height:44px}.health-error-action:hover{background:linear-gradient(to right,var(--color-primary-dark),#075985);transform:scale(1.05)}.health-empty{background-color:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border-subtle);padding:var(--space-2xl);text-align:center}.health-empty-icon{margin-bottom:var(--space-md);font-size:4rem}.health-empty-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin-bottom:var(--space-xs)}.health-empty-message{color:var(--color-text-secondary);margin-bottom:var(--space-lg);max-width:28rem;margin-left:auto;margin-right:auto}.health-empty-action{padding:var(--space-sm)var(--space-xl);background:linear-gradient(to right,var(--color-primary),var(--color-primary-dark));color:var(--color-text-inverse);border-radius:var(--radius-lg);font-weight:var(--font-semibold);box-shadow:var(--shadow-md);transition:all var(--transition-base);cursor:pointer;border:none;min-height:44px;line-height:2.5;text-decoration:none;display:inline-block}.health-empty-action:hover{box-shadow:var(--shadow-lg);transform:scale(1.05)}.health-tip{background:linear-gradient(to right,#ecfeff,var(--color-info-light));border-left:4px solid var(--color-info);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-lg);margin-top:var(--space-xl)}.health-tip-title{color:var(--color-info-dark);font-weight:var(--font-bold);font-size:var(--text-lg);margin-bottom:var(--space-sm);align-items:center;gap:var(--space-xs);display:flex}.health-tip-icon{font-size:var(--text-2xl)}.health-tip-text{color:var(--color-text-secondary);line-height:1.75}.health-tip-checklist{margin-top:var(--space-md);gap:var(--space-xs);flex-direction:column;display:flex}.health-tip-checklist-title{font-weight:var(--font-semibold);color:var(--color-info-dark);font-size:var(--text-sm);margin-bottom:var(--space-xs)}.health-tip-checklist-item{align-items:start;gap:var(--space-xs);color:var(--color-text-secondary);font-size:var(--text-sm);display:flex}.health-tip-checklist-icon{color:var(--color-info);margin-top:2px}.health-chart-container{background-color:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border-subtle);padding:var(--space-xl);margin-bottom:var(--space-xl)}.health-chart-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text-primary);margin-bottom:var(--space-lg)}.health-chart-wrapper{background-color:var(--color-bg-muted);border-radius:var(--radius-lg);padding:var(--space-lg)}.health-summary-grid{gap:var(--space-lg);margin-bottom:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.health-summary-card{background-color:var(--color-bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border-subtle);padding:var(--space-lg);transition:all var(--transition-base)}.health-summary-card:hover{box-shadow:var(--shadow-2xl)}.health-summary-label{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.health-summary-value{font-size:1.875rem;font-weight:var(--font-bold);color:var(--color-text-primary)}.health-summary-value.success{color:var(--color-success)}.health-summary-value.warning{color:var(--color-warning)}.health-summary-value.error{color:var(--color-error)}.health-appointment-actions{gap:var(--space-xs);display:flex}.health-appointment-action-primary,.health-appointment-action-secondary,.health-appointment-action-danger{padding:var(--space-xs)var(--space-md);border-radius:var(--radius-lg);font-weight:var(--font-medium);transition:all var(--transition-base);font-size:var(--text-sm);cursor:pointer;text-align:center;border:2px solid;flex:1;min-height:44px;line-height:2.2;text-decoration:none;display:block}.health-appointment-action-primary{background:linear-gradient(to right,var(--color-primary),var(--color-primary-dark));color:var(--color-text-inverse);border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.health-appointment-action-primary:hover{box-shadow:var(--shadow-md)}.health-appointment-action-secondary{background-color:var(--color-bg-muted);color:var(--color-text-primary);border-color:var(--color-border-muted)}.health-appointment-action-secondary:hover{background-color:var(--color-border-muted)}.health-appointment-action-danger{background-color:var(--color-error-light);color:var(--color-error-dark);border-color:var(--color-error)}.health-appointment-action-danger:hover{background-color:#fecaca}@media (width<=810px){.health-hero-title{font-size:var(--text-3xl)}.health-hero-subtitle{font-size:var(--text-base)}.health-metrics-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.health-data-details-grid{grid-template-columns:repeat(2,1fr)}.health-actions-grid{grid-template-columns:1fr}.health-summary-grid{grid-template-columns:repeat(2,1fr)}.health-tabs-nav{gap:var(--space-xs)}.health-tab-button{font-size:var(--text-xs);padding:var(--space-sm)var(--space-md)}}@media (width<=480px){.health-hero-content{padding:var(--space-xl)var(--space-md)}.health-content{padding:var(--space-lg)var(--space-md)}.health-summary-grid,.health-data-details-grid{grid-template-columns:1fr}.health-appointment-actions{flex-direction:column}}.diabetes-risk-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:100vh;padding:2rem 1rem}.diabetes-risk-container{background:#fff;border-radius:16px;max-width:800px;margin:0 auto;overflow:hidden;box-shadow:0 20px 60px #0000004d}.diabetes-risk-header{color:#fff;text-align:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:2rem}.diabetes-risk-header h1{margin:0 0 .5rem;font-size:2rem;font-weight:700}.diabetes-risk-header p{opacity:.9;margin:0;font-size:1rem}.progress-steps{justify-content:center;align-items:center;gap:1rem;margin-top:2rem;display:flex}.step{opacity:.5;flex-direction:column;align-items:center;transition:opacity .3s;display:flex}.step.active{opacity:1}.step-number{background:#ffffff4d;border:2px solid #ffffff80;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:.5rem;font-size:1.1rem;font-weight:700;display:flex}.step.active .step-number{color:#667eea;background:#fff;border-color:#fff}.step-label{white-space:nowrap;font-size:.85rem}.progress-line{background:#ffffff4d;flex:1;max-width:80px;height:2px}.error-message{color:#c33;background:#fee;border:2px solid #c33;border-radius:8px;margin:1.5rem;padding:1rem}.error-message strong{margin-bottom:.5rem;display:block}.assessment-form{padding:2rem}.assessment-form h2{color:#333;margin:0 0 .5rem;font-size:1.5rem}.form-note{color:#666;margin-bottom:2rem;font-size:.95rem;line-height:1.5}.form-group input,.form-group select{border:2px solid #ddd;border-radius:8px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus{border-color:#667eea;outline:none}.form-group input:disabled{cursor:not-allowed;background:#f5f5f5}.form-group input.calculated-field{color:#667eea;background:#f0f4ff;font-weight:600}.form-group small{color:#666;margin-top:.5rem;font-size:.85rem;line-height:1.4;display:block}.checkbox-group{margin-bottom:1.5rem}.checkbox-group label{cursor:pointer;border-radius:8px;align-items:center;padding:.75rem;transition:background .2s;display:flex}.checkbox-group label:hover{background:#f5f5f5}.checkbox-group input[type=checkbox]{cursor:pointer;width:auto;margin-right:.75rem;transform:scale(1.2)}.checkbox-group span{color:#333;font-weight:500}.form-actions{border-top:1px solid #eee;gap:1rem;margin-top:2rem;padding-top:2rem;display:flex}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:8px;flex:1;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s}.btn-primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{color:#333;background:#f5f5f5}.btn-secondary:hover{background:#e5e5e5}.assessment-results{padding:2rem}.assessment-results h2{color:#333;text-align:center;margin:0 0 2rem;font-size:1.75rem}.risk-score{border-radius:12px;align-items:center;gap:2rem;margin-bottom:2rem;padding:2rem;display:flex}.risk-score.risk-low{color:#fff;background:linear-gradient(135deg,#11998e 0%,#38ef7d 100%)}.risk-score.risk-moderate{color:#fff;background:linear-gradient(135deg,#f2994a 0%,#f2c94c 100%)}.risk-score.risk-high{color:#fff;background:linear-gradient(135deg,#eb3349 0%,#f45c43 100%)}.score-circle{background:#fff3;border:4px solid #fff6;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:120px;height:120px;display:flex}.score-value{font-size:2.5rem;font-weight:700;line-height:1}.score-label{opacity:.9;margin-top:.25rem;font-size:.85rem}.risk-info{flex:1}.risk-info h3{margin:0 0 .5rem;font-size:1.5rem;font-weight:700}.risk-info p{opacity:.95;margin:0;line-height:1.5}.recommendations-section{margin-bottom:2rem}.recommendations-section h3{color:#333;margin:0 0 1rem;font-size:1.25rem}.recommendations-list{margin:0;padding:0;list-style:none}.recommendations-list li{background:#f0f4ff;border-left:4px solid #667eea;border-radius:4px;margin-bottom:.75rem;padding:1rem;line-height:1.6}.modifiable-factors-section{margin-bottom:2rem}.modifiable-factors-section h3{color:#333;margin:0 0 1rem;font-size:1.25rem}.factors-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.factor-card{background:#fff;border:2px solid #eee;border-radius:8px;padding:1.25rem;transition:all .3s}.factor-card:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea26}.factor-card h4{color:#667eea;margin:0 0 .75rem;font-size:1.1rem}.factor-card .impact{color:#666;margin-bottom:.5rem;font-size:.9rem;font-weight:600}.factor-card .recommendation{color:#333;font-size:.95rem;line-height:1.5}.results-actions{border-top:1px solid #eee;flex-direction:column;gap:1rem;margin-top:2rem;padding-top:2rem;display:flex}.results-actions button{width:100%}@media (width<=768px){.diabetes-risk-page{padding:1rem .5rem}.diabetes-risk-header{padding:1.5rem 1rem}.diabetes-risk-header h1{font-size:1.5rem}.assessment-form,.assessment-results{padding:1.5rem}.risk-score{text-align:center;flex-direction:column;gap:1rem}.factors-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.progress-steps{gap:.5rem}.step-label{font-size:.75rem}.progress-line{max-width:40px}}.stopbang-assessment-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:100vh;padding:2rem 1rem}.stopbang-container{max-width:900px;margin:0 auto}.stopbang-header{text-align:center;background:#fffffff2;border-radius:20px;margin-bottom:2rem;padding:2rem;box-shadow:0 10px 40px #0000001a}.stopbang-header h1{color:#2d3748;margin-bottom:.5rem;font-size:2rem;font-weight:700}.stopbang-header p{color:#718096;margin-bottom:2rem;font-size:1rem}.progress-steps{justify-content:center;align-items:center;margin-top:2rem;display:flex}.step{flex-direction:column;align-items:center;gap:.5rem;display:flex}.step-number{color:#718096;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.1rem;font-weight:600;transition:all .3s;display:flex}.step.active .step-number{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);transform:scale(1.1)}.step-label{color:#718096;font-size:.875rem;font-weight:500}.step.active .step-label{color:#667eea;font-weight:600}.progress-line{background:#e2e8f0;width:60px;height:2px;margin:0 .5rem}.assessment-step{background:#fffffff2;border-radius:20px;margin-bottom:2rem;padding:2rem;box-shadow:0 10px 40px #0000001a}.assessment-step h2{color:#2d3748;margin-bottom:.5rem;font-size:1.75rem;font-weight:700}.step-intro{color:#718096;margin-bottom:2rem}.question-card{background:#f7fafc;border:2px solid #0000;border-radius:16px;margin-bottom:1.5rem;padding:1.5rem;transition:all .3s}.question-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26}.question-header{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.question-letter{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.5rem;font-weight:700;display:flex}.question-header h3{color:#2d3748;margin:0;font-size:1.25rem;font-weight:600}.question-text{color:#4a5568;margin-bottom:1.5rem;font-size:1.05rem;line-height:1.6}.answer-buttons{gap:1rem;display:flex}.answer-btn{color:#4a5568;cursor:pointer;background:#fff;border:2px solid #cbd5e0;border-radius:12px;flex:1;padding:1rem 2rem;font-size:1.1rem;font-weight:600;transition:all .3s}.answer-btn:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.answer-btn.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#667eea}.input-group{flex-direction:column;gap:.5rem;display:flex}.input-group label{color:#4a5568;font-size:.95rem;font-weight:600}.input-group input{border:2px solid #cbd5e0;border-radius:8px;padding:.75rem 1rem;font-size:1rem;transition:border-color .3s}.input-group input:focus{border-color:#667eea;outline:none}.input-group small{color:#718096;font-size:.875rem}.bmi-indicator,.age-indicator,.neck-indicator{color:#48bb78;font-weight:600}.help-text{color:#718096;margin-top:.5rem;font-size:.875rem;display:block}.score-preview{text-align:center;background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border-radius:12px;margin-top:2rem;padding:1.5rem}.score-preview h3{color:#667eea;margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.score-preview p{color:#718096}.results-section{background:#fffffff2;border-radius:20px;padding:2rem;box-shadow:0 10px 40px #0000001a}.risk-banner{border-radius:16px;align-items:center;gap:2rem;margin-bottom:2rem;padding:2rem;display:flex}.risk-banner.risk-low{color:#fff;background:linear-gradient(135deg,#48bb78 0%,#38a169 100%)}.risk-banner.risk-intermediate{color:#fff;background:linear-gradient(135deg,#ed8936 0%,#dd6b20 100%)}.risk-banner.risk-high{color:#fff;background:linear-gradient(135deg,#f56565 0%,#e53e3e 100%)}.risk-icon{font-size:4rem;line-height:1}.risk-info h2{margin-bottom:.5rem;font-size:2rem;font-weight:700}.risk-score{opacity:.95;margin-bottom:.25rem;font-size:1.25rem;font-weight:600}.risk-percentage{opacity:.9;font-size:1.1rem}.recommendation-card,.modifications-card,.education-section{background:#f7fafc;border-radius:16px;margin-bottom:1.5rem;padding:1.5rem}.recommendation-card h3,.modifications-card h3,.education-section h3{color:#2d3748;margin-bottom:1rem;font-size:1.5rem;font-weight:700}.recommendation-card p{color:#4a5568;margin-bottom:1.5rem;font-size:1.1rem;line-height:1.6}.urgent-action{text-align:center;margin-top:1.5rem}.btn-urgent{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f56565 0%,#e53e3e 100%);border:none;border-radius:12px;padding:1rem 2rem;font-size:1.1rem;font-weight:600;transition:all .3s;box-shadow:0 4px 12px #f565654d}.btn-urgent:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f5656566}.modifications-list{margin:0;padding:0;list-style:none}.modifications-list li{color:#4a5568;background:#fff;border-left:4px solid #667eea;border-radius:8px;margin-bottom:.5rem;padding:.75rem 1rem}.modifications-list li:before{content:"✓ ";color:#48bb78;margin-right:.5rem;font-weight:700}.education-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem;display:grid}.edu-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.25rem;transition:all .3s}.edu-card:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea26}.edu-card h4{color:#667eea;margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.edu-card p{color:#718096;margin:0;font-size:.95rem;line-height:1.5}.navigation-buttons,.results-actions{justify-content:flex-end;gap:1rem;margin-top:2rem;display:flex}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:12px;padding:1rem 2rem;font-size:1.05rem;font-weight:600;transition:all .3s}.btn-primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);box-shadow:0 4px 12px #667eea4d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-secondary{color:#4a5568;background:#fff;border:2px solid #cbd5e0}.btn-secondary:hover:not(:disabled){color:#667eea;border-color:#667eea}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.disclaimer{color:#742a2a;background:#fff5f5;border:2px solid #feb2b2;border-radius:12px;margin-top:2rem;padding:1rem;font-size:.95rem;line-height:1.6}.disclaimer strong{color:#c53030}@media (width<=768px){.stopbang-assessment-page{padding:1rem .5rem}.stopbang-header,.assessment-step,.results-section{padding:1.5rem}.stopbang-header h1{font-size:1.5rem}.progress-steps{padding-bottom:1rem;overflow-x:auto}.progress-line{width:40px}.step-label{font-size:.75rem}.answer-buttons{flex-direction:column}.education-grid{grid-template-columns:1fr}.risk-banner{text-align:center;flex-direction:column}.risk-icon{font-size:3rem}.navigation-buttons,.results-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.playback-loading{color:#cbd5e1;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:400px;display:flex}.loading-spinner{border:3px solid #3b82f633;border-top-color:#3b82f6;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.playback-interface{color:#f1f5f9;background:#0f172a;height:100vh;display:flex}.playback-video-container{background:#000;flex:1;justify-content:center;align-items:center;display:flex;position:relative}.playback-video{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.playback-buffering{z-index:10;background:#0000004d;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.playback-controls-overlay{opacity:0;z-index:5;background:linear-gradient(#0009 0%,#0000 20% 80%,#000c 100%);flex-direction:column;justify-content:space-between;transition:opacity .3s;display:flex;position:absolute;inset:0}.playback-controls-overlay.visible{opacity:1}.playback-top-bar{justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.playback-title{color:#f1f5f9;font-size:16px;font-weight:600}.playback-top-actions{gap:8px;display:flex}.playback-action-btn{color:#cbd5e1;cursor:pointer;background:#1e293bcc;border:1px solid #47556980;border-radius:8px;padding:8px;transition:all .2s}.playback-action-btn:hover{color:#f1f5f9;background:#334155cc}.playback-bottom-controls{padding:0 24px 20px}.playback-timeline{cursor:pointer;width:100%;height:32px;margin-bottom:16px;padding:12px 0;position:relative}.timeline-track{background:#64748b80;border-radius:2px;width:100%;height:4px;position:relative;overflow:visible}.timeline-progress{background:linear-gradient(90deg,#3b82f6 0%,#2563eb 100%);border-radius:2px;height:100%;transition:width .1s linear;position:absolute;top:0;left:0}.timeline-progress:after{content:"";background:#3b82f6;border-radius:50%;width:12px;height:12px;position:absolute;top:50%;right:-6px;transform:translateY(-50%);box-shadow:0 2px 8px #3b82f680}.playback-timeline:hover .timeline-track{height:6px}.playback-timeline:hover .timeline-progress:after{width:16px;height:16px;right:-8px}.timeline-marker{cursor:pointer;background:#f59e0b;width:3px;height:100%;transition:all .2s;position:absolute;top:0;transform:translate(-50%)}.timeline-marker:hover{z-index:10;width:5px}.timeline-tooltip{color:#f1f5f9;white-space:nowrap;pointer-events:none;z-index:20;background:#0f172af2;border:1px solid #47556980;border-radius:6px;margin-bottom:8px;padding:6px 10px;font-size:12px;font-weight:600;position:absolute;bottom:100%;transform:translate(-50%)}.playback-control-buttons{align-items:center;gap:16px;display:flex}.playback-time{color:#cbd5e1;min-width:100px;font-family:SF Mono,Courier New,monospace;font-size:14px}.playback-btn{color:#f1f5f9;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex;position:relative}.playback-btn:hover{background:#33415580;transform:scale(1.1)}.playback-btn:active{transform:scale(.95)}.playback-btn-play{background:#3b82f633;border:2px solid #3b82f680;padding:12px}.playback-btn-play:hover{background:#3b82f64d;border-color:#3b82f6b3}.skip-label{color:#93c5fd;font-size:9px;font-weight:700;position:absolute;bottom:2px;right:2px}.playback-speed-control{position:relative}.playback-speed-menu{background:#0f172afa;border:1px solid #47556980;border-radius:8px;min-width:80px;margin-bottom:8px;padding:8px;position:absolute;bottom:100%;left:50%;transform:translate(-50%);box-shadow:0 10px 25px #0000004d}.speed-option{text-align:center;color:#cbd5e1;cursor:pointer;background:0 0;border:none;border-radius:6px;width:100%;padding:8px 12px;font-family:SF Mono,Courier New,monospace;font-size:14px;transition:all .15s;display:block}.speed-option:hover{color:#f1f5f9;background:#334155cc}.speed-option.active{color:#93c5fd;background:#3b82f633;font-weight:700}.playback-volume-control{align-items:center;gap:8px;display:flex}.volume-slider{appearance:none;cursor:pointer;background:#64748b80;border-radius:2px;outline:none;width:80px;height:4px}.volume-slider::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#3b82f6;border-radius:50%;width:12px;height:12px}.volume-slider::-moz-range-thumb{cursor:pointer;background:#3b82f6;border:none;border-radius:50%;width:12px;height:12px}.playback-annotation-sidebar{background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);border-left:1px solid #47556980;flex-direction:column;width:360px;display:flex;overflow:hidden}.annotation-sidebar-header{border-bottom:1px solid #4755694d;justify-content:space-between;align-items:center;padding:20px;display:flex}.annotation-sidebar-header h3{color:#f1f5f9;margin:0;font-size:18px;font-weight:600}.annotation-list{flex:1;padding:16px;overflow-y:auto}.annotation-empty{text-align:center;color:#64748b;padding:40px 20px}.annotation-empty p{margin:0 0 8px}.annotation-empty-hint{color:#475569;font-size:13px}.annotation-item{cursor:pointer;background:#1e293b80;border:1px solid #4755694d;border-radius:12px;margin-bottom:12px;padding:16px;transition:all .2s}.annotation-item:hover{background:#1e293bcc;border-color:#64748b80;transform:translate(4px)}.annotation-item.selected{background:#3b82f61a;border-color:#3b82f680}.annotation-item-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.annotation-type-badge{text-transform:uppercase;letter-spacing:.05em;color:#fff;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:600}.annotation-time{color:#94a3b8;font-family:SF Mono,Courier New,monospace;font-size:12px}.annotation-title{color:#e2e8f0;margin:0 0 8px;font-size:14px;font-weight:600}.annotation-content{color:#cbd5e1;margin:0 0 8px;font-size:13px;line-height:1.5}.annotation-tags{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.annotation-tag{color:#94a3b8;background:#64748b4d;border-radius:4px;padding:3px 8px;font-size:11px}.annotation-jump-btn{color:#93c5fd;cursor:pointer;background:#3b82f633;border:1px solid #3b82f64d;border-radius:6px;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.annotation-jump-btn:hover{background:#3b82f64d;border-color:#3b82f680}.playback-error{color:#fff;z-index:9999;background:#ef4444f2;border:1px solid #dc262680;border-radius:12px;align-items:center;gap:12px;padding:16px 20px;font-size:14px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 10px 30px #0000004d}.annotation-editor-overlay{backdrop-filter:blur(4px);z-index:9999;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.annotation-editor{background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);border:1px solid #47556980;border-radius:16px;flex-direction:column;width:100%;max-width:700px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 50px #00000080}.annotation-editor-header{border-bottom:1px solid #4755694d;justify-content:space-between;align-items:center;padding:24px;display:flex}.annotation-editor-header h3{color:#f1f5f9;margin:0;font-size:20px;font-weight:600}.close-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px;transition:all .2s}.close-btn:hover{color:#f1f5f9;background:#64748b4d}.annotation-editor-content{flex:1;padding:24px;overflow-y:auto}.annotation-timestamp-display{color:#93c5fd;background:#3b82f61a;border:1px solid #3b82f64d;border-radius:8px;align-items:center;gap:8px;margin-bottom:20px;padding:12px;font-size:14px;font-weight:600;display:flex}.form-group label{color:#e2e8f0;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.markdown-hint{color:#94a3b8;margin-left:8px;font-size:12px;font-weight:400}.form-control{color:#f1f5f9;background:#1e293b80;border:1px solid #47556980;border-radius:8px;width:100%;padding:10px 14px;font-size:14px;transition:all .2s}.form-control:focus{background:#1e293bcc;border-color:#3b82f6b3;outline:none}.annotation-content-textarea{resize:vertical;min-height:120px;font-family:inherit}.annotation-type-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px;display:grid}.annotation-type-option{color:#cbd5e1;cursor:pointer;background:#1e293b80;border:1px solid #4755694d;border-radius:8px;padding:10px;font-size:13px;transition:all .2s}.annotation-type-option:hover{background:#1e293bcc;border-color:#64748b80}.annotation-type-option.active{color:#93c5fd;background:#3b82f633;border-color:#3b82f680;font-weight:600}.markdown-toolbar{background:#1e293b80;border:1px solid #4755694d;border-bottom:none;border-radius:8px 8px 0 0;gap:4px;padding:8px;display:flex}.markdown-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px 10px;font-size:14px;transition:all .2s}.markdown-btn:hover{color:#f1f5f9;background:#64748b4d}.markdown-toolbar+.form-control{border-radius:0 0 8px 8px}.tag-input-container{position:relative}.tag-suggestions{z-index:10;background:#0f172afa;border:1px solid #47556980;border-radius:8px;max-height:200px;margin-top:4px;padding:8px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 10px 25px #0000004d}.tag-suggestion{text-align:left;color:#cbd5e1;cursor:pointer;background:0 0;border:none;border-radius:6px;width:100%;padding:8px 12px;font-size:13px;transition:all .15s;display:block}.tag-suggestion:hover{color:#f1f5f9;background:#334155cc}.selected-tags{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.tag{color:#93c5fd;background:#3b82f633;border:1px solid #3b82f64d;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;display:inline-flex}.tag-remove{color:#93c5fd;cursor:pointer;opacity:.7;background:0 0;border:none;padding:0;font-size:18px;line-height:1;transition:opacity .2s}.tag-remove:hover{opacity:1}.priority-selector{gap:8px;display:flex}.priority-option{color:#cbd5e1;text-transform:capitalize;cursor:pointer;background:#1e293b80;border:1px solid #4755694d;border-radius:8px;flex:1;padding:10px;font-size:13px;transition:all .2s}.priority-option:hover{background:#1e293bcc}.priority-option.active{font-weight:600}.priority-option.priority-low.active{color:#86efac;background:#22c55e33;border-color:#22c55e80}.priority-option.priority-medium.active{color:#fcd34d;background:#f59e0b33;border-color:#f59e0b80}.priority-option.priority-high.active{color:#fca5a5;background:#ef444433;border-color:#ef444480}.visibility-selector{flex-direction:column;gap:12px;display:flex}.radio-label{cursor:pointer;background:#1e293b4d;border:1px solid #4755694d;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;transition:all .2s;display:flex}.radio-label:hover{background:#1e293b80;border-color:#64748b80}.radio-label input[type=radio]{cursor:pointer}.radio-label span{color:#cbd5e1;font-size:14px}.annotation-editor-footer{border-top:1px solid #4755694d;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.footer-left,.footer-right{gap:12px;display:flex}.btn-danger{color:#fca5a5;background:#ef444433;border:1px solid #ef444480}.btn-danger:hover:not(:disabled){background:#ef44444d;border-color:#ef4444b3}.delete-confirm{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;align-items:center;gap:12px;padding:8px 12px;display:flex}.delete-confirm span{color:#fca5a5;font-size:14px}.annotation-timeline-container{background:#0f172af2;border:1px solid #47556980;border-radius:12px;margin:16px 0;padding:16px}.timeline-controls{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.timeline-controls-left,.timeline-controls-right{align-items:center;gap:12px;display:flex}.timeline-label{color:#e2e8f0;font-size:14px;font-weight:600}.timeline-zoom-level{color:#93c5fd;background:#3b82f633;border:1px solid #3b82f64d;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:600}.timeline-control-btn{color:#cbd5e1;cursor:pointer;background:#1e293b80;border:1px solid #4755694d;border-radius:6px;padding:6px;transition:all .2s}.timeline-control-btn:hover:not(:disabled){background:#1e293bcc;border-color:#64748b80}.timeline-control-btn:disabled{opacity:.3;cursor:not-allowed}.annotation-timeline{width:100%;margin-bottom:12px;position:relative}.timeline-canvas{background:#1e293b;border-radius:8px;width:100%;display:block}.timeline-hover-tooltip{color:#f1f5f9;pointer-events:none;z-index:20;background:#0f172afa;border:1px solid #47556980;border-radius:8px;margin-bottom:8px;padding:8px 12px;font-size:12px;position:absolute;bottom:100%;transform:translate(-50%);box-shadow:0 4px 12px #0000004d}.tooltip-time{margin-bottom:6px;font-family:SF Mono,Courier New,monospace;font-weight:600}.tooltip-annotation{border-top:1px solid #4755694d;padding-top:6px}.tooltip-annotation-type{text-transform:uppercase;color:#fff;border-radius:4px;margin-bottom:4px;padding:3px 6px;font-size:10px;font-weight:600;display:inline-block}.tooltip-annotation-title{color:#f1f5f9;margin-bottom:4px;font-size:12px;font-weight:600}.tooltip-annotation-tags{gap:4px;display:flex}.tooltip-tag{color:#94a3b8;background:#64748b4d;border-radius:3px;padding:2px 6px;font-size:10px}.timeline-legend{border-top:1px solid #4755694d;flex-wrap:wrap;align-items:center;gap:16px;padding-top:12px;display:flex}.legend-item{color:#94a3b8;align-items:center;gap:6px;font-size:12px;display:flex}.legend-color{border-radius:2px;width:12px;height:12px}.legend-stats{color:#64748b;margin-left:auto;font-size:12px}@media (width<=1024px){.playback-annotation-sidebar{width:320px}}@media (width<=768px){.playback-interface{flex-direction:column}.playback-annotation-sidebar{width:100%;max-height:40vh}.playback-control-buttons{gap:8px}.playback-time{min-width:80px;font-size:12px}.volume-slider{display:none}}.breakout-room-manager{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.breakout-setup,.breakout-manage{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:900px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 10px 40px #0003}.breakout-setup-header,.breakout-manage-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.breakout-setup-header h2,.breakout-manage-header h2{color:#111827;margin:0;font-size:20px;font-weight:600}.header-actions{gap:8px;display:flex}.close-button{cursor:pointer;color:#6b7280;background:0 0;border:none;padding:4px;transition:color .2s}.close-button:hover{color:#111827}.close-icon{font-size:28px;line-height:1}.breakout-setup-content{flex:1;padding:24px;overflow-y:auto}.setup-field{margin-bottom:20px}.setup-field label{color:#374151;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.number-input,.strategy-select{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:10px 12px;font-size:14px;transition:border-color .2s}.number-input:focus,.strategy-select:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 3px #8b5cf61a}.room-name-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.room-name-input{border:1px solid #d1d5db;border-radius:6px;padding:10px 12px;font-size:14px;transition:border-color .2s}.room-name-input:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 3px #8b5cf61a}.create-rooms-button{color:#fff;cursor:pointer;background:#8b5cf6;border:none;border-radius:8px;width:100%;margin-top:8px;padding:12px;font-size:16px;font-weight:600;transition:background .2s}.create-rooms-button:hover{background:#7c3aed}.create-rooms-button:disabled{cursor:not-allowed;background:#d1d5db}.broadcast-button,.close-rooms-button{cursor:pointer;border:1px solid #d1d5db;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .2s}.broadcast-button{color:#374151;background:#fff}.broadcast-button:hover{color:#8b5cf6;background:#f9fafb;border-color:#8b5cf6}.close-rooms-button{color:#fff;background:#ef4444;border-color:#ef4444}.close-rooms-button:hover{background:#dc2626}.broadcast-panel{background:#f0fdf4;border-bottom:1px solid #d1fae5;align-items:center;gap:8px;padding:12px 24px;display:flex}.broadcast-input{border:1px solid #d1d5db;border-radius:6px;flex:1;padding:8px 12px;font-size:14px}.send-broadcast-button{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .2s}.send-broadcast-button:hover{background:#059669}.help-requests-panel{background:#fef3c7;border-bottom:1px solid #fde68a;padding:16px 24px}.help-requests-panel h3{color:#92400e;margin:0 0 12px;font-size:14px;font-weight:600}.help-requests-list{flex-direction:column;gap:8px;display:flex}.help-request-card{background:#fff;border-radius:6px;justify-content:space-between;align-items:center;padding:12px;display:flex}.help-request-info{align-items:center;gap:12px;display:flex}.help-icon{font-size:24px}.help-user{color:#111827;font-size:14px;font-weight:600}.help-room{color:#6b7280;font-size:12px}.acknowledge-button{color:#fff;cursor:pointer;background:#f59e0b;border:none;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:500;transition:background .2s}.acknowledge-button:hover{background:#d97706}.rooms-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;padding:24px;display:grid;overflow-y:auto}.room-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:16px;transition:all .2s}.room-card:hover{border-color:#8b5cf6;box-shadow:0 4px 12px #8b5cf61a}.room-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.room-card-header h3{color:#111827;margin:0;font-size:16px;font-weight:600}.room-timer{color:#1e40af;background:#dbeafe;border-radius:4px;padding:4px 8px;font-size:12px;font-weight:600}.timer-warning{color:#991b1b;background:#fee2e2}.room-card-stats{margin-bottom:12px}.participant-count{color:#6b7280;font-size:14px}.room-participants-list{max-height:200px;overflow-y:auto}.empty-room{text-align:center;color:#9ca3af;padding:20px;font-size:14px}.room-participant-item{cursor:move;background:#f9fafb;border-radius:6px;align-items:center;gap:8px;margin-bottom:4px;padding:8px;transition:all .2s;display:flex}.room-participant-item:hover{background:#f3f4f6}.participant-avatar{color:#fff;background:#8b5cf6;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:600;display:flex}.participant-name{color:#111827;flex:1;font-size:14px}.participant-status{font-size:18px}.status-connected{color:#10b981}.status-disconnected{color:#9ca3af}.unassigned-panel{background:#f9fafb;border-top:1px solid #e5e7eb;padding:16px 24px}.unassigned-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.unassigned-header h3{color:#111827;margin:0;font-size:14px;font-weight:600}.auto-assign-button{color:#fff;cursor:pointer;background:#8b5cf6;border:none;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:500;transition:background .2s}.auto-assign-button:hover{background:#7c3aed}.unassigned-list{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.unassigned-participant{cursor:move;background:#fff;border:1px solid #d1d5db;border-radius:20px;align-items:center;gap:8px;padding:6px 12px;transition:all .2s;display:flex}.unassigned-participant:hover{background:#f5f3ff;border-color:#8b5cf6}.participant-avatar-small{color:#fff;background:#8b5cf6;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:600;display:flex}.drag-instructions{color:#6b7280;text-align:center;font-size:12px}.breakout-room-view{background:#f9fafb;flex-direction:column;width:100%;height:100%;display:flex}.breakout-room-header{background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.room-info h2{color:#111827;margin:0 0 4px;font-size:20px;font-weight:600}.room-participant-count{color:#6b7280;font-size:14px}.room-controls{align-items:center;gap:12px;display:flex}.help-button{color:#fff;cursor:pointer;background:#f59e0b;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .2s}.help-button:hover{background:#d97706}.help-button:disabled,.help-requested{cursor:default;background:#10b981}.broadcasts-panel{background:#fef3c7;border-bottom:1px solid #fde68a;padding:12px 24px}.broadcasts-header{color:#92400e;align-items:center;gap:8px;margin-bottom:8px;font-size:14px;font-weight:600;display:flex}.broadcast-icon{font-size:20px}.dismiss-broadcasts{color:#92400e;cursor:pointer;background:0 0;border:none;width:20px;height:20px;margin-left:auto;padding:0;font-size:20px}.broadcasts-list{flex-direction:column;gap:4px;display:flex}.broadcast-message{color:#374151;background:#fff;border-radius:4px;padding:8px 12px;font-size:14px}.breakout-room-content{flex:1;grid-template-columns:1fr 320px;gap:16px;padding:16px;display:grid;overflow:hidden}.room-video-section{background:#fff;border-radius:8px;padding:16px;overflow:hidden}.room-video-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;height:100%;display:grid}.video-participant{aspect-ratio:4/3;background:#111827;border-radius:8px;position:relative;overflow:hidden}.video-participant video{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.video-placeholder{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.video-label{color:#fff;background:#000000b3;border-radius:4px;padding:4px 8px;font-size:12px;position:absolute;bottom:8px;left:8px}.video-status{color:#fff;background:#ef4444e6;border-radius:4px;padding:4px 8px;font-size:11px;position:absolute;top:8px;right:8px}.room-chat-section{background:#fff;border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.room-chat-header{border-bottom:1px solid #e5e7eb;padding:12px 16px}.room-chat-header h3{color:#111827;margin:0;font-size:16px;font-weight:600}.room-chat-messages{flex:1;padding:16px;overflow-y:auto}.chat-empty{text-align:center;color:#9ca3af;padding:40px 20px;font-size:14px}.chat-message{margin-bottom:16px}.message-sender{color:#6b7280;margin-bottom:4px;font-size:12px;font-weight:600}.message-content{color:#111827;background:#f3f4f6;border-radius:8px;padding:8px 12px;font-size:14px}.own-message .message-content{background:#dbeafe}.system-message .message-content{color:#92400e;text-align:center;background:#fef3c7;font-style:italic}.message-time{color:#9ca3af;margin-top:4px;font-size:11px}.room-chat-input{border-top:1px solid #e5e7eb;gap:8px;padding:12px 16px;display:flex}.chat-input{border:1px solid #d1d5db;border-radius:6px;flex:1;padding:8px 12px;font-size:14px}.send-button{color:#fff;cursor:pointer;background:#8b5cf6;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .2s}.send-button:hover{background:#7c3aed}.time-warning-banner{color:#991b1b;text-align:center;background:#fee2e2;border-top:1px solid #fecaca;padding:8px 24px;font-size:14px;font-weight:500}.room-closed-overlay{z-index:100;background:#000c;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.room-closed-message{text-align:center;background:#fff;border-radius:12px;max-width:400px;padding:32px}.room-closed-message h3{color:#111827;margin:0 0 12px;font-size:20px;font-weight:600}.room-closed-message p{color:#6b7280;margin:0 0 24px}.return-button{color:#fff;cursor:pointer;background:#8b5cf6;border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:600;transition:background .2s}.return-button:hover{background:#7c3aed}.breakout-overlay{z-index:2000;opacity:0;transition:opacity .3s;position:fixed;inset:0}.breakout-overlay.visible{opacity:1}.breakout-overlay-backdrop{background:#0009;position:absolute;inset:0}.breakout-overlay-content{opacity:0;background:#fff;border-radius:16px;max-width:500px;margin:10vh auto;transition:all .3s;position:relative;transform:scale(.9);box-shadow:0 20px 60px #0000004d}.breakout-overlay-content.visible{opacity:1;transform:scale(1)}.overlay-header{text-align:center;padding:32px 32px 24px}.overlay-icon{margin-bottom:16px;font-size:48px}.overlay-header h2{color:#111827;margin:0;font-size:24px;font-weight:600}.overlay-body{padding:0 32px 24px}.room-info-card{background:#f9fafb;border-radius:8px;margin-bottom:20px;padding:16px}.info-row{border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:8px 0;display:flex}.info-row:last-child{border-bottom:none}.info-label{color:#6b7280;font-size:14px}.info-value{color:#111827;font-size:14px;font-weight:600}.participants-preview{margin-bottom:20px}.preview-label{color:#374151;margin-bottom:12px;font-size:14px;font-weight:500}.participants-list{flex-wrap:wrap;gap:8px;display:flex}.participant-chip{background:#f3f4f6;border-radius:16px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;display:flex}.participant-chip.more{color:#6b7280;background:#e5e7eb;font-weight:500}.auto-join-notice{text-align:center}.countdown-circle{width:80px;height:80px;margin:0 auto 16px;position:relative}.countdown-svg{width:100%;height:100%;transform:rotate(-90deg)}.countdown-bg{fill:none;stroke:#e5e7eb;stroke-width:8px}.countdown-progress{fill:none;stroke:#8b5cf6;stroke-width:8px;stroke-linecap:round;transition:stroke-dasharray 1s linear}.countdown-number{color:#8b5cf6;font-size:32px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.auto-join-notice p{color:#6b7280;margin:0;font-size:14px}.overlay-actions{gap:12px;padding:0 32px 24px;display:flex}.join-button{color:#fff;cursor:pointer;background:#8b5cf6;border:none;border-radius:8px;flex:1;padding:12px;font-size:16px;font-weight:600;transition:background .2s}.join-button:hover{background:#7c3aed}.cancel-button{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;flex:1;padding:12px;font-size:16px;font-weight:600;transition:all .2s}.cancel-button:hover{background:#f9fafb;border-color:#9ca3af}.overlay-footer{text-align:center;padding:0 32px 32px}.instruction-text{color:#6b7280;margin:0;font-size:13px;line-height:1.5}.error-message{color:#991b1b;background:#fee2e2;border-radius:6px;align-items:center;gap:8px;margin-top:16px;padding:12px;font-size:14px;display:flex}.error-icon{font-size:20px}@media (width<=768px){.breakout-room-content{grid-template-columns:1fr}.room-chat-section{max-height:300px}.rooms-grid,.room-name-list{grid-template-columns:1fr}}.vb-modal-overlay{z-index:1000;backdrop-filter:blur(4px);background-color:#000000bf;justify-content:center;align-items:center;animation:.2s ease-out vb-fade-in;display:flex;position:fixed;inset:0}@keyframes vb-fade-in{0%{opacity:0}to{opacity:1}}.vb-modal{background:#fff;border-radius:16px;flex-direction:column;width:90%;max-width:1000px;max-height:90vh;animation:.3s ease-out vb-slide-up;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}@keyframes vb-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.vb-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:24px 32px;display:flex}.vb-modal-header h2{color:#111827;margin:0;font-size:24px;font-weight:600}.vb-close-button{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:8px;padding:8px;transition:color .2s}.vb-close-button:hover{color:#111827;background-color:#f3f4f6}.vb-close-button svg{width:24px;height:24px;display:block}.vb-modal-body{flex:1;grid-template-columns:1fr 1.5fr;gap:24px;padding:24px 32px;display:grid;overflow-y:auto}.vb-preview-panel{flex-direction:column;gap:16px;display:flex}.vb-preview-panel h3{color:#111827;margin:0;font-size:18px;font-weight:600}.vb-preview-container{aspect-ratio:16/9;background:#000;border-radius:12px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.vb-preview-canvas{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.vb-preview-loading,.vb-preview-placeholder{color:#9ca3af;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.vb-spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite vb-spin}@keyframes vb-spin{to{transform:rotate(360deg)}}.vb-stats{background:#f9fafb;border-radius:8px;gap:16px;padding:12px;display:flex}.vb-stat{align-items:center;gap:8px;display:flex}.vb-stat-label{color:#6b7280;font-size:12px;font-weight:500}.vb-stat-value{color:#111827;font-size:14px;font-weight:600}.vb-settings-panel{flex-direction:column;gap:16px;display:flex}.vb-tabs{background:#f3f4f6;border-radius:10px;gap:4px;padding:4px;display:flex}.vb-tab{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:10px 16px;font-size:14px;font-weight:500;transition:all .2s}.vb-tab:hover{color:#111827}.vb-tab.active{color:#667eea;background:#fff;box-shadow:0 1px 3px #0000001a}.vb-tab-content-wrapper{flex:1;min-height:300px;overflow-y:auto}.vb-tab-content{flex-direction:column;gap:20px;padding:4px;display:flex}.vb-info-box{background:#eff6ff;border-left:4px solid #667eea;border-radius:8px;gap:12px;padding:16px;display:flex}.vb-info-icon{color:#667eea;flex-shrink:0;width:24px;height:24px}.vb-info-box h3{color:#111827;margin:0 0 8px;font-size:16px;font-weight:600}.vb-info-box p{color:#6b7280;margin:0;font-size:14px;line-height:1.5}.vb-blur-controls{flex-direction:column;gap:12px;display:flex}.vb-blur-controls label{color:#111827;font-size:14px;font-weight:500}.vb-blur-slider{-webkit-appearance:none;background:#e5e7eb;border-radius:3px;outline:none;width:100%;height:6px}.vb-blur-slider::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#667eea;border-radius:50%;width:20px;height:20px;box-shadow:0 2px 4px #0003}.vb-blur-slider::-moz-range-thumb{cursor:pointer;background:#667eea;border:none;border-radius:50%;width:20px;height:20px;box-shadow:0 2px 4px #0003}.vb-blur-labels{color:#6b7280;justify-content:space-between;font-size:12px;display:flex}.vb-category-selector{gap:8px;display:flex}.vb-category-button{color:#6b7280;cursor:pointer;background:#fff;border:2px solid #e5e7eb;border-radius:8px;flex:1;padding:10px 16px;font-size:14px;font-weight:500;transition:all .2s}.vb-category-button:hover{color:#667eea;border-color:#667eea}.vb-category-button.active{color:#fff;background:#667eea;border-color:#667eea}.vb-category-description{color:#6b7280;margin:0;padding:0;font-size:14px}.vb-background-gallery{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.vb-background-item{cursor:pointer;aspect-ratio:4/3;background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:0;transition:all .2s;position:relative;overflow:hidden}.vb-background-item:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.vb-background-item.selected{border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.vb-background-item img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.vb-background-name{color:#fff;text-align:center;background:linear-gradient(#0000,#000000b3);padding:8px;font-size:12px;font-weight:500;position:absolute;bottom:0;left:0;right:0}.vb-selected-indicator{color:#fff;background:#667eea;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;top:8px;right:8px}.vb-selected-indicator svg{width:16px;height:16px}.vb-custom-upload{justify-content:center;padding:16px 0;display:flex}.vb-upload-button{color:#6b7280;cursor:pointer;background:#fff;border:2px dashed #d1d5db;border-radius:8px;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.vb-upload-button:hover{color:#667eea;border-color:#667eea}.vb-upload-button.primary{color:#fff;background:#667eea;border-color:#667eea}.vb-upload-button.primary:hover{background:#5568d3}.vb-upload-button svg{width:20px;height:20px}.vb-video-tips{background:#f9fafb;border-radius:8px;padding:16px}.vb-video-tips h4{color:#111827;margin:0 0 12px;font-size:14px;font-weight:600}.vb-video-tips ul{margin:0;padding-left:20px}.vb-video-tips li{color:#6b7280;margin-bottom:6px;font-size:13px;line-height:1.6}.vb-error-message{color:#dc2626;background:#fee2e2;border-top:1px solid #fecaca;align-items:center;gap:12px;padding:12px 32px;font-size:14px;display:flex}.vb-error-message svg{flex-shrink:0;width:20px;height:20px}.vb-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:12px;padding:20px 32px;display:flex}.vb-button{cursor:pointer;border:none;border-radius:8px;padding:10px 24px;font-size:14px;font-weight:500;transition:all .2s}.vb-button-secondary{color:#6b7280;background:#fff;border:1px solid #d1d5db}.vb-button-secondary:hover{background:#f9fafb;border-color:#9ca3af}.vb-button-primary{color:#fff;background:#667eea}.vb-button-primary:hover{background:#5568d3}.vb-button-primary:disabled{color:#9ca3af;cursor:not-allowed;background:#d1d5db}@media (width<=768px){.vb-modal-body{grid-template-columns:1fr}.vb-modal{width:95%;max-height:95vh}.vb-modal-header,.vb-modal-footer,.vb-modal-body{padding:16px 20px}.vb-background-gallery{grid-template-columns:repeat(2,1fr)}}.panel-header{margin-bottom:2rem}.panel-header h2{color:#1f2937;margin-bottom:.5rem;font-size:1.875rem;font-weight:700}.panel-description{color:#6b7280;font-size:1rem}.panel-footer{border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:1.5rem}.status-badge{border-radius:9999px;align-items:center;padding:.25rem .75rem;font-size:.875rem;font-weight:500;display:inline-flex}.status-connected{color:#065f46;background-color:#d1fae5}.status-disconnected{color:#991b1b;background-color:#fee2e2}.status-connecting,.status-syncing{color:#1e40af;background-color:#dbeafe}.status-disconnecting{color:#92400e;background-color:#fef3c7}.alert{border-radius:.5rem;align-items:center;gap:.75rem;margin-bottom:1rem;padding:1rem;display:flex}.alert-error{color:#991b1b;background-color:#fee2e2;border:1px solid #fca5a5}.alert-warning{color:#92400e;background-color:#fef3c7;border:1px solid #fcd34d}.alert-icon{font-size:1.25rem}.btn{cursor:pointer;border:none;border-radius:.5rem;padding:.5rem 1rem;font-weight:500;transition:all .2s}.btn-danger-outline{color:#ef4444;background-color:#0000;border:1px solid #ef4444}.btn-danger-outline:hover:not(:disabled){background-color:#fee2e2}.btn-sm{padding:.375rem .75rem;font-size:.875rem}.btn:disabled{opacity:.5;cursor:not-allowed}.form-input,.form-select,.form-textarea{border:1px solid #d1d5db;border-radius:.375rem;width:100%;padding:.5rem .75rem;font-size:1rem}.form-input:focus,.form-select:focus,.form-textarea:focus{ring:2px;ring-color:#93c5fd;border-color:#3b82f6;outline:none}.form-group{margin-bottom:1rem}.form-group label{color:#374151;margin-bottom:.5rem;font-weight:500;display:block}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:.75rem;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}.modal-lg{max-width:700px}.modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-header h3{color:#1f2937;font-size:1.25rem;font-weight:600}.modal-close{cursor:pointer;color:#6b7280;background:0 0;border:none;font-size:1.5rem}.modal-close:hover{color:#1f2937}.modal-body{padding:1.5rem}.modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:.75rem;padding:1.5rem;display:flex}.empty-state{text-align:center;color:#6b7280;padding:3rem 1.5rem}.empty-icon{margin-bottom:1rem;font-size:4rem}.wearable-connection-panel,.wearable-metrics-dashboard{background:#fff;border-radius:.75rem;padding:2rem}.wearable-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.wearable-card{border:2px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;transition:all .2s}.wearable-card:hover{box-shadow:0 10px 15px -3px #0000001a}.wearable-card-connected{border-left-width:4px}.wearable-card-header{align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.wearable-icon{border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:flex}.wearable-info{flex:1}.wearable-name{color:#1f2937;margin-bottom:.25rem;font-size:1.125rem;font-weight:600}.wearable-description{color:#6b7280;font-size:.875rem}.wearable-card-body{margin-bottom:1rem}.wearable-sync-info{color:#6b7280;justify-content:space-between;margin-bottom:.5rem;font-size:.875rem;display:flex}.wearable-sync-result{font-size:.875rem}.sync-success{color:#059669}.sync-error{color:#dc2626}.wearable-card-actions{gap:.5rem;display:flex}.connection-summary{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.summary-label{color:#6b7280}.summary-value{color:#1f2937;font-weight:600}.privacy-notice{color:#6b7280;align-items:center;gap:.5rem;margin-top:.75rem;font-size:.875rem;display:flex}.dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.header-actions{flex-wrap:wrap;gap:.75rem;display:flex}.time-range-selector{border:1px solid #d1d5db;border-radius:.5rem;display:flex;overflow:hidden}.time-range-btn{cursor:pointer;background:#fff;border:none;border-right:1px solid #d1d5db;padding:.5rem 1rem;transition:all .2s}.time-range-btn:last-child{border-right:none}.time-range-btn.active{color:#fff;background-color:#3b82f6}.time-range-btn:hover:not(.active){background-color:#f9fafb}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.metric-card{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-left:4px solid;border-radius:.5rem;padding:1.5rem;transition:all .2s}.metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a}.metric-status-good{background-color:#f0fdf4}.metric-status-warning{background-color:#fefce8}.metric-status-poor{background-color:#fef2f2}.metric-card-header{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.metric-icon{font-size:1.5rem}.metric-title{color:#374151;font-size:1rem;font-weight:600}.metric-value{align-items:baseline;gap:.5rem;margin-bottom:.75rem;display:flex}.metric-value .value{color:#1f2937;font-size:2rem;font-weight:700}.metric-value .unit{color:#6b7280;font-size:1rem}.metric-change{align-items:center;gap:.25rem;margin-bottom:.75rem;font-size:.875rem;display:inline-flex}.metric-change.positive{color:#059669}.metric-change.negative{color:#dc2626}.metric-card-footer{justify-content:space-between;align-items:center;display:flex}.metric-source{color:#6b7280;align-items:center;gap:.5rem;font-size:.75rem;display:flex}.source-dot{border-radius:50%;width:8px;height:8px}.metric-confidence{align-items:center;gap:.5rem;display:flex}.confidence-bar{background:#e5e7eb;border-radius:2px;width:50px;height:4px;overflow:hidden}.confidence-fill{background:#3b82f6;height:100%;transition:width .3s}.confidence-label{color:#6b7280;font-size:.75rem}.dashboard-content{grid-template-columns:2fr 1fr;gap:1.5rem;display:grid}.chart-container{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem}.chart-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.chart-placeholder{text-align:center;color:#6b7280;background:#f9fafb;border-radius:.5rem;padding:3rem}.correlation-analysis,.data-freshness{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:1.5rem;padding:1.5rem}.correlation-list{flex-direction:column;gap:1rem;display:flex}.correlation-item{background:#f9fafb;border-radius:.5rem;padding:1rem}.correlation-header{justify-content:space-between;margin-bottom:.5rem;display:flex}.correlation-value{font-weight:600}.correlation-value.positive{color:#059669}.correlation-value.negative{color:#dc2626}.ehr-connection-panel,.ehr-data-view{background:#fff;border-radius:.75rem;padding:2rem}.ehr-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.ehr-card{border:2px solid #e5e7eb;border-radius:.75rem;padding:1.5rem}.ehr-card-connected{border-left-width:4px}.ehr-card-header{align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.ehr-icon{color:#fff;border-radius:.75rem;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:flex}.ehr-card-body{margin-bottom:1rem;font-size:.875rem}.ehr-facility,.ehr-sync{justify-content:space-between;margin-bottom:.5rem;display:flex}.ehr-card-actions{gap:.5rem;display:flex}.patient-verification{background:#f9fafb;border-radius:.5rem;margin-top:2rem;padding:1.5rem}.patient-info{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-top:1rem;display:grid}.tabs{border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem;display:flex}.tab{cursor:pointer;color:#6b7280;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:.75rem 1.5rem;font-weight:500;transition:all .2s}.tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.tab:hover:not(.active){color:#374151}.conditions-list,.medications-list,.allergies-list{flex-direction:column;gap:1rem;display:flex}.condition-item,.medication-item,.allergy-item{border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem}.allergy-item.severity-high{background-color:#fee2e2;border-color:#ef4444}.medication-tracker{background:#fff;border-radius:.75rem;padding:2rem}.tracker-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.doses-list{flex-direction:column;gap:.75rem;display:flex}.dose-item{border:1px solid #e5e7eb;border-radius:.5rem;justify-content:space-between;align-items:center;padding:1rem;display:flex}.dose-item.overdue{background-color:#fffbeb;border-color:#f59e0b}.dose-actions{gap:.5rem;display:flex}.medications-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.medication-card{border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem}.medication-details{flex-direction:column;gap:.5rem;margin:1rem 0;font-size:.875rem;display:flex}.medication-adherence-chart{background:#fff;border-radius:.75rem;padding:2rem}.adherence-rate{align-items:center;gap:2rem;margin-bottom:2rem;display:flex}.rate-circle{border:6px solid;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:120px;height:120px;display:flex}.rate-value{font-size:2rem;font-weight:700}.rate-label{color:#6b7280;font-size:.875rem}.rate-stats{gap:2rem;display:flex}.stat-item{flex-direction:column;align-items:center;display:flex}.stat-value{color:#1f2937;font-size:1.5rem;font-weight:700}.stat-label{color:#6b7280;font-size:.875rem}.calendar-heatmap{margin:2rem 0}.heatmap-grid{grid-template-columns:repeat(30,1fr);gap:4px;display:grid}.heatmap-cell{aspect-ratio:1;cursor:pointer;border-radius:.25rem;justify-content:center;align-items:center;font-size:.75rem;display:flex}.heatmap-cell.no-data{color:#9ca3af;background-color:#f3f4f6}.heatmap-cell.poor{background-color:#fecaca}.heatmap-cell.fair{background-color:#fed7aa}.heatmap-cell.good{background-color:#bbf7d0}.heatmap-cell.perfect{background-color:#86efac}.heatmap-legend{color:#6b7280;align-items:center;gap:.5rem;margin-top:1rem;font-size:.875rem;display:flex}.legend-item{border-radius:.25rem;width:16px;height:16px}@media (width<=768px){.wearable-grid,.ehr-grid,.medications-grid,.metrics-grid,.dashboard-content{grid-template-columns:1fr}.heatmap-grid{grid-template-columns:repeat(15,1fr)}}.search-results{z-index:10;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;max-height:200px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 10px 15px -3px #0000001a}.search-result{text-align:left;cursor:pointer;background:#fff;border:none;border-bottom:1px solid #f3f4f6;width:100%;padding:.75rem 1rem;transition:background-color .15s ease-in-out}.search-result:hover,.search-result:focus{outline-offset:-2px;background-color:#f9fafb;outline:2px solid #3b82f6}.search-result:last-child{border-bottom:none}.search-result strong{color:#1f2937;font-weight:600;display:block}.search-result .text-muted{color:#6b7280;font-size:.875rem}.dashboard-widget{background-color:#fff;border-radius:8px;padding:16px;transition:box-shadow .2s;box-shadow:0 1px 3px #0000001a}.dashboard-widget:hover{box-shadow:0 4px 12px #0000001a}.dashboard-widget-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.dashboard-widget-header-left{flex:1;align-items:flex-start;gap:10px;display:flex}.dashboard-widget-icon{color:#0f766e;background-color:#f0fdfa;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.dashboard-widget-title-section{flex:1}.dashboard-widget-title{color:#1f2937;margin:0;font-size:14px;font-weight:600}.dashboard-widget-subtitle{color:#6b7280;margin:2px 0 0;font-size:12px}.dashboard-widget-action{color:#0f766e;cursor:pointer;background-color:#0000;border:1px solid #e5e7eb;border-radius:6px;padding:5px 10px;font-size:12px;font-weight:500;transition:all .2s}.dashboard-widget-action:hover{background-color:#f0fdfa;border-color:#0f766e}.dashboard-widget-stat{align-items:baseline;gap:10px;display:flex}.dashboard-widget-stat-value{color:#0f172a;font-size:28px;font-weight:700;line-height:1}.dashboard-widget-stat-trend{border-radius:4px;align-items:center;gap:3px;padding:3px 6px;font-size:12px;font-weight:600;display:flex}.dashboard-widget-stat-trend.trend-up{color:#166534;background-color:#dcfce7}.dashboard-widget-stat-trend.trend-down{color:#991b1b;background-color:#fee2e2}.dashboard-widget-stat-trend.trend-neutral{color:#4b5563;background-color:#f3f4f6}@media (width<=768px){.dashboard-widget{padding:12px}.dashboard-widget-stat-value{font-size:24px}.dashboard-widget-header{flex-direction:column;gap:8px}.dashboard-widget-action{width:100%}}
