:root{color:#26333d;font-synthesis:none;text-rendering:optimizelegibility;background:#f6fafb;font-family:Inter,Noto Sans TC,Microsoft JhengHei,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}.login-page{background:#f6fafb;place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{background:#fff;border:1px solid #dbe5e8;border-radius:8px;gap:22px;width:min(100%,420px);max-width:420px;padding:28px;display:grid;box-shadow:0 18px 40px #0f3d3a14}.login-brand{grid-template-columns:46px 1fr;align-items:center;gap:12px;display:grid}.login-brand h1{color:#00897b;margin:0;font-size:24px;line-height:1.1}.login-brand p,.login-status{color:#687782;margin:4px 0 0}.login-form{gap:14px;display:grid}.login-form label{color:#40505b;gap:7px;font-size:13px;font-weight:800;display:grid}.login-form input{color:#26333d;background:#fff;border:1px solid #d7e1e5;border-radius:5px;width:100%;min-height:40px;padding:0 10px}.remember-row{align-items:center;gap:9px!important;display:flex!important}.remember-row input{width:16px;min-height:auto}.login-status{font-size:13px}.product-shell{grid-template-columns:238px minmax(1080px,1fr);min-height:100vh;display:grid}.app-sidebar{background:#fff;border-right:1px solid #dbe5e8;flex-direction:column;gap:12px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0}.brand-row{grid-template-columns:42px 1fr;align-items:center;gap:10px;display:grid}.logo-mark{color:#00897b;border:2px solid #009688;border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.brand-row h1,.dashboard-header h2,.profile-summary h3,.card h3,.standards-panel h3{letter-spacing:0;margin:0}.brand-row h1{color:#00897b;font-size:22px;line-height:1.05}.brand-row p,.photo-member small,.profile-person p,.metric-tile p,.metric-tile span,.timeline-row p,td,th,.muted{color:#687782}.brand-row p{margin:3px 0 0;font-size:12px}.member-panel,.db-card{border:1px solid #dbe5e8;border-radius:6px;padding:10px}.side-section-title{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px;font-weight:800;display:flex}.mini-add,.bell-button,.row-action{color:#40505b;background:#fff;border:1px solid #d7e1e5;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.member-stack,.sidebar-nav{gap:6px;display:grid}.member-form{border-bottom:1px solid #e7eef0;gap:8px;margin-bottom:10px;padding-bottom:10px;display:grid}.member-form input,.member-form select{color:#26333d;background:#fff;border:1px solid #d7e1e5;border-radius:5px;width:100%;min-height:34px;padding:0 9px}.photo-member{color:#26333d;text-align:left;background:#fff;border:1px solid #0000;border-radius:6px;grid-template-columns:42px 1fr;align-items:center;gap:10px;min-height:58px;padding:6px;display:grid}.photo-member.selected{border-color:#00a79d;box-shadow:inset 3px 0 #00a79d}.photo-member img,.profile-person img{object-fit:cover;border-radius:50%}.photo-member img{width:42px;height:42px}.photo-member strong{font-size:14px;line-height:1.25;display:block}.photo-member small{font-size:12px;display:block}.nav-button{color:#344650;text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:24px 1fr;align-items:center;gap:10px;min-height:42px;padding:9px 10px;font-size:15px;font-weight:700;display:grid}.nav-button.active{color:#00897b;background:linear-gradient(90deg,#dff7f4,#f2fbfa)}.db-card{color:#40505b;gap:8px;margin-top:auto;font-size:12px;display:grid}.db-card svg{color:#00897b}.db-card button{color:#00897b;background:#fff;border:1px solid #00a79d;border-radius:5px;min-height:32px;font-weight:800}.dashboard-page{padding:22px}.dashboard-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.dashboard-header h2{color:#111827;font-size:28px}.header-tools{align-items:center;gap:12px;display:flex}.date-range{color:#33434d;background:#fff;border:1px solid #d7e1e5;border-radius:6px;align-items:center;gap:8px;min-height:38px;padding:0 11px;display:inline-flex}.date-range select{color:#33434d;border:0;outline:0;min-width:140px}.main-add,.save-button{color:#fff;background:linear-gradient(#00a79d,#00897b);border:0;border-radius:5px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 18px;font-weight:800;display:inline-flex}.bell-button{border:0;position:relative}.bell-button span{background:#ef4444;border-radius:50%;width:8px;height:8px;position:absolute;top:5px;right:7px}.profile-summary,.metrics-strip,.work-grid{gap:16px;display:grid}.profile-summary{background:#fff;border:1px solid #dbe5e8;border-radius:7px;grid-template-columns:1.15fr 1fr 1fr;min-height:146px;margin-bottom:18px;padding:22px 18px}.profile-person{grid-template-columns:92px 1fr;align-items:center;gap:18px;display:grid}.profile-person img{width:92px;height:92px}.profile-person h3{font-size:24px}.profile-person h3 span{color:#00897b;background:#d8f4ef;border-radius:999px;margin-left:10px;padding:4px 9px;font-size:13px}.profile-person p{margin:9px 0;font-size:14px}.profile-person small{color:#059669;align-items:center;gap:5px;line-height:1.4;display:inline-flex}.summary-notes,.needs-attention{border-left:1px solid #dbe5e8;padding-left:32px}.summary-notes h4,.needs-attention h4{margin:0 0 10px;font-size:15px}.summary-notes ul,.needs-attention ul{margin:0;padding-left:18px;font-size:14px;line-height:1.65}.needs-attention h4:before{color:#ef4444;content:"!";margin-right:8px;font-weight:900}.needs-attention a,.text-link-button{color:#00897b;background:0 0;border:0;margin-top:8px;padding:0;font-size:14px;font-weight:800;text-decoration:none;display:inline-block}.metrics-strip{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:16px}.metric-tile,.card,.standards-panel{background:#fff;border:1px solid #dbe5e8;border-radius:7px;box-shadow:0 14px 28px #0f172a09}.metric-tile{border-top:3px solid var(--metric-color,#009688);min-height:150px;padding:16px 15px 10px}.metric-tile header{grid-template-columns:30px 1fr auto;align-items:center;gap:8px;display:grid}.metric-icon{background:color-mix(in srgb, var(--metric-color,#009688) 12%, white);border:1px solid color-mix(in srgb, var(--metric-color,#009688) 26%, white);color:var(--metric-color,#009688);border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.metric-tile p{margin:0;font-size:14px;font-weight:700}.metric-tile header b,.table-status,.soft-tag{color:#059669;white-space:nowrap;background:#dbf7e8;border-radius:999px;padding:4px 7px;font-size:12px}.soft-tag.feeling-normal{color:#2563eb;background:#dbeafe}.soft-tag.feeling-mild{color:#a16207;background:#fef9c3}.soft-tag.feeling-medium{color:#ea580c;background:#ffedd5}.soft-tag.feeling-high{color:#dc2626;background:#fee2e2}.metric-tile header b.warning{color:#f97316;background:#ffedd5}.metric-tile header b.danger,.table-status.warn{color:#e11d48;background:#ffe4e6}.metric-tile>strong{color:#111827;margin-top:18px;font-size:25px;line-height:1;display:block}.metric-tile>strong small{color:#40505b;font-size:12px;font-weight:500}.metric-tile>span{margin:10px 0 2px;font-size:13px;display:block}.standards-panel{margin-bottom:16px;padding:18px}.management-page{gap:16px;display:grid}.member-management-grid{grid-template-columns:360px 1fr;align-items:start;gap:16px;display:grid}.member-editor-card h3,.member-list-card h3{margin-bottom:12px}.managed-member-list{gap:10px;display:grid}.managed-member-row{border:1px solid #e2eaed;border-radius:6px;grid-template-columns:46px 1fr auto auto auto;align-items:center;gap:12px;padding:10px;display:grid}.managed-member-row img{object-fit:cover;border-radius:50%;width:46px;height:46px}.managed-member-row strong,.managed-member-row span,.managed-member-row small{display:block}.managed-member-row span,.managed-member-row small{color:#687782;margin-top:2px;font-size:12px}.managed-member-row button,.detail-button{color:#00897b;background:#fff;border:1px solid #d7e1e5;border-radius:5px;min-height:34px;padding:0 10px;font-size:13px;font-weight:800}.managed-member-row .danger-link{color:#e11d48}.medication-overview-card{margin-bottom:16px;padding:14px 16px}.medication-overview-list,.meal-plan-grid,.medication-list{gap:10px;display:grid}.medication-overview-list{grid-template-columns:repeat(3,minmax(0,1fr))}.meal-reminder-row{background:#f7fbfb;border:1px solid #e2eaed;border-radius:6px;justify-content:space-between;align-items:center;min-height:42px;padding:9px 11px;display:flex}.meal-reminder-row strong{color:#17242d}.meal-reminder-row span{color:#687782;font-size:13px}.medication-grid{grid-template-columns:minmax(0,1.35fr) 360px;align-items:start;gap:16px;display:grid}.medication-today-card,.medication-list-card,.medication-log-card,.medication-editor-card{padding:16px}.medication-list-card,.medication-log-card{grid-column:1/-1}.meal-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.meal-plan-card{border:1px solid #e2eaed;border-radius:7px;gap:10px;min-height:148px;padding:12px;display:grid}.meal-plan-card h4{color:#17242d;margin:0;font-size:15px}.medication-reminder{grid-template-columns:14px 1fr auto;align-items:center;gap:8px;display:grid}.medication-reminder strong,.medication-row-card strong{color:#17242d;display:block}.medication-reminder small,.medication-row-card span,.medication-row-card small{color:#687782;margin-top:2px;font-size:12px;display:block}.medicine-dot{border-radius:999px;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0f172a14}.medicine-dot.large{width:22px;height:22px}.medicine-status{color:#475569;white-space:nowrap;background:#eef2f7;border-radius:999px;padding:4px 7px;font-size:12px;font-weight:800}.medicine-status.taken{color:#059669;background:#dbf7e8}.medicine-status.skipped,.medicine-status.missed{color:#e11d48;background:#ffe4e6}.medicine-status.pending{color:#a16207;background:#fef9c3}.reminder-actions{grid-column:2/-1;gap:6px;display:flex}.reminder-actions button,.medication-row-card button{color:#00897b;background:#fff;border:1px solid #d7e1e5;border-radius:5px;min-height:30px;padding:0 9px;font-size:12px;font-weight:800}.color-swatch-row,.checkbox-chip-row{flex-wrap:wrap;gap:8px;display:flex}.color-swatch-row button{border:2px solid #0000;border-radius:999px;width:28px;height:28px}.color-swatch-row button.selected{border-color:#111827}.field-title{color:#40505b;margin-bottom:7px;font-size:13px;font-weight:800;display:block}.checkbox-chip{color:#40505b;cursor:pointer;border:1px solid #d7e1e5;border-radius:999px;align-items:center;min-height:34px;padding:0 10px;font-size:13px;font-weight:800;gap:6px!important;display:inline-flex!important}.checkbox-chip input{width:auto!important;min-height:auto!important}.medication-active-row{color:#40505b}.medication-row-card{border:1px solid #e2eaed;border-radius:6px;grid-template-columns:28px 1fr auto auto;align-items:center;gap:12px;padding:11px;display:grid}.medication-row-card.disabled{opacity:.58}.medication-row-card .danger-link{color:#e11d48}.avatar-upload-row{grid-template-columns:48px 1fr auto;align-items:center;gap:10px;display:grid}.avatar-upload-row img{object-fit:cover;border-radius:50%;width:48px;height:48px}.avatar-upload-button{color:#00897b;cursor:pointer;border:1px dashed #8ab8b3;border-radius:6px;justify-content:center;align-items:center;min-height:36px;font-weight:800;display:flex!important}.avatar-upload-button input{display:none}.section-head{justify-content:space-between;align-items:start;margin-bottom:14px;display:flex}.section-head h3{color:#17242d;font-size:18px}.section-head p{color:#687782;margin:6px 0 0;font-size:13px;line-height:1.5}.assessment-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.assessment-card{border:1px solid #dbe5e8;border-radius:6px;gap:6px;padding:12px;display:grid}.assessment-card span{color:#00897b;font-size:12px;font-weight:800}.assessment-card strong{color:#17242d;font-size:15px}.assessment-card b{color:#111827;font-size:18px}.assessment-card p,.assessment-card small{color:#687782;margin:0;font-size:12px;line-height:1.45}.assessment-card.attention{border-color:#fed7aa}.assessment-card.warning,.assessment-card.critical{border-color:#fecdd3}.assessment-card.warning span,.assessment-card.critical span{color:#e11d48}.reference-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.reference-grid a{color:inherit;background:#f8fafb;border:1px solid #e2eaed;border-radius:6px;gap:4px;padding:12px;text-decoration:none;display:grid}.reference-grid strong{color:#17242d;font-size:14px}.reference-grid span{color:#00897b;font-size:12px;font-weight:800}.reference-grid p{color:#687782;margin:0;font-size:12px;line-height:1.45}.work-grid{grid-template-columns:1.18fr 1fr 326px;align-items:start}.card{padding:16px}.card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.card-head.compact{margin-bottom:8px}.card h3{color:#17242d;font-size:17px}.compact-select{color:#40505b;background:#fff;border:1px solid #d7e1e5;border-radius:6px;min-height:38px;padding:0 36px 0 12px;font-size:14px;font-weight:800}.trend-card,.exercise-card{min-height:305px}.exercise-summary-metrics{flex-wrap:wrap;align-items:baseline;gap:12px 34px;margin:2px 0 8px;display:flex}.exercise-summary-metrics span{color:#687782;font-size:14px;font-weight:800}.exercise-summary-metrics strong{color:#17242d;margin-left:6px;font-size:24px;line-height:1}.chart-empty-state{color:#687782;border:1px dashed #c9d8dd;border-radius:6px;place-items:center;height:245px;font-size:14px;font-weight:800;display:grid}.bp-chart-legend{color:#40505b;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:6px;font-size:12px;font-weight:800;display:flex}.bp-chart-legend span{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.legend-line,.threshold{width:22px;height:0;display:inline-block}.legend-line.systolic{border-top:3px solid #0f9488}.legend-line.diastolic{border-top:3px dashed #7c3aed}.threshold.stage-one{border-top:2px dashed #f59e0b}.threshold.stage-two{border-top:2px dashed #ef4444}.threshold.crisis{border-top:2px dashed #7f1d1d}.tab-control{border:1px solid #d7e1e5;border-radius:6px;display:inline-flex;overflow:hidden}.tab-control button{color:#40505b;background:#fff;border:0;border-right:1px solid #d7e1e5;min-height:34px;padding:0 13px;font-size:13px;font-weight:800}.tab-control button:last-child{border-right:0}.tab-control button.active{color:#fff;background:#00a79d}.quick-entry{grid-row:span 2}.quick-entry h3{margin-bottom:13px}.quick-entry .tab-control{grid-template-columns:repeat(4,1fr);width:100%;display:grid}.entry-form{gap:12px;margin-top:14px;display:grid}.entry-form label{color:#40505b;gap:7px;font-size:13px;font-weight:800;display:grid}.entry-form input,.entry-form select{color:#26333d;background:#fff;border:1px solid #d7e1e5;border-radius:5px;width:100%;min-height:36px;padding:0 10px}.entry-form input::placeholder{color:#7b8b95;opacity:1;font-weight:800}.two-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.metric-field-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.save-button{width:100%;margin-top:12px}.save-button.compact{min-height:34px;margin-top:0}.empty-state{background:#fff;border:1px solid #dbe5e8;border-radius:7px;align-items:start;gap:12px;max-width:640px;margin-bottom:18px;padding:24px;display:grid}.empty-state h3{color:#17242d;margin:0;font-size:22px}.empty-state p{color:#687782;margin:0;line-height:1.6}.import-box{background:#f6fbfa;border:1px dashed #9ddbd4;border-radius:6px;gap:8px;margin-top:14px;padding:12px;display:grid}.import-box div,.import-button{align-items:center;gap:8px;display:flex}.import-box div{color:#00897b}.import-box p{color:#687782;margin:0;font-size:12px;line-height:1.45}.import-button{color:#00897b;background:#fff;border:1px solid #00a79d;border-radius:5px;justify-content:center;min-height:34px;font-size:13px;font-weight:800;position:relative}.import-button input{opacity:0;width:1px;height:1px;position:absolute}.condition-timeline,.recent-card{min-height:286px}.timeline-list{gap:12px;margin-top:10px;padding-left:9px;display:grid;position:relative}.timeline-list:before{content:"";background:#dce7eb;width:2px;position:absolute;top:12px;bottom:10px;left:13px}.timeline-row{grid-template-columns:12px minmax(0,1fr);align-items:start;gap:10px;display:grid;position:relative}.timeline-dot{z-index:1;background:#2563eb;border:2px solid #fff;border-radius:50%;width:12px;height:12px;margin-top:8px;position:relative;box-shadow:0 0 0 1px #0f172a14}.timeline-dot.feeling-normal{background:#2563eb}.timeline-dot.feeling-mild{background:#facc15}.timeline-dot.feeling-medium{background:#f97316}.timeline-dot.feeling-high{background:#ef4444}.timeline-row time{color:#94a3b8;font-size:12px;font-weight:700;display:block}.timeline-meta{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:flex}.timeline-meta .soft-tag{padding:3px 7px}.timeline-row strong{color:#26333d;margin:3px 0;font-size:14px;display:block}.timeline-row p{margin:0;font-size:13px;line-height:1.45}.panel-link{color:#00897b;background:0 0;border:0;justify-self:end;align-items:center;gap:4px;margin-top:12px;padding:0;font-size:13px;font-weight:900;display:inline-flex}.panel-link:after{content:"›";font-size:18px;line-height:1}.panel-link.inline{margin-top:0}.recent-card{grid-column:span 2}table{border-collapse:collapse;border:1px solid #dbe5e8;border-radius:6px;width:100%;overflow:hidden}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #e7eef0;padding:8px 9px;font-size:12px}th{color:#40505b;background:#f6f9fa;font-weight:800}tbody tr:last-child td{border-bottom:0}.row-action{width:28px;height:28px}@media (width<=1180px){.product-shell{grid-template-columns:1fr}.app-sidebar{height:auto;position:static}.member-stack,.sidebar-nav{display:flex;overflow-x:auto}.photo-member{flex:0 0 190px}.profile-summary,.work-grid,.member-management-grid,.medication-grid,.meal-plan-grid,.medication-overview-list,.assessment-grid,.reference-grid{grid-template-columns:1fr}.summary-notes,.needs-attention{border-top:1px solid #dbe5e8;border-left:0;padding-top:16px;padding-left:0}.metrics-strip{grid-template-columns:repeat(3,1fr)}.quick-entry,.recent-card{grid-area:auto}}@media (width<=720px){.dashboard-page{padding:16px}.dashboard-header,.header-tools{flex-direction:column;align-items:stretch}.metrics-strip,.metric-field-grid,.managed-member-row,.medication-row-card,.medication-reminder{grid-template-columns:1fr}.reminder-actions{grid-column:auto}.managed-member-row img{display:none}.profile-person{grid-template-columns:70px 1fr}.profile-person img{width:70px;height:70px}.profile-person h3{font-size:21px}.card{overflow-x:auto}table{min-width:720px}}
