.life-tabs { display: flex; overflow-x: auto; gap: 4px; margin-bottom: 12px; padding: 4px; border: 1px solid #dfcfb4; border-radius: 12px; background: #fcf8ef; }
.life-tabs[hidden], .life-readings [hidden] { display: none !important; }
.life-tabs [role="tab"] { flex: 1 0 auto; min-height: 48px; padding: 10px 12px; border: 0; border-radius: 8px; background: transparent; color: #65090d; font: inherit; font-weight: 600; white-space: nowrap; cursor: pointer; touch-action: manipulation; }
.life-tabs [aria-selected="true"] { background: #65090d; color: #fff; }
.life-tabs [role="tab"]:focus-visible { outline: 2px solid #a98040; outline-offset: -3px; }
.life-readings [role="tabpanel"] { min-width: 0; outline-offset: 4px; }
.life-readings [role="tabpanel"]:not([hidden]) { animation: life-panel-in .18s ease-out; }
.life-other-facts dd { margin: 4px 0 18px; }
.life-reading-section { min-width: 0; }
.life-chart-view { width: 100%; min-width: 0; background: #fffdf9; border-radius: 12px; }
.life-chart-toolbar { display: flex; justify-content: flex-end; padding: 8px; }
.life-chart-heading { display: none; }
.life-chart-view.is-expanded .life-chart-toolbar { gap: 12px; align-items: center; }
.life-chart-view.is-expanded .life-chart-heading { display: block; margin-right: auto; font-size: 14px; font-weight: 600; }
.life-chart-svg { display: block; width: 100%; height: auto; overflow: visible; touch-action: pan-y pinch-zoom; }
.life-chart-svg text { font-family: Sarabun, sans-serif; }
.life-chart-view.is-expanded { margin: 0 !important; position: fixed; inset: 0; z-index: 1040; width: 100%; height: 100dvh; border-radius: 0; padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px); display: flex; flex-direction: column; overscroll-behavior: contain; }
.life-chart-view.is-expanded .life-chart-svg { flex: 1; min-height: 0; height: 100%; }
.life-chart-view.is-expanded .life-chart-toolbar { flex-shrink: 0; }
.life-chart-view [hidden] { display: none !important; }
.life-base-table-content { min-height: 0; }
.life-base-table-view.is-expanded .life-base-table-content { flex: 1; overflow: auto; overscroll-behavior: contain; }
.life-base-table-content table { margin-bottom: 0; }
.life-base-table-mobile { display: none; }
.life-base-table-mobile button { min-width: 44px; min-height: 44px; }
.life-base-table-content caption { padding: 8px; font-size: 14px; }
@keyframes life-panel-in { from { opacity: .4; transform: translateX(8px); } to { opacity: 1; transform: translateX(0); } }
@media (prefers-reduced-motion: reduce) { .life-readings [role="tabpanel"] { animation: none !important; } }
@media (max-width: 575.98px) {
    .life-base-table-wide { display: none; }
    .life-base-table-mobile { display: table; width: 100%; table-layout: fixed; }
    .life-base-table-mobile > :not(caption) > * > * { padding: 3px 8px; }
    .life-base-table-mobile thead th { padding-block: 8px; }
    .life-tabs [role="tab"] { padding: 10px 8px; font-size: 14px; }
    .life-readings .card-body.p-4 { padding: 16px !important; }
    .life-readings .life-chart-card { margin-inline: -12px; border-radius: 0; }
    .life-chart-card .life-chart-view { width: calc(100% + 32px); margin-inline: -16px; border-radius: 0; }
}
@media print { .life-tabs, .life-slide-hint { display: none !important; } }

.life-base-table-view .life-chart-toolbar { gap: 8px; flex-wrap: wrap; }
.life-base-table-view.is-expanded [data-life-table-collapse] { display: none; }
