.sds-btn,.sds-input-container,.sds-dialog-overlay,.sds-toast,.sds-vitals-card,.sds-prescription-card,.sds-gauge-card,.sds-chat-bubble{box-sizing:border-box;font-family:Inter,system-ui,-apple-system,sans-serif}.sds-btn{cursor:pointer;border:1px solid #0000;border-radius:8px;outline:none;justify-content:center;align-items:center;min-height:48px;padding:12px 24px;font-size:14px;font-weight:500;text-decoration:none;transition:transform .15s,background-color .15s,border-color .15s,opacity .15s;display:inline-flex;position:relative}.sds-btn-filled{background-color:var(--md-sys-color-primary);color:#fff}.sds-btn-filled:hover:not(:disabled){background-color:var(--md-sys-color-primary-hover)}.sds-btn-filled:active:not(:disabled){background-color:var(--md-sys-color-primary-active);transform:scale(.98)}.sds-btn-outlined{border-color:var(--md-sys-color-outline);color:var(--md-sys-color-primary);background-color:#0000}.sds-btn-outlined:hover:not(:disabled){background-color:var(--color-card-bg);border-color:var(--md-sys-color-primary-hover)}.sds-btn-outlined:active:not(:disabled){transform:scale(.98)}.sds-btn-text{color:var(--md-sys-color-primary);background-color:#0000;padding-left:12px;padding-right:12px}.sds-btn-text:hover:not(:disabled){background-color:var(--color-card-bg)}.sds-btn-text:active:not(:disabled){transform:scale(.98)}.sds-btn:disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-text-disabled)!important;color:var(--md-sys-color-on-surface-var)!important;border-color:#0000!important}.sds-btn-spinner{border:2px solid;border-bottom-color:#0000;border-radius:50%;width:18px;height:18px;margin-right:8px;animation:.75s linear infinite sds-spin;display:inline-block}@keyframes sds-spin{to{transform:rotate(360deg)}}.sds-input-container{flex-direction:column;width:100%;margin-bottom:16px;display:flex;position:relative}.sds-input-label{color:var(--md-sys-color-on-surface-var);margin-bottom:6px;font-size:14px;font-weight:500;transition:color .2s}.sds-input-field{border:1px solid var(--md-sys-color-outline);background-color:var(--md-sys-color-surface);width:100%;min-height:48px;color:var(--md-sys-color-on-surface);border-radius:8px;outline:none;padding:12px 16px;font-size:16px;transition:border-color .2s,box-shadow .2s}.sds-input-field:focus{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 2px #006a6a33}.sds-input-field:disabled{background-color:var(--color-card-bg);color:var(--color-text-disabled);cursor:not-allowed}.sds-input-container-error .sds-input-label{color:var(--color-danger)}.sds-input-container-error .sds-input-field{border-color:var(--color-danger)!important}.sds-input-error-text{color:var(--color-danger);margin-top:4px;font-size:12px}.sds-dialog-overlay{z-index:1000;opacity:0;visibility:hidden;background-color:#00000080;justify-content:center;align-items:center;padding:16px;transition:opacity .25s,visibility .25s;display:flex;position:fixed;inset:0}.sds-dialog-overlay-open{opacity:1;visibility:visible}.sds-dialog-container{background-color:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline);border-radius:12px;width:100%;max-width:500px;transition:transform .25s cubic-bezier(.34,1.56,.64,1);overflow:hidden;transform:scale(.95);box-shadow:0 8px 32px #00000026}.sds-dialog-overlay-open .sds-dialog-container{transform:scale(1)}.sds-dialog-header{border-bottom:1px solid var(--color-divider);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.sds-dialog-title{color:var(--md-sys-color-on-surface);margin:0;font-size:18px;font-weight:600}.sds-dialog-close-btn{cursor:pointer;color:var(--md-sys-color-on-surface-var);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;font-size:24px;line-height:1;display:flex}.sds-dialog-content{color:var(--md-sys-color-on-surface);padding:24px;font-size:16px;line-height:1.5}.sds-toast-container{z-index:1100;flex-direction:column;gap:8px;width:100%;max-width:350px;display:flex;position:fixed;bottom:24px;right:24px}.sds-toast{color:#fff;border-radius:8px;justify-content:space-between;align-items:center;padding:16px;font-size:14px;line-height:1.4;animation:.3s sds-toast-slide;display:flex;box-shadow:0 4px 12px #00000026}@keyframes sds-toast-slide{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.sds-toast-success{background-color:var(--color-success)}.sds-toast-warning{background-color:var(--color-warning)}.sds-toast-info{background-color:var(--color-medical-blue)}.sds-toast-error{background-color:var(--color-danger)}.sds-toast-content{flex-grow:1;margin-right:12px}.sds-toast-close{color:inherit;cursor:pointer;opacity:.8;background:0 0;border:none;padding:0 4px;font-size:16px}.sds-toast-close:hover{opacity:1}.sds-vitals-card{background-color:var(--color-card-bg);border:1px solid var(--md-sys-color-outline);border-radius:12px;flex-direction:column;padding:16px;transition:border-color .2s,background-color .2s;display:flex}.sds-vitals-header{color:var(--md-sys-color-on-surface-var);text-transform:uppercase;margin-bottom:8px;font-size:14px;font-weight:500}.sds-vitals-body{align-items:baseline;gap:4px;display:flex}.sds-vitals-value{color:var(--md-sys-color-on-surface);font-size:28px;font-weight:700}.sds-vitals-unit{color:var(--md-sys-color-on-surface-var);font-size:14px}.sds-vitals-status-badge{text-transform:uppercase;border-radius:12px;align-self:flex-start;margin-top:12px;padding:4px 8px;font-size:12px;font-weight:600}.sds-vitals-warning{border-color:var(--color-warning);background-color:#fff3e0}.sds-vitals-warning .sds-vitals-status-badge{background-color:var(--color-warning);color:#fff}.sds-vitals-critical{border-color:var(--color-danger);background-color:#ffebee}.sds-vitals-critical .sds-vitals-status-badge{background-color:var(--color-danger);color:#fff}.sds-vitals-normal .sds-vitals-status-badge{background-color:var(--md-sys-color-primary);color:#fff}.sds-prescription-card{background-color:var(--color-card-bg);border:1px solid var(--md-sys-color-outline);border-radius:12px;flex-direction:column;gap:6px;margin-bottom:12px;padding:16px;transition:opacity .2s;display:flex}.sds-prescription-drug{color:var(--md-sys-color-on-surface);margin:0;font-size:16px;font-weight:600}.sds-prescription-details{color:var(--md-sys-color-on-surface-var);margin:0;font-size:14px}.sds-prescription-dispensed{opacity:.7}.sds-prescription-dispensed .sds-prescription-drug{color:var(--color-text-disabled);text-decoration:line-through}.sds-prescription-badge{border-radius:4px;align-self:flex-start;margin-top:4px;padding:4px 8px;font-size:12px;font-weight:600}.sds-prescription-badge-dispensed{color:var(--md-sys-color-tertiary);background-color:#e0f2f1}.sds-prescription-badge-valid{color:var(--color-success);background-color:#e3f2fd}.sds-gauge-card{background-color:var(--color-card-bg);border:1px solid var(--md-sys-color-outline);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:16px;padding:24px;display:flex}.sds-gauge-visual{justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:relative}.sds-gauge-svg{transform:rotate(-90deg)}.sds-gauge-bg-circle{fill:none;stroke:var(--color-divider);stroke-width:10px}.sds-gauge-progress-circle{fill:none;stroke-width:10px;stroke-linecap:round;transition:stroke-dashoffset .35s}.sds-gauge-text{color:var(--md-sys-color-on-surface);font-size:24px;font-weight:700;position:absolute}.sds-gauge-meta{flex-direction:column;gap:4px;display:flex}.sds-gauge-title{color:var(--md-sys-color-on-surface);margin:0;font-size:16px;font-weight:600}.sds-gauge-status{text-transform:uppercase;font-size:14px;font-weight:700}.sds-gauge-optimal{stroke:var(--md-sys-color-primary);color:var(--md-sys-color-primary)}.sds-gauge-moderate{stroke:var(--color-warning);color:var(--color-warning)}.sds-gauge-highrisk{stroke:var(--color-danger);color:var(--color-danger)}.sds-chat-container{flex-direction:column;gap:12px;width:100%;padding:16px;display:flex}.sds-chat-bubble{border-radius:16px;flex-direction:column;gap:4px;max-width:75%;padding:12px 16px;font-size:15px;line-height:1.4;animation:.3s cubic-bezier(.1,.8,.25,1) sds-bubble-intro;display:flex;position:relative}@keyframes sds-bubble-intro{0%{opacity:0;transform:translateY(12px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.sds-bubble-user{background-color:var(--md-sys-color-primary);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.sds-bubble-assistant{background-color:var(--color-card-bg);border:1px solid var(--md-sys-color-outline);color:var(--md-sys-color-on-surface);border-bottom-left-radius:4px;align-self:flex-start}.sds-bubble-timestamp{opacity:.7;align-self:flex-end;font-size:11px}.sds-typing-indicator{align-items:center;gap:4px;padding:4px 8px;display:flex}.sds-typing-dot{background-color:var(--md-sys-color-on-surface-var);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite both sds-pulsate}.sds-typing-dot:first-child{animation-delay:-.32s}.sds-typing-dot:nth-child(2){animation-delay:-.16s}@keyframes sds-pulsate{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.sds-skeleton{background:linear-gradient(90deg, var(--color-card-bg) 25%, var(--color-divider) 50%, var(--color-card-bg) 75%);background-size:200% 100%;border-radius:8px;width:100%;height:20px;animation:1.5s linear infinite sds-shimmer}.sds-skeleton-circle{border-radius:50%}.sds-skeleton-rect{border-radius:8px}@keyframes sds-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.sds-spinner-container{justify-content:center;align-items:center;padding:8px;display:inline-flex}.sds-spinner{border:3px solid var(--color-divider);border-bottom-color:var(--md-sys-color-primary);border-radius:50%;width:32px;height:32px;animation:.75s linear infinite sds-spin}.sds-state-container{text-align:center;background-color:var(--color-card-bg);border:1px solid var(--md-sys-color-outline);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;max-width:400px;margin:0 auto;padding:32px 24px;display:flex}.sds-state-icon{color:var(--md-sys-color-on-surface-var);margin-bottom:8px;font-size:48px}.sds-state-title{color:var(--md-sys-color-on-surface);margin:0;font-size:18px;font-weight:600}.sds-state-desc{color:var(--md-sys-color-on-surface-var);margin:0 0 12px;font-size:14px;line-height:1.4}.sds-icon{stroke-width:0;stroke:currentColor;fill:currentColor;width:1em;height:1em;display:inline-block}
