.card{background:var(--color-surface);border-radius:var(--rms-radius-md,var(--radius-md));padding:var(--card-padding-compact);border:1px solid var(--color-border-subtle);min-width:0;box-shadow:var(--rms-shadow-soft,none);transition:transform var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out), background var(--motion-normal) var(--ease-out)}.card--interactive{cursor:default}.card--interactive:hover{box-shadow:var(--shadow-lift);transform:translateY(-1px)}.card--tone-info{border-color:color-mix(in srgb, var(--color-primary) 32%, var(--color-border-subtle));background:linear-gradient(160deg, var(--color-tint-info), color-mix(in srgb, var(--color-surface) 92%, transparent))}.card--tone-success{border-color:color-mix(in srgb, var(--color-success) 32%, var(--color-border-subtle));background:linear-gradient(160deg, var(--color-tint-success), color-mix(in srgb, var(--color-surface) 92%, transparent))}.card--tone-warning{border-color:color-mix(in srgb, var(--color-warning) 32%, var(--color-border-subtle));background:linear-gradient(160deg, var(--color-tint-warning), color-mix(in srgb, var(--color-surface) 92%, transparent))}.card--tone-danger{border-color:color-mix(in srgb, var(--color-danger) 32%, var(--color-border-subtle));background:linear-gradient(160deg, var(--color-tint-danger), color-mix(in srgb, var(--color-surface) 92%, transparent))}.card--tone-brand{border-color:color-mix(in srgb, var(--color-brand-purple) 32%, var(--color-border-subtle));background:linear-gradient(160deg, var(--color-tint-brand), color-mix(in srgb, var(--color-surface) 92%, transparent))}.card--tone-accent{border-color:color-mix(in srgb, var(--color-brand-cyan) 32%, var(--color-border-subtle));background:linear-gradient(160deg, var(--color-tint-cyan), color-mix(in srgb, var(--color-surface) 92%, transparent))}.card h2,.card h3{margin-top:0}.card__title{font-size:var(--fs-lg);color:var(--color-text);margin:0 0 8px;font-weight:650;line-height:1.25}.card__title--info{color:var(--color-primary-deep)}.card__title--success{color:var(--color-success-deep)}.card__title--warning{color:var(--color-warning-deep)}.card__title--danger{color:var(--color-danger-deep)}.card__title--brand{color:var(--color-brand-purple-deep)}.card__hint{font-size:var(--fs-md);color:var(--color-text-muted);margin:0 0 10px;line-height:1.4}.btn{border-radius:var(--radius-sm);font-size:var(--fs-lg);min-height:44px;transition:transform var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out), background var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out), opacity var(--motion-fast) var(--ease-out);border:none;padding:9px 14px;font-weight:500}.btn--primary{background:linear-gradient(135deg, var(--rms-accent,var(--color-primary)) 0%, color-mix(in srgb, var(--rms-accent,var(--color-primary)) 68%, #0369a1) 100%);color:#041018;border:1px solid color-mix(in srgb, var(--rms-accent,var(--color-primary)) 50%, transparent);box-shadow:var(--rms-accent-glow,0 0 14px #5ee9ff73)}.btn--primary:hover,.btn--primary:focus-visible{filter:brightness(1.06);box-shadow:var(--rms-accent-glow,0 0 14px #5ee9ff73), 0 4px 12px color-mix(in srgb, var(--rms-accent) 22%, transparent);transform:translateY(-1px)}[data-theme=light] .btn--primary{color:#fff;background:linear-gradient(135deg, var(--rms-accent,var(--color-primary)) 0%, color-mix(in srgb, var(--rms-accent-2,var(--rms-accent,var(--color-primary))) 78%, #0f172a) 100%);border-color:color-mix(in srgb, var(--rms-accent-2,var(--rms-accent,var(--color-primary))) 52%, transparent);box-shadow:0 0 14px color-mix(in srgb, var(--rms-accent,var(--color-primary)) 38%, transparent), 0 0 24px color-mix(in srgb, var(--rms-accent-2,var(--rms-accent,var(--color-primary))) 18%, transparent)}[data-theme=light] .btn--primary:hover,[data-theme=light] .btn--primary:focus-visible{background:linear-gradient(135deg, color-mix(in srgb, var(--rms-accent,var(--color-primary)) 82%, #fff) 0%, var(--rms-accent,var(--color-primary)) 100%);box-shadow:0 0 18px color-mix(in srgb, var(--rms-accent,var(--color-primary)) 46%, transparent), 0 0 30px color-mix(in srgb, var(--rms-accent-2,var(--rms-accent,var(--color-primary))) 24%, transparent)}.btn--secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-subtle)}.btn--secondary:hover,.btn--secondary:focus-visible{border-color:color-mix(in srgb, var(--rms-accent,var(--color-primary)) 40%, var(--color-border-subtle));background:var(--color-surface-elevated);color:var(--color-primary-deep);box-shadow:0 0 10px color-mix(in srgb, var(--rms-accent) 15%, transparent);transform:translateY(-1px)}.btn--success{background:var(--color-success);color:var(--color-on-primary);box-shadow:0 2px 10px color-mix(in srgb, var(--color-success) 26%, transparent)}.btn--success:hover,.btn--success:focus-visible{background:color-mix(in srgb, var(--color-success) 88%, white);transform:translateY(-1px)}.btn--warning{background:var(--color-warning);color:var(--color-on-primary)}.btn--warning:hover,.btn--warning:focus-visible{background:color-mix(in srgb, var(--color-warning) 88%, white);transform:translateY(-1px)}.btn--danger{background:var(--color-danger);color:var(--color-on-primary)}.btn--danger:hover,.btn--danger:focus-visible{background:color-mix(in srgb, var(--color-danger) 88%, white);transform:translateY(-1px)}.btn:active{box-shadow:none;transform:scale(.98)}.btn:disabled{opacity:.55;box-shadow:none;transform:none}.supplement-modal-overlay{top:0;left:0;right:0;bottom:var(--modal-viewport-bottom,0px);z-index:var(--z-modal);-webkit-backdrop-filter:blur(6px);overscroll-behavior:contain;touch-action:none;box-sizing:border-box;width:auto;max-width:100%;padding:var(--modal-overlay-padding-top,12px) 0 max(12px, env(safe-area-inset-bottom));background:#0000009e;justify-content:center;align-items:flex-start;display:flex;position:fixed;overflow:hidden}.supplement-modal-overlay--fullscreen{align-items:stretch;padding:0}.supplement-modal-overlay--fullscreen .supplement-modal-panel{flex-direction:column;width:100%;max-width:none;height:100%;min-height:100dvh;margin:0;display:flex}.supplement-modal-overlay--fullscreen .supplement-modal-card{border-left:none;border-right:none;border-radius:0;flex:auto;height:100%;min-height:0;max-height:none}.supplement-modal-panel{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:0 var(--page-padding-x);margin:0}.supplement-modal-card{box-sizing:border-box;border-radius:var(--rms-radius-lg,var(--radius-lg));border:1px solid var(--rms-border-strong,var(--color-border-subtle));width:100%;min-width:0;max-width:100%;max-height:100%;box-shadow:var(--rms-shadow-card);flex-direction:column;padding:0;display:flex;overflow:hidden}.supplement-modal-header{box-sizing:border-box;flex-shrink:0;align-items:flex-start;gap:8px;padding:12px 12px 0;display:flex}.supplement-modal-header__main{flex:auto;min-width:0}.supplement-modal-header__close{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--color-text);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin:-6px -4px 0 0;font-size:28px;line-height:1;display:inline-flex}.supplement-modal-header__close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.supplement-modal-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;box-sizing:border-box;flex:auto;min-width:0;max-width:100%;min-height:0;padding:12px;overflow:hidden auto}.supplement-modal-actions{gap:var(--page-gap-tight);border-top:1px solid var(--color-surface-elevated);background:var(--color-surface);padding:12px;padding-bottom:max(12px, env(safe-area-inset-bottom));box-sizing:border-box;flex-wrap:wrap;flex-shrink:0;justify-content:stretch;margin:0;display:flex}.supplement-modal-actions>*{flex:calc(50% - 6px);min-width:120px}.supplement-catalog-toggle-row{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.supplement-catalog-toggle-btn{width:100%;min-height:44px}.supplement-freq-square-row{flex-wrap:wrap;gap:8px;display:flex}.supplement-freq-square{border-radius:var(--radius-sm);border:1px solid var(--color-surface-elevated);background:var(--color-bg);width:44px;height:44px;color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;font-size:16px;font-weight:600;display:inline-flex}.supplement-freq-square.is-selected{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent,#fff)}.supplement-intake-window{border-radius:var(--radius-sm);border:1px solid var(--color-surface-elevated);background:var(--color-bg);gap:8px;padding:10px;display:grid}.supplement-intake-window__times{grid-template-columns:1fr 1fr;gap:8px;display:grid}.supplement-filter-chip-row{flex-wrap:wrap;gap:8px;max-width:100%;display:flex}.supplement-filter-chip-row--scroll{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;scrollbar-width:none;flex-wrap:nowrap;width:100%;min-width:0;max-width:100%;padding-bottom:2px;overflow-x:auto}.supplement-filter-chip-row--scroll::-webkit-scrollbar{display:none}.supplement-filter-chip-row--scroll .supplement-filter-chip{white-space:nowrap;text-align:left;flex:none;max-width:none}.supplements-page,.supplement-modal-overlay,.supplement-plan-review{--color-accent:#5adf8a;--color-accent-muted:#5adf8abf;--rms-page-accent:#5adf8a}.supplement-plan-review,.supplements-page{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:clip}.supplement-plan-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}@media (width>=520px){.supplement-plan-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}}.supplement-plan-review__item-title{word-break:break-word;flex:100%;min-width:0}.supplement-plan-review__duplicate-actions .btn{white-space:normal;text-align:left;width:100%;max-width:100%}.supplement-section-disclaimer{width:100%;min-width:0}.supplements-main-tabs{border-radius:var(--rms-radius-md);border:1px solid var(--rms-border);background:color-mix(in srgb, var(--rms-surface-solid) 70%, transparent);grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-width:100%;margin-bottom:8px;padding:6px;display:grid}.supplements-main-tabs .btn{width:100%;font-size:var(--fs-xs);min-height:40px;padding-left:4px;padding-right:4px}.supplements-main-tabs .btn--primary{background:linear-gradient(135deg, color-mix(in srgb, var(--rms-page-accent) 88%, #0a0f18), color-mix(in srgb, var(--rms-page-accent) 55%, #0a0f18));color:#0a0f18;box-shadow:0 0 14px color-mix(in srgb, var(--rms-page-accent) 25%, transparent)}.supplements-main-tabs .btn--secondary{color:var(--rms-text-muted);background:0 0;border-color:#0000}.supplement-plan-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.supplement-plan-form-grid--tight{gap:8px}.supplement-plan-form-grid label,.supplement-plan-form-grid input,.supplement-plan-form-grid select,.supplement-plan-form-grid textarea{min-width:0;max-width:100%}.supplement-filter-chip{border:1px solid var(--rms-border);background:color-mix(in srgb, var(--rms-bg-soft) 90%, var(--rms-surface-solid));min-width:44px;max-width:100%;min-height:44px;color:var(--rms-text-muted);font-size:var(--fs-md);cursor:pointer;white-space:normal;text-align:center;-webkit-tap-highlight-color:transparent;transition:border-color var(--rms-transition-fast), background var(--rms-transition-fast), color var(--rms-transition-fast), box-shadow var(--rms-transition-fast), transform var(--rms-transition-fast);border-radius:999px;flex:calc(50% - 4px);padding:10px 14px;line-height:1.25}@media (width>=480px){.supplement-filter-chip{white-space:nowrap;flex:0 auto}}.supplement-filter-chip--active{border-color:color-mix(in srgb, var(--rms-page-accent,var(--rms-accent-2)) 50%, transparent);background:color-mix(in srgb, var(--rms-page-accent,var(--rms-accent-2)) 14%, transparent);color:var(--rms-page-accent,var(--rms-accent-2));box-shadow:0 0 12px color-mix(in srgb, var(--rms-page-accent,var(--rms-accent-2)) 18%, transparent);font-weight:600}.supplement-data-needs-row{border-radius:var(--rms-radius-md);border:1px solid var(--rms-border);background:color-mix(in srgb, var(--rms-surface-solid) 88%, transparent);box-shadow:var(--rms-shadow-soft);transition:border-color var(--rms-transition-fast), transform var(--rms-transition-fast);padding:14px 12px}.supplement-data-needs-row:hover{border-color:color-mix(in srgb, var(--rms-accent-2) 28%, var(--rms-border))}.supplements-page .card{border-color:var(--rms-border)}.supplements-page .card h2{font-size:var(--fs-xl);letter-spacing:-.01em}.supplements-page .chip,.supplements-page .chip-row .chip{border-color:var(--rms-border)}.supplements-page table,.supplements-page [role=row]{min-width:0}.supplements-page .lab-history-row,.supplements-page tr[data-lab-row]{border-bottom:1px solid var(--rms-border)}.supplements-page .rms-summary-grid,.supplements-page [style*=gridTemplateColumns]{min-width:0}.supplement-data-needs-row__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.supplement-data-needs-row__title{font-size:var(--fs-lg);word-break:break-word;line-height:1.35}.supplement-data-needs-row__summary{font-size:var(--fs-base);color:var(--color-text);margin:10px 0 0;line-height:1.45}.supplement-form-section{border-radius:var(--rms-radius-md);border:1px solid var(--rms-border);background:color-mix(in srgb, var(--rms-bg-soft) 85%, var(--rms-surface-solid));margin-bottom:10px;padding:10px 12px}.supplement-form-section summary{cursor:pointer;font-size:var(--fs-base);color:var(--color-text);align-items:center;min-height:44px;font-weight:600;list-style:none;display:flex}.supplement-form-section summary::-webkit-details-marker{display:none}.supplement-form-section__body{gap:12px;margin-top:10px;display:grid}.supplement-mobile-touch-btn{min-height:44px;padding:10px 14px}.supplement-knowledge-card{border-radius:var(--rms-radius-md,var(--radius-md));background:var(--color-surface-elevated);border:1px solid var(--rms-border,var(--color-border-subtle));padding:12px}.supplement-knowledge-card__header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.supplement-knowledge-card__title-block{flex:auto;min-width:0}.supplement-monthly-cost-badge{--supplement-cost-blue:var(--color-brand-cyan,#38bdf8);--supplement-cost-blue-muted:color-mix(in srgb, var(--supplement-cost-blue) 70%, var(--color-text-muted));border:1.5px solid color-mix(in srgb, var(--supplement-cost-blue) 55%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--supplement-cost-blue) 22%, var(--color-surface-elevated)), color-mix(in srgb, var(--supplement-cost-blue) 10%, var(--color-surface-elevated)));box-shadow:0 0 0 1px color-mix(in srgb, var(--supplement-cost-blue) 12%, transparent);border-radius:999px;flex-shrink:0;align-items:center;gap:6px;margin:0;padding:5px 11px;line-height:1.15;display:inline-flex}.supplement-monthly-cost-badge__label{letter-spacing:.04em;text-transform:uppercase;color:var(--supplement-cost-blue-muted);font-size:10px;font-weight:700}.supplement-monthly-cost-badge__amount{color:var(--supplement-cost-blue);white-space:nowrap;font-size:15px;font-weight:800}button.supplement-food-difficulty-score{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--rms-transition-fast), box-shadow var(--rms-transition-fast), border-color var(--rms-transition-fast)}button.supplement-food-difficulty-score:hover,button.supplement-food-difficulty-score:focus-visible{transform:translateY(-1px)}button.supplement-food-difficulty-score:active{transform:scale(.98)}.supplement-food-difficulty-score{border-radius:var(--rms-radius-sm,var(--radius-sm));border:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-surface) 88%, transparent);min-width:52px;box-shadow:0 0 12px color-mix(in srgb, var(--rms-accent-2,var(--color-primary)) 10%, transparent);flex:none;grid-template-rows:auto auto;grid-template-columns:auto auto;place-items:baseline end;gap:0 2px;padding:6px 8px;display:grid}.supplement-food-difficulty-score__label{font-size:var(--fs-2xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);grid-column:1/-1;justify-self:start;font-weight:600}.supplement-food-difficulty-score__value{font-size:var(--fs-5xl);text-shadow:0 0 14px color-mix(in srgb, currentColor 35%, transparent);font-weight:700;line-height:1}.supplement-food-difficulty-score__max{font-size:var(--fs-xs);color:var(--color-text-muted);align-self:end;margin-bottom:2px}.supplement-food-difficulty-score__hint{font-size:var(--fs-2xs);grid-column:1/-1;justify-self:start;font-weight:600;line-height:1.2}.supplement-food-difficulty-score--modal{cursor:default;pointer-events:none;display:inline-grid}.supplement-knowledge-card__actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.supplement-knowledge-card__actions .btn{flex:120px;min-width:0}[data-theme=light] .supplement-knowledge-card{background:var(--color-surface);box-shadow:var(--rms-shadow-soft,0 1px 4px #0f172a0f)}[data-theme=light] .supplement-food-difficulty-score{background:#f8fafc}.lab-catalog-grid{gap:10px;display:grid}.lab-value-badge{border-radius:var(--rms-radius-sm,8px);border:1px solid var(--lab-badge-border,var(--rms-border));background:var(--lab-badge-bg,var(--color-surface-elevated));min-width:56px;color:var(--lab-badge-color,var(--color-text));flex:none;grid-template-rows:auto auto;grid-template-columns:auto auto;place-items:baseline end;gap:0 2px;padding:6px 8px;display:grid}.lab-value-badge__label{font-size:var(--fs-2xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);grid-column:1/-1;justify-self:start;font-weight:600}.lab-value-badge__value{font-size:var(--fs-xl);text-shadow:0 0 14px color-mix(in srgb, currentColor 35%, transparent);grid-column:1/-1;justify-self:end;font-weight:700;line-height:1.1}.lab-value-badge__hint{font-size:var(--fs-2xs);text-align:right;grid-column:1/-1;justify-self:end;max-width:72px;font-weight:600;line-height:1.2}.lab-fill-expand-panel{border-radius:var(--rms-radius-lg,14px);border:1px solid var(--color-border-subtle,#ffffff1a);background:var(--color-surface-elevated,#ffffff0a);margin-top:10px;padding:12px}[data-theme=light] .lab-fill-expand-panel{background:#f6f7fa;border-color:#0f162414}.lab-fill-expand-panel__header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.lab-fill-expand-panel__title{color:var(--color-text);margin:0;font-size:15px;font-weight:700;line-height:1.3}.lab-fill-expand-panel__form{gap:10px;display:grid}.lab-fill-expand-panel__actions{flex-wrap:wrap;gap:8px;display:flex}.lab-detail-sections{gap:12px;margin-top:4px;display:grid}.lab-detail-section-card{border:1px solid var(--color-border-subtle,#ffffff1a);border-radius:var(--rms-radius-lg,14px);background:var(--color-surface-elevated,#ffffff0a);padding:12px 14px 6px;box-shadow:0 1px #0000001f}[data-theme=light] .lab-detail-section-card{box-shadow:none;background:#f6f7fa;border-color:#0f162414}.lab-detail-section-card__title{color:var(--color-text);letter-spacing:.01em;margin:0 0 10px;font-size:15px;font-weight:700;line-height:1.3}.lab-detail-section-card__body{gap:0;display:grid}.lab-detail-field{border-bottom:1px solid var(--color-border-subtle,#ffffff0f);margin:0 0 12px;padding-bottom:10px}.lab-detail-field:last-child{border-bottom:none;padding-bottom:2px}.lab-detail-field__label{color:var(--color-text-muted);margin:0 0 4px;font-size:12px;font-weight:600}.lab-detail-field__text{color:var(--color-text);margin:0;font-size:14px;line-height:1.45}[data-theme=light] .lab-detail-field{border-bottom-color:#0f16240f}
