:root{--font-reading:'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;--font-ui:'Avenir Next',Avenir,'Segoe UI',sans-serif}
body,.feed-caption,.quick-message p,.comment-text,.conversation-message{font-family:var(--font-ui);font-size:16px;line-height:1.5}
h1,h2,h3,.exercise-title,.profile-name,.modal-head h2{font-family:var(--font-reading);letter-spacing:-.35px}
button,input,textarea,select,label,.btn,.tag,.pill,.eyebrow,small,.note,.subtitle,.stat-value,.app-nav-title,.inbox-preview,.sets-row{font-family:var(--font-ui)}
input,textarea,select,button{font-size:inherit}h2{font-weight:600}.feed-caption,.quick-message p{font-size:17px}.stat-value,.sets-row,.load-chart{font-variant-numeric:tabular-nums}
:root:not([data-theme=light]) .photo-composer,:root:not([data-theme=light]) #modal.photo-composer,:root:not([data-theme=light]) .photo-composer .modal-head,:root:not([data-theme=light]) .photo-composer .composer-step-actions,:root:not([data-theme=light]) .photo-composer .composer-modes,:root:not([data-theme=light]) .photo-composer .gallery-heading,:root:not([data-theme=light]) .photo-composer .composer-step-two,:root:not([data-theme=light]) .photo-composer .composer-step-one{background:#000!important;background-image:none!important}
:root:not([data-theme=light]) input,:root:not([data-theme=light]) textarea,:root:not([data-theme=light]) select,:root:not([data-theme=light]) .post-details,:root:not([data-theme=light]) .composer-selected{background-color:#101010;border-color:#303030}
:root:not([data-theme=light]) .photo-composer .btn.secondary,:root:not([data-theme=light]) .photo-composer .btn.ghost{background:#151515;color:var(--text)}
.photo-composer .composer-step-actions{box-shadow:none;border-top:1px solid var(--line)}.photo-composer .composer-caption-preview{background:transparent}.photo-composer #postCanvas{width:100%;height:auto;max-height:48dvh;object-fit:contain}
.password-field{position:relative;display:block}.password-field input{padding-right:50px!important;width:100%}.password-eye{position:absolute;right:3px;top:50%;transform:translateY(-50%);height:44px;width:44px;padding:11px;border:0;background:transparent;color:var(--muted);display:grid;place-items:center}.password-eye svg{width:22px;height:22px}.password-eye[aria-pressed=true]{color:var(--green)}
.monthly-progress{margin:22px 0}.monthly-progress .section-line{margin-top:0;align-items:center;gap:10px}.monthly-progress .section-line label{font-size:12px}.monthly-progress input[type=month]{max-width:180px}.monthly-weight{padding:15px 0 22px}.monthly-weight>strong{display:block;font-size:32px}.monthly-progress .list-row{gap:12px}.monthly-progress .list-row>span{white-space:nowrap}.monthly-progress .list-row small{display:block;margin-top:4px}.load-chart{margin:20px 0}.load-chart svg{width:100%;display:block}.load-chart figcaption{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted)}
@media(max-width:440px){.monthly-progress .section-line{flex-wrap:wrap}.quick-chat-composer{bottom:calc(70px + env(safe-area-inset-bottom))}}
.rest-preference{display:flex;align-items:center;gap:7px;font-size:12px}.rest-preference input{width:74px;margin:0;padding:8px}.rest-clock{font-family:var(--font-ui);font-variant-numeric:tabular-nums;color:var(--green);width:100%;margin:0}.rest-clock:empty{display:none}

/* Keep reading text and numeric controls consistent; reserve serif for headings. */
.routine-link strong,.day strong,.streak,.stat-value span,.volume-number,.insight-stat strong,.story-add{font-family:var(--font-ui)}
