:root{font-family:Noto Sans SC,Microsoft YaHei,system-ui,sans-serif;color:#46392f;background:#fffaf3;font-synthesis:none;font-size:16px;line-height:1.6;color-scheme:light}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{min-height:44px;border:1px solid #eadbca;background:#fffdf8;border-radius:12px;padding:9px 16px;color:inherit;cursor:pointer}button:disabled{opacity:.48;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e9a45f;outline-offset:3px}h1,h2,p{margin:0 0 14px}h1{font-size:30px;letter-spacing:.05em;line-height:1.4}h2{font-size:21px;font-weight:600}small{font-size:13px}.muted{color:#918476;font-size:14px}.eyebrow{font-size:11px;letter-spacing:.16em;color:#b18c62;margin-bottom:6px}.app-shell{max-width:860px;margin:auto;padding-bottom:110px}.home-header{display:flex;align-items:center;justify-content:space-between;padding:28px 32px 18px;background:#fffaf3ed;position:sticky;top:0;z-index:5;border-bottom:1px solid #f0e4d5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.home-header h1{margin:0}.intro{padding:30px 32px 8px}.intro h2{font-size:26px}.intro p{color:#a08d78;font-size:14px}.subject-list{display:flex;gap:12px;flex-wrap:wrap}.filter{padding:8px 32px 24px}.subject{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:86px;gap:5px;padding:12px;border-color:#efe2d2;background:#fffcf6}.subject span{font-size:28px}.subject.selected{background:#fff0d5;border:2px solid #edab65;color:#a06129;padding:11px}.primary{background:#ec964f;color:#fff;border-color:#ec964f;font-weight:600;padding:13px 24px;border-radius:14px}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(860px,100%);z-index:10;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;padding:10px 12px max(10px,env(safe-area-inset-bottom));background:#fffdf9f7;border-top:1px solid #eee1cf;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.bottom-nav button{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:0;font-size:13px;color:#a09381}.bottom-nav button>span{font-size:25px;line-height:1.2}.bottom-nav .active{color:#d77f34;font-weight:600}.bottom-nav .add-button span{background:#ed9851;color:#fff;border-radius:18px;width:54px;height:54px;display:grid;place-items:center;font-size:34px;box-shadow:0 5px 16px #d7893e35}main{max-width:800px;margin:auto;padding:24px 28px 90px}.timeline{padding-top:0}.panel{background:#fffefb;border:1px solid #eee1cf;border-radius:20px;padding:24px;margin:20px 0;box-shadow:0 5px 24px #71543005}.day-card{display:grid;grid-template-columns:85px 1fr;gap:18px;margin-bottom:30px}.date-label{display:flex;flex-direction:column;border-left:2px solid #edb773;padding-left:12px;height:fit-content;font-weight:600}.date-label span{font-size:17px}.date-label small{color:#b19a80}.day-content{background:#fff;padding:18px;border:1px solid #f0e4d6;border-radius:18px}.tags{font-size:14px;color:#ac7b43}.description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:15px;white-space:pre-wrap}.day-content footer{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #f4ece2;padding-top:8px}.text-button{background:transparent;border:0;color:#b5793b;padding-left:0;padding-right:0}.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;border-radius:12px;overflow:hidden}.media-grid button{position:relative;border:0;padding:0;border-radius:0;overflow:hidden;aspect-ratio:1;background:#f8eee1;min-height:0}.media-grid img,.media-grid video{width:100%;height:100%;object-fit:cover;display:block}.media-grid.count-1{grid-template-columns:1fr}.media-grid.count-1 button{aspect-ratio:4/3}.media-grid.count-2,.media-grid.count-4{grid-template-columns:repeat(2,1fr)}.media-grid.count-3{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.media-grid.count-3 button:first-child{grid-row:span 2;aspect-ratio:auto}.video-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#efe1cc;height:100%;color:#a57d4e}.video-preview span{font-size:32px}.more-media{position:absolute;inset:0;display:grid;place-items:center;background:#30261a80;color:#fff;font-size:28px}.empty{padding:65px 24px;text-align:center}.empty p{color:#9b8b77}.empty-mark{font-size:52px;color:#e8b565;margin:15px}.page-header{display:flex;align-items:center;gap:20px;border-bottom:1px solid #eadfce;padding-bottom:18px;margin-bottom:25px}.page-header h1{font-size:24px;margin:0}.page-header button{border:0;background:transparent;padding-left:0}.file-picker{display:block!important;cursor:pointer;text-align:center;padding:26px!important;border:2px dashed #e5bc8a;border-radius:18px;background:#fff2dc;color:#b77936}.file-picker input{position:absolute;width:1px;height:1px;opacity:0}.selection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.selected-media{aspect-ratio:1;position:relative;overflow:hidden;border-radius:10px;background:#f2e7d8}.selected-media>img,.selected-media>video{width:100%;height:100%;object-fit:cover}.selected-media>button{position:absolute;right:5px;top:5px;border:0;background:#433323b3;color:#fff;min-height:30px;padding:0;width:30px;border-radius:100%;font-size:22px}.reorder{position:absolute;bottom:0;left:0;right:0;background:#fff8;display:flex;justify-content:space-between;align-items:center;padding-right:10px}.reorder button{padding:0 10px;min-height:30px;background:none;border:0}label{display:block;margin:16px 0;font-size:14px;color:#76634e}input,textarea,select{display:block;width:100%;border:1px solid #e4d4bf;border-radius:10px;background:#fffefa;padding:11px;margin-top:6px;color:#46392f}input[type=checkbox]{width:20px;height:20px;accent-color:#de914a;display:inline-block;margin-right:9px;flex-shrink:0}.confirmation{display:flex;align-items:center}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}fieldset{border:0;padding:0;margin:24px 0}legend{font-size:17px;margin-bottom:12px}legend small{color:#ac9c87;margin-left:10px}.form-actions{position:sticky;bottom:0;background:#fffaf3ed;padding:16px 0 max(16px,env(safe-area-inset-bottom))}.form-actions button{width:100%}.error{color:#b44c35;background:#fff0e9;border-radius:10px;padding:12px}.danger{color:#b9553b;margin-left:8px}.sheet-backdrop{position:fixed;inset:0;background:#382a1b65;display:flex;align-items:flex-end;justify-content:center;z-index:20}.sheet{background:#fffaf3;border-radius:24px 24px 0 0;padding:28px;width:min(600px,100%)}.sheet>button{display:block;width:100%;margin:12px 0;text-align:left;padding:15px}.detail-media section{margin-bottom:22px}.detail-media img,.detail-media video{width:100%;max-height:80vh;object-fit:contain;border-radius:18px;background:#f4e9d8}.detail-description{white-space:pre-wrap}.detail details{color:#8d7b65;font-size:14px;padding:10px}.profile-avatar{font-size:45px}.profile{display:inline-block;min-width:220px;margin-right:14px}.wide{width:100%}.banner{background:#f9e6c5;padding:14px 25px;display:flex;align-items:center;justify-content:space-between}.banner button{padding:0 10px;border:0;background:transparent}.upload-status{font-size:13px;color:#b57b3b}@media(max-width:600px){.home-header{padding:22px 20px 14px}.eyebrow{font-size:9px}.intro{padding:24px 20px 8px}.filter{padding:8px 20px 20px;gap:9px}.subject{min-width:80px}main{padding:20px 18px 90px}.day-card{grid-template-columns:1fr;gap:10px}.date-label{flex-direction:row;align-items:baseline;gap:10px}.day-content{padding:14px}.panel{padding:18px}.day-content footer{font-size:12px}.day-content footer .muted{font-size:12px}.page-header h1{font-size:22px}.two-fields{gap:10px}}.auth-page{max-width:480px;margin:7vh auto;padding:20px}.auth-options{display:grid;gap:14px}.invite-code{font-size:52px;font-weight:750;letter-spacing:12px;text-align:center;color:#a74c16}.join-request,.device-row{padding:16px 0;border-top:1px solid #efdfd1}.member-row{text-align:left;margin:6px 0}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.offline-banner{position:sticky;top:0;z-index:40;padding:10px 20px;background:#f5e2b9;color:#66512e;font-size:13px}.time-toolbar,.segmented,.filter-chips{display:flex;gap:8px;flex-wrap:wrap;padding:12px 24px}.segmented button.selected{background:#e6ac70;color:#4c311a}.filter-chips button{font-size:12px;padding:4px 12px;min-height:32px;border-radius:20px}.subject-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}.subject-profile{display:flex;flex-direction:column;align-items:center;text-align:center;margin:0}.profile-avatar img{width:72px;height:72px;border-radius:50%;object-fit:cover}.milestone-summary,.milestone-text,.record-description{white-space:pre-wrap;overflow-wrap:anywhere}.milestone-summary{padding:8px 12px;background:#fff4dc;border-radius:8px}.age-heading{font-size:18px;margin:12px}.calendar-page{padding-top:8px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.calendar-heading label,.calendar-heading input{margin:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:16px}.weekday{text-align:center;color:#a38a6d;font-size:13px}.calendar-cell{position:relative;aspect-ratio:1;min-height:0;padding:3px;background:#fffefb;overflow:hidden}.calendar-cell span{position:absolute;top:0;left:4px;z-index:1;font-size:12px;background:#fffc;border-radius:4px;padding:0 2px}.calendar-cell img{width:100%;height:100%;object-fit:cover;border-radius:5px}.calendar-cell small{position:absolute;right:3px;bottom:0;color:#a36429;background:#fff9;border-radius:3px}.calendar-cell.selected{outline:2px solid #cc823f;background:#fae8cf}.calendar-cell.today span{color:#a64d20;font-weight:700}.calendar-preview{margin-top:20px}.calendar-create{display:flex;justify-content:center;gap:8px}.filter-sheet,.comments-sheet{max-height:90dvh;overflow:auto}.filter-sheet fieldset label{display:inline-flex;align-items:center;margin:3px 12px 3px 0}.sheet header{display:flex;align-items:center;justify-content:space-between}.message-row,.search-result{text-align:left;display:block;width:100%}.message-row small{color:#9a856b}.search-form{display:flex;gap:12px;align-items:end}.search-form label{flex:1}.search-form button{margin-bottom:16px}.search-thumbs{display:flex;gap:4px}.search-thumbs>span{display:block;width:20%;aspect-ratio:1;position:relative;overflow:hidden}.search-thumbs img{width:100%;height:100%;object-fit:cover}.media-kind{position:absolute;bottom:5px;left:6px;padding:1px 7px;background:#382b1d99;color:#fff;border-radius:6px;font-size:11px}.reactions{display:flex;gap:4px;flex-wrap:wrap}.reactions button{font-size:12px;min-height:32px;padding:4px 7px}.reactions button[aria-pressed=true]{background:#f9dfbc;border-color:#d69b55}.interactions{padding:10px 0}.comment{padding:14px 0;border-bottom:1px solid #eadac4}.comment p{white-space:pre-wrap;overflow-wrap:anywhere}.comment small{display:block;color:#97836a}.comment button{font-size:12px;min-height:28px;margin:4px}.comment-composer{position:sticky;bottom:0;background:#fffaf3;padding-top:8px}.record-actions{display:flex;gap:10px;flex-wrap:wrap}.button-link{display:inline-block;padding:10px 14px;color:#986531;border:1px solid #e4d0b8;border-radius:10px;text-decoration:none;text-align:center;background:#fff9f0}.record-highlight{outline:3px solid #dfad6d}.edit-media{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.edit-media img{width:100%;aspect-ratio:1;object-fit:cover}.edit-media button{font-size:11px;min-height:30px;padding:4px}.media-viewer{position:fixed;inset:0;background:#1c1712;color:#fff;z-index:50;overflow:auto;display:flex;flex-direction:column}.media-viewer header{display:flex;justify-content:space-between;padding:12px 20px}.media-viewer button{background:#382d24;color:#fff;border-color:#655041}.media-stage{flex:1;display:flex;align-items:center;justify-content:center;min-height:45vh}.media-stage>img,.media-stage>video{max-width:100%;max-height:75vh;object-fit:contain}.media-controls{padding:12px 24px;max-width:850px;width:100%;margin:auto}.media-paging{display:flex;justify-content:space-between}.media-controls .comments-sheet{color:#46392f}.live-photo{position:relative}.live-photo>img,.live-photo>video{width:100%;max-height:75vh;object-fit:contain}.live-photo>video{position:absolute;inset:0}.live-photo>video.live-hidden{opacity:0;pointer-events:none}.live-control{position:absolute;left:12px;top:12px;z-index:1}.metric{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.metric strong{font-size:24px;color:#9b642e}.metric small{color:#9a856e}.trend-chart{width:100%;height:auto;max-height:360px}.chart-point{cursor:pointer}.reference-picker{max-width:260px}.settings-links{padding-top:0}.settings-links button{margin:5px 0}.record-card .media-grid.count-9,.record-card .media-grid.count-5,.record-card .media-grid.count-6,.record-card .media-grid.count-7,.record-card .media-grid.count-8{grid-template-columns:repeat(3,1fr)}@media(max-width:600px){.time-toolbar,.segmented,.filter-chips{padding:8px 18px}.calendar-grid{gap:3px}.calendar-heading button{font-size:12px;padding:7px}.calendar-heading input{max-width:160px;font-size:14px}.calendar-preview .day-card{margin-bottom:8px}.calendar-create button{font-size:13px}.reactions{gap:3px}.reactions button{font-size:11px}.subject-cards{grid-template-columns:1fr 1fr}.media-viewer .sheet{max-height:85dvh}}.trend{width:100%;max-height:380px}.avatar-picker{max-width:250px}.avatar-picker>img{border-radius:50%;object-fit:cover}.description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.app-shell:has(>div:not([hidden]) .calendar-mode){height:100dvh;display:flex;flex-direction:column;overflow:hidden;padding-bottom:calc(90px + env(safe-area-inset-bottom))}.app-shell:has(>div:not([hidden]) .calendar-mode) .home-header{flex:none}.app-shell:has(>div:not([hidden]) .calendar-mode) .intro{display:none}.app-shell:has(>div:not([hidden]) .calendar-mode)>div:not([hidden]):not(.banner){flex:1;min-height:0;display:flex;flex-direction:column}.time-browser.calendar-mode{flex:1;min-height:0;display:flex;flex-direction:column}.calendar-mode .time-toolbar{padding-top:5px;padding-bottom:5px;flex:none}.calendar-mode .filter{padding-top:4px;padding-bottom:5px;gap:6px;flex-wrap:nowrap;overflow-x:auto;flex:none}.calendar-mode .filter .subject{flex-direction:row;min-width:70px;min-height:40px;padding:5px 10px;white-space:nowrap}.calendar-mode .filter .subject span{font-size:20px}.calendar-mode .filter-chips,.calendar-mode .segmented{padding-top:3px;padding-bottom:3px;flex:none}.calendar-mode .calendar-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding-top:8px;padding-bottom:6px}.calendar-mode .calendar-top{flex:none}.calendar-mode .calendar-grid{margin-top:8px}.calendar-mode .calendar-cell{aspect-ratio:auto;height:clamp(27px,4.5dvh,42px)}.calendar-mode .calendar-preview{flex:1;min-height:80px;overflow-y:auto;overscroll-behavior:contain;margin-top:12px;padding:3px 2px 18px}.calendar-mode .calendar-preview .empty{padding:20px 12px}.calendar-mode .calendar-preview .day-card{margin-bottom:10px}.calendar-mode .calendar-preview .day-content footer{gap:6px}.calendar-mode .calendar-create{flex-wrap:wrap}@media(max-height:740px){.app-shell:has(>div:not([hidden]) .calendar-mode) .home-header{padding-top:8px;padding-bottom:8px}.app-shell:has(>div:not([hidden]) .calendar-mode) .home-header .eyebrow{display:none}.app-shell:has(>div:not([hidden]) .calendar-mode) .home-header h1{font-size:24px}.calendar-mode .calendar-cell{height:clamp(22px,4dvh,30px)}.calendar-mode .calendar-heading button,.calendar-mode .calendar-heading input{min-height:36px;padding:5px 8px}.calendar-mode .calendar-preview{margin-top:5px}}.subject img{width:32px;height:32px;border-radius:50%;object-fit:cover}.capture-editor{border-top:1px solid #eadbca;margin-top:12px;padding-top:12px}.context-hint{margin:12px 24px;padding:14px 18px;border:1px solid #eacfa7;border-radius:14px;background:#fff2d7;display:flex;align-items:center;gap:12px}.context-hint p{margin:0;flex:1;font-size:14px}.app-shell:has(.calendar-mode) .context-hint{display:none}.update-notice{position:fixed;bottom:105px;left:50%;transform:translate(-50%);width:min(92vw,580px);z-index:80;padding:18px;border:1px solid #e6b971;border-radius:16px;background:#fff2d7;box-shadow:0 5px 25px #49321b25}.update-notice p{margin-bottom:8px}.long-text>p{white-space:pre-wrap;overflow-wrap:anywhere}.long-text:not(.expanded)>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:8;overflow:hidden}.reference-summary{font-size:14px;color:#866746}.record-menu>summary{cursor:pointer;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e4d0b8;border-radius:10px;font-size:22px}.record-menu>div{display:flex;gap:8px;flex-wrap:wrap;padding:8px 0}.reactions button,.comment button,.edit-media button{min-height:44px;font-size:14px}.comment button{padding:7px 10px}.day-subjects{font-size:15px}.milestone-button{width:100%;text-align:left}.first-subject{margin:12px 24px}.calendar-mode .filter-chips{flex-wrap:nowrap;overflow-x:auto}.calendar-mode .filter-chips button{flex:none;white-space:nowrap}.timeline-mode .time-toolbar{position:sticky;top:var(--fg-header-height,100px);z-index:4;background:#fffaf3}.timeline-mode .filter-chips{position:sticky;top:calc(var(--fg-header-height,100px) + var(--fg-toolbar-height,60px));z-index:4;background:#fffaf3;flex-wrap:nowrap;overflow-x:auto}.timeline-mode .filter-chips button{flex:none;white-space:nowrap}.load-more-error{padding:16px;border:1px solid #e4c7a9;border-radius:12px;background:#fff2df}.required-mark{display:inline-block;color:#a65b35;font-size:12px;font-weight:500;margin-left:7px;white-space:nowrap}.form-issues{margin:12px 0;padding:10px 12px;background:#fff3df;border-left:3px solid #dfa063;border-radius:7px;font-size:13px;color:#825e39}.form-issues p{margin:3px 0}.date-field,.month-field{width:100%;display:flex;align-items:center;justify-content:space-between;background:#fffefa;margin-top:6px;text-align:left;color:#46392f}.date-field>span{margin-left:10px}.month-field{margin:0;white-space:nowrap;justify-content:center}.picker-backdrop{z-index:100}.date-picker{max-height:88dvh;overflow:auto;padding:20px 18px max(24px,env(safe-area-inset-bottom));width:min(440px,100%)}.date-picker header{display:flex;align-items:center;justify-content:space-between}.date-picker h2{font-size:20px;margin:0}.date-picker header button{padding:8px 12px}.month-controls{display:grid;grid-template-columns:40px minmax(0,1fr) minmax(0,.8fr) 40px;align-items:center;gap:7px;margin:16px 0}.month-controls label{margin:0}.month-controls select{margin:0;padding:9px 3px;min-height:44px}.month-controls button{padding:5px;font-size:24px}.picker-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.picker-days>span{font-size:13px;color:#8b7966;padding:7px 0}.picker-days button{padding:5px;min-width:0;min-height:42px;border:0;background:transparent}.picker-days button[aria-pressed=true]{background:#ec964f;color:#fff}.month-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.month-grid button{min-height:48px}.date-time-field{display:grid;gap:7px}.city-field label{margin-bottom:5px}.city-selection{padding:9px 12px;background:#fff4e4;border-radius:8px;margin:0 0 12px}.city-selection small,.city-results small{display:block;color:#8d7b65;font-size:12px;overflow-wrap:anywhere}.city-results{border:1px solid #e6cfae;border-radius:12px;max-height:260px;overflow:auto;background:#fffdfa;margin-bottom:12px}.city-results button{display:block;width:100%;text-align:left;border:0;border-radius:0;padding:10px 14px}.city-results button+button{border-top:1px solid #f0e4d6}.city-results p{padding:12px;font-size:14px}.task-progress{margin:14px 0}.task-progress p{display:flex;justify-content:space-between;gap:12px;margin:0 0 7px;font-size:14px}.task-progress strong{font-variant-numeric:tabular-nums}.task-progress progress{display:block;appearance:none;width:100%;height:8px;border:0;border-radius:8px;overflow:hidden;background:#efe5d5}.task-progress progress::-webkit-progress-bar{background:#efe5d5}.task-progress progress::-webkit-progress-value{background:#e39347;border-radius:8px}.stage-active{display:block;height:3px;width:48px;border-radius:3px;background:#e39347;animation:stage-pulse 1.2s ease-in-out infinite}@keyframes stage-pulse{50%{opacity:.35}}.reaction-members{font-size:13px;color:#8b6750;margin:6px 0 12px}.reaction-members p{margin:4px 0}.reaction-members p{overflow-wrap:anywhere}.year-controls{display:flex;justify-content:space-between;gap:12px;margin:16px 0}.calendar-cell .calendar-marker{position:static;display:inline-block;font-size:10px;line-height:12px;margin:0;padding:0;background:transparent;vertical-align:middle}.calendar-cell>span:first-child{position:static;display:block;background:transparent;line-height:14px}.subject-profile .subject-metrics{display:grid;gap:7px;margin-top:16px;padding-top:12px;border-top:1px solid #f1e6d9;width:100%;text-align:left;font-size:13px}.summary-metric{display:grid;grid-template-columns:minmax(82px,1fr) minmax(0,1fr);gap:8px;align-items:baseline;width:100%;text-align:left}.summary-metric strong{text-align:right;font-size:13px;font-weight:550;white-space:nowrap;font-variant-numeric:tabular-nums}.metric-table,.reference-table{width:100%;border-collapse:collapse;table-layout:fixed;margin:14px 0 18px;font-size:14px}.metric-name{width:34%}.metric-value{width:36%}.metric-change{width:30%}.metric-table th,.metric-table td{padding:9px 3px;vertical-align:baseline;text-align:left;border-bottom:1px solid #f4ebdf}.metric-table thead{font-size:12px;color:#a08b73;font-weight:400}.metric-table tbody th{font-weight:500;overflow-wrap:anywhere}.metric-table td strong{font-size:16px;color:#b16f2f;white-space:nowrap;font-variant-numeric:tabular-nums}.metric-table td small{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.metric-table td .muted{font-size:12px;white-space:nowrap}.measurement-row{display:block;width:100%;text-align:left}.measurement-values{display:grid;gap:7px;margin:12px 0}.reference-table th{width:33%;text-align:left;vertical-align:top;padding:10px 7px 10px 0;font-weight:500}.reference-table td{padding:10px 0;vertical-align:top}.reference-table td>small{display:block;font-size:11px;color:#9a866c;margin-top:3px}.percentile-explanation{font-size:12px;color:#8c765d;line-height:1.65;margin:8px 0 0}.reference-help{padding:8px 4px;margin-bottom:20px;font-size:12px;color:#927c64}.reference-help h3{font-size:14px}.curve-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;margin:8px 0 4px;color:#8b806c}.curve-legend span:before{content:"";display:inline-block;width:16px;height:2px;background:#c4bfaf;vertical-align:middle;margin-right:5px}.curve-legend .legend-personal:before{height:3px;background:#d36a2b}.reference-range{font-size:12px;line-height:1.65;background:#fff5e6;padding:10px;border-radius:8px;margin:8px 0 0}.curve-ranges{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.curve-ranges button{padding:8px 5px;min-width:0}.profile-page{padding-bottom:12px}.profile-page>.profile-queue{margin:0 0 12px}.profile-page .settings-links{padding:0;margin:16px 0;display:grid;gap:10px}.profile-page .login-devices{margin-bottom:14px}.profile-page .about-entry{margin:0 0 12px}.logout-button{font-size:12px;min-height:34px;padding:5px 10px;border-radius:8px;color:#8a715b;background:transparent;white-space:nowrap}.home-header:has(.logout-button){gap:12px}.sheet>button.sheet-cancel{background:transparent;border:0;border-top:1px solid #eadfce;border-radius:0;margin:18px 0 0;text-align:center;color:#927c64;font-size:14px;padding:12px}.about-app a{color:#a36e38}@media(max-width:600px){.subject-cards{display:grid;grid-template-columns:1fr;gap:10px}.subject-profile{margin:0;width:100%;min-width:0}.subject-profile .subject-metrics{margin-top:14px}.summary-metric{grid-template-columns:minmax(90px,1fr) minmax(0,1fr)}.metric-table td strong{font-size:15px}.metric-table th,.metric-table td{padding:9px 1px}.growth-page .panel{padding:16px}.calendar-heading{grid-template-columns:auto minmax(0,1fr) auto;gap:8px}.calendar-heading>label{min-width:0}.calendar-heading button{padding:7px 9px}.calendar-mode .calendar-cell{height:clamp(34px,5.4dvh,45px)}.calendar-grid .calendar-cell{padding:2px 1px}.date-picker .picker-days button{min-height:42px}.home-header .upload-status{font-size:11px;max-width:135px;white-space:normal}.form-actions{position:static;padding-bottom:24px}}@media(max-width:600px)and (max-height:740px){.calendar-mode .calendar-cell{height:28px}.calendar-cell>span:first-child{font-size:11px;line-height:12px}.calendar-cell .calendar-marker{font-size:10px;line-height:10px}}.calendar-mode .filter .subject>span{display:flex;align-items:center;justify-content:center;flex:none;width:24px;height:24px;line-height:1}.calendar-mode .filter .subject img{width:24px;height:24px}main{width:100%;min-width:0}.app-shell>div,.time-browser,.calendar-top,.calendar-preview{min-width:0}.calendar-mode .calendar-page{width:100%;margin-inline:0;align-self:stretch}.calendar-mode .filter .subject{flex-shrink:0}.day-content{min-width:0}.day-content footer{flex-wrap:wrap}.milestone-summary{display:block}.milestone-summary-text{display:block;padding:0;line-height:1.6;max-height:3.2em;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere}.milestone-ellipsis{white-space:nowrap}.record-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.record-card-header>p{min-width:0;overflow-wrap:anywhere}.record-menu{position:relative;flex:none}.record-menu[open]>div{position:absolute;top:44px;right:0;width:min(260px,75vw);z-index:6;display:grid;padding:12px;background:#fffaf3;border:1px solid #eadbca;border-radius:12px;box-shadow:0 4px 18px #46392f22}.record-menu .banner{position:relative;z-index:7;max-width:260px}.milestone-button[role=link]{cursor:pointer}.inline-comments:empty{display:none}.sheet>button.sheet-cancel{color:#65503c;font-size:15px;font-weight:500}.nickname-label-copy{display:block;white-space:nowrap;font-size:14px}.nickname-label-copy .required-mark{margin-left:0;font-size:12px}.time-rail{position:fixed;right:max(0px,calc((100vw - 860px)/2));top:auto;bottom:calc(112px + env(safe-area-inset-bottom));width:40px;height:clamp(160px,35dvh,300px);display:block;z-index:8;-webkit-user-select:none;user-select:none}.rail-track{height:100%;width:40px;position:relative;touch-action:none;cursor:ns-resize;border-radius:14px;background:#fff4e4e8;border:1px solid #ead5b6}.rail-tick{position:absolute;left:0;right:0;transform:translateY(-50%);font-size:10px;text-align:center;line-height:1.3;color:#866342;pointer-events:none}.rail-tick:first-child{transform:translateY(0)}.rail-tick:nth-child(4){transform:translateY(-100%)}.rail-tick small{display:block;font-size:9px}.time-bubble{position:absolute;right:48px;top:40%;white-space:nowrap;max-width:calc(100vw - 70px);padding:10px 14px;background:#765336f2;color:#fff;border-radius:12px;box-shadow:0 2px 10px #46392f22;pointer-events:none}.time-bubble strong{font-size:17px}.time-bubble small{display:block;font-size:13px}.timeline-mode main.timeline{padding-right:48px}.calendar-cell.today>span:first-child{display:inline-block;border:1px solid #a86e35;border-radius:50%;min-width:18px;height:18px;line-height:16px;padding:0 2px}.selected-media>.reorder-handle{left:4px;right:auto;top:4px;width:36px;height:36px;min-height:36px;touch-action:none;cursor:grab;background:#46392fd9}.selected-media.sorting{outline:3px solid #d58d3d;outline-offset:2px}.long-text>p{margin-bottom:10px}.calendar-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:6px}.calendar-heading>label{min-width:0}.calendar-heading>button,.calendar-heading .month-field{white-space:nowrap}@media(max-width:600px){.calendar-heading{gap:4px}.calendar-heading>button,.calendar-heading .month-field{padding-inline:6px;font-size:12px}}.calendar-page,.media-stage{touch-action:pan-y pinch-zoom}.calendar-page,.media-viewer{overscroll-behavior-x:contain}
