/* Life360 AI V18-K — external CSP-safe visual system.
   Deliberately served as a same-origin stylesheet: no inline style dependency. */
html,body,#root{margin:0;min-height:100%;width:100%;background:#f6f7f9}body{overflow-x:hidden}button,input,textarea,select{font:inherit}
*{box-sizing:border-box}.life18-shell{min-height:100vh;background:#f6f7f9;color:#172033;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.life18-shell button,.life18-shell textarea{font:inherit}.life18-topbar{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid #e5e8ee;background:rgba(255,255,255,.92);position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)}.life18-brand{border:0;background:none;display:flex;align-items:center;gap:10px;font-weight:800;color:#172033;cursor:pointer}.life18-brand small{font-weight:700;color:#7a8498}.life18-mark{width:32px;height:32px;border-radius:10px;background:#172033;color:white;display:grid;place-items:center}.life18-top-actions{display:flex;gap:8px}.life18-quiet,.life18-link{border:0;background:transparent;color:#55627a;cursor:pointer;font-weight:700}.life18-quiet{padding:9px 12px;border-radius:10px}.life18-quiet:hover,.life18-link:hover{background:#eef1f5;color:#172033}.life18-nav{display:flex;gap:4px;max-width:1160px;margin:18px auto 0;padding:0 24px;overflow:auto}.life18-nav button{border:0;background:transparent;padding:10px 14px;border-radius:999px;cursor:pointer;color:#667085;font-weight:750;white-space:nowrap}.life18-nav button.active{background:#172033;color:#fff}.life18-page{max-width:1160px;margin:0 auto;padding:36px 24px 72px}.life18-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:28px}.life18-hero h1{font-size:clamp(30px,5vw,54px);line-height:1.02;letter-spacing:-.04em;margin:6px 0 10px;max-width:780px}.life18-hero p{margin:0;color:#667085;font-size:18px;max-width:720px;line-height:1.6}.life18-kicker{text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:900;color:#7b8497}.life18-refresh,.life18-secondary,.life18-primary{border-radius:12px;padding:10px 14px;border:1px solid #d9dee8;font-weight:800;cursor:pointer}.life18-refresh,.life18-secondary{background:white;color:#29354d}.life18-primary{background:#172033;color:#fff;border-color:#172033}.life18-primary:disabled,.life18-refresh:disabled{opacity:.55;cursor:not-allowed}.life18-capture{background:white;border:1px solid #e2e6ed;border-radius:24px;padding:22px;box-shadow:0 12px 40px rgba(23,32,51,.06);margin-bottom:34px}.life18-capture-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.life18-capture h2{margin:4px 0 12px;font-size:22px}.life18-capture textarea{width:100%;resize:vertical;border:1px solid #dfe4ec;border-radius:16px;padding:16px;outline:none;background:#fafbfc;color:#172033;line-height:1.55}.life18-capture textarea:focus{border-color:#8a96aa;box-shadow:0 0 0 3px rgba(138,150,170,.15)}.life18-capture-foot{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:12px}.life18-capture>small{display:block;margin-top:12px;color:#8a93a6;line-height:1.45}.life18-segment{display:flex;background:#f0f2f5;border-radius:12px;padding:3px}.life18-segment button{border:0;background:transparent;padding:8px 11px;border-radius:9px;color:#667085;font-weight:750;cursor:pointer}.life18-segment button.active{background:white;color:#172033;box-shadow:0 1px 5px rgba(23,32,51,.08)}.life18-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:28px 0 12px}.life18-section-head h2{margin:4px 0 0;font-size:24px}.life18-section-head>span{color:#8a93a6;font-weight:700;font-size:13px}.life18-context-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.life18-context-card,.life18-empty,.life18-panel{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px}.life18-context-card h3{font-size:19px;margin:7px 0 8px}.life18-context-card p{color:#667085;min-height:42px;line-height:1.45}.life18-context-card button{margin-top:5px}.life18-empty{display:flex;flex-direction:column;gap:5px;color:#667085;grid-column:1/-1}.life18-empty strong{color:#29354d}.life18-subject-list{display:flex;flex-direction:column;gap:8px}.life18-subject-row{width:100%;border:1px solid #e2e6ed;background:white;border-radius:16px;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer}.life18-subject-row:hover{border-color:#b9c1cf;transform:translateY(-1px)}.life18-subject-row span{display:flex;flex-direction:column;gap:3px}.life18-subject-row small{color:#7d8799;font-weight:800;text-transform:uppercase;font-size:10px;letter-spacing:.07em}.life18-subject-row strong{font-size:16px}.life18-subject-row em{font-style:normal;color:#667085;font-size:13px}.life18-subject-row b{font-size:13px;color:#55627a}.life18-agent-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.life18-agent-card{border:1px solid #e2e6ed;background:white;border-radius:20px;padding:18px;text-align:left;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;min-height:250px}.life18-agent-card.selected{border-color:#172033;box-shadow:0 0 0 2px #172033}.life18-agent-icon{width:40px;height:40px;border-radius:12px;background:#edf0f4;display:grid;place-items:center;font-weight:900;margin-bottom:20px}.life18-agent-card small{color:#7d8799;font-weight:800}.life18-agent-card strong{font-size:18px;margin-top:3px}.life18-agent-card p{color:#667085;line-height:1.45;flex:1}.life18-agent-card b{font-size:12px}.life18-agent-workspace{margin-top:18px;background:white;border:1px solid #e2e6ed;border-radius:22px;padding:22px;display:grid;grid-template-columns:.8fr 1.2fr;gap:26px}.life18-agent-workspace h2{margin:5px 0 8px}.life18-agent-workspace p{color:#667085;line-height:1.5}.life18-agent-workspace>small{grid-column:1/-1;color:#8a93a6}.life18-agent-subjects{display:flex;flex-direction:column;gap:7px}.life18-agent-subjects h3{margin:0 0 5px}.life18-agent-subjects button{border:1px solid #e2e6ed;background:#fafbfc;border-radius:12px;padding:10px 12px;display:flex;justify-content:space-between;gap:10px;text-align:left;cursor:pointer}.life18-agent-subjects button span{display:flex;flex-direction:column}.life18-agent-subjects small{color:#7d8799}.life18-agent-subjects b{font-size:12px;color:#55627a}.life18-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.life18-stats article{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:19px;display:flex;flex-direction:column;gap:5px}.life18-stats small{color:#7d8799;font-weight:800}.life18-stats strong{font-size:24px}.life18-stats span{color:#667085}.life18-panel h2{margin:6px 0 8px}.life18-panel p{color:#667085;line-height:1.55}.life18-bridge-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.life18-active-subject{display:flex;align-items:center;gap:8px;background:#f3f5f8;border:1px solid #e0e4eb;border-radius:12px;padding:9px 11px;margin-bottom:10px}.life18-active-subject span{font-size:11px;font-weight:900;text-transform:uppercase;color:#7d8799}.life18-active-subject strong{flex:1}.life18-active-subject button{border:0;background:transparent;font-weight:800;color:#667085;cursor:pointer}.life18-day-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.life18-day-card{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px}.life18-day-card h3{margin:7px 0 8px;font-size:18px}.life18-day-card p{color:#667085;line-height:1.5;min-height:66px}.life18-agent-tools{grid-column:1/-1;display:flex;gap:12px;align-items:center;border-top:1px solid #edf0f4;padding-top:16px}.life18-agent-tools small{color:#8a93a6;line-height:1.45}.life18-bridge-backdrop{position:fixed;inset:0;background:rgba(18,25,39,.62);z-index:80;padding:24px;display:grid;place-items:center}.life18-bridge{width:min(1180px,100%);height:min(820px,92vh);background:white;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 90px rgba(0,0,0,.28)}.life18-bridge>header{padding:16px 18px;border-bottom:1px solid #e4e8ef;display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.life18-bridge>header h2{margin:4px 0 3px}.life18-bridge>header p{margin:0;color:#667085;font-size:13px}.life18-bridge-close{border:1px solid #d9dee8;background:white;border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}.life18-bridge-workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(280px,340px) 1fr;background:#f5f6f8}.life18-bridge-workspace.journal{grid-template-columns:1fr}.life18-bridge-context{min-width:0;background:#fff;border-right:1px solid #e4e8ef;padding:16px;overflow:auto;display:flex;flex-direction:column;gap:10px}.life18-bridge-context h3{margin:0;font-size:18px}.life18-bridge-context p{margin:0;color:#667085;line-height:1.45}.life18-bridge-context label{font-size:12px;font-weight:900;color:#55627a;display:flex;flex-direction:column;gap:7px}.life18-bridge-context textarea{width:100%;resize:vertical;border:1px solid #dfe4ec;background:#f7f8fa;border-radius:12px;padding:10px;line-height:1.4;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:#29354d}.life18-bridge-context small{color:#8a93a6;line-height:1.4}.life18-bridge-frame-wrap{background:#f5f6f8;min-height:0}.life18-bridge-frame{width:100%;height:100%;border:0;background:white}.life18-bridge>footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border-top:1px solid #e4e8ef}.life18-bridge>footer span{color:#7a8498;font-size:12px}.life18-alert{max-width:1112px;margin:14px auto 0;padding:12px 16px;border-radius:14px;display:flex;align-items:center;gap:10px}.life18-alert.error{background:#fff1f1;border:1px solid #ffd6d6}.life18-alert.success{background:#eefbf3;border:1px solid #d0f0dc}.life18-alert span{flex:1}.life18-alert button{border:0;background:transparent;font-weight:800;cursor:pointer}.life18-footer{max-width:1112px;margin:0 auto;padding:18px 24px 36px;color:#8a93a6;border-top:1px solid #e2e6ed;display:flex;justify-content:space-between;gap:15px;font-size:12px}.life18-orchestrator-backdrop{position:fixed;inset:0;background:rgba(18,25,39,.68);z-index:90;padding:24px;display:grid;place-items:center}.life18-orchestrator{width:min(980px,100%);max-height:92vh;overflow:auto;background:white;border-radius:22px;padding:22px;box-shadow:0 30px 90px rgba(0,0,0,.3)}.life18-orchestrator>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:1px solid #e4e8ef;padding-bottom:15px}.life18-orchestrator>header h2{margin:4px 0}.life18-orchestrator>header p{margin:0;color:#667085}.life18-orchestrator-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.life18-orchestrator-grid article{border:1px solid #e2e6ed;border-radius:16px;padding:15px;background:#fafbfc}.life18-orchestrator-grid h3{font-size:16px;margin:6px 0}.life18-orchestrator-grid p{font-size:13px;color:#667085;line-height:1.45}.life18-context-preview{display:flex;flex-direction:column;gap:8px;font-weight:800}.life18-context-preview textarea{width:100%;border:1px solid #dfe4ec;background:#f7f8fa;border-radius:14px;padding:14px;line-height:1.45;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:#29354d}.life18-orchestrator-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.life18-orchestrator>small{display:block;color:#8a93a6;line-height:1.45;margin-top:12px}.life18-rhythm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.life18-rhythm-card{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px;display:flex;flex-direction:column}.life18-rhythm-card.current{border-color:#8a96aa;box-shadow:0 0 0 2px rgba(138,150,170,.16)}.life18-rhythm-card h3{margin:7px 0 8px;font-size:18px}.life18-rhythm-card p{color:#667085;line-height:1.5;flex:1}.life18-summary-grid{display:grid;grid-template-columns:1.5fr repeat(3,minmax(0,.75fr));gap:12px}.life18-summary-grid>article{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:6px}.life18-summary-grid strong{font-size:22px}.life18-summary-grid small{color:#7d8799;font-weight:800}.life18-summary-grid span{color:#667085;font-size:13px}.life18-summary-main h3{font-size:20px;margin:5px 0}.life18-summary-main p{color:#667085;line-height:1.5;flex:1}.life18-protective{margin-top:12px;background:#f1f8f4;border:1px solid #dceee3;border-radius:16px;padding:14px 16px}.life18-protective>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.life18-protective>div span{background:white;border:1px solid #dce8e0;border-radius:999px;padding:7px 10px;color:#4b5f52;font-size:12px}.life18-week-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.life18-week-grid article{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:5px}.life18-week-grid small{color:#7d8799;font-weight:800}.life18-week-grid strong{font-size:24px}.life18-week-grid span{color:#667085;font-size:13px}.life18-review-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.life18-review-columns .life18-panel p{margin:8px 0}.life18-bridge-workspace.journal{grid-template-columns:minmax(280px,340px) 1fr}.life18-phase-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;background:#f0f2f5;border-radius:11px;padding:3px}.life18-phase-switch button{border:0;background:transparent;border-radius:8px;padding:7px 4px;font-size:11px;font-weight:800;color:#667085;cursor:pointer}.life18-phase-switch button.active{background:white;color:#172033;box-shadow:0 1px 4px rgba(23,32,51,.09)}.life18-proposal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.life18-proposal-card{background:#fff;border:1px solid #e2e6ed;border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:8px}.life18-proposal-card h3{margin:2px 0;font-size:17px}.life18-proposal-card p{color:#667085;line-height:1.45;margin:0;flex:1}.life18-proposal-card small{color:#7d8799;line-height:1.4}.life18-agent-memory{grid-column:1/-1;border-top:1px solid #edf0f4;padding-top:16px}.life18-agent-memory h3{margin:0 0 9px}.life18-memory-chip{border:1px solid #e2e6ed;background:#fafbfc;border-radius:12px;padding:10px 12px;margin:7px 0;display:flex;flex-direction:column;gap:4px}.life18-memory-chip strong{font-size:11px;text-transform:uppercase;color:#55627a}.life18-memory-chip span{color:#364158;line-height:1.4}.life18-memory-chip.hypothesis{background:#fff9ec;border-color:#f0dfb4}.life18-portrait-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.life18-portrait-stats article{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:5px}.life18-portrait-stats small{color:#7d8799;font-weight:800}.life18-portrait-stats strong{font-size:24px}.life18-portrait-stats span{color:#667085;font-size:13px}.life18-portrait-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.life18-portrait-card{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px}.life18-portrait-card.hypotheses{background:#fffaf0;border-color:#eadfbe}.life18-portrait-card>p{color:#667085;line-height:1.45}.life18-portrait-items{display:flex;flex-direction:column;gap:8px;margin-top:12px}.life18-portrait-items>div{border-top:1px solid #edf0f4;padding-top:9px;display:flex;flex-direction:column;gap:3px}.life18-portrait-items strong{font-size:14px}.life18-portrait-items span{color:#364158;line-height:1.4}.life18-portrait-items small{color:#8791a2;line-height:1.35}.life18-transparency{margin-bottom:16px}.life18-experiment-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.life18-experiment-mini,.life18-experiment-card,.life18-experiment-builder,.life18-experiment-review{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px}.life18-experiment-mini h3,.life18-experiment-card h3,.life18-experiment-builder h3,.life18-experiment-review h3{margin:6px 0 8px}.life18-experiment-mini p,.life18-experiment-card p,.life18-experiment-builder p,.life18-experiment-review p{color:#667085;line-height:1.45}.life18-experiment-mini small,.life18-experiment-card small{display:block;color:#7d8799;margin:4px 0}.life18-experiment-mini button{margin-top:12px}.life18-experiment-builder{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;margin-bottom:14px}.life18-experiment-fields{display:flex;flex-direction:column;gap:10px}.life18-experiment-fields label,.life18-session-capture label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:850;color:#55627a}.life18-experiment-fields input,.life18-experiment-fields textarea,.life18-experiment-review textarea,.life18-session-capture input,.life18-session-capture textarea{width:100%;border:1px solid #dfe4ec;border-radius:12px;padding:10px 12px;background:#fafbfc;color:#172033;line-height:1.45}.life18-duration{display:flex;align-items:center;gap:7px}.life18-duration>span{font-size:12px;font-weight:850;color:#55627a;margin-right:4px}.life18-duration button{border:1px solid #dfe4ec;background:white;border-radius:999px;padding:7px 10px;font-weight:800;cursor:pointer}.life18-duration button.active{background:#172033;color:#fff;border-color:#172033}.life18-experiment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.life18-experiment-card{cursor:pointer;display:flex;flex-direction:column;gap:3px}.life18-experiment-card.selected{border-color:#172033;box-shadow:0 0 0 2px rgba(23,32,51,.12)}.life18-experiment-card strong{margin-top:6px;font-size:12px}.life18-experiment-review{margin-top:12px;display:flex;flex-direction:column;gap:10px}.life18-experiment-review-actions{display:flex;gap:8px;flex-wrap:wrap}.life18-experiment-review>small{color:#667085}.life18-domain-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.life18-domain-grid article,.life18-link-grid article{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:17px;display:flex;flex-direction:column;gap:6px}.life18-domain-grid h3{margin:2px 0}.life18-domain-grid p,.life18-link-grid p{color:#667085;line-height:1.4;margin:0}.life18-domain-grid article>div{display:flex;flex-wrap:wrap;gap:6px}.life18-domain-grid article>div small{background:#f2f4f7;border-radius:999px;padding:5px 7px}.life18-domain-grid em{font-style:normal;color:#7d8799;font-size:12px;min-height:34px}.life18-domain-grid button{margin-top:auto;text-align:left;padding-left:0}.life18-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.life18-link-grid article>span{font-size:12px;font-weight:800;color:#7d8799}.life18-link-grid article>small{color:#667085}.life18-trajectory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.life18-trajectory-grid article{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:17px;display:flex;flex-direction:column;gap:4px}.life18-trajectory-grid article>small{color:#7d8799;font-weight:800}.life18-trajectory-grid article>strong{font-size:26px}.life18-trajectory-grid article>span,.life18-trajectory-grid article>div{color:#667085;font-size:12px}.life18-session-capture{border-top:1px solid #e4e8ef;margin-top:8px;padding-top:12px;display:flex;flex-direction:column;gap:8px}.life18-session-capture h3{margin:2px 0;font-size:16px}.life18-session-capture small{color:#8a93a6;line-height:1.4}.life18-session-capture button{align-self:flex-start}.life18-runtime-banner{margin:12px auto 0;max-width:1180px;background:#eef8f2;border:1px solid #d8eadf;border-radius:14px;padding:10px 14px;display:flex;justify-content:space-between;gap:12px;align-items:center;color:#3f5f4b}.life18-runtime-banner strong{font-size:12px}.life18-runtime-banner span{font-size:11px;color:#64766b}.life18-specialist-program{grid-column:1/-1;border-top:1px solid #edf0f4;padding-top:16px}.life18-program-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.life18-program-head h3{margin:5px 0}.life18-program-head>small{max-width:480px;color:#7d8799;line-height:1.45}.life18-program-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.life18-program-grid article{border:1px solid #e2e6ed;border-radius:14px;padding:13px;background:#fafbfc;display:flex;flex-direction:column;gap:5px}.life18-program-grid article.active{background:#f3f6fb;border-color:#9aa8bd;box-shadow:0 0 0 2px rgba(120,137,164,.10)}.life18-program-grid article.done{background:#f1f8f4;border-color:#dcebe1}.life18-program-grid article small{color:#8791a2;font-weight:800}.life18-program-grid article strong{font-size:14px}.life18-program-grid article span{font-size:12px;color:#667085;line-height:1.4}.life18-program-grid article em{font-style:normal;font-size:12px;color:#354056;line-height:1.4;margin-top:4px}.life18-program-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:12px}.life18-program-foot>div{display:flex;gap:6px;flex-wrap:wrap}.life18-program-foot>div span{font-size:11px;background:#f2f4f7;border-radius:999px;padding:6px 8px;color:#667085}@media(max-width:900px){.life18-bridge-workspace{grid-template-columns:1fr}.life18-bridge-context{border-right:0;border-bottom:1px solid #e4e8ef;max-height:42vh}.life18-context-grid,.life18-stats,.life18-day-grid,.life18-orchestrator-grid,.life18-rhythm-grid,.life18-summary-grid,.life18-week-grid,.life18-review-columns,.life18-proposal-grid,.life18-portrait-stats,.life18-portrait-grid,.life18-experiment-mini-grid,.life18-experiment-builder,.life18-experiment-grid,.life18-domain-grid,.life18-link-grid,.life18-trajectory-grid,.life18-program-grid{grid-template-columns:1fr}.life18-agent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.life18-agent-workspace{grid-template-columns:1fr}.life18-agent-workspace>small{grid-column:auto}}@media(max-width:620px){.life18-bridge-backdrop{padding:0}.life18-bridge{height:100vh;border-radius:0}.life18-bridge>header,.life18-bridge>footer{flex-direction:column}.life18-agent-tools{flex-direction:column;align-items:stretch}.life18-topbar{padding:0 14px}.life18-brand small,.life18-top-actions .life18-quiet:first-child{display:none}.life18-nav{padding:0 14px}.life18-page{padding:28px 14px 60px}.life18-hero{flex-direction:column}.life18-capture-head,.life18-capture-foot,.life18-section-head{align-items:stretch;flex-direction:column}.life18-segment{width:100%}.life18-segment button{flex:1}.life18-primary{width:100%}.life18-agent-grid{grid-template-columns:1fr}.life18-footer{flex-direction:column;padding-left:14px;padding-right:14px}}
.life18-shared-selector{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}.life18-shared-selector button{border:1px solid #dfe4ec;background:white;border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer}.life18-shared-selector button.active{background:#172033;color:white;border-color:#172033}.life18-privacy-wall{background:#f4f7fb;border:1px solid #dfe5ee;border-radius:16px;padding:14px 16px;margin-bottom:14px;color:#48566d;line-height:1.45}.life18-shared-stats,.life18-wellbeing-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.life18-shared-stats article,.life18-wellbeing-overview article{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:5px}.life18-shared-stats strong,.life18-wellbeing-overview strong{font-size:24px}.life18-shared-stats small,.life18-wellbeing-overview small{color:#7d8799;font-weight:800}.life18-shared-stats span,.life18-wellbeing-overview span{color:#667085;font-size:12px}.life18-shared-capture{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px;margin-bottom:14px;display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center}.life18-shared-capture input{border:1px solid #dfe4ec;border-radius:12px;padding:11px 12px}.life18-template-grid,.life18-wellbeing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.life18-template-grid article,.life18-wellbeing-grid article{background:white;border:1px solid #e2e6ed;border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:7px}.life18-template-grid h3,.life18-wellbeing-grid h3{margin:3px 0}.life18-template-grid p,.life18-wellbeing-grid p{color:#667085;line-height:1.45;margin:0;flex:1}.life18-template-grid small,.life18-wellbeing-grid small{color:#7d8799;line-height:1.4}.life18-shared-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.life18-shared-list article{background:#fafbfc;border:1px solid #e2e6ed;border-radius:16px;padding:15px}.life18-shared-list h3{margin:3px 0}.life18-shared-list p{color:#667085;font-size:13px}.life18-shared-list small{color:#8791a2}.life18-no-space{background:#fffaf0;border:1px solid #eadfbe;border-radius:18px;padding:20px}.life18-no-space p{color:#667085;line-height:1.5}@media(max-width:900px){.life18-shared-stats,.life18-wellbeing-overview,.life18-template-grid,.life18-wellbeing-grid,.life18-shared-list{grid-template-columns:1fr}.life18-shared-capture{grid-template-columns:1fr}.life18-shared-capture .life18-segment{width:100%}}
/* V18-K visual polish */
.life18-shell{--ink:#172033;--muted:#667085;--line:#e2e6ed;--surface:#fff;--canvas:#f6f7f9;--soft:#f0f3f7;--accent:#243550;--success:#eef8f2;line-height:1.45}
.life18-topbar{box-shadow:0 1px 0 rgba(23,32,51,.03)}
.life18-nav{position:sticky;top:68px;z-index:15;background:linear-gradient(180deg,rgba(246,247,249,.98),rgba(246,247,249,.91));backdrop-filter:blur(12px);padding-top:10px;padding-bottom:10px;margin-top:0}
.life18-page.today{padding-top:28px}
.life18-capture{border-color:#dfe4ec;box-shadow:0 18px 55px rgba(23,32,51,.07)}
.life18-context-card,.life18-day-card,.life18-proposal-card,.life18-rhythm-card,.life18-summary-grid>article,.life18-subject-row,.life18-panel,.life18-stats article,.life18-week-grid article,.life18-agent-card,.life18-agent-workspace,.life18-portrait-card,.life18-experiment-mini,.life18-experiment-card,.life18-experiment-builder,.life18-experiment-review,.life18-domain-grid article,.life18-link-grid article,.life18-trajectory-grid article,.life18-template-grid article,.life18-wellbeing-grid article,.life18-shared-stats article,.life18-wellbeing-overview article{box-shadow:0 8px 28px rgba(23,32,51,.035)}
.life18-section-head{padding-top:8px;border-top:1px solid rgba(226,230,237,.7)}
.life18-section-head:first-of-type{border-top:0}
.life18-runtime-banner{box-shadow:0 5px 20px rgba(63,95,75,.05)}
.life18-alert{max-width:1160px;margin:12px auto 0;padding:12px 14px;border-radius:14px;display:flex;align-items:center;gap:10px;border:1px solid #dfe4ec;background:white}.life18-alert span{flex:1}.life18-alert button{border:0;background:transparent;font-weight:800;cursor:pointer}.life18-alert.error{background:#fff4f2;border-color:#f0d6d2;color:#7b332d}.life18-alert.success{background:#eef8f2;border-color:#d8eadf;color:#3f5f4b}
.life18-primary,.life18-secondary,.life18-refresh,.life18-quiet,.life18-link,.life18-nav button{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease}.life18-primary:hover:not(:disabled),.life18-secondary:hover:not(:disabled),.life18-refresh:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px rgba(23,32,51,.08)}
.life18-primary:focus-visible,.life18-secondary:focus-visible,.life18-refresh:focus-visible,.life18-quiet:focus-visible,.life18-link:focus-visible,.life18-nav button:focus-visible,.life18-subject-row:focus-visible,.life18-agent-card:focus-visible{outline:3px solid rgba(73,108,157,.28);outline-offset:2px}
@media(min-width:1100px){.life18-page.today>.life18-hero{margin-top:4px}.life18-page.today .life18-capture{padding:26px}.life18-page.today .life18-summary-main{grid-column:span 2}}
@media(max-width:620px){.life18-runtime-banner{margin-left:14px;margin-right:14px}.life18-top-actions{gap:2px}.life18-quiet{padding:8px}.life18-page.today{padding-top:20px}.life18-hero h1{font-size:38px}.life18-capture{border-radius:18px;padding:16px}.life18-nav{top:68px}}

/* V18-L Health 360 ------------------------------------------------------- */
.life18-health-capture{background:#fff;border:1px solid #e2e6ed;border-radius:22px;padding:20px;margin-bottom:14px;display:grid;grid-template-columns:.72fr 1.28fr;gap:24px;box-shadow:0 10px 30px rgba(23,32,51,.04)}
.life18-health-capture h3{font-size:20px;margin:5px 0 8px}.life18-health-capture p{color:#667085;line-height:1.5;margin:0}.life18-health-capture>small{grid-column:1/-1;color:#7d8799;border-top:1px solid #edf0f4;padding-top:12px;line-height:1.45}
.life18-health-form{display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:10px;align-items:end}.life18-health-form label{display:flex;flex-direction:column;gap:6px;color:#55627a;font-size:12px;font-weight:850}.life18-health-form label.wide{grid-column:1/3}.life18-health-form select,.life18-health-form input{min-height:42px;border:1px solid #dfe4ec;border-radius:12px;padding:9px 11px;background:#fafbfc;color:#172033;outline:none}.life18-health-form select:focus,.life18-health-form input:focus{border-color:#8a96aa;box-shadow:0 0 0 3px rgba(138,150,170,.14)}
.life18-health-value{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid #dfe4ec;border-radius:12px;background:#fafbfc}.life18-health-value input{border:0;background:transparent;min-width:0}.life18-health-value span{padding:0 11px;color:#667085;font-weight:800;font-size:12px}.life18-health-form>.life18-primary{min-height:42px}
.life18-health-trends{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.life18-health-card{background:#fff;border:1px solid #e2e6ed;border-radius:18px;padding:17px;display:flex;flex-direction:column;gap:7px;min-height:220px}.life18-health-card h3{margin:2px 0;font-size:17px}.life18-health-card>strong{font-size:28px;letter-spacing:-.03em}.life18-health-card>span{color:#667085;font-size:12px;font-weight:700}.life18-health-card>small{color:#7d8799;line-height:1.4;margin-top:auto}.life18-health-card svg{width:100%;height:64px;overflow:visible;margin:5px 0}.life18-health-card polyline{stroke:#57657a;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.life18-health-no-line{height:64px;border-radius:12px;background:#f7f8fa;display:grid;place-items:center;color:#9aa3b1;font-size:12px}
@media(max-width:900px){.life18-health-capture{grid-template-columns:1fr}.life18-health-capture>small{grid-column:auto}.life18-health-form{grid-template-columns:1fr 1fr}.life18-health-form label.wide{grid-column:1/-1}.life18-health-trends{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.life18-health-form,.life18-health-trends{grid-template-columns:1fr}.life18-health-form label.wide{grid-column:auto}.life18-health-form>.life18-primary{width:100%}}

/* V18-M Nutrition 360 */
.life18-nutrition360{margin-top:18px}
.life18-nutrition-builder{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:16px;margin:14px 0 24px}
.life18-nutrition-builder>article,.life18-meal-grid>article{background:var(--life18-card,#fff);border:1px solid var(--life18-border,#dfe4e8);border-radius:18px;padding:18px;box-shadow:0 8px 24px rgba(23,31,38,.045)}
.life18-nutrition-builder label{display:grid;gap:7px;margin:12px 0;font-size:.9rem;font-weight:650}
.life18-nutrition-builder textarea,.life18-nutrition-builder input,.life18-nutrition-inline input,.life18-nutrition-inline select{width:100%;box-sizing:border-box;border:1px solid #ccd4da;border-radius:12px;background:#fff;padding:10px 12px;color:#172027}
.life18-nutrition-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.life18-plan-tabs{display:grid;gap:8px}
.life18-plan-tabs button{display:grid;text-align:left;gap:3px;border:1px solid #dce2e6;background:#f8faf9;border-radius:12px;padding:11px 12px;color:#172027}
.life18-plan-tabs button.active{border-color:#335c4b;background:#edf5f1}
.life18-plan-tabs small{color:#68747b}
.life18-meal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:12px 0}
.life18-meal-grid article{display:grid;gap:7px;min-height:120px}
.life18-meal-grid article.pleasure{background:#fff7ea;border-color:#ecd3a2}
.life18-link{justify-self:start;border:0;background:transparent;padding:3px 0;color:#315c4a;text-decoration:underline;cursor:pointer}
.life18-nutrition-inline{display:grid;grid-template-columns:150px 150px minmax(180px,1fr) auto auto;gap:8px;align-items:center;margin:12px 0 24px}
.life18-nutrition-inline.shopping{grid-template-columns:minmax(220px,1fr) auto}
.life18-check{display:flex!important;align-items:center;gap:6px!important;margin:0!important;white-space:nowrap;font-weight:600!important}
.life18-check input{width:auto!important}
.life18-shopping-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px;margin:12px 0 20px}
.life18-shopping-list button{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;text-align:left;border:1px solid #dce2e6;background:#fff;border-radius:13px;padding:11px 12px;color:#172027}
.life18-shopping-list button>span{grid-row:1/3;font-size:1.25rem;align-self:center}
.life18-shopping-list button small{color:#6d777d}
.life18-shopping-list button.done{opacity:.58;background:#f5f6f5}
.life18-shopping-list button.done strong{text-decoration:line-through}
@media (max-width:900px){.life18-nutrition-builder{grid-template-columns:1fr}.life18-nutrition-inline{grid-template-columns:1fr 1fr}.life18-nutrition-inline input:nth-of-type(2){grid-column:1/-1}.life18-nutrition-inline.shopping{grid-template-columns:1fr auto}}
@media (max-width:560px){.life18-nutrition-fields,.life18-nutrition-inline,.life18-nutrition-inline.shopping{grid-template-columns:1fr}.life18-shopping-list{grid-template-columns:1fr}}

/* V18-N — Conversation Composer, Proactivity, Consent Center & Pilot Readiness */
.life18-conversation-native{background:linear-gradient(135deg,#ffffff 0%,#f8fbff 100%);border:1px solid #dfe7f1;border-radius:24px;padding:24px;box-shadow:0 12px 34px rgba(15,23,42,.06);display:grid;gap:16px}
.life18-conversation-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.life18-conversation-head h2{margin:.2rem 0 .45rem}.life18-conversation-head p{margin:0;max-width:760px}.life18-conversation-head select{min-width:190px;border:1px solid #d5dde8;border-radius:12px;background:#fff;padding:10px 12px}
.life18-conversation-native>textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:128px;border:1px solid #d5dde8;border-radius:16px;padding:16px;background:#fff;font:inherit;line-height:1.5}.life18-conversation-native>textarea:focus{outline:3px solid rgba(48,100,194,.15);border-color:#5b7fc2}
.life18-conversation-subject{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#eef5ff;border-radius:12px}.life18-conversation-subject span{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.life18-conversation-subject button{margin-left:auto;border:0;background:transparent;text-decoration:underline;cursor:pointer}
.life18-conversation-actions{display:flex;flex-wrap:wrap;gap:10px}
.life18-proactivity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.life18-proactivity-card{border:1px solid #e1e6ec;border-radius:18px;padding:18px;background:#fff;display:flex;flex-direction:column;gap:7px}.life18-proactivity-card h3,.life18-proactivity-card p{margin:0}.life18-proactivity-card.important{border-left:5px solid #9e4b3d}.life18-proactivity-card.attention{border-left:5px solid #bb7a2a}.life18-proactivity-card.info{border-left:5px solid #4e7894}
.life18-consent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.life18-consent-card{border:1px solid #dfe5eb;background:#fff;border-radius:18px;padding:18px}.life18-consent-card.private{box-shadow:inset 0 3px 0 #507266}.life18-consent-card.explicit_shared{box-shadow:inset 0 3px 0 #5373a5}.life18-consent-card.unavailable{opacity:.76}.life18-consent-card h3{margin:.35rem 0}.life18-consent-card p{margin:0}
.life18-privacy-center{display:flex;align-items:center;gap:12px;margin-top:12px;padding:16px 18px;border-radius:16px;background:#f3f7f5;border:1px solid #dce8e1}.life18-privacy-center span{flex:1}.life18-privacy-center button{white-space:nowrap}
.life18-pilot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.life18-pilot-grid article{background:#fff;border:1px solid #e2e7ed;border-radius:16px;padding:14px}.life18-pilot-grid article.ok{box-shadow:inset 0 3px 0 #4d7a63}.life18-pilot-grid article.warn{box-shadow:inset 0 3px 0 #b07736}.life18-pilot-grid article>strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em}.life18-pilot-grid h3{margin:.35rem 0}.life18-pilot-grid p{margin:0;font-size:.9rem}.life18-pilot-note{display:block;margin-top:10px;color:#667085}
@media(max-width:1000px){.life18-proactivity-grid,.life18-consent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.life18-pilot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.life18-conversation-head{display:grid}.life18-conversation-head select{width:100%}.life18-proactivity-grid,.life18-consent-grid,.life18-pilot-grid{grid-template-columns:1fr}.life18-privacy-center{align-items:flex-start;flex-direction:column}.life18-conversation-actions>*{flex:1 1 100%}}

/* V18-O — Settings, integrated guide, contextual help & couple clarity */
.life18-settings-page{--life18-guide:#476276}.life18-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.life18-setting-card{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:#fff;border:1px solid #e2e6ed;border-radius:18px;padding:18px}.life18-setting-card h3{margin:5px 0 6px}.life18-setting-card p{margin:0;color:#667085;line-height:1.45}.life18-toggle{border:1px solid #cfd7e2;background:#f5f7fa;color:#445066;border-radius:999px;padding:8px 11px;font-weight:850;cursor:pointer;white-space:nowrap}.life18-toggle.active{background:#172033;color:#fff;border-color:#172033}.life18-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.life18-guide-card{background:#fff;border:1px solid #e2e6ed;border-radius:18px;padding:20px}.life18-guide-card h3{font-size:19px;margin:6px 0 8px}.life18-guide-card p{color:#667085;line-height:1.5;margin:0}.life18-guide-card ol{padding-left:20px;margin:14px 0 0;color:#3d485c;display:grid;gap:8px;line-height:1.45}.life18-glossary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.life18-glossary-grid article{background:#fff;border:1px solid #e2e6ed;border-radius:16px;padding:16px}.life18-glossary-grid h3{margin:0 0 6px}.life18-glossary-grid p{margin:0;color:#667085;line-height:1.45}.life18-guide-callouts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.life18-guide-callouts article{border:1px solid #dce8e1;background:#f6faf8;border-radius:16px;padding:17px}.life18-guide-callouts p{margin:7px 0 0;color:#5f6d67;line-height:1.45}.life18-settings-actions{display:flex;flex-wrap:wrap;gap:10px}.life18-settings-note{display:block;margin-top:12px;color:#7a8498;line-height:1.5}.life18-couple-boundaries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.life18-couple-boundaries article{background:#fff;border:1px solid #dfe5eb;border-radius:16px;padding:16px}.life18-couple-boundaries h3{margin:5px 0 7px}.life18-couple-boundaries p{margin:0;color:#667085;line-height:1.45}

/* Contextual ? help. Every article gets a fallback explanation; important blocks get a specific one. */
.life18-help-on .life18-page article,.life18-help-on .life18-conversation-native,.life18-help-on .life18-capture,.life18-help-on .life18-health-capture,.life18-help-on .life18-privacy-wall,.life18-help-on .life18-shared-capture{position:relative}
.life18-help-on .life18-page article::after,.life18-help-on .life18-conversation-native::after,.life18-help-on .life18-capture::after,.life18-help-on .life18-health-capture::after,.life18-help-on .life18-privacy-wall::after,.life18-help-on .life18-shared-capture::after{content:"?";position:absolute;top:9px;right:9px;width:20px;height:20px;border-radius:50%;background:#eef2f6;border:1px solid #d4dce6;color:#526175;display:grid;place-items:center;font-size:12px;font-weight:900;z-index:7;box-shadow:0 2px 5px rgba(23,32,51,.06)}
.life18-help-on .life18-page article::before,.life18-help-on .life18-conversation-native::before,.life18-help-on .life18-capture::before,.life18-help-on .life18-health-capture::before,.life18-help-on .life18-privacy-wall::before,.life18-help-on .life18-shared-capture::before{content:"Cette tuile résume une information ou une action de ce module. Le Guide dans Paramètres explique son rôle plus en détail.";position:absolute;top:34px;right:8px;width:min(300px,calc(100% - 24px));padding:10px 12px;border-radius:11px;background:#172033;color:#fff;font-size:12px;font-weight:650;line-height:1.4;box-shadow:0 10px 28px rgba(23,32,51,.22);opacity:0;transform:translateY(-3px);transition:opacity .14s ease,transform .14s ease;pointer-events:none;z-index:50;text-transform:none;letter-spacing:0}
.life18-help-on .life18-page article:hover::before,.life18-help-on .life18-conversation-native:hover::before,.life18-help-on .life18-capture:hover::before,.life18-help-on .life18-health-capture:hover::before,.life18-help-on .life18-privacy-wall:hover::before,.life18-help-on .life18-shared-capture:hover::before{opacity:1;transform:translateY(0)}
.life18-help-on .life18-conversation-native::before{content:"Conversation VNext : le message reste sous ton contrôle. Life360 prépare un agent et un contexte visibles sans transformer automatiquement le brouillon en mémoire durable."}
.life18-help-on .life18-capture::before{content:"Saisie universelle : crée explicitement un Sujet à suivre ou une Action. Elle n'écrit pas automatiquement dans la mémoire longue durée."}
.life18-help-on .life18-context-card::before{content:"À garder en vue : Life360 limite volontairement cette zone à trois éléments importants pour ne pas surcharger la journée."}
.life18-help-on .life18-proactivity-card::before{content:"Proactivité : rappel calculé à partir des éléments structurés existants. Aucun push externe ni action automatique."}
.life18-help-on .life18-rhythm-card::before{content:"Rythme quotidien : guide facultatif matin, journée ou soir. Il aide à prendre du recul sans rendre le suivi obligatoire."}
.life18-help-on .life18-agent-card::before,.life18-help-on .life18-specialist-program::before{content:"Agent spécialisé : méthode de travail adaptée au domaine. Les faits, observations et hypothèses restent distincts."}
.life18-help-on .life18-portrait-card::before,.life18-help-on .life18-portrait-stats article::before{content:"Portrait 360 : vue longitudinale personnelle. Une hypothèse reste une hypothèse tant qu'elle n'est pas confirmée."}
.life18-help-on .life18-health-card::before,.life18-help-on .life18-health-capture::before{content:"Health 360 : mesure ou tendance descriptive. Une corrélation n'est pas présentée comme une causalité médicale."}
.life18-help-on .life18-experiment-card::before,.life18-help-on .life18-experiment-builder::before,.life18-help-on .life18-experiment-review::before{content:"Expérience personnelle : tester un seul changement, observer le résultat, puis apprendre prudemment sans conclure trop vite."}
.life18-help-on .life18-consent-card::before,.life18-help-on .life18-privacy-wall::before{content:"Confidentialité : cette zone indique ce qui est privé ou volontairement partagé. Aucune donnée personnelle n'est aspirée automatiquement vers Couple/Famille."}
.life18-help-on .life18-pilot-grid article::before{content:"Préparation pilote : ce contrôle décrit l'état technique de l'installation sans exposer le contenu de tes données privées."}
.life18-help-on .life18-meal-grid article::before,.life18-help-on .life18-shopping-list button::before{content:"Nutrition 360 : organisation familiale flexible. Les repas plaisir restent explicitement prévus ; Health 360 personnel reste séparé."}
.life18-help-on .life18-couple-boundaries article::before{content:"Couple : partager uniquement ce qui est réellement commun. Life360 cherche l'ajustement entre deux fonctionnements, pas un gagnant."}
.life18-help-on .life18-setting-card::before{content:"Paramètre d'interface : ce réglage agit uniquement sur l'affichage de la session et ne modifie pas tes données."}
.life18-help-on .life18-guide-card::before{content:"Guide intégré : ce chapitre explique comment utiliser cette partie de Life360 et ce que l'application fait ou ne fait pas."}
.life18-help-on .life18-glossary-grid article::before{content:"Glossaire : définition d'un objet ou d'un concept utilisé par Life360."}
.life18-help-off .life18-page article::after,.life18-help-off .life18-page article::before{display:none!important}
.life18-compact .life18-page{padding-top:22px}.life18-compact .life18-section-head{margin-top:18px}.life18-compact article{padding-top:14px;padding-bottom:14px}.life18-reduced-motion *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
@media(max-width:900px){.life18-settings-grid,.life18-guide-grid,.life18-glossary-grid,.life18-guide-callouts,.life18-couple-boundaries{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.life18-settings-grid,.life18-guide-grid,.life18-glossary-grid,.life18-guide-callouts,.life18-couple-boundaries{grid-template-columns:1fr}.life18-help-on .life18-page article::before,.life18-help-on .life18-conversation-native::before,.life18-help-on .life18-capture::before,.life18-help-on .life18-health-capture::before,.life18-help-on .life18-privacy-wall::before,.life18-help-on .life18-shared-capture::before{width:min(260px,calc(100% - 18px));right:5px}}
/* V18-O help coverage for tile-like buttons and composite bricks */
.life18-help-on .life18-agent-card,.life18-help-on .life18-subject-row,.life18-help-on .life18-shopping-list button,.life18-help-on .life18-specialist-program,.life18-help-on .life18-privacy-center{position:relative}
.life18-help-on .life18-agent-card::after,.life18-help-on .life18-subject-row::after,.life18-help-on .life18-shopping-list button::after,.life18-help-on .life18-specialist-program::after,.life18-help-on .life18-privacy-center::after{content:"?";position:absolute;top:9px;right:9px;width:20px;height:20px;border-radius:50%;background:#eef2f6;border:1px solid #d4dce6;color:#526175;display:grid;place-items:center;font-size:12px;font-weight:900;z-index:7;box-shadow:0 2px 5px rgba(23,32,51,.06)}
.life18-help-on .life18-agent-card::before,.life18-help-on .life18-subject-row::before,.life18-help-on .life18-shopping-list button::before,.life18-help-on .life18-specialist-program::before,.life18-help-on .life18-privacy-center::before{position:absolute;top:34px;right:8px;width:min(300px,calc(100% - 24px));padding:10px 12px;border-radius:11px;background:#172033;color:#fff;font-size:12px;font-weight:650;line-height:1.4;box-shadow:0 10px 28px rgba(23,32,51,.22);opacity:0;transform:translateY(-3px);transition:opacity .14s ease,transform .14s ease;pointer-events:none;z-index:50;text-transform:none;letter-spacing:0;text-align:left}
.life18-help-on .life18-agent-card:hover::before,.life18-help-on .life18-subject-row:hover::before,.life18-help-on .life18-shopping-list button:hover::before,.life18-help-on .life18-specialist-program:hover::before,.life18-help-on .life18-privacy-center:hover::before{opacity:1;transform:translateY(0)}
.life18-help-on .life18-agent-card::before{content:"Agent : ouvre un espace de travail spécialisé. Il réutilise le même socle Life360 sans transformer automatiquement une interprétation en vérité."}
.life18-help-on .life18-subject-row::before{content:"Sujet : thème suivi dans le temps. Le sélectionner permet de garder une continuité entre Aujourd'hui, les agents et les actions."}
.life18-help-on .life18-shopping-list button::before{content:"Course partagée : cliquer marque l'article fait/non fait dans l'espace Famille. Aucune donnée Health personnelle n'est ajoutée ici."}
.life18-help-on .life18-specialist-program::before{content:"Plan de travail de l'agent : étapes proposées pour structurer le sujet. La prochaine action n'est créée qu'après ton clic."}
.life18-help-on .life18-privacy-center::before{content:"Centre de confidentialité : rappelle la frontière entre données personnelles et espaces partagés. Le partage reste explicite."}
.life18-help-off .life18-agent-card::after,.life18-help-off .life18-agent-card::before,.life18-help-off .life18-subject-row::after,.life18-help-off .life18-subject-row::before,.life18-help-off .life18-shopping-list button::after,.life18-help-off .life18-shopping-list button::before,.life18-help-off .life18-specialist-program::after,.life18-help-off .life18-specialist-program::before,.life18-help-off .life18-privacy-center::after,.life18-help-off .life18-privacy-center::before{display:none!important}

/* V18-P secure conversation continuity + notification preferences */
.life18-thread-toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:12px 14px;border:1px solid #dfe7f1;border-radius:16px;background:#f8fafc}.life18-thread-toolbar label{display:grid;gap:6px;min-width:min(420px,100%);font-weight:700}.life18-thread-toolbar select{border:1px solid #d5dde8;border-radius:10px;background:#fff;padding:9px 11px}.life18-thread-toolbar>span{color:#667085;font-size:13px;margin-left:auto}.life18-transcript{display:grid;gap:10px;max-height:380px;overflow:auto;padding:4px}.life18-transcript article{max-width:82%;padding:12px 14px;border-radius:16px;margin:0}.life18-transcript article.user{margin-left:auto;background:#eef6ff;border:1px solid #cfe2f6}.life18-transcript article.assistant{margin-right:auto;background:#f5f7f9;border:1px solid #dfe5eb}.life18-transcript article p{margin:5px 0 0;white-space:pre-wrap;line-height:1.5}.life18-transcript article small{color:#667085}.life18-assistant-import{display:grid;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #dfe5eb}.life18-assistant-import textarea{width:100%;resize:vertical}.life18-notification-settings .life18-setting-card{min-height:180px}.life18-help-on .life18-secure-continuity::before{content:"Conversation chiffrée V18-P : le transcript est personnel, protégé par le chiffrement du journal et jamais promu automatiquement en mémoire. La réponse de Mon IA n'est ajoutée qu'après ton action explicite."}
@media(max-width:700px){.life18-thread-toolbar{align-items:stretch}.life18-thread-toolbar label{min-width:100%}.life18-thread-toolbar>span{margin-left:0}.life18-transcript article{max-width:94%}}

/* LIFE360 V18-Q - native conversation, pilot and Couple deepening */
.life18-native-status{display:flex;gap:.75rem;align-items:flex-start;justify-content:space-between;padding:.8rem 1rem;border:1px solid var(--life18-border,#d9dee7);border-radius:14px;background:rgba(255,255,255,.64)}
.life18-native-status strong{white-space:nowrap}.life18-native-status span{font-size:.9rem;opacity:.8;text-align:right}.life18-native-status.ready{box-shadow:inset 3px 0 0 rgba(38,120,86,.7)}.life18-native-status.fallback{box-shadow:inset 3px 0 0 rgba(174,126,31,.65)}
.life18-context-control{display:flex;gap:.75rem;align-items:flex-start;padding:.8rem 1rem;border-radius:14px;background:rgba(255,255,255,.5)}.life18-context-control input{margin-top:.25rem}.life18-context-control span{display:grid;gap:.15rem}.life18-context-control small{opacity:.72}
.life18-context-details{border:1px solid var(--life18-border,#d9dee7);border-radius:14px;padding:.75rem 1rem}.life18-context-details summary{cursor:pointer;font-weight:650}.life18-context-details textarea{width:100%;margin-top:.75rem}
.life18-pilot-plan{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.life18-pilot-plan article,.life18-couple-consent{border:1px solid var(--life18-border,#d9dee7);border-radius:18px;padding:1rem;background:rgba(255,255,255,.62)}
.life18-couple-consent{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.life18-couple-consent>strong{white-space:nowrap;font-size:.88rem}
@media (max-width:900px){.life18-pilot-plan{grid-template-columns:1fr 1fr}.life18-native-status,.life18-couple-consent{flex-direction:column}.life18-native-status span{text-align:left}}
@media (max-width:620px){.life18-pilot-plan{grid-template-columns:1fr}}

/* LIFE360 V18-S — warm, searchable, explicit-help UX */
html,body,#root{background:#f7f1e9}
.life18-shell{--s-ink:#302b2a;--s-muted:#726966;--s-warm:#a95f4e;--s-warm-dark:#784337;--s-sage:#718675;--s-cream:#fffaf4;--s-line:#e8ddd2;--s-soft:#f2e8df;background:radial-gradient(circle at 8% 0%,rgba(222,186,157,.18),transparent 30%),radial-gradient(circle at 92% 12%,rgba(158,184,163,.16),transparent 30%),#f7f1e9;color:var(--s-ink)}
.life18-topbar{height:auto;min-height:76px;padding:10px 28px;border-color:var(--s-line);background:rgba(255,250,244,.94);gap:22px}.life18-brand{color:var(--s-ink);flex:0 0 auto}.life18-mark{background:linear-gradient(145deg,#8e5143,#b8755f);box-shadow:0 7px 18px rgba(137,79,64,.2)}.life18-brand small{color:#8a7770}.life18-top-actions{flex:0 0 auto}.life18-quiet,.life18-link{color:#725a51}.life18-quiet:hover,.life18-link:hover{background:#f1e5da;color:#513b34}
.life18-nav{justify-content:center;margin-top:14px}.life18-nav button{color:#766b67}.life18-nav button.active{background:#6f493f;color:#fff;box-shadow:0 5px 14px rgba(92,59,51,.18)}
.life18-page{padding-top:30px}.life18-hero{background:linear-gradient(135deg,rgba(255,250,244,.92),rgba(246,233,221,.74));border:1px solid var(--s-line);border-radius:28px;padding:26px;box-shadow:0 16px 40px rgba(87,65,55,.07)}.life18-hero h1{color:#3c302d}.life18-hero p,.life18-panel p,.life18-agent-card p{color:var(--s-muted)}.life18-kicker{color:#9b6758}.life18-primary{background:#7b4b40;border-color:#7b4b40;color:#fff}.life18-primary:hover{background:#673e35}.life18-secondary,.life18-refresh{background:#fffaf5;border-color:#ddcfc3;color:#614b43}.life18-secondary:hover,.life18-refresh:hover{background:#f5e8dc}.life18-capture,.life18-context-card,.life18-empty,.life18-panel,.life18-agent-workspace,.life18-stats article,.life18-day-card,.life18-setting-card,.life18-guide-card,.life18-glossary-grid article{background:rgba(255,252,248,.92);border-color:var(--s-line);box-shadow:0 10px 30px rgba(89,64,53,.045)}

/* The old V18 hover help is disabled completely. Help is now an explicit control only. */
.life18-help-on .life18-page article::before,.life18-help-on .life18-page article::after,.life18-help-on .life18-conversation-native::before,.life18-help-on .life18-conversation-native::after,.life18-help-on .life18-capture::before,.life18-help-on .life18-capture::after,.life18-help-on .life18-health-capture::before,.life18-help-on .life18-health-capture::after,.life18-help-on .life18-privacy-wall::before,.life18-help-on .life18-privacy-wall::after,.life18-help-on .life18-shared-capture::before,.life18-help-on .life18-shared-capture::after,.life18-help-on .life18-subject-row::before,.life18-help-on .life18-subject-row::after,.life18-help-on .life18-shopping-list button::before,.life18-help-on .life18-shopping-list button::after,.life18-help-on .life18-specialist-program::before,.life18-help-on .life18-specialist-program::after,.life18-help-on .life18-privacy-center::before,.life18-help-on .life18-privacy-center::after{display:none!important;content:none!important;opacity:0!important}
.life18-help-control{position:relative;display:inline-flex;flex:0 0 auto;z-index:12}.life18-help-button{width:32px;height:32px;border-radius:50%;border:1px solid #d7c7ba;background:#fffaf4;color:#76574e;font-weight:900;cursor:pointer;display:grid;place-items:center;box-shadow:0 4px 12px rgba(74,53,45,.08)}.life18-help-button:hover,.life18-help-button[aria-expanded="true"]{background:#7b4b40;color:#fff;border-color:#7b4b40}.life18-help-popover{position:absolute;top:39px;right:0;width:min(330px,78vw);background:#3d3431;color:#fff;border-radius:14px;padding:13px 14px;box-shadow:0 18px 45px rgba(39,29,25,.28);text-align:left;font-size:13px;line-height:1.5;z-index:80}.life18-help-popover strong{display:block;margin-bottom:5px;font-size:14px}.life18-help-popover span{display:block;color:#f4e9e2;font-weight:500}.life18-head-tools,.life18-focus-actions,.life18-onboarding-actions{display:flex;gap:10px;align-items:flex-start}.life18-conversation-head{align-items:flex-start}

/* Universal function search */
.life18-search-wrap{position:relative;flex:1;max-width:620px;min-width:260px}.life18-search-wrap>label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.life18-search-wrap>input{width:100%;border:1px solid #ded1c5;background:#fffdf9;border-radius:16px;padding:11px 15px 11px 42px;color:#3a302d;outline:none;background-image:radial-gradient(circle at 19px 17px,transparent 6px,#8e756d 7px,#8e756d 8px,transparent 9px),linear-gradient(45deg,transparent 46%,#8e756d 47%,#8e756d 57%,transparent 58%);background-size:auto,8px 8px;background-position:0 0,27px 25px;background-repeat:no-repeat}.life18-search-wrap>input:focus{border-color:#aa7667;box-shadow:0 0 0 4px rgba(170,118,103,.12)}.life18-search-results{position:absolute;top:49px;left:0;right:0;background:#fffdf9;border:1px solid #ddcec2;border-radius:18px;padding:7px;box-shadow:0 22px 55px rgba(61,45,39,.18);z-index:60;max-height:440px;overflow:auto}.life18-search-results button{width:100%;border:0;background:transparent;text-align:left;padding:11px 12px;border-radius:12px;display:grid;gap:3px;cursor:pointer;color:#3c302d}.life18-search-results button:hover{background:#f5e8dd}.life18-search-results span{font-size:12px;color:#756964;line-height:1.4}.life18-search-results small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#9d6757;font-weight:900}

/* Onboarding and personal 360 */
.life18-onboarding-card,.life18-focus-card{display:flex;justify-content:space-between;gap:22px;align-items:center;padding:22px 24px;border:1px solid #e2cdbc;border-radius:24px;background:linear-gradient(130deg,#fffaf4,#f4e6d9);box-shadow:0 12px 32px rgba(89,64,53,.06);margin:0 0 26px}.life18-onboarding-card>div:first-child,.life18-focus-card>div:first-child{max-width:760px}.life18-onboarding-card h2,.life18-focus-card h2{margin:5px 0 8px}.life18-onboarding-card p,.life18-focus-card p{color:#6f625d;line-height:1.55}.life18-progress{height:8px;border-radius:999px;background:#e8d9cd;overflow:hidden;margin:13px 0 7px}.life18-progress span{display:block;height:100%;background:linear-gradient(90deg,#b66f5b,#7a917e);border-radius:inherit}.life18-mental-load-card{background:linear-gradient(130deg,#fffaf4,#eaf0e8);border-color:#d7dfd5}.life18-me-shortcuts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 20px}.life18-me-shortcuts button{border:1px solid var(--s-line);background:#fffaf5;border-radius:17px;padding:14px;text-align:left;display:grid;gap:5px;cursor:pointer;color:#403532}.life18-me-shortcuts button:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(74,53,45,.08)}.life18-me-shortcuts button>span{font-size:10px;color:#b17765;font-weight:900}.life18-me-shortcuts small{color:#81736e}

/* Agent business cards */
.life18-agent-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.life18-agent-card{cursor:default;min-height:360px;padding:18px;border-color:#e4d7cc;background:#fffaf6}.life18-agent-card.selected{border-color:#a56c5d;box-shadow:0 0 0 2px rgba(165,108,93,.18),0 16px 35px rgba(86,61,51,.09)}.life18-agent-card-head{display:flex;justify-content:space-between;width:100%;align-items:flex-start;margin-bottom:12px}.life18-agent-card img{width:84px;height:84px;border-radius:23px;object-fit:cover;border:3px solid rgba(255,255,255,.9);box-shadow:0 8px 22px rgba(73,51,43,.12)}.life18-agent-card>small{color:#997061;text-transform:uppercase;letter-spacing:.07em;font-size:10px}.life18-agent-card>strong{font-size:22px;color:#423431}.life18-agent-card>p{font-size:13px;line-height:1.55}.life18-agent-card>.life18-secondary{width:100%;margin-top:auto}.life18-agent-card.agent-psy{background:linear-gradient(160deg,#fffaf6,#f3e8ec)}.life18-agent-card.agent-health{background:linear-gradient(160deg,#fffaf6,#e9f1ed)}.life18-agent-card.agent-nutrition{background:linear-gradient(160deg,#fffaf6,#f3ede0)}.life18-agent-card.agent-home{background:linear-gradient(160deg,#fffaf6,#ecebe3)}.life18-selected-agent{display:flex;gap:16px;align-items:center}.life18-selected-agent img{width:78px;height:78px;border-radius:22px}.life18-selected-agent h2{margin:3px 0}.life18-agent-workspace{grid-template-columns:.85fr 1.15fr}

/* Modal flows */
.life18-modal-backdrop{position:fixed;inset:0;background:rgba(48,40,36,.58);z-index:100;padding:24px;display:grid;place-items:center;backdrop-filter:blur(5px)}.life18-modal{width:min(860px,100%);max-height:92vh;overflow:auto;background:#fffaf5;border:1px solid #ead9cb;border-radius:26px;box-shadow:0 30px 90px rgba(40,29,24,.3);padding:22px}.life18-modal>header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.life18-modal>header h2{margin:5px 0 8px;font-size:28px}.life18-modal>header p{margin:0;color:#756861;line-height:1.55}.life18-modal>footer{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.life18-modal-field{display:grid;gap:8px;margin:20px 0}.life18-modal-field>span{font-weight:850}.life18-modal-field textarea{width:100%;border:1px solid #dfcfc3;border-radius:16px;padding:14px;background:#fff;resize:vertical;outline:none;line-height:1.55}.life18-modal-field textarea:focus{border-color:#aa7667;box-shadow:0 0 0 4px rgba(170,118,103,.11)}.life18-modal-field small,.life18-modal-note span{color:#7f716b;line-height:1.45}.life18-modal-note{display:flex;gap:8px;padding:13px 14px;background:#f2e9e1;border-radius:14px}.life18-anamnesis-progress{display:flex;gap:7px;flex-wrap:wrap;margin:19px 0}.life18-anamnesis-progress button{width:32px;height:32px;border-radius:50%;border:1px solid #decec2;background:#fff;color:#806f68;font-weight:800;cursor:pointer}.life18-anamnesis-progress button.active{background:#7b4b40;color:#fff;border-color:#7b4b40}.life18-anamnesis-progress button.done:not(.active){background:#dfe9df;color:#526b57;border-color:#c4d5c5}.life18-mental-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.life18-mental-grid label{background:#fff;border:1px solid #e4d7cd;border-radius:16px;padding:13px}.life18-mental-grid label>div{display:flex;justify-content:space-between;gap:10px}.life18-mental-grid p{font-size:12px;color:#786b66;min-height:34px;line-height:1.4}.life18-mental-grid input{width:100%;accent-color:#7b4b40}.life18-mental-result{padding:16px;border-radius:17px;background:#edf2ea;border:1px solid #d5e0d3}.life18-mental-result h3{margin:5px 0}.life18-mental-result p{color:#5e6d60}

/* Functional directory */
.life18-feature-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.life18-feature-directory button{border:1px solid var(--s-line);background:#fffaf5;border-radius:16px;padding:14px;text-align:left;display:grid;gap:5px;color:#413532;cursor:pointer}.life18-feature-directory button:hover{border-color:#bf9484;background:#fff6ef}.life18-feature-directory span{font-size:12px;line-height:1.4;color:#756863}.life18-feature-directory small{color:#a26352;font-weight:850;text-transform:uppercase;font-size:10px;letter-spacing:.07em}
.life18-privacy-wall{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}

@media(max-width:1100px){.life18-agent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.life18-me-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.life18-topbar{flex-wrap:wrap}.life18-search-wrap{order:3;flex-basis:100%;max-width:none}.life18-agent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.life18-feature-directory{grid-template-columns:1fr 1fr}.life18-me-shortcuts{grid-template-columns:1fr 1fr}.life18-onboarding-card,.life18-focus-card{align-items:flex-start;flex-direction:column}.life18-agent-workspace{grid-template-columns:1fr}}
@media(max-width:620px){.life18-topbar{padding:9px 14px}.life18-top-actions .life18-quiet{font-size:12px}.life18-nav{justify-content:flex-start;padding:0 14px}.life18-page{padding-left:14px;padding-right:14px}.life18-hero{padding:20px;border-radius:22px}.life18-agent-grid,.life18-feature-directory,.life18-me-shortcuts,.life18-mental-grid{grid-template-columns:1fr}.life18-agent-card{min-height:0}.life18-modal-backdrop{padding:8px}.life18-modal{padding:17px;border-radius:20px}.life18-modal>footer{flex-direction:column-reverse}.life18-modal>footer button{width:100%}.life18-help-popover{position:fixed;top:auto;left:12px;right:12px;bottom:14px;width:auto}.life18-search-results{position:fixed;top:128px;left:10px;right:10px}}
.life18-progress{display:block;width:100%;height:8px;border:0;border-radius:999px;overflow:hidden;margin:13px 0 7px;background:#e8d9cd;appearance:none}.life18-progress::-webkit-progress-bar{background:#e8d9cd;border-radius:999px}.life18-progress::-webkit-progress-value{background:linear-gradient(90deg,#b66f5b,#7a917e);border-radius:999px}.life18-progress::-moz-progress-bar{background:#9b6f60;border-radius:999px}

/* LIFE360 V18-T — personal history search, life timeline & structured health register */
.life18-search-group{display:grid;gap:5px;padding:7px 0}.life18-search-group>small{padding:4px 12px 2px;color:#866a5c;font-weight:850;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.life18-search-group+.life18-search-group{border-top:1px solid #eadfd5}
.life18-history360,.life18-health-records{scroll-margin-top:125px;margin-top:26px}.life18-history-toolbar{display:flex;gap:10px;align-items:end;margin:12px 0 16px;padding:14px;border:1px solid #e6d8cc;border-radius:18px;background:#fffaf5}.life18-history-toolbar label{display:grid;gap:6px;flex:1;font-weight:800}.life18-history-toolbar input,.life18-life-chapter input,.life18-life-chapter textarea,.life18-health-record-form input,.life18-health-record-form textarea,.life18-health-record-form select{width:100%;box-sizing:border-box;border:1px solid #d9c9bc;border-radius:12px;background:#fffdf9;padding:10px 12px;color:var(--s-ink);font:inherit}.life18-history-periods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0 18px}.life18-history-periods article{display:grid;gap:4px;padding:15px 16px;border:1px solid #dfd2c5;border-radius:18px;background:linear-gradient(145deg,#fffaf4,#f2eee5)}.life18-history-periods strong{font-size:28px}.life18-history-periods span{font-size:12px;color:#6e625c}
.life18-history-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:18px;align-items:start}.life18-timeline{display:grid;gap:10px}.life18-timeline article{display:grid;grid-template-columns:126px 1fr;gap:14px;padding:15px 16px;border:1px solid #e5d9ce;border-radius:18px;background:#fff}.life18-timeline time{font-size:12px;font-weight:800;color:#8a6858;padding-top:3px}.life18-timeline h3{margin:3px 0 5px}.life18-timeline p{margin:0;color:#5e5754;line-height:1.5}.life18-life-chapter{position:sticky;top:118px;display:grid;gap:11px;padding:18px;border:1px solid #d7c9bd;border-radius:20px;background:linear-gradient(160deg,#f7eee4,#f2f3e9);box-shadow:0 14px 34px rgba(96,74,60,.08)}.life18-life-chapter label,.life18-health-record-form label{display:grid;gap:6px;font-weight:750}.life18-life-chapter p{margin:0;color:#655b56;line-height:1.5}
.life18-health-records{padding:18px;border:1px solid #d8d8ca;border-radius:22px;background:linear-gradient(145deg,#fbfaf4,#f1f4ed)}.life18-health-record-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px}.life18-health-record-form{display:grid;gap:10px;padding:16px;border:1px solid #d8d5c8;border-radius:18px;background:#fff}.life18-health-record-form h3{margin:0 0 2px}.life18-health-record-list{display:grid;gap:9px;margin-top:14px}.life18-health-record-list article{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid #dedbd0;border-radius:16px;background:#fff}.life18-health-record-list h3{margin:3px 0 4px}.life18-health-record-list p{margin:0;color:#625d59}.life18-health-record-list .life18-link{flex:0 0 auto}
@media(max-width:900px){.life18-history-layout,.life18-health-record-layout{grid-template-columns:1fr}.life18-life-chapter{position:static}.life18-history-periods{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:620px){.life18-history-toolbar{align-items:stretch;flex-direction:column}.life18-history-periods{grid-template-columns:1fr}.life18-timeline article{grid-template-columns:1fr}.life18-health-record-list article{align-items:flex-start;flex-direction:column}}

/* Life360 AI V18-U — identité visuelle unifiée.
   Une seule famille chromatique : ivoire chaud + bleu pétrole doux.
   Les domaines se distinguent par le contenu et les portraits, pas par des aplats multicolores. */
.life18-shell{
  --s-ink:#243236;--s-muted:#677579;--s-warm:#326873;--s-warm-dark:#25535c;--s-sage:#326873;--s-cream:#fbfaf7;--s-line:#dfe5e3;--s-soft:#eef3f2;
  background:#f7f6f2;color:var(--s-ink)
}
.life18-topbar{border-color:var(--s-line);background:rgba(251,250,247,.96)}
.life18-mark{background:#326873;box-shadow:0 7px 18px rgba(50,104,115,.18)}
.life18-brand,.life18-brand small{color:var(--s-ink)}
.life18-quiet,.life18-link{color:#49676d}
.life18-quiet:hover,.life18-link:hover{background:#eaf0ef;color:#244d55}
.life18-nav button{color:#637176}.life18-nav button.active{background:#326873;color:#fff}
.life18-hero,.life18-onboarding-card,.life18-focus-card,.life18-mental-load-card,.life18-history-periods article,.life18-life-chapter,.life18-health-records{background:#fbfaf7;border-color:var(--s-line);box-shadow:0 14px 34px rgba(47,68,72,.055)}
.life18-hero h1,.life18-agent-card>strong,.life18-agent-card h2{color:#243236}
.life18-hero p,.life18-panel p,.life18-agent-card p,.life18-onboarding-card p,.life18-focus-card p{color:var(--s-muted)}
.life18-kicker{color:#55737a}
.life18-primary{background:#326873;border-color:#326873;color:#fff}.life18-primary:hover{background:#285963}
.life18-secondary,.life18-refresh{background:#fff;border-color:#d8e0de;color:#36575e}.life18-secondary:hover,.life18-refresh:hover{background:#edf3f2}
.life18-capture,.life18-context-card,.life18-empty,.life18-panel,.life18-agent-workspace,.life18-stats article,.life18-day-card,.life18-setting-card,.life18-guide-card,.life18-glossary-grid article,.life18-feature-directory button,.life18-me-shortcuts button,.life18-history-toolbar,.life18-timeline article,.life18-health-record-form,.life18-health-record-list article{background:#fff;border-color:var(--s-line);box-shadow:none}
.life18-capture textarea,.life18-history-toolbar input,.life18-life-chapter input,.life18-life-chapter textarea,.life18-health-record-form input,.life18-health-record-form textarea,.life18-health-record-form select{background:#fff;border-color:#d8e0de;color:var(--s-ink)}
.life18-capture textarea:focus,.life18-modal-field textarea:focus{border-color:#5a8189;box-shadow:0 0 0 4px rgba(50,104,115,.10)}
.life18-progress,.life18-progress::-webkit-progress-bar{background:#e3e9e7}.life18-progress span,.life18-progress::-webkit-progress-value{background:#326873}.life18-progress::-moz-progress-bar{background:#326873}
.life18-me-shortcuts button>span,.life18-feature-directory small{color:#326873}.life18-feature-directory button:hover,.life18-me-shortcuts button:hover{background:#f5f8f7;border-color:#b9cbca}
.life18-agent-grid{gap:16px}
.life18-agent-card,.life18-agent-card.agent-psy,.life18-agent-card.agent-health,.life18-agent-card.agent-nutrition,.life18-agent-card.agent-home{min-height:430px;padding:0 0 18px;overflow:hidden;background:#fff;border:1px solid #dfe5e3;border-radius:24px;box-shadow:0 10px 28px rgba(43,62,66,.055)}
.life18-agent-card.selected{border-color:#326873;box-shadow:0 0 0 2px rgba(50,104,115,.16),0 14px 34px rgba(43,62,66,.08)}
.life18-agent-card-head{position:relative;width:100%;min-height:210px;margin:0 0 16px;background:#eef3f2;overflow:hidden}
.life18-agent-card-head>img{width:100%;height:210px;border:0;border-radius:0;object-fit:cover;object-position:center 22%;box-shadow:none}
.life18-agent-card-head>.life18-help-wrap{position:absolute;top:10px;right:10px;z-index:2}
.life18-agent-card>small,.life18-agent-card>strong,.life18-agent-card>p,.life18-agent-card>.life18-secondary{margin-left:18px;margin-right:18px}
.life18-agent-card>small{color:#4f747b;text-transform:none;letter-spacing:0;font-size:12px;font-weight:800}.life18-agent-card>strong{font-size:24px;margin-top:4px}.life18-agent-card>p{font-size:13px;line-height:1.55}.life18-agent-card>.life18-secondary{width:calc(100% - 36px)}
.life18-selected-agent img{width:92px;height:92px;border-radius:24px;object-fit:cover;object-position:center 22%;border:1px solid #dfe5e3}
.life18-agent-workspace{background:#fff;border-color:var(--s-line)}
.life18-modal{background:#fbfaf7;border-color:var(--s-line)}.life18-modal-note,.life18-mental-result{background:#edf3f2;border-color:#dce7e4}
.life18-anamnesis-progress button.active{background:#326873;border-color:#326873}.life18-anamnesis-progress button.done:not(.active){background:#e8efed;color:#356069;border-color:#ccdcda}
.life18-mental-grid input{accent-color:#326873}.life18-life-chapter,.life18-health-records{background:#f3f6f4}
@media(max-width:620px){.life18-agent-card{min-height:0}.life18-agent-card-head,.life18-agent-card-head>img{min-height:190px;height:190px}}

/* ========================================================================== */
/* Life360 AI V18-V — UI system complet, toutes les pages + clair/sombre       */
/* Référence : navigation latérale, tuiles lisibles, raccourcis et saisies.    */
/* ========================================================================== */
.life18-shell{
  --ui-bg:#f7f4ee;--ui-bg-soft:#f1eee7;--ui-surface:#fffdf9;--ui-surface-2:#f8f6f1;--ui-surface-3:#eef3f1;
  --ui-text:#273230;--ui-muted:#6c7471;--ui-subtle:#8d918f;--ui-border:#e4ded3;--ui-border-strong:#d6cdbf;
  --ui-accent:#285e68;--ui-accent-strong:#1d4d56;--ui-accent-soft:#e7efee;--ui-warm:#b2784f;--ui-good:#557b5b;
  --ui-shadow:0 10px 30px rgba(65,55,45,.055);--ui-shadow-hover:0 16px 38px rgba(65,55,45,.085);
  --ui-radius:22px;--ui-radius-sm:15px;--sidebar-w:258px;
  display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);grid-template-rows:76px minmax(0,1fr);
  min-height:100vh;background:var(--ui-bg);color:var(--ui-text);transition:background .2s ease,color .2s ease
}
.life18-theme-dark{
  --ui-bg:#101311;--ui-bg-soft:#151917;--ui-surface:#191d1b;--ui-surface-2:#202522;--ui-surface-3:#26302c;
  --ui-text:#f0ede5;--ui-muted:#b8b8b1;--ui-subtle:#8f9691;--ui-border:#303632;--ui-border-strong:#404741;
  --ui-accent:#79a6a2;--ui-accent-strong:#a7cbc7;--ui-accent-soft:#243431;--ui-warm:#d2a06f;--ui-good:#83ad83;
  --ui-shadow:0 12px 34px rgba(0,0,0,.22);--ui-shadow-hover:0 18px 44px rgba(0,0,0,.32)
}
.life18-theme-dark,.life18-theme-dark input,.life18-theme-dark textarea,.life18-theme-dark select{color-scheme:dark}

/* Sidebar */
.life18-sidebar{grid-column:1;grid-row:1 / -1;position:sticky;top:0;height:100vh;z-index:35;display:flex;flex-direction:column;gap:14px;padding:20px 16px;border-right:1px solid var(--ui-border);background:color-mix(in srgb,var(--ui-surface) 96%,transparent);backdrop-filter:blur(18px)}
.life18-sidebar .life18-brand{width:100%;padding:5px 8px 16px;justify-content:flex-start;border-bottom:1px solid var(--ui-border);border-radius:0;color:var(--ui-text)}
.life18-brand-copy{display:grid;text-align:left;line-height:1.12}.life18-brand-copy strong{font-size:20px;letter-spacing:-.02em}.life18-brand-copy small{margin-top:5px;font-size:9px;color:var(--ui-muted);font-weight:650}
.life18-mark{width:38px;height:38px;border-radius:13px;background:var(--ui-accent);color:#fff;box-shadow:none}
.life18-nav{position:static;display:grid;gap:5px;padding:0;background:transparent;border:0;overflow:visible}
.life18-nav button,.life18-sidebar-links button{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:11px 12px;border:0;border-radius:12px;background:transparent;color:var(--ui-text);font-weight:650;text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease,transform .15s ease}
.life18-nav button>span,.life18-sidebar-links button>span{width:22px;text-align:center;font-size:18px;color:var(--ui-accent)}
.life18-nav button b,.life18-sidebar-links button b{font:inherit;font-weight:700}
.life18-nav button:hover,.life18-sidebar-links button:hover{background:var(--ui-surface-3)}
.life18-nav button.active{background:var(--ui-accent-soft);color:var(--ui-accent-strong);box-shadow:inset 3px 0 0 var(--ui-accent)}
.life18-sidebar-divider{height:1px;background:var(--ui-border);margin:1px 8px}
.life18-sidebar-links{display:grid;gap:3px}
.life18-sidebar-new{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 14px;border:1px solid transparent;border-radius:14px;background:var(--ui-accent);color:#fff;font-weight:850;cursor:pointer;box-shadow:0 8px 20px color-mix(in srgb,var(--ui-accent) 22%,transparent)}
.life18-sidebar-new:hover{background:var(--ui-accent-strong);transform:translateY(-1px)}
.life18-sidebar-shortcuts{padding:13px;border:1px solid var(--ui-border);border-radius:17px;background:var(--ui-surface-2)}
.life18-sidebar-shortcuts header{display:grid;gap:2px;margin-bottom:10px}.life18-sidebar-shortcuts header strong{font-size:12px}.life18-sidebar-shortcuts header small{font-size:10px;color:var(--ui-muted)}
.life18-sidebar-shortcuts>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}.life18-sidebar-shortcuts button{display:grid;place-items:center;gap:4px;min-height:58px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);color:var(--ui-text);cursor:pointer}.life18-sidebar-shortcuts button:hover{border-color:var(--ui-border-strong);background:var(--ui-accent-soft)}.life18-sidebar-shortcuts button>span{font-size:18px;color:var(--ui-accent)}.life18-sidebar-shortcuts button small{font-size:9px;font-weight:750}
.life18-sidebar-privacy{margin-top:auto;display:flex;gap:9px;align-items:center;padding:12px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-surface-2)}.life18-sidebar-privacy>span{font-size:20px;color:var(--ui-good)}.life18-sidebar-privacy>div{display:grid;gap:2px}.life18-sidebar-privacy strong{font-size:11px}.life18-sidebar-privacy small{font-size:9px;color:var(--ui-muted)}

/* Topbar */
.life18-topbar{grid-column:2;grid-row:1;position:sticky;top:0;z-index:30;height:76px;padding:12px clamp(18px,3vw,42px);border-bottom:1px solid var(--ui-border);background:color-mix(in srgb,var(--ui-bg) 88%,transparent);backdrop-filter:blur(18px);display:flex;justify-content:space-between;gap:18px}
.life18-topbar>.life18-brand{display:none}
.life18-search-wrap{position:relative;flex:1;max-width:720px;margin:0}.life18-search-wrap>label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.life18-search-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);font-size:20px;color:var(--ui-muted);z-index:2}.life18-search-wrap>input{height:48px;width:100%;padding:0 76px 0 46px;border:1px solid var(--ui-border-strong);border-radius:17px;background:var(--ui-surface);color:var(--ui-text);box-shadow:0 3px 12px rgba(55,50,45,.025);outline:none}.life18-search-wrap>input:focus{border-color:var(--ui-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--ui-accent) 12%,transparent)}.life18-search-wrap>kbd{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:1px solid var(--ui-border);border-radius:8px;padding:5px 7px;background:var(--ui-surface-2);color:var(--ui-muted);font-size:10px;font-family:inherit}
.life18-search-results{top:56px;background:var(--ui-surface);border-color:var(--ui-border);box-shadow:var(--ui-shadow-hover)}.life18-search-results button{background:transparent;color:var(--ui-text)}.life18-search-results button:hover{background:var(--ui-surface-3)}.life18-search-results span,.life18-search-results small{color:var(--ui-muted)}
.life18-top-actions{display:flex;align-items:center;gap:9px}.life18-theme-toggle,.life18-icon-button{height:42px;border:1px solid var(--ui-border);border-radius:13px;background:var(--ui-surface);color:var(--ui-text);cursor:pointer}.life18-theme-toggle{display:flex;align-items:center;gap:7px;padding:0 12px}.life18-theme-toggle span{font-size:17px;color:var(--ui-warm)}.life18-theme-toggle b{font-size:11px}.life18-icon-button{width:42px;font-size:17px}.life18-theme-toggle:hover,.life18-icon-button:hover{background:var(--ui-surface-3)}
.life18-profile-chip{display:flex;align-items:center;gap:9px;padding:5px 10px 5px 5px;border:1px solid var(--ui-border);border-radius:999px;background:var(--ui-surface)}.life18-profile-chip>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--ui-accent);color:#fff;font-weight:850}.life18-profile-chip>div{display:grid;line-height:1.05}.life18-profile-chip small{font-size:9px;color:var(--ui-muted)}.life18-profile-chip strong{font-size:11px}

/* Main content rhythm */
.life18-shell>.life18-page,.life18-shell>.life18-alert,.life18-shell>.life18-runtime-banner,.life18-shell>.life18-footer{grid-column:2}
.life18-page{width:min(100%,1460px);max-width:none;margin:0 auto;padding:28px clamp(18px,3vw,42px) 74px}
.life18-runtime-banner{margin:14px clamp(18px,3vw,42px) 0;border:1px solid var(--ui-border);background:var(--ui-surface-2);color:var(--ui-muted);border-radius:14px;padding:8px 12px;box-shadow:none}.life18-runtime-banner strong{color:var(--ui-text)}
.life18-alert{margin:12px clamp(18px,3vw,42px) 0;border-radius:14px}
.life18-hero{padding:24px 26px;margin-bottom:18px;border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);box-shadow:var(--ui-shadow)}.life18-hero h1{font-size:clamp(28px,3vw,42px);letter-spacing:-.035em;color:var(--ui-text);margin:4px 0 8px}.life18-hero p{max-width:900px;color:var(--ui-muted);font-size:14px;line-height:1.6}.life18-kicker{color:var(--ui-accent);font-weight:850;letter-spacing:.075em}
.life18-section-head{margin:28px 0 12px;padding:0 3px}.life18-section-head h2{margin:3px 0 0;font-size:21px;letter-spacing:-.02em;color:var(--ui-text)}.life18-section-head>span,.life18-head-tools>span{color:var(--ui-muted);font-size:11px}
.life18-primary{background:var(--ui-accent);border-color:var(--ui-accent);color:#fff;border-radius:12px}.life18-primary:hover{background:var(--ui-accent-strong);border-color:var(--ui-accent-strong)}
.life18-secondary,.life18-refresh{background:var(--ui-surface);border-color:var(--ui-border-strong);color:var(--ui-accent-strong);border-radius:12px}.life18-secondary:hover,.life18-refresh:hover{background:var(--ui-accent-soft)}.life18-link,.life18-quiet{color:var(--ui-accent)}

/* Common tile language across every page */
.life18-capture,.life18-conversation-native,.life18-context-card,.life18-empty,.life18-panel,.life18-day-card,.life18-setting-card,.life18-guide-card,.life18-glossary-grid article,.life18-feature-directory button,.life18-me-shortcuts button,.life18-agent-workspace,.life18-proposal-card,.life18-rhythm-card,.life18-summary-grid>article,.life18-week-grid article,.life18-portrait-card,.life18-experiment-mini,.life18-experiment-card,.life18-experiment-builder,.life18-experiment-review,.life18-domain-grid article,.life18-link-grid article,.life18-trajectory-grid article,.life18-template-grid article,.life18-wellbeing-grid article,.life18-shared-stats article,.life18-wellbeing-overview article,.life18-shared-list article,.life18-health-card,.life18-health-record-form,.life18-health-record-list article,.life18-timeline article,.life18-nutrition-builder>article,.life18-meal-grid article,.life18-pilot-grid article,.life18-pilot-plan article,.life18-guide-callouts article,.life18-consent-grid article,.life18-couple-boundaries article{
  background:var(--ui-surface)!important;border-color:var(--ui-border)!important;color:var(--ui-text)!important;border-radius:var(--ui-radius-sm)!important;box-shadow:var(--ui-shadow)!important
}
.life18-capture:hover,.life18-context-card:hover,.life18-day-card:hover,.life18-setting-card:hover,.life18-guide-card:hover,.life18-feature-directory button:hover,.life18-me-shortcuts button:hover,.life18-agent-card:hover,.life18-proposal-card:hover,.life18-rhythm-card:hover,.life18-health-card:hover,.life18-template-grid article:hover{box-shadow:var(--ui-shadow-hover)!important;border-color:var(--ui-border-strong)!important}
.life18-shell p,.life18-shell small,.life18-shell em,.life18-shell .life18-panel p,.life18-shell .life18-agent-card p,.life18-shell .life18-health-record-list p,.life18-shell .life18-timeline p{color:var(--ui-muted)}
.life18-shell h1,.life18-shell h2,.life18-shell h3,.life18-shell strong{color:var(--ui-text)}
.life18-shell input,.life18-shell textarea,.life18-shell select{border-color:var(--ui-border-strong)!important;background:var(--ui-surface)!important;color:var(--ui-text)!important;border-radius:12px!important}.life18-shell input::placeholder,.life18-shell textarea::placeholder{color:var(--ui-subtle)}
.life18-shell input:focus,.life18-shell textarea:focus,.life18-shell select:focus{outline:none;border-color:var(--ui-accent)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--ui-accent) 12%,transparent)!important}
.life18-segment{background:var(--ui-bg-soft);border:1px solid var(--ui-border);border-radius:12px;padding:3px}.life18-segment button{color:var(--ui-muted);border-radius:9px}.life18-segment button.active{background:var(--ui-surface);color:var(--ui-accent-strong);box-shadow:0 2px 8px rgba(0,0,0,.06)}
.life18-toggle{background:var(--ui-surface-2);border-color:var(--ui-border-strong);color:var(--ui-muted)}.life18-toggle.active{background:var(--ui-accent);border-color:var(--ui-accent);color:#fff}

/* Quick dashboard */
.life18-quick-board{margin:18px 0 22px;padding:18px;border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);box-shadow:var(--ui-shadow)}.life18-quick-board>.life18-section-head{margin:0 0 12px}.life18-quick-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.life18-quick-grid button{min-height:96px;display:grid;place-items:center;text-align:center;gap:4px;padding:12px 8px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-surface-2);color:var(--ui-text);cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease}.life18-quick-grid button:hover{transform:translateY(-2px);background:var(--ui-accent-soft);border-color:var(--ui-border-strong)}.life18-quick-grid button>span{font-size:24px;color:var(--ui-accent)}.life18-quick-grid button strong{font-size:12px}.life18-quick-grid button small{font-size:10px;color:var(--ui-muted)}

/* Agents */
.life18-agent-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.life18-agent-card,.life18-agent-card.agent-psy,.life18-agent-card.agent-health,.life18-agent-card.agent-nutrition,.life18-agent-card.agent-home{min-height:430px;background:var(--ui-surface);border-color:var(--ui-border);border-radius:18px;box-shadow:var(--ui-shadow);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.life18-agent-card:hover{transform:translateY(-3px)}.life18-agent-card.selected{border-color:var(--ui-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-accent) 16%,transparent),var(--ui-shadow-hover)}
.life18-agent-card-head{height:205px;min-height:205px;background:var(--ui-bg-soft)}.life18-agent-card-head>img{height:205px;object-fit:cover;object-position:center 30%}.life18-agent-card>strong{font-size:21px}.life18-agent-card>small{color:var(--ui-accent)}.life18-selected-agent img{border-color:var(--ui-border)}
.life18-agent-subjects button,.life18-program-grid article,.life18-memory-chip{background:var(--ui-surface-2)!important;border-color:var(--ui-border)!important;color:var(--ui-text)!important}.life18-memory-chip.hypothesis{background:color-mix(in srgb,var(--ui-warm) 10%,var(--ui-surface))!important}

/* Moi / Histoire / Santé */
.life18-me-shortcuts{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.life18-me-shortcuts button{min-height:112px;text-align:left;padding:16px}.life18-me-shortcuts button>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--ui-accent-soft);color:var(--ui-accent-strong);font-weight:900}.life18-me-shortcuts button strong{margin-top:8px}.life18-focus-card,.life18-onboarding-card,.life18-mental-load-card,.life18-history360,.life18-health-records{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface)!important;box-shadow:var(--ui-shadow)}
.life18-history-toolbar,.life18-life-chapter{background:var(--ui-surface-2)!important;border-color:var(--ui-border)!important}.life18-history-periods article{background:var(--ui-surface)!important}.life18-life-chapter{top:96px}.life18-health-records{padding:20px}.life18-health-trends{gap:11px}.life18-health-card polyline{stroke:var(--ui-accent)}
.life18-progress,.life18-progress::-webkit-progress-bar{background:var(--ui-bg-soft)}.life18-progress::-webkit-progress-value,.life18-progress::-moz-progress-bar{background:var(--ui-accent)}

/* Couple / Famille / nutrition */
.life18-couple-consent,.life18-privacy-wall,.life18-privacy-center,.life18-transparency,.life18-pilot-note,.life18-settings-note{background:var(--ui-accent-soft)!important;border-color:var(--ui-border)!important;color:var(--ui-text)!important}.life18-shared-selector button,.life18-plan-tabs button,.life18-shopping-list button{background:var(--ui-surface)!important;border-color:var(--ui-border)!important;color:var(--ui-text)!important}.life18-shared-selector button.active,.life18-plan-tabs button.active{background:var(--ui-accent)!important;border-color:var(--ui-accent)!important;color:#fff!important}.life18-shared-capture,.life18-nutrition-builder,.life18-nutrition-inline{background:var(--ui-surface)!important;border-color:var(--ui-border)!important}.life18-meal-grid article.pleasure{background:color-mix(in srgb,var(--ui-warm) 8%,var(--ui-surface))!important;border-color:color-mix(in srgb,var(--ui-warm) 25%,var(--ui-border))!important}

/* Settings */
.life18-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.life18-setting-card{min-height:170px;align-items:flex-start}.life18-feature-directory{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.life18-feature-directory button{min-height:128px;padding:16px}.life18-guide-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.life18-glossary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}

/* Dialogs / bridges */
.life18-modal-backdrop,.life18-orchestrator-backdrop,.life18-bridge-backdrop{background:rgba(10,14,13,.62);backdrop-filter:blur(10px)}.life18-modal,.life18-orchestrator,.life18-bridge{background:var(--ui-surface)!important;border-color:var(--ui-border)!important;color:var(--ui-text)!important;box-shadow:0 24px 80px rgba(0,0,0,.28)}.life18-modal-note,.life18-mental-result,.life18-context-preview,.life18-assistant-import{background:var(--ui-surface-2)!important;border-color:var(--ui-border)!important;color:var(--ui-text)!important}.life18-bridge-frame-wrap{background:var(--ui-bg-soft);border-color:var(--ui-border)}

/* Dark mode hardening for legacy hard-coded surfaces */
.life18-theme-dark .life18-summary-grid>article,.life18-theme-dark .life18-week-grid article,.life18-theme-dark .life18-portrait-stats article,.life18-theme-dark .life18-portrait-card,.life18-theme-dark .life18-domain-grid article,.life18-theme-dark .life18-link-grid article,.life18-theme-dark .life18-shared-selector button,.life18-theme-dark .life18-shared-stats article,.life18-theme-dark .life18-wellbeing-overview article,.life18-theme-dark .life18-shared-capture,.life18-theme-dark .life18-shared-list article,.life18-theme-dark .life18-health-card,.life18-theme-dark .life18-history-toolbar,.life18-theme-dark .life18-timeline article,.life18-theme-dark .life18-life-chapter,.life18-theme-dark .life18-health-records,.life18-theme-dark .life18-health-record-form,.life18-theme-dark .life18-health-record-list article{background:var(--ui-surface)!important;border-color:var(--ui-border)!important;color:var(--ui-text)!important}.life18-theme-dark .life18-domain-grid article>div small,.life18-theme-dark .life18-program-grid article,.life18-theme-dark .life18-shopping-list button{background:var(--ui-surface-2)!important;color:var(--ui-muted)!important}.life18-theme-dark .life18-search-group+.life18-search-group{border-color:var(--ui-border)}

/* Responsive */
@media(max-width:1280px){.life18-agent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.life18-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.life18-me-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}.life18-feature-directory,.life18-guide-grid,.life18-glossary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.life18-shell{display:block}.life18-sidebar{position:sticky;top:0;height:auto;min-height:0;padding:9px 12px;flex-direction:row;align-items:center;border-right:0;border-bottom:1px solid var(--ui-border);overflow-x:auto}.life18-sidebar .life18-brand{width:auto;min-width:180px;border:0;padding:0 8px 0 0}.life18-brand-copy small{display:none}.life18-sidebar-divider,.life18-sidebar-links,.life18-sidebar-new,.life18-sidebar-shortcuts,.life18-sidebar-privacy{display:none}.life18-nav{display:flex;flex:1;min-width:max-content}.life18-nav button{width:auto;min-width:auto;padding:9px 11px}.life18-nav button>span{width:auto}.life18-topbar{top:58px;height:68px;padding:9px 14px}.life18-page{padding-top:22px}.life18-shell>.life18-page,.life18-shell>.life18-alert,.life18-shell>.life18-runtime-banner,.life18-shell>.life18-footer{grid-column:auto}.life18-profile-chip>div{display:none}.life18-theme-toggle b{display:none}.life18-agent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.life18-settings-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.life18-sidebar .life18-brand{min-width:44px}.life18-brand-copy{display:none}.life18-mark{width:36px;height:36px}.life18-nav button b{font-size:11px}.life18-nav button>span{display:none}.life18-topbar{top:55px}.life18-search-wrap>kbd{display:none}.life18-search-wrap>input{padding-right:14px}.life18-top-actions{gap:5px}.life18-profile-chip{display:none}.life18-page{padding-left:12px;padding-right:12px}.life18-agent-grid,.life18-quick-grid,.life18-me-shortcuts,.life18-feature-directory,.life18-guide-grid,.life18-glossary-grid,.life18-settings-grid{grid-template-columns:1fr}.life18-agent-card-head,.life18-agent-card-head>img{height:230px;min-height:230px}.life18-hero{padding:20px}.life18-quick-board{padding:14px}.life18-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Life360 AI V18-W — Anamnèse 360 approfondie, requise sans blocage */
.life18-anamnesis-required{grid-column:2;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(220px,.7fr) auto;align-items:center;gap:18px;margin:18px 24px 0;padding:16px 18px;border:1px solid color-mix(in srgb,var(--ui-accent) 28%,var(--ui-border));border-radius:18px;background:linear-gradient(120deg,color-mix(in srgb,var(--ui-accent-soft) 72%,var(--ui-surface)),var(--ui-surface));box-shadow:var(--ui-shadow)}
.life18-anamnesis-required-main{display:grid;gap:4px}.life18-anamnesis-required-main>strong{font-size:18px;color:var(--ui-text)}.life18-anamnesis-required-main p{margin:0;color:var(--ui-muted);line-height:1.48;font-size:13px}.life18-anamnesis-required-progress{display:grid;gap:6px}.life18-anamnesis-required-progress .life18-progress{width:100%;margin:0}.life18-anamnesis-required-progress small{color:var(--ui-muted);line-height:1.35}
.life18-anamnesis-ai-modal{width:min(1180px,96vw);max-height:94vh}.life18-anamnesis-statusline{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;gap:12px;align-items:center;margin:18px 0 8px;padding:12px 14px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-surface-2)}.life18-anamnesis-statusline>div{display:grid}.life18-anamnesis-statusline>div strong{font-size:20px}.life18-anamnesis-statusline>div span,.life18-anamnesis-statusline small{color:var(--ui-muted);font-size:11px}.life18-anamnesis-statusline .life18-progress{width:100%;margin:0}
.life18-anamnesis-ai-grid{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(0,1.7fr);gap:14px;align-items:start}.life18-anamnesis-domain-card,.life18-anamnesis-conversation,.life18-anamnesis-review,.life18-anamnesis-final>article,.life18-anamnesis-offline{border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-surface-2);padding:16px}.life18-anamnesis-domain-card{position:sticky;top:0;display:grid;gap:9px}.life18-anamnesis-domain-card h3,.life18-anamnesis-review h3,.life18-anamnesis-final h3{margin:0}.life18-anamnesis-domain-card p,.life18-anamnesis-review p,.life18-anamnesis-final p,.life18-anamnesis-offline p{margin:0;color:var(--ui-muted);line-height:1.5}.life18-anamnesis-guide{display:flex;flex-wrap:wrap;gap:7px}.life18-anamnesis-guide span{padding:6px 9px;border-radius:999px;background:var(--ui-accent-soft);color:var(--ui-accent-strong);font-size:11px;font-weight:700}.life18-anamnesis-domain-card>small{color:var(--ui-muted);line-height:1.45}
.life18-anamnesis-conversation{padding:0;overflow:hidden;background:var(--ui-surface)}.life18-anamnesis-chat-head{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 15px;border-bottom:1px solid var(--ui-border);background:var(--ui-surface-2)}.life18-anamnesis-chat-head>div{display:grid;gap:2px}.life18-anamnesis-chat-head small{color:var(--ui-muted)}.life18-anamnesis-chat-head>span{padding:5px 8px;border-radius:999px;font-size:10px;font-weight:850}.life18-anamnesis-chat-head>span.ready{background:#e7f2eb;color:#356747}.life18-theme-dark .life18-anamnesis-chat-head>span.ready{background:#203b2c;color:#b9e0c3}.life18-anamnesis-chat-head>span.offline{background:color-mix(in srgb,var(--ui-warm) 14%,var(--ui-surface));color:var(--ui-warm)}
.life18-anamnesis-chat{min-height:300px;max-height:46vh;overflow:auto;padding:16px;display:grid;gap:10px;align-content:start}.life18-anamnesis-message{max-width:86%;padding:11px 13px;border-radius:15px;border:1px solid var(--ui-border);background:var(--ui-surface-2)}.life18-anamnesis-message.assistant{justify-self:start;border-top-left-radius:5px}.life18-anamnesis-message.user{justify-self:end;background:var(--ui-accent-soft);border-color:color-mix(in srgb,var(--ui-accent) 18%,var(--ui-border));border-top-right-radius:5px}.life18-anamnesis-message small{font-weight:850;color:var(--ui-accent)}.life18-anamnesis-message p{white-space:pre-wrap;margin:4px 0 0;color:var(--ui-text);line-height:1.55}.life18-anamnesis-message.thinking{opacity:.72}.life18-anamnesis-empty{display:grid;gap:4px;padding:18px;border:1px dashed var(--ui-border-strong);border-radius:14px;color:var(--ui-muted)}
.life18-anamnesis-composer{border-top:1px solid var(--ui-border);padding:14px;display:grid;gap:10px}.life18-anamnesis-composer label,.life18-anamnesis-offline label{display:grid;gap:6px}.life18-anamnesis-composer label>span,.life18-anamnesis-offline label>span{font-weight:800}.life18-anamnesis-composer textarea,.life18-anamnesis-review textarea,.life18-anamnesis-final textarea,.life18-anamnesis-offline textarea{width:100%;resize:vertical;border:1px solid var(--ui-border-strong);border-radius:14px;background:var(--ui-surface);color:var(--ui-text);padding:12px;line-height:1.5}.life18-anamnesis-composer>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.life18-anamnesis-composer>div small{color:var(--ui-muted);line-height:1.35}.life18-anamnesis-review,.life18-anamnesis-final{margin-top:14px;display:grid;gap:12px}.life18-anamnesis-review{background:color-mix(in srgb,var(--ui-accent-soft) 45%,var(--ui-surface))}.life18-anamnesis-review-actions{display:flex;justify-content:flex-end;gap:10px}.life18-anamnesis-final>article{background:var(--ui-surface-2)}.life18-anamnesis-offline{display:grid;gap:12px;margin:16px}
@media(max-width:980px){.life18-anamnesis-required{grid-column:auto;grid-template-columns:1fr;margin:14px}.life18-anamnesis-ai-grid{grid-template-columns:1fr}.life18-anamnesis-domain-card{position:static}.life18-anamnesis-statusline{grid-template-columns:1fr}.life18-anamnesis-statusline>small{text-align:left}.life18-anamnesis-chat{max-height:40vh}}
@media(max-width:650px){.life18-anamnesis-ai-modal{width:100%;padding:14px}.life18-anamnesis-progress{gap:5px}.life18-anamnesis-progress button{width:28px;height:28px}.life18-anamnesis-message{max-width:96%}.life18-anamnesis-composer>div,.life18-anamnesis-review-actions{align-items:stretch;flex-direction:column}.life18-anamnesis-required{margin:10px 12px 0}}
.life18-nav button{position:relative}.life18-nav-required{margin-left:auto;min-width:27px;height:18px;padding:0 5px;border-radius:999px;background:var(--ui-warm);color:#fff;font-size:9px;font-style:normal;display:grid;place-items:center;font-weight:900}.life18-nav button.active .life18-nav-required{background:#fff;color:var(--ui-accent-strong)}

/* Life360 AI V18-X — Mistral EU router & budget */
.life18-ai-budget-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 14px}
.life18-ai-budget-card{align-items:flex-start;gap:16px}
.life18-ai-budget-card .life18-progress{width:100%;margin-top:10px}
.life18-ai-state{display:inline-flex;align-items:center;justify-content:center;min-width:74px;padding:7px 10px;border-radius:999px;font-size:.78rem;font-weight:800;border:1px solid var(--ui-border);background:var(--ui-surface-2)}
.life18-ai-state.ok{color:var(--ui-accent-strong);border-color:color-mix(in srgb,var(--ui-accent) 35%,var(--ui-border));background:color-mix(in srgb,var(--ui-accent) 10%,var(--ui-surface))}
.life18-ai-state.warn{color:var(--ui-text);background:var(--ui-surface-2)}
.life18-ai-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 18px}
.life18-ai-breakdown article{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--ui-border);border-radius:16px;background:var(--ui-surface)}
.life18-ai-breakdown strong{font-size:.82rem}.life18-ai-breakdown span{font-size:.85rem;overflow-wrap:anywhere}.life18-ai-breakdown small{color:var(--ui-muted)}
@media(max-width:900px){.life18-ai-budget-grid,.life18-ai-breakdown{grid-template-columns:1fr}}
