:root{--canvas: #f2f1fb;--surface: #ffffff;--surface-tint: #f7f6fd;--surface-alt: #f4f3fc;--surface-alt-hover: #ebe9fa;--violet-tint: #eeebfc;--hairline: #efeef8;--ink: #1b1a2e;--ink-2: #4a4866;--ink-3: #6b6989;--ink-4: #6e6c8c;--primary: #5b4be6;--primary-hover: #4536c9;--mint: #17c39a;--mint-tint: #e4f9f3;--mint-text: #0e6b54;--amber: #ffb43f;--amber-tint: #fff6e6;--amber-text: #6b5a33;--amber-hover: #f0a32c;--amber-ink: #40320f;--coral: #ff6b5a;--coral-tint: #ffe8e4;--sky: #3fa9f5;--sky-tint: #e6f3fe;--sky-text: #1d6fa5;--error: #c0392b;--error-text: #8a4a42;--error-bg: #fff1ef;--focus-ring: 0 0 0 3px rgba(91, 75, 230, .22);--font-display: "Plus Jakarta Sans", system-ui, sans-serif;--font-body: "Plus Jakarta Sans", system-ui, sans-serif;--radius-pill: 999px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.55}h1,h2,h3,h4{font-family:var(--font-display);margin:0}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-hover);text-decoration:underline}::placeholder{color:#9c9ab8}::selection{background:var(--primary);color:#fff}.shell{display:flex;gap:14px;height:100vh;min-height:720px;padding:14px;background:var(--canvas);color:var(--ink)}.rail{width:252px;flex:0 0 252px;display:flex;flex-direction:column;background:var(--surface);border-radius:22px;padding:18px 14px;overflow-y:auto}.rail-brand{display:flex;align-items:center;gap:11px;padding:0 6px 18px}.logo-mark{flex-shrink:0}.rail-brand-text{min-width:0}.rail-brand-text .name{font-size:14.5px;font-weight:700;letter-spacing:-.015em;white-space:nowrap}.rail-brand-text .sub{font-size:11.5px;font-weight:500;color:var(--ink-3);white-space:nowrap}.rail-nav{display:flex;flex-direction:column;gap:4px}.nav-item{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:14px;color:var(--ink-2);background:transparent;border:none;cursor:pointer;font-family:var(--font-body);text-align:left;width:100%;transition:background-color .14s ease,color .14s ease}.nav-item:hover:not(.active){background:var(--surface-alt)}.nav-item.active{background:var(--primary);color:#fff}.nav-item .nav-icon{flex-shrink:0;display:flex}.nav-item .nav-label{flex:1;font-size:14px;font-weight:600;white-space:nowrap}.nav-item.active .nav-label{font-weight:700}.nav-count{font-size:11.5px;font-weight:700;color:var(--mint-text);background:var(--mint-tint);border-radius:var(--radius-pill);padding:2px 8px;white-space:nowrap}.med-chip{width:9px;height:9px;border-radius:3px;flex-shrink:0}.rail-spacer{flex:1}.rail-account{display:flex;align-items:center;gap:10px;margin-top:14px;padding:0 4px}.rail-account-link{display:flex;align-items:center;gap:10px;min-width:0;flex:1;color:var(--ink);text-decoration:none;background:transparent;border:none;padding:0;font-family:var(--font-body);text-align:left;cursor:pointer}.rail-account-link:hover{color:var(--ink);text-decoration:none;background:transparent}.avatar-tile{width:32px;height:32px;border-radius:11px;background:var(--coral);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;flex-shrink:0;text-decoration:none;border:none;padding:0;font-family:var(--font-body);cursor:pointer}.avatar-tile:hover{color:var(--ink);text-decoration:none;background:var(--coral)}.rail-account-text{flex:1;min-width:0}.rail-account-text .name{font-size:12.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail-account-text .sub{font-size:11px;font-weight:500;color:var(--ink-3);white-space:nowrap}.signout-btn{width:30px;height:30px;border:0;border-radius:10px;background:var(--surface-alt);color:var(--ink-3);font-size:14px;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0}.signout-btn:hover{background:var(--surface-alt-hover);color:var(--ink-2)}.main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;gap:14px}.mobilebar{display:none;align-items:center;gap:10px;padding:12px 14px;background:var(--surface)}.mobilebar .name{flex:1;min-width:0;font-size:14.5px;font-weight:700;letter-spacing:-.015em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobilebar-newchat{width:34px;height:34px;border:0;border-radius:12px;background:var(--surface-alt);color:var(--primary-hover);font-size:17px;font-weight:700;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0;text-decoration:none}.mobilebar-newchat:hover{background:var(--surface-alt-hover);color:var(--primary-hover);text-decoration:none}.mobilebar .avatar-tile{width:34px;height:34px;border-radius:12px}.bottomnav{display:none;align-items:stretch;gap:4px;padding:8px 10px calc(10px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--hairline)}.bottomnav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px 0;min-height:44px;border-radius:14px;color:var(--ink-2);background:transparent;border:none;cursor:pointer;font-family:var(--font-body)}.bottomnav-item:hover{background:var(--surface-alt)}.bottomnav-item.active{background:var(--violet-tint);color:var(--primary-hover)}.bottomnav-item .label{font-size:11px;font-weight:600}.bottomnav-item.active .label{font-weight:700}.panel{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--surface);border-radius:22px;overflow:hidden}.panel-head{display:flex;align-items:center;gap:12px;padding:16px 22px;border-bottom:1px solid var(--hairline);flex-shrink:0}.panel-head h1,.panel-head h2{font-size:17px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}.privacy-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:var(--radius-pill);background:var(--mint-tint);color:var(--mint-text);font-size:11.5px;font-weight:700;white-space:nowrap;flex-shrink:0}.privacy-pill .dot{width:6px;height:6px;border-radius:50%;background:var(--mint)}.panel-head-spacer{flex:1}.ghost-btn{height:34px;padding:0 14px;border:0;border-radius:12px;background:var(--surface-alt);color:var(--primary-hover);font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0;font-family:var(--font-body)}.ghost-btn:hover{background:var(--surface-alt-hover)}.panel-scroll{flex:1;min-height:0;overflow-y:auto;padding:24px 22px 6px}.panel-scroll-inner{max-width:760px;margin:0 auto}.thread{max-width:760px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:20px}.empty{max-width:520px;margin:6vh auto 0;text-align:center}.empty .empty-mark{margin:0 auto 16px}.empty h3{font-size:19px;font-weight:800;letter-spacing:-.02em;margin:0 0 6px}.empty p{color:var(--ink-3);font-size:13.5px;font-weight:500;margin:0 0 22px}.suggestions{display:flex;flex-wrap:wrap;gap:7px;justify-content:center}.suggestion{height:32px;padding:0 13px;border:0;border-radius:var(--radius-pill);background:var(--surface-alt);color:var(--ink-2);font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:var(--font-body);transition:background-color .14s ease,color .14s ease}.suggestion:hover{background:var(--violet-tint);color:var(--primary-hover)}.msg-row{display:flex;gap:12px}.msg-row.user{justify-content:flex-end}.msg-mark{flex:0 0 32px;margin-top:2px}.msg-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.bubble{max-width:76%;padding:13px 17px;border-radius:20px 20px 6px;background:var(--primary);color:#fff;font-size:14.5px;font-weight:500;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.bubble::selection{background:#fff;color:var(--primary)}.answercard{border-radius:20px;background:var(--surface-tint);padding:18px 20px 20px}.med-tag{display:inline-flex;align-items:center;gap:7px;padding:4px 11px;border-radius:var(--radius-pill);background:var(--primary);color:#fff;font-size:11px;font-weight:700;margin-bottom:13px;white-space:nowrap}.med-tag-square{width:7px;height:7px;border-radius:2px;flex-shrink:0}.answercard p{margin:0 0 16px;font-size:15.5px;line-height:1.62;font-weight:500;color:var(--ink);white-space:pre-wrap}.answercard p:last-child{margin-bottom:0}.answercard p strong{font-weight:800}.source-span{padding:1px 5px;border-radius:6px;-webkit-box-decoration-break:clone;box-decoration-break:clone}.source-span.record{background:var(--mint-tint);color:var(--mint-text);border-bottom:2px solid var(--mint)}.source-span.general{background:var(--sky-tint);color:var(--sky-text);border-bottom:2px dashed var(--sky)}.facts{display:grid;grid-template-columns:repeat(min(var(--fact-cols, 4),4),1fr);gap:8px}.fact-cell{background:var(--surface);border-radius:15px;padding:12px 13px;min-width:0}.fact-label{font-size:10.5px;font-weight:700;letter-spacing:.05em;color:var(--ink-4);margin-bottom:5px;white-space:nowrap;text-transform:uppercase}.fact-value{font-size:17px;font-weight:800;letter-spacing:-.02em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fact-cell.emphasis{background:var(--violet-tint)}.fact-cell.emphasis .fact-label{color:var(--primary)}.fact-cell.emphasis .fact-value{color:var(--primary-hover)}.safety-note{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:12px 14px;border-radius:15px;background:var(--amber-tint)}.safety-icon{width:20px;height:20px;border-radius:7px;background:var(--amber);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.safety-note p{margin:0;font-size:12.5px;font-weight:500;line-height:1.55;color:var(--amber-text)}.grounding-note{display:inline-flex;align-items:center;gap:6px;margin-bottom:12px;padding:5px 11px;border-radius:999px;background:var(--sky-tint);color:var(--sky-text);font-size:11.5px;font-weight:700}.answercard.loading{display:flex;flex-direction:column;gap:10px}.skeleton-bar{height:14px;border-radius:7px;background:#edebf8;animation:pulse 1.4s ease-in-out infinite}.skeleton-bar.short{width:70%}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}.loading-label{font-size:12.5px;font-weight:600;color:var(--ink-3);margin-top:2px}.answercard.error{background:var(--error-bg)}.answercard.error .error-title{font-size:14px;font-weight:700;color:var(--error);margin:0 0 4px}.answercard.error .error-body{font-size:12.5px;font-weight:500;color:var(--error-text);margin:0 0 12px}.retry-btn{height:32px;padding:0 14px;border:0;border-radius:11px;background:var(--coral);color:var(--ink);font-size:12.5px;font-weight:700;cursor:pointer;font-family:var(--font-body)}.retry-btn:hover{opacity:.9}.sources{display:grid;grid-template-columns:repeat(min(var(--source-cols, 2),2),1fr);gap:10px}.source-card{display:flex;align-items:center;gap:11px;padding:12px 14px;border-radius:17px;background:var(--surface);border:1.5px solid var(--hairline);color:var(--ink);transition:border-color .14s ease;min-width:0;text-align:left;font-family:var(--font-body);cursor:pointer}.source-card:hover{background:var(--surface);border-color:#c9c3f7;text-decoration:none}.source-tile{width:34px;height:34px;border-radius:11px;background:var(--violet-tint);color:var(--primary);font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.source-tile.note{background:var(--coral-tint);color:var(--ink);font-size:15px}.source-tile-photo{width:34px;height:34px;border-radius:11px;object-fit:cover;flex-shrink:0}.source-text{min-width:0;display:flex;flex-direction:column;gap:2px}.source-text .title{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.source-text .meta{font-size:11.5px;font-weight:500;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.action-btn{height:30px;padding:0 12px;border:0;border-radius:10px;background:var(--surface-alt);color:var(--ink-3);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:var(--font-body);transition:background-color .14s ease,color .14s ease}.action-btn:hover{background:var(--surface-alt-hover);color:var(--ink)}.composerwrap{padding:8px 22px 18px;flex-shrink:0}.composerwrap-inner{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:10px}.chips{display:flex;flex-wrap:wrap;gap:7px}.composer{display:flex;align-items:center;gap:10px;padding:9px 9px 9px 16px;border-radius:20px;background:var(--surface-tint);transition:box-shadow .14s ease}.composer:focus-within{box-shadow:var(--focus-ring)}.composer input{flex:1;min-width:0;height:36px;border:0;outline:none;background:transparent;font-size:14.5px;font-weight:500;color:var(--ink);padding:0;font-family:var(--font-body)}.composer input:focus-visible{box-shadow:none}.attach-btn{width:36px;height:36px;border:0;border-radius:13px;background:var(--surface);color:var(--ink-3);font-size:16px;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0}.attach-btn:hover{background:var(--surface);color:var(--primary)}.send-btn{height:38px;padding:0 18px;border:0;border-radius:14px;background:var(--primary);color:#fff;font-size:13.5px;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0;font-family:var(--font-body)}.send-btn:hover{background:var(--primary-hover)}.send-btn:disabled{opacity:.5;cursor:default}.composer-hint{text-align:center;font-size:11.5px;font-weight:500;color:var(--ink-3)}.no-records-cta{height:38px;padding:0 18px;border:0;border-radius:14px;background:var(--primary);color:#fff;font-size:13.5px;font-weight:700;cursor:pointer;font-family:var(--font-body)}.no-records-cta:hover{background:var(--primary-hover)}.content--page{flex:1;min-height:0;overflow-y:auto}.page{max-width:760px;width:100%;margin:0 auto;padding:24px 22px 32px}.child-profile-page{max-width:none}.toast{flex-shrink:0;background:var(--amber-tint);color:var(--amber-text);border-bottom:1px solid var(--hairline);padding:10px 16px;text-align:center;font-size:13px;font-weight:600}.cards{display:flex;flex-direction:column;gap:12px}.records-summary{font-size:12.5px;font-weight:600;color:var(--ink-3);white-space:nowrap}.records-search{display:flex;align-items:center;gap:8px;height:34px;padding:0 12px;border-radius:12px;background:var(--surface-tint);flex-shrink:0}.records-search input{border:0;background:transparent;height:auto;padding:0;width:180px;font-size:13px;font-weight:500}.filter-row{display:flex;align-items:center;gap:7px;padding:14px 22px 0;flex-wrap:wrap;background:var(--surface);flex-shrink:0}.filter-pill{height:30px;padding:0 13px;border:0;border-radius:var(--radius-pill);background:var(--surface-alt);color:var(--ink-2);font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap}.filter-pill:hover{background:var(--surface-alt-hover);color:var(--primary-hover)}.filter-pill.active{background:var(--primary);color:#fff;font-weight:700}.sort-btn{height:30px;padding:0 12px;border:0;border-radius:10px;background:var(--surface-alt);color:var(--ink-3);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.sort-btn:hover{background:var(--surface-alt-hover);color:var(--ink-2)}.records-page{padding:16px 22px 22px;max-width:none}.cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.record-card{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:20px;background:var(--surface);border:1.5px solid var(--hairline);cursor:pointer;position:relative;transition:border-color .14s ease;text-align:left;min-width:0}.record-card:hover,.record-card.highlighted{border-color:#c9c3f7}.record-card-top{display:flex;align-items:flex-start;gap:12px;padding-right:76px}.record-thumb{width:42px;height:52px;border-radius:11px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}.record-card-title-block{flex:1;min-width:0}.record-card-title-row{display:flex;align-items:center;gap:8px}.record-card-title{font-size:14.5px;font-weight:800;letter-spacing:-.015em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.record-card-title-more{flex-shrink:0;padding:2px 8px;border-radius:var(--radius-pill);background:var(--surface-alt);color:var(--ink-3);font-size:11px;font-weight:700;white-space:nowrap}.record-card-meta{margin-top:3px;font-size:12px;font-weight:500;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.record-fact-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.record-fact-chip{padding:3px 9px;border-radius:var(--radius-pill);background:var(--surface-alt);color:var(--ink-2);font-size:11px;font-weight:700;white-space:nowrap}.record-status-badge{flex-shrink:0;padding:4px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:700;white-space:nowrap}.record-card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--hairline)}.record-card-filename{font-size:11.5px;font-weight:600;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.record-ask-link{border:0;background:transparent;padding:0;color:var(--primary);font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0}.record-ask-link:hover{background:transparent;color:var(--primary-hover)}.record-card-delete{position:absolute;top:12px;right:12px;height:24px;padding:0 9px;border:0;border-radius:8px;background:var(--surface-alt);color:var(--ink-3);font-size:10.5px;font-weight:600;cursor:pointer;opacity:0;transition:opacity .14s ease}.record-card:hover .record-card-delete,.record-card:focus-within .record-card-delete{opacity:1}.record-card-delete:hover{background:var(--error-bg);color:var(--error)}.record-card-skeleton{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:20px;background:var(--surface-tint);height:120px}.record-detail-card{padding:18px 20px 20px;border-radius:20px;background:var(--surface-tint);margin-top:14px;max-width:640px}.record-detail-card h2{font-size:17px;font-weight:800;letter-spacing:-.02em;margin-bottom:10px}.record-photo-strip{display:flex;gap:8px;overflow-x:auto;margin-bottom:12px}.record-photo-strip img{height:92px;width:auto;border-radius:12px;border:1.5px solid var(--hairline);object-fit:cover;flex-shrink:0}.card{border:1.5px solid var(--hairline);border-radius:18px;padding:16px 18px;background:var(--surface)}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.card-head h3{font-size:15px;font-weight:700}.date{font-size:11.5px;font-weight:600;color:var(--ink-3)}.card p{margin:6px 0;font-size:13.5px;font-weight:500;color:var(--ink-2)}.card p strong{color:var(--ink);font-weight:700}.med-list{margin:10px 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.med-list li{display:flex;align-items:baseline;gap:8px;font-size:13px;font-weight:500;color:var(--ink-2)}.med-dot{width:8px;height:8px;border-radius:3px;flex-shrink:0}.med-list li strong{color:var(--ink);font-weight:700}.card-meta{display:flex;gap:14px;font-size:11.5px;font-weight:600;color:var(--ink-3);margin-top:8px}.notes{margin-top:10px;padding-top:10px;border-top:1px solid var(--hairline);color:var(--ink-2);font-size:13px;font-weight:500}.upload-page{max-width:760px;display:flex;flex-direction:column;gap:18px}.dropzone{padding:34px 24px;border-radius:20px;background:var(--surface-tint);border:2px dashed var(--dashed-border, #d6d2f4);display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;transition:border-color .14s ease,background-color .14s ease}.dropzone.drag-over{border-color:var(--primary);background:var(--violet-tint)}.dropzone-tile{width:52px;height:52px;border-radius:17px;background:var(--violet-tint);display:flex;align-items:center;justify-content:center}.dropzone-title{font-size:15.5px;font-weight:800;letter-spacing:-.015em}.dropzone-sub{font-size:12.5px;font-weight:500;color:var(--ink-3);margin-top:-6px}.dropzone-actions{display:flex;gap:10px;margin-top:6px}.secondary-white{background:var(--surface);color:var(--primary-hover)}.secondary-white:hover{background:var(--violet-tint)}.camera-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000;overflow:hidden}.camera-fullscreen-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.camera-cancel-btn{position:absolute;top:max(16px,env(safe-area-inset-top));left:16px;width:40px;height:40px;border:0;border-radius:50%;background:#0006;color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer}.camera-fullscreen-actions{position:absolute;left:0;right:0;bottom:max(28px,env(safe-area-inset-bottom));display:flex;justify-content:center}.camera-capture-btn{width:68px;height:68px;padding:0;border:4px solid #fff;border-radius:50%;background:#ffffff40;cursor:pointer}.camera-capture-btn:active{background:#ffffff80}.dropzone-error{margin:4px 0 0;font-size:12.5px;font-weight:600;color:var(--error)}.upload-progress{width:100%;max-width:320px;display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:6px}.progress-track{width:100%;height:6px;border-radius:var(--radius-pill);background:var(--hairline);overflow:hidden}.progress-fill{height:100%;border-radius:var(--radius-pill);background:var(--primary);transition:width .2s ease}.progress-label{font-size:12.5px;font-weight:600;color:var(--ink-3)}.or-divider{display:flex;align-items:center;gap:14px;color:var(--ink-4)}.or-divider:before,.or-divider:after{content:"";flex:1;height:1px;background:var(--hairline)}.or-divider span{font-size:11.5px;font-weight:700;letter-spacing:.06em;white-space:nowrap}.review-card{padding:18px 20px 20px;border-radius:20px;background:var(--surface-tint)}.review-card-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.review-card-head .med-tag{margin-bottom:0}.med-tag.typed{background:var(--surface-alt);color:var(--ink-2)}.review-card-hint{font-size:12px;font-weight:600;color:var(--ink-3)}.review-fields{display:flex;flex-direction:column;gap:14px}.review-med-block{display:flex;flex-direction:column;gap:8px;padding-bottom:8px}.review-med-block-head{display:flex;align-items:center;justify-content:space-between;font-size:10.5px;font-weight:700;letter-spacing:.05em;color:var(--ink-4);text-transform:uppercase}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.review-grid-full{grid-column:1 / -1}.review-grid label{display:flex;flex-direction:column;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.05em;color:var(--ink-4);text-transform:uppercase}.review-grid input{height:42px;padding:0 13px;border:1.5px solid var(--hairline);border-radius:14px;background:var(--surface);font-size:14px;font-weight:600;color:var(--ink);text-transform:none;letter-spacing:normal}.review-grid input:focus{border-color:var(--primary)}.review-grid label.flagged input{border-color:var(--amber)}.review-grid .date-picker-trigger{height:42px;border:1.5px solid var(--hairline);background:var(--surface)}.review-grid label.flagged .date-picker-trigger{border-color:var(--amber)}.review-grid .date-picker-text-input{height:auto;padding:0;border:none;background:transparent;border-radius:0}.stacked-field{display:flex;flex-direction:column;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.05em;color:var(--ink-4);text-transform:uppercase}.stacked-field textarea{border:1.5px solid var(--hairline);border-radius:14px;background:var(--surface);font-size:14px;font-weight:600;font-family:var(--font-body);color:var(--ink);text-transform:none;letter-spacing:normal;padding:10px 13px;resize:vertical}.stacked-field textarea:focus{outline:none;border-color:var(--primary)}.custom-select{position:relative}.custom-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left}.stacked-field .custom-select-trigger{height:42px;padding:0 13px;border:1.5px solid var(--hairline);border-radius:14px;background:var(--surface);color:var(--ink);font-size:14px;font-weight:600;font-family:var(--font-body);text-transform:none;letter-spacing:normal}.stacked-field .custom-select-trigger:hover{background:var(--surface)}.stacked-field .custom-select-trigger:focus-visible,.stacked-field .custom-select-trigger[aria-expanded=true]{outline:none;border-color:var(--primary)}.custom-select-trigger.sort-btn{padding-right:12px}.custom-select-trigger.sort-btn+.custom-select-list{left:auto;right:0;width:max-content;min-width:160px}.custom-select-value,.custom-select-placeholder{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-placeholder{color:var(--ink-3);font-weight:500}.custom-select-chevron{flex-shrink:0;color:var(--ink-3);transition:transform .14s ease}.custom-select-trigger[aria-expanded=true] .custom-select-chevron{transform:rotate(180deg)}.custom-select-list{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;max-height:240px;overflow-y:auto;background:var(--surface);border:1.5px solid var(--hairline);border-radius:14px;box-shadow:0 12px 28px #1b1a2e29;padding:6px;list-style:none;margin:0;text-transform:none;letter-spacing:normal}.custom-select-option{padding:9px 12px;border-radius:10px;font-size:14px;font-weight:600;font-family:var(--font-body);color:var(--ink);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-select-option.highlighted{background:var(--surface-alt)}.custom-select-option.selected{color:var(--primary)}.child-manage-link{align-self:flex-start;background:none;border:none;padding:0;color:var(--primary);font-size:11.5px;font-weight:700;text-transform:none;letter-spacing:normal;cursor:pointer}.child-manage-link:hover{background:none;text-decoration:underline}.no-children-callout{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-radius:15px;background:var(--amber-tint)}.no-children-callout p{margin:0;font-size:12.5px;font-weight:600;color:var(--amber-text);line-height:1.4}.no-children-callout .ghost{flex-shrink:0;background:var(--surface)}.field-hint{font-size:11.5px;font-weight:600;color:var(--amber-text);text-transform:none;letter-spacing:normal}.field-hint.error-text{color:var(--error)}.review-errors{margin-top:12px}.review-errors p{margin:0 0 4px;font-size:12px;font-weight:600;color:var(--error)}.review-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.review-actions button:first-child{height:42px;padding:0 20px}.review-actions .danger-btn{flex:none;padding:0 18px;border-radius:var(--radius-pill)}.rail-tip-card{border-radius:18px;background:var(--surface-tint);padding:14px;margin-top:14px}.rail-tip-title{font-size:12.5px;font-weight:700;margin-bottom:4px}.rail-tip-body{font-size:12px;font-weight:500;color:var(--ink-2);line-height:1.5}.uploader{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.uploader input[type=file]{padding:9px;background:var(--surface-tint);color:var(--ink-2);font-size:12.5px;border:none;border-radius:14px}.uploader input[type=file]::file-selector-button{background:var(--violet-tint);color:var(--primary-hover);border:0;border-radius:10px;padding:7px 12px;margin-right:12px;font-family:var(--font-body);font-weight:700;cursor:pointer}.preview{max-width:100%;max-height:320px;border-radius:15px;border:1.5px solid var(--hairline)}.raw{margin:14px 0;font-size:13px}.raw summary{cursor:pointer;color:var(--primary-hover);font-weight:600;font-size:12.5px}.raw pre{margin-top:10px;background:var(--surface-tint);padding:14px;border-radius:15px;overflow-x:auto;white-space:pre-wrap;font-family:ui-monospace,monospace;font-size:12px;color:var(--ink-2)}.hint{color:var(--ink-3);font-size:13px;font-weight:500}input,textarea{width:100%;padding:10px 13px;border:none;border-radius:14px;font-size:14px;font-family:var(--font-body);background:var(--surface-tint);color:var(--ink)}input:focus,textarea:focus{outline:none;box-shadow:var(--focus-ring)}.form{display:flex;flex-direction:column;gap:14px}.form label{display:flex;flex-direction:column;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-4)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.meds{border-radius:15px;padding:14px;background:var(--surface-tint)}.meds-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-4)}.med-row{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr 1fr auto;gap:6px;margin-bottom:6px}.med-row input{background:var(--surface);font-size:12.5px}.actions.form-actions{margin-top:6px}button{background:var(--primary);color:#fff;border:none;border-radius:var(--radius-pill);padding:10px 18px;font-family:var(--font-body);font-size:13.5px;font-weight:700;cursor:pointer;transition:background-color .14s ease,opacity .14s ease}button:hover{background:var(--primary-hover)}button:disabled{opacity:.45;cursor:not-allowed}button.ghost{background:var(--surface-alt);color:var(--ink-2);font-weight:600}button.ghost:hover{color:var(--ink);background:var(--surface-alt-hover)}button.ghost.danger{color:var(--error);background:var(--error-bg)}button.ghost.danger:hover{opacity:.85}button.ghost.add-row{background:var(--surface);border:1.5px solid var(--hairline);color:var(--primary-hover)}button.ghost.add-row:hover{background:var(--surface-alt)}.error{background:var(--error-bg);color:var(--error);padding:11px 14px;border-radius:14px;margin-bottom:14px;font-size:13.5px;font-weight:500}.footer{text-align:center;color:var(--ink-3);font-size:11.5px;font-weight:500;padding:22px 0 4px}.app-loading{height:100vh;display:grid;place-items:center;color:var(--ink-3);font-weight:600}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--canvas)}.auth-column{width:100%;max-width:420px;display:flex;flex-direction:column;gap:18px}.auth-header{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.auth-header h1{font-size:22px;font-weight:800;letter-spacing:-.025em}.auth-header p{margin:0;font-size:13.5px;font-weight:500;color:var(--ink-3)}.auth-card.v2{width:100%;background:var(--surface);border-radius:22px;padding:22px;display:flex;flex-direction:column;gap:12px}.auth-card.v2.compact{padding:20px;gap:11px}.auth-card.v2 label{display:flex;flex-direction:column;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.05em;color:var(--ink-4)}.auth-card.v2 input{height:46px;padding:0 14px;border-radius:15px;background:var(--surface-tint);font-size:14.5px;font-weight:500;color:var(--ink)}.auth-card.v2.compact input{height:44px}.auth-password-field{position:relative;display:flex}.auth-password-field input{flex:1;padding-right:68px}.auth-show-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);height:32px;padding:0 11px;border:0;border-radius:11px;background:var(--surface);color:var(--primary-hover);font-size:12px;font-weight:700;cursor:pointer}.auth-show-toggle:hover{background:var(--violet-tint)}.auth-helper-line{font-size:11.5px;font-weight:600;color:var(--ink-3);letter-spacing:normal;text-transform:none}.auth-submit{height:46px;width:100%;margin-top:4px;border-radius:15px;font-size:14.5px;font-weight:700}.auth-submit:disabled{opacity:.5;cursor:default}.auth-error{padding:12px 14px;border-radius:15px;background:var(--error-bg);color:var(--error);font-size:12.5px;font-weight:600}.auth-alt{text-align:center;font-size:13px;font-weight:600;color:var(--ink-2);margin:0}.auth-alt a{color:var(--primary);font-weight:700}.auth-footnote{text-align:center;font-size:11.5px;font-weight:500;color:var(--ink-3);margin:0}.strength-meter{display:flex;align-items:center;gap:10px;margin-top:-2px}.strength-bars{display:flex;gap:7px;flex:1}.strength-bar{height:4px;flex:1;border-radius:var(--radius-pill);background:var(--hairline)}.strength-bar.s1{background:var(--amber)}.strength-bar.s2,.strength-bar.s3{background:var(--mint)}.strength-label{font-size:11px;font-weight:700;white-space:nowrap}.strength-label.s1{color:var(--amber-text)}.strength-label.s2,.strength-label.s3{color:var(--mint-text)}.consent-row{display:flex;align-items:flex-start;gap:10px;font-size:12.5px;font-weight:500;color:var(--ink-2);line-height:1.5;letter-spacing:normal;text-transform:none;cursor:pointer}.consent-row input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:6px;background:var(--surface);border:1.5px solid var(--dashed-border, #d6d2f4);flex-shrink:0;margin-top:1px;cursor:pointer;position:relative}.consent-row input[type=checkbox]:checked{background:var(--primary);border-color:var(--primary)}.consent-row input[type=checkbox]:checked:after{content:"✓";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:800}.auth-card.v2 .consent-row{flex-direction:row}.auth-card.v2 .consent-row input[type=checkbox]{height:18px;padding:0}.profile-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;font-size:13.5px;font-weight:500}.profile-row+.profile-row{border-top:1px solid var(--hairline)}.profile-label{color:var(--ink-3);font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-link{display:inline-flex;align-items:center;padding:10px 18px;border-radius:var(--radius-pill);background:var(--primary);color:#fff;text-decoration:none;font-size:13.5px;font-weight:700}.btn-link:hover{background:var(--primary-hover);text-decoration:none}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1b1a2e73;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.modal{width:100%;max-width:480px;max-height:80vh;overflow-y:auto;background:var(--surface);border-radius:20px;padding:22px 24px}.modal.children-modal{max-width:640px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.modal-head h3{font-size:15.5px;font-weight:800;letter-spacing:-.015em}.modal-close{width:30px;height:30px;border:0;border-radius:10px;background:var(--surface-alt);color:var(--ink-3);font-size:16px;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0}.modal-close:hover{background:var(--surface-alt-hover)}.modal-body p,.modal-body .med-list,.modal-body .card-meta,.modal-body .notes{font-size:13.5px}.confirm-modal{max-width:380px}.confirm-message{font-size:13.5px;line-height:1.5;color:var(--ink-2);margin:0 0 18px}.confirm-modal .modal-head h3{font-size:15px}.confirm-modal .delete-confirm-actions{margin:0}.confirm-modal .delete-confirm-actions .danger-btn,.confirm-modal .delete-confirm-actions .ghost{height:auto;min-height:38px;white-space:normal;line-height:1.3}.profile-modal{max-width:480px;padding:0}.profile-modal-head{padding:20px 22px;margin-bottom:0}.profile-modal-avatar{width:48px;height:48px;border-radius:16px;font-size:19px}.profile-modal-headtext{flex:1;min-width:0}.profile-modal-headtext .name{font-size:16.5px;font-weight:800;letter-spacing:-.02em}.profile-modal-headtext .email{font-size:12.5px;font-weight:500;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-modal-body{padding:18px 22px 22px;display:flex;flex-direction:column;gap:18px}.profile-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.profile-section-heading{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ink-4);margin-bottom:4px}.profile-inline-edit{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.profile-inline-edit input{height:32px;padding:0 10px;font-size:13px}.profile-inline-edit.password{flex-direction:column;align-items:stretch}.profile-row-action{height:28px;padding:0 10px;border:0;border-radius:10px;background:var(--surface-alt);color:var(--primary-hover);font-size:12px;font-weight:700;cursor:pointer;flex-shrink:0}.profile-row-action:hover{background:var(--surface-alt-hover)}.custom-select-trigger.field-select{border:none;border-radius:10px;background:var(--surface-tint);color:var(--ink);font-weight:600}.profile-inline-edit .custom-select-trigger.field-select{height:32px;padding:0 10px;font-size:13px}.add-child-section{margin-top:4px;padding-top:16px;border-top:2px solid var(--hairline)}.add-child-heading{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4);margin-bottom:10px}.add-child-fields{display:flex;align-items:center;gap:8px}.add-child-name{flex:1;min-width:0}.add-child-dob{width:150px;flex-shrink:0}.add-child-fields .custom-select-trigger.field-select{height:42px;padding:0 13px;font-size:14px;width:130px}.add-child-submit{flex-shrink:0}.edit-child-fields{justify-content:flex-start}.edit-child-name{flex:1;min-width:60px}.edit-child-dob{width:130px;flex-shrink:0}.edit-child-fields .custom-select-trigger.field-select{width:110px}.edit-child-submit{flex-shrink:0}.date-picker{position:relative}.date-picker-trigger{display:flex;align-items:center;gap:4px;width:100%;height:42px;padding:0 6px 0 13px;border-radius:14px;background:var(--surface-tint)}.date-picker-trigger:hover{background:var(--surface-alt-hover)}.date-picker.open .date-picker-trigger,.date-picker-trigger:focus-within{box-shadow:var(--focus-ring)}.profile-inline-edit .date-picker-trigger{height:32px;padding:0 4px 0 10px;width:auto;min-width:130px}.add-child-fields .date-picker-trigger{width:150px}.date-picker-text-input{flex:1;min-width:0;border:none;background:transparent;padding:0;color:var(--ink);font-size:14px;font-weight:600;font-family:var(--font-body);cursor:text}.date-picker-text-input:focus{outline:none}.date-picker-text-input.placeholder,.date-picker-text-input::placeholder{color:var(--ink-3);font-weight:500}.profile-inline-edit .date-picker-text-input{font-size:13px}.date-picker-icon-btn{flex-shrink:0;width:26px;height:26px;border:0;border-radius:8px;background:transparent;color:var(--ink-3);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.date-picker-icon-btn:hover{background:var(--surface-alt-hover);color:var(--ink-2)}.date-picker.disabled .date-picker-text-input{cursor:default}.date-picker.disabled .date-picker-icon-btn{opacity:.4;cursor:default}.date-picker.disabled .date-picker-icon-btn:hover{background:transparent;color:var(--ink-3)}.date-picker-popup{position:absolute;z-index:20;top:calc(100% + 6px);left:0;width:280px;background:var(--surface);border:1.5px solid var(--hairline);border-radius:18px;box-shadow:0 12px 28px #1b1a2e29;padding:14px}.date-picker-popup.align-right{left:auto;right:0}.date-picker-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.date-picker-month-label{font-size:13.5px;font-weight:800;color:var(--ink)}.date-picker-nav{width:26px;height:26px;border:0;border-radius:9px;background:var(--surface-alt);color:var(--ink-2);font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0}.date-picker-nav:hover{background:var(--surface-alt-hover)}.date-picker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.date-picker-weekdays span{text-align:center;font-size:10px;font-weight:700;letter-spacing:.03em;color:var(--ink-3)}.date-picker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.date-picker-cell{height:30px;border:0;border-radius:9px;background:transparent;color:var(--ink);font-size:12.5px;font-weight:600;font-family:var(--font-body);cursor:pointer;padding:0}.date-picker-cell:hover:not(:disabled){background:var(--surface-alt)}.date-picker-cell.outside{color:var(--ink-3);font-weight:500}.date-picker-cell.today{box-shadow:inset 0 0 0 1.5px var(--hairline)}.date-picker-cell.selected{background:var(--primary);color:#fff}.date-picker-cell.selected:hover:not(:disabled){background:var(--primary-hover)}.date-picker-cell:disabled{color:#d8d6ea;cursor:not-allowed}.date-picker-clear{width:100%;height:32px;margin-top:10px;border:1.5px solid var(--hairline);border-radius:11px;background:var(--surface);color:var(--ink-2);font-size:12.5px;font-weight:700;cursor:pointer}.date-picker-clear:hover{background:var(--surface-alt)}.profile-data-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:15px;background:var(--mint-tint)}.profile-data-icon{width:20px;height:20px;border-radius:7px;background:var(--mint);color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-data-note p{margin:0;font-size:12.5px;font-weight:500;color:var(--mint-text);line-height:1.5}.profile-data-actions{display:flex;gap:8px}.profile-data-actions .ghost{flex:1;border-radius:13px;height:38px}.danger-btn{flex:1;height:38px;border-radius:13px;background:var(--error-bg);color:var(--error);font-weight:700}.danger-btn:hover{background:#ffe3df}.danger-btn:disabled{opacity:.5;cursor:default}.delete-confirm{padding:13px 14px;border-radius:15px;background:var(--error-bg);display:flex;flex-direction:column;gap:10px}.delete-confirm p{margin:0;font-size:12.5px;font-weight:500;color:var(--error-text);line-height:1.5}.delete-confirm input{height:38px;background:var(--surface)}.delete-confirm-actions{display:flex;gap:8px}.delete-confirm-actions .danger-btn,.delete-confirm-actions .ghost{flex:1}.signout-full{width:100%;height:44px;border-radius:15px;background:var(--dark-button, #1b1a2e);color:#fff;font-weight:700}.signout-full:hover{background:#302e4d}.rail-children-heading{padding:22px 8px 10px;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ink-4)}.rail-children-list{display:flex;flex-direction:column;gap:6px}.rail-child-row{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:13px;background:transparent;border:none;color:var(--ink);cursor:pointer;font-family:var(--font-body);text-align:left;width:100%;transition:background-color .14s ease}.rail-child-row:hover,.rail-child-row.active{background:var(--surface-alt)}.rail-child-avatar{width:26px;height:26px;border-radius:9px;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:800;flex-shrink:0}.rail-child-avatar.dashed{background:transparent;border:1.5px dashed var(--hairline);color:var(--ink-3)}.rail-child-name{flex:1;min-width:0;font-size:12.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail-child-age{font-size:11px;font-weight:600;color:var(--ink-3);white-space:nowrap}.rail-child-row.add .rail-child-name{font-weight:600;color:var(--ink-3)}.child-picker{position:relative}.child-picker-trigger{display:flex;align-items:center;gap:10px;height:44px;padding:0 10px;border:0;border-radius:15px;background:var(--surface-tint);cursor:pointer;font-family:var(--font-body);max-width:260px}.child-picker-trigger:hover{background:var(--surface-alt-hover)}.child-avatar{width:30px;height:30px;border-radius:10px;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:800;flex-shrink:0}.child-avatar.small{width:26px;height:26px;border-radius:9px;font-size:11.5px}.child-avatar.dashed{background:transparent;border:1.5px dashed var(--hairline);color:var(--ink-3)}.child-picker-text{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.child-picker-name{font-size:13.5px;font-weight:800;color:var(--ink);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.child-picker-meta{font-size:10.5px;font-weight:600;color:var(--ink-3);line-height:1.2;white-space:nowrap}.child-picker-chevron{flex-shrink:0;color:var(--ink-3);margin-left:2px}.child-picker-list{position:absolute;z-index:20;top:calc(100% + 6px);left:0;width:max-content;min-width:220px;max-height:320px;overflow-y:auto;background:var(--surface);border:1.5px solid var(--hairline);border-radius:16px;box-shadow:0 12px 28px #1b1a2e29;padding:8px;list-style:none;margin:0}.child-picker-option{display:flex;align-items:center;gap:10px;padding:8px;border-radius:12px;cursor:pointer}.child-picker-option:hover{background:var(--surface-alt)}.child-picker-option.selected .child-picker-option-name{color:var(--primary)}.child-picker-option-name{flex:1;min-width:0;font-size:13px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.child-picker-option-age{font-size:11px;font-weight:600;color:var(--ink-3);white-space:nowrap}.child-picker-option.add .child-picker-option-name{color:var(--ink-3);font-weight:600}.tab-capsule{display:flex;gap:4px;padding:4px;border-radius:14px;background:var(--surface-alt)}.tab-capsule-btn{height:34px;padding:0 16px;border:0;border-radius:11px;background:transparent;color:var(--ink-2);font-size:12.5px;font-weight:600;font-family:var(--font-body);cursor:pointer;white-space:nowrap}.tab-capsule-btn:hover{color:var(--ink);background:transparent}.tab-capsule-btn.active{background:var(--primary);color:#fff;font-weight:700}.tab-capsule-btn.active:hover{background:var(--primary);color:#fff}.add-measurement-btn{height:38px;padding:0 18px;border:0;border-radius:var(--radius-pill);background:var(--primary);color:#fff;font-size:13.5px;font-weight:700;cursor:pointer;white-space:nowrap}.add-measurement-btn:hover{background:var(--primary-hover)}.growth-cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.growth-card{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:20px;background:var(--surface-tint);border:1.5px solid var(--hairline);min-width:0}.growth-card-head{display:flex;align-items:center;gap:9px}.growth-card-dot{width:9px;height:9px;border-radius:3px;flex-shrink:0}.growth-card-title{font-size:14px;font-weight:800;letter-spacing:-.01em;color:var(--ink)}.growth-card-sub{font-size:11px;font-weight:600;color:var(--ink-3)}.growth-chart{display:block}.growth-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.growth-legend-item{display:flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;color:#9a98b5}.growth-legend-swatch{width:8px;height:8px;border-radius:2px}.growth-value-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.growth-value{font-size:25px;font-weight:800;letter-spacing:-.02em;color:var(--ink)}.growth-percentile-pill{padding:4px 10px;border-radius:var(--radius-pill);font-size:11.5px;font-weight:800;white-space:nowrap}.growth-percentile-pill.muted{background:var(--surface-alt);color:var(--ink-3)}.growth-meta{font-size:12px;font-weight:600;color:var(--ink-3)}.growth-delta{font-size:12px;font-weight:700}.growth-delta.up{color:var(--mint-text)}.growth-delta.down{color:var(--amber-text)}.growth-caution{font-size:12px;font-weight:600;color:var(--amber-text);background:var(--amber-tint);padding:8px 11px;border-radius:12px}.growth-empty{font-size:12.5px;font-weight:600;color:var(--ink-3)}.growth-empty.centered{text-align:center;padding:24px}.growth-empty-link{background:none;border:none;padding:0;color:var(--primary);font-size:12.5px;font-weight:700;cursor:pointer;text-decoration:underline}.growth-empty-link:hover{background:none;color:var(--primary-hover)}.growth-table-card{padding:16px 18px 18px;border-radius:20px;background:var(--surface-tint);border:1.5px solid var(--hairline)}.growth-table-title{font-size:13.5px;font-weight:800;margin-bottom:12px;color:var(--ink)}.growth-table-row{display:grid;grid-template-columns:1fr .8fr 1fr 1fr 1fr 1fr 24px;gap:6px;padding:10px 4px;border-top:1px solid var(--hairline);font-size:12.5px;font-weight:600;color:var(--ink-2)}.growth-table-row.growth-table-head{padding:0 4px 8px;border-top:none;font-size:10.5px;font-weight:700;letter-spacing:.05em;color:var(--ink-4)}.growth-table-row.latest{font-weight:700;color:var(--ink)}.growth-table-row .muted{color:var(--ink-3);font-weight:600}.growth-table-row .violet{color:#4536c9}.growth-table-row .mint{color:var(--mint-text)}.growth-table-action{display:flex;align-items:center;justify-content:center}.growth-table-delete{width:22px;height:22px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--ink-3);display:flex;align-items:center;justify-content:center;cursor:pointer}.growth-table-delete:hover{background:var(--error-bg);color:var(--error)}.growth-table-delete:disabled{opacity:.5;cursor:default}.growth-card-list{display:none}.growth-measure-card{position:relative;display:flex;flex-direction:column;gap:8px;border:1.5px solid var(--hairline);border-radius:14px;padding:10px 12px}.growth-measure-top{display:flex;align-items:baseline;justify-content:space-between}.growth-measure-date{font-size:12.5px;font-weight:800;color:var(--ink-2)}.growth-measure-card.latest .growth-measure-date{color:var(--ink)}.growth-measure-age{font-size:11px;font-weight:600;color:var(--ink-3)}.growth-measure-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.growth-measure-stat{display:flex;flex-direction:column;gap:2px}.growth-measure-stat-label{font-size:9.5px;font-weight:700;letter-spacing:.05em;color:#9a98b5}.growth-measure-stat-value{font-size:14px;font-weight:700;color:var(--ink-2)}.growth-measure-card.latest .growth-measure-stat-value{font-weight:800;color:var(--ink)}.growth-measure-pct{margin-left:4px;font-size:10.5px;font-weight:800}.growth-measure-pct.violet{color:#4536c9}.growth-measure-pct.mint{color:var(--mint-text)}.growth-measure-delete{position:absolute;top:8px;right:8px;width:22px;height:22px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--ink-3);display:flex;align-items:center;justify-content:center;cursor:pointer}.growth-measure-delete:disabled{opacity:.5;cursor:default}@media(max-width:480px){.growth-table-desktop{display:none}.growth-card-list{display:flex;flex-direction:column;gap:8px}}.vaccine-progress-pill{display:flex;align-items:center;gap:8px;height:34px;padding:0 12px;border-radius:12px;background:var(--mint-tint);font-size:12px;font-weight:700;color:var(--mint-text);white-space:nowrap}.vaccine-progress-track{width:56px;height:6px;border-radius:var(--radius-pill);background:#cdeee2;position:relative;overflow:hidden;flex-shrink:0}.vaccine-progress-fill{position:absolute;left:0;top:0;bottom:0;background:var(--mint);border-radius:var(--radius-pill)}.vaccine-info-banner{display:flex;align-items:center;gap:10px;padding:11px 15px;border-radius:14px;background:var(--surface-tint);margin-bottom:10px}.vaccine-info-icon{width:20px;height:20px;border-radius:7px;background:var(--violet-tint);color:var(--primary);font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.vaccine-info-banner p{margin:0;font-size:12px;font-weight:500;color:var(--ink-2)}.vaccine-milestone{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}.vaccine-group-head{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:14px;border:0;cursor:pointer;font-family:var(--font-body);text-align:left;background:var(--surface-tint)}.vaccine-group-head.given{background:#f3fbf8}.vaccine-milestone-pill{padding:3px 9px;border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-2);font-size:11px;font-weight:800;white-space:nowrap}.vaccine-group-head.given .vaccine-milestone-pill{color:var(--mint-text)}.vaccine-milestone-summary{flex:1;min-width:0;font-size:12px;font-weight:600;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vaccine-overdue-tag{padding:3px 9px;border-radius:var(--radius-pill);background:var(--coral-tint);color:var(--error);font-size:10.5px;font-weight:700;white-space:nowrap}.vaccine-count-pill{padding:3px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:700;white-space:nowrap;background:var(--surface-alt);color:var(--ink-4)}.vaccine-count-pill.given{background:var(--mint);color:#fff}.vaccine-count-pill.due{background:var(--amber-tint);color:var(--amber-text)}.vaccine-row{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:14px;background:var(--surface-tint)}.vaccine-row.ready{background:var(--surface);border:1.5px solid var(--hairline)}.vaccine-row.given{background:#f3fbf8}.vaccine-row-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.vaccine-checkbox{width:22px;height:22px;border-radius:7px;flex-shrink:0;padding:0;display:flex;align-items:center;justify-content:center;background:var(--surface-alt);border:1.5px dashed #d8d6ea;cursor:not-allowed}.vaccine-row.ready .vaccine-checkbox{background:#fff;border:1.75px solid var(--primary);cursor:pointer}.vaccine-row.given .vaccine-checkbox{background:var(--mint);border:1.5px solid var(--mint);cursor:pointer}.vaccine-row-text{flex:1;min-width:0}.vaccine-row-name{font-size:13.5px;font-weight:700;color:#9a98b5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vaccine-row.ready .vaccine-row-name{color:var(--ink)}.vaccine-row.given .vaccine-row-name{color:var(--mint-text);font-weight:800}.vaccine-row-subtitle{font-size:11px;font-weight:500;color:#b0aec7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vaccine-row.ready .vaccine-row-subtitle{color:var(--ink-3)}.vaccine-row.given .vaccine-row-subtitle{color:#5c8b7c}.date-picker-trigger.vaccine-date-input{height:36px;width:140px;padding:0 10px;border-radius:12px;flex-shrink:0;border:1.5px dashed var(--hairline);background:#fff;gap:2px}.date-picker-trigger.vaccine-date-input .date-picker-text-input{font-size:12.5px;font-weight:700;text-align:center;color:#b0aec7}.date-picker-trigger.vaccine-date-input .date-picker-icon-btn{width:18px;height:18px}.vaccine-row.ready .date-picker-trigger.vaccine-date-input{border:1.5px solid #d6d2f4;background:var(--surface-tint)}.vaccine-row.ready .date-picker-trigger.vaccine-date-input .date-picker-text-input{color:var(--ink)}.vaccine-row.given .date-picker-trigger.vaccine-date-input{border:1.5px solid #cdeee2}.vaccine-row.given .date-picker-trigger.vaccine-date-input .date-picker-text-input{color:var(--mint-text)}@media(max-width:760px){.modal-overlay:has(.profile-modal){align-items:flex-end;padding:0}.profile-modal{width:100%;max-width:100%;border-radius:24px 24px 0 0;max-height:88vh;padding-bottom:env(safe-area-inset-bottom)}.profile-data-actions{flex-direction:column}.add-child-fields{flex-direction:column;align-items:stretch}.add-child-name,.add-child-dob,.add-child-submit,.add-child-fields .custom-select-trigger.field-select{width:100%}.edit-child-fields{flex-direction:column;align-items:stretch;width:100%}.edit-child-name,.edit-child-dob,.edit-child-submit,.edit-child-fields .custom-select-trigger.field-select{width:100%}}button:focus-visible,input:focus-visible,a:focus-visible,.source-card:focus-visible,.suggestion:focus-visible,.nav-item:focus-visible,.bottomnav-item:focus-visible,.record-card:focus-visible,.filter-pill:focus-visible{outline:none;box-shadow:var(--focus-ring)}.panel-scroll::-webkit-scrollbar,.content--page::-webkit-scrollbar,.rail::-webkit-scrollbar{width:10px}.panel-scroll::-webkit-scrollbar-thumb,.content--page::-webkit-scrollbar-thumb,.rail::-webkit-scrollbar-thumb{background:#d9d6f2;border-radius:6px;border:3px solid var(--surface)}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media(max-width:1080px){.rail{width:214px;flex:0 0 214px}}@media(max-width:940px){.rail{width:76px;flex:0 0 76px;padding:16px 10px}.rail-brand-text,.rail-account-text,.signout-btn,.nav-label,.nav-count,.rail-children{display:none}.rail-brand,.nav-item,.rail-account,.rail-account-link{justify-content:center;padding-left:0;padding-right:0}.rail-account-link{flex:0}.facts{grid-template-columns:repeat(min(var(--fact-cols, 4),2),1fr)}.cards-grid{grid-template-columns:1fr}.records-search input{display:none}.records-search{width:34px;height:34px;padding:0;justify-content:center;border-radius:12px}.review-grid{grid-template-columns:1fr 1fr}.growth-cards-grid{grid-template-columns:1fr}}@media(max-width:760px){.shell{padding:0;gap:0;min-height:0;height:100dvh}.rail{display:none}.main{gap:0}.mobilebar,.bottomnav{display:flex}.panel{border-radius:0}.panel-head{padding:12px 14px}.ghost-btn.newchat{display:none}.panel-head:has(.child-picker){flex-wrap:wrap}.panel-head .child-picker{flex:1 1 100%}.panel-head .child-picker-trigger{max-width:none;width:100%}.panel-head .tab-capsule{flex:1 1 100%}.panel-head .tab-capsule .tab-capsule-btn{flex:1}.panel-head .panel-head-spacer{flex-basis:0}.panel-scroll{padding:16px 14px 6px}.answercard{padding:16px 15px;border-radius:18px}.sources{grid-template-columns:1fr}.bubble{max-width:88%}.composerwrap{padding:8px 14px 14px}.actions{flex-wrap:wrap}.records-page{padding:14px 14px 22px}.filter-row{padding:12px 14px 0}.review-grid{grid-template-columns:1fr}.record-card-delete{opacity:1}.upload-page{max-width:none}.page{padding:18px 14px 24px}.grid2{grid-template-columns:1fr}.med-row{grid-template-columns:1fr 1fr}.growth-cards-grid{grid-template-columns:1fr}.growth-table-row{grid-template-columns:1fr .7fr 1fr 1fr 22px;font-size:11.5px}.growth-table-row>span:nth-child(5),.growth-table-row>span:nth-child(6){display:none}.vaccine-row{flex-direction:column;align-items:stretch}.date-picker-trigger.vaccine-date-input{width:100%}.child-picker-name{max-width:40vw}}@media(max-width:420px){.chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch}.privacy-pill{display:none}.facts{grid-template-columns:repeat(min(var(--fact-cols, 4),2),1fr);gap:6px}}
