:root{
  --bg:#f6f5f2;--panel:#fbfaf8;--card:#ffffff;--line:#e6e3dc;--line2:#f0eee9;
  --text:#1c1d1f;--muted:#5f6166;--faint:#6b6d72;--accent:#0e6b58;--accent-soft:#e8f3ef;--warn-bg:#fdf1e8;--warn:#7a3b10;--error:#b3261e;
  --display:'Fraunces',Georgia,serif;--sans:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}
a{color:var(--accent)}a:hover{color:#0a4f41}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer}
.hidden{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- auth ---------- */
.auth{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px 16px}
.auth-card{width:100%;max-width:420px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:32px 28px;display:flex;flex-direction:column;gap:18px}
.brand{display:flex;align-items:center;gap:10px}
.brand-mark{width:34px;height:34px;border-radius:10px;background:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.brand-name{font-family:var(--display);font-size:22px;font-weight:600}
.auth h1{margin:0;font-family:var(--display);font-size:28px;font-weight:600}
.auth p.lead{margin:0;color:var(--muted);line-height:1.5}
.tabs{display:grid;grid-template-columns:1fr 1fr;background:#efede8;border-radius:12px;padding:4px}
.tabs button{border:0;background:transparent;border-radius:9px;padding:10px;font-weight:600;color:var(--muted);min-height:44px}
.tabs button[aria-selected="true"]{background:var(--card);color:var(--text);box-shadow:0 1px 2px rgba(0,0,0,.06)}
form.stack{display:flex;flex-direction:column;gap:14px}
.field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}
.field input{font-weight:400;min-height:48px;padding:0 14px;border:1px solid #d9d5cc;border-radius:12px;background:#fff;font-size:15px}
.field input:focus,.composer input:focus{outline:2px solid var(--accent);outline-offset:1px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45;color:var(--muted)}
.check input{margin-top:3px;width:18px;height:18px;flex-shrink:0}
.btn{min-height:48px;padding:0 18px;border-radius:12px;border:1px solid transparent;background:var(--accent);color:#fff;font-weight:700;font-size:15px}
.btn:hover{background:#0a5a4a}
.btn.secondary{background:var(--card);color:var(--accent);border-color:#cfd8d4}
.btn.danger{background:var(--card);color:var(--error);border-color:#e7c3c0}
.btn[disabled]{opacity:.6;cursor:default}
.error{color:var(--error);font-size:14px;min-height:1em}
.fine{font-size:12px;color:var(--faint);text-align:center}

/* ---------- app shell ---------- */
.shell{height:100%;display:grid;grid-template-columns:300px minmax(0,1fr) 380px}
.sidebar{display:flex;flex-direction:column;gap:18px;padding:24px 18px;border-right:1px solid var(--line);background:var(--panel);min-height:0}
.section-label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);padding:0 8px}
.bot-list{display:flex;flex-direction:column;gap:4px;overflow:auto;min-height:0}
.bot-row{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;padding:10px 12px;border-radius:14px;border:1px solid transparent;background:transparent;text-align:left}
.bot-row:hover{background:#f1efea}
.bot-row[aria-current="true"]{background:var(--card);border-color:#e0ddd5}
.avatar{width:40px;height:40px;border-radius:13px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:17px;flex-shrink:0}
.avatar.lg{width:46px;height:46px;border-radius:15px;font-size:19px}
.bot-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex-grow:1}
.bot-top{display:flex;justify-content:space-between;gap:8px}
.bot-name{font-size:15px;font-weight:600}
.bot-time{font-size:12px;color:var(--faint)}
.bot-last{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dot{width:8px;height:8px;border-radius:4px;background:#d9621e;flex-shrink:0}
.me-card{margin-top:auto;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:var(--card);border:1px solid var(--line);text-align:left;width:100%;min-height:56px}
.me-initials{width:34px;height:34px;border-radius:17px;background:var(--text);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}
.me-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.me-name{font-size:14px;font-weight:600}
.me-sub{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.chat{display:flex;flex-direction:column;min-width:0;min-height:0}
.chat-head{display:flex;align-items:center;gap:14px;padding:18px 28px;border-bottom:1px solid var(--line);background:var(--card)}
.chat-title{display:flex;flex-direction:column;gap:2px;flex-grow:1;min-width:0}
.chat-title strong{font-size:18px}
.chat-title span{font-size:13px;color:var(--muted)}
.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:13px;font-weight:600;white-space:nowrap}
.messages{flex-grow:1;overflow:auto;padding:24px 28px;display:flex;flex-direction:column;gap:14px}
.msg{display:flex;flex-direction:column;gap:5px;max-width:72%}
.msg.me{align-self:flex-end;align-items:flex-end}
.bubble{padding:13px 16px;border-radius:18px;font-size:15px;line-height:1.5;background:var(--card);border:1px solid var(--line);border-bottom-left-radius:6px;overflow-wrap:anywhere}
.msg.me .bubble{background:var(--accent);color:#fff;border-color:var(--accent);border-bottom-left-radius:18px;border-bottom-right-radius:6px}
.bubble p{margin:0 0 6px}.bubble p:last-child{margin:0}
.bubble ul{margin:4px 0;padding-left:20px}
.msg time{font-size:12px;color:var(--faint)}
.typing .bubble{color:var(--muted)}
.empty{margin:auto;max-width:360px;text-align:center;color:var(--muted);line-height:1.5}
.suggestions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:12px}
.suggestions button{min-height:44px;padding:0 14px;border-radius:12px;border:1px solid #cfd8d4;background:var(--card);color:var(--accent);font-weight:600;font-size:14px}
.composer{display:flex;gap:12px;padding:14px 28px 22px}
.composer input{flex-grow:1;min-height:52px;padding:0 18px;border-radius:16px;border:1px solid #e0ddd5;background:var(--card);font-size:15px}
.send{width:52px;height:52px;border-radius:16px;border:0;background:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}

.dash{display:flex;flex-direction:column;gap:14px;padding:24px 22px;border-left:1px solid var(--line);background:var(--panel);overflow:auto;min-height:0}
.dash-head{display:flex;align-items:baseline;justify-content:space-between}
.dash-head h2{margin:0;font-family:var(--display);font-size:24px;font-weight:600}
.dash-head span{font-size:13px;color:var(--muted)}
.card{padding:18px;border-radius:18px;background:var(--card);border:1px solid var(--line)}
.recovery{display:flex;align-items:center;gap:16px}
.recovery .label{font-size:13px;font-weight:600;color:var(--muted)}
.recovery .big{font-size:20px;font-weight:700}
.recovery .hint{font-size:13px;color:var(--muted);line-height:1.4}
.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tile{padding:14px 16px;border-radius:16px;background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.tile .t-label{font-size:12px;font-weight:600;color:var(--muted)}
.tile .t-value{font-size:24px;font-weight:700}
.tile .t-unit{font-size:13px;color:var(--muted);font-weight:500;margin-left:3px}
.tile .t-src{font-size:12px;color:var(--faint)}
.chart-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
.chart-head strong{font-size:14px}.chart-head span{font-size:12px;color:var(--faint)}
.bars{display:flex;align-items:flex-end;gap:10px;height:110px}
.bar-col{flex-grow:1;display:flex;flex-direction:column;align-items:center;gap:6px}
.bar{width:100%;border-radius:6px;background:#cfe3dc;min-height:3px}
.bar.today{background:var(--accent)}
.bar-col span{font-size:11px;color:var(--faint)}
.notice{padding:14px 16px;border-radius:14px;background:var(--warn-bg);color:var(--warn);font-size:13px;line-height:1.45}
.notice a{color:var(--warn);font-weight:700}

/* ---------- settings ---------- */
.overlay{position:fixed;inset:0;background:rgba(28,29,31,.35);display:flex;justify-content:flex-end;z-index:10}
.sheet{width:100%;max-width:520px;height:100%;background:var(--bg);overflow:auto;padding:24px;display:flex;flex-direction:column;gap:16px}
.sheet-head{display:flex;align-items:center;justify-content:space-between}
.sheet-head h2{margin:0;font-family:var(--display);font-size:26px;font-weight:600}
.icon-btn{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--card);display:flex;align-items:center;justify-content:center}
.sheet .card{display:flex;flex-direction:column;gap:12px}
.sheet h3{margin:0;font-size:16px}
.sheet p{margin:0;font-size:14px;color:var(--muted);line-height:1.5}
.status{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600}
.status.ok{color:var(--accent)}.status.off{color:var(--muted)}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.code{font-family:ui-monospace,Menlo,monospace;font-size:13px;background:#f1efea;border-radius:10px;padding:10px 12px;word-break:break-all;user-select:all}
.kv{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px;align-items:center;font-size:13px}
.select{min-height:44px;border:1px solid #d9d5cc;border-radius:12px;padding:0 10px;background:#fff}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--text);color:#fff;padding:12px 18px;border-radius:12px;font-size:14px;z-index:20;max-width:calc(100% - 32px)}
.legal main{max-width:760px;margin:0 auto;padding:32px 16px 64px;line-height:1.6}
.legal h1{font-family:var(--display)}
.mobile-nav{display:none}

/* ---------- responsive ---------- */
@media (max-width:1180px){ .shell{grid-template-columns:280px minmax(0,1fr)} .dash{display:none} .shell.show-dash .dash{display:flex;position:fixed;inset:0 0 0 auto;width:min(420px,100%);z-index:5;box-shadow:-8px 0 24px rgba(0,0,0,.08)} .dash-toggle{display:inline-flex!important} }
@media (max-width:760px){
  .shell{grid-template-columns:minmax(0,1fr);padding-bottom:64px}
  .sidebar,.chat,.dash,.shell .body-view,.shell .labs-view{display:none}
  .shell[data-view="bots"] .sidebar,.shell[data-view="chat"] .chat,.shell[data-view="dash"] .dash,.shell[data-view="body"] .body-view,.shell[data-view="labs"] .labs-view{display:flex}
  .shell.show-dash .dash{position:static;width:auto;box-shadow:none}
  .dash-toggle{display:none!important}
  .messages{padding:16px}.composer{padding:10px 16px 14px}.chat-head{padding:14px 16px}.msg{max-width:88%}
  .mobile-nav{display:grid;grid-template-columns:repeat(6,1fr);position:fixed;left:0;right:0;bottom:0;height:64px;background:var(--card);border-top:1px solid var(--line);z-index:6}
  .mobile-nav button{border:0;background:transparent;font-size:12px;font-weight:600;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}
  .mobile-nav button[aria-current="true"]{color:var(--accent)}
}
.dash-toggle{display:none}
a.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#fff}
a.btn:hover{color:#fff}
a.btn.secondary,a.btn.secondary:hover{color:var(--accent)}
.bar-col{max-width:44px}
.bars{justify-content:center}

/* Withings */
.section-head{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:4px 2px 10px}
.t-delta{font-size:12px;font-weight:600;color:var(--muted)}
.t-badge{align-self:flex-start;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;margin-top:2px}
.t-badge.good{background:#e3f3ea;color:#1e7a4d}.t-badge.mid{background:#fbf0d9;color:#8a5d06}.t-badge.bad{background:#f8e1df;color:#a02a24}
.line-chart{width:100%;height:auto;display:block;margin-top:8px}
.line-chart .grid{stroke:#ecebe6;stroke-width:1}
.line-chart .axis{font-size:10px;fill:#8d8a83}
.line-chart .ln{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.line-chart .l1{stroke:#2f6fdb}.line-chart .pt.l1{fill:#2f6fdb;stroke:none}
.line-chart .l2{stroke:#9ab8ec}.line-chart .pt.l2{fill:#9ab8ec;stroke:none}
.legend{display:inline-flex;align-items:center;gap:4px;font-size:12px}
.lg{display:inline-block;width:10px;height:3px;border-radius:2px;margin-left:6px}.lg.l1{background:#2f6fdb}.lg.l2{background:#9ab8ec}

/* ---------- Körper ---------- */
.nav-body{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:8px 12px;border-radius:14px;border:1px solid var(--line);background:var(--card);text-align:left}
.nav-body:hover{border-color:#cfc8e8}
.nav-body[aria-current="true"]{background:#f1effa;border-color:#cfc8e8}
.nav-ico{width:40px;height:40px;border-radius:13px;background:#ece9f8;color:#4b3fa0;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.nav-text{display:flex;flex-direction:column;gap:2px}.nav-title{font-size:15px;font-weight:600}.nav-sub{font-size:12px;color:var(--muted)}
.link-btn{border:0;background:none;color:var(--accent);font-weight:700;font-size:12px;text-transform:none;letter-spacing:0;padding:0 0 0 6px;min-height:24px}
.body-view{display:none;flex-direction:column;gap:16px;padding:24px 28px 40px;overflow:auto;min-height:0;min-width:0;background:linear-gradient(180deg,#f3f1fa 0,var(--bg) 340px)}
.shell[data-view="body"] .body-view{display:flex;grid-column:2/-1}
.shell[data-view="body"] .chat,.shell[data-view="body"] .dash{display:none}
.body-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.body-head h2{margin:0;font-family:var(--display);font-size:30px;font-weight:600}
.body-sub{margin:4px 0 0;color:var(--muted);font-size:14px}
.seg-toggle{display:inline-grid;grid-auto-flow:column;background:#e9e6f1;border-radius:12px;padding:4px;gap:2px}
.seg-toggle button{border:0;background:transparent;border-radius:9px;padding:0 16px;min-height:40px;font-weight:600;color:var(--muted)}
.seg-toggle button[aria-pressed="true"]{background:var(--card);color:var(--text);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.seg-toggle.small{position:absolute;top:14px;left:14px;z-index:3}
.seg-toggle.small button{min-height:36px;padding:0 14px;font-size:14px}
.body-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.day-nav{display:flex;align-items:center;gap:8px}
.day-nav .select{min-width:230px;background:var(--card)}
.day-nav .icon-btn{font-size:22px;line-height:1}.day-nav .icon-btn[disabled]{opacity:.35;cursor:default}
.range-nav{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips button{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);font-weight:600;font-size:14px;color:var(--muted)}
.chips button[aria-pressed="true"]{background:#3f3690;border-color:#3f3690;color:#fff}
.dates{display:flex;gap:8px}
.dates label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--muted)}
.dates input{min-height:40px;border:1px solid #d9d5cc;border-radius:10px;padding:0 8px;background:#fff}
.body-main{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:16px;align-items:start}
.body-stage-wrap{position:relative;padding:0;overflow:hidden;background:radial-gradient(120% 80% at 50% 30%,#ffffff 0,#f4f2fb 70%)}
.body-stage{position:relative;height:580px;cursor:grab;touch-action:pan-y;outline:none}
.body-stage.grabbing{cursor:grabbing}
.body-stage:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}
.body-stage canvas{display:block}
.body-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.body-lines path{fill:none;stroke:#8c86b8;stroke-width:1.2}
.body-lines circle{fill:#fff;stroke:#3f3690;stroke-width:2}
.body-lines .behind{opacity:.3}
.body-cards{position:absolute;inset:0;pointer-events:none;z-index:2}
.seg-card{position:absolute;left:0;top:0;min-width:112px;padding:9px 12px;border-radius:14px;background:rgba(255,255,255,.94);border:1px solid #e3e0ef;box-shadow:0 4px 14px rgba(40,30,90,.08);transition:opacity .2s;will-change:transform}
.seg-card.behind{opacity:.45}
.sc-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.sc-value{font-size:20px;font-weight:700;margin-top:2px}.sc-unit{font-size:12px;font-weight:600;color:var(--muted)}
.sc-delta{font-size:12px;font-weight:700;margin-top:1px;color:var(--muted)}
.seg-card.t-good .sc-delta,.tone-good{color:#1e7a4d}.seg-card.t-bad .sc-delta,.tone-bad{color:#b4502a}
.seg-card.t-good{border-left:4px solid #1e8e5a}.seg-card.t-bad{border-left:4px solid #d0643a}
.turn-row{display:flex;justify-content:center;gap:6px;padding:0 12px 10px}
.turn-row button{min-height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);font-size:13px;font-weight:600;color:var(--muted)}
.legend-row{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;padding:0 12px 14px;font-size:12px;color:var(--muted)}
.legend-row .muted{color:var(--faint)}
.lg-dot{display:inline-block;width:10px;height:10px;border-radius:5px;margin-right:5px;vertical-align:-1px}
.lg-dot.good{background:#1e8e5a}.lg-dot.bad{background:#d0643a}.lg-dot.flat{background:#b7b1e0}
.body-side{display:flex;flex-direction:column;gap:12px}
.body-tiles .t-delta{font-size:12px;font-weight:600;color:var(--muted)}
.body-nowebgl{padding:40px 16px}
.trend-title{margin:8px 0 0;font-size:16px}
.trend-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.trend-card .chart-head span{font-size:12px;color:var(--muted)}
.chart-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
@media (max-width:1180px){ .body-main{grid-template-columns:minmax(0,1fr)} }
@media (max-width:760px){
  .body-view{padding:16px 16px 32px}
  .body-head h2{font-size:26px}
  .body-stage{height:500px}.seg-toggle.small{top:10px;left:10px}
  .seg-card{min-width:0;padding:7px 9px}.sc-value{font-size:16px}.sc-label{font-size:10px}
  .day-nav{width:100%}.day-nav .select{flex:1;min-width:0}
  .dates{width:100%}.dates label{flex:1}.dates input{flex:1;min-width:0}
}

.head-controls{display:flex;gap:10px;flex-wrap:wrap}

/* ---------- Blutwerte ---------- */
.nav-labs .nav-ico{background:#dff1f8;color:#0b6e8f}
.nav-labs[aria-current="true"]{background:#eef8fc;border-color:#b9dfee}
.labs-view{display:none;flex-direction:column;gap:22px;padding:24px 28px 48px;overflow:auto;min-height:0;min-width:0;background:linear-gradient(180deg,#e6f4fa 0,#f3f8fa 420px,var(--bg) 900px);--ice:#0b6e8f;--ice2:#5ab8d9;--ice-soft:#dff1f8;--out:#f09a36;--out-soft:#fdf0e1}
.shell[data-view="labs"] .labs-view{display:flex;grid-column:2/-1}
.labs-view>*,.body-view>*{flex-shrink:0}
.shell[data-view="labs"] .chat,.shell[data-view="labs"] .dash{display:none}
.labs-view.drop{outline:3px dashed var(--ice2);outline-offset:-10px}
.lb-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:12px;align-items:stretch;min-height:540px;border-radius:28px;background:radial-gradient(90% 90% at 30% 35%,#ffffff 0,#e3f3f9 45%,#c7e6f2 100%);border:1px solid #cfe7f0;position:relative;overflow:hidden}
.lb-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-radial-gradient(circle at 30% 45%,rgba(11,110,143,.05) 0 1px,transparent 1px 34px)}
.lb-cloud{position:relative;height:100%;min-height:540px;cursor:grab;touch-action:pan-y}
.lb-hero-side{align-self:center}
.lb-cloud canvas{display:block}
.lb-spots{position:absolute;inset:0;pointer-events:none;z-index:2}
.lb-spot{position:absolute;left:0;top:0;pointer-events:auto;display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 8px;border-radius:999px;border:1px solid #cfe3ec;background:rgba(255,255,255,.88);font-size:12px;font-weight:700;color:#12465a;white-space:nowrap;box-shadow:0 4px 14px rgba(11,70,90,.1);transition:opacity .25s;min-height:28px}
.lb-spot.out{border-color:#f5c68f;color:#8a4a0c}
.lb-spot.active{outline:2px solid var(--ice)}
.lb-spot .lb-spot-dot{width:7px;height:7px;border-radius:4px;background:var(--ice2)}.lb-spot.out .lb-spot-dot{background:var(--out)}
.lb-spot.hidden-spot{opacity:0;pointer-events:none}
.lb-hero-side{position:relative;z-index:2;padding:28px 28px 28px 0;display:flex;flex-direction:column;gap:16px}
.lb-eyebrow{margin:0;font-family:ui-monospace,Menlo,monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#3f7f96}
.lb-title{margin:-6px 0 0;font-family:var(--display);font-size:52px;line-height:1;font-weight:600;color:#0d2f3c}
.lb-select{width:100%;max-width:100%;min-height:46px;border-radius:14px;border:1px solid #bcdbe7;background:rgba(255,255,255,.85);padding:0 12px;font-weight:600;color:#12465a}
.lb-score{display:flex;align-items:center;gap:18px}
.lb-ring-wrap{position:relative;width:150px;height:150px;flex-shrink:0}
.lb-ring{width:150px;height:150px}
.lb-ring .bg{fill:none;stroke:rgba(11,110,143,.12);stroke-width:10}
.lb-ring .seg{fill:none;stroke-width:10;stroke-linecap:round}
.lb-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.lb-ring-label strong{font-size:32px;font-weight:700;color:#0d2f3c;letter-spacing:-.02em}
.lb-ring-label span{font-size:11px;color:#3f6f80;max-width:90px;line-height:1.25}
.lb-stats{display:flex;flex-direction:column;gap:8px}
.lb-stat{display:flex;align-items:baseline;gap:8px}
.lb-stat strong{font-size:22px;min-width:30px}
.lb-stat span{font-size:13px;color:#3f6f80;font-weight:600}
.lb-stat.optimal strong{color:var(--ice)}.lb-stat.normal strong{color:#2a93b8}.lb-stat.out strong{color:#d0791c}
.lb-strip{display:flex;gap:4px;height:22px}
.lb-strip-seg{display:flex;align-items:center;justify-content:space-evenly;border-radius:7px;padding:0 6px;min-width:26px}
.lb-strip-seg i{width:4px;height:4px;border-radius:2px;background:rgba(255,255,255,.85)}
.lb-strip-seg.out{background:var(--out)}.lb-strip-seg.normal{background:var(--ice2)}.lb-strip-seg.optimal{background:var(--ice)}
.lb-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-family:ui-monospace,Menlo,monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#3f6f80}
.lb-legend i{display:inline-block;width:8px;height:8px;border-radius:4px;margin-right:6px}
.lb-legend i.optimal{background:var(--ice)}.lb-legend i.normal{background:var(--ice2)}.lb-legend i.out{background:var(--out)}
.lb-actions{display:flex;gap:10px;flex-wrap:wrap}
.lb-upload-btn{background:#0d4f66}.lb-upload-btn:hover{background:#0a3f52}
.lb-section{display:flex;flex-direction:column;gap:12px}
.lb-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.lb-h h3{margin:0;font-size:20px;display:flex;align-items:center;gap:8px;color:#0d2f3c}
.lb-h > span{font-size:13px;color:var(--muted)}
.lb-attn{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(270px,300px);gap:12px;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x mandatory}
.lb-attn .lb-card{scroll-snap-align:start}
.lb-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.lb-cat{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;align-items:center;padding:14px;border-radius:18px;border:1px solid #d9e9ef;background:rgba(255,255,255,.9);text-align:left;min-height:84px}
.lb-cat:hover{border-color:#a9d4e4}
.lb-cat.active{border-color:var(--ice);box-shadow:0 0 0 2px rgba(11,110,143,.18)}
.lb-cat-icon{grid-row:span 2;width:46px;height:46px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#e9f7fc,#c9e8f3);color:var(--ice)}
.lb-cat.has-out .lb-cat-icon{background:linear-gradient(145deg,#fff4e6,#fbd9ae);color:#b3620f}
.lb-cat-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.lb-cat-text strong{font-size:14px}.lb-cat-text span{font-size:12px;color:var(--muted)}
.lb-cat-bar{display:flex;gap:2px;flex-wrap:wrap}.lb-cat-bar i{width:10px;height:4px;border-radius:2px}
.lb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-bottom:10px}
.lb-card{display:flex;flex-direction:column;gap:12px;padding:16px 18px;border-radius:20px;background:var(--card);border:1px solid #e0ecf1;text-align:left;min-width:0;transition:transform .15s,box-shadow .15s}
.lb-card:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(11,70,90,.08)}
.lb-card.is-out{border-color:#f6d4ab;background:linear-gradient(180deg,#fffaf3,#fff)}
.lb-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.lb-card-name{display:flex;flex-direction:column;gap:2px;min-width:0}
.lb-card-name strong{font-size:15px;line-height:1.3}
.lb-card-date{font-size:11px;color:var(--faint)}
.lb-card-val{text-align:right;display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}
.lb-card-val strong{font-size:22px;font-weight:700;letter-spacing:-.01em}
.lb-card-val span{font-size:12px;color:var(--muted)}
.lb-card-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:28px}
.lb-card-foot .lb-spark{margin-left:auto}
.lb-range{position:relative;padding-bottom:18px}
.lb-range.empty{display:none}
.lb-track{position:relative;height:8px;border-radius:4px;background:#eef3f5}
.lb-range.big .lb-track{height:12px;border-radius:6px}
.lb-seg{position:absolute;top:0;bottom:0;border-radius:4px}
.lb-seg.out{background:#f6c68c}.lb-seg.normal{background:#9fd6ea}.lb-seg.optimal{background:#2c8fb0;top:0;bottom:0}
.lb-thumb{position:absolute;top:50%;width:12px;height:24px;border-radius:6px;transform:translate(-50%,-50%);background:#fff;border:3px solid var(--ice2);box-shadow:0 2px 10px rgba(11,70,90,.25)}
.lb-range.big .lb-thumb{width:16px;height:32px;border-radius:8px}
.lb-thumb.out{border-color:#f08a1c;box-shadow:0 0 0 6px rgba(240,138,28,.18),0 2px 10px rgba(0,0,0,.15)}
.lb-thumb.optimal{border-color:var(--ice)}
.lb-ghost{position:absolute;top:50%;width:8px;height:8px;border-radius:4px;transform:translate(-50%,-50%);background:#fff;border:2px solid #9bb7c2}
.lb-ticks{position:absolute;left:0;right:0;bottom:0;height:14px}
.lb-ticks span{position:absolute;transform:translateX(-50%);font-size:11px;color:var(--faint)}
.lb-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700}
.lb-chip.out{background:var(--out-soft);color:#b3620f}.lb-chip.normal{background:#e3f4fa;color:#1d7497}.lb-chip.optimal{background:#d4eef7;color:#0b5a75}.lb-chip.unknown{background:#eef2f4;color:var(--muted)}
.lb-delta{font-size:12px;font-weight:600;color:var(--muted)}.lb-delta.worse{color:#b4502a}.lb-delta.better{color:#1e7a4d}
.lb-spark polyline{fill:none;stroke:#7fb9cc;stroke-width:1.6}
.lb-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:40px 16px;border:2px dashed #bcdbe7;border-radius:24px;background:rgba(255,255,255,.6)}
.lb-empty h3{margin:0;font-size:20px}.lb-empty p{margin:0;max-width:440px;color:var(--muted);line-height:1.5}
.lb-empty-icon{width:64px;height:64px;border-radius:20px;background:linear-gradient(145deg,#e9f7fc,#bfe3f0)}
.lb-note{text-align:left}
.lb-sheet{max-width:720px;background:linear-gradient(180deg,#eef8fc,var(--bg) 320px)}
.lb-sheet .sheet-head h2{font-size:24px}
.lb-detail-card{display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:22px;background:var(--card);border:1px solid #e0ecf1}
.lb-detail-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:var(--muted)}
.lb-detail-name{margin:0;text-align:center;font-size:24px}
.lb-detail-val{display:flex;flex-direction:column;align-items:center;margin-top:-6px}
.lb-detail-val strong{font-size:52px;font-weight:700;letter-spacing:-.03em;line-height:1.05}
.lb-detail-val span{font-size:14px;color:var(--muted)}
.lb-detail-ref{margin:0;font-size:13px;color:var(--muted)}
.lb-info{padding:14px 16px;border-radius:16px;background:#eef7fb;border:1px solid #d6ebf3}
.lb-info.warn{background:var(--out-soft);border-color:#f6d4ab}
.lb-info strong{font-size:14px}.lb-info p{margin:4px 0 0;font-size:14px;line-height:1.5;color:#3c4a50}
.lb-chart{width:100%;height:auto}
.lb-chart .band-normal{fill:#e3f4fa}.lb-chart .band-opt{fill:#c6e7f2}
.lb-chart .ref{stroke:#9fd0e2;stroke-dasharray:4 4}
.lb-chart .line{fill:none;stroke:#0b6e8f;stroke-width:2.5}
.lb-chart .drop{stroke:#9bb7c2;stroke-dasharray:3 4}
.lb-chart .axis{font-size:12px;fill:#6b7c83}.lb-chart .val{font-size:13px;font-weight:700;fill:#0d2f3c}
.lb-hist{display:flex;flex-direction:column}
.lb-hist-row{display:grid;grid-template-columns:96px minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line2);font-size:14px}
.lb-hist-row .muted,.muted{color:var(--muted);font-size:13px}
.lb-pdf{font-size:12px;font-weight:700}
.lb-scan{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px 10px;text-align:center;color:var(--muted)}
.lb-scan-doc{width:120px;height:156px;border-radius:12px;background:#fff;border:1px solid #d6ebf3;position:relative;overflow:hidden;background-image:repeating-linear-gradient(180deg,transparent 0 14px,#e6f0f4 14px 16px)}
.lb-scan-doc::after{content:"";position:absolute;left:0;right:0;height:28px;background:linear-gradient(180deg,transparent,rgba(90,184,217,.55),transparent);animation:lbscan 1.6s ease-in-out infinite}
@keyframes lbscan{0%{top:-28px}100%{top:156px}}
@media (prefers-reduced-motion:reduce){.lb-scan-doc::after{animation:none;top:60px}}
.lb-review-hint{margin:0;color:var(--muted)}
.lb-review-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lb-review{display:flex;flex-direction:column;gap:6px;max-height:52vh;overflow:auto;padding-right:4px}
.lb-rv-row{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr) minmax(0,.9fr) minmax(0,.8fr) minmax(0,.8fr) 40px;gap:6px;align-items:center}
.lb-rv-row.head span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--faint)}
.lb-rv-row input{min-height:38px;border:1px solid #d9d5cc;border-radius:9px;padding:0 8px;background:#fff;font-size:14px;min-width:0;width:100%}
.lb-rv-row.unknown-key input.n{border-color:#e5d6f3;background:#fbf8ff}
.lb-rv-row .icon-btn{width:38px;height:38px}
.lb-rep{display:flex;flex-direction:column;gap:10px}.lb-rep-top{display:flex;flex-direction:column;gap:2px}
@media (max-width:1180px){ .lb-hero{grid-template-columns:minmax(0,1fr)} .lb-hero-side{padding:0 22px 24px} .lb-cloud{height:460px;min-height:0} }
@media (max-width:760px){
  .labs-view{padding:14px 14px 32px;gap:18px}
  .lb-hero{min-height:0;border-radius:22px}
  .lb-cloud{height:430px}
  .lb-title{font-size:40px}
  .lb-ring-wrap,.lb-ring{width:120px;height:120px}
  .lb-ring-label strong{font-size:24px}.lb-ring-label span{font-size:10px;max-width:74px}
  .lb-spot{font-size:11px;padding:4px 8px 4px 6px;min-height:24px}
  .lb-attn{grid-auto-columns:minmax(250px,84%)}
  .lb-grid{grid-template-columns:minmax(0,1fr)}
  .lb-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lb-cat{grid-template-columns:minmax(0,1fr);padding:12px}
  .lb-cat-icon{grid-row:auto;width:40px;height:40px}
  .lb-review-meta{grid-template-columns:1fr}
  .lb-rv-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 38px;row-gap:4px;padding:8px 0;border-bottom:1px solid var(--line2)}
  .lb-rv-row.head{display:none}
  .lb-rv-row input.n{grid-column:1/3}.lb-rv-row .icon-btn{grid-row:1;grid-column:3}
  .lb-hist-row{grid-template-columns:86px minmax(0,1fr) auto;row-gap:4px}
  .lb-hist-row .muted{display:none}
  .lb-detail-val strong{font-size:42px}
}

/* Blutwerte: Anatomie */
.lb-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.lb-lines path{fill:none;stroke:#6aaec6;stroke-width:1.2;opacity:.8}.lb-lines path.out{stroke:#e8913a}
.lb-lines circle{fill:#fff;stroke:#0b6e8f;stroke-width:2}.lb-lines circle.out{stroke:#e07a1f}
.lb-olabel{position:absolute;left:0;top:0;pointer-events:auto;display:flex;flex-direction:column;gap:3px;min-width:132px;padding:8px 11px;border-radius:14px;border:1px solid #cfe3ec;background:rgba(255,255,255,.93);text-align:left;box-shadow:0 6px 18px rgba(11,70,90,.10);will-change:transform;transition:box-shadow .2s}
.lb-olabel:hover{box-shadow:0 8px 22px rgba(11,70,90,.18)}
.lb-olabel.out{border-color:#f5c68f}
.lb-olabel.active{outline:2px solid var(--ice)}
.lb-olabel-head{display:flex;align-items:center;gap:7px}
.lb-olabel-head i{width:8px;height:8px;border-radius:4px;background:var(--ice2);flex-shrink:0}.lb-olabel.out .lb-olabel-head i{background:var(--out)}
.lb-olabel-head strong{font-size:13px;color:#0d2f3c}
.lb-olabel-head em{font-style:normal;margin-left:auto;font-size:11px;font-weight:700;color:#fff;background:#e8913a;border-radius:999px;padding:1px 7px}
.lb-olabel-val{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted)}
.lb-olabel-val b{color:#0d2f3c}.lb-olabel-val.out b{color:#c4640f}
.lb-cloud-hint{position:absolute;left:18px;top:14px;margin:0;font-family:ui-monospace,Menlo,monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#4d8599;pointer-events:none;z-index:2}
.lb-hero.focus .lb-overview{display:none}
.lb-organ{display:none;flex-direction:column;gap:12px}
.lb-hero.focus .lb-organ{display:flex}
.lb-back{align-self:flex-start;font-size:14px;padding:0}
.lb-organ-head{display:flex;align-items:center;gap:12px}
.lb-organ-head h3{margin:0;font-family:var(--display);font-size:34px;font-weight:600;color:#0d2f3c;line-height:1.05}
.lb-organ-desc{margin:0;font-size:14px;line-height:1.5;color:#35555f}
.lb-organ-sum{margin:0;font-size:13px;font-weight:700;color:#3f7f96}
.lb-organ-list{display:flex;flex-direction:column;gap:8px;max-height:330px;overflow:auto;padding-right:4px}
.lb-orow{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:16px;border:1px solid #d9e9ef;background:rgba(255,255,255,.92);text-align:left}
.lb-orow.out{border-color:#f6d4ab;background:#fffaf3}
.lb-orow:hover,.lb-orow:focus-visible{border-color:var(--ice2)}
.lb-orow-top{display:flex;justify-content:space-between;gap:10px}.lb-orow-top strong{font-size:14px}.lb-orow-top b{font-size:14px;white-space:nowrap}
.lb-orow-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:12px;color:var(--muted)}
.lb-orow-links{color:#0b6e8f;font-weight:600}
.lb-orow .lb-range{padding-bottom:14px}
.lb-pattern{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:18px;border:1px solid #f3cf9f;background:linear-gradient(135deg,#fff7ec,#fff);text-align:left}
.lb-pattern strong{font-size:15px;color:#7a4a12}.lb-pattern>span{font-size:14px;line-height:1.5;color:#4a4036}
.lb-pattern-organs{display:flex;gap:6px}.lb-pattern-organs .lb-cat-icon{width:32px;height:32px;border-radius:10px;background:linear-gradient(145deg,#fff4e6,#fbd9ae);color:#b3620f}
.lb-rel-wrap{border-radius:22px;border:1px solid #d9e9ef;background:rgba(255,255,255,.85);padding:10px;overflow-x:auto}
.lb-rel-svg{width:100%;min-width:620px;height:auto;display:block}
.lb-rel-link{fill:none;stroke-width:1.6;opacity:.55;transition:opacity .2s}.lb-rel-link.primary{stroke-width:2.6;opacity:.8}.lb-rel-link.dim{opacity:.06}
.lb-rel-node{cursor:pointer;transition:opacity .2s}.lb-rel-node.dim{opacity:.25}
.lb-rel-node:focus{outline:none}.lb-rel-node:focus-visible circle{stroke:#0d2f3c;stroke-width:3}
.lb-rel-name{font-size:14px;font-weight:700;fill:#0d2f3c}.lb-rel-val{font-size:12px;fill:#6b7c83}
.lb-detail-organ{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;align-items:center;padding:14px;border-radius:22px;background:radial-gradient(90% 90% at 30% 40%,#fff,#dcf0f7);border:1px solid #cfe7f0}
.lb-mini{height:230px;border-radius:16px;overflow:hidden}
.lb-mini canvas{display:block}
.lb-mini-text{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.lb-mini-text p{margin:-2px 0 4px;font-size:13px;line-height:1.45;color:#35555f}
.lb-organ-chip{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border-radius:999px;border:1px solid #bcdbe7;background:#fff;font-weight:700;font-size:13px;color:#0b5a75}
.lb-organ-chip.main{background:#0d4f66;color:#fff;border-color:#0d4f66}
@media (max-width:760px){
  .lb-olabel{min-width:0;padding:6px 8px}.lb-olabel-head strong{font-size:11px}.lb-olabel-val{font-size:11px}
  .lb-organ-head h3{font-size:28px}
  .lb-detail-organ{grid-template-columns:minmax(0,1fr)}
  .lb-mini{height:220px}
}

/* Bereichs-Karten im Organ-Stil */
.lb-cats{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.lb-ocard{position:relative;display:flex;flex-direction:column;border-radius:22px;border:1px solid #d3e9f1;background:radial-gradient(120% 90% at 50% 20%,#ffffff 0,#e4f4fa 55%,#cbe9f4 100%);padding:0 0 12px;text-align:left;overflow:hidden;transition:transform .15s,box-shadow .15s}
.lb-ocard:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(11,70,90,.12)}
.lb-ocard.active{border-color:var(--ice);box-shadow:0 0 0 2px rgba(11,110,143,.25)}
.lb-ocard-img{width:100%;aspect-ratio:300/220;object-fit:cover;display:block}
.lb-ocard-img.loading{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.7),rgba(255,255,255,0)) 0 0/200% 100%;animation:lbshim 1.4s linear infinite}
@keyframes lbshim{to{background-position:-200% 0}}
.lb-ocard-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding:2px 14px 10px}
.lb-ocard-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.lb-ocard-text strong{font-size:14px;color:#0d2f3c}.lb-ocard-text span{font-size:12px;color:#3f6f80}
.lb-ocard-chev{font-size:22px;line-height:1;color:#3f6f80}
.lb-ocard-bar{display:flex;gap:3px;margin:0 14px;height:4px}
.lb-ocard-bar i{border-radius:2px;min-width:6px}.lb-ocard-bar i.out{background:var(--out)}.lb-ocard-bar i.normal{background:var(--ice2)}.lb-ocard-bar i.optimal{background:var(--ice)}
@media (max-width:760px){ .lb-cats{grid-template-columns:repeat(2,minmax(0,1fr))} .lb-ocard-foot{padding:0 10px 8px} .lb-ocard-bar{margin:0 10px} }

/* ---------- Blutwerte: Handy-Optimierung ---------- */
.lb-rel-mobile{display:none}
details.lb-pattern>summary{list-style:none;display:flex;flex-direction:column;gap:8px;cursor:pointer}
details.lb-pattern>summary::-webkit-details-marker{display:none}
details.lb-pattern .link-btn{align-self:flex-start;padding:0;font-size:13px}
.lb-more{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px;border-radius:20px;border:1px dashed #bcdbe7;background:rgba(255,255,255,.6);text-align:center}
.lb-more p{margin:0;color:var(--muted);font-size:14px}
@media (max-width:760px){
  .mobile-nav{height:calc(66px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}
  .mobile-nav button{font-size:11px;gap:2px}
  .mobile-nav button[aria-current="true"] svg{stroke-width:2.2}
  .labs-view{padding:10px 12px 90px;gap:20px}
  .lb-hero{border-radius:24px}
  .lb-cloud{height:470px}
  .lb-cloud-hint{left:0;right:0;top:auto;bottom:10px;text-align:center;font-size:10px}
  .lb-hero-side{padding:4px 18px 22px;gap:14px}
  .lb-title{font-size:38px}
  .lb-score{gap:14px}
  .lb-actions{display:grid;grid-template-columns:1fr auto}
  .lb-actions .btn{min-height:50px}
  .lb-h h3{font-size:19px}
  .lb-h>span{font-size:12px}
  .lb-attn{grid-auto-columns:78%;margin:0 -12px;padding:2px 12px 10px}
  .lb-rel-wrap{display:none}
  .lb-rel-mobile{display:flex;flex-direction:column;gap:10px}
  .lb-rel-org{border-radius:20px;border:1px solid #d9e9ef;background:rgba(255,255,255,.92);padding:12px}
  .lb-rel-org-head{display:flex;align-items:center;gap:12px;width:100%;border:0;background:none;padding:0;text-align:left;min-height:44px}
  .lb-rel-org-head .lb-cat-icon{width:40px;height:40px;border-radius:13px;background:linear-gradient(145deg,#fff4e6,#fbd9ae);color:#b3620f;display:flex;align-items:center;justify-content:center}
  .lb-rel-org-head>span:nth-child(2){display:flex;flex-direction:column;flex:1}
  .lb-rel-org-head strong{font-size:15px}.lb-rel-org-head small{font-size:12px;color:var(--muted)}
  .lb-rel-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
  .lb-rel-chip{display:inline-flex;gap:6px;align-items:center;min-height:34px;padding:0 11px;border-radius:999px;border:1px solid #e9dccb;background:#fffaf3;font-size:12px;color:#4a4036}
  .lb-rel-chip.primary{border-color:#f3c48c}
  .lb-rel-chip b{color:#c4640f}
  details.lb-pattern{padding:12px 14px}
  details.lb-pattern strong{font-size:14px}
  details.lb-pattern>summary strong::after{content:" ›";color:#b3620f}
  details.lb-pattern[open]>summary strong::after{content:" ⌄"}
  .lb-grid{gap:8px}
  .lb-card{padding:13px 14px;gap:8px;border-radius:18px}
  .lb-card-name strong{font-size:14px}
  .lb-card-val strong{font-size:19px}
  .lb-card-foot{min-height:24px}
  /* Detail-Sheet */
  .lb-sheet{padding:16px 14px 40px}
  .lb-sheet .sheet-head{position:sticky;top:-16px;z-index:3;margin:-16px -14px 0;padding:14px 14px 10px;background:rgba(238,248,252,.94);backdrop-filter:blur(8px)}
  .lb-detail-card{padding:16px}
  .lb-detail-top{flex-wrap:wrap}
  .lb-mini{height:200px}
  .lb-mini-text{flex-direction:row;flex-wrap:wrap;gap:6px}
  .lb-mini-text .lb-eyebrow{width:100%}
  .lb-mini-text p{width:100%;margin:0 0 2px;font-size:12px}
  .lb-hist-row{grid-template-columns:88px minmax(0,1fr) auto auto;gap:8px;font-size:13px}
  .lb-chart .axis{font-size:11px}.lb-chart .val{font-size:12px}
  /* Fokus-Panel */
  .lb-organ-list{max-height:none}
  .lb-organ-head .lb-cat-icon{width:42px;height:42px}
}

@media (max-width:760px){
  .lb-hide-m{display:none}
  .lb-eyebrow{margin-bottom:6px}
  .lb-title{margin:0}
  .lb-stat strong{font-size:20px}.lb-stat span{font-size:12px}
  .lb-ocard-img{aspect-ratio:300/170}
  .lb-ocard-text strong{font-size:13px}.lb-ocard-text span{font-size:11px}
  .lb-rel-chip.more{background:#fff;border-color:#bcdbe7;color:#0b5a75;font-weight:700}
  .lb-rel-all{align-self:center}
}
@media (max-width:760px){
  .lb-hero.focus .lb-cloud{height:340px}
  .lb-hero.focus .lb-cloud-hint{display:none}
  .lb-organ .lb-pattern>span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .lb-organ .lb-pattern:focus>span,.lb-organ .lb-pattern:active>span{-webkit-line-clamp:unset}
  .lb-back{position:sticky;top:0}
}
.lb-orow .lb-range{margin-top:8px}
.chat-head .avatar{display:flex!important;align-items:center;justify-content:center;flex-shrink:0}

/* Körper-Doc Chat im Körper-Bereich */
.bchat{padding:0;display:flex;flex-direction:column;overflow:hidden;border-color:#d9d3f0}
.bchat-head{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(135deg,#f1effa,#fff);border-bottom:1px solid #ebe7f7}
.bchat-head .avatar{background:#4b3fa0;width:38px;height:38px;border-radius:12px;font-size:16px}
.bchat-head div{display:flex;flex-direction:column;flex:1;min-width:0}
.bchat-head strong{font-size:15px}.bchat-head span{font-size:12px;color:var(--muted)}
.bchat-toggle{width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:#fff;font-size:18px;line-height:1;color:var(--muted);transition:transform .2s}
.bchat.collapsed .bchat-toggle{transform:rotate(180deg)}
.bchat.collapsed .bchat-body{display:none}
.bchat-body{display:flex;flex-direction:column}
.bchat-msgs{display:flex;flex-direction:column;gap:10px;padding:14px 14px 6px;max-height:360px;min-height:120px;overflow:auto;background:#faf9fd}
.bchat-msg{display:flex;max-width:92%}
.bchat-msg.me{align-self:flex-end}
.bchat-msg .bubble{font-size:14px;padding:10px 13px;border-radius:16px;border-bottom-left-radius:5px}
.bchat-msg.me .bubble{background:#4b3fa0;border-color:#4b3fa0;color:#fff;border-bottom-left-radius:16px;border-bottom-right-radius:5px}
.bchat-msg.typing .bubble{color:var(--muted)}
.bchat-sugg{display:flex;gap:6px;overflow-x:auto;padding:8px 14px 2px;background:#faf9fd;scrollbar-width:none}
.bchat-sugg button{flex-shrink:0;min-height:34px;padding:0 12px;border-radius:999px;border:1px solid #d9d3f0;background:#fff;color:#4b3fa0;font-size:12px;font-weight:600;white-space:nowrap}
.bchat-form{display:flex;gap:8px;padding:10px 12px 12px;background:#faf9fd}
.bchat-form input{flex:1;min-width:0;min-height:44px;padding:0 14px;border-radius:14px;border:1px solid #ddd8ec;background:#fff;font-size:14px}
.bchat-form input:focus{outline:2px solid #4b3fa0;outline-offset:1px}
.bchat-form .send{width:44px;height:44px;border-radius:14px;background:#4b3fa0}
@media (max-width:760px){ .bchat-msgs{max-height:300px} .bchat-form input{font-size:16px} }
.bchat-head .avatar{color:#fff;font-size:16px}

/* gemeinsamer Chat-Stil mit Farbvariable */
.bchat{--bc:#4b3fa0}
.bchat .bchat-head .avatar{background:var(--bc)}
.bchat .bchat-msg.me .bubble{background:var(--bc);border-color:var(--bc)}
.bchat .bchat-form .send{background:var(--bc)}
.bchat .bchat-sugg button{color:var(--bc)}
.bchat .bchat-form input:focus{outline-color:var(--bc)}
#lb-chat .bchat{border-color:#cfe7f0}
#lb-chat .bchat-head{background:linear-gradient(135deg,#e6f4fa,#fff);border-bottom-color:#dcedf3}
#lb-chat .bchat-msgs,#lb-chat .bchat-sugg,#lb-chat .bchat-form{background:#f6fbfd}
#lb-chat .bchat-sugg button{border-color:#bcdbe7}
#lb-chat .bchat-msgs{max-height:420px}

/* ---------- Profilbilder & Profile ---------- */
.avatar.photo{position:relative;padding:0;border:0;overflow:visible;cursor:pointer;background:#dfe7ea!important}
.avatar.photo img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
.avatar.photo .ki-badge{position:absolute;right:-4px;bottom:-4px;font-style:normal;font-size:9px;font-weight:800;letter-spacing:.04em;color:#fff;background:#0d2f3c;border:2px solid #fff;border-radius:999px;padding:1px 4px;line-height:1.2}
.avatar.photo:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.bot-row .avatar.photo:hover img{filter:brightness(1.05);box-shadow:0 0 0 2px #fff,0 0 0 4px #cfe7f0}
.chat-head .avatar.photo{width:50px;height:50px;border-radius:16px}
.bchat-head .avatar.photo{width:42px;height:42px;border-radius:14px}
.profile-overlay{justify-content:center;align-items:center;padding:16px}
.profile-sheet{position:relative;max-width:560px;height:auto;max-height:calc(100% - 20px);border-radius:28px;padding:0 0 22px;gap:14px;background:#fff}
.profile-close{position:absolute;top:14px;right:14px;z-index:2;background:rgba(255,255,255,.9)}
.profile-hero{position:relative;height:300px;flex-shrink:0;overflow:hidden;border-radius:28px 28px 0 0;background:#e9eef0}
.profile-img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.profile-hero::after{content:"";position:absolute;inset:auto 0 0 0;height:110px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff)}
.profile-badge{position:absolute;left:18px;top:16px;z-index:1;font-size:11px;font-weight:700;color:#fff;background:rgba(13,47,60,.72);backdrop-filter:blur(6px);border-radius:999px;padding:5px 10px}
.profile-head{padding:0 24px;margin-top:-40px;position:relative;z-index:1}
.profile-head h2{margin:0;font-family:var(--display);font-size:36px;font-weight:600;color:#0d2f3c}
.profile-title{margin:2px 0 0;font-weight:700;color:var(--pc,#0b6e8f)}
.profile-tag{margin:10px 0 0;font-size:15px;line-height:1.5;color:#35555f;font-style:italic}
.profile-sec{padding:0 24px}
.profile-sec h3{margin:6px 0 6px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#6b7c83}
.profile-sec ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.45}
.profile-sec p{margin:0;font-size:14px;line-height:1.5;color:#35555f}
.profile-sec.limits p{padding:12px 14px;border-radius:14px;background:#f4f7f8}
.profile-chips{display:flex;flex-wrap:wrap;gap:8px}
.profile-chips button{min-height:38px;padding:0 14px;border-radius:999px;border:1px solid #d6e4ea;background:#fff;font-size:13px;font-weight:600;color:var(--pc,#0b6e8f)}
.profile-go{margin:4px 24px 0;background:var(--pc,#0b6e8f)}
.profile-sheet .fine{padding:0 24px;text-align:left;margin:0}
@media (max-width:760px){ .profile-overlay{padding:0;align-items:flex-end} .profile-sheet{max-height:92%;border-radius:26px 26px 0 0} .profile-hero{height:260px;border-radius:26px 26px 0 0} }

/* ---------- Navigation: Home & Sessions ---------- */
.sidebar{overflow:auto}
.nav-body+.nav-body{margin-top:-10px}
.nav-home .nav-ico{background:#e3f1f5;color:#0b6e8f}
.nav-home[aria-current="true"]{background:#eef7fa;border-color:#b9dfee}
.nav-sessions .nav-ico{background:#fdeee4;color:#c4561f}
.nav-sessions[aria-current="true"]{background:#fff5ef;border-color:#f3cdb4}
.nav-badge{margin-left:auto;min-width:22px;height:22px;padding:0 7px;border-radius:11px;background:#e0663a;color:#fff;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}
.nav-badge.live{background:#1e8e5a;animation:hm-pulse 1.6s ease-in-out infinite}
@keyframes hm-pulse{50%{opacity:.55}}
.mobile-nav button{position:relative}
.nav-dot{position:absolute;top:8px;left:calc(50% + 8px);width:9px;height:9px;border-radius:50%;background:#e0663a;border:2px solid var(--card)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.row2 .select{min-height:44px}

/* ---------- Home ---------- */
.home-view,.sessions-view{display:none;flex-direction:column;gap:18px;overflow:auto;min-height:0;min-width:0;
  --ice:#0b6e8f;--ice2:#5ab8d9;--ink:#0d2f3c;--hmuted:#5d7079;--hfaint:#7d8f97;--hline:#e3ecef;--good:#1e8e5a;--bad:#d4552a;
  background:linear-gradient(180deg,#e9f4f8 0,#f4f7f8 360px,var(--bg) 1100px);color:var(--ink)}
.shell[data-view="home"] .home-view,.shell[data-view="sessions"] .sessions-view{display:flex;grid-column:2/-1}
.shell[data-view="home"] .chat,.shell[data-view="home"] .dash,.shell[data-view="sessions"] .chat,.shell[data-view="sessions"] .dash{display:none}
.home-view{padding:26px 30px 48px}
.home-view>*,.sessions-view>*{flex-shrink:0}
.home-view .card,.sessions-view .card{border-color:var(--hline);border-radius:24px}
.hm-eyebrow{font-family:ui-monospace,Menlo,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#3f7a8f}
.hm-loading{padding:60px 0;text-align:center;color:var(--hmuted)}
.hm-top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.hm-hello h1{margin:4px 0 0;font-family:var(--display);font-size:40px;font-weight:600;line-height:1.05}
.hm-hello p{margin:6px 0 0;color:var(--hmuted);font-size:15px}
.hm-top-r{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hm-pill{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 13px;border-radius:999px;background:#fff;border:1px solid var(--hline);font-size:12px;font-weight:700;color:var(--hmuted)}
.hm-pill i{width:8px;height:8px;border-radius:4px;background:var(--good)}.hm-pill i.off{background:#c9ced1}
.hm-stack{display:flex;align-items:center}
.hm-stack .hm-av{margin-left:-9px;border:3px solid #fff}.hm-stack .hm-av:first-child{margin-left:0}
.hm-stack.big .hm-av{width:38px;height:38px;border-color:#eef6f9}
.hm-av{width:34px;height:34px;border-radius:50%;padding:0;border:0;overflow:hidden;flex-shrink:0;background:#dfe7ea;color:#fff;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.hm-av img{width:100%;height:100%;object-fit:cover;display:block}
.hm-av.sm{width:30px;height:30px}.hm-av.md{width:40px;height:40px;border-radius:13px}.hm-av.lg{width:50px;height:50px;border-radius:16px;border:2px solid rgba(255,255,255,.55)}
.hm-btn{min-height:40px;padding:0 15px;border-radius:12px;border:1px solid var(--hline);background:#fff;color:var(--ink);font-weight:700;font-size:13px}
.hm-btn:hover{border-color:#b9d6e0}
.hm-btn.primary{background:var(--ice);border-color:var(--ice);color:#fff}
.hm-btn:disabled{opacity:.6}
.hm-link{border:0;background:none;padding:6px 0;color:var(--ice);font-weight:700;font-size:13px;text-align:left}
.hm-link:hover{text-decoration:underline}
.hm-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;grid-auto-flow:row dense;align-items:start}
.hm-block{grid-column:span 12;min-width:0;position:relative}
.hm-block.b-score{grid-column:span 7}.hm-block.b-focus{grid-column:span 5}
.hm-block.b-body,.hm-block.b-labs,.hm-block.b-sleep{grid-column:span 4}
.hm-block>.card{height:100%}
.hm-block.b-score,.hm-block.b-focus{align-self:stretch}
.hm-block-inner{display:flex;flex-direction:column;gap:12px}
.hm-sec-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:0 2px}
.hm-sec-h h2{margin:0;font-size:20px}
.hm-empty{margin:0;color:var(--hmuted);font-size:14px;line-height:1.5}
.hm-emptycard{display:flex;flex-direction:column;gap:12px;align-items:flex-start;grid-column:1/-1}
.hm-emptycard p{margin:0;color:var(--hmuted)}
.hm-foot{text-align:center;font-size:12px;color:var(--hfaint);margin:4px 0 0}
/* Score */
.hm-score{position:relative;overflow:hidden;background:radial-gradient(120% 120% at 20% 10%,#fff 0,#e3f3f9 50%,#c6e5f1 100%)!important;border-color:#cfe7f0!important;display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:center;padding:24px}
.hm-score::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-radial-gradient(circle at 18% 45%,rgba(11,110,143,.05) 0 1px,transparent 1px 30px)}
.hm-ring{position:relative;width:220px;height:220px;z-index:1}
.hm-ring svg{width:100%;height:100%}
.hm-ring-c{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.hm-ring-c strong{font-size:64px;font-weight:800;letter-spacing:-.04em;line-height:1}
.hm-ring-c span{font-size:12px;font-weight:700;color:var(--hmuted);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}
.hm-ring-c em{font-style:normal;font-size:12px;font-weight:700;margin-top:6px}
.up{color:var(--good)}.down{color:var(--bad)}.flat{color:var(--hmuted)}
.hm-subs{display:flex;flex-direction:column;gap:8px;position:relative;z-index:1;min-width:0}
.hm-subs h2{margin:2px 0 4px;font-family:var(--display);font-size:24px;font-weight:600}
.hm-sub{display:grid;grid-template-columns:92px minmax(0,1fr) 30px 38px;align-items:center;gap:10px;font-size:13px;font-weight:600;border:0;background:none;padding:5px 6px;margin:0 -6px;border-radius:10px;text-align:left;color:inherit}
.hm-sub:hover{background:rgba(255,255,255,.55)}
.hm-sub b{text-align:right}.hm-sub small{font-size:11px;color:var(--hfaint);font-weight:700;text-align:right}
.hm-sub.missing{opacity:.55}
.hm-bar{height:8px;border-radius:4px;background:rgba(11,110,143,.12);overflow:hidden;display:block}
.hm-bar i{display:block;height:100%;border-radius:4px;transition:width .5s}
.hm-bar.light{background:rgba(255,255,255,.2)}.hm-bar.light i{background:#9be3ff}
.hm-note{border:0;background:none;padding:4px 0 0;font-size:12px;color:var(--hmuted);text-align:left;font-weight:600}
.hm-note:hover{color:var(--ice)}
/* Fokus / Tagesplan */
.hm-focus{display:flex;flex-direction:column;gap:14px;background:linear-gradient(135deg,#0d4f66,#0b6e8f 60%,#2a93b8)!important;color:#fff;border:0!important;position:relative;overflow:hidden;padding:22px}
.hm-focus::before{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.07);pointer-events:none}
.hm-who{display:flex;align-items:center;gap:12px;position:relative}
.hm-who strong{display:block;font-size:15px}.hm-who span{font-size:12px;opacity:.8}
.hm-streak{margin-left:auto;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;opacity:1!important}
.hm-focus h3{margin:0;font-family:var(--display);font-size:28px;font-weight:600;line-height:1.15}
.hm-focus>p{margin:0;font-size:15px;line-height:1.55;opacity:.92}
.hm-dots{letter-spacing:4px;animation:hm-pulse 1.2s infinite}
.hm-todo{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.hm-todo label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.12);font-size:14px;cursor:pointer}
.hm-todo li.done label{background:rgba(255,255,255,.07)}
.hm-todo li.done .hm-todo-t>span:first-child{text-decoration:line-through;opacity:.7}
.hm-todo input{width:20px;height:20px;accent-color:#9be3ff;flex-shrink:0;margin:1px 0 0}
.hm-todo-t{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.hm-todo small.why{font-size:12px;opacity:.72;line-height:1.35}
.hm-todo small.who{opacity:.75;font-size:12px;white-space:nowrap}
.hm-prog{height:5px;border-radius:3px;background:rgba(255,255,255,.2);overflow:hidden;margin-top:3px}
.hm-prog i{display:block;height:100%;background:#9be3ff;border-radius:3px}
.hm-todo-sum{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;font-size:12px;font-weight:700;opacity:.9}
.hm-add input,.hm-talk input{width:100%;min-height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);color:#fff;padding:0 12px;font-size:14px}
.hm-add input::placeholder,.hm-talk input::placeholder{color:rgba(255,255,255,.7)}
.hm-add input:focus,.hm-talk input:focus{outline:2px solid #9be3ff;outline-offset:1px}
.hm-talk{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}
.hm-focus .hm-btn{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.14);color:#fff}
.hm-focus .hm-btn.primary{background:#fff;color:#0d4f66;border-color:#fff}
.hm-answer{background:#fff;color:var(--ink);border-radius:16px;padding:12px 14px;font-size:14px;line-height:1.5}
.hm-answer p{margin:0 0 6px}.hm-answer ul{margin:0 0 6px;padding-left:18px}
.hm-typing{opacity:.7}
/* Heute */
.hm-today{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.hm-m{display:flex;flex-direction:column;gap:8px;padding:16px;min-height:170px;background:#fff}
.hm-lab{display:flex;justify-content:space-between;gap:6px;font-size:12px;font-weight:700;color:var(--hmuted)}
.hm-lab i{font-style:normal;color:var(--hfaint);font-weight:600}
.hm-val{font-size:30px;font-weight:800;letter-spacing:-.02em;line-height:1}
.hm-val small{font-size:13px;font-weight:600;color:var(--hmuted);margin-left:3px;letter-spacing:0}
.hm-delta{font-size:12px;font-weight:700;line-height:1.35}
.hm-m svg{margin-top:auto;width:100%;height:40px}
.hm-gauge{width:100%;max-width:120px;align-self:center}.hm-gauge svg{height:auto;margin:0}
.hm-phases{display:flex;height:10px;border-radius:5px;overflow:hidden;margin-top:auto}
.hm-strip{display:flex;gap:3px;height:10px;margin-top:auto}.hm-strip i{border-radius:3px;min-width:2px}
.hm-legend{display:flex;gap:8px;font-size:11px;color:var(--hfaint);flex-wrap:wrap;align-items:center}
.hm-legend b{display:inline-block;width:7px;height:7px;border-radius:2px;margin-right:4px}
.hm-legend .r{margin-left:auto}
.hm-mini-bars{display:flex;gap:4px;align-items:flex-end;height:44px;margin-top:auto}.hm-mini-bars i{flex:1;border-radius:4px 4px 2px 2px;opacity:.85}
.hm-badge{align-self:flex-start;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;margin-top:auto}
.hm-badge.good{background:#e3f3ea;color:#1e7a4d}.hm-badge.mid{background:#fbf0d9;color:#8a5d06}.hm-badge.bad{background:#f8e1df;color:#a02a24}
/* Team-Termine */
.hm-sessions{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.hm-sess{display:flex;flex-direction:column;gap:8px;cursor:pointer;background:linear-gradient(180deg,#fff7f1,#fff)!important;border-color:#f3dccb!important;transition:transform .15s,box-shadow .15s}
.hm-sess:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(90,50,20,.08)}
.hm-sess.st-open,.hm-sess.st-opening{background:linear-gradient(180deg,#e9f7ef,#fff)!important;border-color:#bfe3cf!important}
.hm-sess.empty{cursor:default;align-items:flex-start;background:#fff!important;border-color:var(--hline)!important}
.hm-sess.empty:hover{transform:none;box-shadow:none}
.hm-sess strong{font-size:16px}
.hm-sess p{margin:0;font-size:13px;color:var(--hmuted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hm-sess-top{display:flex;align-items:center;gap:8px}
.hm-sess-time{font-size:12px;font-weight:800;color:#c4561f;text-transform:uppercase;letter-spacing:.04em}
.st-open .hm-sess-time,.st-opening .hm-sess-time{color:var(--good)}
.st-done .hm-sess-time{color:var(--hfaint)}
.hm-sess-cta{font-size:13px;font-weight:700;color:var(--ice);margin-top:auto}
.hm-dot{background:#e0663a;color:#fff;border-radius:999px;font-size:10px;font-weight:800;padding:2px 7px;text-transform:uppercase}
/* Bereiche */
.hm-area{display:flex;flex-direction:column;gap:12px;cursor:pointer;transition:transform .15s,box-shadow .15s}
.hm-area:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(11,70,90,.10)}
.hm-area:focus-visible,.hm-sess:focus-visible{outline:3px solid var(--ice2);outline-offset:2px}
.hm-area-h{display:flex;align-items:center;gap:10px}
.hm-area-h strong{font-size:16px;display:block}.hm-area-h span{font-size:12px;color:var(--hmuted);display:block}
.hm-area-h em{margin-left:auto;font-style:normal;font-size:22px;color:var(--hfaint)}
.hm-body{background:linear-gradient(180deg,#f7f5fd,#fff)!important;border-color:#e4def6!important}
.hm-mini-body{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;align-items:center}
.hm-mini-body>svg{width:100%;height:auto}
.hm-kv4{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.hm-kv4 div{padding:10px 12px;border-radius:14px;background:rgba(75,63,160,.06);min-width:0}
.hm-kv4 small{display:block;font-size:11px;font-weight:700;color:var(--hmuted)}
.hm-kv4 strong{font-size:18px;display:block;white-space:nowrap}
.hm-kv4 em{font-style:normal;font-size:11px;font-weight:700;display:block;margin-top:2px;white-space:nowrap}
.hm-trend{width:100%;height:56px}
.hm-labs{background:linear-gradient(180deg,#eef8fc,#fff)!important;border-color:#cfe7f0!important}
.hm-bring{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;align-items:center}
.hm-flags{display:flex;flex-direction:column;gap:6px;min-width:0}
.hm-flag{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:12px;background:#fff7ec;border:1px solid #f6d4ab;font-size:13px}
.hm-flag span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hm-flag b{color:#c4640f;white-space:nowrap}
.hm-next{font-size:12px;color:var(--hmuted);font-weight:600}.hm-next.due{color:#b8521a}
.hm-sleep{background:linear-gradient(180deg,#eef1fb,#fff)!important;border-color:#dde2f5!important}
.hm-week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;align-items:end;height:96px}
.hm-week div{display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end}
.hm-week i{width:100%;max-width:26px;border-radius:7px 7px 3px 3px;opacity:.85}
.hm-week div:last-child i{opacity:1}
.hm-week span{font-size:10px;color:var(--hfaint);font-weight:700}
/* Team */
.hm-team{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.hm-imp{display:flex;flex-direction:column;gap:8px;background:#fff}
.hm-imp-h{display:flex;align-items:center;gap:10px}
.hm-imp-h strong{font-size:14px;display:block}.hm-imp-h span{font-size:12px;color:var(--hmuted);display:block}
.hm-imp p{margin:0;font-size:14px;line-height:1.5}
.hm-badge-n{margin-left:auto;background:#e0663a;color:#fff;font-size:11px;font-weight:800;border-radius:999px;padding:2px 8px;font-style:normal}
/* Anordnen */
.hm-grid.editing .hm-block{outline:2px dashed #9fcfe0;outline-offset:6px;border-radius:26px;cursor:grab}
.hm-grid.editing .hm-block>*:not(.hm-move){pointer-events:none;opacity:.8}
.hm-grid.editing .hm-block.dragging{opacity:.4}
.hm-grid.editing .hm-block.drop{outline-color:var(--ice);outline-style:solid}
.hm-edit-hint{grid-column:1/-1;margin:0;font-size:13px;color:var(--hmuted);background:#fff;border:1px solid var(--hline);border-radius:14px;padding:10px 14px}
.hm-move{position:absolute;top:-14px;right:14px;z-index:3;display:flex;align-items:center;gap:6px;background:#0d4f66;color:#fff;border-radius:12px;padding:4px 6px 4px 10px;box-shadow:0 6px 18px rgba(0,0,0,.15)}
.hm-move-n{font-size:12px;font-weight:700;margin-right:4px}
.hm-grip{font-size:12px;opacity:.7;letter-spacing:-2px}
.hm-move button{width:34px;height:34px;border-radius:9px;border:0;background:rgba(255,255,255,.16);color:#fff;font-size:16px;font-weight:800}
.hm-move button:disabled{opacity:.3}
/* Score-Erklärung */
.hm-sheet{max-width:620px}
.hm-sheet-lead{color:var(--muted);line-height:1.5;margin:0 0 4px}
.hm-sheet-cat{border-left:5px solid var(--c)!important;padding:14px 16px!important}
.hm-sheet-cat.focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 35%,transparent)}
.hm-sheet-h{display:flex;align-items:baseline;gap:10px}
.hm-sheet-h strong{font-size:16px}.hm-sheet-h .w{font-size:12px;color:var(--muted);font-weight:700}.hm-sheet-h b{margin-left:auto;font-size:22px}
.hm-sheet-cat .src{color:var(--muted);font-size:12px}
.hm-sheet-cat ul{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.hm-sheet-cat li{display:grid;grid-template-columns:minmax(0,1fr) auto 34px;gap:10px;font-size:13px;align-items:baseline}
.hm-sheet-cat li .v{color:var(--muted);text-align:right}.hm-sheet-cat li b{text-align:right}
.hm-why h3{margin:6px 0 8px;font-size:16px}
.hm-why ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.5;color:#34383d}
.hm-src{display:flex;flex-direction:column;gap:4px;margin-top:12px;font-size:12px}
@media (max-width:1180px){
  .hm-block.b-score,.hm-block.b-focus{grid-column:span 12}
  .hm-block.b-body,.hm-block.b-labs,.hm-block.b-sleep{grid-column:span 6}
}
@media (max-width:760px){
  .shell .home-view,.shell .sessions-view{display:none}
  .shell[data-view="home"] .home-view,.shell[data-view="sessions"] .sessions-view{display:flex;grid-column:1/-1}
  .home-view{padding:18px 14px 100px;gap:14px}
  .hm-hello h1{font-size:30px}
  .hm-top-r .hm-stack{display:none}
  .hm-grid{gap:14px}
  .hm-block.b-body,.hm-block.b-labs,.hm-block.b-sleep{grid-column:span 12}
  .hm-score{grid-template-columns:1fr;justify-items:center;padding:18px}
  .hm-ring{width:200px;height:200px}.hm-ring-c strong{font-size:56px}
  .hm-subs{width:100%}
  .hm-sub{grid-template-columns:84px minmax(0,1fr) 28px 34px}
  .hm-focus{padding:18px}.hm-focus h3{font-size:24px}
  .hm-talk{grid-template-columns:1fr 1fr}.hm-talk input{grid-column:1/-1;font-size:16px}
  .hm-add input{font-size:16px}
  .hm-today{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .hm-m{min-height:150px;padding:14px}.hm-val{font-size:26px}
  .hm-m.k-gauge{grid-column:1/-1;min-height:0;display:grid;grid-template-columns:96px 1fr;grid-template-rows:auto 1fr;column-gap:16px;row-gap:4px;align-items:center}
  .hm-m.k-gauge .hm-gauge{grid-row:1/3;grid-column:1;width:96px}
  .hm-m.k-gauge .hm-lab{grid-column:2;align-self:end}
  .hm-m.k-gauge>div:last-child{grid-column:2;align-self:start}
  .hm-move{right:8px}
  .hm-move-n{display:none}
  .row2{grid-template-columns:1fr}
}

/* ---------- Team-Sessions ---------- */
.sessions-view{padding:24px 30px 0;background:linear-gradient(180deg,#fdf1e9 0,#faf6f2 300px,var(--bg) 900px)}
.ss-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.ss-head h1,.ss-new h1{margin:4px 0 6px;font-family:var(--display);font-size:34px;font-weight:600}
.ss-head p{margin:0;color:var(--hmuted);max-width:620px;line-height:1.5}
.ss-sec h2{font-size:18px;margin:6px 0 10px}
.ss-sec{padding-bottom:10px}
.ss-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.ss-card{display:flex;flex-direction:column;gap:8px;cursor:pointer;background:#fff}
.ss-card:hover{box-shadow:0 10px 26px rgba(90,50,20,.08)}
.ss-card strong{font-size:16px}
.ss-card p{margin:0;font-size:13px;color:var(--hmuted);line-height:1.45}
.ss-card-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ss-when{font-size:12px;color:var(--hmuted);font-weight:600}
.ss-status{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;border-radius:999px;background:#fdeee4;color:#b24a15}
.ss-status.st-open,.ss-status.st-opening{background:#e3f3ea;color:#1e7a4d}
.ss-status.st-done{background:#eef0f1;color:#5d6166}
.ss-new{display:flex;flex-direction:column;gap:14px;max-width:720px;margin-bottom:30px}
.ss-new p{margin:0;color:var(--hmuted)}
.ss-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.ss-chip{display:flex;align-items:center;gap:10px;padding:8px;border-radius:14px;border:1.5px solid var(--hline);background:#fff;text-align:left}
.ss-chip img{width:38px;height:38px;border-radius:12px;object-fit:cover}
.ss-chip strong{display:block;font-size:14px}.ss-chip small{font-size:12px;color:var(--hmuted)}
.ss-chip[aria-pressed="true"]{border-color:#c4561f;background:#fff5ef;box-shadow:0 0 0 2px rgba(196,86,31,.15)}
.ss-input{width:100%;border:1px solid #d9d5cc;border-radius:12px;padding:12px 14px;font-size:15px;background:#fff;resize:vertical}
.ss-chat-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding-bottom:4px}
.ss-chat-info h1{margin:4px 0 2px;font-family:var(--display);font-size:26px;font-weight:600;line-height:1.15}
.ss-chat-info p{margin:0;font-size:13px;color:var(--hmuted)}
.ss-topic{background:#fff;border:1px solid #f3dccb;border-radius:16px;padding:12px 16px;font-size:14px;line-height:1.5;color:#5b3c28}
.ss-msgs{flex:1 1 auto!important;flex-shrink:1!important;min-height:200px;overflow:auto;display:flex;flex-direction:column;gap:14px;padding:6px 2px 16px}
.ss-msg{display:flex;gap:10px;align-items:flex-start;max-width:760px}
.ss-msg.me{align-self:flex-end;flex-direction:row-reverse}
.ss-bubble-w{min-width:0}
.ss-name{font-size:13px;font-weight:800;margin:0 0 4px 2px}.ss-name small{color:var(--hfaint);font-weight:600}
.ss-bubble{background:#fff;border:1px solid var(--hline);border-radius:4px 18px 18px 18px;padding:10px 14px;font-size:15px;line-height:1.55}
.ss-msg.me .ss-bubble{background:#0b6e8f;border-color:#0b6e8f;color:#fff;border-radius:18px 4px 18px 18px}
.ss-bubble p{margin:0 0 6px}.ss-bubble p:last-child{margin:0}.ss-bubble ul{margin:4px 0;padding-left:18px}
.ss-msg.typing .ss-bubble{color:var(--hmuted);font-size:14px}
.ss-wait{background:#fff;border:1px dashed #f0c7aa;border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.ss-wait p{margin:0;color:var(--hmuted);line-height:1.5}
.ss-summary{background:#f3faf6!important;border-color:#bfe3cf!important;display:flex;flex-direction:column;gap:6px}
.ss-summary p{margin:0 0 4px}.ss-summary ul{margin:0;padding-left:18px}
.ss-foot{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(246,245,242,0),var(--bg) 30%);padding:12px 0 18px;display:flex;flex-direction:column;gap:8px}
.ss-mentions{display:flex;gap:6px;flex-wrap:wrap}
.ss-mentions button{border:1px solid var(--hline);background:#fff;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:700;color:var(--ice)}
.ss-form{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px}
.ss-form input{min-height:48px;border-radius:14px;border:1px solid #d9d5cc;padding:0 14px;font-size:15px;background:#fff}
.ss-form .send{border:0;border-radius:14px;background:#0b6e8f;display:flex;align-items:center;justify-content:center}
.ss-foot>.hm-btn{align-self:flex-start}
@media (max-width:760px){
  .sessions-view{padding:16px 14px 0}
  .ss-head h1,.ss-new h1{font-size:28px}
  .ss-chat-head{grid-template-columns:minmax(0,1fr) auto}.ss-chat-head>.hm-link{grid-column:1/-1}
  .ss-chat-head .hm-stack .hm-av{width:32px;height:32px}
  .ss-foot{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
  .ss-form input{font-size:16px}
  .ss-msg{max-width:100%}
}

/* ---------- Mobile Navigation: schwebendes Dock ---------- */
@media (max-width:760px){
  .shell{padding-bottom:0}
  .mobile-nav{--mn-accent:#0b6e8f;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));height:68px;padding:6px;border:1px solid rgba(255,255,255,.7);border-radius:24px;
    background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(20px) saturate(1.7);backdrop-filter:blur(20px) saturate(1.7);
    box-shadow:0 12px 32px rgba(13,47,60,.16),0 2px 6px rgba(13,47,60,.06);gap:2px}
  .mobile-nav button{gap:3px;border-radius:18px;color:#6a7a82;font-size:10.5px;font-weight:700;letter-spacing:.01em;-webkit-tap-highlight-color:transparent;transition:color .2s}
  .mobile-nav button:active .mn-ico{transform:scale(.9)}
  .mn-ico{width:46px;height:30px;border-radius:15px;display:flex;align-items:center;justify-content:center;transition:background .25s,transform .15s,box-shadow .25s}
  .mn-ico svg{width:23px;height:23px;stroke-width:1.7}
  .mn-fill{fill:currentColor;stroke:none;opacity:0;transition:opacity .2s}
  .mn-dotc{fill:currentColor;stroke:none}
  .mobile-nav button[aria-current="true"]{color:var(--mn-accent)}
  .mobile-nav button[aria-current="true"] .mn-ico{background:linear-gradient(135deg,#0d4f66,#0b6e8f 55%,#2a93b8);color:#fff;box-shadow:0 6px 14px rgba(11,110,143,.32)}
  .mobile-nav button[aria-current="true"] .mn-fill{opacity:.22}
  .mobile-nav button[aria-current="true"] svg{stroke-width:1.9}
  .mobile-nav button[data-view="body"][aria-current="true"] .mn-ico{background:linear-gradient(135deg,#3a2f86,#4b3fa0 55%,#7a6ad6);box-shadow:0 6px 14px rgba(75,63,160,.32)}
  .mobile-nav button[data-view="body"][aria-current="true"]{color:#4b3fa0}
  .mobile-nav button[data-view="labs"][aria-current="true"] .mn-ico{background:linear-gradient(135deg,#b3261e,#d8483a 55%,#f07a5a);box-shadow:0 6px 14px rgba(200,60,40,.3)}
  .mobile-nav button[data-view="labs"][aria-current="true"]{color:#c23a2c}
  .mobile-nav button[data-view="bots"][aria-current="true"] .mn-ico{background:linear-gradient(135deg,#b24a15,#d8662a 55%,#f09a56);box-shadow:0 6px 14px rgba(200,90,30,.3)}
  .mobile-nav button[data-view="bots"][aria-current="true"]{color:#c4561f}
  .mn-me span{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#dfe9ed,#c9dbe2);color:#0d2f3c;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid #fff;box-shadow:0 1px 3px rgba(13,47,60,.15)}
  .mobile-nav button[data-view="profile"] .mn-ico{width:auto;background:none;box-shadow:none}
  .nav-dot{top:6px;left:calc(50% + 10px);width:10px;height:10px;border:2px solid #fff;background:#e0663a;box-shadow:0 0 0 0 rgba(224,102,58,.5);animation:mn-ping 2s ease-out infinite}
  @keyframes mn-ping{0%{box-shadow:0 0 0 0 rgba(224,102,58,.45)}70%,100%{box-shadow:0 0 0 7px rgba(224,102,58,0)}}
  .home-view{padding-bottom:calc(104px + env(safe-area-inset-bottom))}
  .labs-view,.body-view{padding-bottom:calc(104px + env(safe-area-inset-bottom))}
  .sidebar{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
  .chat .composer{margin-bottom:calc(84px + env(safe-area-inset-bottom))}
  .ss-foot{padding-bottom:calc(92px + env(safe-area-inset-bottom))}
  .dash{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
}
@media (max-width:760px) and (prefers-reduced-motion:reduce){ .nav-dot{animation:none} .mn-ico{transition:none} }

/* ---------- Home: Platzhalter ---------- */
.hm-prov{font-style:normal;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#a5611b;background:#fdf0e1;border:1px solid #f6d4ab;border-radius:999px;padding:2px 8px;margin-top:6px}
.hm-sub-hint{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--hfaint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;border:1px dashed rgba(11,110,143,.22);border-radius:8px;padding:3px 8px}
.hm-sub-dot{width:7px;height:7px;border-radius:50%;border:1.5px solid var(--c);flex-shrink:0}
.hm-sub.missing{opacity:1}.hm-sub.missing .hm-sub-l{color:var(--hmuted)}.hm-sub.missing b{color:var(--hfaint)}
.hm-cover{display:grid;grid-template-columns:1fr;gap:6px;margin-top:6px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.6);border:1px solid rgba(11,110,143,.12);font-size:12px;color:var(--hmuted);line-height:1.45}
.hm-cover .hm-link{padding:0;font-size:12px}
.hm-cover-bar{display:flex;gap:3px;height:6px}.hm-cover-bar i{border-radius:3px;border:1px dashed rgba(11,110,143,.28)}
.hm-cover-bar i[style*="transparent"]{border-style:dashed}
.hm-skel li label{background:rgba(255,255,255,.08);cursor:default}
.hm-skel-box{width:20px;height:20px;border-radius:6px;border:2px solid rgba(255,255,255,.35);flex-shrink:0}
.hm-skel-line{display:block;height:10px;border-radius:5px;background:rgba(255,255,255,.22);margin:3px 0}
.hm-skel-line.sm{height:7px;opacity:.6}
.hm-skel.pulse .hm-skel-line,.hm-skel.pulse .hm-skel-box{animation:hm-pulse 1.4s ease-in-out infinite}
.hm-miss{background:rgba(255,255,255,.55)!important;border-style:dashed!important;border-color:#cfe0e6!important}
.hm-miss .hm-val{color:#b7c6cc}
.hm-miss-t{margin:0;font-size:12px;line-height:1.45;color:var(--hmuted)}
.hm-miss .hm-link{padding:0;font-size:12px;margin-top:-2px}
.hm-ghost-line{stroke:#c7d7dd}
.hm-m .hm-ghost-line{margin-top:auto;width:100%;height:40px}
.hm-gauge.ghost{opacity:.6}
.hm-phases.ghost{margin-top:auto}.hm-phases.ghost i{background:#e3ecef}.hm-phases.ghost i:nth-child(2){background:#edf3f5}
.hm-mini-bars.ghost i{background:#e3ecef;opacity:1}
.hm-hint{margin:0;font-size:12px;line-height:1.5;color:var(--hmuted)}
.hm-kv4 div.na strong{font-size:13px;color:var(--hfaint);font-weight:600}
.hm-mini-body.ghost>svg{opacity:.35;filter:grayscale(1)}
.hm-bring.ghost svg{opacity:.5}
.hm-flag.na{background:#f6f9fa;border:1px dashed #d6e3e8}.hm-flag.na b{color:var(--hfaint)}
.hm-week.ghost i{background:repeating-linear-gradient(135deg,#e6ebf6 0 6px,#f1f4fa 6px 12px)!important;opacity:1}
.hm-sess.ghost{cursor:default;background:rgba(255,255,255,.6)!important;border-style:dashed!important;border-color:#ecd5c3!important}
.hm-sess.ghost:hover{transform:none;box-shadow:none}
.hm-sess.ghost .hm-stack{opacity:.55;filter:grayscale(.6)}
.hm-sess-tag{margin-left:auto;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--hfaint);border:1px solid var(--hline);border-radius:999px;padding:2px 8px;background:#fff}
.hm-sess.start{cursor:default;background:linear-gradient(135deg,#fff5ef,#fff)!important;align-items:flex-start}
.hm-sess.start:hover{transform:none}
.hm-sess .hm-sess-free{-webkit-line-clamp:unset;display:block}
.hm-imp.ghost{background:rgba(255,255,255,.6);border-style:dashed}
.hm-imp.ghost .hm-av{filter:grayscale(.3)}
.hm-skel-p .hm-skel-line{background:#e6eef1;height:9px;margin:5px 0}
.hm-warn{grid-column:1/-1;background:#fff7ec;border:1px solid #f6d4ab;color:#7a4a12;border-radius:14px;padding:10px 14px;font-size:13px}
.hm-warn .hm-link{padding:0}
.hm-sub.missing .hm-sub-hint{grid-column:2 / 4;white-space:normal;line-height:1.3}
.hm-sub.missing small{grid-column:4}

/* ---------- Supplements ---------- */
.nav-supps .nav-ico{background:#e2f3ea;color:#2f8f6b}
.nav-supps[aria-current="true"]{background:#eef8f2;border-color:#bfe3cf}
.supps-view{display:none;flex-direction:column;gap:18px;overflow:auto;min-height:0;min-width:0;padding:26px 30px 48px;
  --ice:#2f8f6b;--ink:#0f2f26;--hmuted:#56705f;--hfaint:#7b9185;--hline:#dfeae3;--good:#1e8e5a;
  background:linear-gradient(180deg,#e8f5ee 0,#f3f8f5 380px,var(--bg) 1000px);color:var(--ink)}
.supps-view>*{flex-shrink:0}
.shell[data-view="supps"] .supps-view{display:flex;grid-column:2/-1}
.shell[data-view="supps"] .chat,.shell[data-view="supps"] .dash{display:none}
.supps-view .card{border-color:var(--hline);border-radius:22px}
.supps-view .hm-btn.primary{background:#2f8f6b;border-color:#2f8f6b}
.sp-hero{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:24px;align-items:center;background:radial-gradient(120% 140% at 15% 0%,#fff 0,#e6f5ec 55%,#cfeadb 100%);border:1px solid #cfe6d8;border-radius:26px;padding:26px 28px;position:relative;overflow:hidden}
.sp-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 88% 30%,rgba(47,143,107,.10) 0 2px,transparent 2px) 0 0/14px 14px;mask-image:linear-gradient(90deg,transparent 40%,#000)}
.sp-hero h1{margin:4px 0 8px;font-family:var(--display);font-size:38px;font-weight:600;line-height:1.05}
.sp-lead{margin:0;color:#34503f;font-size:15px;line-height:1.55;max-width:680px}
.sp-basis{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}
.sp-basis span{font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:#fff;border:1px solid #cfe6d8;color:#2f6f55}
.sp-basis span.off{border-style:dashed;color:#8a6d2f;border-color:#ecd9b0;background:#fffaf0}
.sp-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sp-hero-r{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;position:relative;z-index:1}
.sp-nora{position:relative;width:132px;height:132px;border-radius:38px;overflow:visible;border:0;padding:0;background:none}
.sp-nora img{width:100%;height:100%;object-fit:cover;border-radius:38px;border:4px solid #fff;box-shadow:0 14px 30px rgba(20,80,55,.18)}
.sp-nora .ki-badge{position:absolute;right:-2px;bottom:-2px;font-style:normal;font-size:11px;font-weight:800;letter-spacing:.04em;color:#fff;background:#0f2f26;border:2px solid #fff;border-radius:999px;padding:2px 7px;line-height:1.2}
.sp-hero-r strong{font-size:16px;margin-top:6px}.sp-hero-r span{font-size:12px;color:var(--hmuted)}
.sp-busy{display:flex;align-items:center;gap:14px;background:#fff}.sp-busy p{margin:0;color:var(--hmuted)}
.sp-sec{display:flex;flex-direction:column;gap:12px}
.sp-count{font-size:13px;font-weight:700;color:#2f8f6b}
.sp-day{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sp-slot{display:flex;flex-direction:column;gap:8px;background:#fff;padding:16px}
.sp-slot-h{display:flex;align-items:center;gap:8px;margin-bottom:2px}
.sp-ico{width:30px;height:30px;border-radius:10px;background:#e6f4ec;color:#2f8f6b;display:inline-flex;align-items:center;justify-content:center}
.sp-ico svg{width:18px;height:18px}
.sp-slot:nth-child(3) .sp-ico{background:#fbeee2;color:#c26a2a}.sp-slot:nth-child(4) .sp-ico{background:#e9e8f8;color:#4b3fa0}
.sp-take{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:14px;background:#f3f9f5;border:1px solid #e0eee6;cursor:pointer}
.sp-take input{width:20px;height:20px;accent-color:#2f8f6b;flex-shrink:0;margin:1px 0 0}
.sp-take-t{display:flex;flex-direction:column;gap:2px;min-width:0}.sp-take-t b{font-size:14px}.sp-take-t span{font-size:12px;color:var(--hmuted)}
.sp-take-t .sp-freq{color:#8a6d2f;font-weight:700}
.sp-take.done{background:#e3f3ea}.sp-take.done b{text-decoration:line-through;opacity:.65}
.sp-none{margin:0;font-size:13px;color:var(--hfaint)}
.sp-slot.ghost{background:rgba(255,255,255,.6);border-style:dashed}
.sp-skel{display:block;height:34px;border-radius:12px;background:repeating-linear-gradient(135deg,#eef5f1 0 8px,#f6faf8 8px 16px)}
.sp-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.sp-item{display:flex;flex-direction:column;gap:10px;background:#fff;border-top:4px solid #9fd3b9!important}
.sp-item.pr-basis{border-top-color:#2f8f6b!important}.sp-item.pr-optional{border-top-color:#d9e6de!important}
.sp-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sp-prio{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 9px;border-radius:999px;background:#e6f4ec;color:#2f7a5a}
.sp-prio.pr-basis{background:#2f8f6b;color:#fff}.sp-prio.pr-optional{background:#f1f4f2;color:#6a7d72}
.sp-ev{display:flex;align-items:center;gap:3px}.sp-ev i{width:8px;height:8px;border-radius:50%;background:#dfe9e3}.sp-ev i.on{background:#2f8f6b}.sp-ev small{font-size:11px;color:var(--hfaint);margin-left:4px}
.sp-item h3{margin:0;font-size:20px}
.sp-form{margin:-6px 0 0;font-size:13px;color:var(--hmuted)}
.sp-dose{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:16px;background:linear-gradient(135deg,#f0f9f4,#e4f3ea)}
.sp-dose strong{font-size:26px;letter-spacing:-.02em}.sp-dose span{font-size:13px;font-weight:600;color:#2f6f55}
.sp-facts{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.sp-facts li{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:#f4f7f5;border:1px solid #e3ece6;color:#3e5a4a}
.sp-meter{display:flex;flex-direction:column;gap:5px}
.sp-meter-bar{position:relative;height:8px;border-radius:4px;background:#eef3f0}
.sp-meter-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:4px;background:#2f8f6b}
.sp-meter-bar .mk{position:absolute;top:-4px;bottom:-4px;width:2px;background:#8aa596;border-radius:1px}
.sp-meter-bar .mk.ul{background:#c0392b}
.sp-meter small{font-size:11px;color:var(--hmuted);line-height:1.4}
.sp-meter.lv-above_bfr .sp-meter-bar i{background:#e0a020}.sp-meter.lv-above_bfr small{color:#8a5d06;font-weight:700}
.sp-meter.lv-above_ul .sp-meter-bar i{background:#c0392b}.sp-meter.lv-above_ul small{color:#a02a24;font-weight:700}
.sp-why{margin:0;font-size:14px;line-height:1.5}
.sp-based{display:flex;flex-wrap:wrap;gap:5px}.sp-based span{font-size:11px;font-weight:700;padding:3px 8px;border-radius:8px;background:#eef6fb;color:#0b6e8f}
.sp-caution{font-size:13px;line-height:1.45;padding:10px 12px;border-radius:12px;background:#fff7ec;border:1px solid #f6d4ab;color:#6d4512}
.sp-item .hm-link{margin-top:auto}
.sp-extras{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.sp-box{background:#fff;display:flex;flex-direction:column;gap:8px}
.sp-box h3{margin:0;font-size:16px}
.sp-box ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.sp-box li{font-size:13px;line-height:1.45;display:flex;flex-direction:column;gap:1px}
.sp-box li span{color:var(--hmuted)}
.sp-box.food li::before{content:"";width:6px;height:6px;border-radius:50%;background:#2f8f6b;display:inline-block;margin-right:6px}
.sp-box.food li{display:block}
.sp-box.avoid{border-left:4px solid #e0663a}.sp-box.labs{border-left:4px solid #0b6e8f}.sp-box.q{border-left:4px solid #8b7ee0}
.sp-q{border:1px solid #e1ddf6;background:#f7f6fd;border-radius:12px;padding:9px 12px;text-align:left;font-size:13px;color:#3c3470}
.sp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sp-step{background:#fff;display:flex;flex-direction:column;gap:6px}
.sp-step p{margin:0;font-size:13px;color:var(--hmuted);line-height:1.5}
.sp-step-n{width:32px;height:32px;border-radius:50%;background:#e6f4ec;color:#2f8f6b;font-weight:800;display:flex;align-items:center;justify-content:center}
.sp-step.done .sp-step-n{background:#2f8f6b;color:#fff}
.sp-formcard{display:flex;flex-direction:column;gap:14px;background:#fff;scroll-margin-top:16px}
.sp-formcard h2{margin:0;font-family:var(--display);font-size:26px;font-weight:600}
.sp-formcard textarea{font-size:15px}
.sp-formcard .select{min-height:44px;border:1px solid #d9d5cc;border-radius:12px;padding:0 10px;background:#fff}
.sp-chips{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.sp-chips legend{font-size:14px;font-weight:600;margin-bottom:6px;padding:0}
.sp-chips button{border:1.5px solid var(--hline);background:#fff;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:600;color:#3e5a4a}
.sp-chips button[aria-pressed="true"]{background:#2f8f6b;border-color:#2f8f6b;color:#fff}
.sp-chat .bchat{margin:0}
/* Home-Block */
.hm-supps{display:flex;flex-direction:column;gap:12px;background:linear-gradient(180deg,#f1faf5,#fff)!important;border-color:#d4ebdd!important}
.hm-supps.ghost{border-style:dashed!important}
.hm-supps-h{display:flex;align-items:center;gap:12px}
.hm-supps-h strong{display:block;font-size:16px}.hm-supps-h span{display:block;font-size:12px;color:var(--hmuted)}
.hm-supps-h .hm-btn{margin-left:auto;background:#2f8f6b;border-color:#2f8f6b}
.hm-supps-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.hm-supps-slot{display:flex;flex-direction:column;gap:6px}
.hm-supps-slot small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#2f7a5a}
.hm-supps-slot label{display:flex;gap:9px;align-items:center;padding:8px 10px;border-radius:12px;background:#fff;border:1px solid #e0eee6;cursor:pointer}
.hm-supps-slot input{width:18px;height:18px;accent-color:#2f8f6b;flex-shrink:0}
.hm-supps-slot label span{display:flex;justify-content:space-between;gap:8px;flex:1;min-width:0;font-size:13px}
.hm-supps-slot label em{font-style:normal;color:var(--hmuted);white-space:nowrap}
.hm-supps-slot label.done b{text-decoration:line-through;opacity:.6}
.hm-supps .hm-skel-line{background:#e3efe8}
@media (max-width:1180px){ .sp-day{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:760px){
  .shell .supps-view{display:none}
  .shell[data-view="supps"] .supps-view{display:flex;grid-column:1/-1}
  .supps-view{padding:16px 14px calc(104px + env(safe-area-inset-bottom));gap:16px}
  .sp-hero{grid-template-columns:1fr;padding:20px 18px}
  .sp-hero-r{order:-1;flex-direction:row;text-align:left;gap:12px;align-items:center}
  .sp-hero-r strong,.sp-hero-r span{margin:0}
  .sp-nora{width:64px;height:64px}.sp-nora img{border-radius:20px;border-width:3px}
  .sp-hero h1{font-size:30px}
  .sp-day{grid-template-columns:1fr}
  .sp-steps{grid-template-columns:1fr}
  .sp-items{grid-template-columns:1fr}
  .hm-supps-h{flex-wrap:wrap}.hm-supps-h .hm-btn{margin-left:0;width:100%}
}
.sp-hero-who{display:flex;flex-direction:column;gap:2px}

/* ---------- Lagebild ---------- */
.nav-neuro .nav-ico{background:#e6e9f8;color:#3b4fa8}
.nav-neuro[aria-current="true"]{background:#eef0fb;border-color:#c9cff0}
.neuro-view{display:none;flex-direction:column;gap:18px;overflow:auto;min-height:0;min-width:0;padding:26px 30px 48px;
  --ice:#3b4fa8;--ink:#171d3a;--hmuted:#5a6181;--hfaint:#8187a3;--hline:#e1e4f2;
  background:linear-gradient(180deg,#eceffb 0,#f4f5fb 380px,var(--bg) 1100px);color:var(--ink)}
.neuro-view>*{flex-shrink:0}
.shell[data-view="neuro"] .neuro-view{display:flex;grid-column:2/-1}
.shell[data-view="neuro"] .chat,.shell[data-view="neuro"] .dash{display:none}
.neuro-view .card{border-color:var(--hline);border-radius:22px;background:#fff}
.neuro-view .hm-btn.primary{background:#3b4fa8;border-color:#3b4fa8}
.nr-hero{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px;align-items:center;background:radial-gradient(120% 140% at 10% 0%,#fff 0,#e9ecfb 55%,#d7dcf6 100%);border:1px solid #d3d8f2;border-radius:26px;padding:26px 28px;position:relative;overflow:hidden}
.nr-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-radial-gradient(circle at 85% 50%,rgba(59,79,168,.06) 0 1px,transparent 1px 22px)}
.nr-hero h1{margin:4px 0 8px;font-family:var(--display);font-size:38px;font-weight:600;line-height:1.05}
.nr-headline{margin:0;font-size:17px;line-height:1.5;color:#27305a;max-width:720px}
.nr-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.nr-chips span{font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:#fff;border:1px solid #d3d8f2;color:#3b4fa8}
.nr-hero-r{position:relative;z-index:1}
.nr-arc{position:relative;width:100%;max-width:260px;padding-bottom:18px}.nr-arc svg{width:100%;height:auto;display:block}
.nr-arc-c{position:absolute;left:0;right:0;bottom:0;text-align:center;display:flex;flex-direction:column}
.nr-arc-c strong{font-size:15px;line-height:1.2;max-width:150px;margin:0 auto}.nr-arc-c span{font-size:11px;font-weight:700;color:var(--hmuted);text-transform:uppercase;letter-spacing:.06em}
.nr-support{border-radius:18px;padding:16px 18px;background:#eef4ff;border:1px solid #c9d8f6;display:flex;flex-direction:column;gap:8px}
.nr-support.urgent{background:#fff4ec;border-color:#f3c9a6}
.nr-support p{margin:0;line-height:1.5}.nr-support-row{display:flex;gap:8px;flex-wrap:wrap}.nr-support-row a{text-decoration:none}
.nr-checkin{display:flex;flex-direction:column;gap:12px}
.nr-checkin h2{margin:0;font-size:20px}
.nr-scale{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.nr-scale legend{font-size:14px;font-weight:700;margin-bottom:4px;padding:0}
.nr-scale-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;max-width:420px}
.nr-scale-row button{min-height:44px;border-radius:12px;border:1.5px solid var(--hline);background:#f7f8fd;font-weight:800;color:#3b4fa8}
.nr-scale-row button[aria-pressed="true"]{background:#3b4fa8;border-color:#3b4fa8;color:#fff}
.nr-scale-ends{display:flex;justify-content:space-between;max-width:420px;font-size:11px;color:var(--hfaint);font-weight:600}
.nr-opts{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.nr-opts legend{font-size:14px;font-weight:700;margin-bottom:6px;padding:0}
.nr-opts button{border:1.5px solid var(--hline);background:#fff;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600}
.nr-opts button[aria-pressed="true"]{background:#3b4fa8;border-color:#3b4fa8;color:#fff}
.nr-checkin .hm-btn{align-self:flex-start}
.nr-checkin.done{background:linear-gradient(135deg,#f3f5ff,#fff)}
.nr-ci-h{display:flex;justify-content:space-between;align-items:center}
.nr-ci-sum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.nr-ci-sum div{display:flex;flex-direction:column;gap:3px}.nr-ci-sum small{font-size:11px;font-weight:700;color:var(--hmuted)}
.nr-dots{display:flex;gap:3px}.nr-dots i{width:14px;height:6px;border-radius:3px;background:#e1e4f2}.nr-dots i.on{background:#3b4fa8}
.nr-sec{display:flex;flex-direction:column;gap:12px}
.nr-legend{font-size:12px;color:var(--hfaint);font-weight:600}
.nr-domains{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.nr-dom{display:flex;flex-direction:column;gap:10px}
.nr-dom-top{display:flex;align-items:center;gap:10px}.nr-dom-top strong{font-size:15px}
.nr-ico{width:34px;height:34px;border-radius:11px;background:#eef0fb;color:#3b4fa8;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.nr-ico svg{width:20px;height:20px}
.nr-meter{position:relative;height:10px;border-radius:5px;background:linear-gradient(90deg,#e3f2ef 0 20%,#e8eef9 20% 40%,#f8efdc 40% 65%,#f7e6d9 65%)}
.nr-meter i{position:absolute;left:0;top:0;bottom:0;border-radius:5px;background:var(--lv,#3b4fa8)}
.nr-meter span{position:absolute;top:-2px;bottom:-2px;width:2px;background:#fff}
.nr-meter.learn{background:#eef0fb}.nr-meter.learn i{background:#3b4fa8}
.nr-dom-lv{display:flex;align-items:center;justify-content:space-between;gap:8px}.nr-dom-lv b{font-size:15px;color:var(--lv)}
.nr-conf{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:#f1f2f8;color:var(--hmuted)}
.nr-conf.c-hoch{background:#e6f3ef;color:#2d7f73}.nr-conf.c-niedrig{background:#fbf3e4;color:#8a6420}
.nr-self{margin:0;font-size:12px;font-weight:700;color:#3b4fa8}
.nr-drv{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.nr-drv li{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;font-size:13px}
.nr-drv li span{display:flex;flex-direction:column;min-width:0}.nr-drv small{color:var(--hmuted);font-size:11px}
.nr-none{margin:0;font-size:13px;color:var(--hmuted)}
.nr-grade{border:0;border-radius:999px;font-size:10px;font-weight:800;padding:3px 8px;white-space:nowrap;cursor:pointer;flex-shrink:0}
.nr-grade.g-A{background:#2d7f73;color:#fff}.nr-grade.g-B{background:#dcebe8;color:#236a60}.nr-grade.g-C{background:#f1f2f8;color:#5a6181}
.nr-recs{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.nr-rec{display:flex;flex-direction:column;gap:6px;border-left:4px solid #3b4fa8!important}
.nr-rec-h{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.nr-rec p{margin:0;font-size:14px;line-height:1.5;color:#2c3355}
.nr-chain{background:linear-gradient(135deg,#1f2a66,#3b4fa8)!important;color:#fff;border:0!important;display:flex;flex-direction:column;gap:12px}
.nr-chain .hm-eyebrow{color:#b9c3f5}.nr-chain h2{margin:0;font-family:var(--display);font-size:24px;font-weight:600}
.nr-flow{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:10px;counter-reset:s}
.nr-flow li{position:relative;display:flex;flex-direction:column;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:14px}
.nr-flow li:not(:last-child)::after{content:"→";position:absolute;right:-12px;top:50%;transform:translateY(-50%);font-weight:800;color:#b9c3f5;z-index:1}
.nr-flow p{margin:0;font-size:14px;line-height:1.45}
.nr-step-n{width:26px;height:26px;border-radius:50%;background:#fff;color:#3b4fa8;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.nr-chain .nr-grade.g-C{background:rgba(255,255,255,.2);color:#fff}.nr-chain .nr-grade.g-B{background:#bfe3da;color:#1c5a52}
.nr-chain-more{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.nr-chain-more small{color:#b9c3f5;font-weight:700}
.nr-chain-more button{border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;border-radius:999px;padding:5px 10px;font-size:12px}
.nr-learn{display:flex;flex-direction:column;gap:10px}.nr-learn h2{margin:0;font-size:18px}
.nr-learn-list{margin:0;padding-left:18px;font-size:14px;line-height:1.5}
.nr-acc{display:flex;flex-direction:column;gap:6px;font-size:13px}.nr-acc div{display:grid;grid-template-columns:140px 70px 1fr;gap:8px}.nr-acc small{color:var(--hfaint)}
.nr-lib-ctl{display:flex;flex-direction:column;gap:8px}
.nr-tabs{display:flex;flex-wrap:wrap;gap:6px}
.nr-tabs button{border:1.5px solid var(--hline);background:#fff;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;color:#3b4fa8}
.nr-tabs button[aria-pressed="true"]{background:#3b4fa8;border-color:#3b4fa8;color:#fff}
.nr-lib-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.nr-ev{display:flex;flex-direction:column;gap:8px;text-align:left;padding:14px;cursor:pointer}
.nr-ev:hover{box-shadow:0 8px 20px rgba(40,50,110,.08)}
.nr-ev strong{font-size:14px;line-height:1.4;font-weight:600}
.nr-ev-h{display:flex;justify-content:space-between;align-items:center}.nr-ev-h small{font-size:11px;color:var(--hfaint)}
.nr-sheet{max-width:600px}.nr-sheet h2{font-size:20px;margin:0}
.nr-sheet-row{display:flex;flex-direction:column;gap:3px}.nr-sheet-row small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.nr-sheet-row p{margin:0;font-size:14px;line-height:1.5}.nr-sheet-row a{font-size:13px}
.nr-consent{display:flex;flex-direction:column;gap:16px;max-width:880px}
.nr-consent-h{display:flex;gap:18px;align-items:center}.nr-consent-h img{width:84px;height:84px;border-radius:26px;object-fit:cover}
.nr-consent h1{margin:4px 0 0;font-family:var(--display);font-size:30px;font-weight:600;line-height:1.1}
.nr-lead{margin:0;font-size:16px;line-height:1.55;color:#2c3355}
.nr-consent-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.nr-consent-col{border-radius:16px;padding:14px 16px}.nr-consent-col.yes{background:#eef6f4}.nr-consent-col.no{background:#f5f5fa}
.nr-consent-col ul{margin:8px 0 0;padding-left:18px;font-size:14px;line-height:1.55}
.nr-consent .hm-btn{align-self:flex-start}
.nr-foot{display:flex;flex-direction:column;gap:6px;align-items:center;text-align:center}.nr-foot p{margin:0;font-size:12px;color:var(--hfaint);max-width:760px;line-height:1.5}
/* Home */
.hm-neuro{display:flex;flex-direction:column;gap:12px;background:linear-gradient(135deg,#f3f5ff,#fff)!important;border-color:#d8ddf4!important}
.hm-neuro.ghost{border-style:dashed!important}
.hm-neuro-h{display:flex;align-items:center;gap:12px}
.hm-neuro-h strong{display:block;font-size:15px;line-height:1.4}.hm-neuro-h span{display:block;font-size:12px;color:var(--hmuted)}
.hm-neuro-h .hm-btn{margin-left:auto;background:#3b4fa8;border-color:#3b4fa8;flex-shrink:0}
.hm-neuro-doms{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.hm-neuro-doms div{display:flex;flex-direction:column;gap:4px}
.hm-neuro-doms small{font-size:11px;font-weight:700;color:var(--hmuted)}
.hm-neuro-doms em{font-style:normal;font-size:11px;color:var(--hfaint)}
.hm-neuro-m{height:8px;border-radius:4px;background:#e8eaf6;overflow:hidden;display:block}.hm-neuro-m i{display:block;height:100%;border-radius:4px}
.hm-neuro.ghost .hm-neuro-m{background:repeating-linear-gradient(135deg,#e8eaf6 0 6px,#f3f4fa 6px 12px)}
.hm-neuro-rec{margin:0;font-size:13px;line-height:1.5;color:#2c3355}
@media (max-width:1180px){ .nr-domains{grid-template-columns:repeat(2,minmax(0,1fr))} .nr-flow{grid-auto-flow:row} .nr-flow li:not(:last-child)::after{content:"↓";right:auto;left:50%;top:auto;bottom:-14px;transform:none} }
@media (max-width:760px){
  .shell .neuro-view{display:none}
  .shell[data-view="neuro"] .neuro-view{display:flex;grid-column:1/-1}
  .neuro-view{padding:16px 14px calc(104px + env(safe-area-inset-bottom));gap:16px}
  .nr-hero{grid-template-columns:1fr;padding:20px 18px}.nr-hero h1{font-size:30px}.nr-hero-r{max-width:220px;margin:0 auto}
  .nr-domains{grid-template-columns:1fr}
  .nr-ci-sum{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nr-consent-grid{grid-template-columns:1fr}
  .hm-neuro-doms{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hm-neuro-h{flex-wrap:wrap}.hm-neuro-h .hm-btn{margin-left:0;width:100%}
}
.nr-checkin textarea,.sp-formcard textarea{font-family:var(--sans)}
.nr-bg{display:flex;flex-direction:column;gap:10px}
.nr-bg-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:var(--bg-soft,#f5f6fa)}
.nr-bg-row>div{flex:1;display:flex;flex-direction:column;gap:2px}.nr-bg-row small{color:var(--muted,#6b7280)}
.tel-link{font-weight:700;color:inherit;text-decoration:underline}

/* ---------- Ernährung (Essens-Labor) ---------- */
.nav-food .nav-ico{background:#fbe9dc;color:#d9621e}
.nav-food[aria-current="true"]{background:#fdf2ea;border-color:#f3cfb4}
.food-view{display:none;flex-direction:column;gap:18px;overflow:auto;min-height:0;min-width:0;padding:26px 30px 48px;
  --ice:#d9621e;--ink:#2d1a0e;--hmuted:#72594a;--hfaint:#9a8374;--hline:#f0e2d6;--leaf:#3f8f4f;
  background:linear-gradient(180deg,#fdf0e6 0,#faf6f1 420px,var(--bg) 1100px);color:var(--ink)}
.food-view>*{flex-shrink:0}
.shell[data-view="food"] .food-view{display:flex;grid-column:2/-1}
.shell[data-view="food"] .chat,.shell[data-view="food"] .dash{display:none}
.food-view .card{border-color:var(--hline);border-radius:22px;background:#fff}
.food-view .hm-btn.primary{background:#d9621e;border-color:#d9621e}
.food-view h2{font-size:20px;margin:0}
.fd-ico,.fd-mini{display:inline-flex}.fd-ico svg,.fd-mini svg{width:100%;height:100%}
.fd-mini{width:16px;height:16px;flex-shrink:0}
.fd-hero{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:26px;align-items:center;border-radius:28px;padding:28px 30px;position:relative;overflow:hidden;
  background:radial-gradient(120% 150% at 8% 0%,#fff 0,#fde9da 50%,#f7d3b8 100%);border:1px solid #f1d2bb}
.fd-hero::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(63,143,79,.16),transparent 70%);pointer-events:none}
.fd-hero h1{margin:4px 0 8px;font-family:var(--display);font-size:40px;font-weight:600;line-height:1.04}
.fd-hero p{margin:0 0 18px;color:#5b4032;font-size:15px;line-height:1.55;max-width:640px}
.fd-cam{display:inline-flex;align-items:center;gap:12px;border:0;border-radius:18px;padding:14px 22px 14px 16px;font-size:16px;font-weight:800;color:#fff;cursor:pointer;
  background:linear-gradient(135deg,#b84a12,#d9621e 55%,#ef8c4a);box-shadow:0 10px 24px rgba(217,98,30,.32);transition:transform .15s}
.fd-cam:active{transform:scale(.97)}.fd-cam:disabled{opacity:.7;cursor:progress}
.fd-cam-i{width:34px;height:34px;padding:6px;border-radius:12px;background:rgba(255,255,255,.2)}
.fd-hero-r{display:flex;align-items:center;gap:18px;position:relative;z-index:1}
.fd-ring{position:relative;width:140px;height:140px;flex-shrink:0}
.fd-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.fd-ring circle{fill:none;stroke-width:12}.fd-ring .bg{stroke:rgba(63,143,79,.14)}.fd-ring .fg{stroke:var(--leaf);stroke-linecap:round;transition:stroke-dasharray .6s}
.fd-ring-c{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.fd-ring-c strong{font-size:38px;font-family:var(--display);line-height:1;color:#24552f}.fd-ring-c span{font-size:11.5px;font-weight:700;color:#4e6b55}
.fd-hero-stats{display:flex;flex-direction:column;gap:10px}
.fd-hero-stats div,.fd-wtop div,.fd-targets div{display:flex;flex-direction:column}
.fd-hero-stats b{font-size:22px;font-weight:800}.fd-hero-stats small{font-size:12px;color:var(--hmuted)}
.fd-busy{display:flex;align-items:center;gap:14px;padding:18px 20px}.fd-busy p{margin:0;color:var(--hmuted)}
.fd-result{display:grid;grid-template-columns:260px minmax(0,1fr);gap:0;overflow:hidden;position:relative;animation:fd-in .4s ease}
@keyframes fd-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.fd-result img{width:100%;height:100%;object-fit:cover;min-height:220px}
.fd-result-b{padding:20px 22px;display:flex;flex-direction:column;gap:10px}
.fd-result h2{font-family:var(--display);font-size:26px}
.fd-praise{display:flex;gap:8px;margin:0;font-size:15px;line-height:1.5;color:#3b2a1f}.fd-praise .fd-mini{color:#e0a100;margin-top:3px}
.fd-upgrade{background:linear-gradient(135deg,#fff5ec,#ffe9d8);border:1px solid #f6d3b6;border-radius:16px;padding:12px 14px}
.fd-upgrade strong{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#b84a12}.fd-upgrade p{margin:4px 0 0;font-size:15px;line-height:1.5}
.fd-meta{margin:0;font-size:13px;color:var(--hmuted);font-weight:600}
.fd-x{position:absolute;top:10px;right:12px;border:0;background:rgba(255,255,255,.85);width:32px;height:32px;border-radius:50%;font-size:20px;cursor:pointer}
.fd-chips{display:flex;flex-wrap:wrap;gap:6px}
.fd-chip{--c:#3f8f4f;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:999px;color:var(--c);background:color-mix(in srgb,var(--c) 11%,#fff);border:1px solid color-mix(in srgb,var(--c) 25%,#fff)}
.fd-chip.new{background:var(--c);color:#fff;box-shadow:0 3px 8px color-mix(in srgb,var(--c) 35%,transparent)}
.fd-chip.new::before{content:"+ "}
.fd-chip.ghost{color:#b9a898;background:#faf6f2;border-style:dashed;border-color:#e8dccf}
.fd-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fd-step{text-align:left;padding:16px 18px;cursor:pointer;display:flex;flex-direction:column;gap:6px;font:inherit;color:inherit}
.fd-step p{margin:0;color:var(--hmuted);font-size:13.5px;line-height:1.45}
.fd-step-n{width:30px;height:30px;border-radius:50%;background:#fbe3d2;color:#b84a12;font-weight:800;display:flex;align-items:center;justify-content:center}
.fd-step.done{opacity:.7}.fd-step.done .fd-step-n{background:var(--leaf);color:#fff}
.fd-support{background:#f3f0fb;border:1px solid #d9d2f0;border-radius:20px;padding:16px 18px;display:flex;flex-direction:column;gap:8px}.fd-support p{margin:0;line-height:1.55}
.fd-sec{display:flex;flex-direction:column;gap:12px}
.fd-legend{font-size:12.5px;color:var(--hfaint);font-weight:600}
.fd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.fd-lever{padding:18px;display:flex;flex-direction:column;gap:10px}
.fd-lever.on{border-color:#f0c9a8;box-shadow:0 8px 20px rgba(217,98,30,.07)}
.fd-lever.picked{border-color:#d9621e;box-shadow:0 0 0 2px rgba(217,98,30,.25)}
.fd-lever-h{display:flex;align-items:center;gap:10px}.fd-lever-h strong{flex:1;font-size:16px;line-height:1.25}
.fd-lever-i{width:38px;height:38px;padding:8px;border-radius:13px;background:#fdeee2;color:#c25418;flex-shrink:0}
.fd-grade{font-size:11px;font-weight:800;padding:3px 8px;border-radius:999px;white-space:nowrap;cursor:help}
.fd-grade.g-A{background:#dff3e5;color:#1e7a44}.fd-grade.g-B{background:#e3eef9;color:#245f9e}.fd-grade.g-C{background:#f3eee6;color:#8a6a3c}
.fd-why{margin:0;font-size:13.5px;color:#5b4032;font-weight:600}
.fd-note{margin:0;font-size:13.5px;line-height:1.5;background:#fff6e6;border:1px solid #f3dcae;color:#6a4a10;border-radius:14px;padding:10px 12px}
.fd-tip{margin:0;font-size:13.5px;line-height:1.5;background:#eef7f0;border:1px solid #cfe7d6;color:#24552f;border-radius:14px;padding:10px 12px}
.fd-tip p{margin:4px 0 0}
.fd-actions{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:5px;font-size:14px;line-height:1.45}
.fd-ev summary{cursor:pointer;font-size:13px;font-weight:700;color:#b84a12}
.fd-ev p{font-size:13px;line-height:1.5;color:#4b3a2e;margin:8px 0 0}
.fd-safety{color:#7a5b20!important}
.fd-hits small{font-size:12.5px;color:var(--hmuted);font-weight:600}
.fd-dots{display:flex;gap:5px;margin-top:5px}.fd-dots i{width:100%;max-width:26px;height:8px;border-radius:4px;background:#f3e6da}.fd-dots i.on{background:linear-gradient(90deg,#d9621e,#ef8c4a)}
.fd-proof{background:#fbf7f2;border:1px dashed #e7cdb4;border-radius:14px;padding:10px 12px}
.fd-proof strong{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#8a5a33}.fd-proof p{margin:4px 0 0;font-size:14px}
.fd-proof-r{font-weight:800}.fd-proof-r.good{color:#1e7a44}.fd-proof small{font-size:12.5px;color:var(--hmuted)}
.fd-acts{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.fd-more summary{cursor:pointer;font-weight:700;color:#b84a12;margin-bottom:10px}
.fd-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:26px;text-align:center;cursor:pointer;font:inherit;color:inherit;border-style:dashed!important}
.fd-empty span{color:var(--hmuted);max-width:420px;font-size:14px}.fd-empty-i{width:44px;height:44px;color:#d9621e}
.fd-meals{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,300px);gap:14px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x mandatory}
.fd-meal{overflow:hidden;display:flex;flex-direction:column;scroll-snap-align:start}
.fd-meal img{width:100%;height:170px;object-fit:cover;background:#f6ece3}
.fd-meal-b{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px}
.fd-meal-b small{color:var(--hfaint);font-size:12px;font-weight:600}.fd-meal-b strong{font-size:15.5px}
.fd-praise-s{margin:0;font-size:13px;line-height:1.45;color:#4b3a2e}.fd-up-s{margin:0;font-size:13px;line-height:1.45;color:#b84a12;font-weight:600}
.fd-tags{display:flex;flex-wrap:wrap;gap:5px}.fd-tags span{font-size:11.5px;font-weight:700;padding:3px 8px;border-radius:999px;background:#f6ede4;color:#7a5a44}
.fd-del{align-self:flex-start;border:0;background:none;color:var(--hfaint);font-size:12px;cursor:pointer;padding:0}
.fd-plants{padding:20px 22px;display:flex;flex-direction:column;gap:14px}
.fd-plants-top{display:flex;align-items:center;gap:14px}.fd-plants-top strong{font-size:22px;white-space:nowrap}
.fd-pbar{flex:1;height:12px;border-radius:6px;background:#eef2ea;overflow:hidden}.fd-pbar i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#3f8f4f,#7cbf6a);transition:width .6s}
.fd-pbar.sm{height:8px}
.fd-album{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fd-album-c{--c:#3f8f4f;border-radius:16px;padding:10px 12px;background:color-mix(in srgb,var(--c) 5%,#fff);border:1px solid color-mix(in srgb,var(--c) 15%,#fff);display:flex;flex-direction:column;gap:8px}
.fd-album-c>small{font-weight:800;color:var(--c);font-size:12px}
.fd-album-c .fd-chip{--c:inherit}
.fd-hist{display:flex;align-items:flex-end;gap:8px;height:80px}
.fd-hist div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:4px}
.fd-hist i{width:100%;max-width:34px;min-height:3px;border-radius:6px 6px 3px 3px;background:#cfe5d2}.fd-hist i.full{background:#3f8f4f}
.fd-hist small{font-size:10.5px;color:var(--hfaint)}
.fd-kitchen{background:linear-gradient(135deg,#fff 0,#fbf1e8 100%);border:1px solid var(--hline);border-radius:26px;padding:22px}
.fd-chef{display:flex;align-items:center;gap:16px}.fd-chef img{width:78px;height:78px;border-radius:24px;object-fit:cover;border:3px solid #fff;box-shadow:0 6px 16px rgba(120,60,20,.18)}
.fd-chef h2{font-family:var(--display);font-size:28px}.fd-chef p{margin:4px 0 0;color:var(--hmuted);font-size:14px}
.fd-favs{display:flex;flex-wrap:wrap;gap:8px}
.fd-fav{display:inline-flex;align-items:center;gap:8px;border:1px solid #efd6c2;background:#fff;border-radius:14px;padding:9px 12px;font:inherit;font-weight:700;cursor:pointer;color:#5b3a22}
.fd-fav small{font-size:11px;font-weight:800;color:#fff;background:#b5562b;border-radius:999px;padding:2px 7px}
.fd-fav:hover{border-color:#d9621e}.fd-fav:disabled{opacity:.6}
.fd-wish,.fd-wform,.fd-pass-f{display:flex;gap:8px;flex-wrap:wrap}.fd-wish .ss-input,.fd-wform .ss-input,.fd-pass-f .ss-input{flex:1;min-width:200px}
.fd-recipes{display:flex;flex-direction:column;gap:10px}
.fd-recipe{padding:0;overflow:hidden}
.fd-recipe-h{width:100%;display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:0;background:none;text-align:left;font:inherit;color:inherit;cursor:pointer}
.fd-recipe-h>div{flex:1;display:flex;flex-direction:column;gap:4px}.fd-recipe-h small{color:#b5562b;font-weight:700;font-size:12px}
.fd-recipe-h strong{font-size:17px}.fd-recipe-h>div>span{font-size:13.5px;color:var(--hmuted)}
.fd-chev{font-size:22px;color:#b5562b;font-weight:700}
.fd-recipe-b{padding:0 16px 16px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:18px}
.fd-recipe-b h4{margin:0 0 6px;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:#8a5a33}
.fd-recipe-b ul,.fd-recipe-b ol{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:5px;font-size:14px;line-height:1.45}
.fd-recipe-b>.fd-tip,.fd-recipe-b>.fd-why,.fd-recipe-b>.hm-hint,.fd-recipe-b>.fd-acts{grid-column:1/-1}
.fd-exp{padding:18px;display:flex;flex-direction:column;gap:10px}.fd-exp.done{background:#fbfaf7}
.fd-exp>small{font-size:12.5px;color:var(--hmuted);font-weight:700}
.fd-todo{margin:0;font-size:14px;line-height:1.5;background:#f7f2ec;border-radius:12px;padding:10px 12px}
.fd-log{display:flex;flex-direction:column;gap:6px}.fd-log small{font-size:12.5px;font-weight:700;color:var(--hmuted)}
.fd-opts{display:flex;flex-wrap:wrap;gap:6px}
.fd-opts button{border:1px solid #ecdccd;background:#fff;border-radius:10px;padding:7px 12px;font:inherit;font-weight:700;cursor:pointer;color:#5b3a22;min-width:40px}
.fd-opts button.on{background:#d9621e;border-color:#d9621e;color:#fff}
.fd-opts.sat button{min-width:34px;padding:6px 0}
.fd-res{border-radius:14px;padding:10px 12px;background:#f5f3ef}.fd-res p{margin:4px 0;font-size:13.5px}.fd-res small{font-size:12.5px;color:var(--hmuted)}
.fd-res.s-clear{background:#e8f5ec}.fd-res.s-weak{background:#fbf3e3}
.fd-exp-cat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.fd-exp-mini{text-align:left;border:1px solid var(--hline);background:#fff;border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;font:inherit;color:inherit;cursor:pointer}
.fd-exp-mini:hover{border-color:#d9621e}.fd-exp-mini small{font-size:11.5px;font-weight:700;color:#b84a12}.fd-exp-mini span{font-size:13px;color:var(--hmuted);line-height:1.4}
.fd-exp-mini.off{opacity:.55;cursor:not-allowed}
.fd-weight{padding:20px 22px;display:flex;flex-direction:column;gap:12px}
.fd-wtop,.fd-targets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.fd-wtop b,.fd-targets b{font-size:22px;font-weight:800}.fd-wtop small,.fd-targets small{font-size:12px;color:var(--hmuted)}
.fd-targets{background:#fbf6f0;border-radius:16px;padding:12px 14px}
.fd-miles{display:flex;flex-wrap:wrap;gap:6px}.fd-miles span{font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:#f3ece5;color:#8a6a55}
.fd-miles span.on{background:#3f8f4f;color:#fff}.fd-miles span.on::before{content:"✓ "}
.fd-wchart svg{width:100%;height:auto;display:block}
.fd-wchart .trend{fill:none;stroke:#d9621e;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.fd-wchart .raw{fill:#e7c8ae}.fd-wchart .goal{stroke:#3f8f4f;stroke-width:1.5;stroke-dasharray:5 5}.fd-wchart .gl{fill:#3f8f4f;font-size:12px;font-weight:700}
.fd-src{margin:8px 0 0;padding-left:18px;font-size:12.5px;line-height:1.6}.fd-src a{color:#8a5a33}
.fd-form{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.fd-form .row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.fd-fs{border:1px solid var(--hline);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}
.fd-fs legend{font-weight:800;font-size:13.5px;padding:0 6px;color:#8a5a33}
.fd-yn{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px}.fd-yn span{flex:1;line-height:1.4}
.fd-profile{padding:16px 20px}.fd-profile>summary{cursor:pointer;font-weight:800;font-size:16px}
.fd-taste,.fd-missions{padding:20px 22px;display:flex;flex-direction:column;gap:12px}
.fd-pass{border:1px solid var(--hline);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.fd-pass-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.fd-pass-h strong{font-size:16px}.fd-pass-h .fd-dots{flex:1;min-width:140px;margin:0}.fd-pass-h small{color:var(--hmuted);font-size:12.5px}
.fd-stars{display:flex}.fd-stars button{border:0;background:none;font-size:22px;color:#e8dccf;cursor:pointer;padding:0 2px}.fd-stars button.on{color:#e0a100}
.fd-mlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fd-mission{display:flex;gap:12px;align-items:flex-start;text-align:left;border:1px solid var(--hline);border-radius:16px;background:#fff;padding:12px 14px;font:inherit;color:inherit;cursor:pointer}
.fd-mission div{display:flex;flex-direction:column;gap:3px}.fd-mission span{font-size:13px;color:var(--hmuted);line-height:1.4}
.fd-mcheck{width:26px;height:26px;flex-shrink:0;color:#d4c3b3}.fd-mission.done{background:#f1f8f2;border-color:#cfe7d6}.fd-mission.done .fd-mcheck{color:#fff;background:#3f8f4f;border-radius:50%;padding:4px}
.fd-chats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hm-food{padding:16px 18px;display:flex;flex-direction:column;gap:12px}
.hm-food-h{display:flex;align-items:center;gap:14px}
.hm-food-ring{position:relative;width:58px;height:58px;flex-shrink:0}.hm-food-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.hm-food-ring circle{fill:none;stroke-width:7}.hm-food-ring .bg{stroke:#e5efe3}.hm-food-ring .fg{stroke:#3f8f4f;stroke-linecap:round}
.hm-food-ring b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:17px}
.hm-food-t{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.hm-food-t span{font-size:13px;color:var(--hmuted);line-height:1.4}
.hm-food-cam{background:#d9621e!important;border-color:#d9621e!important;white-space:nowrap}
.hm-food-lv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hm-food-lv div{background:#fdf4ec;border-radius:12px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}
.hm-food-lv small{font-size:12px;font-weight:700;color:#8a5a33}.hm-food-lv b{font-size:13.5px}.hm-food-lv em{font-style:normal;font-size:11.5px;color:var(--hmuted)}
.hm-food-w small{font-size:12.5px;font-weight:700;color:var(--hmuted);display:block;margin-bottom:5px}
@media (max-width:1180px){ .fd-grid,.fd-exp-cat{grid-template-columns:repeat(2,minmax(0,1fr))} .fd-hero{grid-template-columns:1fr} }
@media (max-width:760px){
  .mobile-nav button[data-view="food"][aria-current="true"] .mn-ico{background:linear-gradient(135deg,#b84a12,#d9621e 55%,#ef8c4a);box-shadow:0 6px 14px rgba(217,98,30,.32)}
  .mobile-nav button[data-view="food"][aria-current="true"]{color:#c25418}
  .mn-ico{width:40px}
  .shell .food-view{display:none}
  .shell[data-view="food"] .food-view{display:flex;grid-column:1/-1}
  .food-view{padding:16px 14px calc(104px + env(safe-area-inset-bottom));gap:16px}
  .fd-hero{padding:22px 18px;gap:18px}.fd-hero h1{font-size:31px}
  .fd-hero-r{order:-1}.fd-ring{width:112px;height:112px}.fd-ring-c strong{font-size:30px}
  .fd-cam{width:100%;justify-content:center}
  .fd-result{grid-template-columns:1fr}.fd-result img{max-height:260px}
  .fd-steps,.fd-grid,.fd-exp-cat,.fd-album,.fd-mlist,.fd-chats,.fd-recipe-b{grid-template-columns:1fr}
  .fd-wtop,.fd-targets{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fd-form .row3{grid-template-columns:1fr 1fr}
  .fd-meals{grid-auto-columns:78%}
  .fd-kitchen{padding:18px 14px}.fd-chef img{width:62px;height:62px;border-radius:20px}.fd-chef h2{font-size:24px}
  .hm-food-h{flex-wrap:wrap}.hm-food-cam{width:100%}
  .hm-food-lv{grid-template-columns:1fr}
  .fd-yn{flex-direction:column;align-items:flex-start;gap:6px}
}
.fd-pbar.sm{flex:none}
.fd-res{display:flex;flex-direction:column;gap:2px}
.fd-wchart{max-height:190px}
@media (max-width:760px){
  .food-view .hm-sec-h{flex-wrap:wrap;gap:2px 10px}.food-view .hm-sec-h .fd-legend{flex-basis:100%}
  .fd-ring-c span{font-size:10px;max-width:74px;text-align:center;line-height:1.2}
}
/* ---------- Experten-Seitenleiste im Chat ---------- */
.dash-head{gap:10px}.dash-head h2{flex:1;font-size:21px}
.dash-close{display:none;border:0;background:#fff;width:34px;height:34px;border-radius:50%;font-size:22px;line-height:1;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.12)}
.shell.show-dash .dash-close{display:inline-flex;align-items:center;justify-content:center}
.dx-wrap{display:flex;flex-direction:column;gap:14px}
.dx-head{padding:16px;display:flex;flex-direction:column;gap:10px}
.dx-top{display:flex;align-items:center;gap:12px}.dx-top div{display:flex;flex-direction:column;gap:2px;min-width:0}
.dx-top strong{font-size:17px}.dx-top span{font-size:12.5px;color:var(--muted);line-height:1.35}
.dx-focus{margin:0;padding-left:18px;font-size:13px;line-height:1.45;color:#3f4a50;display:flex;flex-direction:column;gap:3px}
.dx-card{padding:14px 16px;display:flex;flex-direction:column;gap:8px}
.dx-card .big{font-size:22px;font-weight:800}
.dx-chips{display:flex;flex-wrap:wrap;gap:6px}
.dx-chips button{border:1px solid #efd6c2;background:#fff;border-radius:12px;padding:7px 10px;font:inherit;font-size:13px;font-weight:700;color:#8a3f18;cursor:pointer}
.dx-chips button:hover{border-color:#d9621e}
.dx-row{display:flex;flex-direction:column;gap:2px;padding:8px 0;border-top:1px solid var(--line)}.dx-row:first-of-type{border-top:0}
.dx-row strong{font-size:13.5px}.dx-row span{font-size:12.5px;color:var(--muted);line-height:1.4}
.dx-recipe{display:flex;flex-direction:column;gap:2px;text-align:left;border:0;border-top:1px solid var(--line);background:none;padding:9px 0;font:inherit;color:inherit;cursor:pointer}
.dx-recipe strong{font-size:14px}.dx-recipe span{font-size:12px;color:var(--muted)}.dx-recipe:hover strong{color:#b5562b}
.dx-bar{height:8px;border-radius:4px;background:#eef2ea;overflow:hidden}.dx-bar i{display:block;height:100%;background:#3f8f4f;border-radius:4px}
/* Home-Blöcke in der schmalen Seitenleiste: einspaltig */
.dash .hm-block{min-width:0}
.dash .hm-sec-h h2{font-size:17px}
.dash .hm-food-h,.dash .hm-supps-h{flex-wrap:wrap}.dash .hm-food-cam,.dash .hm-supps-h .hm-btn{width:100%;margin-left:0}
.dash .hm-food-lv,.dash .hm-supps-row{grid-template-columns:1fr}
@media (max-width:760px){
  .dash-toggle{display:inline-flex!important;margin-left:auto}
  .shell.show-dash .dash{display:flex;position:fixed;inset:0;z-index:30;background:var(--panel);padding:18px 14px calc(100px + env(safe-area-inset-bottom));overflow:auto}
}
.dash .hm-neuro-h{flex-wrap:wrap}.dash .hm-neuro-h>div{flex:1;min-width:0}.dash .hm-neuro-h .hm-btn{margin-left:0;width:100%}
.dash .hm-neuro-doms{grid-template-columns:repeat(3,minmax(0,1fr))}
.dash .hm-block>.card{height:auto}
@media (max-width:760px){ .dash-toggle{align-self:center;align-items:center;justify-content:center;height:38px;min-height:0;padding:0 14px;flex-shrink:0} }

/* ================= Redesign Schritt 1+2: Navigation & Heute ================= */
/* Sidebar: 4 Hauptbereiche + Coach, Gesundheit klappt seine Unterpunkte aus */
.nav-health .nav-ico{background:#fbeceb;color:#b3261e}
.nav-health[aria-current="true"]{background:#fdf3f2;border-color:#f1cfcb}
.nav-coach .nav-ico{background:#e6f1ed;color:#0e6b58}
.nav-coach[aria-current="true"]{background:#eef6f3;border-color:#c5e0d6}
.nav-home .nav-ico{background:#e6f1ed;color:#0e6b58}
.nav-subs{display:none;flex-direction:column;gap:2px;margin:-2px 0 4px 26px;padding-left:20px;border-left:2px solid var(--line)}
.nav-subs.open{display:flex}
.nav-subitem{border:0;background:none;text-align:left;padding:9px 12px;border-radius:10px;font-size:14px;font-weight:600;color:var(--muted);min-height:38px}
.nav-subitem:hover{background:#efede8;color:var(--text)}
.nav-subitem[aria-current="true"]{background:#fff;color:var(--text);font-weight:800;box-shadow:0 1px 3px rgba(0,0,0,.06)}
@media (min-width:761px){ .sidebar .section-label,.sidebar #bot-list{display:none} }

/* Coach: Auswahl „Mit wem sprichst du?“ */
.coach-pick{display:flex;flex-direction:column;gap:8px;padding:12px 24px 12px;border-bottom:1px solid var(--line);background:var(--card)}
.cp-label{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.cp-row{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.cp-row::-webkit-scrollbar{display:none}
.cp-item{flex-shrink:0;width:70px;border:0;background:none;padding:4px 0;display:flex;flex-direction:column;align-items:center;gap:3px;border-radius:14px;color:var(--muted)}
.cp-item:hover{background:#f4f3ef}
.cp-av{position:relative;width:48px;height:48px;border-radius:50%;overflow:visible;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800}
.cp-av img{width:48px;height:48px;border-radius:50%;object-fit:cover;display:block}
.cp-item[aria-pressed="true"] .cp-av img,.cp-item[aria-pressed="true"] .cp-av{box-shadow:0 0 0 2px #fff,0 0 0 4px #0e6b58;border-radius:50%}
.cp-item[aria-pressed="true"] .cp-n{color:#0e6b58;font-weight:800}
.cp-n{font-size:12.5px;font-weight:700;color:var(--text);line-height:1.1}
.cp-r{font-size:10.5px;color:var(--faint);line-height:1.1;max-width:66px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-dot{position:absolute;right:0;top:0;width:12px;height:12px;border-radius:50%;background:#e0663a;border:2px solid #fff}

/* „+“ Schnell erfassen */
.qa-o{align-items:flex-end;justify-content:center}
.qa-sheet{height:auto;max-height:92vh;border-radius:26px 26px 0 0;max-width:560px}
@media (min-width:761px){ .qa-o{align-items:center} .qa-sheet{border-radius:26px} }
.qa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.qa-tile{min-height:112px;border:0;border-radius:22px;background:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:14px;text-align:left;font-size:16px;font-weight:800;color:var(--text);box-shadow:0 1px 2px rgba(0,0,0,.04)}
.qa-tile svg{color:#0e6b58}
.qa-tile.primary{background:#0e6b58;color:#fff}.qa-tile.primary svg{color:#fff}
.qa-list{background:#fff;border-radius:22px;padding:2px 16px}
.qa-row{width:100%;display:flex;align-items:center;justify-content:space-between;min-height:50px;border:0;border-bottom:1px solid var(--line2);background:none;font-size:15px;font-weight:700;color:var(--text)}
.qa-row:last-child{border-bottom:0}.qa-row em{font-style:normal;color:#b7b4ac;font-size:20px}

/* Heute */
.hm-date{font-size:13.5px;font-weight:600;color:var(--hmuted)}
.hm-top{align-items:flex-end}
.hm-hello h1{font-size:40px}
.hm-top-r{gap:10px}
.hm-round{width:44px;height:44px;border-radius:50%;border:1px solid var(--hline);background:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:var(--ink);padding:0}
.hm-round.primary{background:#0e6b58;border-color:#0e6b58;color:#fff}
.hm-herorow{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px;align-items:start}
.hm-hero{padding:22px;display:flex;flex-direction:column;gap:18px}
.hm-hero-top{display:flex;align-items:center;gap:22px}
.hm-hero-ring{position:relative;width:150px;height:150px;flex-shrink:0;border:0;background:none;padding:0;border-radius:50%}
.hm-hero-ring svg{width:100%;height:100%}
.hm-hero-c{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.hm-hero-c strong{font-size:46px;font-weight:800;letter-spacing:-.04em;line-height:1}
.hm-hero-c small{font-size:11.5px;font-weight:700;color:var(--hmuted);text-transform:uppercase;letter-spacing:.06em;margin-top:3px}
.hm-hero-t{display:flex;flex-direction:column;gap:7px;min-width:0}
.hm-hero-t strong{font-size:21px;line-height:1.25;font-weight:800}
.hm-hero-t>span{font-size:14.5px;line-height:1.5;color:var(--hmuted)}
.hm-hero-t .hm-link{align-self:flex-start}
.hm-minis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.hm-mini{border:0;border-radius:16px;padding:10px 12px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;min-height:62px}
.hm-mini span{font-size:12px;font-weight:700}.hm-mini b{font-size:19px;font-weight:800;color:#1c1d1f}
.hm-mini.m-rec{background:#fbf4ec;color:#7a5a3a}.hm-mini.m-sleep{background:#eef1f8;color:#3f4a78}
.hm-mini.m-act{background:#eef5f2;color:#2f5f50}.hm-mini.m-neuro{background:#eceffb;color:#3b4fa8}
.hm-mini:hover{filter:brightness(.97)}
.hm-sec-note{font-size:13.5px;font-weight:600;color:var(--hmuted)}
.hm-focus.compact h3,.hm-focus.compact>p{display:none}
.hm-focus-more summary{cursor:pointer;font-size:13px;font-weight:700;opacity:.85;margin:2px 0 8px}
.hm-focus-more p{margin:0 0 10px;font-size:14px;line-height:1.5;opacity:.9}
.hm-fy-h{margin-top:6px}.hm-fy-r{display:flex;gap:8px}
.hm-fy{grid-template-columns:repeat(2,minmax(0,1fr))}
.hm-fy .hm-block{grid-column:span 1}
.hm-fy .hm-block.b-today,.hm-fy .hm-block.b-team,.hm-fy .hm-edit-hint{grid-column:1/-1}
.hm-block.is-hidden>:not(.hm-move){opacity:.35;filter:grayscale(.6)}
.hm-vis{border:1px solid var(--hline);background:#fff;border-radius:10px;padding:4px 10px;font-size:12px;font-weight:800;color:var(--hmuted)}
.hm-vis.on{background:#e6f1ed;border-color:#c5e0d6;color:#0e6b58}
.hm-more{align-self:center}
@media (max-width:1180px){ .hm-herorow{grid-template-columns:1fr} }

/* Gesundheit */
.health-view{display:none;flex-direction:column;gap:12px;overflow:auto;min-height:0;min-width:0;padding:26px 30px 48px;background:#f4f3ef;color:var(--text)}
.health-view>*{flex-shrink:0}
.shell[data-view="health"] .health-view{display:flex;grid-column:2/-1}
.shell[data-view="health"] .chat,.shell[data-view="health"] .dash{display:none}
.health-view{--ice:#0b6e8f;--ink:#0d2f3c;--hmuted:#5d7079;--hfaint:#7d8f97;--hline:#e3ecef;--good:#1e8e5a;--bad:#d4552a}
.hl-top{display:flex;flex-direction:column;gap:2px;max-width:760px}
.hl-top h1{margin:0;font-family:var(--display);font-size:40px;font-weight:600}
.hl-back{align-self:flex-start;border:0;background:none;color:#0e6b58;font-weight:700;font-size:15px;padding:6px 0}
.hl-search{max-width:760px;height:46px;border-radius:14px;background:#e9e7e1;display:flex;align-items:center;gap:8px;padding:0 14px;color:var(--muted)}
.hl-search input{border:0;background:transparent;font:inherit;font-size:15px;flex:1;outline:none;color:var(--text)}
.hl-cap{max-width:760px;font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);padding:8px 6px 0}
.hl-group{max-width:760px;background:#fff;border-radius:22px;padding:2px 16px}
.hl-row{width:100%;display:flex;align-items:center;gap:12px;min-height:64px;padding:10px 0;border:0;border-bottom:1px solid #efede8;background:none;text-align:left;color:var(--text)}
.hl-row:last-child{border-bottom:0}
.hl-ico{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.hl-t{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.hl-t strong{font-size:16px;font-weight:700}.hl-t span{font-size:13px;color:var(--muted)}
.hl-badge{font-size:12px;font-weight:800;color:#fff;background:#c2410c;border-radius:10px;padding:2px 8px}
.hl-chev{color:#b7b4ac;font-size:22px;line-height:1}
.hl-empty{max-width:760px;color:var(--muted)}
.hl-subhead{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:980px}.hl-subhead p{margin:0;color:var(--muted)}
.hl-blocks{display:flex;flex-direction:column;gap:18px;max-width:980px}

/* Mobil: 3 Tabs + runder Coach-Button */
@media (max-width:760px){
  .shell .health-view{display:none}
  .shell[data-view="health"] .health-view{display:flex;grid-column:1/-1}
  .health-view{padding:18px 16px calc(110px + env(safe-area-inset-bottom))}
  .hl-top h1,.hm-hello h1{font-size:34px}
  .mobile-nav{display:flex!important;align-items:center;gap:10px;height:auto;padding:0;background:none!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .mn-tabs{flex:1;height:66px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:6px;border-radius:33px;
    background:rgba(255,255,255,.84);border:1px solid rgba(255,255,255,.9);-webkit-backdrop-filter:blur(20px) saturate(1.7);backdrop-filter:blur(20px) saturate(1.7);box-shadow:0 12px 32px rgba(13,47,60,.16),0 2px 6px rgba(13,47,60,.06)}
  .mn-tabs button{border-radius:27px!important}
  .mn-tabs button[aria-current="true"]{background:#e6f1ed;color:#0e6b58!important}
  .mn-tabs button[aria-current="true"] .mn-ico{background:none!important;box-shadow:none!important;color:#0e6b58!important}
  .mn-ico{width:auto!important;height:26px}
  .mn-coach{position:relative;width:66px;height:66px;flex-shrink:0;border-radius:50%!important;padding:0!important;border:3px solid #fff!important;overflow:visible;box-shadow:0 12px 32px rgba(13,47,60,.2);background:#fff!important}
  .mn-coach img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
  .mn-coach[aria-current="true"]{box-shadow:0 0 0 3px #0e6b58,0 12px 32px rgba(13,47,60,.2)}
  .mn-coach .nav-dot{top:2px;left:auto;right:2px}
  .coach-pick{padding:10px 12px}
  .hm-hero{padding:18px}.hm-hero-top{gap:16px}.hm-hero-ring{width:108px;height:108px}.hm-hero-c strong{font-size:34px}
  .hm-hero-t strong{font-size:17px}.hm-hero-t>span{font-size:14px}
  .hm-minis{gap:6px}.hm-mini{padding:9px 8px}.hm-mini b{font-size:16px}.hm-mini span{font-size:11px}
  .hm-fy{grid-template-columns:1fr}.hm-fy .hm-block{grid-column:1/-1}
  .hm-top-r .hm-round{width:42px;height:42px}
}
.hm-top{flex-wrap:nowrap}
.hm-top-r{flex-wrap:nowrap;flex-shrink:0}

/* Coach · Team (Schritt 3) */
.avatar.team-av{background:#0e6b58;color:#fff;display:inline-flex;align-items:center;justify-content:center}
.avatar.team-av svg{width:58%;height:58%}
.cp-av.team{background:#0e6b58;color:#fff}
.cp-av.team svg{width:24px;height:24px}
.msg-sp{display:flex;align-items:center;gap:7px;border:0;background:none;padding:0 2px;font:inherit;cursor:pointer;text-align:left;color:var(--muted)}
.msg-sp strong{font-size:12.5px;font-weight:800;color:var(--text)}
.msg-sp span{font-size:12px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.msg-sp:hover strong{color:#0e6b58}
.msg-sp-av{width:26px;height:26px;border-radius:50%;overflow:hidden;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:800}
.msg-sp-av img{width:100%;height:100%;object-fit:cover;display:block}
.msg.has-sp{max-width:80%}
.tm-inbox{display:flex;flex-direction:column;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:12px 14px;align-self:stretch;max-width:640px}
.tm-in{display:flex;align-items:center;gap:10px;border:0;background:#f7f6f3;border-radius:14px;padding:9px 12px;text-align:left;font:inherit;cursor:pointer;color:var(--text)}
.tm-in:hover{background:#eef5f2}
.tm-in .msg-sp-av{width:34px;height:34px}
.tm-in-t{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.tm-in-t strong{font-size:14px}
.tm-in-t span{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ========== Shop (Shopify) ========== */
.nav-shop .nav-ico{background:#f3ece4;color:#8a5a2b}
.nav-shop[aria-current="true"]{background:#faf5ef;border-color:#e8d9c6}
.shop-view{display:none;flex-direction:column;gap:16px;overflow:auto;min-height:0;min-width:0;padding:26px 30px 48px;background:#f4f3ef;color:var(--text)}
.shop-view>*{flex-shrink:0}
.shell[data-view="shop"] .shop-view{display:flex;grid-column:2/-1}
.shell[data-view="shop"] .chat,.shell[data-view="shop"] .dash{display:none}
.sh-top{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;max-width:1100px}
.sh-top-l{display:flex;flex-direction:column;gap:2px;min-width:0}
.sh-top h1{margin:0;font-family:Fraunces,Georgia,serif;font-size:34px;font-weight:600;letter-spacing:-.01em;line-height:1.1}
.sh-cartbtn{position:relative;flex-shrink:0;width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--text);display:inline-flex;align-items:center;justify-content:center}
.sh-cartn{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#0e6b58;color:#fff;font-size:11.5px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid #f4f3ef}
.sh-demo{max-width:1100px;background:#fff6e5;border:1px solid #f0d9a8;color:#6d4f12;border-radius:16px;padding:10px 14px;font-size:14px}
.sh-next{max-width:1100px;display:flex;align-items:center;gap:14px;border:0;background:#0e6b58;color:#fff;border-radius:22px;padding:14px 18px;text-align:left;font:inherit;cursor:pointer}
.sh-next-t{display:flex;flex-direction:column;gap:1px;flex:1}.sh-next-t small{opacity:.8;font-size:12px;font-weight:700}.sh-next-t strong{font-size:16px}.sh-next-t span{opacity:.9;font-size:14px}
.sh-next .hl-chev{color:#fff}
.sh-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;max-width:1100px}
.sh-chips::-webkit-scrollbar{display:none}
.sh-chips button{flex-shrink:0;height:38px;padding:0 16px;border-radius:19px;border:1px solid #dcd8cf;background:#fff;font:inherit;font-size:14px;font-weight:700;color:var(--text)}
.sh-chips button[aria-selected="true"]{background:#1c1d1f;border-color:#1c1d1f;color:#fff}
.sh-sec{max-width:1100px;display:flex;flex-direction:column;gap:10px}
.sh-sec h2{margin:6px 2px 0;font-size:20px;font-weight:800}
.sh-sec-p{margin:0 2px;color:var(--muted);font-size:14px;max-width:640px}
.sh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.sh-card{display:flex;flex-direction:column;border:0;background:#fff;border-radius:22px;overflow:hidden;text-align:left;font:inherit;color:var(--text);cursor:pointer;box-shadow:0 1px 2px rgba(20,20,19,.04);transition:transform .15s}
.sh-card:hover{transform:translateY(-2px)}
.sh-thumb{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;background:#f0ede6;color:#8a8579;overflow:hidden}
.sh-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.sh-thumb.k-supplement{background:#e7f2ec;color:#2f8f6b}.sh-thumb.k-kit{background:#fbeceb;color:#b3261e}.sh-thumb.k-booking{background:#eef1f8;color:#3f4a78}
.sh-thumb.big{aspect-ratio:1/1;border-radius:22px}
.sh-card-b{display:flex;flex-direction:column;gap:5px;padding:12px 14px 14px}
.sh-card-t{font-size:15.5px;line-height:1.3}
.sh-tag{align-self:flex-start;font-size:11.5px;font-weight:800;letter-spacing:.02em;border-radius:8px;padding:2px 7px;background:#f0ede6;color:#6b6d72}
.sh-tag.k-booking{background:#eef1f8;color:#3f4a78}.sh-tag.k-kit{background:#fbeceb;color:#b3261e}.sh-tag.k-supplement{background:#e7f2ec;color:#2f7a5c}
.sh-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}
.sh-price strong{font-size:17px;font-weight:800}.sh-price s{color:var(--faint);font-size:14px}.sh-price span{color:var(--muted);font-size:13px}
.sh-out{color:#b3261e;font-size:13px;font-weight:700}
.sh-more{margin-top:4px}
.sh-foot{max-width:1100px;color:var(--faint);font-size:12.5px;line-height:1.5}
.sh-foot p{margin:4px 0}.sh-pol{display:flex;flex-wrap:wrap;gap:4px 14px}.sh-pol a{color:var(--muted)}
.sh-prod{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;max-width:1100px;align-items:start}
.sh-media{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:22px}
.sh-media img{width:100%;flex-shrink:0;scroll-snap-align:start;border-radius:22px;aspect-ratio:1/1;object-fit:cover;background:#fff}
.sh-media .sh-thumb{width:100%}
.sh-info{display:flex;flex-direction:column;gap:12px;background:#fff;border-radius:22px;padding:18px 20px}
.sh-info .sh-price strong{font-size:24px}
.sh-note{margin:0;color:var(--muted);font-size:14px}
.sh-action{display:flex;flex-direction:column;gap:10px}
.sh-qtyrow{display:flex;gap:10px;align-items:center}
.sh-qty{display:inline-flex;align-items:center;gap:4px;border:1px solid #dcd8cf;border-radius:24px;padding:3px;background:#fff}
.sh-qty button{width:38px;height:38px;border-radius:50%;border:0;background:#f4f3ef;font-size:18px;font-weight:700;color:var(--text)}
.sh-qty span{min-width:26px;text-align:center;font-weight:800}
.sh-qty.sm button{width:32px;height:32px}
.sh-buy{flex:1;min-height:48px;border-radius:24px!important;font-size:15.5px!important}
.sh-buy:disabled{opacity:.55}
.sh-desc p{margin:0 0 8px;line-height:1.55}
.sh-det{border-top:1px solid #efede8;padding-top:10px}.sh-det summary{font-weight:800;cursor:pointer}.sh-det p{color:var(--muted);font-size:13.5px;line-height:1.5}
.sh-slots{display:flex;flex-direction:column;gap:8px}
.sh-days{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.sh-days::-webkit-scrollbar{display:none}
.sh-day{flex-shrink:0;width:56px;padding:7px 0;border-radius:14px;border:1px solid #dcd8cf;background:#fff;display:flex;flex-direction:column;align-items:center;gap:1px;font:inherit;color:var(--text)}
.sh-day small{font-size:11px;color:var(--muted);font-weight:700}.sh-day strong{font-size:18px}
.sh-day:disabled{opacity:.35}
.sh-day[aria-pressed="true"]{background:#0e6b58;border-color:#0e6b58;color:#fff}.sh-day[aria-pressed="true"] small{color:#dff1ea}
.sh-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:6px}
.sh-time{height:40px;border-radius:12px;border:1px solid #dcd8cf;background:#fff;font:inherit;font-weight:700;color:var(--text)}
.sh-time[aria-pressed="true"]{background:#0e6b58;border-color:#0e6b58;color:#fff}
.sh-cart{max-width:560px}
.sh-cart-b{display:flex;flex-direction:column;gap:12px}
.sh-line{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #efede8}
.sh-line:last-child{border-bottom:0}
.sh-line-t{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.sh-line-t span{color:var(--muted);font-size:13.5px}
.sh-line-t .sh-line-when{color:#0e6b58;font-weight:700}
.sh-sum{display:flex;justify-content:space-between;align-items:baseline;font-size:16px;padding:0 4px}.sh-sum strong{font-size:20px}
.sh-book{display:flex;gap:12px;align-items:flex-start;background:#fff;border-radius:18px;padding:14px 16px;color:#3f4a78}
.sh-book-t{display:flex;flex-direction:column;gap:3px;color:var(--text)}.sh-book-t .link-btn{align-self:flex-start;padding:0}
.sh-order{display:flex;flex-direction:column;gap:4px;background:#fff;border-radius:18px;padding:14px 16px}
.sh-order-h{display:flex;justify-content:space-between;gap:10px}
.sh-order ul{margin:4px 0;padding-left:18px;font-size:14px}
.sh-order .link-btn{align-self:flex-start;padding:0}
.sh-st{font-size:12.5px;font-weight:800;color:#0e6b58;background:#e6f1ed;border-radius:8px;padding:2px 8px}.sh-st.bad{color:#b3261e;background:#fbeceb}
.sh-admin{max-width:980px;display:flex;flex-direction:column;gap:10px}
.sh-admin h3{margin:0}
.sh-res{border:1px solid #efede8;border-radius:16px;padding:10px 14px 14px;display:flex;flex-direction:column;gap:8px}
.sh-res legend{font-weight:800;padding:0 6px}
.sh-res-meta{display:flex;flex-wrap:wrap;gap:10px}.sh-res-meta .field{min-width:150px;flex:1}
.sh-week{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px}
.sh-wd{display:flex;align-items:center;gap:8px}.sh-wd span{width:26px;font-weight:800;color:var(--muted)}.sh-wd input{flex:1;min-width:0}
.sh-arow{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #efede8}
.sh-arow>div{display:flex;flex-direction:column;gap:2px}
.sh-soon{max-width:560px;background:#fff;border-radius:24px;padding:28px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;color:#8a5a2b}
.sh-soon h2{margin:6px 0 0;color:var(--text)}.sh-soon p{margin:0;color:var(--muted)}
.demo-co{max-width:560px}
@media (max-width:1180px){ .sh-prod{grid-template-columns:minmax(0,1fr)} .sh-media img{max-height:420px} }
@media (max-width:760px){
  .shell .shop-view{display:none}
  .shell[data-view="shop"] .shop-view{display:flex;grid-column:1/-1}
  .shop-view{padding:18px 16px calc(110px + env(safe-area-inset-bottom))}
  .sh-top h1{font-size:34px}
  .sh-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .sh-card-b{padding:10px 12px 12px}.sh-card-t{font-size:14.5px}
  .sh-info{padding:16px}
  .mn-tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .mn-tabs .mn-l{font-size:10px}
  .mn-tabs .nav-dot{top:6px;right:14px;left:auto}
}
.sh-media .sh-thumb.big{aspect-ratio:auto;height:280px}
.sh-rm{flex-shrink:0;color:#b3261e!important}
@media (max-width:760px){ .sh-media .sh-thumb.big{height:180px} }
.shop-view .fine{text-align:left}
.sh-admin select,.sh-admin textarea,.sh-wd input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;background:#fff;font:inherit;font-size:14.5px;padding:10px 12px;color:var(--text)}
.sh-admin select{height:46px}
.sh-week{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.sh-admin .btn.secondary{align-self:flex-start}
.sh-cart .fine{text-align:left}
/* Shop Phase 2 */
.sh-reorder{max-width:1100px;display:flex;gap:12px;align-items:flex-start;background:#fff;border-radius:20px;padding:14px 16px;color:#2f8f6b;border:1px solid #d7ebe2}
.sh-reorder-t{display:flex;flex-direction:column;gap:4px;color:var(--text);flex:1}.sh-reorder-t>span{color:var(--muted);font-size:14px}
.sh-reorder-b{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:4px}
.sh-match-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.sh-match-invite{background:#fff;border-radius:20px;padding:16px 18px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;max-width:760px}.sh-match-invite p{margin:0;line-height:1.5}
.sh-match-list{display:flex;flex-direction:column;gap:10px}
.sh-match-row{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);gap:12px;background:#fff;border-radius:20px;padding:14px 16px}
.sh-match-plan{display:flex;flex-direction:column;gap:2px}.sh-match-plan span{color:var(--muted);font-size:13.5px}
.sh-match-prods{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.sh-match-p{display:flex;flex-direction:column;gap:3px;text-align:left;border:1px solid #efede8;background:#faf9f6;border-radius:14px;padding:10px 12px;font:inherit;color:var(--text);cursor:pointer}
.sh-match-p>span{font-size:13px;color:var(--muted)}
.sh-match-pt{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.sh-mb{flex-shrink:0;font-size:11.5px;font-weight:800;border-radius:8px;padding:2px 7px}.sh-mb.ok{background:#e6f1ed;color:#0e6b58}.sh-mb.lo{background:#fff4e0;color:#8a5a12}.sh-mb.hi{background:#fbeceb;color:#b3261e}
.sh-match-price{font-weight:800;color:var(--text)!important}
.sh-opts{display:flex;flex-direction:column;gap:8px}
.sh-opt{display:flex;flex-direction:column;gap:2px;text-align:left;border:1.5px solid #dcd8cf;background:#fff;border-radius:14px;padding:10px 14px;font:inherit;color:var(--text)}
.sh-opt span{font-size:13px;color:var(--muted)}
.sh-opt[aria-checked="true"]{border-color:#0e6b58;background:#f1f8f5}
.hm-shop{display:flex;flex-direction:column;gap:8px}
.hm-shop-row{display:flex;flex-direction:column;gap:2px;text-align:left;border:0;background:#f7f6f3;border-radius:14px;padding:10px 12px;font:inherit;color:var(--text)}
button.hm-shop-row{cursor:pointer}
.hm-shop-row small{font-size:11.5px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.hm-shop-row>span{color:var(--muted);font-size:13.5px}
.hm-shop.ghost .hm-shop-row{background:none;padding:2px 0}
.hm-shop-b{display:flex;gap:10px;align-items:center;margin-top:6px}
.sp-shoplink{align-self:flex-start;padding:0;margin-top:4px}
.lb-shophint{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid #f1cfcb;border-radius:20px;padding:14px 18px;margin:0 0 14px}
.lb-shophint>div{display:flex;flex-direction:column;gap:3px}.lb-shophint span{color:var(--muted);font-size:14px}
@media (max-width:760px){ .sh-match-row{grid-template-columns:minmax(0,1fr)} .lb-shophint{flex-direction:column;align-items:flex-start} }
.shop-view,.sh-o{--ice:#0e6b58;--ink:#1c1d1f;--hline:#dcd8cf}

/* ========== Kompass ========== */
.cx{display:flex;flex-direction:column;gap:14px}
.cx-body{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center}
.cx-wheel{display:flex;justify-content:center}
.cx-list{display:flex;flex-direction:column;gap:2px}
.cx-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:10px;align-items:center;border:0;background:none;padding:6px 4px;border-radius:10px;text-align:left;font:inherit;color:var(--text);cursor:pointer}
.cx-row:hover{background:#f6f5f2}
.cx-dot{width:10px;height:10px;border-radius:50%;background:var(--c);grid-row:1}
.cx-row.empty .cx-dot{background:none;border:2px dashed var(--c)}
.cx-row-t{display:flex;flex-direction:column;min-width:0}.cx-row-t strong{font-size:14px}.cx-row-t span{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cx-row-t span:empty{display:none}
.cx-row-v{font-weight:800;font-size:15px}.cx-row.empty .cx-row-v{font-size:12px;color:var(--faint);font-weight:700}
.cx-bar{grid-column:2/4;height:4px;border-radius:2px;background:#efede8;margin-top:4px;overflow:hidden;display:block}.cx-bar b{display:block;height:100%;background:var(--c);border-radius:2px}
.cx-foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.cx-quote{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;background:#f4f7f5;border-radius:14px;padding:10px 14px}
.cx-quote small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#0e6b58;width:100%}
.cx-quote span{font-family:Fraunces,Georgia,serif;font-size:17px;flex:1;min-width:0}
.cx-why{background:#f4f7f5;border-radius:16px;padding:14px 16px}
.cx-why-form{display:flex;flex-direction:column;gap:8px}
.cx-why-form p{margin:0}
.cx-why-form textarea,.cx-why-form input,.cx-check textarea{width:100%;box-sizing:border-box;border:1px solid #dcd8cf;border-radius:12px;padding:10px 12px;font:inherit;font-size:15px;background:#fff}
.cx-why-form .hm-btn{align-self:flex-start}
.cx-chips,.cx-focus{display:flex;flex-wrap:wrap;gap:6px}
.cx-chips button,.cx-focus button{border:1px solid #dcd8cf;background:#fff;border-radius:16px;padding:6px 11px;font:inherit;font-size:13px;color:var(--text);cursor:pointer}
.cx-focus .cp-label{width:100%}
.cx-focus button[aria-pressed="true"],.cx-chips button[aria-pressed="true"]{background:var(--c,#0e6b58);border-color:var(--c,#0e6b58);color:#fff}
.cx-sheet{max-width:560px}
.cx-check{display:flex;flex-direction:column;gap:12px}
.cx-q{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.cx-q legend{font-weight:800;margin-bottom:6px}
.cx-scale{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.cx-scale button{min-height:52px;border:1px solid #dcd8cf;background:#fff;border-radius:12px;font:inherit;font-size:12.5px;line-height:1.2;padding:4px;color:var(--text)}
.cx-scale button[aria-pressed="true"]{background:#0e6b58;border-color:#0e6b58;color:#fff;font-weight:700}
.cx-help{display:flex;flex-direction:column;gap:10px;background:#fff;border-radius:18px;padding:16px}
.hl-compass{max-width:760px;display:flex;flex-direction:column;gap:8px}
.hl-compass>.cx{background:#fff;border-radius:22px;padding:16px 18px}
@media (max-width:760px){ .cx-body{grid-template-columns:minmax(0,1fr)} .cx-scale button{font-size:11px;min-height:56px} }

/* ========== Vorsorge-Pass ========== */
.cr-sum{display:flex;gap:10px;max-width:760px}
.cr-sum-i{flex:1;background:#fff;border-radius:18px;padding:12px 14px;display:flex;flex-direction:column}
.cr-sum-i b{font-size:26px;font-weight:800}.cr-sum-i span{color:var(--muted);font-size:13px;font-weight:700}
.cr-sum-i.bad b{color:#b3261e}.cr-sum-i.warn b{color:#b36b00}.cr-sum-i.ok b{color:#0e6b58}
.cr-sec{max-width:760px;display:flex;flex-direction:column;gap:8px}
.cr-sec h2{margin:10px 2px 0;font-size:19px;font-weight:800}
.cr-item{border-bottom:1px solid #efede8}.cr-item:last-child{border-bottom:0}
.cr-item-h{width:100%;display:flex;align-items:center;gap:10px;min-height:60px;padding:10px 0;border:0;background:none;text-align:left;font:inherit;color:var(--text);cursor:pointer}
.cr-item-t{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.cr-item-t span{color:var(--muted);font-size:13.5px}
.cr-st{flex-shrink:0;font-size:12px;font-weight:800;border-radius:8px;padding:3px 8px}
.cr-st.bad{background:#fbeceb;color:#b3261e}.cr-st.warn{background:#fff4e0;color:#8a5a12}.cr-st.ok{background:#e6f1ed;color:#0e6b58}.cr-st.muted{background:#f0ede6;color:#6b6d72}
.cr-item-b{padding:0 0 14px;display:flex;flex-direction:column;gap:8px}.cr-item-b p{margin:0;line-height:1.5}
.cr-item-b .link-btn{align-self:flex-start;padding:0}
.cr-done{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.cr-done input{border:1px solid #dcd8cf;border-radius:10px;padding:8px 10px;font:inherit}
.cr-profile{max-width:760px;display:flex;flex-direction:column;gap:10px}
.cr-profile .hm-btn{align-self:flex-start}
.cr-prow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cr-prow select,.cr-prow input{width:100%;box-sizing:border-box;border:1px solid #dcd8cf;border-radius:12px;padding:10px 12px;font:inherit;background:#fff;height:46px}
.cr-med{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #efede8}.cr-med:last-child{border-bottom:0}
.cr-med>div{display:flex;flex-direction:column;gap:2px}.cr-med span{color:var(--muted);font-size:13.5px}
.cr-empty{padding:12px 0}
.cr-medform{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:8px}
.cr-medform input{border:1px solid #dcd8cf;border-radius:12px;padding:10px 12px;font:inherit;background:#fff;min-width:0}
.cr-sec>.hm-btn{align-self:flex-start}
.cr-family{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:6px;background:#fff;border-radius:18px;padding:12px 14px}
.cr-hints{display:flex;flex-direction:column;gap:8px;background:#fff6e9;border:1px solid #f0dcb6;border-radius:18px;padding:12px 14px}
.cr-hints>div{display:flex;flex-direction:column;gap:2px}.cr-hints span{font-size:14px;color:#5b4a2a}
.cr-src{max-width:760px;color:var(--faint);font-size:12.5px}.cr-src a{color:var(--muted);margin-right:10px}
.push-acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.push-prefs{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.push-pref{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;cursor:pointer}.push-pref input{margin-top:3px;width:18px;height:18px;accent-color:#0e6b58}
.health-view,.home-view{--c:#0e6b58}
@media (max-width:760px){ .cr-prow{grid-template-columns:minmax(0,1fr)} .cr-medform{grid-template-columns:minmax(0,1fr)} }
.cx .fine,.cx-sheet .fine,.cr-profile .fine,.cr-sec>.fine{text-align:left}
.cx-chips button{text-align:left;white-space:normal}
.cx-dot{box-sizing:border-box}
.cx-why-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;text-align:left;border:1px dashed #9cc7b8;background:#f4f7f5;border-radius:16px;padding:12px 14px;font:inherit;color:var(--text);cursor:pointer}
.cx-why-cta strong{font-size:15.5px}.cx-why-cta span:not(.hl-chev){color:var(--muted);font-size:13.5px;grid-column:1}.cx-why-cta .hl-chev{grid-row:1/3;grid-column:2;align-self:center}
.cr-profile h3{margin:0}
.cx-row{width:100%;box-sizing:border-box}

/* ---------- Haut-Tagebuch ---------- */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.health-view .card[class*="sk-"]{max-width:760px;width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:10px}
.health-view .sk-an-slot{max-width:760px;width:100%}
.sk-eyebrow{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#562e2e}
.sk-intro h2,.sk-hero h2,.card[class*="sk-"] h2{margin:0;font-family:var(--display);font-size:22px;font-weight:600}
.card[class*="sk-"] h3{margin:8px 0 0;font-size:14px}
.sk-intro p,.card[class*="sk-"] p{margin:0}
.sk-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:14px;color:#3d3f44}
.sk-cta{background:#562e2e!important;border-color:#562e2e!important;color:#fff!important;align-self:flex-start;min-height:46px;padding:0 20px}
.sk-cta:disabled{opacity:.45;cursor:not-allowed}
.sk-hero{background:linear-gradient(160deg,#fff 0,#f7f2ef 100%)!important}
.sk-hero-row{display:flex;gap:18px;align-items:center}
.sk-hero-img{width:112px;height:140px;object-fit:cover;border-radius:18px;flex-shrink:0;background:#ede7e2;transform:scaleX(-1)}
.sk-hero-t{display:flex;flex-direction:column;gap:6px;min-width:0}
.sk-big{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.sk-big b{font-family:var(--display);font-size:48px;line-height:1;color:#562e2e}.sk-big>span{color:var(--muted);font-weight:700}
.sk-delta{font-style:normal;font-size:13px;font-weight:800;padding:3px 9px;border-radius:12px;background:#efede8;color:#4a4d52}
.sk-delta.up{background:#e2f3ea;color:#1b6b45}.sk-delta.down{background:#fbeceb;color:#9c2a20}
.sk-btns{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.hm-btn.primary.sk-p,.sk-hero .hm-btn.primary{background:#562e2e;border-color:#562e2e;color:#fff}
.sk-sum{font-size:15px;line-height:1.5}
.sk-dims{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
.sk-dim{display:flex;flex-direction:column;gap:4px;min-width:0}
.sk-dim-top{display:flex;justify-content:space-between;gap:8px;font-size:14px}
.sk-dim-v{font-weight:800}.sk-dim-v i{font-style:normal;font-size:11px}.sk-dim-v i.up{color:#1e8e5a}.sk-dim-v i.down{color:#c0392b}
.sk-bar{height:6px;border-radius:3px;background:#efede8;overflow:hidden;display:block}.sk-bar b{display:block;height:100%;border-radius:3px;background:var(--c)}
.sk-dim-n{font-size:12px;color:var(--muted);line-height:1.35}
.sk-zones{display:flex;flex-direction:column;gap:4px;font-size:13px;background:#f7f5f1;border-radius:14px;padding:10px 12px}
.sk-warn{background:#fdf1e8;border:1px solid #f1cfb4;border-radius:14px;padding:10px 12px;color:#7a3b10;font-size:14px;display:flex;flex-direction:column;gap:4px}
.sk-tip{background:#f3ecea;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.45}
.sk-del{color:#9c2a20!important}
.sk-chips{display:flex;flex-wrap:wrap;gap:6px}
.sk-chips button{border:1px solid #dcd8cf;background:#fff;border-radius:16px;padding:6px 11px;font-size:13px;color:var(--text)}
.sk-chips button[aria-pressed="true"]{background:#562e2e;border-color:#562e2e;color:#fff}
.sk-chart{width:100%;height:auto;max-height:180px}.sk-chart .sk-grid{stroke:#ecebe6;stroke-width:1}.sk-chart .sk-cv{font-size:10px;font-weight:800;fill:#2d2d2d}.sk-chart .sk-cx{font-size:9px;fill:#6b6d72}
.sk-cmp-pick{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sk-cmp-pick select{width:100%;min-height:40px;border:1px solid #dcd8cf;border-radius:10px;padding:0 8px;background:#fff}
.sk-cmp{position:relative;width:100%;max-width:420px;aspect-ratio:3/4;border-radius:18px;overflow:hidden;background:#ede7e2;align-self:center}
.sk-cmp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.sk-cmp-top{position:absolute;inset:0}
.sk-cmp-line{position:absolute;top:0;bottom:0;width:2px;background:#fff;box-shadow:0 0 6px rgba(0,0,0,.35);transform:translateX(-1px);pointer-events:none}
.sk-cmp-l,.sk-cmp-r{position:absolute;top:10px;font-size:11px;font-weight:800;background:rgba(45,45,45,.7);color:#fff;border-radius:10px;padding:3px 8px}.sk-cmp-l{left:10px}.sk-cmp-r{right:10px}
.sk-cmp-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.sk-checks{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}
.sk-check{flex:0 0 auto;width:74px;border:1px solid #e6e3dc;background:#fff;border-radius:14px;padding:4px 4px 6px;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:12px}
.sk-check.on{border-color:#562e2e;box-shadow:0 0 0 2px rgba(86,46,46,.18)}
.sk-check img,.sk-noph{width:64px;height:72px;object-fit:cover;border-radius:10px;background:#ede7e2;display:flex;align-items:center;justify-content:center;color:var(--faint);transform:scaleX(-1)}
.sk-noph{transform:none}
.sk-check strong{font-size:14px}.sk-check span{color:var(--muted)}
.sk-step{border-top:1px solid #efede8;padding-top:8px}.sk-step summary{display:flex;gap:10px;align-items:center;cursor:pointer;font-size:14px;list-style:none}.sk-step summary::-webkit-details-marker{display:none}
.sk-moved{font-size:13px;font-weight:700;margin:6px 0 0!important}
.sk-infl{list-style:none;margin:6px 0 4px;padding:0;display:flex;flex-direction:column;gap:5px}
.sk-infl li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px;font-size:13px}.sk-infl li strong{font-weight:700}.sk-infl li span{color:#3d3f44}
.sk-rows{display:flex;flex-direction:column;gap:2px}
.sk-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f0eee9}
.sk-row>div{display:flex;flex-direction:column;min-width:0}.sk-row strong{font-size:14px}.sk-row span{font-size:12px;color:var(--muted)}
.sk-hints{background:#fdf6ec;border-radius:12px;padding:10px 12px;font-size:13px;display:flex;flex-direction:column;gap:4px;color:#6a4a12}
.sk-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;align-items:end;border-top:1px solid #efede8;padding-top:10px}
.sk-form select,.sk-form input{width:100%;min-height:40px;border:1px solid #dcd8cf;border-radius:10px;padding:0 10px;background:#fff;box-sizing:border-box}
.sk-offers{border-color:#d9c9c4!important}
.sk-offer-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.sk-offer{text-align:left;border:1px solid #e6dcd8;background:#faf7f5;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:3px}.sk-offer strong{font-size:14px}.sk-offer span{font-size:12px;color:var(--muted)}
.sk-set summary{cursor:pointer;font-weight:700}
.sk-set .field{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700}.sk-set select{min-height:40px;border:1px solid #dcd8cf;border-radius:10px;padding:0 8px;background:#fff;max-width:280px}
/* Aufnahme */
.sk-cap{position:fixed;inset:0;z-index:200;background:#1d1616;color:#fff;display:flex;flex-direction:column;overflow:auto}
.sk-cap-head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;padding-top:max(14px,env(safe-area-inset-top))}
.sk-cap-x{border:0;background:rgba(255,255,255,.12);color:#fff;width:40px;height:40px;border-radius:20px;font-size:24px;line-height:1}
.sk-cap-body{display:flex;flex-direction:column;gap:14px;padding:6px 18px 28px;max-width:560px;width:100%;margin:0 auto;box-sizing:border-box}
.sk-cap-body h2{margin:0;font-family:var(--display);font-size:24px;font-weight:600}
.sk-cap .fine{color:#cfc6c3}
.sk-cap .hm-btn{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:#fff}
.sk-cap .sk-cta{background:#ede7e2!important;border-color:#ede7e2!important;color:#562e2e!important;align-self:stretch}
.sk-cap .link-btn{color:#ede7e2}
.sk-guide{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.sk-guide li{display:flex;flex-direction:column;background:rgba(255,255,255,.06);border-radius:14px;padding:10px 14px}.sk-guide strong{font-size:15px}.sk-guide span{font-size:13px;color:#d7cfcc}
.sk-file{display:flex;align-items:center;justify-content:center;cursor:pointer}
.sk-stage{position:relative;width:100%;aspect-ratio:3/4;border-radius:22px;overflow:hidden;background:#000}
.sk-stage video,.sk-ghost{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.sk-ghost{opacity:.28;pointer-events:none}
.sk-oval{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.sk-stage.flash::after{content:'';position:absolute;inset:0;background:#fff;animation:skflash .2s ease-out}
@keyframes skflash{from{opacity:.8}to{opacity:0}}
.sk-light{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);font-size:13px;font-weight:700;padding:6px 12px;border-radius:14px;background:rgba(0,0,0,.55);white-space:nowrap}
.sk-light.ok{background:rgba(30,142,90,.85)}.sk-light.warn{background:rgba(196,120,20,.9)}.sk-light.bad{background:rgba(179,38,30,.9)}
.sk-cam-hint{text-align:center;font-size:14px;color:#e6dedb}
.sk-cam-ctr{display:flex;align-items:center;justify-content:center;gap:16px}
.sk-shutter{width:74px;height:74px;border-radius:50%;border:5px solid #fff;background:#ede7e2;box-shadow:0 0 0 3px rgba(255,255,255,.25)}
.sk-shutter:active{transform:scale(.94)}
.sk-shots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sk-shots figure{margin:0}.sk-shots img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;transform:scaleX(-1)}.sk-shots figcaption{font-size:12px;text-align:center;color:#cfc6c3;margin-top:4px}
.sk-cap .sk-chips button{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#fff}.sk-cap .sk-chips button[aria-pressed="true"]{background:#ede7e2;color:#562e2e}
.sk-note{width:100%;box-sizing:border-box;border-radius:12px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff;padding:10px 12px;font:inherit}
.sk-wait{font-family:var(--display);font-size:22px;text-align:center;padding:40px 0 0;animation:skpulse 1.6s ease-in-out infinite}
@keyframes skpulse{50%{opacity:.5}}
.sk-issues{display:flex;flex-wrap:wrap;gap:6px}.sk-issues span{background:rgba(179,38,30,.35);border-radius:12px;padding:4px 10px;font-size:13px}
.hm-skin-img{width:52px;height:52px;border-radius:14px;object-fit:cover;flex-shrink:0;transform:scaleX(-1)}
@media (max-width:640px){
  .sk-dims{grid-template-columns:1fr}
  .sk-hero-img{width:88px;height:112px}
  .sk-big b{font-size:40px}
  .sk-infl li{grid-template-columns:1fr;gap:0}
  .sk-cmp-pick{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){.sk-wait{animation:none}.sk-stage.flash::after{animation:none}}
.health-view .card[class*="sk-"] .fine,.health-view .sk-cap .fine{text-align:left}
.health-view .card[class*="sk-"]>.hm-btn,.health-view .card[class*="sk-"]>.link-btn{align-self:flex-start}
@media (max-width:640px){
  .sk-hero-row{align-items:flex-start;gap:14px}
  .sk-hero-img{width:84px;height:106px}
  .sk-btns .hm-btn{padding:0 12px}
}

/* ---------- Bewegung & Gesundheitsalter ---------- */
.health-view .fx-card,.health-view .fx-tiles,.health-view .fx-lead,.health-view .fx-foot,.health-view .fx-foot-btns{max-width:760px;width:100%;box-sizing:border-box}
.fx-card{display:flex;flex-direction:column;gap:10px}
.fx-card h2{margin:0;font-family:var(--display);font-size:22px;font-weight:600}
.fx-card p{margin:0}.fx-card .fine{text-align:left}
.fx-lead{margin:0;color:var(--muted);font-size:15px}
.fx-foot{margin:0;font-size:12px;color:var(--muted);line-height:1.5}
.fx-eyebrow{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#1e6b4a}
.fx-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.fx-tile{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:4px;min-width:0}
.fx-tile.ox{background:linear-gradient(160deg,#fff,#f7f2ef)}
.fx-tile.ox .fx-eyebrow{color:#562e2e}
.fx-big{display:flex;align-items:baseline;gap:6px}.fx-big b{font-family:var(--display);font-size:40px;line-height:1.05}.fx-big span{font-weight:700;color:var(--muted);font-size:13px}
.fx-diff{font-style:normal;font-size:12px;font-weight:800;align-self:flex-start;padding:3px 8px;border-radius:10px;background:#efede8;color:#4a4d52}
.fx-diff.good{background:#e2f3ea;color:#1b6b45}.fx-diff.bad{background:#fbeceb;color:#9c2a20}
.fx-sub{font-size:12px;color:var(--muted)}
.fx-spark{width:100%;height:auto;max-height:140px}.fx-l-age{fill:none;stroke:#c9c5bd;stroke-width:2;stroke-dasharray:4 3}.fx-l-ph{fill:none;stroke:#562e2e;stroke-width:2.5}.fx-dot{fill:#562e2e}.fx-ax{font-size:9px;fill:#6b6d72}
.fx-warn{background:#fdf1e8;border:1px solid #f1cfb4;border-radius:12px;padding:10px 12px;color:#7a3b10;font-size:13px;line-height:1.45}
.fx-warn p{margin:0}
.fx-chips{display:flex;flex-wrap:wrap;gap:6px}
.fx-chips span{background:#f3f1ec;border-radius:12px;padding:4px 10px;font-size:13px}
.fx-chips.sel button{border:1px solid #dcd8cf;background:#fff;border-radius:16px;padding:7px 12px;font-size:13px;color:var(--text);min-width:40px}
.fx-chips.sel button[aria-pressed="true"]{background:#1e6b4a;border-color:#1e6b4a;color:#fff}
.fx-btns{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.fx-card>.hm-btn{align-self:flex-start}
.fx-levers{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.fx-levers button{width:100%;text-align:left;border:1px solid #ecebe6;background:#faf9f6;border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.fx-levers strong{font-size:14px}.fx-levers span{font-size:13px;color:var(--muted)}
.fx-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.fx-card .field,.fx-modal .field{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700}
.fx-card input,.fx-card select,.fx-card textarea,.fx-modal input,.fx-modal select,.fx-modal textarea{min-height:42px;border:1px solid #dcd8cf;border-radius:10px;padding:0 10px;background:#fff;font:inherit;font-weight:400;box-sizing:border-box;width:100%}
.fx-card textarea,.fx-modal textarea{padding:8px 10px}
.fx-lbl{font-size:13px;font-weight:700;margin-top:4px}
.fx-prof.inner{border:0;padding:12px 0 0;background:none}
.fx-week-h{display:flex;justify-content:space-between;align-items:flex-end;gap:14px}
.fx-bars{display:flex;align-items:flex-end;gap:4px;height:48px;width:120px}.fx-bars i{flex:1;background:#dfe9e3;border-radius:3px 3px 0 0}.fx-bars i.now{background:#1e8e5a}
.fx-days{display:flex;gap:6px}.fx-days span{flex:1;text-align:center;font-size:12px;font-weight:700;padding:7px 0;border-radius:10px;background:#f3f1ec;color:#8a8c90}
.fx-days span.plan{background:#fff;border:1px dashed #1e8e5a;color:#1e6b4a}.fx-days span.done{background:#1e8e5a;border:1px solid #1e8e5a;color:#fff}.fx-days span.today{outline:2px solid #2d2d2d;outline-offset:1px}
.fx-tabs{display:flex;gap:6px;overflow-x:auto}.fx-tabs button{border:1px solid #dcd8cf;background:#fff;border-radius:14px;padding:7px 12px;font-size:13px;white-space:nowrap}.fx-tabs button[aria-selected="true"]{background:#2d2d2d;color:#fff;border-color:#2d2d2d}
.fx-ex{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.fx-ex summary{cursor:pointer;display:flex;flex-direction:column;gap:1px}.fx-ex summary::-webkit-details-marker{display:none}.fx-ex summary strong{font-size:15px}.fx-ex summary span{font-size:13px;color:var(--muted)}
.fx-ex details p{margin:6px 0 0;font-size:13px}
.fx-more{display:flex;flex-direction:column;gap:6px;font-size:13px;border-top:1px solid #efede8;padding-top:10px}
.fx-adj summary{cursor:pointer;font-weight:700;font-size:14px;color:#0e6b58}.fx-adj[open]{display:flex;flex-direction:column;gap:8px}
.fx-tgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.fx-t{text-align:left;border:1px solid #e6e3dc;background:#fff;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:2px;border-left:4px solid #d6d3cc}
.fx-t.gut{border-left-color:#1e8e5a}.fx-t.mittel{border-left-color:#cbca55}.fx-t.niedrig{border-left-color:#d4552a}
.fx-t-k{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.fx-t strong{font-size:14px}
.fx-t-v b{font-size:22px}.fx-t-v i{font-style:normal;font-size:12px;font-weight:700}.fx-t-v i.up{color:#1e8e5a}.fx-t-v i.down{color:#c0392b}
.fx-t-n{font-size:12px;color:var(--muted)}
.fx-prog{display:flex;flex-direction:column;gap:4px}.fx-prog div{display:flex;justify-content:space-between;gap:10px;font-size:13px}.fx-prog span{color:#1e6b4a;font-weight:700}
.fx-log{display:flex;flex-direction:column}.fx-log-r{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f0eee9}.fx-log-r>div{display:flex;flex-direction:column;min-width:0}.fx-log-r strong{font-size:14px}.fx-log-r span{font-size:12px;color:var(--muted)}
/* Modal */
.fx-ov{position:fixed;inset:0;z-index:190;background:rgba(30,30,30,.45);display:flex;align-items:center;justify-content:center;padding:16px}
.fx-modal{background:#fff;border-radius:22px;width:100%;max-width:520px;max-height:92vh;overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.fx-mh{display:flex;justify-content:space-between;align-items:center;padding:16px 18px 6px;position:sticky;top:0;background:#fff;z-index:1}.fx-mh strong{font-family:var(--display);font-size:20px;font-weight:600}
.fx-x{border:0;background:#f3f1ec;width:36px;height:36px;border-radius:18px;font-size:22px;line-height:1}
.fx-mb{padding:6px 18px 20px;display:flex;flex-direction:column;gap:12px}
.fx-mb p{margin:0}
.fx-tlist{display:flex;flex-direction:column;gap:8px}.fx-tl{text-align:left;border:1px solid #e6e3dc;background:#faf9f6;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:2px}.fx-tl.done{background:#eef7f1;border-color:#bfe0cc}.fx-tl span{font-size:13px;color:var(--muted)}
.fx-how{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.45}
.fx-tf,.fx-logf{display:flex;flex-direction:column;gap:10px}
.fx-timer{font-family:var(--display);font-size:56px;text-align:center;line-height:1;padding:8px 0;font-variant-numeric:tabular-nums}
.fx-tap{min-height:90px;border-radius:18px;border:2px dashed #1e8e5a;background:#eef7f1;font-size:28px;font-weight:800;color:#1e6b4a}
.fx-res{border-radius:16px;padding:16px;background:#f3f1ec;display:flex;flex-direction:column;gap:4px}.fx-res.gut{background:#e2f3ea}.fx-res.mittel{background:#f6f6df}.fx-res.niedrig{background:#fbeceb}.fx-res strong{font-size:18px}
.fx-logl{display:flex;flex-direction:column;gap:6px}
.fx-logr{display:grid;grid-template-columns:minmax(0,1fr) 72px 64px;gap:6px;align-items:center}
.fx-logc{display:flex;gap:8px;align-items:center;font-size:14px}.fx-logc input{width:20px!important;min-height:20px!important}
.fx-chips.rpe button{min-width:36px;padding:7px 0}
/* Heute-Block */
.hm-fit{display:flex;flex-direction:column;gap:12px}
.hm-fit-t{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hm-fit-x{border:1px solid var(--hline,#e3ecef);background:#fff;border-radius:14px;padding:10px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left}
.hm-fit-x small{font-size:11px;font-weight:700;color:var(--hmuted,#5d7079)}.hm-fit-x b{font-family:var(--display);font-size:26px;line-height:1.1}
.hm-fit-x em{font-style:normal;font-size:11px;font-weight:800;color:#4a4d52}.hm-fit-x em.good{color:#1b6b45}.hm-fit-x em.bad{color:#9c2a20}
@media (max-width:640px){
  .fx-tiles{grid-template-columns:1fr 1fr}.fx-tiles .fx-tile:first-child{grid-column:1/-1}
  .fx-big b{font-size:34px}
  .fx-tgrid{grid-template-columns:1fr}
  .fx-ov{align-items:flex-end;padding:0}.fx-modal{border-radius:22px 22px 0 0;max-height:94vh}
}

/* ---------- Labortests (Remi) ---------- */
.lo-modal .fx-mb{gap:10px}
.lo-choice{text-align:left;border:1px solid #e6e3dc;background:#faf9f6;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:3px;width:100%}
.lo-choice:hover:not(:disabled){border-color:#562e2e}.lo-choice:disabled{opacity:.5}
.lo-choice strong{font-size:15px}.lo-choice span{font-size:13px;color:var(--muted);line-height:1.4}.lo-choice em{font-style:normal;font-size:12px;font-weight:800;color:#562e2e}
.lo-form{display:flex;flex-direction:column;gap:10px}
.lo-zip{display:flex;gap:8px}.lo-zip input{flex:1;min-height:42px;border:1px solid #dcd8cf;border-radius:10px;padding:0 10px}
.lo-list{display:flex;flex-direction:column;gap:8px}
.lo-days{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.lo-days button,.lo-slots button{flex:0 0 auto;border:1px solid #dcd8cf;background:#fff;border-radius:12px;padding:8px 12px;font-size:13px;white-space:nowrap}
.lo-days button[aria-pressed="true"]{background:#2d2d2d;color:#fff;border-color:#2d2d2d}
.lo-slots{display:flex;flex-wrap:wrap;gap:6px}.lo-slots button:hover{border-color:#562e2e}
.lo-sum{display:flex;flex-direction:column;gap:4px;background:#f7f2ef;border-radius:14px;padding:14px;font-size:14px}.lo-sum strong{font-size:16px}
.health-view .fx-labmount{display:flex;flex-direction:column;gap:12px;max-width:760px;width:100%}
.lo-o{display:flex;flex-direction:column;gap:6px;border-top:1px solid #efede8;padding-top:10px}
.lo-o>div:first-child{display:flex;flex-direction:column;gap:2px}.lo-o strong{font-size:15px}.lo-o span{font-size:13px;color:var(--muted)}
.lo-o .lo-st{align-self:flex-start;font-size:12px;font-weight:800;color:#1e6b4a;background:#e2f3ea;border-radius:10px;padding:2px 8px}
.lo-o.st-rebook .lo-st,.lo-o.st-error .lo-st{background:#fbeceb;color:#9c2a20}.lo-o.st-awaiting_payment .lo-st{background:#f3f1ec;color:#5f6166}.lo-o.st-completed .lo-st{background:#562e2e;color:#fff}
.lo-o input{min-height:38px;border:1px solid #dcd8cf;border-radius:10px;padding:0 10px}
.lo-age{background:#f7f2ef;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column}.lo-age b{font-family:var(--display);font-size:32px;color:#562e2e}
.lo-keys{display:flex;flex-direction:column}
.lo-k{border-top:1px solid #f0eee9;padding:8px 0}.lo-k summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;cursor:pointer;list-style:none}.lo-k summary::-webkit-details-marker{display:none}
.lo-kn{font-size:14px;font-weight:700}.lo-kv{font-size:13px;white-space:nowrap}.lo-kv i{font-style:normal;color:var(--muted)}
.lo-dot{font-size:11px;font-weight:800;border-radius:10px;padding:2px 8px;background:#f3f1ec;color:#5f6166;white-space:nowrap}.lo-dot.normal{background:#e2f3ea;color:#1b6b45}.lo-dot.high,.lo-dot.low{background:#fdf1e8;color:#7a3b10}.lo-dot.unknown{display:none}
.lo-k p{margin:6px 0 0;font-size:13px;color:#3d3f44;line-height:1.45}
.lo-all summary{cursor:pointer;font-weight:700;font-size:14px;color:#0e6b58}.lo-all h3{font-size:13px;margin:10px 0 4px}
.lo-tab{display:flex;flex-direction:column}.lo-tab div{display:flex;justify-content:space-between;gap:10px;font-size:12px;padding:3px 0;border-bottom:1px solid #f6f5f2}.lo-tab b{font-weight:700;white-space:nowrap}
.sh-remi{display:flex;flex-direction:column;gap:14px}
@media (max-width:640px){.lo-k summary{grid-template-columns:minmax(0,1fr) auto}.lo-k .lo-dot{grid-column:1/-1;justify-self:start}}
.fx-ov{--ice:#0b6e8f;--ice2:#5ab8d9;--ink:#0d2f3c;--hmuted:#5d7079;--hfaint:#7d8f97;--hline:#e3ecef;--good:#1e8e5a;--bad:#d4552a;color:var(--text)}
.lo-slots button.lo-good{border-color:#1e8e5a;background:#eef8f1;font-weight:600}.lo-slot-hint{flex-basis:100%;margin:0 0 4px}
/* ---------- Hormone & Zyklus ---------- */
.hx-card h3{margin:6px 0 0;font-size:15px}
.hx-modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.hx-mode{display:flex;flex-direction:column;gap:2px;text-align:left;border:1px solid #dcd8cf;background:#fff;border-radius:14px;padding:12px;font:inherit;color:var(--text);cursor:pointer}
.hx-mode span{font-size:13px;color:var(--muted)}
.hx-mode[aria-pressed="true"]{border-color:#8e3b5f;background:#f7eaf0;box-shadow:inset 0 0 0 1px #8e3b5f}
.hx-more{display:flex;flex-direction:column;gap:10px}
.hx-chk{display:flex;gap:10px;align-items:flex-start;font-size:14px}.hx-chk input{width:20px!important;min-height:20px!important;margin-top:1px}
.hx-now-head{display:flex;gap:12px;align-items:center}
.hx-av{width:52px;height:52px;border-radius:50%;object-fit:cover;flex:0 0 auto;background:#f7eaf0}
.hx-now-t{display:flex;flex-direction:column;gap:2px;min-width:0}.hx-now-t strong{font-size:17px}.hx-now-t span{color:var(--muted);font-size:14px}
.hx-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;max-width:520px}
.hx-wd{font-size:11px;color:var(--muted);text-align:center;font-weight:700}
.hx-day-c{position:relative;aspect-ratio:1;border:1px solid #ece8e1;background:#fff;border-radius:10px;font:inherit;font-size:13px;color:var(--text);padding:0;cursor:pointer;min-height:34px}
.hx-day-c.fut{background:transparent;border-style:dashed;color:#b9b3a8;cursor:default}
.hx-day-c.today{box-shadow:inset 0 0 0 2px #2d2d2d}
.hx-day-c.f2{background:#f6d9e3}.hx-day-c.f3{background:#eaa9bf}.hx-day-c.f4{background:#d4708f;color:#fff}.hx-day-c.f5{background:#a8385c;color:#fff}
.hx-day-c.spot{background:repeating-linear-gradient(135deg,#fff 0 4px,#f6d9e3 4px 8px)}
.hx-day-c.pred{border:1.5px dashed #c46b8a;color:#8e3b5f}
.hx-dot{position:absolute;bottom:4px;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:#3b4fa8}
.hx-day-c.f4 .hx-dot,.hx-day-c.f5 .hx-dot{background:#fff}
.hx-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}
.hx-legend span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.hx-legend .l-f::before{background:#d4708f}.hx-legend .l-s::before{background:repeating-linear-gradient(135deg,#fff 0 2px,#eaa9bf 2px 4px);border:1px solid #eaa9bf}
.hx-legend .l-d::before{background:#3b4fa8;border-radius:50%;width:6px;height:6px;vertical-align:1px}.hx-legend .l-p::before{border:1.5px dashed #c46b8a}
.hx-num{font-size:22px;font-family:var(--display)}
.hx-bars{display:flex;flex-direction:column;gap:5px}
.hx-bar{display:grid;grid-template-columns:62px 1fr 28px;gap:8px;align-items:center;font-size:12px;color:var(--muted)}
.hx-bar i{display:block;height:8px;border-radius:4px;background:#d4708f}.hx-bar i.out{background:#c77b2a}.hx-bar b{color:var(--text);text-align:right}
.hx-stage{font-size:18px;color:#8e3b5f}
.hx-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:5px;font-size:14px;line-height:1.45}.hx-list.small{font-size:13px}
.hx-list li.st-high,.hx-list li.st-low{color:#8a3a12}
.hx-flag{border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;border:1px solid #e3e0da;background:#fff}
.hx-flag p{margin:0;font-size:14px;line-height:1.45}.hx-flag strong{font-size:13px}
.hx-flag.doctor{background:#fdecec;border-color:#f0b9b9}.hx-flag.doctor strong{color:#9b1c1c}
.hx-flag.hint{background:#fdf1e8;border-color:#f1cfb4}.hx-flag.hint strong{color:#7a3b10}
.hx-flag.info{background:#f3f1ec}
.hx-res{display:flex;flex-direction:column;gap:3px;background:#f7eaf0;border-radius:12px;padding:10px 12px;font-size:14px}.hx-res em{font-style:normal;color:#7a3b10}
.hx-trend{display:flex;gap:8px;align-items:flex-end;height:96px;max-width:520px}
.hx-trend b{font-size:11px;color:var(--text)}.hx-trend span{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;gap:3px}
.hx-trend i{display:block;width:100%;max-width:26px;height:var(--h);background:#c46b8a;border-radius:6px 6px 2px 2px}.hx-trend small{font-size:10px;color:var(--muted)}
.hx-verdict{background:#f3f1ec;border-radius:12px;padding:10px 12px;font-size:14px;line-height:1.45}
.hx-verdict.low,.hx-verdict.grey{background:#fdf1e8}.hx-verdict.ok{background:#e9f5ee}
.hx-red summary{cursor:pointer;font-weight:700;padding:2px 0}.hx-red .hx-list{margin-top:8px}
.hx-set{align-self:flex-start}
.hx-day,.hx-check{display:flex;flex-direction:column;gap:10px}
.hx-lbl{font-size:13px;font-weight:700}
.hx-flow button[data-v="0"][aria-pressed="true"]{background:#2d2d2d;border-color:#2d2d2d}
.hx-flow button[aria-pressed="true"]{background:#a8385c;border-color:#a8385c}
.hx-scale button{min-width:44px}
.hx-q{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.hx-q legend{font-size:14px;font-weight:700;padding:0;margin-bottom:6px}
.hx-scale5 button{flex:1 1 0;min-width:0;padding:7px 4px!important;font-size:12px!important}
.hx-scale5 button[aria-pressed="true"]{background:#8e3b5f!important;border-color:#8e3b5f!important}
.hm-horm .hm-supps-h>div{min-width:0}
@media (max-width:520px){.hx-scale5{flex-wrap:nowrap}.hx-bar{grid-template-columns:54px 1fr 24px}}
.hm-todo-more{align-self:flex-start;margin:2px 0 4px}
.hm-todo-empty{list-style:none;color:var(--muted);font-size:14px;padding:6px 0}
.hm-todo-donebox{margin-top:4px}.hm-todo-donebox summary{cursor:pointer;font-size:13px;font-weight:700;color:var(--muted);padding:6px 0}
.hm-todo-donebox .hm-todo{margin-top:4px;opacity:.8}
.hm-focus .hm-todo-more,.hm-focus .hm-todo-donebox summary{color:rgba(255,255,255,.88);background:none;border:0;font:inherit;font-size:14px;font-weight:700;padding:6px 0;cursor:pointer}.hm-focus .hm-todo-empty{color:rgba(255,255,255,.8)}
.ap-steps{margin:10px 0;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:1.45}
.ap-copy{display:flex;gap:8px;align-items:center;margin-top:6px;flex-wrap:wrap}.ap-copy .code{flex:1 1 220px;word-break:break-all;font-size:12px}
.ap-alt{margin:8px 0;font-size:13px}.ap-alt summary{cursor:pointer;font-weight:700}
.ap-diag{margin-top:10px;font-size:13px}.ap-diag ul{margin:6px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:4px}
.ap-diag li.ok{color:#1e6b4a}.ap-diag li.warn{color:#8a5a12}.ap-diag li.bad{color:#9b1c1c}.ap-diag details{margin-top:8px}
.status.warn{color:#8a5a12}.status.bad{color:#9b1c1c}
.hm-noplan{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;font-size:14px;opacity:.92}
/* ---------- Check-up & Arzttermin ---------- */
.cu-status{display:flex;flex-direction:column;gap:2px;background:#f3f1ec;border-radius:14px;padding:12px 14px}.cu-status span{color:var(--muted);font-size:14px}
.cu-status.due{background:#fdf1e8}.cu-status.run{background:#e3f0f5}
.cu-bar{height:8px;border-radius:4px;background:#ece8e1;overflow:hidden}.cu-bar i{display:block;height:100%;background:#0d4f66;border-radius:4px}
.cu-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.cu-steps li{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:#fff}
.cu-steps li div{display:flex;flex-direction:column;gap:2px;min-width:0}.cu-steps li div span{font-size:13px;color:var(--muted)}
.cu-steps li.done{background:#f3f8f5;border-color:#cfe6d8}
.cu-ic{width:26px;height:26px;border-radius:50%;border:2px solid #cfcac0;display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff}
.cu-steps li.done .cu-ic{background:#1e8e5a;border-color:#1e8e5a;color:#fff;font-size:14px}
.cu-review{display:grid;grid-template-columns:52px 1fr;gap:12px;align-items:start}.cu-review p{margin:4px 0 0}
.cu-av{width:52px;height:52px;border-radius:50%;object-fit:cover}
.cu-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.cu-list{border-radius:14px;padding:10px 14px}.cu-list.good{background:#eef8f1}.cu-list.bad{background:#fdf1e8}.cu-list h3{margin:0 0 4px;font-size:14px}.cu-list ul{margin:0;padding-left:18px;font-size:14px}
.cu-goals{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.cu-goals li{display:flex;gap:10px;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:14px;padding:10px 12px}.cu-goals li div{display:flex;flex-direction:column;gap:2px}.cu-goals span{font-size:13px;color:var(--muted)}
.cu-table summary{cursor:pointer;font-weight:700}.cu-table h4{margin:12px 0 4px;font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.cu-rows{display:flex;flex-direction:column}
.cu-row{display:grid;grid-template-columns:minmax(0,1fr) 70px 110px 90px;gap:8px;padding:6px 0;border-bottom:1px solid #efece6;font-size:14px;align-items:baseline}
.cu-row .p{color:var(--muted);text-align:right}.cu-row .v{font-weight:700;text-align:right}.cu-row .t{font-size:12px;text-align:right}
.cu-row .t.good{color:#1e6b4a}.cu-row .t.bad{color:#9b1c1c}.cu-row .t.muted{color:#aaa39a}
.cu-q{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px;font-size:14px}.cu-q li{display:list-item}.cu-q li .cu-x{float:right;margin-left:8px}
.cu-x{border:0;background:none;font-size:18px;line-height:1;color:var(--muted);cursor:pointer;padding:0 4px}
.cu-add{display:flex;gap:8px}.cu-add input{flex:1}
.cu-sug{display:flex;flex-direction:column;gap:6px}.cu-chip{text-align:left;border:1px dashed #9fc3d1;background:#f4fafc;border-radius:12px;padding:8px 12px;font:inherit;font-size:14px;color:var(--text);cursor:pointer}
.cu-hist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
@media (max-width:520px){.cu-row{grid-template-columns:minmax(0,1fr) 54px 88px;}.cu-row .t{grid-column:2/4;text-align:right;margin-top:-4px}}
.cu-more{margin-top:8px}

/* Arzt-Übersicht (In-App-Viewer) */
html.dv-lock,html.dv-lock body{overflow:hidden}
.dv-overlay{position:fixed;inset:0;z-index:1000;background:#e9e6e0;display:flex;flex-direction:column}
.dv-bar{display:flex;align-items:center;gap:12px;padding:calc(env(safe-area-inset-top) + 8px) 12px 8px;background:#fff;border-bottom:1px solid var(--line)}
.dv-bar strong{font-size:16px}
.dv-close{border:0;background:#f1eee8;border-radius:999px;padding:9px 14px;font:inherit;font-weight:700;color:var(--text);cursor:pointer;min-height:40px}
.dv-body{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;padding:14px 10px 24px}
.dv-actions{display:flex;gap:8px;padding:10px 12px calc(env(safe-area-inset-bottom) + 10px);background:#fff;border-top:1px solid var(--line)}
.dv-actions .hm-btn{flex:1;min-height:46px}
.dv-paper{max-width:760px;margin:0 auto;background:#fff;border-radius:6px;box-shadow:0 2px 10px rgba(0,0,0,.08);padding:20px 18px;color:#1f1f21;font-size:14px}
.dv-head{display:flex;justify-content:space-between;gap:12px;border-bottom:2px solid #572e2e;padding-bottom:10px}
.dv-head div{display:flex;flex-direction:column;gap:2px}.dv-head h2{margin:0 0 6px;font-size:19px;color:#572e2e}.dv-head strong{font-size:16px}.dv-head span{color:#6e6e73;font-size:13px}
.dv-date{white-space:nowrap}
.dv-reason{margin:10px 0}
.dv-glance{background:#fdf6ef;border:1px solid #edcdb3;border-radius:8px;padding:10px 12px;margin:12px 0}
.dv-glance h3,.dv-sec h3{margin:0 0 8px;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:#572e2e}
.dv-glance dl,.dv-kv{display:grid;grid-template-columns:minmax(110px,38%) 1fr;gap:4px 12px;margin:0}
.dv-glance dt,.dv-kv dt{color:#6e6e73}.dv-glance dd,.dv-kv dd{margin:0}.dv-glance dd{font-weight:700}
.dv-glance dd.high,.dv-paper td.high{color:#b31f1a}.dv-glance dd.low,.dv-paper td.low{color:#1f549e}
.dv-sec{margin-top:16px}.dv-sec h3{background:#f6f4f1;border-left:3px solid #572e2e;padding:6px 8px;display:flex;justify-content:space-between;gap:8px;align-items:baseline;flex-wrap:wrap}
.dv-sec h3 small{font-size:10.5px;text-transform:none;letter-spacing:0;color:#6e6e73;font-weight:400}
.dv-sec ol,.dv-sec ul{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:4px}
.dv-tw{overflow-x:auto}
.dv-paper table{width:100%;border-collapse:collapse;font-size:13px}
.dv-paper th{text-align:left;font-size:11px;color:#6e6e73;border-bottom:1.5px solid #1f1f21;padding:4px 6px;white-space:nowrap}
.dv-paper td{padding:5px 6px;border-bottom:1px solid #ece9e4;vertical-align:top}
.dv-paper tbody tr:nth-child(even) td:not(.grp){background:#fbfaf8}
.dv-paper .r{text-align:right;white-space:nowrap}.dv-paper td.mut{color:#6e6e73}.dv-paper td.b,.dv-paper td.high,.dv-paper td.low{font-weight:700}
.dv-paper td.grp{font-weight:700;color:#572e2e;font-size:12px;padding-top:9px;border-bottom:0}
.dv-foot{margin:18px 0 0;font-size:11.5px;color:#6e6e73;border-top:1px solid #ece9e4;padding-top:8px}
@media (max-width:520px){.dv-paper{padding:14px 12px;font-size:13.5px}.dv-head{flex-direction:column}.dv-glance dl,.dv-kv{grid-template-columns:1fr;gap:0 0}.dv-glance dd,.dv-kv dd{margin-bottom:6px}}
.dv-actions .hm-btn{font-size:15px;color:#1f1f21;border-color:#d8d4cc;background:#fff}.dv-actions .hm-btn.primary{background:#0d4f66;border-color:#0d4f66;color:#fff}
.dv-close:focus-visible{outline:2px solid #0d4f66;outline-offset:2px}
.dv-list{display:none}
.dv-lg{font-weight:700;color:#572e2e;font-size:12px;text-transform:uppercase;letter-spacing:.04em;margin:10px 0 2px}
.dv-li{padding:7px 0;border-bottom:1px solid #ece9e4}.dv-li.flag{background:#fffaf6}
.dv-lt{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.dv-lt .b{font-weight:700}.dv-lt .v{font-weight:700;white-space:nowrap}
.dv-lt .v.high{color:#b31f1a}.dv-lt .v.low{color:#1f549e}.dv-ld{font-size:12.5px;color:#6e6e73;margin-top:2px}
@media (max-width:600px){.dv-tw{display:none}.dv-list{display:block}}
/* Infusionen */
.if-card h3{margin:14px 0 6px;font-size:14px}
.if-intro .cu-review p{margin:4px 0 0;font-size:14px;color:var(--muted)}
.if-intro>.hm-btn{align-self:flex-start;margin-top:8px}
.if-chips{display:flex;flex-wrap:wrap;gap:6px}
.if-chip{border:1px solid #d8d4cc;background:#fff;border-radius:999px;padding:7px 12px;font:inherit;font-size:13.5px;color:var(--text);cursor:pointer;min-height:36px}
.if-chip.on{background:#2f6f8f;border-color:#2f6f8f;color:#fff}
.if-safety{display:flex;flex-direction:column;gap:6px}
.if-list{display:flex;flex-direction:column;gap:8px}
.if-item{border:1px solid var(--line);border-left:4px solid #cfcac0;border-radius:12px;padding:10px 12px;background:#fff}
.if-item.fit-fits{border-left-color:#1e8e5a}.if-item.fit-possible{border-left-color:#2f6f8f}.if-item.fit-caution{border-left-color:#b3261e}.if-item.fit-test{border-left-color:#c77d1a}.if-item.fit-wish{border-left-color:#9a8f82}.if-item.fit-no{border-left-color:#e2ddd5;opacity:.85}
.if-item.wished{box-shadow:0 0 0 2px #cfe3ec inset}
.if-ih{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}.if-ih strong{margin-right:auto}
.if-fit{font-size:12px;font-weight:700;border-radius:999px;padding:2px 8px;background:#f1eee8;color:#555}
.if-fit.fit-fits{background:#e5f4ec;color:#1e6b4a}.if-fit.fit-possible{background:#e4f0f5;color:#1f5670}.if-fit.fit-caution{background:#fbeceb;color:#9b1c1c}.if-fit.fit-test{background:#fdf1e2;color:#8a520d}
.if-grade{font-size:11.5px;font-weight:700;border-radius:6px;padding:2px 7px;white-space:nowrap}
.if-grade.gA{background:#e5f4ec;color:#1e6b4a}.if-grade.gB{background:#e4f0f5;color:#1f5670}.if-grade.gC{background:#f1eee8;color:#6b645b}
.if-short{margin:6px 0 0;font-size:13.5px;color:var(--muted)}
.if-why,.if-warn{margin:6px 0 0;padding-left:18px;font-size:13.5px}
.if-warn{color:#8a3a14}
.if-vals{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.if-val{font-size:12px;background:#f6f4f1;border-radius:6px;padding:2px 7px}.if-val.high{color:#b31f1a;font-weight:700}.if-val.low{color:#1f549e;font-weight:700}.if-val.old{opacity:.6}
.if-miss{margin:6px 0 0;font-size:13px;color:#8a520d;font-weight:600}
.if-item .fine{margin:6px 0 0}
.if-more summary{cursor:pointer;font-weight:600;font-size:14px;margin:6px 0}
.if-plan-items{display:flex;flex-wrap:wrap;gap:6px}
.if-note{background:#f3f8fb;border-radius:12px;padding:10px 12px}.if-note p{margin:4px 0 0}
.cu-steps li.next{border-color:#2f6f8f;box-shadow:0 0 0 1px #2f6f8f inset}
.if-dates{margin:0;padding-left:18px;font-size:14px}.if-dates li.past{color:var(--muted)}
.if-row{grid-template-columns:minmax(0,1fr) 120px 120px 70px}
.if-rate{display:flex;flex-direction:column;gap:8px;background:#f6f4f1;border-radius:12px;padding:10px 12px}
.if-legend-l{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:14px}.if-legend-l li{display:flex;gap:8px;align-items:baseline}
.if-adm{border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px;background:#fcfbf9}
.if-kv{display:grid;grid-template-columns:minmax(90px,25%) 1fr;gap:3px 10px;margin:0;font-size:13.5px}.if-kv dt{color:var(--muted)}.if-kv dd{margin:0}
.if-form{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);padding-top:8px}
.if-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
@media (max-width:520px){.if-row{grid-template-columns:minmax(0,1fr) 90px 90px}.if-row .t{grid-column:2/4;text-align:right}.if-kv{grid-template-columns:1fr}.if-kv dd{margin-bottom:4px}}
/* Meine Ärztin (Patient) */
.ae-card h2{margin:0 0 8px}
.ae-doc-h{display:flex;gap:14px;align-items:center}
.ae-av{width:64px;height:64px;border-radius:50%;background:#f3ecea;color:#562e2e;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700;overflow:hidden;flex:none}
.ae-av img{width:100%;height:100%;object-fit:cover}
.ae-doc-h div{display:flex;flex-direction:column;gap:2px}.ae-doc-h strong{font-size:17px}.ae-doc-h span{color:var(--muted);font-size:14px}
.ae-resp{color:#1e6b4a!important}.ae-away{color:#8a520d!important;font-weight:600}
.ae-consent p{font-size:14.5px;line-height:1.5;margin:0 0 8px}
.ae-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.ae-row{width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px;display:grid;grid-template-columns:1fr auto;gap:2px 10px;font:inherit;color:var(--text);cursor:pointer}
.ae-row strong{grid-column:1/2}.ae-row .fine{grid-row:1;grid-column:2;margin:0}
.ae-list li.unread .ae-row{border-color:#562e2e;box-shadow:0 0 0 1px #562e2e inset}
.ae-list li.unread .ae-row strong::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:#c0392b;margin-right:6px;vertical-align:middle}
.ae-kind{font-size:12px;font-weight:700;color:#562e2e;text-transform:uppercase;letter-spacing:.04em}
.ae-st{font-size:12px;font-weight:700;color:var(--muted)}.ae-st.answered{color:#1e6b4a}.ae-st.open{color:#8a520d}
.ae-eh{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.ae-body p{margin:0 0 10px;line-height:1.55}
.ae-ref{margin:0 0 8px;color:var(--muted);font-size:14px}.ae-due{font-weight:600;color:#1f5670}
.ae-form{display:flex;flex-direction:column;gap:8px}.ae-form textarea{width:100%;font:inherit;border:1px solid var(--line);border-radius:12px;padding:10px}
.ae-files{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0}
.ae-file{display:inline-flex;gap:6px;align-items:center;background:#f6f4f1;border-radius:8px;padding:4px 10px;font-size:13px;color:var(--text);text-decoration:none}
a.ae-file:hover{background:#ece8e1}
.ae-msgs{display:flex;flex-direction:column;gap:8px}
.ae-msg{border-radius:12px;padding:8px 12px;max-width:92%}.ae-msg p{margin:4px 0 0;white-space:pre-wrap}
.ae-msg.patient{background:#eef5f8;align-self:flex-end}.ae-msg.doctor{background:#f7f1ef;align-self:flex-start}
.ae-who{font-size:12px;color:var(--muted)}
.fine.warn{color:#9b1c1c;font-weight:600}
.ae-foot{text-align:center}
.pc-ov{display:flex;align-items:center;justify-content:center;z-index:1200}.pc-ov .sheet{max-width:560px}.pc-text p{font-size:14.5px;line-height:1.5}
.lb-docnote{border-left:4px solid #562e2e}.lb-docnote span{display:block;margin-top:4px}
/* Praxis-App (Ärztin) */
.px-root{min-height:100vh;background:#f3f1ec}
.px-wrap{display:flex;flex-direction:column;min-height:100vh}
.px-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;background:#562e2e;color:#fff;position:sticky;top:0;z-index:10;flex-wrap:wrap}
.px-who{display:flex;flex-direction:column}.px-who span{font-size:13px;opacity:.85}
.px-nav{display:flex;gap:6px;flex-wrap:wrap}
.px-tab{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:999px;padding:7px 14px;font:inherit;font-size:14px;cursor:pointer}.px-tab.on{background:#fff;color:#562e2e}
.px-warn{margin:0;padding:8px 18px;background:#fdf1e2;color:#8a520d;font-size:13.5px}
.px-body{display:grid;grid-template-columns:300px 1fr;gap:16px;padding:16px;align-items:start}
.px-side{background:#fff;border-radius:16px;padding:12px;position:sticky;top:70px;max-height:calc(100vh - 90px);overflow:auto}
.px-side h3{margin:4px 4px 8px;font-size:15px}
.px-search{width:100%;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font:inherit;margin-bottom:8px}
.px-plist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.px-prow{width:100%;display:flex;gap:10px;align-items:center;border:0;background:transparent;border-radius:10px;padding:8px;text-align:left;font:inherit;color:var(--text);cursor:pointer}
.px-plist li.on .px-prow,.px-prow:hover{background:#f6f4f1}
.px-pt{display:flex;flex-direction:column;min-width:0;flex:1}.px-pt small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.px-dot{width:12px;height:12px;border-radius:50%;flex:none}.px-dot.red{background:#c0392b}.px-dot.yellow{background:#e0a100}.px-dot.green{background:#1e8e5a}
.px-badge{background:#c0392b;color:#fff;border-radius:999px;font-size:11px;font-weight:800;padding:1px 7px}
.px-main{display:flex;flex-direction:column;gap:12px;min-width:0}
.px-card{background:#fff;border-radius:16px;padding:14px 16px}
.px-card h2{margin:0 0 8px;font-size:20px}.px-card h3{margin:0 0 8px;font-size:16px}.px-card h4{margin:10px 0 4px;font-size:14px}
.px-inbox{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.px-irow{width:100%;display:grid;grid-template-columns:110px 180px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 10px;text-align:left;font:inherit;color:var(--text);cursor:pointer}
.px-inbox li.red .px-irow{border-left:4px solid #c0392b}.px-inbox li.yellow .px-irow{border-left:4px solid #e0a100}.px-inbox li.unread .px-irow strong{font-weight:800}
.px-itype{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--muted)}.px-irow small{color:var(--muted)}
.px-digest-t p{margin:0 0 4px}
.px-phead{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.px-phead h2{margin:0}
.px-acts{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap}
.px-flags{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.px-flags li{font-size:12.5px;border-radius:999px;padding:3px 10px;background:#f1eee8}.px-flags li.red{background:#fbeceb;color:#9b1c1c;font-weight:600}.px-flags li.yellow{background:#fdf1e2;color:#8a520d}.px-flags li.green{background:#e5f4ec;color:#1e6b4a}
.px-rtabs{display:flex;gap:4px;flex-wrap:wrap;background:#fff;border-radius:14px;padding:6px}
.px-rtab{border:0;background:transparent;border-radius:10px;padding:8px 12px;font:inherit;font-size:14px;cursor:pointer;color:var(--text)}.px-rtab.on{background:#562e2e;color:#fff}
.px-rbody{display:flex;flex-direction:column;gap:12px}
.px-kv{display:grid;grid-template-columns:minmax(140px,28%) 1fr;gap:4px 12px;margin:0;font-size:14px}.px-kv dt{color:var(--muted)}.px-kv dd{margin:0}.px-kv dd.high{color:#b31f1a;font-weight:700}.px-kv dd.low{color:#1f549e;font-weight:700}
.px-table{width:100%;border-collapse:collapse;font-size:13.5px}.px-table th{text-align:left;font-size:12px;color:var(--muted);border-bottom:1.5px solid #1f1f21;padding:4px 6px}
.px-table td{padding:5px 6px;border-bottom:1px solid #ece9e4;vertical-align:top}.px-table .r{text-align:right;white-space:nowrap}.px-table .mut{color:var(--muted)}.px-table .b{font-weight:700}
.px-table td.high{color:#b31f1a;font-weight:700}.px-table td.low{color:#1f549e;font-weight:700}.px-table td.grp{font-weight:700;color:#562e2e;padding-top:10px}
.px-table.sm{font-size:12.5px}
.px-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}
.px-eform textarea,.px-card textarea{width:100%;font:inherit;border:1px solid var(--line);border-radius:10px;padding:8px}
.px-eform select,.px-eform input{font:inherit}
.px-entry.internal{border:1px dashed #cfcac0}.px-entry.released{border:1px solid #cfe6d8}
.px-eh{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.px-eh small{margin-left:auto;color:var(--muted)}
.px-vis{font-size:12px;font-weight:700;border-radius:999px;padding:2px 8px}.px-vis.internal{background:#f1eee8;color:#6b645b}.px-vis.released{background:#e5f4ec;color:#1e6b4a}
.px-kind{font-size:12.5px;color:#562e2e;font-weight:700}
.px-entry p{margin:0 0 8px;line-height:1.5}
.px-vers{font-size:12.5px;color:var(--muted)}
.px-thread summary{cursor:pointer}.px-thread.urgent{border-left:4px solid #c0392b}.px-thread{display:flex;flex-direction:column;gap:8px}
.px-thread[open]>*+*{margin-top:8px}
.px-reps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.px-reps li{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.px-area summary{cursor:pointer;font-weight:700}
.px-chatlist{display:flex;flex-wrap:wrap;gap:6px}.px-chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;cursor:pointer}.px-chip.on{background:#562e2e;color:#fff;border-color:#562e2e}
.px-chat{display:flex;flex-direction:column;gap:6px;max-height:70vh;overflow:auto}
.px-photo img{width:96px;height:96px;border-radius:50%;object-fit:cover}
@media (max-width:900px){.px-body{grid-template-columns:1fr}.px-side{position:static;max-height:none}.px-irow{grid-template-columns:1fr;}.px-kv{grid-template-columns:1fr}}
.px-root .fine,.ae-card .fine{text-align:left}
.px-root .hm-btn{min-height:38px;padding:0 14px;border-radius:10px;border:1px solid #d8d4cc;background:#fff;color:#1f1f21;font:inherit;font-weight:700;font-size:13.5px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}
.px-root .hm-btn.primary{background:#562e2e;border-color:#562e2e;color:#fff}.px-root .hm-btn:disabled{opacity:.6}
.px-root .fx-btns{display:flex;flex-wrap:wrap;gap:8px}
.px-root .field{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:#555}
.px-root .field input,.px-root .field select,.px-root .field textarea{font:inherit;font-weight:400;color:#1f1f21;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}
.px-root .link-btn{background:none;border:0;color:#1f5670;text-decoration:underline;cursor:pointer;font:inherit;padding:0;text-align:left}
.ae-card .hm-btn{min-height:40px;padding:0 15px;border-radius:12px;border:1px solid #d8d4cc;background:#fff;color:#1f1f21;font-weight:700;font-size:14px}
.ae-card .hm-btn.primary{background:#562e2e;border-color:#562e2e;color:#fff}
.pc-ov .sheet{max-height:90vh;overflow:auto}.pc-text p{margin:0 0 10px}
.pc-ov .hm-btn{min-height:44px;padding:0 16px;border-radius:12px;border:1px solid #d8d4cc;background:#fff;color:#1f1f21;font-weight:700;font-size:15px}
.pc-ov .hm-btn.primary{background:#562e2e;border-color:#562e2e;color:#fff}
.pc-ov .fx-btns{display:flex;gap:8px;flex-wrap:wrap}
/* ---------- Praxis: individueller Bluttest (labbuilder.js) ---------- */
.lb2-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.lb2-head h3{margin:0 0 4px}.lb2-head p{margin:0;max-width:640px}
.lb2-inline{border-radius:12px}
.lb2-req{display:flex;flex-direction:column;gap:6px}.lb2-req p{margin:0}
.lb2-reqh{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lb2-reqh small{margin-left:auto;color:var(--muted)}
.lb2-st{font-size:12px;font-weight:700;border-radius:999px;padding:2px 9px;background:#f1eee8;color:#6b645b}
.lb2-st.st-proposed,.lb2-st.st-checkout{background:#fdf1e2;color:#8a520d}.lb2-st.st-ordered{background:#e6eef8;color:#1f4f86}.lb2-st.st-completed{background:#e5f4ec;color:#1e6b4a}.lb2-st.st-declined,.lb2-st.st-withdrawn{background:#f6e3e1;color:#8c2a22}
.lb2-names{font-size:13px;color:var(--muted);line-height:1.45}
.lb2-money{display:flex;gap:18px;flex-wrap:wrap}.lb2-money div{display:flex;flex-direction:column}.lb2-money span{font-size:12px;color:var(--muted)}.lb2-money b{font-size:15px}
.lb2-sample{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:#faf8f5;border-radius:12px;padding:8px 10px}.lb2-sample input{font:inherit;border:1px solid var(--line);border-radius:10px;padding:7px 10px;min-width:220px}
.lb2{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:12px;align-items:start}
.lb2-left{display:flex;flex-direction:column;gap:8px;min-width:0}.lb2-left h4{margin:8px 0 0;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:#562e2e}
.lb2-top{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.lb2-seg{display:flex;gap:6px;background:#f3f1ec;border-radius:14px;padding:4px;flex:1;min-width:280px}
.lb2-segb{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:0;background:transparent;border-radius:11px;padding:8px 12px;font:inherit;text-align:left;cursor:pointer;color:#1f1f21}
.lb2-segb small{font-size:12px;color:var(--muted)}.lb2-segb.on{background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.08)}.lb2-segb.on strong{color:#562e2e}
.lb2-bud{width:210px}
.lb2-panels{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px}
.lb2-panel{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:1.5px solid #e2ddd4;background:#fff;border-radius:12px;padding:8px 10px;font:inherit;text-align:left;cursor:pointer;color:#1f1f21}
.lb2-panel strong{font-size:13.5px}.lb2-panel span{font-size:12px;color:var(--muted)}
.lb2-panel.part{border-color:#d9b9a4;background:#fdf8f4}.lb2-panel.on{border-color:#562e2e;background:#f7efed}.lb2-panel.on span{color:#562e2e;font-weight:700}
.lb2-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.lb2-tools .px-search{flex:1;min-width:200px;margin:0}.lb2-tools select{font:inherit;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}
.lb2-chk{display:inline-flex;gap:6px;align-items:center;font-size:13.5px;cursor:pointer}
.lb2-list{display:flex;flex-direction:column;gap:10px}
.lb2-grp h5{margin:4px 0;font-size:13px;color:#562e2e}
.lb2-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto 118px;gap:10px;align-items:center;padding:7px 8px;border-radius:10px;border:1px solid transparent;cursor:pointer}
.lb2-row:hover{background:#faf8f5}.lb2-row.on{background:#f7efed;border-color:#e7d6d1}
.lb2-row.bad{opacity:.75}.lb2-row.bad.on{background:#fbeceb;border-color:#e8b9b4;opacity:1}.lb2-row.over:not(.on){opacity:.45}
.lb2-row input{width:18px;height:18px;accent-color:#562e2e}
.lb2-nm{display:flex;flex-direction:column;min-width:0}.lb2-nm b{font-size:14px}.lb2-nm small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb2-tags{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.lb2-tags i{font-style:normal;font-size:11px;font-weight:700;border-radius:999px;padding:2px 7px;white-space:nowrap}
.lb2-tags .cap.ok{background:#e5f4ec;color:#1e6b4a}.lb2-tags .cap.mid{background:#fdf1e2;color:#8a520d}.lb2-tags .cap.no{background:#f6e3e1;color:#8c2a22}.lb2-tags .cap.calc{background:#eef0f4;color:#4b5563}
.lb2-tags .fast{background:#e6eef8;color:#1f4f86}.lb2-tags .noid{background:#f1eee8;color:#6b645b}
.lb2-pr{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.lb2-pr b{font-size:14px}.lb2-pr small{font-size:11px;color:var(--muted);white-space:nowrap}
.lb2-right{position:sticky;top:70px;display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 90px);overflow:auto}.lb2-right>*{flex-shrink:0}.lb2-right h3{margin:0}
.lb2-sel{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:240px;overflow:auto}
.lb2-sel li{display:grid;grid-template-columns:1fr auto 26px;gap:6px;align-items:center;font-size:13.5px;padding:3px 0;border-bottom:1px solid #f0ede8}.lb2-sel li.calc{color:var(--muted)}
.lb2-x{border:0;background:#f3f1ec;border-radius:8px;width:24px;height:24px;cursor:pointer;font-size:15px;line-height:1;color:#562e2e}
.lb2-sum{display:flex;flex-direction:column;gap:3px;background:#faf8f5;border-radius:12px;padding:10px 12px}
.lb2-sum div{display:flex;justify-content:space-between;gap:10px;font-size:13.5px}.lb2-sum .tot{font-size:16px;border-top:1px solid #e2ddd4;padding-top:5px;margin-top:3px}.lb2-sum .tot b{color:#562e2e}
.lb2-sum .mut{color:var(--muted)}.lb2-sum .over b{color:#b31f1a}.lb2-sum .ok b{color:#1e6b4a}
.lb2-vol span{font-size:12.5px;color:var(--muted)}.lb2-bar{height:8px;border-radius:4px;background:#ece8e1;overflow:hidden;margin-top:4px}.lb2-bar i{display:block;height:100%;background:#1e8e5a}.lb2-bar.over i{background:#c0392b}
.lb2-msgs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:12.5px}
.lb2-msgs li{border-radius:8px;padding:5px 8px;background:#f3f1ec;color:#4b4640}.lb2-msgs li.warn{background:#fdf1e2;color:#8a520d}.lb2-msgs li.bad{background:#fbeceb;color:#9b1c1c;font-weight:600}
.lb2-flows{display:flex;flex-direction:column;gap:4px}
.lb2-right textarea{font-size:14px}
.lb2-cat input[type=number]{width:84px}.lb2-cat input:not([type]),.lb2-cat input[type=text]{width:120px}
.lb2-cat input,.lb2-cat select{font:inherit;font-size:12.5px;border:1px solid var(--line);border-radius:8px;padding:4px 6px}
.lb2-cat tr.grp td{font-weight:700;color:#562e2e;padding-top:12px}
.lb2-save{position:sticky;bottom:10px;background:#fff;border-radius:14px;padding:10px;box-shadow:0 4px 18px rgba(0,0,0,.08);align-self:flex-start}
@media (max-width:1100px){.lb2{grid-template-columns:1fr}.lb2-right{position:static;max-height:none}}
@media (max-width:640px){.lb2-row{grid-template-columns:22px minmax(0,1fr) 92px}.lb2-tags{grid-column:2/4;justify-content:flex-start}.lb2-bud{width:100%}}
/* Patient: Bluttest-Vorschlag */
.ae-lab{display:flex;flex-direction:column;gap:8px}.ae-lab ul{margin:0;padding-left:18px}.ae-lab li{margin:2px 0}.ae-lab li small{color:var(--muted)}
.ae-lab .ae-price{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid #eee;padding-top:8px}.ae-lab .ae-price b{font-size:20px;color:#562e2e}
