

body {background:var(--bg-surface);color:var(--text-primary);}
.book-mast {height:62px;border-bottom:var(--line-card);display:flex;align-items:center;justify-content:space-between;padding:0 max(30px,calc((100vw - 1120px)/2));background:var(--bg-surface);}
.book-mast-brand {display:flex;align-items:center;gap:12px;white-space:nowrap;}
.book-mast-brand img {width:34px;height:34px;border-radius:50%;object-fit:cover;background:var(--bg-page);}
.book-mast-brand strong {font-size:23px;letter-spacing:-1px;line-height:1;}
.book-mast-brand i {height:16px;width:1px;background:var(--bg-fill);margin:0 2px;}
.book-mast-brand span,.book-mast small {font-size:12px;color:var(--text-weak);}
.stage {width:min(1180px,100%);height:calc(100dvh - 62px);min-height:0;margin:0 auto;display:grid;grid-template-columns:minmax(300px, .88fr) minmax(370px,1.4fr);align-items:stretch;gap:0;padding:0 24px;}
#panel-left.side-panel {align-self:center;position:static;flex:initial;width:auto;max-height:100%;overscroll-behavior:contain;overflow-y:auto;transform:none;box-shadow:none;border-radius:0;background:transparent;}
.book-inner {width:100%;max-width:416px;padding:28px 34px 24px 0;margin:auto;}
.book-kicker,.book-ordinal {display:flex;align-items:center;gap:9px;font-size:var(--font-aux);letter-spacing:.4px;color:var(--text-weak);}
.book-kicker i {width:8px;height:8px;border-radius:50%;background:var(--color-primary);}
.book-inner h1 {font-size:clamp(30px,3.1vw,46px);font-weight:620;letter-spacing:-1.9px;line-height:1.22;margin:12px 0 10px;}
.book-deck,.book-synopsis p {font-size:15px;line-height:1.8;color:var(--text-weak);margin:0;text-wrap:pretty;}
.book-chapters {display:flex;gap:4px;padding:4px;background:var(--bg-page);border-radius:14px;margin:25px 0 28px;}
.book-chapter {display:flex;flex:1;align-items:center;justify-content:center;gap:5px;padding:10px 2px;border:0;background:transparent;border-radius:10px;color:var(--text-weak);font-size:13px;white-space:nowrap;}
.book-chapter span {font:10px var(--font-family-number);color:var(--text-secondary);}
.book-chapter[aria-pressed=true] {background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--elev-1);font-weight:600;}
.book-chapter[aria-pressed=true] span {color:var(--text-weak);}
.book-ordinal i {width:20px;height:1px;background:var(--text-disabled);}
.book-synopsis h2 {font-size:clamp(23px,2.3vw,34px);font-weight:600;line-height:1.3;letter-spacing:-.9px;margin:10px 0;}
.book-controls {margin-top:23px;}
.book-start {padding:0 24px;min-height:46px;font-size:15px;min-width:168px;color:var(--text-primary);}
.book-inner footer {color:var(--text-secondary);font-size:11px;margin-top:29px;}
.book-progress-head {display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-weak);}
.book-progress-head b {font:12px var(--font-family-number);}
.book-meter {height:3px;background:var(--bg-fill);border-radius:2px;margin:7px 0 13px;overflow:hidden;}
.book-meter i {background:var(--color-accent-deep);height:100%;display:block;}
.book-current {display:grid;gap:3px;}
.book-current b {font-size:15px;}
.book-current span {font-size:12px;line-height:1.6;color:var(--text-weak);}
.book-next,.book-tool,.book-index button,.book-mobile button {border:0;background:none;color:var(--text-body);}
.book-next {margin-top:8px;padding:8px 12px;background:var(--color-track);border-radius:8px;}
.book-tools {display:flex;gap:14px;margin-top:12px;}
.book-tool {padding:5px 0;font-size:12px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--text-disabled);}
.book-tool:disabled,.book-mobile button:disabled {opacity:.4;}
.book-index {margin-top:12px;font-size:12px;color:var(--text-weak);}
.book-index summary {cursor:pointer;}
.book-index ol {margin:8px 0;padding:0 0 0 22px;line-height:1.8;}
.book-index li.now {font-weight:650;color:var(--text-primary);}
.book-index button {font:inherit;color:inherit;padding:0;text-decoration:underline;}
.book-device {position:relative;min-width:0;min-height:0;margin:14px 0;display:flex;align-items:center;justify-content:center;border-radius:32px;background:radial-gradient(ellipse at 62% 32%,var(--color-track),transparent 56%),var(--bg-page-alt);isolation:isolate;}
.book-device .phone-col {position:relative;z-index:1;}
.book-device .phone {box-shadow:var(--elev-3);}
.book-mobile,.book-scrim {display:none;}
 
.life-host > :not(.life-home) {display:none!important;}
.life-host {scroll-padding-top:12px;}
.life-home {padding:0 var(--space-page) 90px;color:var(--text-body);}
.life-header {display:flex;align-items:center;justify-content:space-between;margin:12px 4px 18px;}
.life-header span {font-size:var(--font-aux);color:var(--text-weak);}
.life-header h2 {font-size:26px;letter-spacing:-.8px;margin:4px 0 0;font-weight:600;}
.life-avatar {width:39px;height:39px;border-radius:50%;border:var(--line-card);padding:0;background:var(--bg-surface);overflow:hidden;}
.life-avatar img {width:100%;height:100%;object-fit:cover;}
.life-hero {padding:22px;position:relative;overflow:hidden;isolation:isolate;min-height:220px;background:radial-gradient(ellipse at 92% 40%,var(--color-accent-bg),transparent 63%),var(--grad-card-wash);}
.life-pill {display:inline-flex;align-items:center;gap:5px;font-size:var(--font-aux);color:var(--text-weak);}
.life-pill svg {width:16px;height:16px;}
.life-numeral {display:block;position:relative;z-index:1;font:var(--font-number-xl)/1.05 var(--font-family-number);color:var(--text-number);margin:25px 0 12px;letter-spacing:-1.6px;}
.life-hero h3 {position:relative;z-index:1;font-size:var(--font-title);line-height:1.5;margin:0;max-width:210px;}
.life-hero p {font-size:var(--font-aux);color:var(--text-weak);margin:5px 0 0;}
.life-sunny {position:absolute;width:43%;right:-3%;bottom:27%;aspect-ratio:1;}
.life-sunny::before {content:'';position:absolute;bottom:5%;left:26%;width:50%;height:6%;border-radius:50%;background:var(--color-accent-bg);filter:blur(2px);}
.life-sunny img {width:100%;height:100%;object-fit:contain;position:relative;}
.life-section {margin:26px 0 0;}
.life-section h3 {font-size:var(--font-title);margin:0 2px 12px;}
.life-list {padding:0 16px;}
.life-row {display:flex;align-items:center;gap:12px;padding:16px 0;line-height:1.55;}
.life-row+.life-row {border-top:var(--line-card);}
.life-icon {width:33px;height:33px;border-radius:50%;background:var(--color-track);display:grid;place-items:center;}
.life-icon svg,.life-chatlink svg {width:17px;height:17px;}
.life-row b {font-size:var(--font-body);}
.life-row p {font-size:var(--font-aux);color:var(--text-weak);margin:2px 0 0;}
.life-chatlink {width:100%;display:flex;align-items:center;gap:9px;border:var(--line-card);background:var(--bg-surface);border-radius:var(--radius-card);padding:13px 17px;margin-top:16px;color:var(--text-body);}
.life-chatlink span {flex:1;text-align:left;}
body.pa-demo .tb-tab[data-screen="friends"] {display:none;}
@media(max-width:970px) and (min-width:760px) {.stage{padding:0 16px;grid-template-columns:minmax(290px,.92fr) minmax(350px,1.18fr);} .book-inner{padding-right:22px;} .book-chapters{gap:0;}.book-chapter{font-size:12px;}}
@media(max-width:759px) {
 .book-mast{height:44px;padding:0 15px;}.book-mast-brand img {width:25px;height:25px;}.book-mast-brand strong{font-size:18px;}.book-mast-brand{gap:8px;}
 .stage{display:block;width:100%;height:calc(100dvh - 92px);padding:0;}
 .book-device,.book-device .phone-col,.book-device .phone{width:100%;height:100%;margin:0;border:0;border-radius:0;}
 .book-device .phone{box-shadow:none;box-sizing:border-box;}
 .book-device .phone-col{display:block;}
 #panel-left.side-panel{position:fixed;z-index:300;top:44px;left:0;bottom:47px;width:min(440px,100%);max-height:none;background:var(--bg-surface);visibility:hidden;transform:translateX(-103%);transition:transform var(--dur-base) var(--ease-out),visibility var(--dur-base);overflow:auto;}
 body.drawer-left #panel-left{transform:none;visibility:visible;}
 .book-inner{padding:24px 22px;max-width:440px;margin:0 auto;}
 .book-inner h1{font-size:32px;}.book-chapters{margin:20px 0 23px;}.book-inner footer{margin-top:22px;}
 .book-mobile{position:fixed;z-index:304;bottom:0;left:0;right:0;display:flex;align-items:center;gap:12px;height:48px;border-top:var(--line-card);padding:0 16px;background:var(--bg-surface);}
 .book-mobile button{font-size:12px;padding:8px 0;}.book-mobile button:first-child{margin-right:auto;font-weight:600;}.book-mobile button:first-child span{margin-right:6px;}
 body.drawer-left .book-scrim {display:block;position:fixed;inset:44px 0 47px;z-index:298;background:rgba(0,0,0,.16);}
}
@media(prefers-reduced-motion:reduce){#panel-left.side-panel{transition:none;}}

.book-finish{display:flex;align-items:center;gap:6px;color:var(--text-body);font-size:var(--font-body);font-weight:600;}
.book-finish svg{color:var(--color-accent-deep);width:19px;height:19px;}
.book-end-text{margin:8px 0 0;font-size:13px;color:var(--text-weak);line-height:1.65;}
@media(max-width:759px) {
 #panel-left.side-panel {align-self:stretch;height:calc(100dvh - 91px);}
 body:not(.book-started).drawer-left #panel-left {width:100%;bottom:0;height:calc(100dvh - 44px);}
 body:not(.book-started).drawer-left .book-mobile {display:none;}
 body:not(.book-started) .book-synopsis {position:relative;border-radius:var(--radius-card);padding:20px;background:var(--grad-card-wash);border:var(--line-card);}
 body:not(.book-started) .book-synopsis h2 {margin:15px 0 12px;}
 body:not(.book-started) .book-start {width:100%;}
}
