:root{--ca-bg:#f4f7f6;--ca-card:#fff;--ca-text:#17302c;--ca-muted:#647874;--ca-primary:#174f47;--ca-primary2:#236d62;--ca-line:#dbe5e2;--ca-danger:#b42318;--ca-warn:#fff4e5;--ca-shadow:0 12px 35px rgba(23,79,71,.09)}
.ca-app{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--ca-bg);color:var(--ca-text);min-height:100vh;max-width:1100px;margin:0 auto;padding-bottom:86px}
.ca-app *{box-sizing:border-box}.ca-topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:rgba(244,247,246,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--ca-line)}
.ca-brand{font-size:1.3rem;font-weight:800}.ca-subbrand{font-size:.76rem;color:var(--ca-muted);margin-top:2px}.ca-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#1b936f;margin-right:5px}.ca-icon-btn,.ca-app button{border:1px solid var(--ca-line);background:#fff;color:var(--ca-text);border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer}.ca-app button:disabled{opacity:.45;cursor:not-allowed}.ca-main{padding:18px}.ca-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:18px;padding:22px;border-radius:22px;background:linear-gradient(135deg,#e6f1ee,#f8fbfa);border:1px solid var(--ca-line)}.ca-hero h1{margin:.2rem 0 .45rem;font-size:clamp(1.7rem,4vw,2.5rem)}.ca-hero p{margin:0;color:var(--ca-muted);max-width:720px;line-height:1.5}.ca-kicker{font-size:.72rem;letter-spacing:.13em;font-weight:800;color:var(--ca-primary2)}.ca-privacy{background:#fff;border:1px solid var(--ca-line);padding:10px 12px;border-radius:12px;font-size:.82rem;white-space:nowrap}.ca-card{background:var(--ca-card);border:1px solid var(--ca-line);box-shadow:var(--ca-shadow);border-radius:20px;padding:20px;margin:0 0 18px}.ca-card h2{margin-top:0}.ca-form{display:grid;gap:14px}.ca-form label,.ca-select-label{display:grid;gap:7px;font-weight:700;font-size:.92rem}.ca-form input,.ca-form textarea,.ca-app select,.ca-inline input,.ca-recovery-input,.ca-card>input{width:100%;border:1px solid #c9d7d3;border-radius:12px;padding:12px 13px;font:inherit;background:#fbfdfc;color:var(--ca-text)}.ca-form input[type=range]{padding:0}.ca-primary{background:var(--ca-primary)!important;color:#fff!important;border-color:var(--ca-primary)!important}.ca-section-head{display:flex;justify-content:space-between;align-items:center}.ca-section-head span,.ca-muted,.ca-note{color:var(--ca-muted);font-size:.86rem}.ca-entry{display:grid;grid-template-columns:46px 1fr;gap:13px;padding:14px 0;border-top:1px solid var(--ca-line)}.ca-entry:first-child{border-top:0}.ca-entry-score{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#e7f1ee;font-weight:900;color:var(--ca-primary)}.ca-entry p{margin:.55rem 0}.ca-tags{display:flex;gap:6px;flex-wrap:wrap}.ca-tags span{font-size:.74rem;background:#eff5f3;padding:4px 8px;border-radius:999px}.ca-empty{padding:20px;text-align:center;color:var(--ca-muted)}.ca-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.ca-stats>div{background:#fff;border:1px solid var(--ca-line);border-radius:18px;padding:16px}.ca-stats span,.ca-stats small{display:block;color:var(--ca-muted)}.ca-stats strong{display:block;font-size:2rem;margin:6px 0}canvas{display:block;width:100%;height:auto}.ca-emergency-hero{display:flex;gap:15px;align-items:center;background:linear-gradient(135deg,#7b1712,#b42318);color:#fff;border-radius:22px;padding:20px;margin-bottom:14px}.ca-emergency-hero>span{font-size:2.8rem}.ca-emergency-hero h1{margin:0 0 4px}.ca-emergency-hero p{margin:0;opacity:.9}.ca-emergency-actions{display:grid;gap:10px;margin-bottom:18px}.ca-sos{background:#b42318!important;color:white!important;border-color:#b42318!important;font-size:1.2rem!important;padding:16px!important}.ca-contact-call{font-size:1.05rem!important;padding:15px!important}.ca-wake{background:#1f3c38!important;color:#fff!important}.ca-med-card{border-left:5px solid #b42318}.ca-med-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ca-med-grid>div{background:#f8faf9;border-radius:13px;padding:12px}.ca-med-grid span{font-size:.76rem;color:var(--ca-muted);font-weight:800;text-transform:uppercase}.ca-med-grid p{white-space:pre-wrap;margin:.4rem 0 0}.ca-warning{background:var(--ca-warn);border:1px solid #f3d39e;border-radius:14px;padding:14px;line-height:1.45}.ca-backup-status{display:grid;gap:3px;padding:13px;background:#fff3f1;border-radius:13px;margin-bottom:18px}.ca-backup-status.ok{background:#e9f7f1}.ca-inline{display:grid;grid-template-columns:1fr auto;gap:8px;margin:10px 0}.ca-select-label{margin:16px 0}.ca-button-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.ca-danger-outline{border-color:#d92d20!important;color:#b42318!important}.ca-checks{list-style:none;padding:0;line-height:1.9}.ca-recovery-code{display:block;word-break:break-all;background:#f1f5f4;border:1px dashed #9aafaa;border-radius:12px;padding:13px;margin:14px 0;font-size:1rem}.ca-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:30;width:min(1100px,100%);display:grid;grid-template-columns:repeat(5,1fr);gap:2px;background:#fff;border-top:1px solid var(--ca-line);padding:7px}.ca-nav button{border:0;border-radius:10px;background:transparent;padding:10px 4px;font-size:.78rem}.ca-nav button.active{background:#e5f0ed;color:var(--ca-primary)}.ca-toast{position:fixed;z-index:100;left:50%;bottom:88px;transform:translate(-50%,20px);max-width:min(92vw,560px);background:#20342f;color:#fff;padding:12px 15px;border-radius:12px;opacity:0;pointer-events:none;transition:.2s}.ca-toast.show{opacity:1;transform:translate(-50%,0)}.ca-toast.error{background:#8f1d16}.ca-toast.success{background:#17664f}.ca-modal{position:fixed;inset:0;z-index:200;background:rgba(9,25,22,.72);display:grid;place-items:center;padding:18px}.ca-modal[hidden]{display:none}.ca-modal-card{max-width:600px;width:100%;max-height:90vh;overflow:auto;background:#fff;border-radius:22px;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.25)}.ca-lock-big{font-size:2.4rem}.ca-confirm{display:flex;gap:9px;align-items:flex-start;margin:18px 0}.ca-loading,.ca-fatal{padding:40px;text-align:center}.ca-fatal{background:#fff3f1;color:#8f1d16;border-radius:14px;margin:20px}
@media(max-width:680px){.ca-main{padding:12px}.ca-hero{display:block;padding:17px}.ca-privacy{display:inline-block;margin-top:12px;white-space:normal}.ca-card{padding:15px;border-radius:16px}.ca-stats{grid-template-columns:1fr 1fr 1fr;gap:7px}.ca-stats>div{padding:11px}.ca-stats strong{font-size:1.45rem}.ca-med-grid{grid-template-columns:1fr}.ca-inline{grid-template-columns:1fr}.ca-inline button{width:100%}.ca-nav button{font-size:.7rem}.ca-subbrand{max-width:220px}.ca-topbar{padding:10px 12px}}
.ca-nav{grid-template-columns:repeat(7,1fr)}
.ca-quick-grid,.ca-module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.ca-quick-grid button,.ca-module-grid button{display:grid;gap:5px;text-align:left;align-content:start;min-height:118px;padding:15px}.ca-quick-grid button>span,.ca-module-grid button>span{font-size:1.65rem}.ca-quick-grid small,.ca-module-grid small{color:var(--ca-muted);font-weight:500;line-height:1.35}.ca-health-tabs{display:flex;gap:8px;flex-wrap:wrap}.ca-health-tabs button{padding:9px 12px}.ca-health-tabs button.active{background:var(--ca-primary)!important;color:#fff!important;border-color:var(--ca-primary)!important}.ca-form-2{grid-template-columns:1fr 1fr}.ca-span-2{grid-column:1/-1}.ca-check-label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;justify-content:flex-start;gap:9px!important}.ca-check-label input{width:auto!important}.ca-list-row{padding:14px 0;border-top:1px solid var(--ca-line)}.ca-list-row:first-child{border-top:0}.ca-list-row p{margin:.45rem 0}.ca-pill{display:inline-flex;margin-top:6px;padding:4px 8px;border-radius:999px;background:#e7f1ee;color:var(--ca-primary);font-size:.74rem;font-weight:800}.ca-module-head{display:flex;gap:15px;align-items:center;background:linear-gradient(135deg,#edf5f3,#fff);border:1px solid var(--ca-line);border-radius:20px;padding:18px;margin-bottom:18px}.ca-module-head>span{font-size:2.6rem}.ca-module-head h2{margin:0 0 4px}.ca-module-head p{margin:0;color:var(--ca-muted);line-height:1.45}.ca-thyroid-head{background:linear-gradient(135deg,#f1eff8,#fff)}.ca-subsection{display:grid;gap:3px;border-top:1px solid var(--ca-line);padding-top:14px;margin-top:4px}.ca-subsection small{color:var(--ca-muted)}.ca-labline{margin-top:7px;padding:8px 10px;border-radius:10px;background:#f4f7f6;font-size:.86rem;font-weight:700}.ca-stats-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:800px){.ca-quick-grid,.ca-module-grid{grid-template-columns:1fr 1fr}.ca-stats-4{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.ca-form-2{grid-template-columns:1fr}.ca-span-2{grid-column:auto}.ca-nav{overflow-x:auto;grid-template-columns:repeat(7,minmax(76px,1fr))}.ca-nav button{font-size:.66rem;padding:9px 2px}.ca-module-head{align-items:flex-start}.ca-quick-grid,.ca-module-grid{grid-template-columns:1fr 1fr}.ca-quick-grid button,.ca-module-grid button{min-height:104px;padding:12px}.ca-stats-4{grid-template-columns:1fr 1fr}}
.ca-analysis-controls{display:flex;align-items:center;justify-content:space-between;gap:18px}.ca-analysis-controls h2{margin-bottom:5px}.ca-analysis-controls select{width:auto;min-width:145px}.ca-analysis-card{border:1px solid var(--ca-line);background:#f9fbfa;border-radius:16px;padding:15px;margin-top:12px}.ca-analysis-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.ca-analysis-top>span{font-size:.72rem;font-weight:800;color:var(--ca-primary);background:#e7f1ee;border-radius:999px;padding:5px 8px;white-space:nowrap}.ca-analysis-card p{line-height:1.5;margin:.7rem 0}.ca-analysis-card small{color:var(--ca-muted)}.ca-analysis-disclaimer{border-top:1px dashed #c9d7d3;margin-top:11px;padding-top:9px;color:var(--ca-muted);font-size:.78rem;line-height:1.4}.ca-analysis-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.ca-mini-analysis{display:grid;gap:5px;border:1px solid var(--ca-line);border-radius:14px;padding:13px;background:#fbfdfc}.ca-mini-analysis span{font-size:.9rem}.ca-mini-analysis small{color:var(--ca-muted);line-height:1.4}.ca-warning-inline{margin-top:14px}.ca-analysis-controls+.ca-stats{margin-top:0}
@media(max-width:680px){.ca-analysis-controls{display:grid}.ca-analysis-controls select{width:100%}.ca-analysis-top{display:grid}.ca-analysis-top>span{justify-self:start}.ca-analysis-grid{grid-template-columns:1fr}}

.ca-top-actions{display:flex;align-items:center;gap:10px}.ca-profile-switch{display:flex;align-items:center;gap:7px;font-size:.75rem;color:var(--ca-muted);font-weight:800}.ca-profile-switch select{width:auto;min-width:120px;padding:8px 10px;background:#fff}.ca-profile-list{display:grid;gap:10px}.ca-profile-row{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid var(--ca-line);border-radius:14px;padding:13px}.ca-profile-row.active{background:#edf5f3;border-color:#b7d1ca}.ca-profile-row .ca-button-row{margin-top:0}.ca-nutrition-calc{background:#f4f7f6;border:1px dashed #b8c9c5;border-radius:12px;padding:11px;color:var(--ca-muted);font-size:.84rem;line-height:1.45}
@media(max-width:680px){.ca-topbar{align-items:flex-start}.ca-top-actions{display:grid;justify-items:end}.ca-profile-switch span{display:none}.ca-profile-switch select{min-width:110px;max-width:145px}.ca-profile-row{display:grid}.ca-profile-row .ca-button-row{justify-content:flex-start}}

.ca-vault-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:13px;align-items:start;padding:14px 0;border-top:1px solid var(--ca-line)}.ca-vault-row:first-child{border-top:0}.ca-vault-icon{width:44px;height:44px;border-radius:12px;background:#edf5f3;display:grid;place-items:center;font-size:1.4rem}.ca-vault-row small{display:block;color:var(--ca-muted);margin-top:5px;word-break:break-word}.ca-vault-row p{margin:.45rem 0 0}.ca-vault-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.ca-vault-actions button{padding:8px 10px}.ca-report-note{background:#f7faf9;border-left:4px solid var(--ca-primary);padding:12px;border-radius:10px}
@media(max-width:760px){.ca-vault-row{grid-template-columns:42px 1fr}.ca-vault-actions{grid-column:1/-1;justify-content:flex-start}}

/* 0.6.0 planning / reminders / medication stock */
.ca-nav{grid-template-columns:repeat(8,1fr)}
.ca-today-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ca-today-plan-grid>div{border:1px solid var(--ca-line);background:#f8fbfa;border-radius:14px;padding:13px}.ca-today-plan-grid span,.ca-today-plan-grid small{display:block;color:var(--ca-muted)}.ca-today-plan-grid strong{display:block;margin:5px 0;font-size:1.05rem}.ca-today-plan-grid .is-low{background:#fff5df;border-color:#edd29b}
.ca-planning-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:14px 0;border-top:1px solid var(--ca-line)}.ca-planning-row:first-child{border-top:0}.ca-planning-row p{margin:.45rem 0}.ca-planning-row.is-due{background:#fff7e8;border:1px solid #edd29b;border-radius:13px;padding:13px;margin:8px 0}.ca-planning-row.is-low{background:#fff3f1;border:1px solid #f0c6c0;border-radius:13px;padding:13px;margin:8px 0}.ca-planning-row.is-done{opacity:.62}.ca-day-picks{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}.ca-day-picks label{display:flex;align-items:center;gap:4px;border:1px solid var(--ca-line);border-radius:999px;padding:6px 9px;background:#f8faf9;font-size:.82rem}.ca-day-picks input{width:auto!important}.ca-rem-days[hidden],.ca-rem-time[hidden],.ca-rem-once[hidden]{display:none!important}
@media(max-width:760px){.ca-planning-row{grid-template-columns:1fr}.ca-planning-row .ca-vault-actions{justify-content:flex-start}.ca-today-plan-grid{grid-template-columns:1fr}}
@media(max-width:680px){.ca-nav{grid-template-columns:repeat(8,minmax(76px,1fr))}}

/* 0.7.0 everyday context / body map */
.ca-daily-tabs{margin:0}.ca-body-map{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.ca-body-map button{min-height:48px;text-align:center;background:#f8fbfa}.ca-body-map button.active{background:var(--ca-primary)!important;color:#fff!important;border-color:var(--ca-primary)!important;box-shadow:0 0 0 2px rgba(23,79,71,.12)}
@media(max-width:760px){.ca-body-map{grid-template-columns:repeat(2,1fr)}}

/* 0.8.0 safety, allergies, environment and action plans */
.ca-safety-tabs{margin:0}.ca-pill-alert{background:#fff0ed!important;color:#a12a1f!important}.ca-plan-zone{border-radius:14px;padding:12px;border:1px solid var(--ca-line)}.ca-plan-zone textarea{background:#fff!important}.ca-zone-green{background:#eef8f3;border-color:#badacb}.ca-zone-yellow{background:#fff8e8;border-color:#ebd39a}.ca-zone-red{background:#fff1ef;border-color:#efc4bd}.ca-action-plan-summary{border:1px solid var(--ca-line);border-radius:16px;padding:15px;margin-top:10px;background:#fbfdfc}.ca-action-plan-summary p{white-space:pre-wrap}.ca-emergency-plans{margin-top:16px;display:grid;gap:10px}.ca-action-plan-emergency{border:2px solid #b42318;background:#fff6f5;border-radius:14px;padding:14px}.ca-action-plan-emergency p{white-space:pre-wrap;margin:.55rem 0}.ca-action-plan-emergency strong{font-size:1.05rem}.ca-safety-tabs button.active{background:var(--ca-primary)!important;color:#fff!important;border-color:var(--ca-primary)!important}

/* 0.9.0 food library, recipes and encrypted device handoff */
.ca-nutrition-tabs{margin:0}.ca-chip-row{display:flex;gap:8px;flex-wrap:wrap}.ca-chip-row button{padding:8px 11px;border-radius:999px;background:#f7faf9}.ca-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ca-check-grid .ca-check-label{border:1px solid var(--ca-line);border-radius:12px;padding:11px;background:#f8fbfa;align-items:flex-start!important}.ca-scan-modal video{width:100%;max-height:52vh;background:#101716;border-radius:14px;margin:10px 0;object-fit:cover}.ca-scan-modal p{color:var(--ca-muted)}.ca-card hr{border:0;border-top:1px solid var(--ca-line);margin:22px 0}.ca-nutrition-tabs button.active{background:var(--ca-primary)!important;color:#fff!important;border-color:var(--ca-primary)!important}
@media(max-width:680px){.ca-check-grid{grid-template-columns:1fr}.ca-chip-row{display:grid;grid-template-columns:1fr 1fr}.ca-chip-row button{text-align:left}}

/* 0.10.0 end-to-end live family/caregiver sync */
.ca-sync-readonly{display:grid;gap:4px;border:1px solid #b9d3cc;background:#eef7f4;border-radius:14px;padding:13px 15px;margin-bottom:14px}.ca-sync-readonly strong{color:var(--ca-primary)}.ca-sync-readonly span{color:var(--ca-muted);line-height:1.45;font-size:.88rem}.ca-sync-channel{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.8fr) auto;gap:14px;align-items:start;border:1px solid var(--ca-line);border-radius:16px;padding:14px;margin-top:12px;background:#fbfdfc}.ca-sync-channel.is-revoked{opacity:.7;background:#fff7f5}.ca-sync-channel small{display:block;color:var(--ca-muted);margin-top:4px}.ca-sync-scope-edit{display:grid;grid-template-columns:1fr 1fr;gap:7px}.ca-sync-scope-edit label{display:flex;align-items:center;gap:6px;font-size:.8rem;background:#f4f7f6;border-radius:9px;padding:7px}.ca-sync-scope-edit input{width:auto!important}.ca-sync-error{color:#9d251c!important;font-size:.82rem;font-weight:700}.ca-sync-channel .ca-vault-actions{align-self:center}
@media(max-width:980px){.ca-sync-channel{grid-template-columns:1fr 1fr}.ca-sync-channel .ca-vault-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:680px){.ca-sync-channel{grid-template-columns:1fr}.ca-sync-scope-edit{grid-template-columns:1fr 1fr}.ca-sync-channel .ca-vault-actions{grid-column:auto}}

/* 0.11.0 pairing QR, caregiver alerts, emergency share and E2E document relay */
.ca-pair-modal{text-align:center}.ca-pair-modal p{text-align:left}.ca-pair-qr{width:min(280px,100%);height:auto;margin:14px auto;border:1px solid var(--ca-line);border-radius:14px;background:#fff;padding:8px}.ca-pair-code{width:100%;min-height:74px;border:1px solid #c9d7d3;border-radius:12px;padding:11px;font:600 .78rem/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;background:#f8fbfa;color:var(--ca-text);word-break:break-all}.ca-scan-video{width:100%;max-height:58vh;object-fit:cover;background:#0c1715;border-radius:14px;margin:10px 0}.ca-care-alerts{border-left:4px solid #3d6eaa}.ca-care-alert{border-top:1px solid var(--ca-line);padding:12px 0}.ca-care-alert:first-of-type{border-top:0}.ca-care-alert p{margin:.45rem 0 0;white-space:pre-wrap}.ca-vault-list{margin-top:16px}.ca-vault-list h3{margin-bottom:0}.ca-emergency-share-url{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.ca-sync-channel .ca-vault-actions button{white-space:nowrap}
@media(max-width:680px){.ca-pair-modal .ca-button-row{display:grid}.ca-pair-modal .ca-button-row button{width:100%}.ca-pair-code{font-size:.72rem}.ca-sync-channel .ca-vault-actions button{white-space:normal}}

/* 0.12.0 · worsening/check-in + Web Push */
.ca-worsening-start{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #e7b27a;background:linear-gradient(135deg,#fff8ef,#fff)}
.ca-worsening-start h2{margin:0 0 6px}.ca-worsening-start p{margin:0;color:var(--ca-muted,#5d6866)}
.ca-worse-big{min-height:58px;padding:14px 20px;border-radius:16px;border:0;background:#b85d12;color:#fff;font-size:1rem;font-weight:800;box-shadow:0 8px 24px #8f430f2b}
.ca-worse-big:disabled{opacity:.5;box-shadow:none}
.ca-worsening-active{border:2px solid #c46a1b;background:#fff8ef}
.ca-worsening-active .ca-section-head span{font-weight:800;color:#9d4708}
.ca-worse-modal fieldset{border:1px solid #d9dfdd;border-radius:14px;padding:12px}.ca-worse-modal legend{font-weight:750;padding:0 6px}
@media(max-width:700px){.ca-worsening-start{align-items:stretch;flex-direction:column}.ca-worse-big{width:100%}}


/* 0.13.0 · personal dashboard, status rules, adherence and health timeline */
.ca-dashboard-summary{background:linear-gradient(135deg,#f8fcfb,#fff)}
.ca-summary-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.ca-summary-grid>div{border:1px solid var(--ca-line);border-radius:14px;padding:12px;background:#fff}.ca-summary-grid span,.ca-summary-grid small{display:block;color:var(--ca-muted)}.ca-summary-grid strong{display:block;font-size:1.45rem;margin:5px 0}
.ca-status-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.ca-status-card{display:grid;grid-template-columns:34px 1fr;gap:10px;border:1px solid var(--ca-line);border-radius:14px;padding:13px;background:#fbfdfc}.ca-status-card.level-green{border-color:#b7d7c9;background:#f0f8f4}.ca-status-card.level-yellow{border-color:#ead49e;background:#fff9e9}.ca-status-card.level-red{border-color:#e5bbb5;background:#fff3f1}.ca-status-dot{font-size:1.35rem}.ca-status-card small{display:block;margin-top:4px;color:var(--ca-muted)}
.ca-condition-dashboard{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.ca-condition-dashboard button{display:grid;grid-template-columns:42px 1fr;gap:10px;text-align:left;align-items:center;background:#fbfdfc}.ca-condition-dashboard button>span{font-size:1.7rem}.ca-condition-dashboard small{display:block;color:var(--ca-muted);margin-top:4px;font-weight:500}
.ca-adherence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ca-adherence-card{display:grid;gap:5px;border:1px solid var(--ca-line);border-radius:14px;padding:13px;background:#fbfdfc}.ca-adherence-card span{font-size:1.25rem;font-weight:850;color:var(--ca-primary)}.ca-adherence-card small{color:var(--ca-muted);line-height:1.4}
.ca-timeline{display:grid}.ca-timeline article{position:relative;display:grid;grid-template-columns:42px 1fr;gap:11px;padding:13px 0;border-top:1px solid var(--ca-line)}.ca-timeline article:first-child{border-top:0}.ca-timeline-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#edf5f3;font-size:1.05rem}.ca-timeline p{margin:.4rem 0 0;line-height:1.4}.ca-rem-medication[hidden]{display:none!important}
@media(max-width:980px){.ca-summary-grid{grid-template-columns:repeat(3,1fr)}.ca-adherence-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.ca-summary-grid{grid-template-columns:1fr 1fr}.ca-status-grid,.ca-condition-dashboard,.ca-adherence-grid{grid-template-columns:1fr}.ca-summary-grid strong{font-size:1.25rem}}


/* 0.14.0 · configurable dashboard + week/month/year period reports */
.ca-dashboard-widget-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ca-dash-widget{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;border:1px solid var(--ca-line);border-radius:14px;padding:12px;background:#fff}.ca-dash-widget-icon{font-size:1.45rem}.ca-dash-widget small,.ca-dash-widget span{display:block;color:var(--ca-muted)}.ca-dash-widget strong{display:block;font-size:1.35rem;margin:3px 0;overflow-wrap:anywhere}.ca-dash-widget strong em{font-style:normal;font-size:.75rem;color:var(--ca-muted)}.ca-dashboard-widget-grid.is-compact .ca-dash-widget{padding:8px}.ca-dashboard-widget-grid.is-compact .ca-dash-widget strong{font-size:1.15rem}
.ca-dashboard-editor{max-width:720px}.ca-dashboard-edit-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--ca-line);padding:9px 0}.ca-dashboard-edit-row:first-child{border-top:0}.ca-dashboard-edit-row label{display:flex;align-items:center;gap:8px;flex:1}.ca-dashboard-edit-row label small{display:block;color:var(--ca-muted)}.ca-dashboard-edit-row input[type=checkbox]{width:auto!important}.ca-dashboard-edit-row>div{display:flex;gap:5px}.ca-dashboard-edit-row>div button{min-width:42px}.ca-dashboard-custom-row label{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:4px 8px}.ca-dashboard-custom-row label input{width:auto!important;margin-top:2px}.ca-dashboard-custom-row label small{grid-column:2}
.ca-history-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ca-period-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.ca-period-stat{border:1px solid var(--ca-line);border-radius:14px;padding:12px;background:#fbfdfc}.ca-period-stat span,.ca-period-stat small{display:block;color:var(--ca-muted)}.ca-period-stat strong{display:block;font-size:1.3rem;margin:5px 0}.ca-period-bin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.ca-period-bin-grid article{border:1px solid var(--ca-line);border-radius:12px;padding:10px;background:#fbfdfc}.ca-period-bin-grid span,.ca-period-bin-grid small{display:block;margin-top:3px;color:var(--ca-muted)}
@media(max-width:980px){.ca-dashboard-widget-grid,.ca-period-stats,.ca-period-bin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.ca-dashboard-widget-grid,.ca-period-stats,.ca-period-bin-grid{grid-template-columns:1fr}.ca-history-actions{align-items:stretch}.ca-history-actions>*{width:100%}}


/* 0.15.5 · OPEN INVESTIGATOR */
.ca-nav{grid-template-columns:repeat(8,1fr)}
.ca-investigator-hero{background:linear-gradient(135deg,#edf3ff,#f8fbfa)}
.ca-investigator-systems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ca-investigator-system{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:start;border:1px solid var(--ca-line);border-radius:14px;padding:13px;background:#fbfdfc}.ca-investigator-system>span{font-size:1.55rem}.ca-investigator-system small{display:block;color:var(--ca-muted);margin:3px 0}.ca-investigator-system p{margin:6px 0 0;color:var(--ca-muted);font-size:.84rem}.ca-investigator-system>b{font-size:1.2rem;color:var(--ca-primary)}.ca-investigator-system.additional{border-color:#b8ccef;background:#f5f8ff}
.ca-investigator-candidate{border:1px solid var(--ca-line);border-radius:16px;padding:15px;margin-top:12px;background:#fbfdfc}.ca-investigator-candidate-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.ca-investigator-candidate-head small{display:block;color:var(--ca-muted);margin-top:4px}.ca-investigator-candidate-head>span{background:#eaf1ff;color:#2f558a;border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:800;white-space:nowrap}.ca-investigator-candidate details{margin:10px 0}.ca-investigator-candidate summary{cursor:pointer;font-weight:750;color:#7b3b34}.ca-investigator-chip{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:.76rem;font-weight:750}.ca-investigator-chip.support{background:#e8f5ef;color:#17654f}.ca-investigator-chip.counter{background:#fff0ee;color:#9a2c23}.ca-investigator-questions{display:grid;gap:6px;margin-top:10px}.ca-investigator-questions button{text-align:left;background:#f4f7fb;border-color:#d6e0ef;font-weight:650}
.ca-investigator-missing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ca-investigator-missing article{display:grid;gap:4px;border:1px solid var(--ca-line);border-radius:12px;padding:11px;background:#fbfdfc}.ca-investigator-missing small,.ca-investigator-missing span{color:var(--ca-muted)}.ca-investigator-manual{margin-top:16px}
@media(max-width:800px){.ca-investigator-systems,.ca-investigator-missing{grid-template-columns:1fr}.ca-investigator-candidate-head{display:grid}.ca-investigator-candidate-head>span{justify-self:start}}
@media(max-width:680px){.ca-nav{grid-template-columns:repeat(8,minmax(76px,1fr))}}

/* 0.15.3 · HPO / Orphadata disease matching + differential next observation */
.ca-disease-candidate{background:#fcfcff;border-color:#d9deef}.ca-disease-candidate .ca-investigator-candidate-head>span{background:#f0ecff;color:#5b4589}.ca-disease-more{margin-top:14px}.ca-disease-more>summary{cursor:pointer;font-weight:800;color:var(--ca-primary);padding:10px 0}.ca-pheno-suggestions{display:grid;gap:5px;margin-top:6px;max-height:260px;overflow:auto}.ca-pheno-suggestions button{display:grid;text-align:left;gap:2px;background:#fff;border:1px solid var(--ca-line);border-radius:10px;padding:9px 10px}.ca-pheno-suggestions button:hover{background:#f3f7f6}.ca-pheno-suggestions small{color:var(--ca-muted)}


/* 0.15.3 · differential next-observation engine */
.ca-differential-next,.ca-differential-pair{border:1px solid #d7e2df;border-radius:16px;padding:14px;margin-top:11px;background:#fbfefd}.ca-differential-next .ca-section-head{align-items:flex-start}.ca-differential-next small,.ca-differential-pair small{display:block;color:var(--ca-muted);margin-top:3px}.ca-differential-next ul{margin:9px 0 10px;padding-left:20px}.ca-source-flag{background:#fff4da;border:1px solid #ead19a;color:#70500d;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:800}.ca-differential-pair{background:#fcfbff;border-color:#ddd8ee}.ca-differential-pair .ca-table-wrap{overflow:auto;margin-top:10px}.ca-differential-pair table{width:100%;border-collapse:collapse;font-size:.84rem}.ca-differential-pair th,.ca-differential-pair td{text-align:left;vertical-align:top;border-bottom:1px solid var(--ca-line);padding:8px}.ca-differential-pair td small{font-size:.72rem}.ca-differential-pair details{margin-top:10px}.ca-differential-pair summary{cursor:pointer;font-weight:750}
@media(max-width:700px){.ca-differential-next .ca-section-head{display:grid}.ca-source-flag{justify-self:start}.ca-differential-pair table{min-width:650px}}

/* 0.15.3 · temporal context + HPO hierarchy */
.ca-age-context{margin:10px 0;padding:10px 12px;border:1px solid var(--ca-line);border-radius:12px;background:#f8fbfa;color:#334945}.ca-age-context.compatible{background:#eef8f2;border-color:#c7e2d2}.ca-age-context.outside_typical{background:#fff7e8;border-color:#ead29d}.ca-age-context.unknown{background:#f6f7f8;border-color:#dfe4e6}.ca-age-context small{display:block;margin-top:4px;color:var(--ca-muted)}


/* 0.15.4 · recurrent episode signatures */
.ca-episode-signatures{display:grid;gap:11px}.ca-episode-signature{border:1px solid #cbded9;border-radius:16px;padding:14px;background:linear-gradient(135deg,#f8fcfb,#fbfbff)}.ca-episode-signature p{margin:8px 0;color:#334945}.ca-episode-signature details{margin-top:9px}.ca-episode-signature summary{cursor:pointer;font-weight:780;color:var(--ca-primary)}.ca-episode-signature ul{margin:8px 0;padding-left:20px}.ca-episode-recent{margin-top:15px;border-top:1px solid var(--ca-line);padding-top:12px}.ca-episode-recent>summary{cursor:pointer;font-weight:800;color:var(--ca-primary)}.ca-episode-row{display:grid;gap:7px;padding:11px 0;border-top:1px solid var(--ca-line)}.ca-episode-row:first-child{border-top:0}.ca-episode-row>div{display:flex;gap:5px;flex-wrap:wrap}.ca-episode-row small{color:var(--ca-muted)}


/* 0.15.5 · episode fingerprints */
.ca-episode-fingerprints{display:grid;gap:12px}.ca-episode-fingerprint{border:1px solid #cfd8eb;border-radius:17px;padding:15px;background:linear-gradient(135deg,#fbfcff,#f7fbfa)}.ca-episode-fingerprint p{margin:8px 0;color:#334945}.ca-episode-fingerprint details{margin-top:9px;border-top:1px solid var(--ca-line);padding-top:8px}.ca-episode-fingerprint summary{cursor:pointer;font-weight:800;color:#405b86}.ca-episode-fingerprint ul{margin:8px 0;padding-left:20px}.ca-episode-fingerprint .ca-chip-row{margin-top:10px}

/* 0.15.6 · personal baseline / anomaly detection */
.ca-personal-anomalies{display:grid;gap:12px;margin:10px 0 18px}.ca-personal-anomaly,.ca-measurement-anomaly{border:1px solid #d8dfdf;border-radius:17px;padding:15px;background:linear-gradient(135deg,#fbfefd,#fbfcff)}.ca-personal-anomaly.level-strong{border-color:#e3b8ad;background:linear-gradient(135deg,#fff9f6,#fbfcff)}.ca-personal-anomaly.level-notable{border-color:#dfcf9f;background:linear-gradient(135deg,#fffdf5,#fbfcff)}.ca-personal-anomaly details{margin-top:9px;border-top:1px solid var(--ca-line);padding-top:8px}.ca-personal-anomaly summary{cursor:pointer;font-weight:800;color:#6d5540}.ca-personal-anomaly ul{margin:8px 0;padding-left:20px}.ca-measurement-anomaly p{margin:8px 0;color:#334945}.ca-personal-anomaly .ca-investigator-candidate-head>span,.ca-measurement-anomaly .ca-investigator-candidate-head>span{background:#f1f3f6;color:#41525f}

/* 0.15.7 · personal change-point & phase detection */
.ca-phase-changes{display:grid;gap:12px;margin:10px 0 16px}.ca-phase-change{border:1px solid #c8d8d4;border-radius:17px;padding:15px;background:linear-gradient(135deg,#f7fcfa,#fbfcff)}.ca-phase-change>ul{margin:10px 0;padding-left:20px}.ca-phase-change details{margin-top:10px;border-top:1px solid var(--ca-line);padding-top:9px}.ca-phase-change summary{cursor:pointer;font-weight:800;color:#355f57}.ca-phase-compare{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.ca-phase-compare>div{border:1px solid var(--ca-line);border-radius:13px;padding:10px;background:#fff}.ca-phase-compare span,.ca-phase-compare small{display:block;color:var(--ca-muted)}.ca-phase-compare strong{display:block;margin:4px 0;font-size:1.08rem}.ca-phase-overview{margin-top:14px}.ca-phase-overview>summary{cursor:pointer;font-weight:800;color:var(--ca-primary)}.ca-phase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px}.ca-phase-summary{display:grid;gap:5px;border:1px solid var(--ca-line);border-radius:13px;padding:11px;background:#fbfdfc}.ca-phase-summary>span,.ca-phase-summary>small{color:var(--ca-muted)}.ca-phase-summary p,.ca-phase-summary div{margin:3px 0 0;font-size:.82rem;color:#40534f}
@media(max-width:850px){.ca-phase-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.ca-phase-grid,.ca-phase-compare{grid-template-columns:1fr}}


/* 0.15.8 · Cause Timeline & Before/After Explorer */
.ca-cause-explorers{display:grid;gap:14px}.ca-cause-explorer{border:1px solid #cbdad7;border-radius:18px;padding:15px;background:linear-gradient(135deg,#f8fcfb,#fbfbff)}.ca-cause-explorer details{margin-top:12px;border-top:1px solid var(--ca-line);padding-top:9px}.ca-cause-explorer summary{cursor:pointer;font-weight:800;color:#355f57}.ca-cause-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}.ca-cause-metric{border:1px solid var(--ca-line);border-radius:13px;padding:10px;background:#fff}.ca-cause-metric.notable{border-color:#c3d5ec;background:#f8fbff}.ca-cause-metric>div{display:grid;grid-template-columns:1fr auto 1fr;gap:7px;align-items:center;margin:6px 0}.ca-cause-metric>div span:last-child{text-align:right}.ca-cause-metric small{color:var(--ca-muted)}.ca-cause-timeline{list-style:none;padding:0;margin:10px 0;display:grid;gap:7px}.ca-cause-timeline li{display:grid;grid-template-columns:72px 130px 1fr;gap:8px;align-items:start;border-left:3px solid #d6e3e0;padding:6px 8px}.ca-cause-timeline time{font-weight:800;color:#4b6962}.ca-cause-timeline span{color:#41534f}@media(max-width:700px){.ca-cause-metrics{grid-template-columns:1fr}.ca-cause-timeline li{grid-template-columns:68px 1fr}.ca-cause-timeline li span{grid-column:2}}

/* 0.15.9 · Delayed Effects & Time-Lag Explorer */
.ca-lag-signals{display:grid;gap:12px}.ca-lag-signal{border:1px solid var(--ca-border,#d8e5e2);border-radius:16px;padding:14px;background:rgba(255,255,255,.72)}.ca-lag-signal .ca-phase-compare{margin-top:10px}


/* 0.15.10 · Competing Contexts & Confounder Explorer */
.ca-confounder-signals,.ca-confounder-list{display:grid;gap:14px}.ca-confounder-signal{border:1px solid var(--ca-border,#d8e5e2);border-radius:18px;padding:14px;background:rgba(255,255,255,.62)}.ca-confounder-row{border:1px solid rgba(91,126,117,.24);border-radius:14px;padding:12px;background:rgba(247,251,250,.86)}.ca-confounder-row .ca-phase-compare{margin:10px 0}.ca-confounder-row .ca-phase-compare>div{min-width:0}


/* 0.15.11 · Interaction Explorer */
.ca-interaction-signals{display:grid;gap:14px}.ca-interaction-signal{border:1px solid #c8d8ea;border-radius:18px;padding:14px;background:linear-gradient(135deg,#fbfcff,#f8fcfb)}.ca-interaction-signal .ca-investigator-candidate-head>span{background:#e9f0ff;color:#315887;max-width:260px;white-space:normal;text-align:center}.ca-interaction-signal .ca-phase-compare{grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0}.ca-interaction-signal p{margin:8px 0;color:#334945}@media(max-width:820px){.ca-interaction-signal .ca-phase-compare{grid-template-columns:1fr}}


/* 0.15.12 · Threshold & Dose-Response Explorer */
.ca-threshold-signals{display:grid;gap:14px}.ca-threshold-signal{border:1px solid #c9d8cd;border-radius:18px;padding:14px;background:linear-gradient(135deg,#fbfdf8,#f8fcfb)}.ca-threshold-signal .ca-investigator-candidate-head>span{background:#eef5e8;color:#48632e;max-width:250px;white-space:normal;text-align:center}.ca-threshold-signal p{margin:8px 0;color:#334945}.ca-threshold-bins{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0}.ca-threshold-bins>div{border:1px solid var(--ca-line);border-radius:13px;padding:10px;background:#fff;min-width:0}.ca-threshold-bins span,.ca-threshold-bins small{display:block;color:var(--ca-muted)}.ca-threshold-bins strong{display:block;margin:4px 0;font-size:1.04rem}@media(max-width:820px){.ca-threshold-bins{grid-template-columns:1fr}}

/* 0.15.13 · Biopsychosozialer Reflexionslayer */
.ca-bps-layer{background:linear-gradient(135deg,#fbfefd,#fbfcff)}.ca-bps-evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.ca-bps-evidence-grid article{border:1px solid var(--ca-line);border-radius:14px;padding:12px;background:#fff;display:grid;gap:6px}.ca-bps-level{display:inline-flex;width:max-content;max-width:100%;padding:5px 9px;border-radius:999px;font-size:.74rem;font-weight:800;white-space:normal}.ca-bps-level.level-scientific{background:#e8f5ef;color:#17654f}.ca-bps-level.level-complementary{background:#fff3df;color:#8a5a1e}.ca-bps-level.level-personal{background:#edf2ff;color:#385c91}.ca-bps-direction-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 14px}.ca-bps-direction-grid>div{border:1px solid var(--ca-line);border-radius:12px;padding:10px;background:#fff}.ca-bps-direction-grid span{display:block;color:var(--ca-muted);font-size:.8rem}.ca-bps-direction-grid strong{display:block;font-size:1.15rem;margin-top:4px}.ca-bps-signal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:12px 0}.ca-bps-signal-grid>div{min-width:0}.ca-bps-signal{border:1px solid #cadbd6;border-radius:14px;padding:12px;background:#fff;margin-bottom:9px}.ca-bps-signal.reverse{border-color:#d5d8e8}.ca-bps-signal small{display:block;color:var(--ca-muted);margin:4px 0}.ca-bps-signal p{margin:7px 0}.ca-bps-prompts{border:1px dashed #cbd8d5;border-radius:14px;padding:12px;background:#fbfdfc}.ca-bps-prompts ul{margin:8px 0 4px;padding-left:20px}.ca-bps-entries{display:grid;gap:10px}.ca-bps-entry{border:1px solid var(--ca-line);border-radius:14px;padding:12px;background:#fff;display:grid;gap:6px}.ca-bps-entry small{color:var(--ca-muted)}.ca-bps-entry .ca-danger-outline{justify-self:start}@media(max-width:820px){.ca-bps-evidence-grid,.ca-bps-direction-grid,.ca-bps-signal-grid{grid-template-columns:1fr}}
