/* myTime – Stile */
:root{color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:env(safe-area-inset-top,0px)}body{margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#faf9f5;color:#141413}img{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}
  /* ---- Listenansicht mit Zeiträumen ---- */
  .list-range-bar{ display:flex; gap:8px; align-items:center; margin:0 0 10px; }
  .list-range-bar .segmented{ flex:1; }
  .list-today-btn{ flex:0 0 auto; }
  .list-day{ margin:0 0 12px; }
  .list-day-head{ font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--text-muted); margin:0 0 6px; display:flex; gap:8px; align-items:center; }
  .list-day-head .today-pill{ background:var(--accent); color:#fff; border-radius:999px; padding:1px 8px; font-size:10.5px; letter-spacing:0; }
  .list-day-head .holiday{ color:var(--danger); text-transform:none; letter-spacing:0; font-weight:600; }
  .list-item{ display:flex; gap:10px; align-items:flex-start; padding:9px 10px; border-radius:10px; background:var(--surface-2); margin-bottom:6px; border-left:4px solid var(--border); }
  .list-item .li-time{ flex:0 0 74px; font-size:12.5px; color:var(--text-muted); font-variant-numeric:tabular-nums; padding-top:1px; }
  .list-item .li-body{ flex:1; min-width:0; }
  .list-item .li-what{ font-size:14px; font-weight:600; }
  .list-item .li-meta{ font-size:12px; color:var(--text-muted); margin-top:2px; }
  .list-item.li-block{ opacity:.75; border-left-style:dashed; }
  .list-empty{ padding:18px 6px; text-align:center; color:var(--text-muted); font-size:13.5px; }

  .imp-card{ border:1px solid var(--border); border-radius:12px; padding:10px 12px; margin:0 0 10px; background:var(--surface-2); }
  .imp-card > summary{ cursor:pointer; font-weight:700; font-size:14.5px; list-style:none; display:flex; justify-content:space-between; align-items:center; }
  .imp-card > summary::-webkit-details-marker{ display:none; }
  .imp-card > summary::after{ content:"›"; transform:rotate(90deg); transition:transform .15s; color:var(--text-muted); font-size:18px; }
  .imp-card[open] > summary::after{ transform:rotate(-90deg); }

  .shift-override{ box-shadow: inset 0 0 0 2px var(--accent); }
  .shift-day-edit{ display:flex; flex-wrap:wrap; gap:6px; margin:6px 0 2px 18px; }
  .shift-day-edit .chip{ font-size:12.5px; padding:5px 10px; }
:root{
    --bg:#FAF8FC;
    --surface:#FFFFFF;
    --surface-2:#F1ECF8;
    --border:#E4DDEF;
    --text:#211D2B;
    --text-muted:#736C86;
    --accent:#6C4AB6;
    --accent-soft:#EEE7F9;
    --on-accent:#FFFFFF;

    --cal-haupt:#6C4AB6;
    --cal-familie:#C9524F;
    --cal-familie-soft:#F8E4E2;
    --cal-arbeit:#3672C9;
    --cal-arbeit-soft:#E2ECFA;
    --cal-event:#D9822B; --cal-freunde:#2E9B6F;
    --cal-freunde-soft:#DFF3E9;
    --cal-geschaeft:#C08A26;
    --cal-geschaeft-soft:#F7EAD3;

    --success:#2E9B6F;
    --warning:#C08A26;
    --danger:#C9524F;
    --shadow: 0 1px 2px rgba(33,29,43,.06), 0 6px 16px -8px rgba(33,29,43,.18);
  }
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){
      --bg:#18151F;
      --surface:#211D2B;
      --surface-2:#2A2536;
      --border:#3A3448;
      --text:#EFEAF8;
      --text-muted:#A79FBD;
      --accent:#A98AE8;
      --accent-soft:#332B47;
      --on-accent:#1B1526;

      --cal-haupt:#A98AE8;
      --cal-familie:#E28885;
      --cal-familie-soft:#3C2726;
      --cal-arbeit:#7FADEB;
      --cal-arbeit-soft:#22314A;
      --cal-freunde:#6BC79B;
      --cal-freunde-soft:#1E3A2C;
      --cal-geschaeft:#E0B45E;
      --cal-geschaeft-soft:#3B2F17;

      --success:#6BC79B;
      --warning:#E0B45E;
      --danger:#E28885;
      --shadow: 0 1px 2px rgba(0,0,0,.3), 0 6px 20px -8px rgba(0,0,0,.5);
    }
  }
  :root[data-theme="dark"]{
    --bg:#18151F;
    --surface:#211D2B;
    --surface-2:#2A2536;
    --border:#3A3448;
    --text:#EFEAF8;
    --text-muted:#A79FBD;
    --accent:#A98AE8;
    --accent-soft:#332B47;
    --on-accent:#1B1526;

    --cal-haupt:#A98AE8;
    --cal-familie:#E28885;
    --cal-familie-soft:#3C2726;
    --cal-arbeit:#7FADEB;
    --cal-arbeit-soft:#22314A;
    --cal-freunde:#6BC79B;
    --cal-freunde-soft:#1E3A2C;
    --cal-geschaeft:#E0B45E;
    --cal-geschaeft-soft:#3B2F17;

    --success:#6BC79B;
    --warning:#E0B45E;
    --danger:#E28885;
    --shadow: 0 1px 2px rgba(0,0,0,.3), 0 6px 20px -8px rgba(0,0,0,.5);
  }

  * { box-sizing: border-box; }
  html, body { height: 100%; }
  body{
    background: var(--bg);
    color: var(--text);
    font-family: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    display: flex;
    justify-content: center;
  }
  h1,h2,h3{ font-family: "Fraunces", Georgia, serif; text-wrap: balance; margin: 0; }
  button{ font-family: inherit; }

  .app{
    width: 100%;
    max-width: 480px;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    background: var(--bg);
    position: relative;
  }

  .topbar{
    position: sticky;
    top: env(safe-area-inset-top, 0px);
    z-index: 20;
    background: var(--bg);
    border-bottom: 1px solid var(--border);
    padding: 14px 20px 12px;
  }
  .topbar .eyebrow{
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--text-muted);
    font-weight: 600;
  }
  .topbar h1{ font-size: 22px; font-weight: 600; color: var(--text); margin-top: 2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .topbar .eyebrow{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .topbar .eyebrow.brand{ text-transform:none; letter-spacing:.02em; font-size:13px; } /* Markenname immer als „myTime“ */
  .topbar .sub{ font-size: 13px; color: var(--text-muted); margin-top: 2px; text-align: center; }
  .sub-row{ display:flex; align-items:center; justify-content:center; gap:6px; margin-top:2px; }
  .sub-row .sub{ margin-top:0; }
  .sub-nav-btn{ background:none; border:none; color:var(--text-muted); font-size:14px; cursor:pointer; padding:2px 6px; font-family:inherit; line-height:1; flex-shrink:0; }
  .sub-nav-btn:active{ color:var(--accent); }
  .sub-nav-btn[hidden]{ display:none; }

  .topbar-row{ display:flex; align-items:center; justify-content:space-between; gap:8px; }
  .topbar-center{ flex:1; min-width:0; text-align:center; }
  .topbar-actions{ display:flex; gap:8px; flex-shrink:0; }

  .icon-btn{
    width:36px; height:36px; border-radius:10px;
    border:1px solid var(--border); background:var(--surface-2); color:var(--text);
    display:flex; align-items:center; justify-content:center;
    cursor:pointer; position:relative; flex-shrink:0; padding:0;
  }
  .icon-btn svg{ width:18px; height:18px; }
  .icon-btn.small{ width:28px; height:28px; border-radius:8px; }
  .icon-btn.small svg{ width:15px; height:15px; }
  .avatar-btn{ background:var(--accent); color:var(--on-accent); font-weight:800; font-size:13px; border:none; font-family:inherit; }
  .badge{
    position:absolute; top:-4px; right:-4px; min-width:16px; height:16px; padding:0 4px;
    border-radius:999px; background:var(--danger); color:#fff; font-size:9.5px; font-weight:800;
    display:flex; align-items:center; justify-content:center; line-height:1;
  }
  .badge[hidden]{ display:none; }

  /* ---- sheets / modals ---- */
  .sheet-backdrop{ position:fixed; inset:0; background:rgba(20,16,28,.45); z-index:60; }
  .sheet{
    position:fixed; left:50%; bottom:0; transform:translateX(-50%);
    width:100%; max-width:480px; background:var(--surface);
    border-radius:20px 20px 0 0; padding:14px 20px calc(20px + env(safe-area-inset-bottom, 0px));
    z-index:61; box-shadow: var(--shadow); max-height:82vh; max-height:82dvh; overflow-y:auto; overscroll-behavior:contain;
    bottom:var(--kb, 0px); max-height:min(82dvh, calc(var(--vvh, 100dvh) - 16px));
  }
  .imp-status{ font-size:12.5px; margin-top:6px; line-height:1.5; }
  .imp-status.ok{ color:var(--success); font-weight:700; }
  .imp-status.err{ color:var(--danger); }
  /* Haupt-Button eines Fensters klebt am unteren Rand – nie unter Home-Balken oder Browserleiste versteckt */
  .sheet-actions{ position:sticky; bottom:calc(-20px - env(safe-area-inset-bottom, 0px)); margin:8px -20px calc(-20px - env(safe-area-inset-bottom, 0px));
    padding:12px 20px calc(16px + env(safe-area-inset-bottom, 0px)); background:var(--surface); box-shadow:0 -10px 18px -14px rgba(0,0,0,.35); z-index:2; }
  .sheet-handle{ width:36px; height:4px; border-radius:2px; background:var(--border); margin:0 auto 16px; }
  .sheet-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:4px; }
  .sheet h2{ font-size:18px; }
  .sheet .sheet-sub{ font-size:12.5px; color:var(--text-muted); margin-bottom:16px; }
  .sheet-close{ border:none; background:var(--surface-2); color:var(--text-muted); width:40px; height:40px; border-radius:50%; cursor:pointer; flex-shrink:0; font-size:17px; line-height:1; margin:-6px -6px 0 0; }
  /* Einstellungen: Kopfzeile bleibt beim Scrollen oben – ‹ Zurück · Titel · ✕ */
  #profileSheet .sheet-head{ position:sticky; top:-14px; z-index:3; background:var(--surface); margin:-14px -20px 6px; padding:14px 20px 10px; align-items:center; box-shadow:0 10px 14px -14px rgba(0,0,0,.35); }
  #profileSheet .panel-back{ display:none; }
  #profileSheet .profile-panel > .panel-heading{ display:none; }
  .sheet-back{ border:none; background:var(--surface-2); color:var(--text); height:40px; min-width:40px; padding:0 12px; border-radius:20px; cursor:pointer; font-size:14px; font-weight:600; flex-shrink:0; }
  .saved-pill{ font-size:12px; font-weight:700; color:var(--success); opacity:0; transition:opacity .25s; white-space:nowrap; }
  .saved-pill.show{ opacity:1; }
  .sheet-actions .btn-row{ display:flex; gap:10px; }
  .sheet-actions .btn-row .btn{ flex:1; }
  .sheet-actions .btn-row .btn-ghost{ flex:0 0 38%; }

  .field{ margin-bottom:16px; }
  .field label{ display:block; font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--text-muted); margin-bottom:6px; }
  .text-input{ width:100%; border:1px solid var(--border); background:var(--surface-2); color:var(--text); border-radius:10px; padding:10px 12px; font-size:14px; font-family:inherit; }
  .color-swatches{ display:flex; gap:10px; flex-wrap:wrap; }
  .color-swatch{ width:30px; height:30px; border-radius:50%; border:2px solid transparent; cursor:pointer; padding:0; }
  .color-swatch[aria-pressed="true"]{ border-color: var(--text); }

  .notif-item{
    display:flex; align-items:center; gap:10px; padding:12px 0; border-bottom:1px solid var(--border);
    width:100%; text-align:left; background:none; border-left:none; border-right:none; border-top:none;
    color:var(--text); font-family:inherit; cursor:pointer;
  }
  .notif-item:last-child{ border-bottom:none; }
  .notif-item .dot2{ width:8px; height:8px; border-radius:50%; flex-shrink:0; }
  .notif-item .txt{ flex:1; font-size:13.5px; font-weight:600; }
  .notif-item .chev{ color:var(--text-muted); flex-shrink:0; }
  .empty-note{ font-size:13px; color:var(--text-muted); padding:6px 0 2px; }
  .profile-avatar-big{ width:56px; height:56px; border-radius:50%; background:var(--accent); color:var(--on-accent); display:flex; align-items:center; justify-content:center; font-size:20px; font-weight:800; margin-bottom:14px; }

  .share-member-row{ display:flex; align-items:center; gap:10px; padding:8px 0; border-bottom:1px solid var(--border); }
  .share-member-row:last-child{ border-bottom:none; }
  .share-member-row .name{ flex:1; font-size:13.5px; font-weight:600; }
  .role-toggle{ display:flex; background:var(--surface-2); border-radius:9px; padding:2px; }
  .role-toggle button{ border:none; background:transparent; padding:5px 9px; font-size:11px; font-weight:700; color:var(--text-muted); border-radius:7px; cursor:pointer; font-family:inherit; }
  .role-toggle button[aria-pressed="true"]{ background:var(--surface); color:var(--text); box-shadow:var(--shadow); }

  .option-tile{
    display:flex; align-items:center; gap:14px; width:100%; text-align:left;
    border:1px solid var(--border); background:var(--surface-2); border-radius:14px;
    padding:14px; cursor:pointer; color:var(--text); font-family:inherit;
  }
  .option-tile[aria-pressed="true"]{ border-color:var(--accent); background:var(--accent-soft); }
  .option-tile + .option-tile{ margin-top:10px; }
  .option-tile .opt-icon{
    width:40px; height:40px; border-radius:11px; background:var(--accent-soft); color:var(--accent);
    display:flex; align-items:center; justify-content:center; flex-shrink:0;
  }
  .option-tile .opt-icon svg{ width:20px; height:20px; }
  .option-tile .opt-title{ font-weight:700; font-size:14px; }
  .option-tile .opt-sub{ font-size:12px; color:var(--text-muted); margin-top:1px; }
  .option-tile .opt-chev{ margin-left:auto; color:var(--text-muted); flex-shrink:0; font-size:16px; }
  .option-tile .opt-body{ min-width:0; flex:1; }

  /* ---- Profil/Einstellungen: Menü & Unterseiten ---- */
  .profile-panel[hidden]{ display:none; }
  .panel-back{
    display:flex; align-items:center; gap:4px; background:none; border:none; cursor:pointer;
    color:var(--accent); font-weight:700; font-size:13px; font-family:inherit; padding:0 0 14px; margin:0;
  }
  .panel-heading{ font-family:"Fraunces", Georgia, serif; font-size:17px; margin:0 0 14px; }

  .field-row{ display:flex; gap:12px; }
  .field-row .field{ flex:1; min-width:0; }
  select.text-input{ appearance: none; -webkit-appearance: none; }

  .day-detail{ margin-top:14px; padding-top:14px; border-top:1px solid var(--border); }
  .day-detail .dd-date{ font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.03em; color:var(--text-muted); margin-bottom:8px; }
  .day-detail .dd-item{ display:flex; gap:9px; align-items:flex-start; font-size:13.5px; padding:4px 0; }
  .day-detail .dd-item > span:nth-child(2){ flex:1; min-width:0; }
  .day-detail .dd-del-btn{ background:none; border:none; color:var(--text-muted); font-size:12px; cursor:pointer; padding:2px 4px; font-family:inherit; line-height:1; flex-shrink:0; opacity:.55; }
  .day-detail .dd-del-btn:active{ opacity:1; color:var(--danger); }
  .day-detail .dd-item-confirm{ color:var(--text-muted); }
  .day-detail .dd-del-link{ background:none; border:none; color:var(--accent); font-weight:700; font-size:13px; cursor:pointer; padding:0; font-family:inherit; }
  .day-detail .dd-del-link[data-del-cancel]{ color:var(--text-muted); font-weight:500; }
  .day-detail .dd-item .dot3{ width:7px; height:7px; border-radius:50%; margin-top:6px; flex-shrink:0; }
  .day-detail .dd-item-anon{ color:var(--text-muted); font-style:italic; }
  .day-detail .dd-empty{ font-size:13px; color:var(--text-muted); padding:2px 0 4px; }
  .day-detail .dd-add{ display:inline-block; margin-top:8px; background:none; border:none; color:var(--accent); font-weight:700; font-size:13px; cursor:pointer; padding:0; font-family:inherit; }

  main{
    flex: 1;
    padding: 18px 20px 28px;
    padding-bottom: calc(28px + 78px + env(safe-area-inset-bottom, 0px));
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .view{ display: flex; flex-direction: column; gap: 20px; }

  /* ---- cards / sections ---- */
  .card{
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 16px;
    box-shadow: var(--shadow);
  }
  .card-title{
    font-size: 15px;
    font-weight: 700;
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 10px;
  }
  .card-title .muted{ font-weight: 500; font-size: 12px; color: var(--text-muted); }
  .month-grid.day-view{ display:block; position:relative; max-height:480px; overflow-y:auto; border:1px solid var(--border); border-radius:12px; }
  .day-hour-row{ display:flex; gap:10px; padding:6px 10px; border-bottom:1px solid var(--border); min-height:32px; }
  .day-hour-row:last-child{ border-bottom:none; }
  .day-hour-label{ width:42px; flex-shrink:0; font-size:11px; color:var(--text-muted); padding-top:2px; }
  .day-hour-content{ flex:1; min-width:0; display:flex; flex-direction:column; gap:4px; }
  .day-hour-event{ font-size:12.5px; border-left:3px solid; padding:3px 8px; background:var(--surface-2); border-radius:6px; }
  .day-hour-now .day-hour-label{ color:var(--danger); font-weight:700; }
  .day-hour-add{ flex-shrink:0; align-self:flex-start; width:20px; height:20px; border-radius:6px; border:1px dashed var(--border); background:none; color:var(--text-muted); cursor:pointer; font-size:13px; line-height:1; padding:0; font-family:inherit; opacity:.6; }
  .day-hour-add:active{ opacity:1; color:var(--accent); border-color:var(--accent); }
  .day-now-line{ position:absolute; left:42px; right:0; height:2px; background:var(--danger); pointer-events:none; z-index:1; }
  .day-now-line::before{ content:""; position:absolute; left:-5px; top:-4px; width:8px; height:8px; border-radius:50%; background:var(--danger); }

  .month-grid.list-view{ display:block; max-height:480px; overflow-y:auto; }
  .list-row{ padding:6px 0; border-bottom:1px solid var(--border); }
  .list-row:last-child{ border-bottom:none; }
  .list-row-date{ font-size:11px; color:var(--text-muted); font-weight:700; text-transform:uppercase; letter-spacing:.03em; }
  .list-row-what{ font-size:13.5px; border-left:3px solid; padding:4px 8px; margin-top:2px; border-radius:6px; background:var(--surface-2); }
  .list-row-past{ opacity:.55; }
  .month-nav{ display:flex; align-items:center; gap:6px; }
  .category-filter-toggle{ display:flex; align-items:center; gap:6px; width:100%; background:none; border:none; padding:2px 0; cursor:pointer; font-family:inherit; font-size:12.5px; font-weight:700; color:var(--text-muted); }
  .category-filter-toggle .cf-status{ font-weight:500; }
  .category-filter-toggle .cf-chev{ margin-left:auto; font-size:11px; transition:transform .15s; }
  .category-filter-toggle[aria-expanded="true"] .cf-chev{ transform:rotate(180deg); }
  .month-nav-btn{ width:22px; height:22px; border-radius:6px; border:1px solid var(--border); background:var(--surface-2); color:var(--text); display:flex; align-items:center; justify-content:center; cursor:pointer; padding:0; font-size:13px; line-height:1; flex-shrink:0; font-family:inherit; }
  .month-nav-btn:active{ background:var(--accent-soft); color:var(--accent); }
  .month-label{ white-space:nowrap; }

  .chip-row{ display:flex; gap:8px; flex-wrap:wrap; }
  .chip{
    border: 1px solid var(--border);
    background: var(--surface-2);
    color: var(--text);
    border-radius: 999px;
    padding: 6px 12px;
    font-size: 12.5px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: background .15s, border-color .15s, color .15s;
  }
  .chip .dot{ width:7px; height:7px; border-radius:50%; }
  .chip[aria-pressed="true"]{ background: var(--accent); border-color: var(--accent); color: var(--on-accent); }
  .chip[aria-pressed="true"] .dot{ background: var(--on-accent) !important; }
  .chip:focus-visible, button:focus-visible, [tabindex]:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

  .btn{
    border: none;
    border-radius: 12px;
    padding: 11px 16px;
    font-weight: 700;
    font-size: 13.5px;
    cursor: pointer;
  }
  .btn-primary{ background: var(--accent); color: var(--on-accent); }
  .btn-ghost{ background: var(--surface-2); color: var(--text); border: 1px solid var(--border); }
  .btn-accept{ background: var(--success); color: #fff; }
  .btn-decline{ background: transparent; color: var(--danger); border: 1px solid var(--danger); }
  .btn-row{ display:flex; gap:8px; }
  .btn:disabled{ opacity: .5; cursor: default; }

  /* ---- month calendar ---- */
  .month-grid{
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
  }
  .month-grid .dow{
    font-size: 10.5px;
    color: var(--text-muted);
    text-align: center;
    font-weight: 700;
    padding-bottom: 4px;
  }
  .zy-dot{ position:absolute; bottom:3px; left:4px; width:6px; height:6px; border-radius:50%; pointer-events:none; }
  .zy-dot.logged{ background:#E0567A; } .zy-dot.pred{ border:1.5px solid #E0567A; width:5px; height:5px; } .zy-dot.fertile{ background:#3FA77A; } .zy-dot.ovu{ border:1.5px solid #3FA77A; background:#3FA77A55; }
  .zy-btns{ display:flex; gap:8px; flex-wrap:wrap; margin-top:8px; }
  .zy-btns .chip{ font-size:12.5px; }
  .rsvp-box{ margin-top:6px; padding:8px 10px; border-radius:10px; background:var(--surface-2); font-size:12.5px; line-height:1.5; }
  .rsvp-box .rsvp-status{ font-weight:700; }
  .rsvp-box .rsvp-status.ok{ color:var(--success); } .rsvp-box .rsvp-status.off{ color:var(--danger); }
  .rsvp-box .chip{ font-size:12.5px; margin-top:6px; }
  .rsvp-grid{ display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:8px; }
  .rsvp-grid label{ font-size:12px; color:var(--text-muted); display:block; margin-bottom:3px; }
  .abo-card{ border:1px solid var(--border); border-radius:14px; padding:12px 14px; margin-top:10px; }
  .abo-card .abo-name{ font-weight:700; font-size:14.5px; }
  .abo-card .abo-meta{ font-size:12.5px; color:var(--text-muted); margin-top:2px; line-height:1.5; }
  .abo-card .abo-actions{ display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
  .verified{ color:var(--accent); font-weight:800; }
  .pub-status{ display:inline-block; font-size:12px; font-weight:700; padding:2px 9px; border-radius:10px; background:var(--surface-2); }
  .style-row{ display:flex; gap:8px; align-items:center; margin-top:8px; font-size:13px; }
  .style-row .style-name{ flex:1; min-width:0; }
  .style-row select{ width:auto; padding:6px 8px; font-size:12.5px; }
  .style-row input[type=color]{ width:34px; height:30px; padding:0; border:1px solid var(--border); border-radius:8px; background:none; }
  .style-prev{ width:30px; height:30px; border-radius:8px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; flex:0 0 auto; }
  .layer-filter-sep{ flex-basis:100%; font-size:11.5px; color:var(--text-muted); font-weight:700; margin-top:6px; text-transform:uppercase; letter-spacing:.04em; }
  .category-filter-wrap{ display:none !important; }
  .filter-open-btn{ margin-left:auto; display:inline-flex; align-items:center; gap:5px; }
  .filter-open-btn .fbadge{ background:var(--accent); color:#fff; border-radius:9px; font-size:11px; font-weight:800; padding:0 6px; line-height:17px; min-width:17px; text-align:center; }
  .filter-open-btn .fbadge:empty{ display:none; }
  .fsec-head{ display:flex; align-items:center; justify-content:space-between; margin:16px 0 8px; }
  .fsec-head h3{ margin:0; font-size:12px; text-transform:uppercase; letter-spacing:.06em; color:var(--text-muted); }
  .fsec-head button{ border:none; background:none; color:var(--accent); font-weight:700; font-size:13px; cursor:pointer; padding:4px 0; }
  .fgrid{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
  .fgrid .fcat{ display:flex; align-items:center; gap:8px; border:1.5px solid var(--border); background:var(--surface); border-radius:12px; padding:10px 12px; font-size:13.5px; cursor:pointer; text-align:left; color:var(--text); }
  .fgrid .fcat[aria-pressed="true"]{ border-color:var(--accent); background:var(--accent-soft); font-weight:600; }
  .fgrid .fcat[aria-pressed="false"]{ opacity:.55; }
  .frow{ display:flex; align-items:center; justify-content:space-between; padding:11px 2px; border-bottom:1px solid var(--border); font-size:14px; }
  .frow:last-child{ border-bottom:none; }
  .fsw{ appearance:none; -webkit-appearance:none; width:44px; height:26px; border-radius:13px; background:var(--border); position:relative; cursor:pointer; transition:background .2s; flex:0 0 auto; margin:0; }
  .fsw::after{ content:""; position:absolute; top:3px; left:3px; width:20px; height:20px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.25); transition:left .2s; }
  .fsw:checked{ background:var(--accent); } .fsw:checked::after{ left:21px; }
  .emoji-btn{ width:46px; min-width:46px; height:46px; border-radius:12px; border:1.5px solid var(--border); background:var(--surface-2); font-size:22px; cursor:pointer; line-height:1; }
  .emoji-btn.suggested{ border-style:dashed; }
  .emoji-btn.empty{ font-size:16px; color:var(--text-muted); }
  .emoji-panel{ border:1px solid var(--border); border-radius:14px; padding:10px; margin-top:8px; background:var(--surface); }
  .emoji-panel .eg-title{ font-size:11.5px; font-weight:700; color:var(--text-muted); margin:8px 0 4px; text-transform:uppercase; letter-spacing:.04em; }
  .emoji-panel .eg{ display:flex; flex-wrap:wrap; gap:2px; }
  .emoji-panel .eg button{ width:40px; height:40px; border:none; background:none; font-size:23px; border-radius:10px; cursor:pointer; }
  .emoji-panel .eg button:hover, .emoji-panel .eg button[aria-pressed="true"]{ background:var(--accent-soft); }
  .cell-emo{ position:absolute; top:1px; left:3px; font-size:10px; line-height:1; pointer-events:none; letter-spacing:-1px; }
  .zust-box{ margin-top:6px; padding:8px 10px; border-radius:10px; background:var(--surface-2); font-size:12.5px; line-height:1.5; }
  .zust-box .zline{ font-weight:600; }
  .zust-box .zwait{ color:var(--text-muted); }
  .zust-box .zask{ color:var(--accent); font-weight:700; }
  .zust-box .zhelp{ color:var(--danger); font-weight:700; }
  .zust-box .zbtns{ display:flex; gap:6px; flex-wrap:wrap; margin-top:6px; }
  .zust-box .chip{ font-size:12.5px; }
  .mrow{ display:flex; align-items:center; gap:8px; padding:9px 0; border-bottom:1px solid var(--border); font-size:14px; }
  .mrow:last-child{ border-bottom:none; }
  .mrow .mname{ flex:1; min-width:0; }
  .mrow .mrole{ font-size:12px; color:var(--text-muted); }
  .task-due{ font-size:11.5px; color:var(--text-muted); }
  .task-due.overdue{ color:var(--danger); font-weight:700; }
  .task-acts{ display:flex; gap:6px; flex-wrap:wrap; margin-top:5px; }
  .task-acts .chip{ font-size:12px; padding:4px 10px; }
  .task-note{ font-size:12px; margin-top:4px; }
  .task-due-row{ display:flex; gap:8px; margin-top:8px; }
  .task-due-row input{ flex:1; min-width:0; font-size:13px; padding:8px 10px; }
  .dd-addrow{ display:flex; align-items:center; gap:8px; margin:2px 0 8px; }
  .day-detail .dd-addrow .dd-add{ margin:0; }
  .dd-zy-quick{ margin-left:auto; border:1px solid var(--border); background:var(--surface); border-radius:50%; width:32px; height:32px; font-size:15px; cursor:pointer; opacity:.55; }
  .dd-zy-quick:hover{ opacity:1; }
  .ev-cancelled{ text-decoration:line-through; opacity:.55; }
  .cancel-badge{ display:inline-block; font-size:11px; font-weight:800; color:var(--danger); background:rgba(217,83,79,.12); border-radius:8px; padding:1px 7px; margin-left:4px; text-decoration:none; }
  .cancel-panel{ margin-top:6px; padding:8px 10px; border-radius:10px; background:var(--surface-2); font-size:12.5px; }
  .cancel-panel .chip{ font-size:12.5px; margin:3px 4px 0 0; }
  .cancel-panel input[type=date]{ font-size:12.5px; padding:5px 8px; }
  .reply-box{ margin-top:6px; padding:8px 10px; border-radius:10px; background:var(--surface-2); font-size:12.5px; line-height:1.5; }
  .reply-box .rb-who{ color:var(--text-muted); }
  .reply-box .rb-btns{ display:flex; gap:6px; flex-wrap:wrap; margin-top:6px; }
  .reply-box .chip{ font-size:12.5px; }
  .reply-box .rb-until{ color:var(--accent); font-weight:700; }
  @keyframes dayflash{ 0%{ box-shadow:0 0 0 0 var(--accent); } 40%{ box-shadow:0 0 0 4px var(--accent); } 100%{ box-shadow:0 0 0 0 transparent; } }
  .day-cell.flash{ animation:dayflash 1.6s ease-out 1; }
  .pcal-row{ padding:10px 0; border-bottom:1px solid var(--border); }
  .pcal-row:last-child{ border-bottom:none; }
  .pcal-row .pcal-name{ font-weight:700; font-size:13.5px; margin-bottom:6px; }
  .pcal-row .chip{ font-size:12px; padding:4px 9px; margin:2px 4px 2px 0; }
  .span-badge{ display:inline-block; font-size:11px; font-weight:700; color:var(--accent); background:var(--accent-soft); border-radius:8px; padding:0 6px; margin-left:4px; }
  .circle-picker-btn{ width:100%; display:flex; align-items:center; gap:10px; padding:10px 12px; border:1.5px solid var(--border); border-radius:14px; background:var(--surface); cursor:pointer; text-align:left; margin:4px 0 10px; color:var(--text); font:inherit; }
  .circle-picker-btn:hover{ border-color:var(--accent); }
  .cp-dot{ width:14px; height:14px; border-radius:50%; flex:0 0 auto; box-shadow:0 0 0 2px var(--surface), 0 0 0 3px rgba(0,0,0,.08); }
  .cp-dots{ display:flex; gap:3px; }
  .circle-picker-btn .cp-name{ font-weight:700; font-size:14.5px; }
  .circle-picker-btn .cp-sub{ font-size:12px; color:var(--text-muted); }
  .circle-picker-btn .cp-chev{ margin-left:auto; color:var(--text-muted); font-size:13px; }
  .cp-row{ display:flex; align-items:center; gap:10px; padding:11px 2px; border-bottom:1px solid var(--border); }
  .cp-row:last-child{ border-bottom:none; }
  .cp-row .cp-main{ flex:1; min-width:0; cursor:pointer; }
  .cp-row .cp-title{ font-weight:700; font-size:14px; }
  .cp-row .cp-members{ font-size:12px; color:var(--text-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .cp-row.sel .cp-title{ color:var(--accent); }
  .cp-row .cp-colorbtn{ border:none; background:none; padding:4px; cursor:pointer; }
  .cp-row input[type=checkbox]{ width:20px; height:20px; accent-color:var(--accent); }
  .cp-row .cp-more{ border:none; background:var(--surface-2); border-radius:8px; width:30px; height:30px; cursor:pointer; color:var(--text); }
  .cp-palette{ display:flex; gap:8px; flex-wrap:wrap; padding:2px 0 10px 26px; }
  .cp-palette button{ width:28px; height:28px; border-radius:50%; border:2px solid var(--surface); box-shadow:0 0 0 1px var(--border); cursor:pointer; }
  .cp-palette button[aria-pressed="true"]{ box-shadow:0 0 0 2px var(--text); }
  .swatch-row{ display:flex; gap:10px; flex-wrap:wrap; margin:8px 0 4px; }
  .swatch-row button{ width:38px; height:38px; border-radius:50%; border:3px solid var(--surface); box-shadow:0 0 0 1px var(--border); cursor:pointer; font-size:11px; color:#fff; }
  .swatch-row button[aria-pressed="true"]{ box-shadow:0 0 0 3px var(--text); }
  .calcol-row{ display:flex; align-items:center; gap:10px; padding:7px 0; font-size:14px; }
  .calcol-row span{ flex:1; }
  .calcol-row input[type=color]{ width:40px; height:32px; border:1px solid var(--border); border-radius:8px; padding:0; background:none; }
  .li-past{ opacity:.45; }
  .li-past .li-time::after{ content:" · vorbei"; font-weight:400; font-size:11px; }
  .finder-opts{ margin:0 0 8px; }
  .finder-opts .fo-row{ display:flex; flex-wrap:wrap; gap:5px; align-items:center; margin-bottom:5px; }
  .finder-opts .fo-label{ font-size:11.5px; color:var(--text-muted); width:52px; flex:0 0 auto; }
  .finder-opts .chip{ font-size:12px; padding:4px 9px; }
  .fl-ex{ display:block; font-size:11.5px; color:var(--text-muted); font-weight:400; }
  .month-label{ cursor:pointer; border-radius:8px; padding:2px 6px; }
  .month-label::after{ content:" ▾"; font-size:.7em; color:var(--text-muted); }
  .month-label:hover{ background:var(--accent-soft); }
  .mp-year{ display:flex; align-items:center; justify-content:center; gap:16px; margin:6px 0 12px; font-weight:800; font-size:18px; }
  .mp-year button{ width:38px; height:38px; border-radius:50%; border:1px solid var(--border); background:var(--surface); cursor:pointer; font-size:18px; color:var(--text); }
  .mp-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:8px; }
  .mp-grid button{ padding:14px 0; border-radius:12px; border:1.5px solid var(--border); background:var(--surface); cursor:pointer; font-weight:700; font-size:14px; color:var(--text); }
  .mp-grid button.now{ border-color:var(--accent); color:var(--accent); }
  .mp-grid button[aria-pressed="true"]{ background:var(--accent); border-color:var(--accent); color:#fff; }
  .wz-path{ font-size:13px; font-weight:700; color:var(--accent); background:var(--accent-soft); border-radius:10px; padding:8px 12px; margin:4px 0 12px; }
  .wz-step{ font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; color:var(--text-muted); margin:16px 0 6px; }
  .wz-tiles{ display:flex; gap:8px; }
  .wz-tiles button{ flex:1; padding:12px 6px; border-radius:12px; border:1.5px solid var(--border); background:var(--surface); cursor:pointer; font-size:13px; font-weight:700; color:var(--text); }
  .wz-tiles button span{ display:block; font-size:22px; margin-bottom:3px; }
  .wz-tiles button[aria-pressed="true"]{ border-color:var(--accent); background:var(--accent-soft); color:var(--accent); }
  .wz-prev{ border:1.5px dashed var(--accent); border-radius:12px; padding:10px 12px; margin-top:14px; font-size:13.5px; line-height:1.6; }
  .tree-head{ font-weight:800; font-size:14px; margin:14px 0 4px; }
  .tree-row{ display:flex; align-items:center; gap:8px; padding:7px 0 7px 14px; border-left:2px solid var(--border); margin-left:8px; cursor:pointer; font-size:13.5px; }
  .tree-row .tr-mem{ margin-left:auto; font-size:12px; color:var(--text-muted); max-width:45%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .tree-add{ color:var(--accent); font-weight:700; }
  .circle-legend{ display:flex; gap:6px; overflow-x:auto; padding:2px 0 8px; margin:2px 0 6px; scrollbar-width:none; }
  .circle-legend::-webkit-scrollbar{ display:none; }
  .cl-item{ display:inline-flex; align-items:center; gap:6px; flex:0 0 auto; border:none; background:none; padding:5px 8px; border-radius:999px; cursor:pointer; font:inherit; font-size:13px; font-weight:600; color:var(--text); white-space:nowrap; -webkit-user-select:none; user-select:none; }
  .cl-item .cl-dot{ width:12px; height:12px; border-radius:50%; border:2.5px solid var(--c); background:var(--c); box-sizing:border-box; }
  .cl-item[aria-pressed="false"]{ color:var(--text-muted); }
  .cl-item[aria-pressed="false"] .cl-dot{ background:transparent; }
  .cl-item:hover{ background:var(--surface-2); }
  .cl-add, .cl-all{ flex:0 0 auto; border:1px dashed var(--border); background:none; border-radius:999px; padding:4px 10px; cursor:pointer; font-size:12.5px; color:var(--text-muted); font-weight:700; }
  .tg-head{ display:flex; align-items:center; justify-content:space-between; padding:8px 2px 6px; cursor:pointer; font-size:12.5px; font-weight:800; color:var(--text-muted); text-transform:uppercase; letter-spacing:.04em; border-top:1px solid var(--border); margin-top:4px; }
  .tg-head:first-child{ border-top:none; margin-top:0; }
  .tg-head.overdue{ color:var(--danger); }
  .tg-more{ border:none; background:none; color:var(--accent); font-weight:700; font-size:12.5px; cursor:pointer; padding:4px 0 8px; }
  .card-fold{ border:none; background:none; color:var(--text-muted); cursor:pointer; font-size:14px; padding:2px 6px; }
  .phil-quick{ display:flex; gap:6px; flex-wrap:wrap; margin:2px 0 4px; }
  .phil-quick .chip{ font-size:13px; }
  .abs-tiles{ display:grid; grid-template-columns:repeat(3, 1fr); gap:8px; }
  .abs-tiles button{ padding:12px 4px; border-radius:12px; border:1.5px solid var(--border); background:var(--surface); cursor:pointer; font-size:12.5px; font-weight:700; color:var(--text); }
  .abs-tiles button span{ display:block; font-size:22px; margin-bottom:2px; }
  .abs-tiles button[aria-pressed="true"]{ border-color:var(--accent); background:var(--accent-soft); color:var(--accent); }
  .su-overlay{ position:fixed; inset:0; z-index:90; background:var(--bg, var(--surface)); display:flex; flex-direction:column; align-items:center; overflow-y:auto; padding:calc(18px + env(safe-area-inset-top, 0px)) 18px calc(18px + env(safe-area-inset-bottom, 0px)); }
  .su-overlay[hidden]{ display:none; }
  .su-box{ width:100%; max-width:460px; display:flex; flex-direction:column; min-height:100%; }
  .su-top{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:8px; }
  .su-dots{ display:flex; gap:6px; }
  .su-dots span{ width:8px; height:8px; border-radius:50%; background:var(--border); transition:all .3s; }
  .su-dots span.on{ background:var(--accent); width:22px; border-radius:4px; }
  .su-skipall{ border:none; background:none; color:var(--text-muted); font-size:13px; cursor:pointer; }
  .su-step{ animation:suIn .35s ease; flex:1; }
  @keyframes suIn{ from{ opacity:0; transform:translateX(24px); } to{ opacity:1; transform:none; } }
  .su-emoji{ font-size:46px; margin:10px 0 4px; }
  .su-h{ font-family:var(--font-display, inherit); font-size:24px; font-weight:800; margin:4px 0 6px; }
  .su-p{ color:var(--text-muted); font-size:14px; line-height:1.55; margin:0 0 14px; }
  .su-cards{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .su-cards button{ border:2px solid var(--border); background:var(--surface); border-radius:16px; padding:14px 10px; cursor:pointer; text-align:left; font:inherit; color:var(--text); transition:transform .15s, border-color .15s; }
  .su-cards button:active{ transform:scale(.97); }
  .su-cards button b{ display:block; font-size:14px; margin-top:4px; }
  .su-cards button small{ display:block; color:var(--text-muted); font-size:11.5px; margin-top:2px; line-height:1.35; }
  .su-cards button span{ font-size:26px; }
  .su-cards button[aria-pressed="true"]{ border-color:var(--accent); background:var(--accent-soft); }
  .su-sugg{ display:flex; gap:10px; align-items:flex-start; padding:11px 2px; border-bottom:1px solid var(--border); font-size:14px; cursor:pointer; }
  .su-sugg input{ width:20px; height:20px; accent-color:var(--accent); margin-top:1px; flex:0 0 auto; }
  .su-sugg small{ display:block; color:var(--text-muted); font-size:12px; }
  .su-foot{ display:flex; gap:10px; margin-top:18px; position:sticky; bottom:0; background:var(--bg, var(--surface)); padding:10px 0 4px; }
  .su-foot .btn{ flex:1; }
  .confetti{ position:fixed; top:-12px; width:9px; height:14px; z-index:200; pointer-events:none; animation:fall linear forwards; border-radius:2px; }
  @keyframes fall{ to{ transform:translateY(105vh) rotate(720deg); opacity:.85; } }
  .tour-spot{ position:fixed; z-index:150; border-radius:14px; box-shadow:0 0 0 9999px rgba(15,10,30,.62), 0 0 0 3px var(--accent); transition:all .35s ease; pointer-events:none; }
  .tour-tip{ position:fixed; z-index:151; left:16px; right:16px; max-width:420px; margin:0 auto; background:var(--surface); border-radius:16px; padding:14px 16px; box-shadow:var(--shadow); animation:suIn .3s ease; }
  .tour-tip p{ margin:0 0 10px; font-size:14px; line-height:1.5; }
  .tour-tip .tt-btns{ display:flex; justify-content:space-between; align-items:center; }
  .tour-tip .tt-btns span{ font-size:12px; color:var(--text-muted); }
  .preset-row{ display:flex; gap:6px; flex-wrap:wrap; margin:6px 0 10px; align-items:center; }
  .preset-row .chip{ font-size:12.5px; }
  .layer-mark{ position:absolute; top:1px; right:2px; font-size:9px; line-height:1; pointer-events:none; letter-spacing:-1px; }
  .layer-pill{ display:inline-block; font-size:11.5px; padding:1px 7px; border-radius:9px; background:var(--surface-2); color:var(--text-muted); margin-left:4px; font-weight:600; }
  .layer-row{ display:flex; gap:10px; align-items:flex-start; font-size:13.5px; margin:10px 0 0; cursor:pointer; }
  .layer-row input{ margin-top:3px; width:18px; height:18px; flex:0 0 auto; }
  .layer-row small{ display:block; color:var(--text-muted); font-size:12px; font-weight:400; }
  .day-cell{
    position: relative;
    aspect-ratio: 1;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    font-size: 13px;
    font-variant-numeric: tabular-nums;
    position: relative;
    color: var(--text);
  }
  .day-cell.empty{ visibility: hidden; }
  .day-cell[data-day]{ cursor: pointer; }
  .day-cell.selected{ outline: 2px solid var(--text); outline-offset: -2px; }
  .day-cell.today{ background: var(--accent); color: var(--on-accent); font-weight: 700; }
  .day-cell .dots{ display:flex; gap:2px; height:6px; }
  .day-cell .dots span{ width:5px; height:5px; border-radius:50%; }
  .day-cell .letter{ font-size:8px; font-weight:800; height:6px; line-height:6px; letter-spacing:.02em; }
  .day-cell.shift-cell{ font-weight:700; }
  .day-cell.today-ring{ box-shadow: inset 0 0 0 2px var(--accent); }
  .mini-legend{ margin-top:10px; font-size:11.5px; color:var(--text-muted); }

  /* ---- upcoming list ---- */
  .agenda-item{
    display:flex;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--border);
  }
  .agenda-item:last-child{ border-bottom: none; padding-bottom: 0; }
  .agenda-item .bar{ width: 4px; border-radius: 4px; flex-shrink: 0; }
  .agenda-item-anon .what{ color:var(--text-muted); font-style:italic; }

  /* ---- Aufgaben / Gewohnheiten / Ziele (leichte LifeFlow-Ergänzungen) ---- */
  .task-item{ display:flex; align-items:center; gap:10px; padding:7px 0; font-size:13.5px; }
  .task-item:not(:last-child){ border-bottom:1px solid var(--border); }
  .task-check{ width:20px; height:20px; border-radius:6px; border:1.5px solid var(--border); background:var(--surface); flex-shrink:0; cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--on-accent); padding:0; font-family:inherit; }
  .task-check[aria-pressed="true"]{ background:var(--accent); border-color:var(--accent); }
  .task-text{ flex:1; min-width:0; }
  .task-item[data-done="true"] .task-text{ text-decoration:line-through; color:var(--text-muted); }
  .task-meta{ font-size:11px; color:var(--text-muted); }
  .task-assignee{ width:22px; height:22px; border-radius:50%; background:var(--accent-soft); color:var(--accent); font-size:10.5px; font-weight:800; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .task-claim-btn{ flex-shrink:0; background:var(--surface-2); border:1px solid var(--border); color:var(--accent); font-weight:700; font-size:11.5px; border-radius:8px; padding:5px 10px; cursor:pointer; font-family:inherit; }
  .task-claim-btn:active{ background:var(--accent-soft); }
  .task-item[data-open="true"] .task-check{ visibility:hidden; }

  .checklist-item{ display:flex; align-items:center; gap:8px; font-size:12.5px; padding:2px 0; }
  .checklist-item .task-check{ width:16px; height:16px; font-size:10px; }
  .checklist-item[data-done="true"] span{ text-decoration:line-through; color:var(--text-muted); }
  .last-met-line{ font-size:11.5px; color:var(--text-muted); margin-top:2px; }
  .agenda-item .when{ font-size: 11.5px; color: var(--text-muted); font-weight: 700; text-transform: uppercase; letter-spacing: .03em; }
  .agenda-item .what{ font-size: 14px; font-weight: 600; margin-top: 1px; }
  .agenda-item .meta{ font-size: 12.5px; color: var(--text-muted); margin-top: 2px; }

  /* ---- avatars ---- */
  .avatar-row{ display:flex; gap:10px; flex-wrap: wrap; }
  .avatar{
    width: 40px; height: 40px; border-radius: 50%;
    display:flex; align-items:center; justify-content:center;
    font-size: 13px; font-weight: 700; color: #fff;
    flex-shrink: 0;
  }
  .avatar-labeled{ display:flex; flex-direction: column; align-items:center; gap: 4px; width: 56px; }
  .avatar-labeled span{ font-size: 11px; color: var(--text-muted); text-align:center; }

  /* ---- segmented control ---- */
  .segmented{
    display:flex;
    background: var(--surface-2);
    border-radius: 12px;
    padding: 3px;
    gap: 2px;
  }
  .segmented button{
    flex:1;
    border:none;
    background:transparent;
    padding: 8px 6px;
    font-size: 12.5px;
    font-weight: 700;
    color: var(--text-muted);
    border-radius: 9px;
    cursor: pointer;
  }
  .segmented button[aria-pressed="true"]{ background: var(--surface); color: var(--text); box-shadow: var(--shadow); }

  textarea.draft{
    width: 100%;
    min-height: 90px;
    resize: vertical;
    border: 1px solid var(--border);
    background: var(--surface-2);
    color: var(--text);
    border-radius: 12px;
    padding: 10px 12px;
    font-family: inherit;
    font-size: 13.5px;
    line-height: 1.5;
  }

  .field-label{ font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--text-muted); margin-bottom: 6px; }
  .field-saved-badge{ color: var(--success); font-weight: 700; font-size: 11px; margin-left: 6px; text-transform: none; letter-spacing: 0; }

  .banner{
    border-radius: 12px;
    padding: 10px 12px;
    font-size: 13px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .banner.ok{ background: var(--cal-freunde-soft); color: var(--cal-freunde); }
  .banner.info{ background: var(--accent-soft); color: var(--accent); }
  .banner.warn{ background: var(--cal-geschaeft-soft); color: var(--warning); }

  /* ---- work schedule ---- */
  .shift-legend{ display:flex; gap: 14px; flex-wrap: wrap; font-size: 12px; color: var(--text-muted); }
  .shift-legend .sw{ display:flex; align-items:center; gap:6px; }
  .shift-legend .swatch{ width:10px; height:10px; border-radius: 3px; }

  .week-table{ width: 100%; overflow-x: auto; }
  .week-table table{ width: 100%; border-collapse: collapse; min-width: 340px; }
  .week-table th{ font-size: 10.5px; color: var(--text-muted); font-weight: 700; padding-bottom: 6px; }
  .week-table td{ padding: 3px; }
  .shift-block{
    border-radius: 8px;
    text-align:center;
    font-size: 11px;
    font-weight: 700;
    padding: 8px 2px;
  }
  .week-table tr.today-row td:first-child{ position: relative; }

  /* ---- friends availability ---- */
  .avail-table{ width:100%; overflow-x:auto; }
  .avail-table table{ border-collapse: collapse; width: 100%; min-width: 360px; }
  .avail-table th{ font-size: 11px; color: var(--text-muted); font-weight: 700; text-align: left; padding: 4px 6px; }
  .avail-table td{ padding: 4px 6px; }
  .avail-table .who{ display:flex; align-items:center; gap:8px; font-size:13px; font-weight:600; white-space: nowrap; }
  .slot{ height: 26px; border-radius: 7px; }
  .slot.free{ background: var(--cal-freunde-soft); }
  .slot.busy{ background: var(--surface-2); }
  .slot-head{ font-size: 11px; font-weight: 700; color: var(--text-muted); text-align:center; }

  .vote-row{ display:flex; align-items:center; justify-content: space-between; padding: 8px 0; border-bottom: 1px solid var(--border); gap: 10px; }
  .vote-row:last-child{ border-bottom: none; }
  .vote-btns{ display:flex; gap:6px; }
  .vote-btn{ width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--border); background: var(--surface-2); font-size: 14px; cursor: pointer; color: var(--text-muted); }
  .vote-btn.yes[aria-pressed="true"]{ background: var(--success); border-color: var(--success); color: #fff; }
  .vote-btn.no[aria-pressed="true"]{ background: var(--danger); border-color: var(--danger); color: #fff; }

  /* ---- business ---- */
  .toggle-2{ display:flex; background: var(--surface-2); border-radius: 12px; padding: 3px; }
  .toggle-2 button{ flex:1; border:none; background:transparent; padding:9px; border-radius:9px; font-weight:700; font-size:13px; color: var(--text-muted); cursor:pointer; }
  .toggle-2 button[aria-pressed="true"]{ background: var(--accent); color: var(--on-accent); }

  .request-card{ border: 1px solid var(--border); border-radius: 12px; padding: 12px; display:flex; flex-direction:column; gap:8px; }
  .request-card + .request-card{ margin-top: 8px; }
  .request-top{ display:flex; justify-content: space-between; gap: 8px; align-items: flex-start; }
  .request-name{ font-weight: 700; font-size: 13.5px; }
  .request-meta{ font-size: 12.5px; color: var(--text-muted); margin-top: 2px; }
  .status-pill{ font-size: 10.5px; font-weight: 700; padding: 3px 9px; border-radius: 999px; text-transform: uppercase; letter-spacing: .03em; white-space: nowrap; }
  .status-pill.pending{ background: var(--cal-geschaeft-soft); color: var(--cal-geschaeft); }
  .status-pill.confirmed{ background: var(--cal-freunde-soft); color: var(--cal-freunde); }
  .status-pill.declined{ background: var(--surface-2); color: var(--text-muted); }

  .service-option{ display:flex; justify-content: space-between; align-items:center; border: 1px solid var(--border); border-radius: 12px; padding: 10px 12px; cursor: pointer; gap: 10px; }
  .service-option[aria-pressed="true"]{ border-color: var(--accent); background: var(--accent-soft); }
  .service-option .name{ font-weight: 700; font-size: 13.5px; }
  .service-option .dur{ font-size: 12px; color: var(--text-muted); }
  .service-option .price{ font-weight: 700; font-size: 13.5px; font-variant-numeric: tabular-nums; }

  .slot-grid{ display:grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
  .time-slot{ border: 1px solid var(--border); border-radius: 10px; padding: 9px 4px; text-align:center; font-size: 13px; font-weight: 700; background: var(--surface); cursor:pointer; font-variant-numeric: tabular-nums; }
  .time-slot[disabled]{ opacity: .35; cursor: default; text-decoration: line-through; }
  .time-slot[aria-pressed="true"]{ background: var(--accent); border-color: var(--accent); color: var(--on-accent); }

  /* ---- agent card ---- */
  .agent-card{ border: 1px solid var(--accent); background: var(--accent-soft); border-radius: 16px; padding: 16px; display:flex; flex-direction:column; gap: 12px; }
  .agent-head{ display:flex; align-items:center; gap:10px; }
  .agent-badge{ width: 34px; height: 34px; border-radius: 10px; background: var(--accent); color: var(--on-accent); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .agent-head .t1{ font-weight: 700; font-size: 14px; }
  .agent-head .t2{ font-size: 12px; color: var(--text-muted); }

  .gift-list{ display:flex; flex-direction:column; gap:10px; }
  .gift-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; background: var(--surface); border:1px solid var(--border); border-radius:12px; padding:10px 12px; }
  .gift-name{ font-weight:700; font-size:13px; }
  .gift-meta{ font-size:11.5px; color:var(--text-muted); margin-top:2px; }
  .ad-note{ font-size:11px; color:var(--text-muted); }

  .partner-preview-card{ border:1px solid var(--border); border-radius:14px; overflow:hidden; }
  .partner-preview-visual{ height:110px; display:flex; align-items:center; justify-content:center; font-size:38px; background:var(--accent-soft); }
  .partner-preview-body{ padding:14px; }
  .partner-preview-title{ font-weight:700; font-size:15px; }
  .partner-preview-meta{ font-size:12.5px; color:var(--text-muted); margin-top:4px; }

  .activity-list{ display:flex; flex-direction:column; gap:10px; }
  .activity-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
  .activity-row + .activity-row{ padding-top:10px; border-top:1px solid var(--border); }

  .qr-box{ width:40px; height:40px; border-radius:8px; background:#fff; padding:3px; border:1px solid var(--border); flex-shrink:0; }
  .qr-box svg{ display:block; width:100%; height:100%; }
  .qr-box.big{ width:150px; height:150px; padding:10px; margin: 4px auto 0; }
  .sms-bubble{ background:var(--surface); border-radius:12px; padding:12px 14px; font-size:13px; line-height:1.5; position:relative; }
  .sms-bubble::before{ content:"💬"; margin-right:6px; }

  .hours-editor{ border:1px solid var(--border); border-radius:12px; padding:4px 12px; }
  .hours-row{ display:flex; align-items:center; gap:10px; padding:8px 0; border-bottom:1px solid var(--border); }
  .hours-row:last-child{ border-bottom:none; }
  .hours-day{ width:26px; font-weight:700; font-size:12.5px; flex-shrink:0; }
  .hours-open-toggle{ display:flex; background:var(--surface-2); border-radius:9px; padding:2px; flex-shrink:0; }
  .hours-open-toggle button{ border:none; background:transparent; padding:5px 8px; font-size:11px; font-weight:700; color:var(--text-muted); border-radius:7px; cursor:pointer; font-family:inherit; }
  .hours-open-toggle button[aria-pressed="true"]{ background:var(--surface); color:var(--text); box-shadow:var(--shadow); }
  .hours-times{ display:flex; align-items:center; gap:6px; flex:1; min-width:0; }
  .hours-times input[type="time"]{ flex:1; min-width:0; border:1px solid var(--border); background:var(--surface-2); color:var(--text); border-radius:8px; padding:6px 6px; font-size:12.5px; font-family:inherit; }
  .hours-times .sep{ color:var(--text-muted); font-size:12px; flex-shrink:0; }
  .hours-closed-label{ flex:1; font-size:12.5px; color:var(--text-muted); }

  .shift-pattern-editor{ display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
  .shift-pattern-editor button{ border:none; border-radius:10px; padding:10px 4px; font-size:11px; font-weight:700; line-height:1.4; cursor:pointer; font-family:inherit; text-align:center; }
  .shift-color-row{ display:flex; align-items:center; gap:10px; padding:6px 0; }
  .shift-color-label{ width:52px; font-size:12.5px; font-weight:700; flex-shrink:0; }
  .shift-color-swatches{ display:flex; gap:8px; flex-wrap:wrap; }
  .shift-swatch{ width:26px; height:26px; border-radius:50%; border:2px solid transparent; cursor:pointer; padding:0; display:flex; align-items:center; justify-content:center; }
  .shift-swatch span{ width:14px; height:14px; border-radius:50%; display:block; }
  .shift-swatch[aria-pressed="true"]{ border-color: var(--text); }

  .staff-row{ display:flex; align-items:center; gap:10px; padding:9px 0; border-bottom:1px solid var(--border); }
  .staff-row:last-child{ border-bottom:none; }
  .staff-row .info{ flex:1; min-width:0; }
  .staff-row .name{ font-size:13.5px; font-weight:700; }
  .staff-row .role{ font-size:11.5px; color:var(--text-muted); margin-top:1px; }
  .staff-row .remove-btn{ background:none; border:none; color:var(--text-muted); font-size:15px; cursor:pointer; padding:4px 8px; font-family:inherit; line-height:1; border-radius:6px; flex-shrink:0; }
  .staff-row .remove-btn:hover{ color:var(--danger); }
  .staff-avatar-row{ display:flex; gap:14px; overflow-x:auto; padding-bottom:2px; }
  .staff-chip-row{ display:flex; gap:8px; overflow-x:auto; padding-bottom:2px; }
  .staff-chip{ flex-shrink:0; display:flex; align-items:center; gap:7px; border:1px solid var(--border); background:var(--surface-2); border-radius:999px; padding:6px 12px 6px 6px; cursor:pointer; font-family:inherit; font-size:12.5px; font-weight:700; color:var(--text); }
  .staff-chip[aria-pressed="true"]{ border-color:var(--accent); background:var(--accent-soft); color:var(--accent); }
  .staff-chip .avatar{ width:22px; height:22px; font-size:10px; }

  /* ---- toast ---- */
  #toast{
    position: fixed;
    left: 50%;
    bottom: calc(96px + env(safe-area-inset-bottom, 0px));
    transform: translateX(-50%) translateY(12px);
    background: var(--text);
    color: var(--bg);
    padding: 10px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    box-shadow: var(--shadow);
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s, transform .2s;
    max-width: calc(100% - 40px);
    text-align: center;
    z-index: 50;
  }
  #toast.show{ opacity: 1; transform: translateX(-50%) translateY(0); }

  /* ---- tab bar ---- */
  .tabbar{
    position: fixed;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    width: 100%;
    max-width: 480px;
    display: flex;
    background: var(--surface);
    border-top: 1px solid var(--border);
    padding: 8px 6px calc(8px + env(safe-area-inset-bottom, 0px));
    z-index: 30;
  }
  .tab{
    flex: 1;
    display:flex;
    flex-direction: column;
    align-items:center;
    gap: 3px;
    background: none;
    border: none;
    cursor: pointer;
    color: var(--text-muted);
    padding: 4px 2px;
    border-radius: 10px;
  }
  .tab svg{ width: 21px; height: 21px; }
  .tab span{ font-size: 10px; font-weight: 700; }
  .tab[aria-current="true"]{ color: var(--accent); }

  @media (prefers-reduced-motion: reduce){
    *{ transition: none !important; animation: none !important; }
  }

  /* ---- Ersteinrichtung (Onboarding) ---- */
  .onboard-overlay{
    position:fixed; top:0; bottom:0; left:50%; transform:translateX(-50%);
    width:100%; max-width:480px; background:var(--bg); z-index:100;
    display:flex; flex-direction:column;
  }
  .onboard-body{
    flex:1; overflow-y:auto; display:flex; flex-direction:column;
    padding: calc(32px + env(safe-area-inset-top, 0px)) 24px 24px;
  }
  .onboard-step{ display:flex; flex-direction:column; flex:1; }
  .onboard-eyebrow{ font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--accent); font-weight:700; margin-bottom:8px; }
  .onboard-step h1{ font-size:26px; margin-bottom:8px; }
  .onboard-step .lead{ font-size:14px; color:var(--text-muted); margin-bottom:24px; line-height:1.5; }
  .onboard-progress{ display:flex; gap:6px; justify-content:center; margin-bottom:22px; }
  .onboard-progress .dot{ width:7px; height:7px; border-radius:4px; background:var(--border); transition: width .15s, background .15s; }
  .onboard-progress .dot.active{ background:var(--accent); width:20px; }
  .social-btn{
    display:flex; align-items:center; gap:12px; width:100%; border:1px solid var(--border);
    background:var(--surface); color:var(--text); border-radius:12px; padding:13px 16px;
    font-family:inherit; font-size:14px; font-weight:700; cursor:pointer; margin-bottom:10px;
  }
  .social-btn .glyph{ width:22px; height:22px; border-radius:6px; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:12px; flex-shrink:0; }
  .divider-row{ display:flex; align-items:center; gap:10px; color:var(--text-muted); font-size:11.5px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; margin:16px 0; }
  .divider-row::before, .divider-row::after{ content:""; flex:1; height:1px; background:var(--border); }
  .onboard-footer{ padding: 14px 24px calc(18px + env(safe-area-inset-bottom, 0px)); border-top:1px solid var(--border); }
  .skip-link{ display:block; width:100%; background:none; border:none; color:var(--text-muted); font-size:13px; font-weight:700; cursor:pointer; padding:12px 0 2px; text-align:center; font-family:inherit; }
  .legal-note{ font-size:11px; color:var(--text-muted); text-align:center; margin-top:16px; line-height:1.5; }
  .checklist-row{ display:flex; align-items:center; gap:10px; padding:9px 0; font-size:13.5px; border-bottom:1px solid var(--border); }
  .checklist-row:last-child{ border-bottom:none; }
  .checklist-row .check{ width:22px; height:22px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:11px; font-weight:800; }
  .checklist-row .check.done{ background:var(--success); color:#fff; }
  .checklist-row .check.skip{ background:var(--surface-2); color:var(--text-muted); }
  .invite-tag{ display:inline-flex; align-items:center; gap:6px; background:var(--accent-soft); color:var(--accent); border-radius:999px; padding:5px 11px; font-size:12px; font-weight:700; margin:4px 6px 0 0; }
  .card-preview{ background:linear-gradient(135deg, #6C4AB6, #3D2A66); color:#fff; border-radius:14px; padding:18px; margin-bottom:18px; }
  .card-preview .num{ font-size:16px; font-weight:700; letter-spacing:.06em; font-variant-numeric: tabular-nums; margin:18px 0 10px; }
  .card-preview .row{ display:flex; justify-content:space-between; font-size:11px; opacity:.85; }
  .member-manage-row{ display:flex; align-items:center; gap:10px; padding:8px 0; border-bottom:1px solid var(--border); }
  .member-manage-row:last-child{ border-bottom:none; }
  .member-manage-row .name{ flex:1; font-size:13.5px; font-weight:600; }
  .member-manage-row .remove-btn{ background:none; border:none; color:var(--text-muted); font-size:15px; cursor:pointer; padding:4px 8px; font-family:inherit; line-height:1; border-radius:6px; }
  .member-manage-row .remove-btn:hover{ color:var(--danger); }
  .connected-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; border:1px solid var(--border); border-radius:10px; padding:10px 12px; margin-bottom:10px; }
  .connected-row:last-child{ margin-bottom:0; }
  .connected-row .label{ font-size:13px; font-weight:600; }
  .connected-row .status{ font-size:12px; color:var(--text-muted); margin-top:2px; }
  .danger-confirm{ background:var(--surface-2); border:1px solid var(--danger); border-radius:10px; padding:12px; margin-top:10px; }
  .danger-confirm p{ margin:0 0 10px; font-size:13px; color:var(--text); }
  .cal-manage-block{ border:1px solid var(--border); border-radius:12px; padding:14px; margin-bottom:14px; }
  .cal-manage-head{ display:flex; align-items:center; gap:8px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--text-muted); margin-bottom:12px; }
  .cal-manage-head .dot{ width:9px; height:9px; border-radius:50%; flex-shrink:0; }
  .cal-manage-block .field:last-of-type{ margin-bottom:8px; }

  /* ---- Einfacher Modus (Barrierefreiheit) ---- */
  html.simple-mode body{ font-size: 16px; }
  html.simple-mode .topbar h1{ font-size: 25px; }
  html.simple-mode .card-title{ font-size: 17px; }
  html.simple-mode .agenda-item .what{ font-size: 16px; }
  html.simple-mode .agenda-item .when, html.simple-mode .agenda-item .meta{ font-size: 13.5px; }
  html.simple-mode .btn{ font-size: 15.5px; padding: 13px 18px; }
  html.simple-mode .chip{ font-size: 14px; padding: 9px 15px; }
  html.simple-mode .tab span{ font-size: 11.5px; }
  html.simple-mode .dd-item{ font-size: 15px; }
  html.simple-mode .icon-btn{ width: 40px; height: 40px; }
  html.simple-mode .avatar-btn{ font-size: 15px; }

  /* ---- Druckansicht (Geschäftskalender: Termine drucken) ---- */
  #printArea{ display:none; }
  #printArea h1{ font-size: 20px; margin-bottom: 2px; }
  #printArea .print-sub{ font-size: 13px; color: #555; margin-bottom: 4px; }
  #printArea .print-meta{ font-size: 11.5px; color: #777; margin-bottom: 20px; }
  #printArea table{ width:100%; border-collapse: collapse; font-size: 13px; }
  #printArea th, #printArea td{ text-align:left; padding: 8px 10px; border-bottom: 1px solid #ccc; }
  #printArea th{ font-size: 11px; text-transform: uppercase; letter-spacing: .04em; color: #555; }
  #printArea .print-empty{ font-size: 13px; color: #777; }
  @media print{
    .app{ display:none !important; }
    #printArea{ display:block !important; color:#111; background:#fff; padding: 24px; }
  }

/* ---- Buchungsseite (v67) ---- */
.bk-slug{ display:flex; align-items:center; gap:4px; background:var(--surface-2); border-radius:12px; padding-left:10px; }
.bk-slug span{ font-size:12px; color:var(--text-muted); white-space:nowrap; }
.bk-slug input{ background:transparent; padding-left:2px; }
.bk-hint{ font-size:12.5px; color:var(--text-muted); margin-top:5px; line-height:1.45; }
.bk-hint.ok{ color:var(--success, #2E8B57); } .bk-hint.bad{ color:var(--danger); }
.bk-err{ background:var(--danger-soft, #FBE6E3); color:var(--danger); border-radius:12px; padding:10px 12px; font-size:13.5px; margin:10px 0; }
.bk-row{ display:flex; gap:6px; align-items:center; margin:0 0 8px; }
.bk-row .text-input{ padding:9px 10px; font-size:14px; min-width:0; }
.bk-row .bk-x{ flex:0 0 34px; height:34px; border-radius:10px; border:0; background:var(--surface-2); color:var(--text-muted); font-size:16px; cursor:pointer; }
.bk-row label.bk-me{ flex:0 0 auto; font-size:12px; color:var(--text-muted); display:flex; gap:4px; align-items:center; white-space:nowrap; }
.bk-hrow{ display:grid; grid-template-columns:64px 1fr; gap:6px 8px; align-items:center; padding:6px 0; border-bottom:1px solid var(--border); font-size:14px; }
.bk-hrow:last-child{ border-bottom:0; }
.bk-hrow .bk-times{ display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
.bk-hrow .bk-times input{ width:auto; padding:6px 8px; font-size:13.5px; }
.bk-hrow .bk-times .bk-pause{ font-size:12px; }
.bk-hrow.closed .bk-times{ opacity:.45; }
.bk-link{ display:flex; gap:6px; flex-wrap:wrap; margin:8px 0 2px; }
.bk-link .chip{ font-size:13px; }
.bk-url{ font-size:12.5px; color:var(--text-muted); word-break:break-all; }
.bk-req{ border:1px solid var(--border); border-radius:14px; padding:10px 12px; margin:8px 0; background:var(--surface); }
.bk-req.offen{ border-color:var(--accent); box-shadow:0 0 0 1px var(--accent) inset; }
.bk-req .bk-when{ font-size:12px; font-weight:700; color:var(--text-muted); text-transform:uppercase; letter-spacing:.03em; }
.bk-req .bk-what{ font-size:15px; font-weight:700; margin:2px 0; }
.bk-req .bk-who{ font-size:13px; color:var(--text-muted); line-height:1.45; }
.bk-req .bk-who a{ color:inherit; }
.bk-req .bk-acts{ display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.bk-req .bk-note{ font-size:13px; background:var(--surface-2); border-radius:10px; padding:6px 9px; margin-top:6px; }
.bk-sec{ font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--text-muted); margin:14px 0 4px; }
.bk-qr{ width:150px; height:150px; margin:8px auto 0; background:#fff; border-radius:12px; padding:6px; }

/* ---------- v70: Wer sieht das? · Rechtestufen · Ansicht als ---------- */
.mrow-lvl{ display:flex; align-items:center; gap:8px; padding:10px 0; border-bottom:1px solid var(--border); }
.mrow-lvl .mname{ flex:1; min-width:0; }
.mrow-lvl .mlvl{ font-size:12px; color:var(--text-muted); margin-top:2px; line-height:1.35; }
.mrow-lvl .mctl{ display:flex; gap:6px; align-items:center; flex-shrink:0; }
.lvl-sel{ width:auto !important; max-width:150px; padding:6px 8px !important; font-size:13px !important; }
.kid-note{ font-size:13px; line-height:1.45; background:#FBEBDC; color:#6B3A12; border-radius:12px; padding:10px 12px; margin:8px 0 4px; }
.lvl-help{ margin-top:14px; font-size:13px; color:var(--text-muted); }
.lvl-help summary{ cursor:pointer; font-weight:700; color:var(--text); padding:6px 0; }
.lvl-help div{ padding:3px 0; line-height:1.4; }
.sa-row{ display:grid; grid-template-columns:1fr auto; gap:2px 10px; padding:10px 12px; border-radius:12px; background:var(--surface-2); margin-bottom:6px; border-left:4px solid var(--accent); }
.sa-row-busy{ background:transparent; border:1px dashed var(--border); border-left:4px solid var(--border); }
.sa-row-none{ opacity:.6; border-left-color:transparent; }
.sa-when{ font-size:12px; color:var(--text-muted); grid-column:1; }
.sa-what{ font-weight:700; grid-column:1; }
.sa-badge{ grid-column:2; grid-row:1 / span 2; align-self:center; font-size:11.5px; font-weight:700; border-radius:999px; padding:4px 9px; white-space:nowrap; }
.sa-det{ background:#DDF1E8; color:#1F5E43; }
.sa-busy{ background:var(--surface-2); color:var(--text-muted); }
.sa-none{ background:#F8E3E2; color:#8A2F2C; }
.sa-orig{ grid-column:1 / span 2; font-size:11.5px; color:var(--text-muted); }
@media (prefers-color-scheme: dark){
  .kid-note{ background:#3A2A1C; color:#F2C9A5; }
  .sa-det{ background:#1E3A2E; color:#9FE0C0; }
  .sa-none{ background:#3D2222; color:#F0A9A6; }
}
.cl-who{ border-style:solid; color:var(--text); }
.sa-rights{ margin:0 0 12px; background:var(--surface-2); border-radius:12px; padding:4px 12px; }
.sa-rights summary{ cursor:pointer; font-weight:700; padding:8px 0; }
.th-add{ background:var(--surface-2); border-radius:14px; padding:12px; display:flex; flex-direction:column; gap:8px; }
.th-row{ display:flex; gap:8px; align-items:flex-end; flex-wrap:wrap; }
.th-row .field{ flex:1 1 140px; margin:0; min-width:0; }
.th-row .btn{ flex:0 0 auto; }
.th-item{ display:flex; gap:10px; align-items:flex-start; padding:10px 4px; border-bottom:1px solid var(--border); }
.th-item .task-check{ flex-shrink:0; }
.th-body{ flex:1; min-width:0; }
.th-text{ font-weight:600; overflow-wrap:anywhere; }
.th-item[data-done="true"] .th-text{ text-decoration:line-through; color:var(--text-muted); }
.th-meta{ font-size:12px; color:var(--text-muted); margin-top:2px; }
.th-cal{ display:inline-flex; align-items:center; gap:4px; }
.th-cal i{ width:8px; height:8px; border-radius:50%; display:inline-block; }
.th-item .task-check{ width:26px; height:26px; border-radius:8px; }

/* ---------- v73: Handy-Layout ---------- */
/* Unterkalender-Leiste in Familie/Freunde/Arbeit: Chips wie im Hauptkalender */
.circle-legend{ gap:6px; padding:2px 0 10px; }
.cl-item{ border:1px solid var(--border); background:var(--surface-2); padding:6px 12px; font-size:12.5px; }
.cl-item[aria-pressed="true"]{ background:var(--accent); border-color:var(--accent); color:var(--on-accent); }
.cl-item[aria-pressed="true"] .cl-dot{ border-color:var(--on-accent); }
.cl-item[aria-pressed="false"]{ color:var(--text-muted); }
.cl-item:hover{ filter:brightness(.97); }
.cl-item[aria-pressed="true"]:hover{ background:var(--accent); }
.cl-add, .cl-all{ padding:6px 12px; font-size:12.5px; }
.cl-who{ background:var(--surface-2); }
/* Chip-Zeilen: nie umbrechen – seitlich wischen */
#overlayChips, .view-mode-row{ flex-wrap:nowrap !important; overflow-x:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
#overlayChips::-webkit-scrollbar, .view-mode-row::-webkit-scrollbar{ display:none; }
#overlayChips > .chip, .view-mode-row > .chip{ flex:0 0 auto; white-space:nowrap; }
@media (max-width: 520px){
  /* Kopfzeile: Knöpfe oben, Begrüßung/Titel in eigener Zeile */
  .topbar{ padding:10px 14px 10px; }
  .topbar-row{ display:grid; grid-template-columns:auto 1fr auto; grid-template-areas:"l e r" "h h h"; align-items:center; column-gap:6px; row-gap:2px; }
  .topbar-row > .topbar-actions:first-child{ grid-area:l; }
  .topbar-row > .topbar-actions:last-child{ grid-area:r; }
  .topbar-center{ display:contents; }
  .topbar-center > .eyebrow{ grid-area:e; text-align:center; min-width:0; }
  .topbar-center > h1{ grid-area:h; text-align:center; margin-top:4px; }
  .topbar-actions{ gap:6px; }
  .icon-btn{ width:34px; height:34px; }
  /* Kopf der Kalenderkarte: Hinweistext rechts ausblenden, damit nichts umbricht */
  .card-title > .month-nav + .muted{ display:none; }
  /* Ansicht-Zeile: Filter nur als Symbol */
  .filter-open-btn > span:not(.fbadge){ display:none; }
  .view-mode-row > .chip{ padding:6px 11px; }
}
@media (max-width: 400px){
  .view-mode-row{ gap:5px !important; }
  .view-mode-row > .chip{ padding:6px 9px; font-size:12px; }
  .filter-open-btn{ padding:6px 9px; }
}
#overlayChips, .circle-legend{ -webkit-mask-image:linear-gradient(90deg,#000 90%,transparent); mask-image:linear-gradient(90deg,#000 90%,transparent); }
.ph-cal{ font-size:12px; font-weight:700; color:var(--text-muted); margin:12px 0 4px; } .poll-share-btn{ width:100%; margin-top:8px; font-size:13px; }
.gh-send{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:8px; margin-top:12px; }
.gh-send .btn{ text-align:center; text-decoration:none; display:flex; align-items:center; justify-content:center; padding:12px 6px; }
.gh-item{ display:flex; gap:10px; align-items:center; padding:10px 2px; border-bottom:1px solid var(--border); }
.gh-item .gh-body{ flex:1; min-width:0; }
.gh-item .gh-name{ font-weight:700; }
.gh-item .gh-meta{ font-size:12px; color:var(--text-muted); }
.gh-soon{ color:var(--accent); font-weight:700; }
#ghTone{ display:flex; }
/* v76: Wichtig-Alarm, Notfall-Anruf, Kalendertypen */
.alarm-box{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.alarm-box .chip[aria-pressed="true"]{ background:var(--danger, #c0392b); color:#fff; border-color:transparent; }
.call-row{ margin-top:6px; }
.call-chip{ text-decoration:none; background:#e8f7ee; color:#1e7a46; border-color:#bfe6cf; font-weight:700; }
.type-row{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:6px; align-items:end; padding:8px 0; border-bottom:1px solid var(--border); }
.type-row > .chip{ justify-self:end; }
.type-row .type-lbl{ display:flex; flex-direction:column; font-size:11.5px; color:var(--text-muted); min-width:0; }
.type-row input, .type-row select{ min-width:0; width:100%; }
.type-note{ font-size:12.5px; color:var(--text-muted); margin:8px 0 0; line-height:1.4; }
.sea-banner{ background:linear-gradient(135deg,#0b4f7c,#1683b8); color:#fff; font-weight:700; padding:12px 14px; }
.sea-banner > div + div{ margin-top:4px; }
.type-block + .type-block{ border-top:1px solid var(--border); margin-top:10px; padding-top:10px; }
.type-card-h{ font-size:14px; margin-bottom:6px; }
.fish-days{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
.fish-day{ background:var(--surface-2, rgba(0,0,0,.04)); border-radius:10px; padding:8px; font-size:12px; line-height:1.45; min-width:0; overflow-wrap:anywhere; }
.fish-day.warn{ background:#fdecea; }
.fd-d{ font-weight:700; margin-bottom:2px; }
.schon-warn{ margin-top:8px; background:#fff4e5; color:#8a4b00; border-radius:10px; padding:8px 10px; font-size:13px; font-weight:600; }
.tour-run{ font-size:13px; margin-top:4px; }
.pause-due{ color:var(--danger, #c0392b); font-weight:700; }
/* v77: Schule, Eigene Kalender, Schwangerschaft */
.school-block + .school-block{ border-top:1px solid var(--border); margin-top:12px; padding-top:12px; }
.school-h{ display:flex; justify-content:space-between; align-items:center; gap:8px; font-size:15px; margin-bottom:6px; }
.school-ab{ font-size:11.5px; font-weight:700; color:var(--accent); background:var(--accent-soft); border-radius:999px; padding:2px 8px; margin-left:4px; }
.school-line{ font-size:13.5px; line-height:1.5; display:flex; gap:8px; min-width:0; }
.school-line .sl-k{ flex:0 0 auto; min-width:64px; color:var(--text-muted); font-weight:700; font-size:12.5px; padding-top:1px; }
.school-pack{ margin-top:6px; background:#fff4e5; color:#8a4b00; border-radius:10px; padding:8px 10px; font-size:13px; }
.school-free{ background:#fff8d6; color:#7a5a00; border-radius:10px; padding:8px 10px; font-size:13px; font-weight:600; }
.school-exam{ margin-top:6px; font-size:13px; font-weight:600; color:var(--danger, #c0392b); }
.school-hw{ margin-top:6px; font-size:12.5px; line-height:1.5; }
.school-btns{ display:flex; gap:6px; flex-wrap:wrap; margin-top:10px; }
.school-form{ margin-top:8px; padding:10px; border:1px dashed var(--border); border-radius:12px; }
.school-form .th-row > *{ min-width:0; }
.sc-day{ margin-bottom:8px; }
.own-row{ display:flex; align-items:center; gap:10px; padding:8px 0; border-bottom:1px solid var(--border); }
.own-row:last-child{ border-bottom:0; }
.own-row .cl-dot{ width:10px; height:10px; border-radius:50%; flex:0 0 auto; }
.own-body{ flex:1; min-width:0; display:flex; flex-direction:column; }
.own-body small{ color:var(--text-muted); font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.preg-banner{ background:linear-gradient(135deg,#b2457a,#e07aa8); color:#fff; font-weight:700; padding:12px 14px; }
.preg-banner > div + div{ margin-top:4px; }
.school-todo{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; font-size:13px; color:var(--text-muted); }
/* v78: Neu anfangen, Hilfe-Zentrale, Medikamente, Pflege */
.restart-box{ border:1px dashed var(--border); border-radius:14px; padding:12px; margin-bottom:12px; }
.restart-h{ font-weight:700; margin-bottom:8px; }
.restart-warn{ background:#fff4e5; color:#6b3d00; border-radius:12px; padding:10px 12px; font-size:13px; line-height:1.5; }
.restart-warn ul{ margin:4px 0 8px; padding-left:18px; }
.help-tip{ max-height:60vh; overflow-y:auto; }
.ht-head{ display:flex; justify-content:space-between; align-items:center; font-weight:700; font-size:14px; margin-bottom:6px; gap:8px; }
.ht-head small{ color:var(--text-muted); font-weight:600; }
.ht-x{ border:0; background:var(--surface-2, rgba(0,0,0,.06)); border-radius:50%; width:28px; height:28px; cursor:pointer; color:inherit; flex:0 0 auto; }
.ht-dots{ display:flex; gap:5px; margin:0 0 10px; }
.ht-dots span{ width:7px; height:7px; border-radius:50%; background:var(--border); }
.ht-dots span.on{ background:var(--accent); width:18px; border-radius:4px; }
.ht-dots span.done{ background:var(--accent-soft, #d9cff2); }
.help-tip .tt-btns{ gap:6px; }
.help-tip .tt-btns .btn{ padding:8px 10px; font-size:13px; }
.ht-skip{ color:var(--text-muted); }
.tour-dim{ left:50%; top:50%; width:0; height:0; }
.hh-tile{ display:flex; align-items:center; gap:8px; border-bottom:1px solid var(--border); padding:4px 0; }
.hh-tile.off{ opacity:.6; }
.hh-main{ flex:1; min-width:0; display:flex; gap:12px; align-items:center; text-align:left; background:none; border:0; padding:10px 2px; color:inherit; cursor:pointer; font:inherit; }
.hh-ic{ font-size:24px; width:32px; text-align:center; flex:0 0 auto; }
.hh-txt{ display:flex; flex-direction:column; min-width:0; }
.hh-txt small{ color:var(--text-muted); font-size:12px; line-height:1.4; }
.hh-seen{ color:#2E9B6F; }
.hh-new{ font-size:10.5px; background:var(--accent); color:#fff; border-radius:999px; padding:1px 7px; vertical-align:middle; }
.med-row{ display:flex; align-items:center; gap:10px; padding:7px 0; border-bottom:1px solid var(--border); }
.med-row:last-of-type{ border-bottom:0; }
.med-t{ font-weight:700; font-variant-numeric:tabular-nums; width:46px; flex:0 0 auto; }
.med-n{ flex:1; min-width:0; display:flex; flex-direction:column; }
.med-n small{ color:#2E9B6F; font-size:12px; }
.med-row.late .med-t{ color:var(--danger, #c0392b); }
.med-row.done{ opacity:.7; }
.med-btn[aria-pressed="true"]{ background:#2E9B6F; color:#fff; border-color:transparent; }
.med-edit{ border:1px solid var(--border); border-radius:12px; padding:10px; margin-bottom:8px; }
.med-edit .th-row > *{ min-width:0; }
.care-week{ display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:4px; margin:6px 0 8px; }
.care-day{ display:flex; flex-direction:column; align-items:center; gap:2px; border:1px solid var(--border); border-radius:10px; padding:6px 2px; background:var(--surface); font:inherit; color:inherit; min-width:0; cursor:pointer; }
.care-day:disabled{ cursor:default; }
.care-day.open{ border-style:dashed; background:#fff8ec; }
.care-day.ok{ background:#e8f7ee; border-color:#bfe6cf; }
.care-day.mine{ outline:2px solid var(--accent); }
.cd-d{ font-size:11px; font-weight:700; color:var(--text-muted); }
.cd-w{ font-size:11px; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cd-p{ font-size:12px; }
/* v79: Alltag, Fristen, Vorsorge, Tagebuch */
.fit-row{ display:flex; align-items:center; gap:10px; margin:4px 0 8px; font-size:14px; }
.fit-bar{ flex:1; height:10px; border-radius:999px; background:var(--surface-2, rgba(0,0,0,.07)); overflow:hidden; }
.fit-bar span{ display:block; height:100%; background:linear-gradient(90deg,#2E9B6F,#6fcf97); border-radius:999px; }
.fit-streak{ font-size:12.5px; font-weight:700; color:#d35400; white-space:nowrap; }
.plant-grid{ display:flex; flex-wrap:wrap; gap:6px; }
.plant-chip{ display:flex; align-items:center; gap:6px; border:1px solid var(--border); border-radius:999px; padding:6px 10px; font-size:13px; cursor:pointer; background:var(--surface); }
.plant-chip input{ margin:0; }
.plant-chip:has(input:checked){ border-color:var(--accent); background:var(--accent-soft, #efe9fb); }
.type-row-2{ display:grid; grid-template-columns:96px minmax(0,1fr); gap:8px; align-items:center; margin-bottom:6px; font-size:13px; }
.pollen-tab{ width:100%; border-collapse:collapse; font-size:12.5px; margin-top:4px; table-layout:fixed; }
.pollen-tab th{ text-align:left; font-size:11.5px; color:var(--text-muted); font-weight:700; padding:2px 4px; }
.pollen-tab td{ padding:4px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.pollen-tab td small{ font-size:11px; }
.due-late .due-when{ color:var(--danger, #c0392b); font-weight:700; }
.due-soon .due-when{ color:#b9770e; font-weight:700; }
.due-ok .due-when{ color:var(--text-muted); }
.putz-who{ color:var(--text-muted) !important; }
.essen-week{ display:flex; flex-direction:column; gap:2px; }
.essen-day{ display:grid; grid-template-columns:44px minmax(0,1fr) auto; align-items:center; gap:8px; padding:6px 4px; border-bottom:1px solid var(--border); min-height:38px; }
.essen-day.today{ background:var(--accent-soft, #efe9fb); border-radius:10px; }
.essen-day.past{ opacity:.5; }
.ed-d{ font-weight:700; font-size:12.5px; color:var(--text-muted); }
.ed-m{ font-size:14px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.shop-row{ display:flex; align-items:center; gap:10px; padding:7px 2px; border-bottom:1px solid var(--border); font-size:14px; cursor:pointer; }
.shop-row input{ width:18px; height:18px; }
.mood-row{ display:flex; justify-content:space-between; margin:6px 0; }
.mood-row label{ display:flex; flex-direction:column; align-items:center; cursor:pointer; font-size:26px; }
.mood-row input{ margin-top:4px; }
/* v80: Details einklappen, Stundenplan-Auswahl, Familien-Karte */
details.it-more{ margin-top:4px; }
details.it-more > summary{ list-style:none; display:flex; align-items:center; gap:8px; cursor:pointer; font-size:12px; color:var(--text-muted); padding:2px 0; user-select:none; }
details.it-more > summary::-webkit-details-marker{ display:none; }
details.it-more > summary::before{ content:"▸"; font-size:11px; transition:transform .15s; display:inline-block; }
details.it-more[open] > summary::before{ transform:rotate(90deg); }
.im-bits{ font-weight:600; color:var(--text); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0; }
.im-lbl{ margin-left:auto; color:var(--accent); font-weight:600; flex:0 0 auto; }
.sc-day{ border:1px solid var(--border); border-radius:12px; padding:8px 10px; margin-bottom:6px; }
.sc-day.active{ border-color:var(--accent); background:var(--accent-soft, #efe9fb); }
.sc-day-h{ display:flex; align-items:center; justify-content:space-between; gap:8px; }
.sc-day-name{ background:none; border:0; padding:4px 0; font:inherit; font-weight:700; color:inherit; cursor:pointer; text-align:left; }
.sc-day-name small{ font-weight:500; color:var(--text-muted); margin-left:6px; }
.sc-list{ display:flex; flex-wrap:wrap; gap:6px; margin-top:4px; }
.sc-sub{ display:inline-flex; align-items:center; gap:4px; background:var(--surface); border:1px solid var(--border); border-radius:999px; padding:4px 4px 4px 10px; font-size:13px; }
.sc-sub b{ color:var(--text-muted); font-weight:600; }
.sc-sub button{ border:0; background:none; cursor:pointer; color:var(--text-muted); font-size:12px; padding:2px 6px; }
.sc-pal{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; padding-top:8px; border-top:1px dashed var(--border); }
.sc-pal .chip{ padding:6px 10px; font-size:13px; }
.sc-own{ border-style:dashed !important; }
.fc-viewas{ display:none; }
.fc-show-viewas .fc-viewas{ display:block; }
.fc-viewas-btn{ font-size:15px; }
/* v80.1: Rückmeldung im Anlegen-Fenster */
#wzStatus{ margin:10px 0 4px; padding:10px 12px; border-radius:12px; background:var(--surface-2, rgba(108,74,182,.08)); font-size:13.5px; line-height:1.4; }
#wzStatus.wz-err{ background:rgba(201,82,79,.12); color:var(--danger); border:1px solid rgba(201,82,79,.35); }
#wzStatus small{ display:block; margin-top:6px; color:var(--text-muted); font-size:12px; }
/* v81: Einstellungen in Gruppen, Profil kompakt, Bausteine-Gruppen */
.set-group{ margin:0 0 14px; }
.set-group-h, .mod-group-h{ font-size:11.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--text-muted); margin:6px 2px 8px; }
.mod-group-h{ display:flex; justify-content:space-between; align-items:baseline; margin-top:16px; padding-top:10px; border-top:1px solid var(--border); }
.mod-group-h:first-child{ border-top:0; margin-top:0; padding-top:0; }
.mod-group-h small{ font-weight:500; text-transform:none; letter-spacing:0; }
.prof-box{ border:1px solid var(--border); border-radius:16px; margin:0 0 14px; background:var(--surface, transparent); }
.prof-box > summary{ list-style:none; display:flex; align-items:center; gap:12px; padding:12px 14px; cursor:pointer; }
.prof-box > summary::-webkit-details-marker{ display:none; }
.prof-box[open] > summary .opt-chev{ transform:rotate(90deg); }
.prof-box[open]{ padding-bottom:6px; }
.prof-box > :not(summary){ margin-left:14px; margin-right:14px; }
.prof-mini{ width:40px; height:40px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:700; flex:0 0 40px; }
.prof-txt{ flex:1; min-width:0; display:flex; flex-direction:column; }
.prof-txt small{ color:var(--text-muted); font-size:12px; }
.cl-manage{ font-size:14px; }
/* v82: Schulzeiten */
.sz-grid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.sz-pause{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; font-size:13.5px; margin:4px 0; }
.sz-pause .sz-n{ width:64px; padding:6px 8px; }
.sz-table{ display:flex; flex-direction:column; gap:6px; margin:8px 0 4px; }
.sz-row{ display:grid; grid-template-columns:42px 1fr 1fr 1fr; gap:6px; align-items:center; }
.sz-row .text-input{ padding:6px 4px; min-width:0; font-size:13.5px; }
.sz-head span{ font-size:11.5px; font-weight:700; color:var(--text-muted); text-transform:uppercase; letter-spacing:.03em; }
.sz-row .sz-calc{ display:block; font-size:11px; color:var(--text-muted); }
/* v82: Push-Zentrale */
.pz-sum{ font-size:12.5px; color:var(--text-muted); margin:0 0 8px; }
.pz-kat{ border:1px solid var(--border); border-radius:12px; margin:0 0 8px; }
.pz-kat > summary{ display:flex; align-items:center; gap:8px; padding:10px 12px; cursor:pointer; list-style:none; }
.pz-kat > summary::-webkit-details-marker{ display:none; }
.pz-kat > summary .pz-kat-t{ flex:1; font-weight:700; font-size:13.5px; }
.pz-kat > summary small{ color:var(--text-muted); font-size:12px; }
.pz-item{ display:flex; gap:10px; align-items:flex-start; padding:8px 12px; border-top:1px solid var(--border); cursor:pointer; }
.pz-item.off{ opacity:.45; }
.pz-item .pz-ic{ width:22px; text-align:center; }
.pz-item .pz-txt{ flex:1; min-width:0; display:flex; flex-direction:column; font-size:13px; }
.pz-item .pz-txt small{ color:var(--text-muted); font-size:11.5px; line-height:1.4; }
.pz-item input{ width:18px; height:18px; margin-top:2px; flex:0 0 auto; }
.pz-all{ background:rgba(108,74,182,.06); }
/* v82: Mila + Abstimmungs-Assistent */
.mila-card{ background:linear-gradient(135deg, rgba(108,74,182,.10), rgba(46,155,111,.08)); }
.mila-h{ display:flex; align-items:center; gap:10px; font-size:13px; margin-bottom:8px; }
.mila-h > span:nth-child(2){ flex:1; }
.mila-av{ width:30px; height:30px; border-radius:50%; background:var(--accent); display:flex; align-items:center; justify-content:center; font-size:16px; }
.mila-t{ font-size:14.5px; line-height:1.5; margin-bottom:10px; }
.mila-a{ display:flex; gap:8px; flex-wrap:wrap; }
.mila-a .btn{ flex:1; min-width:120px; padding:9px 12px; }
.hh-ideas{ border:1px solid var(--border); border-radius:14px; padding:4px 12px; margin:0 0 14px; }
.hh-ideas > summary{ padding:8px 0; cursor:pointer; }
.hh-ideas > summary small{ color:var(--text-muted); margin-left:6px; }
.hh-idea{ display:flex; gap:10px; padding:8px 0; border-top:1px solid var(--border); font-size:13.5px; line-height:1.45; }
.hh-idea .chip{ display:inline-flex; margin-top:6px; }
#pollSheet.pw .pw-off{ display:none !important; }
.pw-dots{ display:flex; gap:6px; margin:0 0 12px; flex-wrap:wrap; }
.pw-dots span{ font-size:12px; padding:5px 10px; border-radius:999px; background:var(--border); color:var(--text-muted); }
.pw-dots span.on{ background:var(--accent); color:#fff; }
.pw-ideas{ margin-top:8px; }
/* v83: Kategorien, Einkaufsliste, Teilen */
.th-cats{ margin:8px 0 2px; }
.th-cats .chip{ font-size:12.5px; padding:5px 10px; }
.th-tools{ margin:12px 0 0; }
.th-tool-btns{ display:flex; gap:8px; margin-top:8px; }
.th-tool-btns .btn{ flex:1; padding:9px 10px; font-size:13.5px; }
.shop-add{ display:flex; gap:8px; }
.shop-add .text-input{ flex:1; min-width:0; }
.shop-add .btn{ flex:0 0 52px; padding:0; font-size:20px; }
.shop-area{ margin:12px 0 0; }
.shop-area-h{ font-size:11.5px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--text-muted); margin-bottom:4px; }
#shopAllList .shop-row{ display:flex; align-items:center; gap:10px; padding:8px 2px; border-bottom:1px solid var(--border); font-size:15px; }
#shopAllList .shop-row input{ width:20px; height:20px; flex:0 0 20px; }
#shopAllList .shop-row small{ margin-left:auto; color:var(--text-muted); font-size:12px; }
#shopAllList .shop-row.done span{ text-decoration:line-through; color:var(--text-muted); }
.shop-done{ margin-top:12px; }
.shop-done summary{ cursor:pointer; color:var(--text-muted); font-size:13px; }
.sl-text{ width:100%; font-family:inherit; font-size:14px; line-height:1.45; resize:vertical; min-height:180px; }
.sl-btns{ display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
.sl-btns .btn{ flex:1; min-width:100px; padding:10px 8px; font-size:13.5px; }
.sl-live{ margin-top:16px; padding-top:14px; border-top:1px solid var(--border); }
.sl-live-h{ font-weight:700; font-size:14px; margin-bottom:4px; }
#slLiveUrl{ margin-top:8px; font-size:13px; }

/* ===== v84: Abstimmungen für alles ===== */
.pw-art{ margin:0 0 12px; }
.pw-art-l{ font-weight:700; font-size:13px; margin:0 0 6px; }
#pollSheet.pw-art-x [data-pw-termin]{ display:none !important; }
#pollSheet:not(.pw-art-x) [data-pw-x]{ display:none !important; }
.pw-ans .pv-row{ display:flex; gap:6px; align-items:center; margin:0 0 6px; }
.pw-ans .pv-row input{ flex:1; min-width:0; }
.pw-ans #pvAnsAdd{ width:100%; margin:2px 0 8px; }
.pw-ans .pv-bring{ margin:0 0 8px; }
.pw-opt{ display:flex; gap:8px; align-items:center; font-size:13.5px; margin:8px 0; cursor:pointer; }
.pw-opt input[type=checkbox]{ width:18px; height:18px; flex:0 0 auto; }
.pw-opt.pw-end{ flex-direction:column; align-items:stretch; gap:4px; font-weight:600; }
.pv-list{ margin-top:6px; }
.pv-opt{ position:relative; display:flex; justify-content:space-between; align-items:center; gap:8px; width:100%; text-align:left; border:1.5px solid var(--border); background:var(--surface); color:inherit; border-radius:12px; padding:10px 12px; margin:0 0 6px; font:inherit; font-size:14px; cursor:pointer; overflow:hidden; }
.pv-opt[aria-pressed="true"]{ border-color:var(--accent); box-shadow:0 0 0 1px var(--accent) inset; }
.pv-opt[disabled]{ opacity:.6; cursor:default; }
.pv-bar{ position:absolute; left:0; top:0; bottom:0; background:var(--accent-soft, rgba(80,120,255,.12)); z-index:0; transition:width .3s; }
.pv-tx, .pv-n{ position:relative; z-index:1; min-width:0; overflow-wrap:anywhere; }
.pv-tx{ font-weight:600; }
.pv-n{ font-size:12px; color:var(--text-muted); text-align:right; flex:0 1 auto; }
.pv-row2{ display:flex; justify-content:space-between; align-items:center; gap:8px; flex-wrap:wrap; border-top:1px solid var(--border); padding:8px 0; }
.pv-row2 .pv-l{ min-width:0; flex:1 1 150px; }
.pv-row2 .pv-l b{ display:block; font-size:13.5px; overflow-wrap:anywhere; }
.pv-btns{ display:flex; gap:4px; }
.pv-close{ width:100%; margin-top:8px; }
.pv-ends{ margin-top:2px; }
.pv-over{ color:var(--warning, #b7791f); font-weight:600; }
.pv-take{ display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.pv-res-row{ font-size:13.5px; padding:4px 0; border-top:1px solid var(--border); overflow-wrap:anywhere; }

/* ===== v85: Klara plant Grüße ===== */
.gp-box{ border:1.5px solid var(--border); border-radius:14px; padding:10px 12px; margin:12px 0; background:var(--surface); }
.gp-box summary{ cursor:pointer; font-size:14px; }
.gp-box summary small{ display:block; color:var(--text-muted); font-size:12px; margin:2px 0 0 22px; }
.gp-row{ display:flex; gap:8px; margin:10px 0 8px; }
.gp-row input{ flex:1; min-width:0; }
#gpKanal{ margin:0 0 8px; }
#gpUser{ margin:0 0 8px; width:100%; }
.gp-hint{ font-size:12px; color:var(--text-muted); margin:0 0 10px; }
#gpPlan{ width:100%; }
.gp-klara{ display:flex; gap:10px; align-items:flex-start; background:var(--accent-soft); border-radius:14px; padding:10px 12px; margin:0 0 10px; font-size:13.5px; }
.gp-av{ font-size:22px; }
.gp-item{ display:flex; gap:10px; align-items:flex-start; border-top:1px solid var(--border); padding:10px 0; }
.gp-item:first-of-type{ margin-top:10px; }
.gp-ic{ font-size:20px; width:26px; text-align:center; flex:0 0 auto; }
.gp-b{ flex:1; min-width:0; }
.gp-n{ font-weight:700; font-size:14px; overflow-wrap:anywhere; }
.gp-n small{ font-weight:500; color:var(--text-muted); }
.gp-m{ font-size:12px; color:var(--text-muted); margin-top:2px; overflow-wrap:anywhere; }
.gp-t{ font-size:12.5px; margin-top:4px; overflow-wrap:anywhere; }
.gp-erinnert .gp-m, .gp-fehler .gp-m, .gp-verpasst .gp-m, .gp-unklar .gp-m{ color:var(--warning, #C08A26); font-weight:600; }
.gp-empty{ font-size:13px; color:var(--text-muted); margin:12px 0 0; }

/* ===== v86: Sport & Hobby ===== */
.go-wx{ font-size:13px; margin:4px 0; overflow-wrap:anywhere; }
.go-btns{ display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.go-form{ margin-top:8px; }
.go-form .text-input{ width:100%; }
.sp-partner{ text-decoration:none; color:inherit; }
.sp-partner small{ color:var(--text-muted); font-weight:500; }
.tm-cat{ display:flex; gap:10px; align-items:flex-start; border-top:1px solid var(--border); padding:10px 0; }
.tm-cat:first-child{ border-top:0; }
.tm-cat > div{ flex:1; min-width:0; }
.tm-ic{ font-size:20px; }
.tm-h{ font-size:12px; color:var(--text-muted); overflow-wrap:anywhere; }
.tm-cat .chip{ text-decoration:none; color:inherit; flex:0 0 auto; }
.tm-src{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; font-size:13.5px; padding:6px 0; border-top:1px solid var(--border); }
.tm-src small{ color:var(--text-muted); }
/* v86: Einstellungen Darstellung */
.v86-prefs{ margin:14px 0 0; padding:12px 0 0; border-top:1px solid var(--border); }
.v86-row{ display:flex; gap:10px; align-items:flex-start; font-size:13.5px; margin:14px 0 0; cursor:pointer; }
.v86-row input{ margin-top:3px; width:18px; height:18px; flex:0 0 auto; }
.v86-row small{ color:var(--text-muted); font-size:12px; }
/* v87: Steckbriefe, vergangene Termine */
.sb-info{ min-width:32px; justify-content:center; margin-right:6px; padding:4px 8px; }
.sb-hint{ width:100%; margin:4px 0 8px; font-size:13px; }
.sb-figur{ background:var(--accent-soft); border-radius:12px; padding:8px 12px; font-size:13.5px; margin:0 0 8px; }
.sb-list{ margin:0 0 12px; padding-left:20px; font-size:14px; line-height:1.5; }
.sb-kombi{ display:flex; gap:10px; align-items:center; border-top:1px solid var(--border); padding:10px 0; }
.sb-kombi > div{ flex:1; min-width:0; }
.sb-ic{ font-size:18px; white-space:nowrap; }
.sb-t{ font-size:12.5px; color:var(--text-muted); overflow-wrap:anywhere; }
.sb-grid{ display:flex; flex-wrap:wrap; gap:6px; padding:8px 0; }
.dd-past{ display:block; width:100%; margin-top:6px; background:none; border:0; border-top:1px dashed var(--border); padding:8px 0 2px; color:var(--text-muted); font:inherit; font-size:12.5px; text-align:left; cursor:pointer; }
/* v88: eigene Kalender-Chips, 7-Tage-Streifen, Gesundheit, Pflanzen, Rhythmus */
.own-chips{ margin:-6px 0 12px; }
.own-chips .chip span:first-child{ margin-right:4px; }
.wk-strip{ display:grid; grid-template-columns:repeat(7, minmax(0, 1fr)); gap:4px; margin:8px 0 6px; }
.wk-day{ display:flex; flex-direction:column; align-items:center; gap:1px; border:1.5px solid var(--border); background:var(--surface); color:inherit; border-radius:10px; padding:4px 0; font:inherit; cursor:pointer; min-width:0; }
.wk-day.has{ background:var(--accent-soft); border-color:transparent; }
.wk-day.sel{ border-color:var(--accent); box-shadow:0 0 0 1px var(--accent) inset; }
.wk-w{ font-size:10.5px; color:var(--text-muted); text-transform:uppercase; font-weight:700; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.wk-d{ font-size:14px; font-weight:800; }
.wk-e{ font-size:13px; line-height:1.1; min-height:15px; }
.wk-e small{ font-size:9.5px; color:var(--text-muted); }
.wk-list{ font-size:13px; background:var(--surface-2, var(--accent-soft)); border-radius:10px; padding:6px 10px; margin:0 0 6px; overflow-wrap:anywhere; }
.wk-none{ color:var(--text-muted); }
.health-title{ margin-bottom:6px; }
.my-plants{ margin-top:10px; border-top:1px solid var(--border); padding-top:8px; }
.my-plants summary{ cursor:pointer; font-weight:700; font-size:13.5px; }
.my-plants summary small{ color:var(--text-muted); font-weight:500; }
.pl-row{ border-top:1px solid var(--border); padding:8px 0; }
.pl-row:first-of-type{ border-top:0; }
.pl-h{ display:flex; justify-content:space-between; align-items:center; gap:8px; font-size:13.5px; }
.pl-i{ font-size:12px; color:var(--text-muted); margin-top:2px; overflow-wrap:anywhere; }
.pl-n{ font-size:12.5px; margin-top:4px; overflow-wrap:anywhere; }
.both-free-tab th{ font-size:0; height:0; padding:0; }
.both-free td{ text-align:center; font-size:14px; }
/* v89 ❄️ Winter */
.wi-haus{margin-top:8px;}
.wi-haus summary{cursor:pointer;padding:4px 0;}
.wi-task{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 0;border-bottom:1px solid var(--line, rgba(0,0,0,.08));font-size:.92em;}
.wi-task.done span{opacity:.6;text-decoration:line-through;}
.wi-advent{margin-top:8px;padding:8px 10px;border-radius:10px;background:linear-gradient(135deg,rgba(198,40,40,.10),rgba(46,125,50,.10));}
/* v90 🌱 Garten-Gruppen · 🍓 Saison · 🏃 Fitness-Pläne */
.plant-groups{ display:grid; gap:6px; margin:6px 0; }
.plant-grp{ border:1px solid var(--line, rgba(0,0,0,.08)); border-radius:12px; padding:6px 10px; }
.plant-grp summary{ cursor:pointer; padding:3px 0; }
.plant-grp summary small{ color:var(--muted, #666); }
.season-card .chip-row{ display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; }
.fit-presets{ display:grid; gap:6px; margin:6px 0 10px; }
.fit-presets .chip{ text-align:left; white-space:normal; }
/* v91 🧑‍🏫 Charaktere */
.sb-figur .sb-wer{ font-size:12.5px; color:var(--muted, #666); margin-top:3px; line-height:1.35; }
.fig-grid{ display:grid; gap:8px; margin-top:8px; }
.fig-card{ display:flex; gap:10px; align-items:flex-start; text-align:left; background:var(--card, #fff); border:1px solid var(--line, rgba(0,0,0,.08)); border-radius:12px; padding:9px 11px; font:inherit; color:inherit; cursor:pointer; }
.fig-card .fig-ic{ font-size:22px; line-height:1; }
.fig-card .fig-t{ display:block; font-size:12.5px; color:var(--muted, #666); margin-top:2px; line-height:1.35; }
/* v92 🧸 Babysitter */
.bs-next .chip, .bs-fam .chip{ margin-left:auto; }
.bs-sum{ margin-top:6px; }
/* v94 🔮 Horoskop */
.horo-day{ margin:6px 0; line-height:1.45; }
.horo-l{ display:block; font-size:13px; margin-top:3px; }
.horo-stars{ letter-spacing:1px; color:var(--accent, #c78a00); }
.horo-ppl{ display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; }
.horo-ppl .chip.on{ outline:2px solid var(--accent, #7c5cff); }
/* v95 🏕️ Outdoor */
.od-trip, .od-sun, .od-angel{ margin-top:6px; }
/* v96 📋 Vorlagen */
.vl-box{ margin-top:10px; border:1px dashed var(--line, rgba(0,0,0,.15)); border-radius:12px; padding:8px 10px; }
.vl-box summary{ cursor:pointer; }
.vl-grp{ margin-top:8px; }
.vl-chips{ display:flex; flex-wrap:wrap; gap:6px; margin-top:4px; }
.vl-done{ margin-bottom:10px; }
.vl-done .chip{ margin:6px 6px 0 0; }
/* v97 Feinschliff */
.dd-past-item{ opacity:.5; }
.dd-past[aria-expanded="true"]{ margin-top:4px; }
.own-chips{ flex-wrap:nowrap !important; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; -webkit-overflow-scrolling:touch; padding-bottom:2px; scroll-snap-type:x proximity; }
.own-chips::-webkit-scrollbar{ display:none; }
.own-chips .chip{ flex:0 0 auto; white-space:nowrap; scroll-snap-align:start; }
.own-chips.more-right{ -webkit-mask-image:linear-gradient(to right, #000 85%, transparent); mask-image:linear-gradient(to right, #000 85%, transparent); }
.own-chips.more-left.more-right{ -webkit-mask-image:linear-gradient(to right, transparent, #000 8%, #000 85%, transparent); mask-image:linear-gradient(to right, transparent, #000 8%, #000 85%, transparent); }
.own-chips.more-left:not(.more-right){ -webkit-mask-image:linear-gradient(to right, transparent, #000 8%); mask-image:linear-gradient(to right, transparent, #000 8%); }
.ml-head{ display:flex; gap:6px; align-items:center; }
.ml-strip{ display:grid; gap:4px; margin-top:8px; }
.ml-day{ display:flex; flex-direction:column; align-items:center; gap:2px; padding:6px 2px; border:1px solid var(--border); border-radius:12px; background:var(--card, #fff); font:inherit; color:inherit; min-width:0; cursor:pointer; }
div.ml-day{ cursor:default; }
.ml-day.today{ border-color:var(--accent, #7c5cff); background:var(--accent-soft, #efe9fb); }
.ml-day.past{ opacity:.45; }
.ml-day.empty .ml-ic{ color:var(--text-muted); font-size:16px; }
.ml-wd{ font-size:11px; color:var(--text-muted); text-transform:uppercase; }
.ml-ic{ font-size:22px; line-height:1.1; }
.ml-tx{ font-size:10.5px; line-height:1.2; max-width:100%; overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; text-align:center; word-break:break-word; min-height:2.4em; }
.ml-shop{ margin-top:10px; }
.ml-shop summary{ cursor:pointer; font-weight:600; }
.ml-icons{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:6px; margin:6px 0 10px; }
.ml-icon{ display:flex; flex-direction:column; align-items:center; gap:2px; padding:8px 2px; border:1px solid var(--border); border-radius:12px; background:var(--card, #fff); font:inherit; color:inherit; cursor:pointer; }
.ml-icon span{ font-size:24px; }
.ml-icon small{ font-size:10.5px; color:var(--text-muted); text-align:center; line-height:1.2; }
.ml-icon[aria-pressed="true"]{ border-color:var(--accent, #7c5cff); background:var(--accent-soft, #efe9fb); }
.ml-recent{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:10px; }
.set-search-mods .option-tile{ width:100%; }
.hm-off{ display:none !important; }
.hm-fold > :not(.hm-fold-head){ display:none !important; }
.hm-fold{ padding-top:10px !important; padding-bottom:10px !important; }
.hm-fold-head{ width:100%; display:flex; justify-content:space-between; align-items:center; background:none; border:0; font:inherit; font-weight:600; color:inherit; cursor:pointer; padding:2px 0; }
.hm-customize{ width:100%; margin:4px 0 16px; }
.hm-row{ display:flex; align-items:center; gap:6px; padding:8px 0; border-bottom:1px solid var(--border); }
.hm-row .hm-l{ flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.hm-row.off .hm-l{ opacity:.5; text-decoration:line-through; }
.hm-row .chip[disabled]{ opacity:.3; }
.card .go-btns{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.card .school-h{ display:flex; justify-content:space-between; align-items:center; gap:8px; }
/* v98 🎣 Angeln */
.an-rate{ display:flex; align-items:center; gap:8px; margin:4px 0 2px; flex-wrap:wrap; }
.an-fish{ font-size:18px; letter-spacing:1px; }
.an-fish .an-dim{ opacity:.25; filter:grayscale(1); }
.an-curve{ display:grid; grid-template-columns:repeat(24, minmax(0,1fr)); align-items:end; gap:2px; height:44px; margin-top:6px; }
.an-bar{ display:block; background:var(--accent, #7c5cff); border-radius:3px 3px 0 0; }
.an-bar.now{ background:var(--warning, #f59e0b); }
.an-axis{ display:flex; justify-content:space-between; font-size:10px; color:var(--text-muted); margin-bottom:6px; }
.an-session{ margin-top:8px; padding:8px 10px; border-radius:12px; background:var(--accent-soft, #efe9fb); }
.an-start{ width:100%; }
.an-thumb{ width:40px; height:40px; object-fit:cover; border-radius:8px; margin-left:auto; }
.an-catch{ align-items:center; }
.an-stat{ margin-top:10px; }
.an-index{ padding:8px 10px; border-radius:12px; background:var(--accent-soft, #efe9fb); }
#anKind{ margin-bottom:10px; }
/* v99 🌱 Garten+ */
.gd-btns{ margin-top:8px; }
.gd-beds, .gd-palette{ display:flex; flex-wrap:wrap; gap:6px; margin:6px 0 8px; }
.gd-beds .chip.on, .gd-palette .chip.on{ outline:2px solid var(--accent, #7c5cff); }
.gd-grid{ display:grid; gap:4px; margin:8px 0; }
.gd-cell{ aspect-ratio:1; border:1px dashed var(--border); border-radius:10px; background:#f3efe6; font-size:20px; display:flex; align-items:center; justify-content:center; cursor:pointer; padding:0; }
.gd-cell.good{ background:#e3f5e1; border:2px solid #4caf50; }
.gd-cell.bad{ background:#fde6e4; border:2px solid #e53935; }
.plant-chip.on{ opacity:.6; }
button.plant-chip{ font:inherit; color:inherit; cursor:pointer; }
#gdBedName{ flex:2; min-width:0; } #gdBedSize{ flex:1; min-width:0; } #gdBedAdd{ flex:0 0 auto; }
/* v100 Karten-Menü, Abhaken, Kalendername, Mitteilungen */
.sub-dots{ display:flex; justify-content:center; align-items:center; gap:4px; margin-top:3px; }
.sub-dots span{ width:6px; height:6px; border-radius:50%; background:var(--border); display:inline-block; }
.sub-dots span.on{ background:var(--accent, #7c5cff); }
.sub-dots small{ font-size:10.5px; color:var(--text-muted); margin-left:4px; }
.dd-done{ display:inline-block; vertical-align:middle; width:22px; height:22px; border-radius:7px; border:2px solid var(--border); background:var(--card, #fff); color:#fff; font-weight:700; font-size:14px; line-height:1; cursor:pointer; margin-right:6px; padding:0; }
.dd-done.emph{ border-color:var(--accent, #7c5cff); }
.dd-done[aria-pressed="true"]{ background:#43a047; border-color:#43a047; }
.dd-done-row > span[style*="flex:1"]{ opacity:.75; }
.dd-done-by{ font-size:12px; color:#2e7d32; text-decoration:none; display:block; }
.nh-today{ margin-top:10px; }
.nh-meta{ font-weight:500; color:var(--text-muted); font-size:11.5px; }
.nh-chips{ display:flex; flex-wrap:wrap; gap:6px; margin:8px 0; }
.nh-day{ font-size:12px; font-weight:700; text-transform:uppercase; color:var(--text-muted); margin:10px 0 4px; }
.cm-host{ position:relative; }
.cm-gear{ position:absolute; top:16px; right:16px; z-index:2; width:34px; height:34px; border-radius:50%; border:1px solid var(--border); background:var(--card, #fff); cursor:pointer; font-size:15px; line-height:1; padding:0; }
.cm-host > .card-title, .cm-host > h2, .cm-host > .fsec-head:first-of-type, .cm-host > .agenda-head{ padding-right:44px; }
.cm-inline{ margin-left:auto; }
.type-card-h{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.cm-body .option-tile{ width:100%; }
/* v101 🎯 Hobby & Spiele – Scorekarten */
.hb-new{ display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; }
.hb-open{ margin-top:6px; padding:10px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); }
.hb-line{ width:100%; text-align:left; background:none; border:0; font:inherit; color:inherit; cursor:pointer; }
.hb-typ{ margin-bottom:8px; }
.hb-ppl{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:6px; }
.hb-ppl .chip[aria-pressed="true"]{ background:var(--accent, #7f5af0); color:#fff; border-color:transparent; }
.hb-meta{ font-size:13px; opacity:.8; margin-bottom:8px; }
.hb-tablewrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; margin:0 -4px; }
.hb-table{ border-collapse:collapse; width:100%; min-width:max-content; font-size:14px; }
.hb-table th, .hb-table td{ padding:3px 4px; text-align:center; border-bottom:1px solid var(--line, rgba(127,127,127,.18)); }
.hb-table th{ font-weight:600; font-size:13px; max-width:80px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.hb-table th.lead, .hb-table td.lead{ color:var(--accent, #7f5af0); }
.hb-table td.hb-n{ opacity:.6; font-size:12px; width:28px; }
.hb-in{ width:44px; padding:6px 2px; text-align:center; border:1px solid var(--line, rgba(127,127,127,.3)); border-radius:8px; background:var(--surface, transparent); color:inherit; font:inherit; -moz-appearance:textfield; }
.hb-in::-webkit-outer-spin-button, .hb-in::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.hb-in.ace{ background:#ffe9a8; border-color:#e5b400; font-weight:700; color:#5a4300; }
.hb-bw{ white-space:nowrap; }
.hb-bw .hb-in{ width:30px; margin-right:2px; }
.hb-bw small{ display:block; font-size:11px; opacity:.7; }
.hb-sum{ font-weight:700; font-size:16px; }
.hb-podium{ display:flex; gap:8px; justify-content:center; margin:12px 0 4px; }
.hb-podium > div{ flex:1; max-width:110px; text-align:center; padding:8px 4px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); }
.hb-podium span{ display:block; font-size:26px; }
.hb-podium b{ display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.hb-podium small{ opacity:.75; }
@media print{ #hbPrintFrame{ display:none; } }
/* v101 Feinschliff: Chip aus → Karte weg, Termin-Sprung, Karten-Menü gegliedert */
.school-block.own-off, .card.own-off-card{ display:none !important; }
.own-row.own-dim{ opacity:.5; }
.dd-item.ev-flash{ animation:evFlash 2.4s ease; border-radius:10px; }
@keyframes evFlash{ 0%,30%{ background:var(--accent-soft, rgba(127,90,240,.22)); box-shadow:0 0 0 2px var(--accent, #7f5af0); } 100%{ background:transparent; box-shadow:none; } }
.cm-sec{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; opacity:.6; margin:14px 2px 6px; }
.cm-sec:first-child{ margin-top:2px; }
.cm-danger-sec{ margin:10px 0 4px; border-top:1px solid var(--line, rgba(127,127,127,.2)); }
.option-tile.cm-danger .opt-title{ color:var(--danger, #c0392b); }
.cm-gear-inline{ margin-right:4px; }
.cm-body .option-tile{ padding:8px 12px; margin-bottom:6px; min-height:0; }
.cm-body .option-tile .opt-icon{ width:30px; height:30px; }
.cm-body .option-tile .opt-sub{ font-size:12px; }
/* v102: Startseite aufgeräumt, Termin-Assistent */
.set-own-host #ownCalCard{ margin:0 0 12px; }
.own-chips .own-add{ border-style:dashed; font-weight:700; }
.imp-chip .imp-badge{ display:inline-flex; align-items:center; justify-content:center; min-width:18px; height:18px; border-radius:50%; font-size:11px; font-weight:800; margin-right:4px; background:#fff; color:#4285f4; border:1px solid rgba(127,127,127,.3); }
.imp-chip .imp-badge.imp-apple{ color:#111; } .imp-chip .imp-badge.imp-outlook{ color:#0a64c8; }
.imp-chip[aria-pressed="false"]{ opacity:.55; }
.ev-switch{ margin:0 0 12px; }
.ev-switch button{ font-size:13px; }
#evFormSwitch{ padding:0 0 4px; }
.ev-quick-in{ font-size:17px; padding:12px 14px; }
.ev-preview{ margin:8px 2px; font-size:14px; color:var(--accent, #7f5af0); font-weight:600; min-height:20px; }
.ev-hints{ display:flex; flex-wrap:wrap; gap:6px; margin:6px 0 8px; }
.ev-dots{ display:flex; gap:6px; justify-content:center; margin:0 0 10px; }
.ev-dots span{ width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:15px; background:var(--surface-2, rgba(127,127,127,.12)); opacity:.45; }
.ev-dots span.done{ opacity:.8; } .ev-dots span.on{ opacity:1; box-shadow:0 0 0 2px var(--accent, #7f5af0); }
.ev-q{ display:flex; gap:10px; align-items:flex-start; margin:4px 0 12px; }
.ev-q-ic{ font-size:26px; line-height:1; }
.ev-q b{ display:block; font-size:18px; } .ev-q small{ display:block; opacity:.7; margin-top:2px; line-height:1.4; }
.ev-big{ font-size:17px; padding:12px 14px; }
.ev-sub{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; opacity:.6; margin:12px 2px 6px; }
.ev-aud{ font-size:13px; opacity:.75; margin:6px 2px; }
.ev-mirror > *{ margin:0; }
.ev-mirror .field{ margin-bottom:6px; }
.ev-times{ display:flex; gap:6px; align-items:center; } .ev-times input{ min-width:0; }
.ev-nav{ display:flex; justify-content:space-between; gap:10px; margin-top:16px; }
.ev-nav .btn{ flex:1; }
.ev-skip{ display:block; margin:10px auto 0; background:none; border:0; color:var(--text-muted, #888); font:inherit; font-size:13px; text-decoration:underline; cursor:pointer; }
.ev-sum{ width:100%; text-align:left; background:none; border:0; font:inherit; color:inherit; cursor:pointer; }
.ev-warn{ margin-top:10px; padding:8px 10px; border-radius:10px; background:#fff3cd; color:#664d03; font-size:13px; }
.ev-tip{ margin-top:12px; padding:10px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.08)); font-size:14px; }
/* v103: 💬 Kommentare & 📷 Fotos */
.dd-cmt{ display:inline-flex; align-items:center; gap:3px; margin-left:6px; padding:1px 7px; border-radius:999px; border:1px solid var(--line, rgba(127,127,127,.25)); background:transparent; color:var(--text-muted, #888); font:inherit; font-size:12px; cursor:pointer; vertical-align:middle; }
.dd-cmt.has{ color:var(--accent, #7f5af0); border-color:var(--accent, #7f5af0); background:var(--accent-soft, rgba(127,90,240,.08)); font-weight:600; }
.cmt-list{ max-height:52vh; overflow-y:auto; display:flex; flex-direction:column; gap:10px; padding:4px 2px 10px; }
.cmt-empty{ text-align:center; margin:18px 8px; }
.cmt-row{ display:flex; gap:8px; align-items:flex-start; }
.cmt-row.mine{ flex-direction:row-reverse; }
.cmt-av{ flex:none; width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:13px; background:var(--surface-2, rgba(127,127,127,.15)); }
.cmt-bubble{ max-width:80%; padding:8px 10px; border-radius:14px; background:var(--surface-2, rgba(127,127,127,.1)); }
.cmt-row.mine .cmt-bubble{ background:var(--accent-soft, rgba(127,90,240,.14)); }
.cmt-meta{ font-size:11.5px; opacity:.7; margin-bottom:3px; display:flex; gap:4px; align-items:center; }
.cmt-del{ margin-left:auto; background:none; border:0; color:inherit; cursor:pointer; font-size:12px; opacity:.6; }
.cmt-body{ font-size:14.5px; line-height:1.4; white-space:pre-wrap; word-break:break-word; }
.cmt-img{ display:block; max-width:100%; max-height:220px; border-radius:10px; margin:2px 0 4px; cursor:zoom-in; object-fit:cover; }
.cmt-input{ display:flex; gap:6px; align-items:center; }
.cmt-input .text-input{ flex:1; min-width:0; }
.cmt-input .btn{ flex:none; padding:10px 14px; }
.cmt-photo{ flex:none; width:42px; height:42px; display:flex; align-items:center; justify-content:center; border-radius:12px; font-size:20px; cursor:pointer; background:var(--surface-2, rgba(127,127,127,.12)); }
.cmt-preview{ display:flex; gap:8px; align-items:center; margin:0 0 8px; font-size:13px; }
.cmt-preview img{ width:54px; height:54px; object-fit:cover; border-radius:8px; }
.cmt-quick{ display:flex; gap:6px; overflow-x:auto; padding:8px 0 2px; scrollbar-width:none; }
.cmt-quick .chip{ flex:none; }
.cmt-big{ position:fixed; inset:0; z-index:9999; background:rgba(0,0,0,.88); display:flex; align-items:center; justify-content:center; }
.cmt-big[hidden]{ display:none; }
.cmt-big img{ max-width:96vw; max-height:90vh; border-radius:8px; }
.cmt-big .sheet-close{ position:absolute; top:14px; right:14px; }
/* v104: 🎙️ Spracheingabe */
.mic-wrap{ display:flex; gap:6px; align-items:center; }
.mic-wrap > input, .mic-wrap > textarea{ flex:1; min-width:0; }
.mic-btn{ flex:none; width:42px; height:42px; border-radius:50%; border:1px solid var(--line, rgba(127,127,127,.3)); background:var(--surface, #fff); font-size:19px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; }
.mic-btn.on{ background:#e5484d; border-color:#e5484d; animation:micPulse 1.2s ease-in-out infinite; }
@keyframes micPulse{ 0%,100%{ box-shadow:0 0 0 0 rgba(229,72,77,.55); } 50%{ box-shadow:0 0 0 9px rgba(229,72,77,0); } }
.ev-speak{ margin:8px 0 2px; } .ev-speak .btn{ width:100%; font-size:14px; }
/* v105: 🏕️ Camping · 🥾 Wandern */
.cp-trip, .wd-tour{ margin:6px 0 4px; padding:8px 10px; border-radius:12px; background:var(--surface-2, rgba(127,127,127,.07)); }
.cp-prog{ height:8px; border-radius:99px; background:var(--surface-2, rgba(127,127,127,.15)); overflow:hidden; margin:4px 0; }
.cp-prog span{ display:block; height:100%; background:var(--accent, #7f5af0); border-radius:99px; transition:width .3s; }
.cp-item.done span{ text-decoration:line-through; opacity:.6; }
.cp-ok{ margin:10px 0; padding:10px; border-radius:12px; background:#e7f8ec; color:#1b5e2e; font-weight:600; text-align:center; }
.cp-sum{ margin:10px 0 4px; font-weight:700; }
.cp-move{ font-weight:600; }
.wd-live{ margin:6px 0; padding:10px; border-radius:12px; background:#e7f8ec; color:#1b5e2e; }
.wd-live .btn{ background:#1f8a4c; border-color:#1f8a4c; }
.wd-calc{ margin-top:10px; padding:10px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); font-size:14px; }
.cw-gpx{ display:block; margin:0 0 6px; padding:10px; border:1px dashed var(--line, rgba(127,127,127,.4)); border-radius:12px; text-align:center; cursor:pointer; font-weight:600; }
.cw-num{ flex:1; min-width:0; display:flex; flex-direction:column; font-size:12px; gap:2px; opacity:.85; }
.cw-num .text-input{ min-width:0; }
.cw-migr{ margin:0 0 10px; padding:10px; border-radius:12px; background:var(--accent-soft, rgba(127,90,240,.1)); }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .cp-ok, :root:not([data-theme="light"]) .wd-live{ background:#163a24; color:#bfeccf; } }
:root[data-theme="dark"] .cp-ok, :root[data-theme="dark"] .wd-live{ background:#163a24; color:#bfeccf; }
/* v106: dezentes Zahnrad wie oben im Kalender, Konflikt, Doppelte, Rückgängig */
.school-h [data-type-open], .type-card-h [data-type-open], .own-row [data-type-open], .own-row [data-cm-own], .cm-gear, .cm-gear-inline, .chip.cm-inline{
  width:28px !important; height:28px !important; min-width:28px; padding:0 !important; border-radius:8px !important; border:1px solid var(--border) !important;
  background:var(--surface-2) !important; box-shadow:none !important; font-size:0 !important; color:var(--text) !important; position:relative; display:inline-flex; align-items:center; justify-content:center; flex:none; }
.school-h [data-type-open]::before, .type-card-h [data-type-open]::before, .own-row [data-type-open]::before, .own-row [data-cm-own]::before, .cm-gear::before, .cm-gear-inline::before, .chip.cm-inline::before{
  content:""; width:15px; height:15px; background:currentColor; opacity:.75;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='2.8'/%3E%3Cpath d='M12 3.5v2.1M12 18.4v2.1M20.5 12h-2.1M5.6 12H3.5M17.7 6.3l-1.5 1.5M7.8 16.2l-1.5 1.5M17.7 17.7l-1.5-1.5M7.8 7.8 6.3 6.3'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='2.8'/%3E%3Cpath d='M12 3.5v2.1M12 18.4v2.1M20.5 12h-2.1M5.6 12H3.5M17.7 6.3l-1.5 1.5M7.8 16.2l-1.5 1.5M17.7 17.7l-1.5-1.5M7.8 7.8 6.3 6.3'/%3E%3C/svg%3E") center/contain no-repeat; }
#newEventConflict.ev-conf{ display:block; padding:10px 12px; border-radius:12px; background:#fff4e0; color:#6b4a00; border:1px solid #f0c674; font-size:13.5px; text-align:left; }
#newEventConflict.ev-conf .ev-conf-row{ display:flex; align-items:center; justify-content:space-between; gap:8px; margin:6px 0; }
#newEventConflict.ev-conf .chip{ background:#fff; }
:root[data-theme="dark"] #newEventConflict.ev-conf{ background:#3a2c10; color:#f3d9a4; border-color:#6b5520; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) #newEventConflict.ev-conf{ background:#3a2c10; color:#f3d9a4; border-color:#6b5520; } }
#newEventSubmit.is-busy{ opacity:.7; cursor:progress; }
.dd-dup{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:6px 0; padding:8px 10px; border-radius:10px; background:#fff4e0; color:#6b4a00; font-size:13px; }
.undo-bar{ position:fixed; left:50%; transform:translateX(-50%); bottom:calc(84px + env(safe-area-inset-bottom)); z-index:9998; display:flex; gap:12px; align-items:center; padding:10px 12px 10px 16px; border-radius:14px; background:#222; color:#fff; box-shadow:0 6px 24px rgba(0,0,0,.25); max-width:92vw; font-size:14px; }
.undo-bar[hidden]{ display:none; }
.undo-bar button{ background:none; border:0; color:#c9b6ff; font-weight:700; font:inherit; cursor:pointer; white-space:nowrap; }
.ev-back-chip{ position:fixed; left:50%; transform:translateX(-50%); top:calc(12px + env(safe-area-inset-top)); z-index:9998; padding:10px 16px; border-radius:999px; border:0; background:var(--accent, #7f5af0); color:#fff; font:inherit; font-weight:700; box-shadow:0 6px 20px rgba(0,0,0,.2); cursor:pointer; }
.dd-cmt.in-row{ margin:0 2px 0 6px; align-self:center; flex:none; }

/* ===== v107: Pfad, Zuletzt benutzt, Sprungleiste, In Arbeit, Was ist neu, Heute ===== */
.set-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px;font-size:12px;color:var(--text-muted);margin-top:2px;line-height:1.4;}
.set-crumbs .crumb{background:none;border:0;padding:2px 0;font:inherit;color:var(--accent,#6c5ce7);cursor:pointer;}
.set-crumbs .crumb-now{color:var(--text-muted);cursor:default;}
.set-crumbs .crumb-sep{opacity:.6;}
.recent-panels{margin:-4px 0 12px;}
.recent-panels .recent-h{font-size:11.5px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;}
.cal-jump{display:flex;gap:6px;overflow-x:auto;padding:4px 0 10px;margin-bottom:6px;align-items:center;scrollbar-width:none;position:sticky;top:0;z-index:2;background:var(--surface,var(--bg,#fff));}
.cal-jump::-webkit-scrollbar{display:none;}
.cal-jump .chip{white-space:nowrap;flex:0 0 auto;font-size:12px;padding:5px 10px;}
.cal-jump-h{font-size:11px;color:var(--text-muted);white-space:nowrap;flex:0 0 auto;}
.jump-flash{animation:jumpFlash 1.4s ease;}
@keyframes jumpFlash{0%,40%{background:rgba(108,92,231,.14);border-radius:10px;}100%{background:transparent;}}
.mod-st{display:inline-block;font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px;vertical-align:middle;margin-left:4px;}
.mod-st-arbeit{background:#fff3cd;color:#8a6100;}
.mod-st-bald{background:#e8eefc;color:#2d4fa3;}
.tab.tab-st{position:relative;}
.tab.tab-st::after{content:"🚧";position:absolute;top:0;right:4px;font-size:10px;line-height:1;}
.tab.tab-st-bald::after{content:"⏳";}
.sb-status{border-radius:12px;padding:10px 12px;font-size:13px;line-height:1.45;margin-bottom:12px;}
.sb-status-arbeit{background:#fff3cd;color:#6b4c00;}
.sb-status-bald{background:#e8eefc;color:#22407f;}
.preview-pref{margin-top:12px;border-top:1px solid var(--border,#e5e5ea);padding-top:12px;}
.preview-pref .fsub{display:block;font-size:12px;color:var(--text-muted);font-weight:400;}
.menu-version{text-align:center;font-size:12px;color:var(--text-muted);margin:18px 0 6px;}
.link-btn{background:none;border:0;padding:0;font:inherit;color:var(--accent,#6c5ce7);cursor:pointer;text-decoration:underline;}
.wn-ver{border:1px solid var(--border,#e5e5ea);border-radius:12px;padding:8px 12px;margin-bottom:8px;}
.wn-ver summary{cursor:pointer;font-size:14px;}
.wn-ver ul{margin:8px 0 2px;padding-left:18px;font-size:13px;line-height:1.5;}
.wn-ver.wn-new{border-color:var(--accent,#6c5ce7);}
.wn-badge{background:var(--accent,#6c5ce7);color:#fff;font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px;margin-left:4px;}
.month-nav-btn.mn-today{width:auto;padding:0 10px;font-size:12px;font-weight:700;border-radius:999px;margin-left:4px;}
.mt-sback{margin-right:6px;}
#profileSheet .set-crumbs{flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;scrollbar-width:none;}
#profileSheet .set-crumbs::-webkit-scrollbar{display:none;}
#profileSheet .set-crumbs .crumb{display:inline-block;width:auto;min-width:0;height:auto;flex:0 0 auto;margin:0;}
#profileSheet .set-crumbs .crumb-sep{flex:0 0 auto;}
#profileSheet .set-crumbs .crumb{max-width:none;overflow:visible;text-overflow:clip;padding:2px 0;}
#profileSheet .set-crumbs{margin:-4px 0 10px;padding:0 2px;font-size:12.5px;}
/* v107: Zahnrad rund, Symbol mittig, immer rechts oben */
.school-h [data-type-open], .type-card-h [data-type-open], .own-row [data-type-open], .own-row [data-cm-own], .cm-gear, .cm-gear-inline, .chip.cm-inline, .ml-head [data-type-open]{
  border-radius:50% !important; line-height:0 !important; text-indent:0 !important; letter-spacing:0 !important; }
.school-h [data-type-open]::before, .type-card-h [data-type-open]::before, .own-row [data-type-open]::before, .own-row [data-cm-own]::before, .cm-gear::before, .cm-gear-inline::before, .chip.cm-inline::before{
  display:block; flex:none; margin:0; }
.cm-host{ position:relative; }
.cm-host > .cm-gear{ position:absolute !important; top:16px; right:16px; left:auto; margin:0; }   /* v121.2: genau wie die Zahnräder in den Titelzeilen (Innenabstand der Karte) */
.cm-host > .card-title, .cm-host > h3:first-of-type, .cm-host > .card-h{ padding-right:40px; min-height:28px; }
/* v107: Baustein-Liste – ⓘ und Schalter in festen Spalten */
#modList label.frow{ display:grid !important; grid-template-columns:minmax(0,1fr) 34px 52px; column-gap:8px; align-items:center; }
#modList label.frow > :first-child{ grid-column:1; min-width:0; }
#modList label.frow > .sb-info{ grid-column:2; justify-self:center; margin:0 !important; }
#modList label.frow > input{ grid-column:3; justify-self:end; margin:0 !important; }
#modList label.frow[hidden]{ display:none !important; }

/* ===== v108: Kalender ansehen ===== */
.cal-below{ margin:10px 0 4px; display:flex; flex-direction:column; gap:6px; }
.cal-below .cb-l{ font-size:11.5px; font-weight:700; color:var(--text-muted); text-transform:uppercase; letter-spacing:.04em; margin-top:2px; }
.cal-below .cb-hint{ text-transform:none; letter-spacing:0; font-weight:500; }
.cal-below .chip-row{ margin:0 !important; }
.cal-below [hidden]{ display:none !important; }
.kw-badge{ position:absolute; top:2px; left:3px; font-size:8.5px; font-weight:700; color:var(--text-muted); visibility:visible; line-height:1; letter-spacing:0; }
.day-cell.today .kw-badge{ color:var(--on-accent); opacity:.8; }
.day-cell .ov-dots{ position:absolute; bottom:3px; }
.span-bar{ position:absolute; left:-3px; right:-3px; bottom:2px; height:5px; opacity:.85; overflow:hidden; white-space:nowrap; font-size:0; z-index:1; pointer-events:none; }
.span-bar.sb-2{ bottom:9px; }
.span-bar.sb-start{ left:3px; border-top-left-radius:3px; border-bottom-left-radius:3px; }
.span-bar.sb-end{ right:3px; border-top-right-radius:3px; border-bottom-right-radius:3px; }
.day-cell.has-span .dots{ margin-bottom:4px; }
.dd-item.dd-c{ cursor:pointer; }
.dd-item.dd-c:not(.dd-open) [data-edit-item], .dd-item.dd-c:not(.dd-open) [data-del-ask], .dd-item.dd-c:not(.dd-open) [data-cancel-item],
.dd-item.dd-c:not(.dd-open) [data-task-from], .dd-item.dd-c:not(.dd-open) [data-propose-item],
.dd-item.dd-c:not(.dd-open) .dd-main > div:not(.dd-done-by), .dd-item.dd-c:not(.dd-open) .dd-main > details{ display:none !important; }
.dd-item.dd-c:not(.dd-open) .dd-main{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dd-item.dd-c.dd-open{ background:var(--surface-2); border-radius:10px; }
.dd-more{ flex:none; width:30px; height:30px; border-radius:50%; border:0; background:transparent; color:var(--text-muted); font-size:18px; line-height:1; cursor:pointer; padding:0; }
.dd-more:hover{ background:var(--surface-2); }
.dd-menu{ position:fixed; z-index:9000; background:var(--surface, #fff); border:1px solid var(--border); border-radius:14px; box-shadow:0 8px 24px rgba(0,0,0,.14); padding:6px; display:flex; flex-direction:column; }
.dd-mi{ display:flex; align-items:center; gap:10px; text-align:left; background:none; border:0; padding:10px 10px; border-radius:10px; font:inherit; font-size:14px; color:var(--text); cursor:pointer; }
.dd-mi:hover{ background:var(--surface-2); }
.dd-mi-ic{ width:20px; text-align:center; flex:none; }
#calViewPrefs .cvp-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin:6px 0; font-size:13.5px; }
#calViewPrefs .cvp-row .segmented{ flex:none; min-width:180px; }
#calViewPrefs .cvp-hint{ font-size:11.5px; color:var(--text-muted); margin-top:4px; line-height:1.5; }

/* ===== v108.1: Meldungen über jedem Fenster, Mitglieder-Rückmeldung, 🚧 mittig ===== */
#toast{ z-index:10001 !important; }
.own-msg{ border-radius:12px; padding:10px 12px; font-size:13.5px; font-weight:600; margin:0 0 12px; }
.own-msg-ok{ background:#e3f6ea; color:#14532d; }
.own-msg-err{ background:#fde8e8; color:#7f1d1d; }
:root[data-theme="dark"] .own-msg-ok{ background:#163a24; color:#bfeccf; }
:root[data-theme="dark"] .own-msg-err{ background:#3a1616; color:#f5c2c2; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .own-msg-ok{ background:#163a24; color:#bfeccf; } :root:not([data-theme="light"]) .own-msg-err{ background:#3a1616; color:#f5c2c2; } }
.mrow.own-flash{ animation:jumpFlash 2s ease; border-radius:10px; }
#ownAddBtn[disabled]{ opacity:.75; }
.tab.tab-st::after{ left:50% !important; right:auto !important; top:-7px !important; transform:translateX(-50%); font-size:12px !important; }

/* ===== v109: Einstellungen ordnen ===== */
.mod-tools{ display:flex; flex-direction:column; gap:8px; margin:6px 0 10px; }
.mod-tools-row{ display:flex; align-items:center; justify-content:space-between; gap:8px; }
.mod-tools-row .segmented{ flex:1; max-width:240px; }
.mod-tools-row .chip{ white-space:nowrap; }
#modList .mg{ border:1px solid var(--border); border-radius:14px; margin:0 0 8px; overflow:hidden; background:var(--surface); }
#modList .mg[hidden]{ display:none !important; }
#modList .mg > .mod-group-h{ display:flex; align-items:center; gap:8px; padding:12px 12px; margin:0 !important; cursor:pointer; user-select:none; }
#modList .mg > .mod-group-h > span:first-child{ flex:1; font-weight:700; }
#modList .mg > .mod-group-h .mg-chev{ transition:transform .15s; color:var(--text-muted); }
#modList .mg.mg-closed > .mod-group-h .mg-chev{ transform:rotate(-90deg); }
#modList .mg.mg-closed > .mod-group-h[data-icons]:not([data-icons=""])::after{ content:attr(data-icons); font-size:13px; letter-spacing:1px; max-width:40%; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
#modList .mg.mg-closed > .mg-body{ display:none; }
#modList .mg > .mg-body{ padding:0 12px 6px; border-top:1px solid var(--border); }
#modList .mg > .mg-body label.frow{ padding-left:0 !important; }
.set-card{ border:1px solid var(--border); border-radius:16px; padding:12px 14px; margin:0 0 12px; background:var(--surface); }
.set-card-h{ font-weight:800; font-size:15px; margin:0 0 2px; }
.set-card-sub{ font-size:12px; color:var(--text-muted); margin:0 0 10px; line-height:1.45; }
.set-card .field:last-child{ margin-bottom:0; }
.set-card > .option-tile:last-child{ margin-bottom:0; }

/* ===== v110: Termin eintragen ===== */
.ev-more{ border:1px solid var(--border); border-radius:14px; margin:4px 0 12px; background:var(--surface); }
.ev-more > summary{ list-style:none; cursor:pointer; padding:12px 14px; display:flex; flex-direction:column; gap:2px; }
.ev-more > summary::-webkit-details-marker{ display:none; }
.ev-more .ev-more-t{ font-weight:800; font-size:14px; color:var(--accent); }
.ev-more[open] .ev-more-t::after{ content:" ▴"; }
.ev-more .ev-more-s{ font-size:12px; color:var(--text-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ev-more-body{ padding:0 14px 6px; border-top:1px solid var(--border); padding-top:12px; }
.ev-rep-more{ margin-top:8px; display:flex; flex-direction:column; gap:8px; }
.ev-rep-until{ display:flex; align-items:center; gap:10px; }
.ev-rep-until label{ margin:0; white-space:nowrap; font-size:13px; }
.ev-rep-info{ font-size:12px; color:var(--text-muted); }
#newEventRepeatDays .chip{ min-width:40px; justify-content:center; }
.dd-item.dd-c:not(.dd-open) [data-copy-item]{ display:none !important; }

/* ===== v111: Frau Holles Wetter-Tipp, Wohnort ===== */
.wx-line{ background:#eef6ff; border-radius:10px; padding:6px 8px; margin:6px 0; font-size:13px; line-height:1.45; }
.wx-line .wx-k{ font-weight:700; margin-right:6px; white-space:nowrap; }
.wx-line b{ font-weight:700; }
:root[data-theme="dark"] .wx-line{ background:#14263a; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .wx-line{ background:#14263a; } }
#homePlaceField .hp-sub{ font-weight:500; text-transform:none; letter-spacing:0; }
#homePlaceField .hp-row{ display:flex; gap:8px; }
#homePlaceField .hp-row input{ flex:1; min-width:0; }
#homePlaceField .hp-info{ font-size:12px; color:var(--text-muted); margin:6px 0 8px; }
#tyOrtHere{ flex:none; }
.ev-more > summary{ flex-direction:row !important; align-items:center; gap:10px; }
.ev-more > summary .ev-more-t{ flex:none; padding:6px 12px; border-radius:999px; background:var(--accent-soft, rgba(127,90,240,.12)); }
.ev-more > summary .ev-more-s{ flex:1; min-width:0; }
.ev-more[open] .ev-more-t::after{ content:" ▴" !important; }
.ev-more:not([open]) .ev-more-t::after{ content:" ▾"; }
#newEventSheet{ scroll-padding-bottom:96px; }
#newEventSheet .ev-more-body{ scroll-margin-top:80px; }
/* v112: 🗑️ Müllabfuhr */
.mu-bin{ display:inline-block; width:13px; height:16px; border-radius:2px 2px 4px 4px; background:var(--mu,#8a94a6); position:relative; margin:4px 2px 0 2px; vertical-align:middle; flex:0 0 auto; }
.mu-bin::before{ content:""; position:absolute; top:-4px; left:-2px; right:-2px; height:3px; border-radius:2px; background:var(--mu,#8a94a6); }
.mu-next{ display:flex; gap:10px; align-items:center; background:var(--accent-soft); border-radius:12px; padding:10px; margin:8px 0; }
.mu-next .mu-bins{ display:flex; gap:2px; flex:0 0 auto; }
.mu-next .mu-bin{ width:18px; height:22px; }
.mu-nt{ display:flex; flex-direction:column; min-width:0; }
.mu-nt b{ font-size:15px; line-height:1.3; }
.mu-nt small{ color:var(--text-muted); font-size:12.5px; }
.mu-next.mu-done{ opacity:.75; }
.mu-next.mu-done .mu-nt b{ text-decoration:line-through; text-decoration-thickness:1px; }
.mu-nav{ display:flex; align-items:center; justify-content:space-between; gap:6px; font-size:12.5px; color:var(--text-muted); margin:6px 0 4px; }
.mu-nav > span{ flex:1; text-align:center; min-width:0; }
.mu-week{ display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:3px; text-align:center; }
.mu-day{ border-radius:8px; padding:4px 0 5px; min-height:52px; display:flex; flex-direction:column; align-items:center; font-size:11.5px; }
.mu-day.today{ background:var(--accent-soft); font-weight:700; }
.mu-day.past{ opacity:.5; }
.mu-day .mu-w{ color:var(--text-muted); }
.mu-day .mu-d{ font-weight:600; }
.mu-day .mu-bins{ display:flex; flex-wrap:wrap; justify-content:center; gap:1px; margin-top:2px; }
.mu-who{ display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:13px; margin-top:8px; flex-wrap:wrap; }
.mu-who small{ color:var(--text-muted); }
.mu-done-btn[aria-pressed="false"]{ font-weight:700; }
.mu-legend{ display:flex; flex-wrap:wrap; gap:4px 10px; font-size:11.5px; color:var(--text-muted); margin-top:8px; }
.mu-legend span{ display:inline-flex; align-items:center; gap:2px; }
.mu-empty{ font-size:13px; color:var(--text-muted); margin:6px 0 8px; }
.mu-setup{ width:100%; }
.mu-tabs{ display:flex; width:100%; }
.mu-tabs button{ flex:1; }
.mu-prev{ border:1px solid var(--border); border-radius:12px; padding:10px; margin:10px 0; }
.mu-prev-h{ font-weight:700; margin-bottom:6px; }
.mu-prev-row{ display:flex; align-items:center; gap:6px; padding:5px 0; border-bottom:1px solid var(--border); flex-wrap:wrap; }
.mu-prev-row select{ flex:1 1 120px; min-width:0; padding:6px 8px; }
.mu-prev-row small{ color:var(--text-muted); flex:1 1 100%; padding-left:26px; }
.mu-er-row{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:4px 0; }
.mu-er-row .layer-row{ flex:1 1 180px; margin:0; }
.mu-er-row input[type="time"], .mu-er-row input[type="number"]{ width:auto; flex:0 0 auto; min-width:0; max-width:120px; }
.mu-dran{ display:flex; flex-wrap:wrap; gap:6px; margin:4px 0 8px; }
.mu-dchip{ display:inline-flex; align-items:center; gap:4px; border:1px solid var(--border); border-radius:14px; padding:3px 4px 3px 10px; font-size:13px; background:var(--surface); }
.mu-dchip.now{ border-color:var(--accent); background:var(--accent-soft); }
.mu-dchip button{ border:0; background:none; color:var(--text-muted); font-size:13px; padding:2px 5px; cursor:pointer; }
.mu-cands{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:8px; }
.mu-cands small{ color:var(--text-muted); }
.mu-colors{ display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:6px; }
.mu-col{ display:flex; align-items:center; gap:6px; font-size:13px; border:1px solid var(--border); border-radius:10px; padding:4px 6px; min-width:0; }
.mu-col span:not(.mu-bin){ flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mu-col input[type="color"]{ width:32px; height:26px; border:0; padding:0; background:none; flex:0 0 auto; }
#typeBody .hp-row{ display:flex; gap:8px; margin:6px 0; }
#typeBody .hp-row input{ flex:1; min-width:0; }
#typeBody .hp-row .btn{ flex:0 0 auto; }
/* v113: 🃏 Poker · 🎲 Runde planen · 📝 Warteliste · 🖨️ Drucken · 🛍️ Angebote */
.pk-clock{ text-align:center; background:#0f5132; color:#fff; border-radius:16px; padding:14px 10px; margin:4px 0 10px; }
.pk-clock.pk-pause{ background:#7a4b00; }
.pk-clock.done{ opacity:.6; }
.pk-lv{ font-size:13px; opacity:.85; font-weight:600; }
.pk-blinds{ font-size:30px; font-weight:800; letter-spacing:.02em; }
.pk-time{ font-size:52px; font-weight:800; font-variant-numeric:tabular-nums; line-height:1.05; }
.pk-next{ font-size:12.5px; opacity:.85; min-height:16px; }
.pk-ctl{ justify-content:center; margin-top:8px; }
.pk-ctl .chip{ background:rgba(255,255,255,.15); color:#fff; border-color:rgba(255,255,255,.35); }
.pk-seats{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:6px; }
.pk-seat{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; border:1px solid var(--border); border-radius:12px; padding:6px 8px; font-size:13.5px; background:var(--surface); }
.pk-seat.out{ opacity:.5; }
.pk-seat .pk-sn{ width:20px; height:20px; border-radius:50%; background:var(--accent-soft); display:inline-flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; }
.pk-seat b{ flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pk-d{ display:inline-flex; width:20px; height:20px; border-radius:50%; background:#fff; color:#111; border:2px solid #111; font-size:10px; font-weight:800; align-items:center; justify-content:center; }
.pk-cash{ display:flex; gap:4px; align-items:center; flex-wrap:wrap; width:100%; }
.pk-cash small{ color:var(--text-muted); }
.pk-end{ width:110px !important; padding:4px 8px !important; }
.pk-pts{ margin-left:auto; color:var(--text-muted); font-size:12px; }
.rp-games{ margin-bottom:8px; }
.wl-info{ color:var(--text-muted); font-size:12px; margin-top:4px; }
.ev-ideas{ margin-top:6px; }
.ad-hint{ display:flex; justify-content:space-between; align-items:center; gap:8px; margin:10px 0 6px; padding:8px 10px; border-radius:10px; background:var(--bg); color:var(--text-muted); font-size:12.5px; text-decoration:none; }
.ad-hint b{ color:var(--text); }
.ad-go{ white-space:nowrap; color:var(--accent); font-weight:600; }
.ad-lbl{ font-size:10px; color:var(--text-muted); border:1px solid var(--border); border-radius:6px; padding:0 4px; margin-left:4px; font-weight:400; }
.cp-fehlt{ margin-left:auto; font-size:11.5px; padding:2px 8px; opacity:.7; }
.cp-fehlt.on{ opacity:1; border-color:var(--accent); background:var(--accent-soft); }
.cp-item{ align-items:center; }
.pr-kinds{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:8px; }
.pr-opts{ display:flex; flex-wrap:wrap; gap:6px 14px; font-size:13.5px; margin:6px 0; }
.pr-opts label{ display:inline-flex; gap:6px; align-items:center; }
.pk-king{ margin-top:6px; }
/* v113.1: 🎁 Wunschlisten · 🌟 Meilensteine */
.wl-anl{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:8px; }
.wl-anl small{ color:var(--text-muted); }
.wl-row{ display:flex; align-items:center; gap:8px; padding:8px 0; border-bottom:1px solid var(--border); flex-wrap:wrap; }
.wl-e{ font-size:20px; flex:0 0 auto; }
.wl-t{ flex:1 1 140px; min-width:0; display:flex; flex-direction:column; }
.wl-t small{ color:var(--text-muted); font-size:12px; }
.wl-l{ font-size:12px; color:var(--accent); }
.wl-c{ font-size:12px; white-space:nowrap; }
.wl-c.ok{ color:#2e9e5b; border-color:#2e9e5b; background:rgba(46,158,91,.08); border-radius:12px; padding:3px 8px; }
.wl-del{ font-size:11px; padding:2px 7px; }
.ms-next{ background:var(--accent-soft); border-radius:12px; padding:10px 12px; margin:8px 0; cursor:pointer; }
.ms-big{ font-weight:800; font-size:15.5px; }
.ms-cd{ font-size:24px; font-weight:800; line-height:1.15; }
.ms-next small{ color:var(--text-muted); }
.ms-open{ font-size:13px; margin:4px 0 6px; }
.ms-open small{ color:var(--text-muted); }
.ms-sug{ background:#fff8e6; border-radius:12px; padding:10px 12px; margin:8px 0; font-size:13.5px; }
.ms-ago{ font-size:13.5px; margin:6px 0; }
.ms-list{ display:flex; flex-direction:column; gap:4px; margin-bottom:6px; }
.ms-li{ display:flex; align-items:center; gap:10px; padding:8px 10px; border:1px solid var(--border); border-radius:12px; background:var(--surface); color:var(--text); text-align:left; font:inherit; cursor:pointer; }
.ms-li.past{ opacity:.7; }
.ms-li-t{ flex:1; min-width:0; display:flex; flex-direction:column; }
.ms-li-t small{ color:var(--text-muted); }
.ms-ck{ display:flex; align-items:center; gap:8px; padding:5px 0; border-bottom:1px solid var(--border); flex-wrap:wrap; }
.ms-ck label{ flex:1 1 160px; display:flex; gap:6px; align-items:center; font-size:14px; }
.ms-ck.done label span{ text-decoration:line-through; color:var(--text-muted); }
.ms-wer{ width:auto !important; max-width:130px; padding:4px 8px !important; font-size:12.5px; }
.ms-ew{ display:flex; align-items:center; justify-content:space-between; gap:8px; padding:4px 0; }
.ms-ew select{ width:auto; max-width:160px; }
.ms-chronik .ch-row{ display:flex; gap:10px; align-items:baseline; border-left:3px solid var(--accent-soft); padding:6px 0 6px 12px; margin-left:8px; }
.ms-chronik .ch-row.fut{ opacity:.55; }
.ms-chronik .ch-y{ font-weight:800; width:40px; }
.ms-chronik .ch-e{ font-size:18px; }
.loader-line{ color:var(--text-muted); font-size:13px; padding:10px 0; }

/* ===== v114: 🥌 Kegeln · 🎳 Bowling · 🎯 Darts ===== */
.kg-rule{ margin:-2px 0 8px; }
.hb-table th.kg-sub{ font-size:10px; font-weight:500; opacity:.7; }
.kg-kasse{ margin-top:12px; padding:10px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); }
.kg-kasse .fsec-head{ display:flex; justify-content:space-between; align-items:center; }
.kg-row{ display:flex; align-items:center; gap:6px; padding:5px 0; border-bottom:1px solid var(--line, rgba(127,127,127,.15)); }
.kg-row:last-of-type{ border-bottom:0; }
.kg-name{ flex:0 0 72px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:600; }
.kg-fines{ flex:1; display:flex; flex-wrap:wrap; gap:4px; }
.kg-fine{ padding:4px 8px; min-height:32px; }
.kg-fine.on{ background:#ffe9a8; border-color:#e5b400; color:#5a4300; }
.kg-owes{ flex:0 0 auto; font-variant-numeric:tabular-nums; }
.kg-total{ font-size:15px; justify-content:space-between; }
.bw-pad{ margin-top:10px; }
.bw-keys, .dt-keys{ display:grid; grid-template-columns:repeat(6, 1fr); gap:6px; margin:6px 0; }
.bw-keys .btn, .dt-keys .btn{ min-height:44px; padding:6px 0; font-size:16px; font-weight:600; }
.bw-keys .btn:disabled{ opacity:.3; }
.bw-sym{ font-size:13px; line-height:1.5; }
.bw-sym span{ font-family:ui-monospace, Menlo, monospace; }
.bw-teams{ margin-top:8px; }
.bw-teams summary{ cursor:pointer; font-weight:600; padding:6px 0; }
.bw-teams .gp-row{ align-items:center; }
.bw-teams select{ flex:1; }
.bw-tsum{ margin:6px 0 0; }
.dt-cur{ text-align:center; margin:4px 0 8px; }
.dt-big{ font-size:52px; font-weight:800; line-height:1; font-variant-numeric:tabular-nums; }
.dt-co{ margin:8px 0; padding:8px; border-radius:10px; background:#e6f6ea; color:#1d7a3a; font-weight:700; font-size:17px; text-align:center; }
.dt-mult{ margin:8px 0 4px; }
.dt-keys{ grid-template-columns:repeat(5, 1fr); }
.dt-table td.dt-mk{ font-size:18px; font-weight:700; }
.dt-table td.dt-last{ font-size:12px; opacity:.8; white-space:nowrap; }
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .dt-co{ background:#173b24; color:#8fe0a8; }
  :root:not([data-theme="light"]) .kg-fine.on{ background:#5a4300; color:#ffe9a8; }
}
:root[data-theme="dark"] .dt-co{ background:#173b24; color:#8fe0a8; }
:root[data-theme="dark"] .kg-fine.on{ background:#5a4300; color:#ffe9a8; }

/* ===== v115: ♠️ Kartenspiele · 🎲 Spieleabend ===== */
.ks-form{ padding:10px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); margin-bottom:10px; }
.ks-form .chip-row{ display:flex; flex-wrap:wrap; gap:6px; margin:4px 0 6px; }
.ks-form .chip[aria-pressed="true"]{ background:var(--accent, #7f5af0); color:#fff; border-color:transparent; }
.ks-l{ font-size:13px; font-weight:600; opacity:.8; margin-top:4px; }
.ks-mit{ align-items:center; gap:8px; }
.ks-mit .btn{ min-width:44px; min-height:40px; }
.ks-won{ margin:6px 0; }
.ks-val{ font-weight:700; margin:6px 0; color:var(--accent, #7f5af0); }
.ks-table td.ks-lbl{ text-align:left; font-size:12px; white-space:nowrap; }
.ks-plus{ color:#1d7a3a; font-weight:600; }
.ks-minus{ color:#b3261e; font-weight:600; }
.ks-ck{ width:22px; height:22px; vertical-align:middle; margin-right:4px; }
.kn-table td.kn-cat{ text-align:left; font-size:13px; white-space:nowrap; }
.kn-table tr.kn-sub td{ font-size:12px; opacity:.8; background:var(--surface-2, rgba(127,90,240,.05)); }
.kn-sel{ width:56px; }
.sa-block{ margin-top:10px; padding:10px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); }
.sa-block .school-line .chip{ padding:2px 8px; margin-left:6px; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .ks-plus{ color:#8fe0a8; } :root:not([data-theme="light"]) .ks-minus{ color:#ff9a90; } }
:root[data-theme="dark"] .ks-plus{ color:#8fe0a8; } :root[data-theme="dark"] .ks-minus{ color:#ff9a90; }

/* ===== v116: 🟢 Nur Freizeiten ===== */
.fw-card .card-title{ display:flex; justify-content:space-between; align-items:center; gap:8px; }
.fw-light{ margin:6px 0 10px; padding:8px 10px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); font-size:14px; }
.fw-light .chip{ margin-left:6px; }
.fw-sum{ display:flex; flex-wrap:wrap; gap:6px; margin:6px 0 4px; }
.fw-chip{ background:#e6f6ea; border-color:#bfe5cb; color:#1d5f34; }
.fw-week{ display:flex; flex-direction:column; gap:4px; }
.fw-day{ display:flex; align-items:center; gap:8px; padding:6px 8px; border-radius:10px; border:1px solid var(--line, rgba(127,127,127,.18)); min-height:44px; }
.fw-day.free{ background:rgba(46,158,117,.08); border-color:rgba(46,158,117,.35); }
.fw-day .fw-d{ flex:0 0 64px; font-weight:600; font-size:14px; }
.fw-day .fw-t{ flex:1; font-size:14px; }
.fw-day .chip{ padding:3px 10px; }
.fw-grid{ display:flex; flex-direction:column; gap:6px; margin:8px 0; }
.fw-row{ display:flex; align-items:flex-start; gap:8px; }
.fw-row .fw-wd{ flex:0 0 34px; font-weight:700; padding-top:6px; }
.fw-opts{ display:flex; flex-wrap:wrap; gap:4px; }
.fw-opts .chip[aria-pressed="true"]{ background:#2e9e75; color:#fff; border-color:transparent; }
.fw-add{ flex-wrap:wrap; gap:6px; }
.fw-add .text-input{ flex:1 1 110px; min-width:0; }
.fw-invite{ position:fixed; inset:0; z-index:9000; background:rgba(20,16,40,.55); display:flex; align-items:center; justify-content:center; padding:16px; }
.fw-invite[hidden]{ display:none; }
.fw-inv-box{ background:var(--surface, #fff); color:var(--text, #1e1b2e); border-radius:22px; padding:22px 18px; max-width:380px; width:100%; text-align:center; box-shadow:0 24px 60px -20px rgba(0,0,0,.45); }
.fw-inv-emoji{ font-size:40px; }
.fw-inv-box h2{ margin:6px 0 4px; }
.fw-inv-box .btn{ display:block; width:100%; margin-top:10px; padding:12px; text-align:left; }
.fw-inv-box .btn small{ display:block; font-weight:400; opacity:.85; margin-top:2px; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .fw-chip{ background:#173b24; border-color:#2a5f3b; color:#8fe0a8; } }
:root[data-theme="dark"] .fw-chip{ background:#173b24; border-color:#2a5f3b; color:#8fe0a8; }

/* ===== v117: 🚚 Umzugs-Assistent ===== */
.mv-entry{ margin:0 0 12px; }
.mv-steps{ display:flex; gap:8px; justify-content:center; margin:2px 0 10px; }
.mv-steps span{ width:30px; height:30px; border-radius:50%; display:grid; place-items:center; font-weight:700; font-size:14px; background:var(--surface-2, rgba(127,90,240,.08)); color:var(--text-muted, #5d5875); }
.mv-steps span.on{ background:var(--accent, #6c4ab6); color:#fff; }
.mv-steps span.done{ background:#2e9e75; color:#fff; }
.mv-src{ display:flex; flex-wrap:wrap; gap:6px; margin:4px 0 8px; }
.mv-src .chip{ min-height:44px; padding:6px 12px; }
.mv-src .chip[aria-pressed="true"]{ background:var(--accent, #6c4ab6); color:#fff; border-color:transparent; }
.mv-mode{ margin:4px 0 6px; }
.mv-how{ margin:6px 0 10px 20px; padding:0; line-height:1.55; }
.mv-box{ padding:10px 12px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); margin:8px 0; line-height:1.5; }
.mv-warn{ background:#fff8e8; border-left:4px solid #e39a12; color:#5a4300; }
.mv-ex{ font-size:13px; opacity:.85; margin:4px 0 8px; font-style:italic; }
.mv-prev > div{ margin:3px 0; }
.mv-list{ margin-top:8px; }
.mv-done{ text-align:center; padding:12px 4px; }
.mv-big{ font-size:44px; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .mv-warn{ background:#3a2e10; color:#ffe2a0; } }
:root[data-theme="dark"] .mv-warn{ background:#3a2e10; color:#ffe2a0; }

/* ===== v118: ✨ Hilfe-Stufen & Mila ===== */
.mh-bar{ margin:0 0 10px; }
.mh-row{ display:flex; gap:6px; }
.mh-row .text-input{ flex:1; min-width:0; }
.mh-row .btn{ min-width:48px; }
.mh-tips{ padding:10px 12px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); line-height:1.5; }
.mh-tips ul{ margin:6px 0 0 18px; padding:0; }
.mh-mini{ display:flex; justify-content:flex-end; }
.mh-seg{ margin:4px 0 6px; flex-wrap:wrap; }
.mila-plan{ margin:10px 0; padding:10px 12px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); border-left:4px solid var(--accent, #6c4ab6); }
.mila-row{ display:flex; gap:8px; margin:5px 0; line-height:1.45; }
.mila-row > span:first-child{ flex:0 0 22px; text-align:center; }
.mila-ex{ display:flex; flex-wrap:wrap; gap:6px; margin:4px 0 8px; }
.mila-ex .chip{ min-height:44px; text-align:left; white-space:normal; }
.mila-done{ margin-top:10px; padding:10px 12px; border-radius:12px; background:#e9f7f1; color:#14523c; display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
body.mh-auto #newEventSheet{ visibility:hidden; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .mila-done{ background:#143a2d; color:#c4f1df; } }
:root[data-theme="dark"] .mila-done{ background:#143a2d; color:#c4f1df; }

/* ===== v119: 🧪 Beta-Paket ===== */
.fb-kinds{ display:flex; flex-wrap:wrap; gap:6px; margin:2px 0 10px; }
.fb-kinds .chip{ min-height:44px; padding:6px 12px; }
.fb-kinds .chip[aria-pressed="true"]{ background:var(--accent, #6c4ab6); color:#fff; border-color:transparent; }
.fb-tech{ display:flex; gap:10px; align-items:flex-start; margin:10px 0; line-height:1.4; cursor:pointer; }
.fb-tech input{ width:22px; height:22px; margin-top:2px; flex:0 0 auto; }
.fb-tech small{ display:block; color:var(--text-muted, #5d5875); font-size:12px; margin-top:2px; }
.fb-alt{ text-align:center; margin-top:10px; font-size:13px; }
.fb-done{ text-align:center; padding:10px 4px; }
.fb-item{ border-radius:12px; padding:10px 12px; margin:8px 0; background:var(--surface-2, rgba(127,90,240,.07)); border-left:4px solid var(--accent, #6c4ab6); }
.fb-item.fb-erledigt{ opacity:.6; border-left-color:#2e9e75; }
.fb-item.fb-gelesen{ border-left-color:#9b8fc0; }
.fb-meta{ font-size:12px; color:var(--text-muted, #5d5875); }
.fb-msg{ margin:6px 0; white-space:pre-wrap; }
.fb-item pre{ white-space:pre-wrap; font-size:11px; max-height:180px; overflow:auto; }
.fb-st{ display:flex; gap:6px; flex-wrap:wrap; }
.err-bar{ bottom:calc(140px + env(safe-area-inset-bottom)); }
.beta-row{ display:flex; gap:8px; margin-bottom:6px; }
.beta-badge{ border:0; border-radius:10px; padding:1px 8px; font:inherit; font-size:11px; font-weight:700; background:#fff1c9; color:#6b4b00; cursor:pointer; }
.load-line{ margin-top:4px; font-size:11px; }
.fs-head{ display:flex; justify-content:space-between; align-items:center; gap:8px; }
.fs-head h3{ margin:0; font-size:15px; }
.fs-bar{ height:6px; border-radius:3px; background:var(--surface-2, rgba(127,90,240,.12)); margin:8px 0 6px; overflow:hidden; }
.fs-bar span{ display:block; height:100%; background:#2e9e75; border-radius:3px; transition:width .3s; }
.fs-step{ display:flex; align-items:center; gap:10px; width:100%; min-height:44px; padding:6px 4px; background:none; border:0; border-bottom:1px solid var(--border, rgba(0,0,0,.06)); font:inherit; color:inherit; text-align:left; cursor:pointer; }
.fs-step:last-child{ border-bottom:0; }
.fs-step.done{ color:var(--text-muted, #5d5875); cursor:default; }
.fs-step.done > span:nth-child(2){ text-decoration:line-through; }
.fs-ck{ width:22px; height:22px; border-radius:50%; border:2px solid var(--accent, #6c4ab6); display:grid; place-items:center; font-size:12px; flex:0 0 auto; }
.fs-step.done .fs-ck{ background:#2e9e75; border-color:#2e9e75; color:#fff; }
.fs-go{ margin-left:auto; color:var(--accent, #6c4ab6); font-weight:700; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .beta-badge{ background:#4a3a10; color:#ffe2a0; } }
:root[data-theme="dark"] .beta-badge{ background:#4a3a10; color:#ffe2a0; }

/* ===== v120: 🏆 Freundes-Meisterschaft ===== */
.fm-start{ margin-top:8px; }
.fm-block{ margin-top:10px; padding:10px 12px; border-radius:12px; background:linear-gradient(135deg, rgba(255,214,102,.18), rgba(127,90,240,.07)); }
.fm-lead{ margin:3px 0; }
.fm-esel{ color:var(--text-muted, #5d5875); }
.fm-chips{ display:flex; flex-wrap:wrap; gap:6px; margin:6px 0; }
.fm-chips .chip{ min-height:40px; }
.fm-chips .chip[aria-pressed="true"]{ background:var(--accent, #6c4ab6); color:#fff; border-color:transparent; }
.fm-pts{ flex-wrap:wrap; }
.fm-table{ width:100%; border-collapse:collapse; margin:6px 0; font-size:14px; }
.fm-table th{ text-align:left; font-size:12px; color:var(--text-muted, #5d5875); font-weight:600; padding:4px; }
.fm-table td{ padding:6px 4px; border-top:1px solid var(--border, rgba(0,0,0,.06)); }
.fm-table td:nth-child(n+3), .fm-table th:nth-child(n+3){ text-align:right; }
.fm-table tr.fm-k td{ font-weight:700; }
.fm-table tr.fm-e td{ color:var(--text-muted, #5d5875); }
.fm-crown{ text-align:center; padding:6px 4px 10px; }
.fm-crown h2{ font-size:20px; margin:6px 0; }
.fm-big{ font-size:56px; line-height:1; }

/* ===== v121: 🥂 Party & Ausflug planen ===== */
.pt-block{ padding:2px 0 8px; }
.pt-block + .pt-block{ border-top:1px solid var(--border, rgba(0,0,0,.06)); padding-top:10px; }
.pt-head{ display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
.pt-secret{ font-size:12px; padding:1px 8px; border-radius:10px; background:#fff1c9; color:#6b4b00; }
.pt-steps{ margin:6px 0; }
.pt-step{ display:flex; align-items:center; gap:8px; min-height:40px; }
.pt-step.done .pt-st{ text-decoration:line-through; color:var(--text-muted, #5d5875); }
.pt-ck{ width:28px; height:28px; flex:0 0 28px; border-radius:50%; border:2px solid var(--accent, #6c4ab6); background:none; color:#fff; font:inherit; font-size:14px; cursor:pointer; display:grid; place-items:center; padding:0; }
.pt-ck[aria-pressed="true"]{ background:#2e9e75; border-color:#2e9e75; }
.pt-st{ flex:1; min-width:0; }
.pt-who{ font-size:12px; color:var(--text-muted, #5d5875); }
.pt-step-edit{ display:flex; gap:6px; margin:0 0 8px 36px; }
.pt-step-edit .text-input{ flex:1; min-width:0; padding-top:6px; padding-bottom:6px; }
.pt-tiles{ display:grid; grid-template-columns:repeat(auto-fill, minmax(96px, 1fr)); gap:8px; margin:4px 0 10px; }
.pt-tile{ border:0; border-radius:14px; padding:10px 6px; background:var(--surface-2, rgba(127,90,240,.08)); font:inherit; color:inherit; cursor:pointer; display:flex; flex-direction:column; align-items:center; gap:2px; min-height:64px; }
.pt-tile span{ font-size:22px; }
.pt-tile[aria-pressed="true"]{ background:var(--accent, #6c4ab6); color:#fff; }
.pt-secret-row{ display:flex; gap:10px; align-items:flex-start; margin:8px 0; padding:10px 12px; border-radius:12px; background:#fff8e2; cursor:pointer; }
.pt-secret-row input{ width:22px; height:22px; margin-top:2px; }
.pt-secret-row small{ display:block; font-size:12px; color:#6b5a2a; margin-top:2px; }
.pt-chips{ display:flex; flex-wrap:wrap; gap:6px; margin:4px 0 8px; }
.pt-chips .chip[aria-pressed="true"]{ background:var(--accent, #6c4ab6); color:#fff; border-color:transparent; }
.pt-preview{ margin:4px 0 10px 18px; padding:0; line-height:1.55; }
.pt-tabs{ margin:2px 0 10px; }
.pt-guests{ display:flex; flex-wrap:wrap; gap:6px; margin:6px 0; }
.pt-guest{ display:flex; gap:2px; }
.pt-g-ja{ background:#e9f7f1 !important; color:#14523c !important; }
.pt-g-nein{ opacity:.55; text-decoration:line-through; }
.pt-cost{ display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:36px; border-bottom:1px solid var(--border, rgba(0,0,0,.06)); }
.pt-cost > span{ flex:1; min-width:0; }
.pt-cost-new{ display:grid; grid-template-columns:64px 1fr 84px; gap:6px; margin:8px 0; }
.pt-cost-new #ptCWho{ grid-column:1 / 3; }
.pt-sum{ margin:8px 0; padding:6px 12px; border-radius:12px; background:var(--surface-2, rgba(127,90,240,.07)); }
.pt-sum .pt-cost:last-child{ border-bottom:0; }
.pt-plus{ color:#1f7a5a; } .pt-minus{ color:#9a3b3b; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .pt-secret, :root:not([data-theme="light"]) .pt-secret-row{ background:#3a2e10; color:#ffe2a0; } :root:not([data-theme="light"]) .pt-secret-row small{ color:#e8d39a; } :root:not([data-theme="light"]) .pt-g-ja{ background:#143a2d !important; color:#c4f1df !important; } }
:root[data-theme="dark"] .pt-secret, :root[data-theme="dark"] .pt-secret-row{ background:#3a2e10; color:#ffe2a0; }
:root[data-theme="dark"] .pt-secret-row small{ color:#e8d39a; }
:root[data-theme="dark"] .pt-g-ja{ background:#143a2d !important; color:#c4f1df !important; }

/* ===== v121.2: Arbeitsrhythmus der Familie – alle Zeilen mit gleich breiten Spalten (🟢 genau unter dem Tag) ===== */
#familyShiftsBody table{ table-layout:fixed; width:100%; border-collapse:separate; }
#familyShiftsBody th, #familyShiftsBody td{ width:calc(100% / 7); overflow:hidden; }
#familyShiftsBody .shift-block{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* ===== v121.2: ✏️ Umbenennen nur für mich / für alle ===== */
.rn-btns{ display:flex; gap:8px; flex-wrap:wrap; }
.rn-btns .btn{ flex:1; min-width:130px; }
.rn-default{ display:inline-block; margin-top:4px; font-size:12.5px; }
/* v122: Leiste „Gemeinsam“, Party-Karte, Phil je Anlass */
.gm-bar{ margin:0 0 14px; }
.gm-h{ font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--text-muted); margin:0 4px 6px; }
.gm-btns{ display:grid; grid-template-columns:repeat(auto-fit, minmax(76px, 1fr)); gap:8px; }
.gm-btn{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; min-height:68px; padding:8px 6px; border-radius:16px; border:1px solid var(--border, rgba(0,0,0,.08)); background:var(--surface, #fff); color:var(--text); font:inherit; font-size:12.5px; font-weight:600; line-height:1.2; text-align:center; cursor:pointer; }
.gm-btn > span{ font-size:22px; line-height:1; }
.gm-btn:active{ transform:scale(.97); }
.pt-when{ color:var(--text-muted); font-weight:500; }
.pt-bar{ height:6px; border-radius:6px; background:var(--border, rgba(0,0,0,.08)); overflow:hidden; margin:6px 0 4px; }
.pt-bar > i{ display:block; height:100%; background:#e0a526; border-radius:6px; }
.pt-next{ display:block; width:100%; text-align:left; margin:6px 0 2px; white-space:normal; }
.pt-open{ width:100%; margin-top:6px; }
.pt-phil-row{ margin-bottom:4px; }
.pt-phil-res{ margin-top:10px; }
.pt-phil-res .pt-cost{ flex-wrap:wrap; }
.pt-free{ flex-basis:100%; color:var(--text-muted); font-size:12px; }
/* v122: Phil-Fenster, „Zeit zu zweit“ als Zeile */
.gm-duo{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px 10px; padding:10px 12px; margin:0 0 8px; border-radius:14px; background:var(--accent-soft, #f1ecf8); font-size:13.5px; font-weight:600; }
.gm-duo-btns{ display:flex; align-items:center; gap:8px; }
.pf-intro{ background:var(--accent-soft, #f1ecf8); border-radius:14px; padding:10px 12px; margin:0 0 10px; font-size:13.5px; }
.pf-intro ol{ margin:6px 0 8px 18px; padding:0; }
.pf-bub{ background:var(--accent-soft, #f1ecf8); border-radius:14px; padding:10px 12px; margin:0 0 8px; font-size:14px; line-height:1.45; }
.pf-sum{ display:flex; flex-wrap:wrap; gap:6px; margin:6px 0 4px; }
.pf-sum .chip{ font-weight:600; }
.pf-row{ display:flex; flex-wrap:wrap; gap:6px; margin:6px 0 8px; }
.pf-own{ margin-top:6px; }
.pf-tip{ background:#e3f4ea; border-radius:12px; padding:8px 10px; font-size:13px; margin:6px 0; }
.pf-dots{ color:var(--accent, #5b3fa8); font-size:12.5px; margin:0 0 6px; }
.pf-res{ margin:10px 0 4px; }
.pf-slot{ display:flex; justify-content:space-between; align-items:center; gap:8px; padding:9px 2px; border-top:1px solid var(--border, rgba(0,0,0,.08)); font-size:14px; font-weight:600; }
.pf-slot:first-child{ border-top:0; }
.pf-ok{ color:var(--success, #2a8a4a); font-weight:600; white-space:nowrap; }
.pf-no{ color:#b5482f; font-weight:600; text-align:right; }
.pf-foot{ display:flex; justify-content:space-between; margin-top:10px; }
.pf-offer{ margin-top:8px; }
/* v122.1: Entschlacken – aufklappbare Teile, leere Karten als Einzeiler, Mein Dienst */
details.ds-grp{ border:1px solid var(--border, rgba(0,0,0,.08)); border-radius:16px; margin:0 0 10px; background:var(--surface, #fff); }
details.ds-grp > summary{ list-style:none; display:flex; justify-content:space-between; align-items:center; padding:14px 16px; font-weight:700; font-size:15px; cursor:pointer; }
details.ds-grp > summary::-webkit-details-marker{ display:none; }
details.ds-grp[open] > summary .opt-chev{ transform:rotate(90deg); }
details.ds-grp > .ds-body{ padding:0 16px 14px; }
.card.ds-mini{ padding-top:12px; padding-bottom:12px; }
.card.ds-mini:not(:has(form:not([hidden]), [id$="Form"]:not([hidden]))) > *:not(.card-title):not(.ds-mini-add):not(.cm-gear){ display:none !important; }   /* offenes Formular zeigt die Karte wieder ganz */
.card.ds-mini .card-title{ margin-bottom:0; cursor:pointer; }
.ds-mini-add{ margin-top:4px; }
.md-card .md-legend{ margin-top:10px; }
.md-card .md-legend .shift-legend{ font-size:12px; gap:10px; }
  /* v123: Erstanmeldung */
  .su-opt{ font-weight:400; font-size:12px; color:var(--text-muted); }
  .su-hint{ font-size:12px; color:var(--text-muted); margin-top:4px; }
  .su-row{ display:flex; gap:8px; align-items:center; }
  .su-row .text-input{ flex:1; min-width:0; }
  .su-kid{ margin-bottom:6px; } .su-kid input[type=date]{ flex:0 0 150px; }
  .su-lbl{ font-weight:700; font-size:14px; margin:4px 0 6px; }
  .su-sub{ margin-top:12px; } .su-sub .chip-row{ display:flex; flex-wrap:wrap; gap:6px; }
  #suStep .su-sub .chip[aria-pressed="true"], #meAbout .chip[aria-pressed="true"]{ background:var(--accent); color:#fff; border-color:var(--accent); }
  .su-help{ display:grid; gap:10px; }
  .su-help button{ border:2px solid var(--border); background:var(--surface); border-radius:16px; padding:12px 14px; cursor:pointer; text-align:left; font:inherit; color:inherit; display:grid; grid-template-columns:34px 1fr; column-gap:8px; align-items:center; }
  .su-help button span{ grid-row:span 2; font-size:24px; } .su-help button small{ color:var(--text-muted); font-size:12px; }
  .su-help button[aria-pressed="true"]{ border-color:var(--accent); background:color-mix(in srgb, var(--accent) 10%, var(--surface)); }
  .me-about{ border:1px solid var(--border); border-radius:14px; padding:8px 12px; margin:0 0 12px; }
  .me-about .me-h{ font-weight:700; margin-bottom:6px; } .me-about .me-h small{ font-weight:400; color:var(--text-muted); margin-left:4px; }
  .me-about .chip-row{ display:flex; flex-wrap:wrap; gap:6px; }
  /* v123.1: Wichteln & Hauswichtel */
  .wt-mine{ text-align:center; background:var(--surface-2, #F1ECF8); border-radius:16px; padding:14px; margin-bottom:12px; }
  .wt-gift{ font-size:48px; line-height:1; margin-bottom:6px; }
  .wt-who{ font-family:var(--font-display, inherit); font-size:28px; font-weight:800; margin:2px 0 8px; overflow-wrap:anywhere; }
  .wt-wish{ text-align:left; background:var(--surface); border-radius:12px; padding:8px 10px; margin:8px 0; white-space:pre-wrap; overflow-wrap:anywhere; }
  .wt-list{ display:grid; gap:6px; margin-bottom:8px; }
  .wt-p{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; border-bottom:1px solid var(--border); padding:6px 0; }
  .wt-p > span{ flex:1; min-width:0; overflow-wrap:anywhere; }
  .wt-done{ background:color-mix(in srgb, #2E8B57 12%, var(--surface)); border-radius:12px; padding:8px 12px; margin:10px 0; font-weight:700; }
  .wt-ex{ margin:8px 0; } .wt-ex summary{ cursor:pointer; font-size:13.5px; color:var(--text-muted); }
  .hw-card .hw-head{ display:flex; justify-content:space-between; align-items:baseline; gap:8px; flex-wrap:wrap; }
  .hw-card .hw-head small{ color:var(--text-muted); font-size:12px; }
  .hw-tonight{ background:var(--surface-2, #F1ECF8); border-radius:12px; padding:10px 12px; margin:8px 0; }
  .hw-tonight small{ display:block; color:var(--text-muted); font-size:12px; margin-bottom:2px; }
  .hw-tonight .chip{ margin-top:6px; }
  .hw-plan{ display:grid; gap:6px; }
  .hw-row{ display:flex; align-items:center; gap:8px; } .hw-row .text-input{ flex:1; min-width:0; }
  .hw-row.done .text-input{ text-decoration:line-through; opacity:.6; }
  .hw-n{ flex:0 0 28px; height:28px; border-radius:50%; background:var(--accent); color:#fff; display:grid; place-items:center; font-weight:800; font-size:13px; }
  .wt-add{ display:flex; gap:8px; margin:6px 0; } .wt-add .text-input{ flex:1; min-width:0; } .wt-add .btn{ flex:0 0 52px; }
  /* v123.3: Druck-Zentrale */
  .dz-areas{ display:flex; overflow-x:auto; gap:4px; margin-bottom:10px; }
  .dz-areas button{ flex:1 0 auto; white-space:nowrap; }
  .dz-thumbs{ display:grid; grid-template-columns:repeat(6, 1fr); gap:4px; margin:6px 0; }
  .dz-thumbs img{ width:100%; aspect-ratio:1; object-fit:cover; border-radius:8px; }
  .dz-offer{ margin-top:6px; }
  /* v123.2: Kindergeburtstag */
  .kg-mottos{ display:flex; flex-wrap:wrap; gap:6px; }
  .kg-games{ display:grid; gap:6px; }
  .kg-game{ border:1px solid var(--border); border-radius:12px; padding:8px 10px; }
  .kg-game summary{ cursor:pointer; } .kg-game summary small{ color:var(--text-muted); font-size:12px; margin-left:4px; } .kg-game p{ margin:6px 0 0; font-size:14px; }
  .kg-plan{ display:grid; gap:4px; margin-bottom:6px; } .kg-plan b{ font-variant-numeric:tabular-nums; margin-right:4px; }
  .kg-par{ display:grid; gap:8px; } .kg-p{ display:grid; grid-template-columns:1fr 1fr; gap:6px; border-bottom:1px solid var(--border); padding-bottom:8px; }
  .kg-p b{ grid-column:1 / -1; } .kg-p .text-input{ min-width:0; }
  .kg-alg{ background:color-mix(in srgb, #B7791F 14%, var(--surface)); border-radius:12px; padding:8px 12px; margin:8px 0; font-size:14px; }
  /* v125: Wintersport, Fahrdienst, Abenteuer */
  .ws-find{ display:flex; gap:8px; } .ws-find .text-input{ flex:1; min-width:0; }
  .ws-days{ display:grid; gap:4px; margin:8px 0; }
  .ws-day{ display:grid; grid-template-columns:76px 1fr auto auto; gap:6px; align-items:center; font-size:14px; border-bottom:1px solid var(--border); padding:4px 0; }
  .ws-day span:nth-child(3), .ws-day span:nth-child(4){ color:var(--text-muted); font-size:12px; white-space:nowrap; }
  .ab-note{ background:color-mix(in srgb, #B7791F 14%, var(--surface)); border-radius:12px; padding:8px 12px; margin-bottom:8px; font-size:14px; font-weight:600; }
  .ab-sports{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:6px; }
  .fd-card .fd-head{ display:flex; justify-content:space-between; align-items:baseline; gap:8px; flex-wrap:wrap; margin-bottom:6px; } .fd-card .fd-head small{ color:var(--text-muted); }
  .fd-row{ display:grid; grid-template-columns:auto 1fr auto; gap:8px; align-items:center; padding:6px 0; border-bottom:1px solid var(--border); font-size:14px; }
  .fd-when{ font-variant-numeric:tabular-nums; color:var(--text-muted); white-space:nowrap; font-size:13px; } .fd-what{ min-width:0; overflow-wrap:anywhere; }
  .fd-open .fd-what{ font-weight:700; } .fd-who{ white-space:nowrap; font-size:13px; }

/* v125.1 💡 Mila überall */
.mila-say{display:flex;align-items:center;gap:8px;width:100%;margin-top:10px;padding:8px 10px;border:1px dashed var(--border);border-radius:12px;background:transparent;color:var(--text-muted);font:inherit;font-size:13px;text-align:left;cursor:pointer;}
.mila-say:hover,.mila-say:focus-visible{border-style:solid;color:var(--text);}
.mila-say .ms-t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mila-say i{font-style:normal;opacity:.8;}
.ms-inline{display:flex;gap:6px;margin-top:10px;}
.ms-inline .text-input{flex:1;min-width:0;}
.mila-line{display:flex;align-items:flex-start;flex-wrap:wrap;gap:6px 8px;margin:0 0 12px;padding:10px 12px;border-radius:14px;background:linear-gradient(135deg, rgba(108,74,182,.10), rgba(46,155,111,.08));font-size:13px;line-height:1.4;}
.mila-line .ml-av{font-size:18px;line-height:1;}
.mila-line .ml-t{flex:1 1 200px;min-width:0;}
.mila-line .ml-a{display:flex;gap:6px;flex-wrap:wrap;}
.mg-steps{display:flex;gap:6px;justify-content:center;margin:4px 0 10px;}
.mg-dot{width:10px;height:10px;border-radius:50%;background:var(--border);}
.mg-dot.done{background:var(--accent);}
.mg-dot.cur{background:var(--accent);box-shadow:0 0 0 3px rgba(80,160,120,.25);}
.sb-try{margin:12px 0 4px;}
.sb-try .mila-ex{margin-top:6px;}
@media print{.mila-say,.ms-inline,.mila-line{display:none !important;}}
.sp-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%;margin-top:10px;padding:8px 10px;border-radius:12px;border:1px solid var(--border);background:var(--accent-soft);color:var(--text);font:inherit;font-size:13px;text-align:left;cursor:pointer;}
.sp-line > span:first-child{flex:1 1 180px;min-width:0;}
.sp-mini{width:60px;height:6px;border-radius:3px;background:var(--border);overflow:hidden;}
.sp-mini i{display:block;height:100%;background:var(--accent);}
.sp-bar{height:8px;border-radius:4px;background:var(--border);overflow:hidden;margin:2px 0 12px;}
.sp-bar span{display:block;height:100%;background:var(--accent);transition:width .3s;}
.sp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.sp-step{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface);}
.sp-step.done .sp-t{color:var(--text-muted);text-decoration:line-through;}
.sp-step .sp-t{flex:1;min-width:0;font-size:14px;}
.sp-chk input{width:20px;height:20px;accent-color:var(--accent);}
.sp-hits{display:flex;flex-direction:column;gap:8px;margin-top:10px;}
.qh-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-left:4px;padding:0;border-radius:50%;border:1px solid var(--border);background:var(--accent-soft);color:var(--accent);font:inherit;font-size:12px;font-weight:700;line-height:1;cursor:pointer;vertical-align:middle;text-transform:none;}
.qh-box{margin:4px 0 8px;padding:8px 10px;border-radius:10px;background:var(--accent-soft);font-size:13px;line-height:1.4;}
@media print{.sp-line,.qh-btn,.qh-box{display:none !important;}}

/* v125.1b 🧝 Hauswichtel · 👋 Willkommen · 💡 Fehler · 📊 Fortschritt */
.hw-opts{display:flex;flex-direction:column;gap:6px;margin:6px 0;}
.hw-opt{display:flex;justify-content:space-between;gap:8px;align-items:center;width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;font-size:13px;text-align:left;cursor:pointer;}
.hw-opt:hover,.hw-opt:focus-visible{border-color:var(--accent);}
.hw-opt small,.hw-need{color:var(--text-muted);font-size:11px;white-space:nowrap;}
.hw-need{display:block;white-space:normal;margin-top:2px;}
.hw-pick-h{font-size:12px;color:var(--text-muted);margin-top:4px;}
.hw-tabs{margin:0 0 10px;}
.hw-tabs button span{font-size:12px;}
.hw-filt{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px;}
.hw-row{display:block;border:1px solid var(--border);border-radius:12px;padding:8px 10px;margin-bottom:8px;background:var(--surface);}
.hw-row.done{opacity:.7;}
.hw-day{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:13px;}
.hw-day small{color:var(--text-muted);}
.hw-chosen{display:flex;align-items:center;gap:8px;font-size:13px;}
.hw-chosen > span:first-child{flex:1;min-width:0;}
.hw-acts{display:flex;gap:6px;}
.hw-ideas{display:flex;flex-direction:column;gap:6px;}
.hw-idea{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--border);border-radius:12px;font-size:13px;}
.hw-idea > span{flex:1;min-width:0;}
.hw-idea small{display:block;color:var(--text-muted);font-size:11px;}
.hw-tpls{display:flex;flex-direction:column;gap:8px;}
.wl-card .wl-h{display:flex;align-items:center;gap:8px;}
.wl-card .wl-h b{flex:1;}
.wl-next{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0;}
.wl-next span{flex:1 1 200px;font-size:14px;}
.mila-err{position:fixed;left:12px;right:12px;top:calc(12px + env(safe-area-inset-top,0px));z-index:2000;display:flex;align-items:flex-start;flex-wrap:wrap;gap:6px 8px;padding:10px 12px;border-radius:14px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);font-size:13px;line-height:1.4;max-width:560px;margin:0 auto;}
.mila-err .me-t{flex:1 1 200px;min-width:0;}
.pg-box{margin:0 0 12px;padding:10px 12px;border-radius:14px;background:var(--accent-soft);}
.pg-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;}
.pg-h small{color:var(--text-muted);}
.pg-open{display:flex;flex-wrap:wrap;gap:6px;}
@media print{.mila-err,.pg-box{display:none !important;}}

/* v125.2 ✈️ Reisen · ⛴️ Anreise · 🚴 Radtour */
.rs-tabs{margin:0 0 10px;}
.rs-tabs button span{font-size:12px;}
.rs-sum{padding:10px 12px;border-radius:14px;background:var(--accent-soft);margin:0 0 10px;font-size:14px;}
.rs-count{margin-top:4px;font-size:13px;color:var(--text-muted);}
.rs-legs{display:flex;flex-direction:column;gap:8px;margin:6px 0 10px;}
.rs-leg{border:1px solid var(--border);border-radius:14px;padding:10px 12px;background:var(--surface);}
.rs-leg-h{display:flex;align-items:center;gap:8px;}
.rs-leg-h b{flex:1;min-width:0;}
.rs-ic{font-size:20px;}
.rs-leg-t{font-size:13px;color:var(--text-muted);margin:4px 0;}
.rs-leg-n{font-size:13px;margin:2px 0 4px;}
.rs-wind{font-size:13px;margin:2px 0 4px;}
.rs-modes{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px;}
.rs-doc{border:1px solid var(--border);border-radius:14px;padding:10px 12px;margin-bottom:8px;}
.rs-doc-r{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;padding:4px 0;font-size:13px;}
.rs-doc-r label{flex:1 1 180px;}
.rs-doc-r .text-input{width:150px;padding:6px 8px;}
.rs-doc-r small{flex-basis:100%;color:var(--danger);}
.rs-doc-r.warn label{color:var(--danger);}
.rs-home{display:flex;flex-direction:column;gap:6px;}
.rs-home-r{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border);font-size:14px;}
.rs-home-r label{flex:1;}
.rs-home-r.done label{color:var(--text-muted);text-decoration:line-through;}

/* v125.1c 📖 Anleitungen · 🧩 Kacheln · 🧭 Wegweiser */
.anl-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:12px 14px;margin:0 0 10px;}
.anl-card h3{margin:0 0 4px;font-size:15px;}
.anl-card p{margin:0;color:var(--text-muted);font-size:14px;line-height:1.45;}
.anl-sec{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:12px 2px 6px;}
.anl-steps{padding:4px 14px;}
.anl-step{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--border);}
.anl-step:last-child{border-bottom:0;}
.anl-step b{display:block;font-size:14px;}
.anl-step small{display:block;color:var(--text-muted);font-size:12.5px;margin:2px 0 4px;}
.anl-n{flex:0 0 24px;height:24px;border-radius:50%;background:var(--accent);color:var(--on-accent,#fff);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.anl-row{display:flex;gap:8px;padding:6px 0;font-size:14px;line-height:1.4;}
.anl-ex{font-size:14px;line-height:1.45;background:var(--accent-soft);}
.anl-faq summary{cursor:pointer;font-weight:600;font-size:14px;padding:6px 0;}
.anl-faq p{margin:0 0 6px;color:var(--text-muted);font-size:13.5px;}
.anl-chip{margin:0 0 10px;}
.wt2-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:6px 0 8px;}
.wt2-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:10px 10px 10px 12px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);font:inherit;cursor:pointer;}
.wt2-tile[aria-pressed="true"]{border:2px solid var(--accent);padding:9px 9px 9px 11px;}
.wt2-e{font-size:22px;line-height:1;}
.wt2-tile b{font-size:13.5px;}
.wt2-tile small{font-size:11.5px;color:var(--text-muted);line-height:1.35;}
.wt2-i{position:absolute;top:6px;right:8px;font-size:14px;opacity:.75;}
.wt2-hidden{display:none !important;}
@media print{.anl-chip{display:none !important;}}
/* v125.5 🏃 Mein Sport */
.sx-now{background:linear-gradient(135deg,var(--accent),#8E6BD8);color:#fff;border-radius:14px;padding:10px 12px;margin:8px 0;}
.sx-now small{display:block;font-size:12px;opacity:.88;}
.sx-now b{display:block;font-size:15px;margin:2px 0;}
.sx-tabs{margin:8px 0 6px;}
.sx-tabs button{font-size:12.5px;white-space:nowrap;}
.sx-week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:6px 0;}
.sx-d{border:1px solid var(--border);border-radius:10px;text-align:center;padding:4px 0;font-size:11px;color:var(--text-muted);}
.sx-d b{display:block;color:var(--text);font-size:13px;}
.sx-d.t{border-color:var(--accent);background:var(--accent-soft,rgba(108,74,182,.10));}
.sx-d.ok span{color:var(--ok,#2E9B6F);font-weight:700;}
.sx-sports{margin:6px 0;}
.sx-btns{display:flex;gap:8px;margin-top:8px;}
.sx-btns .btn{flex:1;}
.sx-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 8px;}
.sx-tile{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:9px 4px;font-size:12px;font-weight:600;line-height:1.25;color:var(--text);cursor:pointer;}
.sx-tile span{display:block;font-size:22px;margin-bottom:2px;}
.sx-tile[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-soft,rgba(108,74,182,.12));}
.sx-tog{display:flex;gap:8px;align-items:center;margin:8px 0;font-size:14px;}
.sx-warn{background:rgba(201,130,43,.10);border-radius:10px;padding:8px 10px;}
/* v125.5 🏟️ Mein Verein · 🎯 Hobby neu */
.vr-rsvp{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;}
.vr-rsvp > span{font-size:12.5px;opacity:.92;margin-right:4px;}
.sx-now .chip{background:rgba(255,255,255,.2);color:#fff;border-color:transparent;}
.sx-now .chip[aria-pressed="true"]{background:#fff;color:var(--accent);}
.hn-pod{display:flex;align-items:flex-end;justify-content:center;gap:8px;margin:8px 0 10px;}
.hn-pod > div{flex:1;max-width:110px;border-radius:12px 12px 0 0;color:#fff;text-align:center;padding:6px 4px;display:flex;flex-direction:column;justify-content:flex-end;}
.hn-pod em{font-style:normal;font-size:22px;}
.hn-pod b{font-size:13px;word-break:break-word;}
.hn-pod small{font-size:11px;opacity:.9;}
.hn-p1{min-height:118px;background:#C9A227;}
.hn-p2{min-height:96px;background:#8E98A5;}
.hn-p3{min-height:82px;background:#B07A45;}
.hn-pod .hn-empty{background:transparent;}
.hn-rules,.hn-house{margin:8px 0;border:1px solid var(--border);border-radius:12px;padding:8px 10px;}
.hn-rules summary,.hn-house summary{font-weight:700;cursor:pointer;}
.hn-rules p{font-size:13px;margin:6px 0;}
.hn-house textarea{margin:6px 0;width:100%;}
/* v125.5 🧳 Meine Reisen · 🌦️ Wetter-Baustein */
.mr-card .sx-now{background:linear-gradient(135deg,#2E8BC0,#3FB39A);}
.mr-leg{display:flex;gap:8px;align-items:flex-start;padding:6px 0;border-bottom:1px dashed var(--border);}
.mr-leg:last-of-type{border-bottom:0;}
.mr-leg b{display:block;font-size:13.5px;}
.mr-leg small{display:block;font-size:12px;}
.mr-ida{display:flex;gap:8px;align-items:flex-start;margin-top:8px;padding:8px 10px;border-radius:12px;background:color-mix(in srgb,#3FB39A 12%,transparent);font-size:13px;}
.mr-av{font-size:20px;line-height:1;}
.mr-ort .chip[aria-pressed="true"]{color:#D9435E;}
.mr-gk-res{margin:10px 0;padding:10px 12px;border-radius:12px;background:var(--surface-2,rgba(0,0,0,.04));font-size:13.5px;text-align:center;}
.mr-gk-res.ok{background:color-mix(in srgb,#3FB39A 18%,transparent);}
.wx-credit{font-size:11px;color:var(--text-muted);margin-top:6px;}
/* v125.6 🤝 Start & Teilen */
.st-inst{display:flex;gap:10px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:10px;margin:6px 0;font-size:13px;}
.st-inst.on{border:2px solid var(--accent);}
.st-ic{font-size:22px;width:30px;text-align:center;flex:0 0 30px;}
.st-res .row-item,.gs-list .row-item{display:flex;gap:10px;align-items:center;}
.st-t{flex:1;min-width:0;}.st-t b{display:block;font-size:14px;}.st-t small{display:block;color:var(--text-muted);font-size:12px;}
.lv-box{border:1px solid var(--border);border-radius:14px;padding:10px 12px;margin:8px 0;}
.lv-box b{font-size:14px;}
.lv-can{display:flex;flex-wrap:wrap;gap:2px 10px;margin-top:4px;font-size:12.5px;}
.lv-c.ok{color:var(--text);}.lv-c.no{color:var(--text-muted);}
.lv-tip{font-size:12px;background:var(--accent-soft,rgba(108,74,182,.1));border-radius:10px;padding:6px 10px;margin-top:6px;}
.pzs{margin:4px 0 12px;}.pzs-seg button{font-size:13px;}
.pzs-why p{margin:6px 0;font-size:14px;}
.nh-wrap{display:flex;align-items:center;gap:4px;}.nh-wrap .nh-item{flex:1;min-width:0;}.nh-why{flex:0 0 auto;}
.fs-sub{font-size:12px;color:var(--text-muted);margin:-2px 0 6px;}
/* v125.7 🛟 Hilfe-Seiten */
.hz-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.hz-tile{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:12px;font:inherit;color:inherit;cursor:pointer;}
.hz-tile .hz-e{font-size:26px;}.hz-tile b{font-size:14px;margin:4px 0 2px;}.hz-tile small{color:var(--text-muted);font-size:11.5px;line-height:1.35;}
.hz-q{border:1px solid var(--border);border-radius:14px;padding:10px 12px;margin:8px 0;}
.hz-q b{display:block;font-size:14px;}.hz-q p{margin:4px 0 6px;font-size:13px;color:var(--text-muted);}
.hz-check{display:flex;gap:10px;align-items:center;}.hz-check.bad b{color:var(--danger,#C0392B);}
.hz-row{display:flex;gap:8px;align-items:center;justify-content:space-between;font-size:13.5px;}
.wn-ver li .chip{margin-left:4px;font-size:11.5px;padding:3px 8px;}
.prv-bar{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:4px 0 8px;}.prv-pct{font-size:12px;color:var(--text-muted);margin-left:auto;}
.prv-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px;background:#e9e9ee;-webkit-overflow-scrolling:touch;}
.prv-wrap iframe{display:block;border:0;background:#fff;}
.prv-act{display:flex;flex-direction:column;gap:6px;margin-top:10px;}
.hn-sw{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;margin:4px 0 8px;scrollbar-width:none;}
.hn-swb{flex:0 0 auto;border:1px solid var(--border);border-radius:12px;padding:7px 10px;font:inherit;font-size:12.5px;font-weight:700;background:var(--surface);color:var(--text);text-align:left;cursor:pointer;}
.hn-swb small{display:block;font-weight:500;font-size:10.5px;color:var(--text-muted);}
.hn-swb[aria-pressed="true"]{background:var(--accent);color:#fff;border-color:var(--accent);}.hn-swb[aria-pressed="true"] small{color:#fff;opacity:.85;}
.hn-swn{border-style:dashed;}
.hn-rule{border:1px solid var(--border);border-radius:12px;padding:8px 10px;margin:6px 0;font-size:12.5px;background:color-mix(in srgb,#F2B84B 10%,transparent);}.hn-rule p{margin:2px 0;}
.ww-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:6px;}
.ww-tile{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid var(--border);border-radius:14px;padding:8px 4px;background:var(--surface);font:inherit;color:inherit;cursor:pointer;}
.ww-tile em{font-style:normal;font-size:24px;}.ww-tile b{font-size:12px;margin-top:2px;}.ww-tile small{font-size:10.5px;color:var(--text-muted);line-height:1.25;margin-top:2px;}
.ww-tile i{font-style:normal;font-size:9.5px;color:var(--accent);margin-top:2px;}
.gm-more{background:var(--accent-soft,rgba(108,74,182,.08));}
.mr-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0;}
.mr-tile{position:relative;display:flex;flex-direction:column;align-items:center;border:1px solid var(--border);border-radius:14px;padding:8px 2px;background:var(--surface);font:inherit;font-size:12px;font-weight:600;color:inherit;cursor:pointer;}
.mr-tile em{font-style:normal;font-size:22px;}.mr-tile[aria-pressed="true"]{border:2px solid var(--accent);}
.mr-tile i{position:absolute;top:-6px;right:-4px;font-style:normal;font-size:10px;font-weight:700;border-radius:10px;padding:1px 6px;background:var(--accent);color:#fff;}.mr-tile i.ok{background:var(--ok,#2E9B6F);}.mr-tile i.warn{background:var(--danger,#C0392B);}
/* v125.7 Prüfbericht */
.lr-pick{ display:flex; align-items:center; gap:8px; font-size:14px; color:var(--text-muted); margin:0 0 10px; }
.lr-pick select{ font:inherit; color:var(--text); padding:8px 10px; border-radius:10px; border:1px solid var(--border); background:var(--card, #fff); min-height:40px; }
.dd-donegrp{ margin-top:8px; border-top:1px dashed var(--border); padding-top:6px; }
.dd-donegrp > summary{ cursor:pointer; list-style:none; padding:10px 4px; color:#2e7d32; font-weight:600; font-size:14px; min-height:40px; }
.dd-donegrp > summary::-webkit-details-marker{ display:none; }
.dd-donegrp-h{ color:var(--text-muted); font-weight:400; font-size:13px; margin-left:6px; text-decoration:underline; }
/* v125.7 Prüfbericht: Tippflächen mindestens ~40 px – unsichtbar vergrößert, die Optik bleibt gleich */
.month-nav-btn, .dd-add, .dd-past, .dd-del-btn, .dd-done, .dd-cmt, .card-fold, .sub-nav-btn, .link-btn, .chip, .icon-btn.small, .qh-btn, .hh-seen, .sb-info { position:relative; }
.month-nav-btn::after, .dd-add::after, .dd-past::after, .dd-del-btn::after, .dd-done::after, .dd-cmt::after, .card-fold::after, .sub-nav-btn::after, .link-btn::after, .icon-btn.small::after, .cm-gear::after, .qh-btn::after, .sb-info::after { content:""; position:absolute; inset:-9px; }
.chip::after { content:""; position:absolute; inset:-7px -2px; }
.month-nav-btn, .dd-done { min-width:28px; min-height:28px; }
/* 💡 in jedem Fenster */
.sheet-help{ background:none; border:0; font-size:20px; width:40px; height:40px; border-radius:12px; cursor:pointer; margin-left:auto; flex:0 0 auto; }
.sheet-help:hover{ background:var(--accent-soft, rgba(124,92,255,.1)); }
.sheet-head .sheet-help + .sheet-close{ margin-left:4px; }
.sh-box{ background:var(--accent-soft, #f1ecff); border-radius:14px; padding:10px 12px; margin:0 0 12px; font-size:14px; line-height:1.45; }
.sh-box p{ margin:0 0 8px; }
.sh-btns{ display:flex; flex-wrap:wrap; gap:6px; }
small.fh{ display:block; font-size:12.5px; color:var(--text-muted); margin:3px 2px 10px; line-height:1.35; }
.cp-ta{ width:100%; font-size:15px; }
.cp-btns{ display:flex; gap:8px; margin-top:10px; } .cp-btns .btn{ flex:1; }
.hh-off{ margin-top:12px; } .hh-off > summary{ cursor:pointer; padding:12px 4px; color:var(--text-muted); font-weight:600; }
.pg-lbl{ font-size:13px; color:var(--text-muted); width:100%; }
.cm-what{ font-size:13.5px; color:var(--text-muted); margin:2px 4px 8px; line-height:1.4; }
.wo-box{ display:flex; flex-wrap:wrap; align-items:center; gap:6px 8px; background:var(--surface-2, #f6f4fb); border-radius:12px; padding:10px 12px; margin:10px 0; font-size:14px; } .wo-box b{ width:100%; } .wo-box span{ flex:1; min-width:60%; color:var(--text-muted); }

/* v125.8 🧩 Kacheln */
body.ui-kacheln #view-haupt > :not(#ktHome):not(.kt-show){ display:none !important; }
body.ui-kacheln #tabbar{ display:none; }
body.ui-kacheln .kt-show{ display:block !important; }
.kt-home{ margin:4px 0 16px; }
.kt-head{ display:flex; align-items:center; justify-content:space-between; margin:4px 2px 8px; font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--text-muted); }
.kt-head .chip{ text-transform:none; letter-spacing:0; }
.kt-grid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.kt-tile{ position:relative; display:flex; flex-direction:column; justify-content:flex-end; gap:2px; min-height:118px; padding:14px; border:0; border-radius:20px; color:#fff; text-align:left; cursor:pointer; font:inherit; box-shadow:0 2px 8px rgba(0,0,0,.08); }
.kt-tile .kt-ic{ font-size:28px; margin-bottom:auto; }
.kt-tile b{ font-size:16px; }
.kt-tile small{ font-size:12.5px; opacity:.92; line-height:1.3; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.kt-tile .kt-n{ position:absolute; top:12px; right:12px; background:rgba(255,255,255,.28); border-radius:999px; padding:2px 9px; font-size:12px; font-weight:700; }
.kt-tile.kt-wide{ grid-column:span 2; min-height:96px; background:var(--card, #fff); color:var(--text); border:1px solid var(--border); }
.kt-tile.kt-wide small{ color:var(--text-muted); opacity:1; }
.kt-tile.kt-wide .kt-n{ background:var(--accent-soft, #eee7f9); color:var(--text); }
.kt-new{ width:100%; margin-top:12px; }
.kt-bar{ position:sticky; top:0; z-index:20; display:flex; align-items:center; gap:10px; padding:8px 12px; background:var(--bg, #faf8fc); border-bottom:1px solid var(--border); }
.kt-bar #ktBarT{ font-weight:700; }
.kt-row{ display:flex; align-items:center; gap:6px; padding:8px 0; border-bottom:1px solid var(--border); }
.kt-row.kt-na{ opacity:.6; }
.kt-rn{ flex:1; font-size:14.5px; } .kt-rn small{ display:block; color:var(--text-muted); font-size:12px; }
.ui-pick{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:6px 0; }
.ui-opt{ border:2px solid var(--border); border-radius:14px; background:var(--card, #fff); padding:8px; text-align:center; cursor:pointer; font:inherit; color:var(--text); }
.ui-opt[aria-pressed="true"]{ border-color:var(--accent); background:var(--accent-soft, #f3effe); }
.ui-opt i{ display:block; height:56px; border-radius:8px; margin-bottom:6px; background:linear-gradient(#e4ddef 30%, #fff 30%); }
.ui-opt.ui-kacheln i{ background:repeating-linear-gradient(90deg, #6C4AB6 0 46%, #fff 46% 54%, #2E9B6F 54% 100%); }
.ui-opt.ui-einfach i{ background:linear-gradient(#cfc3ee 0 40%, #fff 40% 55%, #cfc3ee 55% 100%); }
.ui-opt b{ display:block; font-size:13px; } .ui-opt small{ display:block; font-size:11.5px; color:var(--text-muted); line-height:1.3; margin-top:2px; }
/* v125.8 👵 Einfach */
body.ui-einfach{ zoom:1.16; }
body.ui-einfach #view-haupt > :not(#ezHome){ display:none !important; }
body.ui-einfach #tabbar .tab:not([data-view="familie"]):not([data-view="haupt"]){ display:none; }
.ez-card h3{ font-size:19px; margin:0 0 6px; } .ez-h2{ margin-top:14px !important; color:var(--text-muted); font-size:16px !important; }
.ez-ev{ display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--border); font-size:18px; line-height:1.35; }
.ez-ev:last-child{ border:0; } .ez-ev.done span{ opacity:.6; text-decoration:line-through; }
.ez-ck{ flex:0 0 44px; width:44px; height:44px; border:3px solid var(--border); border-radius:12px; background:var(--card, #fff); font-size:22px; font-weight:800; color:#fff; cursor:pointer; }
.ez-ck[aria-pressed="true"]{ background:#43a047; border-color:#43a047; }
.ez-empty{ font-size:18px; color:var(--text-muted); }
.ez-big{ display:block; width:100%; margin:12px 0 0; padding:18px; border:0; border-radius:18px; background:var(--accent); color:#fff; font:inherit; font-size:19px; font-weight:800; cursor:pointer; }
.ez-big.ez-soft{ background:var(--accent-soft, #eee7f9); color:var(--text); }
.ez-leave{ display:block; margin:16px auto 0; font-size:15px; }
.kt-bar{ margin:0 -16px 8px; padding:8px 16px; } body:not(.ui-kacheln) .kt-bar{ display:none !important; }
/* v125.8 🚪 Türen, Mitteilungen, So geht myTime */
.dr-box{ margin:6px 0 14px; } .dr-h{ font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--text-muted); margin:0 2px 8px; }
.dr-grid{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.dr-door{ display:flex; gap:10px; align-items:flex-start; text-align:left; background:var(--card, #fff); border:1px solid var(--border); border-radius:16px; padding:12px; font:inherit; color:var(--text); cursor:pointer; min-height:44px; }
.dr-door .dr-ic{ font-size:22px; } .dr-door b{ display:block; font-size:14px; } .dr-door small{ display:block; font-size:12px; color:var(--text-muted); line-height:1.35; margin-top:2px; }
#settingsTiles.dr-flash{ outline:3px solid var(--accent); outline-offset:4px; border-radius:12px; transition:outline .3s; }
.crumb-lbl{ font-size:12px; color:var(--text-muted); margin-right:6px; }
.pz-more{ margin:10px 0; border:1px solid var(--border); border-radius:14px; padding:4px 12px; } .pz-more > summary{ cursor:pointer; padding:10px 0; font-weight:600; min-height:40px; }
.hh-grp{ margin:8px 0; border:1px solid var(--border); border-radius:14px; padding:2px 10px; } .hh-grp > summary{ cursor:pointer; padding:10px 2px; font-weight:700; min-height:40px; } .hh-grp > summary small{ color:var(--text-muted); font-weight:400; margin-left:4px; }
#hhQ{ width:100%; margin-bottom:8px; }
.sx-sw{ margin:8px 0 2px; } .sx-hint{ margin:0 0 8px; }
.sx-stat{ display:grid; grid-template-columns:70px 1fr auto; gap:8px; align-items:center; padding:6px 0; font-size:13.5px; }
.sx-wds .chip[aria-pressed="true"]{ background:var(--accent); color:#fff; }
.rb-grund{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:6px; } .rb-grund small{ width:100%; color:var(--text-muted); } .rb-gr{ color:var(--text-muted); }
/* v125.8 🔓 Pakete */
.zp-row{ border:1px solid var(--border); border-radius:14px; padding:10px 12px; margin:0 0 8px; } .zp-row.zp-focus{ border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft, #eee7f9); }
.zp-t{ display:flex; gap:10px; align-items:flex-start; } .zp-ic{ font-size:22px; } .zp-t b{ display:block; } .zp-t small{ display:block; color:var(--text-muted); font-size:12.5px; } .zp-t > span:nth-child(2){ flex:1; }
.zp-soon{ font-size:12px; white-space:nowrap; color:var(--text-muted); }
.zp-i{ margin-top:6px; } .zp-p{ display:flex; gap:8px; align-items:center; font-size:13px; margin:4px 0; } .zp-p select{ width:auto; } .zp-w{ width:100%; }
.zp-hint{ background:var(--surface-2, #f6f4fb); border-radius:12px; padding:10px 12px; margin:10px 0; font-size:13.5px; }
.of-lock{ display:block; color:var(--text-muted); margin-top:4px; }
.sheet-head > div:first-child{ min-width:0; flex:1; }
#profileSheet .sheet-head h2{ font-size:19px; line-height:1.2; }
#profileSheet .sheet-help{ width:34px; height:34px; font-size:18px; }
/* v125.8 Türöffner */
.dt-banner{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:10px 12px;margin:0 0 10px;border-radius:14px;background:var(--card,#fff);border:1px solid rgba(108,74,182,.25);font-size:14px}
.dt-next{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;padding:10px 12px;margin:0 0 10px;border-radius:14px;background:rgba(108,74,182,.07);font-size:14px;line-height:1.35}
.dt-next .dt-ic{font-size:20px}
.dt-next > span:nth-child(2){flex:1;min-width:180px}
.dt-btns{display:flex;gap:6px;width:100%;justify-content:flex-end}
/* v125.8 Reihum mit Tausch */
.rh-weeks{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0 12px}
.rh-week{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px;border-radius:12px;border:1px solid var(--line,#ddd);background:var(--card,#fff);text-align:start;font:inherit;cursor:pointer}
.rh-week.active{border-color:var(--accent,#6C4AB6);box-shadow:0 0 0 2px rgba(108,74,182,.25)}
.rh-week small{opacity:.7}
.rh-sw{font-size:11px;opacity:.8}
/* v125.8 Aufgaben-Zentrale schlank */
.th-top{display:flex;gap:8px;align-items:stretch}
.th-top .text-input{flex:1;min-width:0}
.th-top .btn{flex:0 0 auto;white-space:nowrap}
#thMore{margin-top:8px}
#thMore > summary{font-size:13px}
/* v125.9a Wichteln in Schritten */
.wts{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:4px 0 6px}
.wts-s{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;padding:6px 2px;border-radius:12px;background:var(--card,#fff);border:1px solid var(--line,#e6def3);font-size:11px;line-height:1.2}
.wts-s b{font-size:11.5px;font-weight:700}
.wts-s small{opacity:.7;font-size:10.5px}
.wts-n{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#efe8fa;font-weight:700;font-size:12px}
.wts-s.done .wts-n{background:#2E9B6F;color:#fff}
.wts-s.now{border-color:var(--accent,#6C4AB6);box-shadow:0 0 0 2px rgba(108,74,182,.2)}
.wts-next{font-size:13.5px;margin:2px 0 10px;font-weight:600}
@media (max-width:380px){.wts-s small{display:none}}
/* v125.9a Hauswichtel zu zweit */
.hws{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:14px;background:rgba(108,74,182,.07);margin:10px 0;font-size:14px}
.hws small{opacity:.8;line-height:1.35}
.hws.on{background:rgba(46,155,111,.1)}
.hws-who{margin-top:4px}
/* v125.9a Kegel-Ehrung */
.kf-row{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line,#eee)}
.kf-row > span:first-child{font-size:24px}
.kf-row b{display:block}
.kf-row small{opacity:.75}
/* v125.9a: Fokus-Kachel mit Farbe gut lesbar · spiegelbar */
.kt-tile{text-align:start}
.kt-tile.kt-wide[style]{color:#fff;border:0}
.kt-tile.kt-wide[style] small{color:#fff;opacity:.92}
.kt-tile.kt-wide[style] .kt-n{background:rgba(255,255,255,.28);color:#fff}
/* v125.9a.1 Tastatur: untere Leisten weg, wenn die Tastatur offen ist */
html.kb-open #tabbar, html.kb-open .kt-bar{display:none !important}
html.kb-open .sheet{border-radius:16px 16px 0 0}
.sheet input, .sheet textarea, .sheet select{scroll-margin:90px 0 140px}
/* v125.9a.1 Einfach-Ansicht in allen Kalendern */
body:not(.ui-einfach) .ez-view{display:none}
body.ui-einfach #view-familie > :not(.ez-view), body.ui-einfach #view-freunde > :not(.ez-view), body.ui-einfach #view-arbeit > :not(.ez-view), body.ui-einfach #view-event > :not(.ez-view){display:none !important}
/* v125.9a.1 Schritt-Assistent */
.sa-bar{display:flex;gap:4px;margin:2px 0 12px}.sa-bar span{flex:1;height:6px;border-radius:3px;background:var(--accent-soft,#e6def3)}.sa-bar span.on{background:var(--accent,#6C4AB6)}
.sa-q{font-size:19px;margin:0 0 6px;line-height:1.3}
.sa-choices{display:flex;flex-direction:column;gap:8px;margin:6px 0}
.sa-ch{display:flex;gap:12px;align-items:center;width:100%;padding:14px;border-radius:16px;border:2px solid var(--border,#e6def3);background:var(--card,#fff);font:inherit;text-align:start;cursor:pointer;color:inherit}
.sa-ch.on{border-color:var(--accent,#6C4AB6);background:var(--accent-soft,#f4effc)}
.sa-ch .sa-ic{font-size:24px;flex:0 0 auto}.sa-ch b{display:block;font-size:15.5px}.sa-ch small{display:block;color:var(--text-muted);font-size:13px;margin-top:2px;line-height:1.35}
.sa-in{font-size:17px;padding:14px}
.sa-prev{margin-top:12px;padding:10px 12px;border-radius:12px;border:1px dashed #c9b8ec;background:rgba(108,74,182,.05);font-size:13.5px;line-height:1.4}.sa-prev b{display:block;margin-bottom:4px;font-size:12.5px;color:var(--text-muted)}
.sa-err{color:#c9524f;font-weight:600;min-height:1em;margin:8px 0 0;font-size:14px}
.sa-nav{display:flex;justify-content:space-between;gap:10px;margin-top:10px;position:sticky;bottom:0;background:var(--surface,#fff);padding:8px 0 calc(4px + env(safe-area-inset-bottom,0px))}
.sa-nav .btn{flex:1}
.sa-alt{display:flex;justify-content:space-between;gap:8px;margin-top:6px;flex-wrap:wrap}
/* v125.9a.1 Wann-Kalender */
.wn-cal{border:1px solid var(--border,#e6def3);border-radius:14px;padding:8px;margin:6px 0 10px;background:var(--card,#fff)}
.wn-mh{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.wn-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}
.wn-grid i{font-style:normal;font-size:11.5px;color:var(--text-muted)}
.wn-d{border:0;background:none;font:inherit;font-size:15px;min-height:40px;border-radius:10px;cursor:pointer;color:inherit}
.wn-d.today{box-shadow:inset 0 0 0 1.5px var(--accent,#6C4AB6)}
.wn-d.on{background:var(--accent,#6C4AB6);color:#fff;font-weight:800}
.wn-d:disabled{opacity:.3;cursor:default}
.wn-t{width:auto;min-width:110px;display:inline-block;padding:6px 10px}
/* v125.9a.1 Wunschliste: Angebot pro offenem Wunsch */
.wla{display:block;margin-top:4px}.wla .ad-hint{display:inline-flex;gap:6px;padding:3px 8px;font-size:12px;border-radius:999px;background:transparent;border:1px solid var(--border,#e6def3)}
.wla-hint{box-shadow:0 0 0 3px rgba(108,74,182,.35)}
/* v125.9a.1 Fahrplan neu */
.fp-next{background:linear-gradient(135deg,#6C4AB6,#2E9B9B);color:#fff;border-radius:16px;padding:12px 14px;margin:4px 0 12px}
.fp-next small{opacity:.9;font-size:12.5px}.fp-next b{display:block;font-size:17px;margin:2px 0 8px;line-height:1.3}
.fp-next.late{background:linear-gradient(135deg,#c9524f,#a2577b)}.fp-next.done{background:#2E9B6F}
.fp-nb{display:flex;gap:6px;flex-wrap:wrap}.fp-next .chip{background:rgba(255,255,255,.25);color:#fff;border:0}
.fp-ph{border:1px solid var(--border,#e6def3);border-radius:14px;padding:4px 12px;margin-bottom:8px;background:var(--card,#fff)}
.fp-ph > summary{display:flex;justify-content:space-between;align-items:center;font-weight:700;padding:8px 0;cursor:pointer;min-height:36px}
.fp-late{color:#c9524f}.fp-ok{color:#2E9B6F}.fp-cnt{color:var(--text-muted)}
.fp-item{border-top:1px solid var(--border,#eee);padding:6px 0}.fp-item.late .pt-st{color:#c9524f;font-weight:700}
.fp-due{display:block;margin:-2px 0 2px 40px;color:var(--text-muted)}.fp-item.late .fp-due{color:#c9524f}
.fp-sub{margin:2px 0 4px 40px;display:flex;flex-direction:column;gap:2px;font-size:14px}
.fp-edit{margin:2px 0 4px 40px;font-size:13px}.fp-edit > summary{color:var(--text-muted);cursor:pointer}
.fp-edit .pt-step-edit{display:flex;gap:6px;margin-top:6px}.fp-edit .pt-step-edit input[type=date]{max-width:150px}
/* v125.9a.1 Reisen */
.mr-sw .hn-swb{min-width:96px;padding:10px 12px;font-size:14px}
.mr-sw .hn-swn{border:1.5px dashed var(--accent,#6C4AB6);background:var(--card,#fff);color:var(--accent,#6C4AB6)}
.rs-addtop{width:100%;margin:8px 0 10px}
.rs-flash{box-shadow:0 0 0 3px rgba(108,74,182,.4);border-radius:12px}
/* v125.9a.1 Hauswichtel-Ablauf */
.hwa-top{background:var(--surface-2,#f6f3fb);border-radius:12px;padding:10px 12px;margin-bottom:10px}
.hwa-top .btn-primary{flex:1 1 100%}
.hwa-day{margin-top:6px}
.hwa-prep{display:flex;flex-direction:column;gap:6px}
.hwa-p{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:var(--surface-2,#f6f3fb)}
.hwa-p>span{flex:1;min-width:0}.hwa-p small{display:block;opacity:.7}
.hwa-p.done>span{text-decoration:line-through;opacity:.6}
.hwa-p.late small{color:#c0392b;opacity:1;font-weight:600}
/* v125.9a.2 Alltag leicht */
.al-box{background:var(--surface-2,#f6f3fb);border-radius:12px;padding:10px 12px;margin-bottom:8px}
.al-box>b{display:block;margin-bottom:6px}
.al-wd .sa-chips{margin-bottom:4px}
.al-nx{display:block;opacity:.8}
.al-pv{font-size:13px;margin:2px 0}
.als{margin:4px 0 10px}.als small{display:block;opacity:.75;margin-bottom:4px}
/* v125.9a.3 Planungen leicht */
.md2-t .chip-row{margin:6px 0;align-items:center}.md2-t b{font-size:12.5px;margin-right:4px}
/* v125.9b */
.pt-g-note{display:block;font-size:12px;opacity:.75;margin:2px 0 0 4px}
.pt-g-vielleicht{background:#fff4d6}
.kgt{margin-bottom:12px}.kgt-plan div{padding:4px 0;font-size:14px}.kgt-plan .on{font-weight:800;color:var(--accent,#6C4AB6)}.kgt-plan .done{opacity:.5;text-decoration:line-through}
.kgt-pick{margin-top:10px}.kgt-p{display:flex;align-items:center;gap:6px;padding:4px 0}.kgt-p>span{flex:1}.kgt-p.done{opacity:.55}
/* v125.9c: iPhone – Eingabefelder ab 16 px, sonst zoomt Safari beim Antippen und die Seite springt */
@supports (-webkit-touch-callout: none){ input:not([type=checkbox]):not([type=radio]):not([type=range]), select, textarea, .text-input, .hb-in{ font-size:16px !important; } }
/* Kegeln */
.kg-streich{display:flex;flex-direction:column;gap:6px;margin:8px 0}.kg-st{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:var(--surface-2,#f6f3fb)}.kg-st.lead{outline:2px solid var(--accent,#6C4AB6)}.kg-st.out{opacity:.55}
.kg-tree{display:inline-flex;gap:4px}.kg-tree span{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#fff;font-weight:700;font-size:12px}.kg-tree span.x{text-decoration:line-through;opacity:.35}
.kg-pk{display:block;font-size:11px;opacity:.8}
/* Frau Horst */
.fh-roll{text-align:center;margin:8px 0 12px}.fh-dice{font-size:56px;line-height:1.1}.fh-res{display:block;margin:6px 0 10px;font-size:16px}
.fh-cnt{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:6px}.fh-c{border:1.5px solid var(--border,#e4ddef);background:var(--surface,#fff);border-radius:12px;padding:8px;text-align:start;font:inherit;display:flex;justify-content:space-between;gap:4px}.fh-c.on{border-color:var(--accent,#6C4AB6);background:var(--accent-soft,#eee7f9)}
.fh-p{display:flex;align-items:center;gap:6px;padding:6px 0}.fh-p b{flex:1}.fh-pause{background:#e8f4ff;border-radius:10px;padding:8px 10px;margin-bottom:8px}.fh-adult .big{font-size:18px;font-weight:800}
.fh-own-dice{margin-top:8px;text-align:start}
/* v125.9d */
/* v125.9e: Mäxchen & Schocken */
.mx-cup{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; width:100%; min-height:96px; margin:8px 0; border-radius:16px; border:2px dashed var(--line, #ccc); background:var(--card2, rgba(0,0,0,.03)); font-size:16px; color:inherit; }
.mx-cup .fh-dice{ font-size:48px; line-height:1; }
.mx-ask{ text-align:center; padding:8px 0; }
.mx-say{ max-height:180px; overflow:auto; }
.fh-c.out{ opacity:.45; }
.fh-res-box{ padding:10px 12px; border-radius:12px; background:var(--accent-soft, rgba(91,63,168,.08)); margin-bottom:10px; }
.ks-row{ padding:8px 0; border-bottom:1px solid var(--line, #eee); }
.ks-row .chip-row{ margin-top:4px; }
.ks-die{ display:inline-flex; gap:2px; margin-inline-end:8px; flex-wrap:wrap; }
.ks-die .chip{ min-width:34px; padding:4px 6px; font-size:18px; }
.ks-val{ margin-inline-start:6px; }
/* v125.9f: Kosten teilen, Ort ohne Lupe, Heute-Knopf, Kacheln, Kontrast */
.co-title{ font-weight:700; margin:2px 0 8px; }
.co-opts{ margin:6px 0 10px; padding:10px; border:1px solid var(--border); border-radius:14px; background:var(--surface-2); }
.co-opts .co-l{ display:block; color:var(--text-muted); margin:8px 0 4px; font-size:12.5px; }
.co-split{ margin-bottom:4px; }
.co-fams{ margin-top:8px; }
.co-for{ margin:6px 0; } .co-for small{ display:block; color:var(--text-muted); margin-bottom:4px; }
.pt-cost small{ display:block; color:var(--text-muted); font-size:12px; }
.og-wrap{ position:relative; }
.og-sug{ position:absolute; left:0; right:0; top:100%; z-index:30; background:var(--surface); border:1px solid var(--border); border-radius:12px; box-shadow:var(--shadow); overflow:hidden; }
.og-sug:empty{ display:none; }
.og-it{ display:block; width:100%; text-align:start; border:0; border-bottom:1px solid var(--border); background:none; color:var(--text); padding:10px 12px; font-size:15px; }
.og-it small{ display:block; color:var(--text-muted); font-size:12px; }
.og-hint{ display:block; color:var(--text-muted); font-size:12px; margin-top:4px; }
.month-nav .bd-today:not([hidden]){ margin-inline-start:6px; padding:4px 10px; font-size:12.5px; width:auto; border-radius:999px; background:var(--accent-soft, rgba(124,92,255,.14)); color:var(--accent, #6b4fd8); font-weight:600; }
.kt-bar{ top:calc(var(--tbh, 0px) + env(safe-area-inset-top, 0px)); z-index:19; }
.kt-empty{ text-align:center; }
.kt-empty p{ color:var(--text-muted); margin:0 0 10px; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){ --text-muted:#C2BBD6; } }
:root[data-theme="dark"]{ --text-muted:#C2BBD6; }
.hw-filt-box{ margin:6px 0 8px; } .hw-filt-box > summary{ cursor:pointer; font-weight:700; padding:6px 0; list-style:none; } .hw-filt-box > summary::-webkit-details-marker{ display:none; }
.hw-more, .hw-iv{ margin-bottom:10px; }
.hw-idea-t{ cursor:pointer; } .hw-idea-t:hover{ text-decoration:underline; }
.hw-fs{ display:block; color:var(--success, #2E9B6F); font-size:12px; }
.hw-steps{ margin:0 0 8px; padding-inline-start:22px; } .hw-steps li{ margin:4px 0; }
.hw-letter{ white-space:pre-wrap; background:#FFFDF6; color:#2a2420; border:1px solid #EADFC2; border-radius:12px; padding:12px; font-family:Georgia, serif; line-height:1.45; margin-bottom:8px; }
.hw-let{ font-family:Georgia, serif; line-height:1.45; min-height:180px; }
.pe-bar{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:8px 10px; border-radius:12px; background:var(--surface-2); margin-bottom:10px; font-size:13.5px; }
.pe-bar .pe-sw{ margin-inline-start:auto; display:flex; align-items:center; gap:6px; font-size:13px; }
.rsvp-fix{ display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; }
.rs-drive{ font-size:13px; color:var(--text-muted); margin-top:4px; } .rs-drive b{ color:var(--text); }
.pl-partner{ margin-top:6px; } .pl-src{ display:block; text-align:end; font-size:10.5px; color:var(--text-muted); padding:2px 8px; }
.pl-here{ margin-top:6px; }
/* v125.9g: Kachel-Ebenen */
.ke-crumb{ display:flex; flex-wrap:wrap; align-items:center; gap:4px; margin:2px 0 10px; }
.ke-crumb span{ color:var(--text-muted); }
.ke-crumb .chip.on{ background:var(--accent); color:var(--on-accent, #fff); }
.ke-crumb .ke-ed{ margin-inline-start:auto; }
.kt-tile.ke-add{ background:var(--surface) !important; color:var(--accent); border:1.5px dashed var(--accent); }
.ke-edit .row, .ke-mods .row{ display:flex; align-items:center; gap:8px; padding:8px 0; border-bottom:1px solid var(--border); }
.ke-edit .row:last-child{ border-bottom:0; }
.ke-edit .row > span:first-child{ flex:1; min-width:0; }
.ke-mv{ display:flex; gap:4px; }
.ke-sw input{ width:44px; height:26px; }
.ke-mods .row small{ display:block; color:var(--text-muted); font-size:12px; font-weight:400; }
.sr{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
/* v125.9h.1: Kachel = eine Karte, Wichtel-Kachel, ＋ in Gruppen */
body.kt-calonly #view-familie > :not(.kt-cal):not(#ktCalAll), body.kt-calonly #view-freunde > :not(.kt-cal):not(#ktCalAll), body.kt-calonly #view-arbeit > :not(.kt-cal):not(#ktCalAll){ display:none !important; }
.kt-cal-all{ align-self:center; margin:4px 0 12px; }
#wtMineCard:not(.kt-show){ display:none; }
#wtMineCard:empty{ display:none !important; }
.wm-it{ border:1px solid var(--border); border-radius:14px; padding:10px 12px; margin-top:8px; display:flex; flex-direction:column; gap:6px; align-items:flex-start; }
.wm-h{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.wm-h .tag{ font-size:11px; font-weight:700; border-radius:999px; padding:2px 8px; background:var(--surface-2, #EFE8FA); }
.wm-mine{ width:100%; box-sizing:border-box; background:linear-gradient(135deg,#6C4AB6,#2E9B9B); color:#fff; border-radius:14px; padding:12px; }
.wm-who{ font-size:18px; margin:4px 0; } .wm-wish{ font-size:14px; margin-bottom:6px; }
.wm-mine .chip{ background:rgba(255,255,255,.22); color:#fff; }
.qa-ctx{ font-size:13px; font-weight:700; color:var(--text-muted); margin:-4px 0 8px; }
.qa-grp{ font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--text-muted); margin:12px 0 4px; }
/* v125.9h.2: Übersichten & Aufräumen */
.pv-seg{ display:grid; grid-auto-flow:column; grid-auto-columns:1fr; margin-bottom:8px; }
.pv-seg button i{ font-style:normal; background:var(--accent); color:#fff; border-radius:999px; padding:0 6px; margin-inline-start:4px; font-size:11px; }
.pv-sc{ margin-bottom:8px; }
.pv-row{ border:1px solid var(--border); border-radius:14px; padding:10px 12px; margin-bottom:8px; background:var(--surface, #fff); cursor:pointer; display:flex; flex-direction:column; gap:4px; }
.pv-h{ display:flex; gap:6px; align-items:center; flex-wrap:wrap; } .pv-h .tag{ font-size:11px; font-weight:700; border-radius:999px; padding:2px 8px; background:var(--surface-2, #EFE8FA); } .pv-h .pv-me{ background:#FFF1D6; color:#8A5A00; }
.pv-bar{ height:6px; border-radius:3px; background:var(--surface-2, #EFE8FA); overflow:hidden; } .pv-bar i{ display:block; height:100%; background:var(--accent); }
.pv-miss{ display:flex; gap:6px; align-items:center; flex-wrap:wrap; } .pv-ok{ color:var(--success); font-weight:700; }
.pv-nav{ display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:8px; font-weight:700; font-size:14px; }
.pv-misscard{ margin-top:8px; padding:10px 12px; }
.th2-h{ font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--text-muted); margin:12px 0 4px; } .th2-h.late{ color:var(--danger); }
.th2-from{ display:block; font-size:12px; margin-top:2px; }
.tf-src{ display:block; margin:-4px 0 6px; }
.plv-link{ display:block; margin-top:8px; font-size:13px; }
.okb{ background:#E6F6EE; color:#1E7A50; border-radius:10px; padding:8px 10px; font-size:13.5px; font-weight:700; margin:8px 0; }
/* v125.9h.3: ruhiger & klarer */
.rq-off{ display:none !important; }
.rq-hide{ display:none !important; }
.rq-more{ display:block; margin:6px 0 2px; font-size:13px; }
.rq-shop .row{ display:flex; justify-content:space-between; gap:8px; padding:6px 0; border-bottom:1px solid var(--border); font-size:14px; }
.ez2-card{ border:2px solid var(--accent); }
/* einheitliche Fensterköpfe: Titel höchstens zwei Zeilen */
.sheet-head h2{ font-size:19px; line-height:1.2; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.sheet-head .sheet-sub{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
/* größere Tippflächen für kleine Knöpfe, ohne das Bild zu verschieben */
.dd-del-btn, .sheet-close, .cm-gear, .task-check, .ht-x, .pt-ck{ position:relative; }
.dd-del-btn::after, .sheet-close::after, .cm-gear::after, .task-check::after, .ht-x::after, .pt-ck::after{ content:""; position:absolute; inset:-6px; }
/* Kartenköpfe gleich */
.card > .card-title, .card > .type-card-h, .card > .hw-head > b{ font-size:15.5px; }
#subDots{ display:none !important; }
body.ui-kacheln #viewSub[data-sub-pick]{ pointer-events:none; }
body.ui-kacheln #viewSub[data-sub-pick]::after{ content:none; }
/* eine feste Pfad-Zeile in der Kachelansicht */
#ktHome > .ke-crumb, .kt-bar .rq-crumb{ position:sticky; top:calc(var(--tbh, 0px) + env(safe-area-inset-top, 0px)); z-index:19; margin:0 -16px 8px; padding:8px 16px; background:var(--bg, #faf8fc); border-bottom:1px solid var(--border); flex-wrap:nowrap; overflow-x:auto; }
.kt-bar .rq-crumb{ position:static; margin:0; padding:0; border:0; background:none; flex:1; }
/* v125.9h.4: Drucken & Listen */
.hws-btn{ width:100%; margin-bottom:10px; }
.hws-days{ max-height:46vh; overflow:auto; }
.u2-pick .pr-kinds{ margin-bottom:6px; }

/* ===== v125.9h.5: 📅 Kalender oben & 🧩 Kachel-Stile ===== */
.kc-card{ padding:10px 10px 8px; margin-bottom:12px; touch-action:pan-y; }
.kc-head{ display:flex; align-items:center; gap:6px; margin:0 2px 6px; }
.kc-title{ border:0; background:none; font:inherit; font-weight:800; font-size:15px; color:var(--text); padding:4px 2px; cursor:pointer; }
.kc-nav{ margin-left:auto; display:flex; gap:4px; }
.kc-nav button{ border:1px solid var(--border); background:var(--surface, #fff); color:var(--text); border-radius:10px; width:34px; height:30px; font-size:16px; cursor:pointer; }
.kc-now{ font-size:12px; padding:3px 9px; }
.kc-menu{ display:flex; flex-direction:column; border:1px solid var(--border); border-radius:12px; margin:0 0 8px; overflow:hidden; }
.kc-menu button{ border:0; border-bottom:1px solid var(--border); background:var(--surface, #fff); color:var(--text); text-align:start; padding:10px 12px; font:inherit; cursor:pointer; }
.kc-menu button:last-child{ border-bottom:0; }
.kc-menu b{ float:right; color:var(--success, #2E9B6F); }
.kc-wd, .kc-grid{ display:grid; grid-template-columns:repeat(7, 1fr); gap:3px; text-align:center; }
.kc-wd span{ font-size:11px; font-weight:700; color:var(--text-muted); background:var(--accent-soft, #F0EBF7); border-radius:999px; padding:2px 0; }
.kc-grid{ margin-top:4px; }
.kc-d{ position:relative; border:0; background:none; color:var(--text); font:inherit; font-size:13px; padding:5px 0 3px; border-radius:10px; cursor:pointer; line-height:1.1; min-height:36px; -webkit-touch-callout:none; user-select:none; }
.kc-d i{ display:flex; justify-content:center; gap:2px; height:7px; margin-top:3px; }
.kc-d i span{ width:6px; height:6px; border-radius:50%; }
.kc-d em{ position:absolute; top:-3px; right:0; font-size:10px; font-style:normal; }
.kc-past{ opacity:.42; }
.kc-out{ opacity:.25; }
.kc-today{ background:#E14C7A; color:#fff; font-weight:800; opacity:1; }
.kc-today i span{ box-shadow:0 0 0 1.5px #fff; }
.kc-today-line{ display:block; width:100%; border:0; background:var(--accent-soft, #F4EFFC); color:var(--text); font:inherit; font-size:12.5px; text-align:start; border-radius:10px; padding:7px 10px; margin-top:6px; cursor:pointer; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.kst-pick{ display:flex; gap:8px; }
.kst-opt{ flex:1; border:2px solid var(--border); background:var(--surface, #fff); color:var(--text); border-radius:14px; padding:7px; font:inherit; font-size:12.5px; cursor:pointer; }
.kst-opt[aria-pressed="true"]{ border-color:var(--accent, #6C4AB6); background:var(--accent-soft, #F4EFFC); }
.kst-opt i{ display:grid; grid-template-columns:1fr 1fr; gap:3px; height:46px; margin-bottom:5px; }
.kst-opt i span{ border-radius:6px; background:#7B4FD1; }
.kst-opt i span:nth-child(2){ background:#2E9B4F; } .kst-opt i span:nth-child(3){ background:#2F6FD6; } .kst-opt i span:nth-child(4){ background:#E8820C; }
.kst-o-wolken i{ gap:4px; } .kst-o-wolken i span{ border-radius:45% 55% 50% 50% / 55% 45% 55% 45%; filter:saturate(.45) brightness(1.45); }
.kst-o-puzzle i{ gap:0; border-radius:8px; overflow:hidden; } .kst-o-puzzle i span{ border-radius:0; }
.kst-opt b{ display:block; }

/* 🧩 Puzzle */
body.kst-puzzle .kt-grid{ gap:0; border-radius:22px; overflow:hidden; }
body.kst-puzzle .kt-tile{ border-radius:0; box-shadow:inset 0 -3px 0 rgba(0,0,0,.13); overflow:visible; min-height:112px; }
body.kst-puzzle .kt-tile.kt-wide:not([style]){ border:0; box-shadow:inset 0 -2px 0 var(--border); }
body.kst-puzzle .kt-tile > *:not(.kt-n){ position:relative; z-index:3; }
body.kst-puzzle .kt-tile .kt-n{ z-index:4; }
body.kst-puzzle .kt-tile.pz-r::after, body.kst-puzzle .kt-tile.pz-b::before{ content:""; position:absolute; width:26px; height:26px; border-radius:50%; background:inherit; z-index:2; }
body.kst-puzzle .kt-tile.pz-r::after{ right:-13px; top:calc(50% - 13px); }
body.kst-puzzle .kt-tile.pz-b::before{ bottom:-13px; left:calc(50% - 13px); }
body.kst-puzzle .kt-tile.pz-bw::before{ left:calc(25% - 13px); }
body.kst-puzzle .kc-card{ border-radius:22px; }

/* ☁️ Wolken */
body.kst-wolken .kt-grid{ gap:12px; }
body.kst-wolken .kt-tile[style]{ background:color-mix(in srgb, var(--kc, #7B4FD1) 30%, #fff) !important; color:#221D33; box-shadow:0 3px 0 rgba(0,0,0,.05), 0 6px 14px rgba(80,50,140,.10); }
body.kst-wolken .kt-tile{ border-radius:34px 52px 30px 46px / 44px 30px 50px 36px; }
body.kst-wolken .kt-tile:nth-child(2n){ border-radius:50px 30px 48px 34px / 32px 48px 34px 52px; }
body.kst-wolken .kt-tile:nth-child(3n){ border-radius:40px 44px 56px 28px / 50px 36px 42px 30px; }
body.kst-wolken .kt-tile[style] small{ color:#3E3752; opacity:1; }
body.kst-wolken .kt-tile[style] .kt-n{ background:rgba(255,255,255,.75); color:#5A3BA3; }
body.kst-wolken .kc-card{ border-radius:38px 30px 42px 34px; }
:root[data-theme="dark"] body.kst-wolken .kt-tile[style]{ background:color-mix(in srgb, var(--kc, #7B4FD1) 42%, #1E1828) !important; color:#F3EEFA; }
:root[data-theme="dark"] body.kst-wolken .kt-tile[style] small{ color:#D9D1E8; }
:root[data-theme="dark"] body.kst-wolken .kt-tile[style] .kt-n{ background:rgba(255,255,255,.18); color:#fff; }
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) body.kst-wolken .kt-tile[style]{ background:color-mix(in srgb, var(--kc, #7B4FD1) 42%, #1E1828) !important; color:#F3EEFA; }
  :root:not([data-theme="light"]) body.kst-wolken .kt-tile[style] small{ color:#D9D1E8; }
  :root:not([data-theme="light"]) body.kst-wolken .kt-tile[style] .kt-n{ background:rgba(255,255,255,.18); color:#fff; }
}
@media (prefers-reduced-motion: no-preference){ .kc-d{ transition:background .15s; } }

/* ===== v125.9i.1: ⚙️ Einstellungen schneller finden ===== */
.set-quick{ padding:10px 12px; margin:0 0 10px; display:flex; flex-direction:column; gap:8px; }
.sq-row{ display:flex; align-items:center; gap:10px; }
.sq-l{ flex:0 0 92px; font-size:12.5px; font-weight:700; color:var(--text-muted); }
.sq-seg{ flex:1; }
.sq-seg button{ display:flex; flex-direction:column; align-items:center; gap:1px; padding:6px 4px; font-size:15px; line-height:1.1; }
.sq-seg .sq-t{ font-size:11px; font-weight:600; }
.sq-lang{ flex:1; min-height:40px; }
.set-hit .opt-sub{ font-size:11.5px; }
.set-moved{ font-size:12.5px; line-height:1.5; padding:10px 12px; border:1px dashed var(--border); border-radius:12px; margin:0 0 14px; }
.set-flash{ animation:setFlash 1.8s ease; }
@keyframes setFlash{ 0%,60%{ box-shadow:0 0 0 3px var(--accent, #6C4AB6); border-radius:12px; } 100%{ box-shadow:none; } }
@media (prefers-reduced-motion: reduce){ .set-flash{ animation:none; outline:3px solid var(--accent, #6C4AB6); } }
.mb-box{ margin:6px 0 14px; }
.mb-box .option-tile{ margin-bottom:6px; }
.mb-box .opt-chev{ font-size:16px; }
/* Fensterkopf: unsichtbares „✓ Gespeichert“ nimmt dem Titel keinen Platz mehr weg („Baustei…“) */
.sheet-head{ position:relative; }
.sheet-head .saved-pill{ position:absolute; right:14px; top:calc(100% + 2px); z-index:5; pointer-events:none; background:var(--surface, #fff); padding:3px 9px; border-radius:999px; box-shadow:0 2px 8px rgba(0,0,0,.10); }

/* ===== v125.9i.2: Reiter in den Kalender-Einstellungen ===== */
.ts-tabs{ display:flex; flex-wrap:nowrap; overflow-x:auto; gap:6px; margin:0 0 12px; padding-bottom:4px; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.ts-tabs::-webkit-scrollbar{ display:none; }
.ts-tabs .chip{ flex:0 0 auto; white-space:nowrap; margin:0; }
.ts-tabs .chip[aria-selected="true"]{ background:var(--accent, #6C4AB6); color:#fff; }
.ts-pane .option-tile{ margin-bottom:8px; }
.ts-info{ padding:6px 14px; margin-bottom:10px; }
.ts-info .row{ display:flex; justify-content:space-between; align-items:center; gap:10px; padding:8px 0; border-bottom:1px solid var(--border); font-size:14px; }
.ts-info .row:last-child{ border-bottom:0; }
.ts-info .row > span:first-child{ color:var(--text-muted); }
.ts-info .r{ text-align:end; }
.ts-home{ padding:12px 14px; margin-bottom:10px; font-size:14px; line-height:1.5; }
.ts-home small{ display:block; margin-top:4px; }
.ts-homechip{ margin-top:6px; }
.cmg{ margin-top:4px; }

/* ===== v125.9i.3: ✋ Kacheln ziehen · 📌 · ↺ ===== */
.ke-edit .row{ display:flex; align-items:center; gap:8px; }
.kp-drag{ border:0; background:none; font-size:20px; line-height:1; padding:8px 4px; color:var(--text-muted); cursor:grab; touch-action:none; min-width:32px; min-height:40px; }
.kp-moving{ background:var(--accent-soft, #F4EFFC); outline:2px dashed var(--accent, #6C4AB6); border-radius:10px; }
.kp-pin{ padding:4px 8px; opacity:.55; }
.kp-pin.on{ opacity:1; background:var(--accent-soft, #F4EFFC); }
.kp-reset{ margin:8px 0 0; }
.kp-tile .kp-badge{ position:absolute; top:10px; right:12px; font-size:13px; }

/* ===== v125.9i.5: 👥 Personen & Gruppen · Tag als Liste ===== */
.pg-sec{ grid-column:1 / -1; font-size:11.5px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--text-muted); margin:8px 2px -2px; }
.pg-av{ display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.32); font-size:16px; font-weight:800; color:inherit; }
.kt-tile.ke-add .pg-av{ background:var(--accent-soft, #EFE8FA); }
.pg-dnav{ display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; }
.pg-dnav b{ font-size:15px; }
.pg-dfil{ display:block; margin-top:2px; color:var(--text-muted); }
.pg-day .pg-dsec{ font-size:11.5px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--text-muted); margin:12px 2px 6px; }
.pg-day .dd-item{ background:var(--surface, #fff); border:1px solid var(--border); border-left:5px solid var(--pgc, var(--border)); border-radius:12px; padding:9px 10px; margin-bottom:6px; align-items:flex-start; }
.pg-day .dd-item .dot3{ display:none; }
.pg-dempty{ text-align:center; padding:16px 0; }
.pg-cd{ display:inline-block; align-self:flex-start; margin-top:4px; font-size:12px; font-weight:800; background:rgba(255,255,255,.28); border-radius:999px; padding:2px 9px; }
.pg-cd-soon{ background:#fff; color:#B23A48; }
.kt-tile.ke-add .pg-cd{ display:none; }
.pg-cdbig{ display:inline-block; font-size:15px; font-weight:800; background:var(--accent-soft, #F4EFFC); color:var(--accent, #6C4AB6); border-radius:12px; padding:6px 12px; margin:0 0 8px; }
.pg-cdbig.pg-cd-soon{ background:#FDE7EC; color:#B23A48; }
/* Pfad-Zeile: Chips nie umbrechen, lange Pfade wischen */
.ke-crumb{ flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; }
.ke-crumb::-webkit-scrollbar{ display:none; }
.ke-crumb .chip{ white-space:nowrap; flex:0 0 auto; }

/* ===== v125.9i.6: 🔑 Wer darf was? ===== */
.cs-list{ padding:4px 12px; }
.cs-row{ display:flex; align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid var(--border); }
.cs-row:last-child{ border-bottom:0; }
.cs-av{ width:34px; height:34px; flex:0 0 34px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; }
.cs-n{ flex:1; min-width:0; }
.cs-n small{ display:block; color:var(--text-muted); font-size:11.5px; }
.cs-lv{ border:0; background:var(--accent-soft, #EFE8FA); color:var(--text); border-radius:999px; padding:8px 11px; font:inherit; font-size:12.5px; font-weight:700; white-space:nowrap; min-height:36px; cursor:pointer; }
.cs-lv.own{ background:#FFF4D6; cursor:default; }
.cs-sent{ background:var(--accent-soft, #F4EFFC); border-radius:12px; padding:10px 12px; font-size:13px; line-height:1.5; margin:10px 0; }
.cs-add .chip{ margin:0 6px 6px 0; }
.cs-pick{ padding:10px 12px; margin-top:10px; }
.cs-opt{ display:block; width:100%; text-align:start; border:2px solid var(--border); background:var(--surface, #fff); color:var(--text); border-radius:14px; padding:10px 12px; margin-top:8px; font:inherit; cursor:pointer; }
.cs-opt.on{ border-color:var(--accent, #6C4AB6); background:var(--accent-soft, #F4EFFC); }
.cs-opt b{ display:block; font-size:14.5px; }
.cs-opt small{ color:var(--text-muted); font-size:12px; }
.cs-del{ width:100%; margin-top:8px; color:var(--danger, #B23A48); }

/* ===== v125.9i.7: 🧢 Kopf neu ===== */
body.hd9 #helpTopBtn, body.hd9 #calSettingsBtn{ display:none !important; }
body.hd9 .topbar .icon-btn{ width:44px; height:44px; min-width:44px; }
body.hd9 #quickAddBtn{ background:var(--accent, #6C4AB6); color:#fff; border-color:transparent; }
body.hd9.hd-home:not(.hd-slim) #searchBtn{ display:none; }
.hd-search{ display:none; width:100%; margin-top:8px; text-align:start; border:0; border-radius:12px; background:var(--accent-soft, #F0EBF7); color:var(--text-muted); font:inherit; font-size:13.5px; padding:11px 12px; cursor:pointer; min-height:44px; }
.hd-smart{ display:none; width:100%; margin-top:8px; border:0; border-radius:12px; background:#FFF4D6; color:#3A3020; font:inherit; font-size:13.5px; padding:9px 12px; text-align:start; cursor:pointer; min-height:40px; justify-content:space-between; align-items:center; gap:8px; }
body.hd-home:not(.hd-slim) .hd-search{ display:block; }
body.hd-home:not(.hd-slim) .hd-smart:not([hidden]){ display:flex; }
:root[data-theme="dark"] .hd-smart{ background:#3A3220; color:#F5E9C8; }
body.hd-slim .topbar{ padding-top:6px; padding-bottom:6px; }
body.hd-slim .topbar .eyebrow, body.hd-slim #viewSubRow{ display:none !important; }
body.hd-slim .topbar h1{ font-size:16px; margin-top:0; }
@media (max-width: 520px){ body.hd-slim .topbar-center > h1{ grid-area:e; } }
.hd-duo{ position:relative; border-radius:50% !important; background:#2E9B4F !important; color:#fff !important; font-weight:800; font-size:16px; }
.hd-wa{ position:absolute; right:-4px; bottom:-4px; width:20px; height:20px; border-radius:50%; background:var(--surface, #fff); font-size:12px; display:flex; align-items:center; justify-content:center; box-shadow:0 1px 3px rgba(0,0,0,.15); }
.duo-q{ text-decoration:none; color:inherit; margin-bottom:8px; }
/* Kopf passend zum Kachel-Stil */
body.kst-wolken.hd-home:not(.hd-slim) .topbar{ background:var(--surface, #fff); border:0; border-radius:34px 28px 40px 30px; margin:8px 10px 14px; box-shadow:0 3px 0 rgba(0,0,0,.04), 0 6px 14px rgba(80,50,140,.10); }
body.kst-puzzle.hd-home:not(.hd-slim) .topbar{ background:#7B4FD1; border:0; border-radius:0 0 22px 22px; color:#fff; }
body.kst-puzzle.hd-home:not(.hd-slim) .topbar h1, body.kst-puzzle.hd-home:not(.hd-slim) .topbar .eyebrow, body.kst-puzzle.hd-home:not(.hd-slim) #viewSub{ color:#fff; }
body.kst-puzzle.hd-home:not(.hd-slim) .topbar .icon-btn:not(#quickAddBtn):not(.hd-duo){ background:rgba(255,255,255,.22); color:#fff; border-color:transparent; }
body.kst-puzzle.hd-home:not(.hd-slim) .hd-search{ background:rgba(255,255,255,.2); color:#fff; }
/* Einfach-Modus: nur Gruß und großes ＋ */
body.ui-einfach #searchBtn, body.ui-einfach .hd-search, body.ui-einfach .hd-smart, body.ui-einfach #hdDuo{ display:none !important; }
/* Familien-Tablet */
.tb-who{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.tb-who button{ border:2px solid var(--border); background:var(--surface, #fff); color:var(--text); border-radius:18px; padding:14px 8px; font:inherit; font-weight:800; cursor:pointer; }
.tb-who button.on{ border-color:var(--accent, #6C4AB6); background:var(--accent-soft, #F4EFFC); }
.tb-who button .tb-ic{ display:block; font-size:30px; margin-bottom:4px; }
.tb-who small{ display:block; font-weight:600; color:var(--text-muted); }
.tb-pin{ margin-top:12px; }
.tb-setpin{ display:flex; gap:8px; margin-top:8px; }
body.tb-kid #profileBtn{ background:#2F6FD6; }
/* v125.9j: 🃏 Termin-Karte */
.ec-card{background:var(--surface,#fff);border-radius:18px;padding:14px 16px;box-shadow:0 1px 4px rgba(80,50,140,.08);margin-bottom:12px}
.ec-title{font:700 20px Fraunces,Georgia,serif;margin:0 0 6px;word-break:break-word}
.ec-line{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--border,#F0EBF7);font-size:15px;line-height:1.4}
.ec-line:first-of-type{border-top:0}
.ec-ic{width:24px;text-align:center;flex:none}
.ec-acts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ec-btn{min-height:56px;border-radius:16px;border:0;background:var(--accent-soft,#F0EBF7);color:var(--text,#1E1B26);font:700 15px inherit;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 10px;text-align:center;cursor:pointer}
.ec-btn.ec-p{background:var(--accent,#6C4AB6);color:#fff}
.ec-btn.ec-r{background:#FDECEF;color:#B3264A}
[data-theme="dark"] .ec-btn.ec-r{background:#4a1d2a;color:#ffb3c4}
.ec-hint{margin-top:12px}
.dd-item:not(.dd-item-confirm):not(.dd-item-anon){cursor:pointer}
/* v125.9j: ⚙️ ein Kalender-Fenster mit Reitern */
.kw-tabs{display:flex;gap:6px;margin:0 0 12px;overflow-x:auto;scrollbar-width:none}
.kw-tab{flex:1 0 auto;min-height:44px;padding:8px 12px;border-radius:12px;border:0;background:var(--accent-soft,#F0EBF7);color:var(--text,#1E1B26);font:700 13.5px inherit;white-space:nowrap;cursor:pointer}
.kw-tab.on{background:var(--accent,#6C4AB6);color:#fff}
/* v125.9j: 👆 Tippflächen ≥ 44 px (außer in Kalender-Rastern) */
body.j9 :is(button,[role=button],a.chip,summary):not(:is(.month-grid,[id^=monthGrid],.zl-dots,.wk,.sx-week,.kc-grid,.ke-dots,.pg-dots,.tab-bar,.bottom-nav) *):not(.tab){min-height:44px}
body.j9 :is(button,[role=button],a.chip):not(:is(.month-grid,[id^=monthGrid],.zl-dots,.wk,.sx-week,.kc-grid,.ke-dots,.pg-dots) *){min-width:44px}
body.j9 :is(.link-btn,.beta-badge,.crumb,.dd-add,.rn-default,.sub-nav-btn,[data-sub-pick]){display:inline-flex;align-items:center;justify-content:center}
body.j9 .crumb{padding-inline:12px}
body.j9 :is(.icon-btn.small,.month-nav-btn,.cm-gear,.card-fold,.dd-done,.dd-cmt,.dd-more,.dd-del-btn,.qh-btn,.remove-btn,.cp-colorbtn,.sb-info){width:auto;height:auto;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
body.j9 .qh-btn{border-radius:999px}
body.j9 :is(.color-swatch,.shift-swatch,[data-wz-color],[data-accent],[data-cp-color]){width:44px;height:44px;min-width:44px;min-height:44px}
body.j9 .dd-item{align-items:center}
body.j9 .set-crumbs .crumb{min-width:44px}
.fx-note{display:block;margin-top:5px;font-size:12.5px;color:var(--text-muted);line-height:1.4}
.ec-extra{border-top:1px solid var(--border,#F0EBF7);padding-top:8px;margin-top:4px}
body.j9 .ec-btn{min-height:56px!important}
/* v125.9j: nur ein „‹ Zurück“ in den Einstellungen */
#profileSheet .sheet-head:has(#profileBackBtn:not([hidden])) .mt-sback{display:none!important}
/* v125.9j: Kalender-Kopf darf bei 44-px-Knöpfen umbrechen (schmale Handys) */
body.j9 .card-title{flex-wrap:wrap;row-gap:6px}
body.j9 .card-title .month-nav{min-width:0}
@media (max-width:380px){ body.j9 .month-nav .month-label{min-width:0;font-size:15px} }

/* v125.9j: Listen nie seitwärts scrollen – Termin-Zeilen und Heute-Zeilen brechen um */
.dd-item .dd-main, .dd-item > span[style*="flex:1"], .list-item, .lv-row, .kc-today, .kc-line, .ke-day, .pg-day-row{white-space:normal!important;overflow-wrap:anywhere;min-width:0}
.day-detail, #ktDaySheetBody, .list-view, .lv-list{overflow-x:hidden}
.dd-item{flex-wrap:nowrap;min-width:0}
.sheet{overflow-x:hidden}
.dd-item{align-items:flex-start}
/* v125.9j: iPhone – Platz für die Tastatur, damit das Feld sichtbar bleibt */
body.kb-open .sheet:not([hidden]), body.kb-open #setupOverlay, body.kb-open #onboardOverlay{padding-bottom:calc(var(--kb, 0px) + 24px)!important}
input, select, textarea{font-size:max(16px, 1em)}
/* v125.9j.1: 🧭 Neue Struktur · 🌙 Himmel */
.sk-today{display:block;width:100%;text-align:left;border:0;background:var(--surface,#fff);color:var(--text,#1E1B26);border-radius:16px;padding:10px 14px;margin:0 0 10px;font:600 14px/1.45 inherit;box-shadow:0 1px 3px rgba(0,0,0,.06);cursor:pointer}
.sk-mini{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:6px}
.sk-mini>div{background:var(--surface,#fff);border-radius:14px;padding:12px;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.sk-mini b{display:block;font-size:15px;margin-bottom:4px}.sk-mini span{font-size:13px;color:var(--text-muted);line-height:1.45}
.sk-row{display:flex;gap:12px;align-items:center;background:var(--surface,#fff);border-radius:14px;padding:10px 12px;margin-bottom:8px}
.sk-row b{display:block;font-size:14.5px}.sk-row small{color:var(--text-muted);font-size:12.5px}.sk-ic{font-size:22px;width:30px;text-align:center}
.sk-tg{display:flex;flex-wrap:wrap;gap:8px}
.kc-d.kc-hol{color:var(--danger,#C62F4B);font-weight:800}
.kc-d.kc-fer{box-shadow:inset 0 -4px 0 #8FD1A8}
.kc-d{position:relative}.kc-mk{position:absolute;right:1px;top:-2px;font-size:10px;font-style:normal;line-height:1}
/* v125.9j.1 📌 Am selben Tag */
.ev-same{margin:6px 0 2px;padding:8px 12px;border-radius:12px;background:var(--surface-2,#f4f4f6);color:var(--text-2,#555);font-size:.92em;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
/* v125.9j.1 Feld-Erklärungen nie neben dem Feld (Titel/Schnell erfassen wurden schmal) */
small.fh,small.fx-note{flex:1 0 100%;max-width:100%}
:has(> small.fh),:has(> small.fx-note){flex-wrap:wrap}
/* v125.9j.1 ‹ Zurück im Pfad */
.ke-crumb .kz-back{font-weight:800}
.ke-crumb .kz-home{min-width:44px;justify-content:center}
/* v125.9j.2: 🃏 Karten der untersten Ebene */
.lc-head{display:flex;justify-content:flex-end;gap:8px;margin:-4px 0 8px}
.lc-hb{min-width:44px;min-height:44px;border-radius:14px;border:0;background:var(--accent-soft,#F0EBF7);font-size:18px;cursor:pointer}
.lc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.lc-chip{display:inline-block;background:#FFF4D6;color:#5A4300;border-radius:999px;padding:6px 11px;font-size:13px;font-weight:700;margin:0 6px 8px 0}
[data-theme="dark"] .lc-chip{background:#4a3c10;color:#ffe7a3}
.lc-sp,.lc-ww{display:grid;gap:3px;font-size:12.5px;text-align:center;margin-bottom:10px}
.lc-sp>div,.lc-ww>div{background:var(--surface,#fff);border-radius:8px;padding:7px 2px;min-height:30px;word-break:break-word}
.lc-sp .hd,.lc-ww .hd{background:transparent;font-weight:800;color:var(--text-muted)}
.lc-sp .on{background:var(--accent,#6C4AB6);color:#fff}.lc-sp .hd.on{background:transparent;color:var(--accent,#6C4AB6)}
.lc-ww .hd.on{color:var(--accent,#6C4AB6)}
.lc-ww .lw-x{background:#FDECEF!important;color:#B3264A!important;font-weight:800}
.lc-info{background:var(--surface,#fff);border-radius:14px;padding:10px 12px;margin:0 0 10px;font-size:14px;line-height:1.45}
.lc-rchip{margin-top:6px}
.lw-t{display:block;font-size:10.5px;opacity:.8;margin-top:1px}
.lc-sp .lc-end{background:#E9F7EF;font-weight:700}
/* v125.9j.3: 🛒 Einkauf mit Bildern & Läden */
.sp-grid-wrap{margin:12px 0}.sp-grid-wrap>summary{font-weight:800;padding:10px 0}
.sp-gh{font-size:12px;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:10px 0 6px}
.sp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.sp-tile{position:relative;border:0;background:var(--surface,#fff);border-radius:16px;padding:8px 2px;min-height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;font:700 12px inherit;color:var(--text,#1E1B26);box-shadow:0 1px 3px rgba(0,0,0,.06);cursor:pointer}
.sp-tile i{font-style:normal;font-size:28px;line-height:1.1}.sp-tile span{margin-top:3px;text-align:center;word-break:break-word}
.sp-tile.on{outline:3px solid var(--accent,#6C4AB6)}.sp-tile b{position:absolute;right:4px;top:4px;background:var(--accent,#6C4AB6);color:#fff;border-radius:99px;font-size:11px;padding:0 6px}
.ss-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:4px 0 10px}
.ss-tab{flex:none;min-height:44px;padding:8px 12px;border-radius:12px;border:0;background:var(--accent-soft,#F0EBF7);color:var(--text,#1E1B26);font:800 13px inherit;cursor:pointer}.ss-tab.on{background:var(--accent,#6C4AB6);color:#fff}
.ss-sec{display:flex;align-items:center;justify-content:space-between;margin:12px 0 6px}
.sp-row{display:flex;align-items:center;gap:8px;background:var(--surface,#fff);border-radius:14px;padding:4px 6px 4px 10px;margin-bottom:6px}
.sp-ck{flex:1;display:flex;align-items:center;gap:10px;min-height:48px;font-size:15px;cursor:pointer}.sp-ck input{width:22px;height:22px}.sp-ck i{font-style:normal;font-size:22px}.sp-ck small{color:var(--text-muted);margin-left:4px}
.ss-pickbtn{border:0;background:transparent;min-height:44px;cursor:pointer}
.ss-chip{display:inline-block;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:800}.ss-none{background:var(--accent-soft,#F0EBF7);color:var(--text-muted)}
.ss-pick{display:flex;flex-wrap:wrap;gap:8px}.ss-opt{min-height:48px;padding:8px 16px;border-radius:14px;border:0;font:800 15px inherit;cursor:pointer;background:var(--accent-soft,#F0EBF7)}.ss-opt.on{outline:3px solid var(--accent,#6C4AB6)}
.ss-mrow{display:flex;align-items:center;justify-content:space-between}
.sm-row{display:flex;align-items:center;gap:12px;background:var(--surface,#fff);border-radius:16px;padding:14px;margin-bottom:8px;font-size:19px;cursor:pointer}
.sm-row input{width:30px;height:30px}.sm-row i{font-style:normal;font-size:26px}.sm-done{opacity:.45;text-decoration:line-through}
/* v125.9j.4: 🔁 Rhythmus */
.rw-quick{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}
.rw-days{flex-wrap:wrap;gap:6px;margin:6px 0}
.rw-sum small{display:block;color:var(--text-muted);font-size:12.5px;margin-top:3px}
.rw-box .sa-chips:has([data-sa-tog^="wds_"]){flex-wrap:nowrap;gap:4px}
.rw-box .sa-chips:has([data-sa-tog^="wds_"]) .chip{flex:1 1 0;min-width:0!important;padding-inline:0;justify-content:center}
.rw-days .chip{flex:1 1 0;min-width:0!important;padding-inline:0}
.rw-days{flex-wrap:nowrap!important}
/* v125.9j.5 🏫 Schulzeiten, OGS & Abholen */
.szo-box{background:var(--surface,#fff);border-radius:16px;padding:6px 10px;margin:8px 0}
.szo-row{display:grid;grid-template-columns:40px 1fr;gap:8px;align-items:start;padding:8px 0;border-bottom:1px solid var(--border,#eee)}
.szo-row:last-child{border-bottom:0}.szo-row>b{padding-top:8px}
.szo-row>div{display:flex;flex-wrap:wrap;gap:6px}.szo-s{flex-basis:100%;color:var(--text-muted);font-size:12.5px}
.szo-t{max-width:140px;margin-top:6px}
.szo-week{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:6px 0 8px}
.szo-d{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:72px;padding:8px 2px;border-radius:14px;border:1px solid var(--border,#e6ddf5);background:var(--surface,#fff);font:inherit;color:inherit;cursor:pointer}
.szo-d small{font-size:11.5px;color:var(--text-muted)}.szo-d span{font-weight:700;font-size:12.5px;overflow-wrap:anywhere;text-align:center}
.szo-d.on{border-color:var(--accent,#6c4ab6);box-shadow:0 0 0 1px var(--accent,#6c4ab6) inset}
.szo-d.off{opacity:.55}.szo-d.open span{color:var(--danger,#c0392b)}
.szo-new{width:100%;margin:6px 0 10px}
.lc-sp>div{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere}
/* v125.9j.6 📚 Lernzeit & 🏅 Stickerheft */
.lz-today{background:var(--surface,#fff);border-radius:18px;padding:14px;margin:4px 0 10px;display:flex;flex-direction:column;gap:4px}
.lz-today small{color:var(--text-muted)}.lz-go{width:100%;min-height:52px;font-size:17px;margin-top:6px}
.lz-week{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:4px 0 10px}
.lz-wd{background:var(--surface,#fff);border-radius:12px;padding:8px 2px;text-align:center;display:flex;flex-direction:column;gap:2px;font-size:13px}.lz-wd span{font-size:20px}.lz-wd.on{box-shadow:0 0 0 2px var(--accent,#6c4ab6) inset}
.lz-pr{margin:6px 0}.lz-pr span{display:flex;justify-content:space-between;font-size:14px}.lz-pr small{color:var(--text-muted)}
.lz-bar{height:10px;border-radius:6px;background:var(--surface-2,#ebe4f6);overflow:hidden;margin-top:4px}.lz-bar i{display:block;height:100%;background:var(--accent,#6c4ab6);border-radius:6px}
.lz-tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.lz-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:12px;border-radius:16px;border:1px solid var(--border,#e6ddf5);background:var(--surface,#fff);font:inherit;color:inherit;min-height:96px;cursor:pointer}
.lz-tile i{font-style:normal;font-size:26px}.lz-tile b{font-size:14px;line-height:1.25}.lz-tile small{color:var(--text-muted);font-size:12px}
.lz-tile.on{border-color:var(--accent,#6c4ab6);box-shadow:0 0 0 2px var(--accent,#6c4ab6) inset}
.lz-q{font-size:20px;font-weight:800;text-align:center;margin:6px 0}
.lz-show{display:flex;justify-content:center;align-items:center;min-height:150px;flex-direction:column}
.lz-big{font-size:42px;line-height:1.35;text-align:center;letter-spacing:4px}.lz-sum{font-size:46px;font-weight:800;letter-spacing:2px}.lz-row{font-size:34px}
.lz-word{font-size:30px;font-weight:800;text-align:center;margin-top:4px}.lz-rhyme{font-size:32px}
.lz-dot{width:120px;height:120px;border-radius:50%;box-shadow:0 3px 10px rgba(0,0,0,.15)}
.lz-clock{width:170px;height:170px}
.lz-ans{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:14px 0 6px}
.lz-a{min-width:84px;min-height:76px;padding:8px 14px;border-radius:22px;border:0;background:var(--surface,#fff);box-shadow:0 2px 8px rgba(0,0,0,.1);font:inherit;font-size:26px;font-weight:800;color:inherit;cursor:pointer}
.lz-a.ok{background:#2E9E5B;color:#fff}.lz-a.no{opacity:.35}
.lz-fb{text-align:center;font-size:17px;font-weight:700;min-height:1.5em}.lz-hint{text-align:center;font-size:15px;line-height:1.5}
.lz-stk{font-size:64px;text-align:center}
.lz-print .lz-sw{width:100%;height:auto;display:block;margin:8px 0}
.sh-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:6px 0 12px}
.sh-s{aspect-ratio:1;border-radius:50%;background:var(--surface,#fff);display:flex;align-items:center;justify-content:center;font-size:32px;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.sh-s.no{background:var(--surface-2,#efe9f8);box-shadow:none;border:2px dashed var(--border,#ddd)}
.sh-l{padding:6px 0;font-size:14px}.sh-l small{color:var(--text-muted)}
@media print{body.lz-printing>*:not(.sheet){display:none!important}body.lz-printing .sheet:not(#lxSheet):not(#shSheet){display:none!important}body.lz-printing .sheet{position:static!important;transform:none!important;box-shadow:none!important;max-height:none!important}body.lz-printing .ec-acts,body.lz-printing .sheet-close,body.lz-printing .sheet-handle{display:none!important}}
/* v125.9j.7 🧭 Hilfe & Anmeldung im neuen Look */
.hn-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}
.hn-t{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border-radius:18px;padding:12px;color:#fff;min-height:84px;text-align:left;border:0;font:inherit}
.hn-t i{font-style:normal;font-size:24px}.hn-t b{font-size:16px}.hn-t small{font-size:12px;line-height:1.3;opacity:.95}
.hn-t.w{grid-column:1/-1;min-height:64px}
button.hn-t{cursor:pointer}.hn-small .hn-t{min-height:70px}
.hn-auth{margin:4px 0 14px}.hn-auth .hn-t{min-height:72px}
.hn-forgot{display:block;margin:-4px 0 10px auto;font-weight:700}
.hn-tip{margin-top:6px}
.hn-hub{margin-bottom:10px}
/* v125.9j.7a: „Deine erste Woche“ über den Bereichen – ohne Zucken (eigene Klasse statt kt-show) */
.ui-kacheln #view-haupt > #fsCard.hn-fs:not([hidden]){ display:block !important; }
/* v125.9j.7a: Kopf zuckt nicht – kein Scroll-Anker beim Schrumpfen des Kopfes */
html, body{ overflow-anchor: none; }
/* v125.9j.7b: ＋ Neu anlegen als eigener Bereich · Hinweis neue Version */
.ke-grid .kt-tile.ke-add{min-height:64px;padding-top:10px;padding-bottom:10px;border-style:dashed}
.ke-grid .kt-tile.ke-add .kt-s,.ke-grid .kt-tile.ke-add small{font-size:11.5px}
.pg-sec.na-sec{opacity:.85}
.nv-bar{position:fixed;left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:60;background:#3B2A63;color:#fff;border:0;border-radius:14px;padding:12px 14px;font:inherit;font-weight:700;box-shadow:0 6px 18px rgba(0,0,0,.25)}
/* v125.9j.10: Aufgaben-Karte · Hobby-Gruppen-Karte */
.tk-list{display:flex;flex-direction:column;gap:6px}
.tk-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--surface,#fff);border:1px solid var(--line,#ECE6F5);border-radius:14px;padding:12px;font:inherit;color:inherit;cursor:pointer}
.tk-ck{flex:0 0 28px;height:28px;border-radius:9px;border:2px solid #CDBDEB;display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff}
.tk-row.done .tk-ck{background:#2E9E5B;border-color:#2E9E5B}.tk-row.done .tk-tx b{text-decoration:line-through;opacity:.55}
.tk-tx{display:flex;flex-direction:column;min-width:0}.tk-tx b{font-size:15px;font-weight:700}.tk-tx small{color:var(--muted,#736C86);font-size:12.5px}
.tk-add{display:flex;gap:8px;margin-top:10px}.tk-add .text-input{flex:1}
.hg-run{display:block;width:100%;text-align:left;border:0;border-radius:16px;padding:12px 14px;margin:2px 0 10px;background:linear-gradient(135deg,#2E8B57,#3FAF6E);color:#fff;font:inherit;cursor:pointer}
.hg-run b{display:block;font-size:17px;margin:2px 0}.hg-run small{display:block;font-size:12.5px;opacity:.95}
.hg-sec{background:var(--surface,#fff);border-radius:14px;padding:10px 12px;margin:8px 0;border:1px solid var(--line,#ECE6F5)}
.hg-sec>b{display:block;margin-bottom:4px;color:var(--ink,#3B2A63)}
.hg-row{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line,#F0EBF7);font-size:14px;width:100%;background:none;border-left:0;border-right:0;border-top:0;text-align:left;font-family:inherit;color:inherit}
.hg-row:last-child{border-bottom:0}.hg-row span:last-child{text-align:right;color:var(--muted,#5E5872)}
.hg-ch{cursor:pointer}
/* v125.9j.8: Spielregeln */
.sr-tabs{margin:2px 0 8px}
.sr-sec{background:var(--surface,#fff);border:1px solid var(--line,#ECE6F5);border-radius:14px;padding:10px 12px;margin:7px 0;font-size:14px;line-height:1.45}
.sr-sec b{display:block;color:var(--ink,#3B2A63);margin-bottom:2px}
.sr-house{background:#FFF8EA;border-color:#F1E2BF}
.sr-gh{font-size:12px;font-weight:800;color:var(--muted,#736C86);margin:14px 0 6px;text-transform:uppercase;letter-spacing:.05em}
.sr-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.sr-tile{text-align:left;background:var(--surface,#fff);border:1px solid var(--line,#ECE6F5);border-radius:12px;padding:9px 10px;font:inherit;color:inherit;cursor:pointer}
.sr-tile b{display:block;font-size:13.5px}.sr-tile small{display:block;color:var(--muted,#736C86);font-size:11.5px;line-height:1.3;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sr-bub{background:#DCF8C6;color:#1E2B1A;border-radius:12px 12px 2px 12px;padding:10px 12px;font-size:13.5px;line-height:1.45;white-space:pre-line;margin:10px 0 10px 24px;box-shadow:0 1px 2px rgba(0,0,0,.1)}
.sr-wa,.sr-wa-btn{background:#25D366!important;color:#fff!important;border-color:#25D366!important}
.sr-wa-btn{display:block;text-align:center;text-decoration:none;margin-top:4px}
#srQ{margin-bottom:4px}
/* v125.9j.9: Termine-Karte */
.tm-tabs{margin:2px 0 8px}
.tm-chips{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 6px}.tm-chips .tm-on{background:#6C4AB6;color:#fff;border-color:#6C4AB6}.tm-chips .tm-off{opacity:.55;text-decoration:line-through}
.tm-dh{font-size:12px;font-weight:800;color:var(--muted,#736C86);margin:12px 0 4px;text-transform:uppercase;letter-spacing:.05em}
.tm-ev{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:var(--surface,#fff);border:1px solid var(--line,#ECE6F5);border-radius:14px;padding:10px 12px;margin-bottom:6px;font:inherit;color:inherit;cursor:pointer}
.tm-ev i{font-style:normal;font-size:20px;flex:0 0 26px;text-align:center}.tm-ev span{flex:1;min-width:0}.tm-ev b{display:block;font-size:14.5px}.tm-ev small{display:block;color:var(--muted,#736C86);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tm-ev em{font-style:normal;font-weight:800;font-size:13px;color:var(--ink,#3B2A63)}.tm-ev.tm-x b{text-decoration:line-through;opacity:.6}
.tm-more{display:block;margin:8px auto 0}
.tm-nav{display:flex;align-items:center;justify-content:space-between;margin:4px 0 8px}.tm-nav b{font-size:14px}
.tm-wk{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.tm-wd{background:var(--surface,#fff);border:1px solid var(--line,#ECE6F5);border-radius:10px;padding:5px 2px;min-height:120px;font:inherit;color:inherit;text-align:center;cursor:pointer;display:flex;flex-direction:column;gap:2px;align-items:stretch}
.tm-wd b{font-size:11.5px}.tm-wd small{font-size:10px;line-height:1.25}.tm-wd .tm-e{background:#EDE6F7;border-radius:6px;padding:2px 1px}.tm-wd .tm-hol{color:#C0392B}.tm-wd.on{outline:2px solid #6C4AB6}
.tm-mo{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}
.tm-mh{font-size:12px;color:var(--muted,#736C86);padding:4px 0}
.tm-md{position:relative;background:var(--surface,#fff);border:1px solid var(--line,#ECE6F5);border-radius:10px;padding:9px 0;font:inherit;color:inherit;cursor:pointer}
.tm-md.on{background:#6C4AB6;color:#fff}.tm-md.hol{color:#C0392B}.tm-md.fer{box-shadow:inset 0 -3px 0 #2E9E5B}
.tm-md.has::after{content:'';position:absolute;bottom:3px;left:calc(50% - 2.5px);width:5px;height:5px;border-radius:50%;background:#C77A0A}
.tm-add{display:block;width:100%;margin-top:10px}
.tm-li{display:flex;gap:10px;padding:7px 0;border-bottom:1px solid var(--line,#F0EBF7);font-size:14.5px}.tm-li i{font-style:normal}
/* v125.9k: Kopf bleibt fest – Lupe statt Suchleiste, gelbe Nachrichten-Zeile auf der Startseite */
body.hq2.hd-home .hd-search{ display:none !important; }
body.hq2.hd-home #searchBtn, body.hq2.hd9.hd-home:not(.hd-slim) #searchBtn{ display:inline-flex !important; }
body.hq2 .hd-smart{ display:none !important; }
html{ scroll-padding-top:calc(var(--tbh, 0px) + 12px); }
.hq-news{ display:flex; align-items:center; gap:4px; background:#FFF4D6; color:#3A3020; border-radius:14px; padding:4px; margin:4px 0 12px; min-height:48px; position:relative; }
.hq-news[hidden]{ display:none !important; }
.hq-news .hq-txt{ flex:1; min-width:0; border:0; background:none; font:inherit; font-size:14px; font-weight:600; color:inherit; text-align:left; padding:8px 6px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; cursor:pointer; }
.hq-news .hq-txt.hq-in{ animation:hqIn .35s ease; }
@keyframes hqIn{ from{ opacity:0; transform:translateY(4px); } to{ opacity:1; transform:none; } }
.hq-news .hq-prev, .hq-news .hq-next{ flex:0 0 34px; height:34px; border:0; border-radius:10px; background:rgba(0,0,0,.05); color:inherit; font-size:18px; cursor:pointer; }
.hq-news .hq-prev[hidden], .hq-news .hq-next[hidden]{ display:none; }
.hq-news .hq-dots{ position:absolute; left:0; right:0; bottom:3px; display:flex; justify-content:center; gap:4px; pointer-events:none; }
.hq-news .hq-dots i{ width:5px; height:5px; border-radius:50%; background:rgba(58,48,32,.25); }
.hq-news .hq-dots i.on{ background:#C77D2B; }
:root[data-theme="dark"] .hq-news{ background:#3A3220; color:#F5E9C8; }
/* v125.9k: Erstellungskarten */
.nk-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:4px 0 8px}
.nk-tile{border:0;border-radius:18px;padding:12px;min-height:92px;color:#fff;text-align:left;font:inherit;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.08)}
.nk-tile i{font-style:normal;font-size:26px;display:block;margin-bottom:6px}.nk-tile b{display:block;font-size:15px}.nk-tile small{display:block;font-size:12px;opacity:.92;margin-top:2px}
.nk-tile.on{outline:3px solid var(--ink,#1E1633);outline-offset:2px}
.nk-free{background:#E3F5E8;color:#1F6B3A;border-radius:12px;padding:9px 11px;font-size:13px;margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.nk-ghost{display:block;width:100%;background:none;border:0;color:#6C4AB6;font:inherit;font-weight:700;padding:10px;cursor:pointer}
.nk-q{font-size:16px;font-weight:800;margin:12px 0 4px}
.nk-steps{display:flex;gap:6px;margin:2px 0 10px}.nk-steps span{flex:1;height:6px;border-radius:9px;background:#E6DDF5}.nk-steps span.on{background:#6C4AB6}
.nk-nav{display:flex;gap:8px;margin-top:14px}.nk-nav .btn{flex:1}
.nk-go{display:block;width:100%;margin-top:12px}
.nk-date{max-width:160px}
/* v125.9k.1: letzte Karten */
.lk-ring{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#C2477E,#E07AA3);color:#fff;border-radius:18px;padding:14px;margin:4px 0 8px}
.lk-ring b{display:block;font-size:17px}.lk-ring small{display:block;opacity:.95}
.lk-c{width:64px;height:64px;flex:0 0 64px;border-radius:50%;border:6px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px}
.lk-p{background:#C2477E;color:#fff;border-color:#C2477E}
.nk-tile.nk-add{background:var(--surface,#fff)!important;color:#6C4AB6;border:2px dashed #CDBDEB;box-shadow:none}
.lk-plv .segmented{margin-bottom:8px}
#lcSheet .lk-plv .lkp-cell{display:flex;flex-direction:column;gap:4px}
#lcSheet .lk-plv .lkp-cell .nk-tile{width:100%}
#lcSheet .lk-plv .lkp-fin{font-size:12.5px;justify-content:center}
/* v125.9k.2: Meisterschaft */
.mz-crown{display:flex;justify-content:space-between;gap:10px;background:linear-gradient(135deg,#C9A227,#E8C766);color:#3B2A06;border-radius:18px;padding:12px 14px;margin:2px 0 10px}
.mz-crown small{display:block;font-size:12px;opacity:.85}.mz-crown b{font-size:16px}.mz-crown .mz-r{text-align:right}
.mz-back{margin-bottom:6px}
.mz-day{border-bottom:1px solid var(--line,#F0EBF7);padding:6px 0}.mz-day:last-child{border:0}.mz-day.on{background:#FFF8E1;border-radius:10px;padding:6px 8px}
.mz-strich{font-family:ui-monospace,monospace;color:#B23A48;font-weight:800;letter-spacing:1px}
.mz-fv{max-width:90px}
.mz-ph{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:8px 0}
.mz-f{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:#EFE9F8}.mz-f img{width:100%;height:100%;object-fit:cover}
.mz-f span{position:absolute;left:0;right:0;bottom:0;background:rgba(0,0,0,.45);color:#fff;font-size:10px;padding:3px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mz-fx{position:absolute;top:3px;right:3px;border:0;border-radius:50%;width:24px;height:24px;background:rgba(0,0,0,.5);color:#fff;font-size:12px}
.mz-up{display:block;text-align:center;cursor:pointer}
.mz-vid{display:block;width:100%;border:0;border-radius:16px;background:linear-gradient(135deg,#3B2A63,#6C4AB6);color:#fff;padding:14px;margin:8px 0;text-align:center;font:inherit;cursor:pointer}.mz-vid b{display:block;font-size:16px;margin:4px 0}.mz-vid small{opacity:.9}
.mz-video{display:block;width:100%;border-radius:12px;margin-top:8px}
/* 9k.2 Serien */
#lcSheet .sr-in{align-items:center;gap:10px}
#lcSheet .sr-in input{max-width:120px;text-align:right}
#lcSheet .sr-disc,#lcSheet .sr-sel{max-height:46vh;overflow:auto}
#lcSheet .sr-disc small,#lcSheet .sr-sel small{opacity:.7;margin-left:2px}
#lcSheet .sr-del{margin-top:10px;color:#B23A48;border-color:#E9B7BF}
#lcSheet .sr-tpl .chip{margin-top:10px}
/* 9k.4 Pinnwand */
#lcSheet .pw-list{display:flex;flex-direction:column;gap:7px;max-height:52vh;overflow:auto;padding:2px}
#lcSheet .pw-post{background:var(--surface,#fff);border-radius:14px;padding:9px 11px;box-shadow:0 1px 3px rgba(0,0,0,.06);font-size:14px;line-height:1.45}
#lcSheet .pw-post.pin{border:2px solid #E8C766;background:#FFFBEA}
#lcSheet .pw-post.mine{background:#F3EEFA}
#lcSheet .pw-post.pw-re{margin-left:22px;font-size:13.5px}
#lcSheet .pw-hidden{opacity:.7;background:transparent;box-shadow:none;border:1px dashed #D8CFE8}
#lcSheet .pw-w{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted,#736C86);margin-bottom:2px;gap:6px}
#lcSheet .pw-w b{color:#3B2A63;font-size:13px}
#lcSheet .pw-more{border:0;background:transparent;font-size:18px;line-height:1;padding:2px 6px;cursor:pointer;color:inherit}
#lcSheet .pw-b{white-space:pre-wrap;word-break:break-word}
#lcSheet .pw-rx{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}
#lcSheet .pw-rx .chip{padding:3px 9px;font-size:12px;min-height:0}
#lcSheet .pw-rx .chip.on{background:#6C4AB6;color:#fff;border-color:#6C4AB6}
#lcSheet .pw-menu{display:flex;flex-direction:column;margin-top:8px;border-top:1px solid #EEE7F7}
#lcSheet .pw-menu > button{border:0;background:transparent;text-align:left;padding:10px 4px;font-weight:700;font-size:14px;border-bottom:1px solid #F3EEF9;cursor:pointer;color:inherit}
#lcSheet .pw-menu .pw-rep{color:#B23A48}
#lcSheet .pw-emo{display:flex;gap:4px;padding:6px 0}
#lcSheet .pw-emo button{border:1px solid #E6DDF5;background:#fff;border-radius:999px;font-size:20px;padding:4px 9px;cursor:pointer}
#lcSheet .pw-flag{color:#B23A48;font-weight:800}
#lcSheet .pw-inp{display:flex;gap:6px;align-items:flex-end;margin-top:8px}
#lcSheet .pw-inp textarea{flex:1;min-height:44px;resize:vertical}
#lcSheet .pw-cam{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#F3EEFA;font-size:20px;cursor:pointer}
#lcSheet .pw-prev{display:flex;align-items:center;gap:8px;margin-top:6px}
#lcSheet .pw-prev img{max-height:70px;border-radius:10px}
#lcSheet .pw-replying{font-size:13px;margin-top:8px;color:#6C4AB6;font-weight:700}
#lcSheet .pw-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}
#lcSheet .pw-day{margin-top:6px}
#ptBody .pw-pt{margin:0 0 10px}
@media (prefers-color-scheme: dark){ #lcSheet .pw-post.pin{background:#3A3420} #lcSheet .pw-post.mine{background:#2C2440} #lcSheet .pw-w b{color:#E3D9F7} }
/* 9l Doppelt */
#lcSheet .dp-pick{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}
#lcSheet .dp-opt{display:flex;flex-direction:column;gap:3px;text-align:left;border:2px solid #E6DDF5;background:#fff;border-radius:14px;padding:10px;cursor:pointer;color:inherit;font:inherit}
#lcSheet .dp-opt.on{border-color:#6C4AB6;background:#F3EEFA}
#lcSheet .dp-opt small{color:#736C86;font-size:12px}
#lcSheet .dp-opt span{font-weight:800;font-size:12.5px;color:#6C4AB6}
#lcSheet .dp-no{margin-top:10px}
.dp-pref{display:flex;align-items:center;justify-content:space-between;gap:8px}
@media (prefers-color-scheme: dark){ #lcSheet .dp-opt{background:#1E1830} #lcSheet .dp-opt.on{background:#2C2440} }
/* 9l Einkaufslisten */
#shopSheet .sl2-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;margin:2px 0 8px;scrollbar-width:none}
#shopSheet .sl2-chips::-webkit-scrollbar{display:none}
#shopSheet .sl2-chips .chip{flex:0 0 auto;white-space:nowrap}
/* 9l Ebenen, Wichtel-Angebote */
.lv-adw{margin-left:auto;align-self:center}
.lv-ad{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:12px;font-weight:800;text-decoration:none;background:#FFF4D6;border:1px solid #F0D58A;color:#7A5A00;border-radius:999px;padding:6px 10px;min-height:32px}
.lv-ad small{font-weight:700;opacity:.85}
.lv-sets{margin-top:12px}.lv-sets > b{display:block;margin-bottom:6px}
.hw-shop label.layer-row{align-items:center}
/* 9l Zeitstrahl */
.zs-wrap{background:var(--surface,#fff);border-radius:20px;padding:12px 12px 10px;margin:0 0 12px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.zs-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.zs-h b{font-size:17px}.zs-h span{font-size:12px;color:var(--muted,#736C86)}
.zs-chips{flex-wrap:nowrap;overflow-x:auto;margin:8px 0 4px;scrollbar-width:none}.zs-chips .chip{flex:0 0 auto}
.zs-tl{position:relative;margin:6px 0 4px 10px;padding-left:28px}
.zs-tl:before{content:'';position:absolute;left:10px;top:6px;bottom:6px;width:3px;background:#E1D6F2;border-radius:2px}
.zs-yr{display:inline-block;margin:12px 0 2px -32px;font-weight:800;font-size:12px;color:#3B2A63;background:#EFE9F8;border-radius:999px;padding:3px 10px;position:relative;z-index:1}
.zs-pt{position:relative;display:block;width:100%;text-align:left;background:#fff;border:0;border-radius:14px;padding:10px 46px 10px 12px;margin:8px 0;box-shadow:0 1px 3px rgba(0,0,0,.07);font:inherit;color:inherit;cursor:pointer;min-height:52px}
.zs-pt:before{content:attr(data-i);position:absolute;left:-32px;top:12px;width:26px;height:26px;border-radius:50%;background:#6C4AB6;display:flex;align-items:center;justify-content:center;font-size:14px}
.zs-pt b{display:block;font-size:15px}.zs-pt small{color:var(--muted,#736C86);font-size:12.5px}
.zs-pt.fut{border:2px dashed #CDBDEB;background:#FBF9FE;box-shadow:none}.zs-pt.fut:before{background:#CDBDEB}
.zs-th{float:right;width:40px;height:40px;border-radius:10px;margin:-2px -36px 0 8px;background:#F3EEFA center/cover no-repeat;display:none}.zs-th.on{display:block}
.zs-cam{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:18px;padding:6px;border-radius:10px}
.zs-th.on ~ .zs-cam{display:none}
.zs-now{display:flex;align-items:center;gap:8px;margin:10px 0 10px -33px;font-weight:800;color:#E14C7A;font-size:12.5px;position:relative;z-index:1}
.zs-now:before{content:'';width:26px;height:26px;border-radius:50%;background:#E14C7A;box-shadow:0 0 0 4px #F9D4E1}
@media (prefers-color-scheme: dark){ .zs-pt{background:#1E1830} .zs-pt.fut{background:#241D38} .zs-yr{background:#2C2440;color:#E3D9F7} }
/* 9l.1 Karten-Design */
.bk-card{border-radius:22px;overflow:hidden}
.bk-head{border-radius:20px;padding:14px 14px 12px!important;color:#fff!important;margin:-2px -2px 10px!important;box-shadow:0 3px 10px rgba(0,0,0,.08);border:0!important;min-height:64px;align-items:center}
.bk-head *{color:#fff!important}.bk-head strong,.bk-head > span:first-child{font-size:19px;line-height:1.25}.bk-head small{opacity:.92;font-size:12.5px}
.bk-head + .bk-now{border-radius:0 0 18px 18px;margin:-16px -2px 10px!important;padding:12px 14px!important;color:#fff!important;font-weight:800;font-size:15px;line-height:1.4}.bk-head + .bk-now *{color:#fff!important}.bk-head:has(+ .bk-now){border-radius:20px 20px 0 0}
.bk-band .bk-r{display:flex;justify-content:space-between;align-items:center;gap:8px}
.bk-band h3{margin:0;font-size:20px;line-height:1.2;color:#fff}
.bk-band small{display:block;opacity:.92;font-size:12.5px;margin-top:2px}
.bk-band .bk-ic{display:flex;gap:6px}
.bk-head .bk-hb{background:rgba(255,255,255,.22)!important;border:0!important;color:#fff!important;min-width:44px;min-height:44px;border-radius:50%!important}
.bk-card > .bk-now{border-radius:16px;padding:10px 12px!important;margin:8px 0;font-size:15px;font-weight:800;line-height:1.4;color:#fff}
.bk-now *{color:#fff!important}
.bk-card .wk-strip{margin-bottom:8px}
.bk-card .bk-acts{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}
.bk-card .bk-acts > .chip, .bk-card .bk-acts > button{min-height:52px;border-radius:16px!important;font-size:14.5px;font-weight:800;justify-content:center;text-align:center;white-space:normal;padding:10px 12px}
.bk-ad{margin-top:12px;border:1.5px dashed #F0D58A;background:#FFFBEA;border-radius:16px;padding:10px 12px;font-size:13px}
.bk-ad > b{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;color:#5A4200}
.bk-ad > b i{font-style:normal;font-size:11px;background:#F0D58A;border-radius:999px;padding:2px 8px;color:#5A4200}
.bk-adl{display:flex;flex-wrap:wrap;gap:6px}.bk-adlink{display:inline-flex;align-items:center;min-height:36px;padding:6px 10px;border-radius:12px;background:#fff;border:1px solid #F0D58A;color:#5A4200;text-decoration:none;font-weight:700}
.bk-start{background:#fff;border-radius:16px;padding:14px;text-align:center;margin:6px 0 10px;box-shadow:0 1px 3px rgba(0,0,0,.06)}.bk-start .bk-sbig{font-size:38px}.bk-start p{margin:6px 0 10px;color:var(--muted,#736C86);font-size:13.5px}.bk-start .chip-row{justify-content:center}
.bk-pref .chip-row{margin:4px 0 8px}
html.bk-font-l{font-size:112%}html.bk-font-xl{font-size:125%}
html.bk-font-l body{font-size:1.08em}html.bk-font-xl body{font-size:1.18em}
html.bk-contrast{--muted:#2B2540}html.bk-contrast body{color:#000}html.bk-contrast .type-note, html.bk-contrast small{color:#2B2540!important}html.bk-contrast .chip{border-color:#3B2A63!important}
html.bk-bigbtn .chip, html.bk-bigbtn button.btn{min-height:52px!important;font-size:1.05em}
@media (prefers-color-scheme: dark){ .bk-ad{background:#2A2414;border-color:#6B5A20} .bk-ad > b{color:#F0D58A} .bk-adlink{background:#1E1830;color:#F0D58A;border-color:#6B5A20} .bk-start{background:#1E1830} }
.bk-card > .bk-now .chip,.bk-card > .bk-now button{color:#2A2140!important;background:#fff!important}
.rg-btn{margin:4px 0 6px}
/* v125.9m Erstellungskarten I */
.m9-row{display:flex;gap:8px;align-items:center;margin-top:6px}.m9-row>*{flex:1;min-width:0}.m9-row>span{flex:0 0 auto}
.m9-tl{display:flex;flex-direction:column;gap:4px;border-left:3px solid var(--accent,#3672C9);padding-left:10px;margin:4px 0}
.m9-u{font-size:13px}.m9-u small{color:var(--text-muted)}.m9-ka{font-weight:600;color:#C0392B}
.m9-bsr{display:flex;flex-direction:column;gap:6px}
.m9-sec{margin-top:10px;padding-top:8px;border-top:1px dashed var(--border,#ddd)}.m9-sec>b{display:block;margin-bottom:4px}
.m9-bel .chip{min-width:36px;padding:4px 8px}.m9-bel .chip.active{background:#2E8B57;color:#fff}
.m9-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.m9-sd{display:flex;flex-direction:column;align-items:center;border-radius:8px;padding:3px 0;font-weight:700;font-size:14px}.m9-sd small{font-weight:400;font-size:10px;opacity:.8}
.m9-card .btn{width:100%;margin-top:6px}
.mw-card .btn{width:100%;margin:6px 0}.mw-list .school-line small{margin-left:auto;color:var(--text-muted)}
.mw-idea{align-items:center}.mw-idea .lv-ad{margin-left:auto;font-size:12px}.mw-idea .chip{margin-left:6px}
.mw-card textarea{width:100%}
/* v125.9m.1a Lernen & Lernhelfer */
.ln-card .btn{width:100%;margin-top:8px}.ln-card textarea{width:100%}
.ln-lv{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--border,#eee);font-size:14px}.ln-lv:last-of-type{border:0}
.ln-bar{flex:0 0 96px;height:8px;border-radius:4px;background:var(--surface-2,#eee);overflow:hidden}.ln-bar i{display:block;height:100%}
.ln-dice{font-size:88px!important;line-height:1}.ln-coins{font-size:20px!important;line-height:1.8}
/* v125.9m.1a: „Angebote & Orte“ ruhig und passend (Jazz 12:47) – nur Rahmen, keine Signalfarbe */
.bk-ad{background:transparent!important;border:1px solid var(--border,#E6E1EF)!important;border-radius:14px!important;padding:8px 10px!important;margin-top:14px;font-size:12.5px;opacity:.92}
.bk-ad > b{color:var(--text-muted,#7A7290)!important;font-weight:700;font-size:12px}
.bk-ad > b i{background:var(--surface-2,#F1EEF6)!important;color:var(--text-muted,#7A7290)!important;font-weight:600}
.bk-adlink{background:transparent!important;border:1px solid var(--border,#E6E1EF)!important;color:var(--text,#2A2140)!important;font-weight:600!important;min-height:34px;font-size:12.5px}
@media (prefers-color-scheme: dark){ .bk-ad{border-color:rgba(255,255,255,.14)!important} .bk-ad > b, .bk-ad > b i{color:rgba(255,255,255,.62)!important} .bk-ad > b i{background:rgba(255,255,255,.08)!important} .bk-adlink{border-color:rgba(255,255,255,.16)!important;color:rgba(255,255,255,.86)!important} }
/* v125.9m.1b Zuhause & Listen neu */
.ue-band{border-radius:20px;padding:14px;color:#fff;margin:0 0 10px;background:linear-gradient(135deg,#D9822B,#F0B05E);box-shadow:0 3px 10px rgba(0,0,0,.08)}.ue-band b{display:block;font-size:18px}.ue-band small{display:block;opacity:.92;margin-top:2px}
.ue-band.ue-sky{background:linear-gradient(135deg,#1E2A5A,#4B5BA0)}
.wl-anl .ue-more{display:none}.wl-anl.ue-open .ue-more{display:inline-flex}
.wl-row{background:var(--surface,#fff);border-radius:16px;padding:10px;margin:6px 0;box-shadow:0 1px 3px rgba(0,0,0,.05);align-items:center}
.wl-row .wl-e{font-size:28px;width:46px;height:46px;border-radius:12px;background:var(--surface-2,#F4EFFC);display:inline-flex;align-items:center;justify-content:center;flex:0 0 46px}
.wl-row .wl-c{min-height:40px;font-weight:800}
.ue-add{margin:10px 0}.ue-add > summary{list-style:none;display:block;text-align:center;cursor:pointer}.ue-add > summary::-webkit-details-marker{display:none}.ue-add[open] > summary{margin-bottom:8px}
.ue-strip{display:flex;gap:8px;overflow-x:auto;margin:0 0 10px;padding-bottom:2px}.ue-strip > div{flex:0 0 31%;min-width:96px;background:linear-gradient(160deg,#1E2A5A,#3B4A8A);color:#fff;border-radius:16px;padding:10px;font-size:12px}.ue-strip i{font-style:normal;font-size:24px;display:block}.ue-strip b{display:block;font-size:13px;margin:4px 0 2px;line-height:1.25}.ue-strip small{opacity:.85}
.ue-start{background:var(--surface,#fff);border-radius:16px;padding:12px;margin:6px 0 10px;text-align:center;box-shadow:0 1px 3px rgba(0,0,0,.06)}.ue-start p{margin:4px 0 8px;color:var(--text-muted,#736C86);font-size:13px}.ue-start .chip-row{justify-content:center}
.bk-card .med-row{border-left:3px solid var(--border,#E6DDF5);padding-left:10px;margin-left:4px}.bk-card .med-row.due-soon,.bk-card .med-row.due-late{border-left-color:#B23A48}
.ke-grid .eo-h{grid-column:1/-1;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted,#736C86);margin:8px 2px 0}
/* v125.9m.1d ⋯ Menü für alles */
.um-leute{background:var(--surface,#fff);border-radius:16px;padding:10px 12px;margin:0 0 10px;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.um-h{font-size:12px;font-weight:800;color:var(--text-muted,#736C86);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.um-faces{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.um-f{width:40px;height:40px;border-radius:50%;background:var(--surface-2,#E6DDF5);display:inline-flex;align-items:center;justify-content:center;font-weight:800;color:#3B2A63;font-size:13px;border:0}
.um-f.um-add{background:transparent;border:2px dashed #CDBDEB;color:#6C4AB6;font-size:20px;cursor:pointer}
.um-who{display:block;color:var(--text-muted,#736C86);margin:6px 0 4px}
.lc-hb.um-dots{font-size:22px;font-weight:900;letter-spacing:1px}
.um-card .um-rl{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-bottom:1px solid var(--border,#eee)}.um-seg{display:flex;flex-wrap:wrap;gap:6px}.um-seg .chip.active{background:#6C4AB6;color:#fff;border-color:#6C4AB6}
.um-link{width:100%;margin-top:10px}
#cmBody .cmg{background:var(--surface,#fff);border-radius:16px;padding:4px 8px;margin:0 0 10px;box-shadow:0 1px 3px rgba(0,0,0,.05)}
/* v125.9m.1: ＋ Neu für mich */
#lcSheet .nm-h{font-weight:700;font-size:.92rem;margin:14px 2px 6px;color:var(--text-2,#555)}
#lcSheet .nm-h:first-child{margin-top:2px}
/* Bereichs-Listen: keine Läden, nur diese Liste */
#shopSheet.ba-mode .ss-tabs{display:none!important}
/* Wunschliste: nichts überlappt (Jazz 26.10. 16:54) – Bild | Titel, Preis, Link | ✕ – darunter „Ich besorge das“ */
#wishBody .wl-row{display:grid!important;grid-template-columns:46px minmax(0,1fr) auto;grid-template-areas:"e t x" "e c c";gap:6px 10px;align-items:start}
#wishBody .wl-row .wl-e{grid-area:e}
#wishBody .wl-row .wl-t{grid-area:t;min-width:0}
#wishBody .wl-row .wl-c{grid-area:c;justify-self:start;max-width:100%;white-space:normal}
#wishBody .wl-row .wl-del{grid-area:x;align-self:start}
#wishBody .wl-row .wla{display:block;max-width:100%}
#wishBody .wl-row .wla .ad-hint{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 8px;max-width:100%;white-space:normal;line-height:1.3}
/* Überall: Anzeige-Links und Knöpfe brechen um statt zu überlappen (Jazz 16:56 „für alles für alle“) */
.ad-hint,.lv-ad,a.sp-partner,.bk-adlink{max-width:100%;white-space:normal;flex-wrap:wrap;overflow-wrap:anywhere}
.chip,.option-tile,.btn{max-width:100%}
.go-btns{flex-wrap:wrap}
/* v125.9m.1c: Karten innen neu */
.uc-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}
.uc-grid .uc-t{border:0;border-radius:18px;padding:12px;min-height:88px;color:#fff;text-align:left;display:flex;flex-direction:column;justify-content:flex-start;box-shadow:0 2px 6px rgba(0,0,0,.08);cursor:pointer;font:inherit}
.uc-grid .uc-t i{font-style:normal;font-size:24px;line-height:1;margin-bottom:6px}
.uc-grid .uc-t b{font-size:15px;line-height:1.25;color:#fff}
.uc-grid .uc-t small{font-size:12px;opacity:.92;margin-top:2px;color:#fff}
.uc-grid .uc-more{grid-column:1 / -1;border:2px dashed var(--border,#CDBDEB);background:transparent;border-radius:14px;padding:10px;font-weight:800;color:var(--accent,#6C4AB6);cursor:pointer;font:inherit;font-weight:800}
.uc-card .uc-now{border-radius:16px;padding:10px 12px!important;margin:8px 0;color:#fff}
.uc-card .uc-now *{color:#fff!important}
.uc-card .uc-now .chip,.uc-card .uc-now button,.uc-card .uc-now .btn{color:#2A2140!important;background:#fff!important}
html:not(.uc-full) .uc-card:not(.uc-open) .go-btns.bk-acts,html:not(.uc-full) .uc-card:not(.uc-open) > .school-btns{display:none!important}
html.uc-full .uc-grid .uc-more{display:none}
@media (prefers-reduced-motion:no-preference){.uc-grid .uc-t:active{transform:scale(.98)}}
/* v125.9n: Angebotskarten – ruhig, ganz unten */
.of-strip{margin:14px 0 4px;padding:10px 0 0;border-top:1px solid var(--border,#ECE6F5)}
.of-h{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--text-2,#736C86);font-weight:700;margin:0 2px 6px}
.of-h i{font-style:normal;font-size:11px;border:1px solid var(--border,#E1D6F2);border-radius:999px;padding:2px 8px;color:var(--text-2,#736C86)}
.of-row{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;-webkit-overflow-scrolling:touch}
.of-card{flex:0 0 46%;scroll-snap-align:start;border:1px solid var(--border,#ECE6F5);background:var(--surface,#fff);border-radius:14px;padding:8px;text-align:left;display:flex;flex-direction:column;gap:2px;cursor:pointer;font:inherit;color:inherit;min-width:140px}
.of-img{display:flex;align-items:center;justify-content:center;height:56px;border-radius:10px;font-size:26px;opacity:.85;margin-bottom:4px;filter:saturate(.7)}
.of-card b{font-size:13px;line-height:1.25}.of-card small{font-size:11.5px;color:var(--text-2,#736C86);line-height:1.3}.of-card em{font-style:normal;font-size:12px;font-weight:700;color:var(--accent,#6C4AB6);margin-top:2px}
.of-big .of-bigimg{height:110px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:48px;margin-bottom:8px;filter:saturate(.8)}
.of-big .of-go{display:block;text-align:center;margin:10px 0 4px;text-decoration:none}
/* v125.9o: Anreise & Zwischenstopps */
.ar-card .ar-h{display:flex;align-items:center;gap:8px;font-size:16px;margin-bottom:4px}.ar-card .ar-h b{flex:1}
.ar-tl{position:relative;margin:8px 0 6px 4px;padding-left:30px}.ar-tl:before{content:'';position:absolute;left:13px;top:6px;bottom:6px;width:3px;border-radius:2px;background:var(--border,#E1D6F2)}
.ar-st{position:relative;display:flex;gap:8px;align-items:flex-start;background:var(--surface,#fff);border:1px solid var(--border,#ECE6F5);border-radius:14px;padding:8px 10px;margin:7px 0}
.ar-st > i{position:absolute;left:-32px;top:6px;width:26px;height:26px;border-radius:50%;background:var(--accent,#6C4AB6);display:flex;align-items:center;justify-content:center;font-style:normal;font-size:14px}
.ar-st > div{flex:1;min-width:0}.ar-st b{display:block;font-size:14px}.ar-st small{display:block;color:var(--text-2,#736C86);font-size:12px;margin:1px 0 4px}
.ar-st .ar-t{font-weight:800;font-size:13px;white-space:nowrap}
.ar-st.ar-spiel{border-color:#9FD3B0;background:color-mix(in srgb,#2E8B57 7%,var(--surface,#fff))}
.ar-st.ar-end > i{background:#C77D2B}
.ar-st .chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.ar-st .chip-row .chip{min-height:34px;padding:6px 10px;font-size:12.5px}
/* v125.9m.2: Mein Netz */
.nz-sw{margin:4px 0 10px}
.nz-svg{width:100%;max-width:420px;display:block;margin:0 auto;touch-action:pan-y}
.nz-ring{fill:none;stroke:var(--border,#E6DDF5);stroke-width:1.5;stroke-dasharray:3 4}
.nz-line{opacity:.45;stroke-linecap:round}.nz-dash{stroke:#9A93AC;stroke-width:1;stroke-dasharray:4 4;opacity:.6}
.nz-node{cursor:pointer}.nz-node circle{stroke-width:2.5}.nz-node.nz-grp circle{stroke-width:3}.nz-node.nz-nomt circle{fill:#fff!important;stroke-dasharray:4 3}
.nz-node.nz-nomt .nz-in{fill:#6B6480}.nz-node.nz-fade{opacity:.45}
.nz-in{font:800 13px system-ui,sans-serif;fill:#fff;text-anchor:middle;pointer-events:none}.nz-grp .nz-in{font-size:17px}
.nz-lb{font:600 10.5px system-ui,sans-serif;fill:var(--text,#2A2140);text-anchor:middle;pointer-events:none}
.nz-me circle{fill:#6C4AB6;stroke:#fff;stroke-width:3}.nz-me .nz-in{font-size:12px}
.nz-leg{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;font-size:12px;color:var(--text-2,#736C86);margin:6px 0}.nz-leg i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:4px;vertical-align:-1px}.nz-leg i.nz-d{border-radius:0;height:0;width:14px;border-top:2px dashed #9A93AC;vertical-align:3px}
.nz-long .school-line{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.nz-long .school-line small{flex:1;color:var(--text-2,#736C86)}
.nz-tree{display:flex;flex-direction:column;gap:12px;margin:6px 0}.nz-gl{font-weight:800;font-size:13px;color:var(--text-2,#736C86);margin-bottom:6px}
.nz-gr{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.nz-tn{border:2px solid var(--accent,#6C4AB6);border-radius:14px;padding:8px 12px;background:var(--surface,#fff);text-align:center;min-width:72px}.nz-tn.me{background:var(--accent,#6C4AB6);color:#fff}.nz-tn.nomt{border-style:dashed}.nz-tn small{display:block;font-size:10.5px;color:var(--text-2,#736C86)}
.nz-open .school-line{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.nz-open .school-line span{flex:1}
/* v125.9m.1e: Garten-Fenster neu */
.gf-band{margin-bottom:10px}
#gdNowSheetBody.gf-tiles .plant-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#gdNowSheetBody.gf-tiles .plant-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:72px;padding:8px 6px;border-radius:16px;font-size:13px;font-weight:700;line-height:1.2;white-space:normal}
#gdNowSheetBody.gf-tiles .plant-chip.on{border:2px solid #2E8B57;background:color-mix(in srgb,#2E8B57 10%,var(--surface,#fff))}
.gf-chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}.gf-chips .chip[aria-pressed="true"]{background:var(--accent,#6C4AB6);color:#fff;border-color:var(--accent,#6C4AB6)}
.gf-q{font-size:12.5px;font-weight:700;color:var(--text-2,#736C86);margin:4px 2px}
.gf-quiet select{font-size:13px;opacity:.85}
#gdErnteSheetBody .gp-row input[type=number]{min-width:90px;flex:1}
.gf-band{background:linear-gradient(135deg,#2E8B57,#5FB37F)!important;color:#fff}.gf-band *{color:#fff}
/* Android: bei offener Tastatur „Weiter“ unter dem Feld, nicht darüber */
body.kb-open #saSheet .sa-nav,html.kb-open #saSheet .sa-nav{position:static!important;box-shadow:none!important;margin-top:12px}
body.kb-open .sheet-actions{position:static!important}
/* v125.10a: Sport neu */
.sn-ev{margin:8px 0 12px}.sn-ev > b{display:block;margin-bottom:4px}
.sn-nomst{font-weight:700;font-size:13px}
.sn-krr{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-bottom:1px solid var(--border,#ECE6F5)}.sn-krr small{display:block;color:var(--text-2,#736C86);font-size:12px}
.sn-kri{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:6px}.sn-kri input{min-width:0}
/* v125.10b ruhig */
.uc-grid .uc-t{min-height:88px;contain:layout}
.uc-grid .uc-t small{display:block;min-height:1.25em}
.bk-card .bk-now{transition:none!important}
/* v125.10b training */
.tb-u{display:flex;gap:10px;align-items:flex-start;width:100%;text-align:left;border:2px solid var(--border,#E3DAF3);background:var(--surface,#fff);border-radius:14px;padding:10px;margin:6px 0;font:inherit;cursor:pointer;color:inherit}
.tb-u i{font-style:normal;font-size:24px;line-height:1}
.tb-u span{display:flex;flex-direction:column;min-width:0}
.tb-u small{opacity:.8;font-size:12.5px}
.tb-u.on{border-color:#0E8A8A;background:#E3F5F4}
.tb-band{background:linear-gradient(135deg,#0E8A8A,#2E8B57);color:#fff;border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px;margin-bottom:8px}
.tb-band *{color:#fff}
.tb-now{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:8px 0}
.tb-now i{font-style:normal;font-size:44px;line-height:1}
.tb-now b{font-size:20px}
.tb-timer{font-size:64px;font-weight:900;text-align:center;font-variant-numeric:tabular-nums;letter-spacing:1px;margin:6px 0;color:#0E8A8A}
.tb-ctl{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tb-pl{display:flex;gap:8px;align-items:center;margin:4px 0}
.tb-pl > span{font-size:22px;flex:0 0 auto}
.tb-pl .chip-row{flex:1;min-width:0}
.tb-bar{height:16px;border-radius:10px;background:var(--border,#E3DAF3);overflow:hidden;margin:8px 0}
.tb-bar i{display:block;height:100%;background:linear-gradient(90deg,#2E8B57,#7BC67B);border-radius:10px}
.tb-done{font-weight:800;color:#2E8B57;text-align:center}
/* Zucken beim Wischen: kein Verkleinern beim Antippen (iOS löst :active schon beim Scrollen aus) */
.uc-grid .uc-t:active,.uc-grid .uc-t{transform:none!important;-webkit-tap-highlight-color:transparent}
.uc-grid .uc-t:active{filter:brightness(.94)}
.uc-grid{touch-action:pan-y}
/* v125.10b Stammbaum */
.sb-tree{gap:0}
.sb-tree .nz-gen{position:relative;padding:10px 0 14px;text-align:center}
.sb-tree .nz-gen + .nz-gen::before{content:"";position:absolute;top:-6px;left:50%;width:2px;height:14px;background:var(--accent,#6C4AB6);opacity:.45}
.sb-tree .nz-gl{text-align:center}
.sb-empty{color:var(--text-2,#736C86)}
.sb-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:stretch}
.sb-couple{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:18px;background:rgba(108,74,182,.08)}
.sb-heart{color:#D84B6B;font-size:18px}
.sb-sib{border:2px dashed var(--border,#CDBDEB);border-radius:18px;padding:6px 10px}
.sb-sl{font-size:12px;font-weight:800;color:var(--text-2,#736C86);margin-bottom:4px}
.sb-more{margin-top:10px;border:2px dashed var(--border,#CDBDEB);border-radius:18px;padding:10px;text-align:center}
.sb-more small{font-weight:400}
button.nz-tn{font:inherit;cursor:pointer;color:inherit}
.nz-tn.kid{border-color:#2E8B57}
.sb-op{padding:8px 0;border-bottom:1px solid var(--border,#EEE)}
.sb-op .chip-row{margin-top:6px}
/* v125.9j.8b Aufräumen & Archiv */
.fj-band{background:linear-gradient(135deg,#0E8A8A,#2E8B57);color:#fff;border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.fj-band *{color:#fff}
.fj-prog{height:10px;border-radius:99px;background:var(--border,#EFE8FA);margin:8px 0 6px;overflow:hidden}.fj-prog i{display:block;height:100%;background:#3FA66B;border-radius:99px}
.fj-sug{background:var(--surface,#fff);border:1px solid var(--border,#EEE6F8);border-radius:16px;padding:12px;margin:8px 0}
.fj-sug b{display:block;font-size:15px}.fj-sug small{display:block;color:var(--text-2,#736C86);font-size:12.5px;margin:3px 0 8px}
.fj-bt{display:flex;gap:8px;flex-wrap:wrap}.fj-bt button{flex:1 1 30%;min-height:44px;border:0;border-radius:12px;background:var(--chip,#F0EBF7);font:inherit;font-weight:700;font-size:13.5px;color:inherit;cursor:pointer;padding:0 8px}
.fj-bt .fj-p{background:var(--accent,#6C4AB6);color:#fff}.fj-bt .fj-r{background:#FDECEF;color:#B3264A}
.fj-done{background:linear-gradient(135deg,#2E8B57,#5FB37F);color:#fff;border-radius:18px;padding:16px;text-align:center;display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.fj-done b{font-size:19px;color:#fff}.fj-done small{color:#fff}
.fj-ar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--border,#F0EBF7)}.fj-ar i{font-style:normal;font-size:22px}.fj-ar > div{flex:1;min-width:140px}.fj-ar small{display:block;color:var(--text-2,#736C86);font-size:12px}
/* v125.11a Sport live */
.sl-band{background:linear-gradient(135deg,#1F6FA8,#4E9AD6);color:#fff;border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}.sl-band *{color:#fff}
.sl-m{align-items:center}.sl-m > span{flex:1;min-width:0;display:flex;flex-direction:column}.sl-m small{color:var(--text-2,#736C86)}
.sl-res{font-variant-numeric:tabular-nums;font-size:15px;white-space:nowrap}
.sl-moved{background:#1E1633;color:#fff;border-radius:14px;padding:10px 12px;margin-bottom:8px;display:flex;flex-direction:column;gap:2px}.sl-moved small{color:#D9D2EA}.sl-moved .chip{align-self:flex-start;margin-top:6px}
/* v125.11b Tippspiel */
.tq-m{background:var(--surface,#fff);border:1px solid var(--border,#EEE6F8);border-radius:16px;padding:10px 12px;margin:8px 0}
.tq-when{font-size:12px;color:var(--text-2,#736C86);margin-bottom:4px}
.tq-tm{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:3px 0}.tq-tm > span{font-weight:800;font-size:15px;min-width:0;overflow-wrap:anywhere}
.tq-stp{display:flex;align-items:center;gap:6px;flex:0 0 auto}.tq-stp button{width:40px;height:40px;border-radius:12px;border:0;background:var(--chip,#F0EBF7);font:inherit;font-weight:800;font-size:18px;color:inherit;cursor:pointer}.tq-stp b{font-size:20px;min-width:22px;text-align:center;font-variant-numeric:tabular-nums}
.tq-ok{display:block;color:#2E8B57;font-weight:700;margin-top:2px;min-height:1.2em}
.tq-lock{opacity:.92}.tq-lock .chip{cursor:default}
.tq-crown{background:linear-gradient(135deg,#C9A227,#E8C766);color:#3B2A06;border-radius:16px;padding:12px 14px;margin:8px 0}.tq-crown *{color:#3B2A06}
.tq-wbtn{margin:8px 0;gap:8px}
/* v125.12a Essen */
.ez-band{background:linear-gradient(135deg,#C2477E,#E07AA3);color:#fff;border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}.ez-band *{color:#fff}
.ez-store .ez-band{background:linear-gradient(135deg,#4E7D3A,#79B26F)}
.ez-day > span{flex:1;min-width:0;display:flex;flex-direction:column}.ez-day small{color:var(--text-2,#736C86)}
.ez-it{display:flex;gap:12px;align-items:center;width:100%;text-align:left;border:0;background:var(--surface,#fff);border-radius:14px;padding:12px;margin:6px 0;font:inherit;color:inherit;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.06);min-height:56px}
.ez-it i{font-style:normal;flex:0 0 32px;height:32px;border-radius:10px;border:3px solid #4E7D3A;display:flex;align-items:center;justify-content:center;font-weight:900;color:#fff;font-size:18px}
.ez-it.done i{background:#4E7D3A}.ez-it.done b{text-decoration:line-through;opacity:.55}
.ez-it span{display:flex;flex-direction:column;min-width:0}.ez-it b{font-size:16px}.ez-it small{color:var(--text-2,#736C86)}
.ez-off{background:#1E1633;color:#fff;border-radius:14px;padding:10px 12px;margin-bottom:8px;font-size:13.5px}
.ez-ord .school-line .chip{flex:0 0 auto}
/* v125.12b Kochfee */
.kf-band{background:linear-gradient(135deg,#7A4FA0,#A783CC);color:#fff;border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}.kf-band *{color:#fff}
.kf-vor .school-line small{color:var(--text-2,#736C86);margin-left:auto;margin-right:6px}
.kf-soon{background:#FFF1E4;border-radius:10px;padding-left:6px}
.kf-bud{margin-top:10px}
/* v125.13 Ida erzählt */
.id-band{background:linear-gradient(135deg,#0E8A8A,#3FB3B3);color:#fff;border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px;margin:8px 0}.id-band *{color:#fff}
.id-st .id-x{margin:4px 0 6px;font-size:14px;line-height:1.45}
.id-kid{background:#FFF1E4;color:#8A3B00;border-radius:12px;padding:8px 10px;font-weight:700;font-size:13.5px;margin:0 0 8px}
.id-st .fj-bt a{text-decoration:none;display:flex;align-items:center;justify-content:center;flex:1 1 30%;min-height:44px;border-radius:12px;font-weight:700;font-size:13.5px}
.id-days{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.id-wx{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px;margin:6px 0}.id-wx span{background:var(--surface,#fff);border-radius:12px;padding:6px;text-align:center;font-size:12.5px;box-shadow:0 1px 2px rgba(0,0,0,.05)}.id-wx b{display:block}
.id-pdf{display:flex;align-items:center;justify-content:center;cursor:pointer}
.id-found{margin-top:8px}
/* Reise-Reiter: mit „Ida“ 6 Reiter → zwei Reihen statt Überlappen */
#rsTabs.rs-tabs{flex-wrap:wrap;gap:4px}
#rsTabs.rs-tabs > button{flex:1 1 30%;min-width:0}
#rsTabs.rs-tabs > button span{white-space:nowrap}
/* v125.14 Ziele & Erfolge */
.ze-crown{background:linear-gradient(135deg,#C9A227,#E8C766);color:#3B2A06;border-radius:16px;padding:12px 14px;margin-bottom:8px;display:flex;flex-direction:column;gap:2px}
.ze-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ze-b{background:var(--surface,#fff);border-radius:16px;padding:10px 6px;text-align:center;box-shadow:0 1px 3px rgba(0,0,0,.06);display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}
.ze-b i{font-style:normal;font-size:28px}.ze-b b{font-size:12.5px;overflow-wrap:anywhere}.ze-b small{font-size:11px;color:var(--text-2,#736C86)}.ze-b.off{opacity:.45;filter:grayscale(1)}
.ze-lv{border-radius:99px;padding:1px 8px;font-size:10.5px;font-weight:800;color:#3B2A06}.ze-lv.ze-lb{background:#E7B48A}.ze-lv.ze-ls{background:#DADDE3}.ze-lv.ze-lg{background:#F5D76E}
.ze-goal{background:var(--surface,#fff);border-radius:16px;padding:12px;margin:8px 0;box-shadow:0 1px 3px rgba(0,0,0,.05)}.ze-goal b{display:block}.ze-goal small{color:var(--text-2,#736C86)}
.ze-yc{border-radius:20px;padding:16px;color:#fff;margin:8px 0;display:flex;flex-direction:column;gap:2px}.ze-yc b{font-size:26px;line-height:1.15;overflow-wrap:anywhere}.ze-yc small{font-size:14px}
.ze-show{position:fixed;inset:0;z-index:300;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:32px;gap:8px;cursor:pointer}.ze-show b{font-size:40px;line-height:1.1}.ze-show small{font-size:18px}.ze-show .ze-x{position:absolute;bottom:28px;font-size:13px;opacity:.85}
.ze-page{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:#FFF8E7;border-radius:18px;padding:12px}.ze-page span{aspect-ratio:1;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:0 1px 3px rgba(0,0,0,.08)}.ze-page .e{background:transparent;border:2px dashed #E3D3A8;box-shadow:none;font-size:13px;color:#C9B27A}
/* v125.15a */
.w2-sub{font-size:12.5px;color:var(--text-2,#736C86);margin:2px 0 6px}
/* v125.15b Testpaket */
.tp-bug{position:fixed;right:14px;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:120;width:52px;height:52px;border-radius:50%;border:0;background:#B3264A;color:#fff;font-size:24px;box-shadow:0 4px 12px rgba(0,0,0,.25);cursor:pointer}
.tp-band{background:linear-gradient(135deg,#B3264A,#E0607E);color:#fff;border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.tp-band *{color:#fff}
.tp-t{background:var(--surface,#fff);border:1px solid var(--border,#EEE6F8);border-radius:16px;padding:10px 12px;margin:8px 0}
.tp-t.ok{border-color:#2E8B57}.tp-t.bug{border-color:#B3264A}
.tp-h{display:flex;gap:10px;align-items:flex-start;margin-bottom:8px}.tp-h i{font-style:normal;font-size:22px}.tp-h span{display:flex;flex-direction:column}.tp-h small{color:var(--text-2,#736C86)}
/* v125.15b Tour: fehlt etwas → anlegen */
.tour-tip .tt-need{margin:.4rem 0 .6rem;padding:.55rem .7rem;border-radius:12px;background:var(--surface-2,#f3f1ec)}
.tour-tip .tt-need p{margin:0 0 .45rem;font-size:.92rem}
.tour-tip .tt-need .btn{width:100%}
.gp-row.fw-add{flex-wrap:wrap}
.gp-row > small.tf-h{flex-basis:100%;order:9;margin-top:2px}
small.tf-h{display:block;color:var(--muted,#6b6b6b)}
/* v125.16 👩‍🍳 Küchen-Modus */
#lcSheet .ez-dish .km-z{cursor:pointer;align-items:center}
#lcSheet .ez-dish .km-cb{width:26px;height:26px;border-radius:8px;border:2px solid #CDBDEB;display:inline-flex;align-items:center;justify-content:center;margin-left:10px;font-weight:800;color:#fff;flex:0 0 auto}
#lcSheet .ez-dish .km-z[aria-checked="true"] .km-cb{background:#3FA66B;border-color:#3FA66B}
#lcSheet .ez-dish .km-z[aria-checked="true"] span:first-child{color:var(--muted,#736C86)}
.km-go{margin-top:12px}
#kmSheet .km-box{background:#1E1633;color:#fff;border-radius:22px;padding:14px;min-height:60vh;display:flex;flex-direction:column}
#kmSheet .km-dots{display:flex;gap:5px}#kmSheet .km-dots i{flex:1;max-width:28px;height:6px;border-radius:3px;background:#3B2A63}#kmSheet .km-dots i.on{background:#F5D76E}
#kmSheet .km-tmr{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 0;min-height:4px}
.km-chip{background:#E14C7A;color:#fff;border:0;border-radius:999px;padding:8px 12px;font-weight:800;font-size:14px;min-height:40px}.km-chip.g{background:#3FA66B}
#kmSheet .km-n{font-size:13px;opacity:.8;margin-top:10px}
#kmSheet .km-st{font-size:24px;line-height:1.35;font-weight:800;margin:14px 0 12px;touch-action:pan-y}
#kmSheet .km-sg .km-st{font-size:31px}
#kmSheet .km-kid{align-self:flex-start;background:#F5D76E;color:#3B2A06;border-radius:999px;padding:5px 11px;font-weight:800;font-size:14px}
#kmSheet .km-tb{display:block;width:100%;background:#fff;color:#1E1633;border:0;border-radius:16px;padding:15px;font-weight:800;font-size:18px;margin-top:14px;min-height:54px}
#kmSheet .km-note{font-size:13px;opacity:.8;margin:12px 0 0}
#kmSheet .km-done{margin-top:12px;font-size:20px;font-weight:800;color:#F5D76E}
#kmSheet .km-nav{margin-top:auto;padding-top:16px;display:grid;grid-template-columns:1fr 1fr 2fr;gap:8px}
#kmSheet .km-nav button{background:#3B2A63;color:#fff;border:0;border-radius:16px;min-height:60px;font-weight:800;font-size:19px}
#kmSheet .km-nav button.p{background:#6C4AB6}#kmSheet .km-nav button:disabled{opacity:.35}
.km-pill{position:fixed;left:12px;right:12px;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;gap:6px;flex-wrap:wrap;justify-content:center;pointer-events:none}
.km-pill .km-chip{pointer-events:auto;box-shadow:0 4px 14px rgba(0,0,0,.25)}
/* v125.16a Sport anlegen: eigene Uhrzeit */
.sna-own{display:flex;align-items:center;gap:10px;margin:8px 0}.sna-own label{flex:1;font-weight:700;font-size:14px}.sna-own .m9-t{max-width:140px}
/* v125.16a 📅 Trainingsplan */
.trp-band .tb-bar{margin:8px 0 6px}
.trp-u{display:flex;gap:10px;align-items:flex-start;background:var(--surface,#fff);border-radius:14px;padding:10px 12px;margin:6px 0;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.trp-u span{flex:1}.trp-u b{display:block;font-size:15px}.trp-u small{display:block;color:var(--muted,#736C86);font-size:13px;margin-top:2px;line-height:1.35}
.trp-cb{flex:0 0 auto;width:34px;height:34px;border-radius:10px;border:2px solid #CDBDEB;background:#fff;font-weight:800;color:#fff;font-size:17px}
.trp-u.on .trp-cb{background:#3FA66B;border-color:#3FA66B}.trp-u.on b{text-decoration:line-through;opacity:.7}
.trp-u.mv{opacity:.55}.trp-u.mv .trp-cb{color:#C77D2B;border-color:#E9C9A4}
.trp-grid{margin-top:12px}.trp-grid .uc-t[disabled]{opacity:.45}
.nk-q + .sa-chips{margin-top:4px}
.lq-now{color:#2E8B57}
/* v125.16a ‹ Zurück in Karten */
#lcSheet .sheet-head .lb-back{flex:0 0 auto;margin-right:8px;border:0;background:var(--surface-2,#F0EBF7);border-radius:999px;padding:8px 12px;font-weight:800;font-size:14px;min-height:40px;color:inherit}
/* 🏆 Familien-Challenge */
.fq-p{display:grid;grid-template-columns:80px 1fr auto;gap:8px;align-items:center;margin:6px 0;font-size:14px}.fq-p .tb-bar{margin:0}
.fq-e{display:flex;gap:10px;align-items:center;background:var(--surface,#fff);border-radius:12px;padding:8px 10px;margin:6px 0}.fq-e span:nth-child(2){flex:1}.fq-e b{display:block;font-size:14px}.fq-e small{color:var(--muted,#736C86);font-size:12.5px}.fq-i{font-size:22px}
.fq-acts .chip{pointer-events:none;opacity:.85}
/* 📝 Aufgabe */
.td-done{display:block;width:100%;text-align:left;border:2px solid #CDBDEB;background:var(--surface,#fff);border-radius:14px;padding:12px;font-weight:800;font-size:15px;min-height:48px;color:inherit}.td-done.on{background:#E3F4EA;border-color:#3FA66B}
.td-row{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:8px;align-items:center;margin-top:8px}.td-row label{font-size:13px;font-weight:700}
.td-st{display:flex;gap:10px;align-items:center;margin:5px 0}.td-st span{flex:1}.td-st.on span{text-decoration:line-through;opacity:.6}
.td-ck{width:30px;height:30px;border-radius:9px;border:2px solid #CDBDEB;background:#fff;font-weight:800;color:#fff;flex:0 0 auto}.td-st.on .td-ck{background:#3FA66B;border-color:#3FA66B}
.td-bits{color:var(--muted,#736C86)}
/* 🏆 Ziele & Erfolge mehr */
.zq-open{cursor:pointer}.zq-more{color:var(--muted,#736C86)}
.zq-fb{margin:6px 0 4px;font-size:13.5px;color:var(--text,#1E1633)}
.ze-grid .ze-b[data-ze-b]{cursor:pointer}
.zq-sug{display:grid;grid-template-columns:1fr 1fr;gap:8px}.zq-s{display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:1.5px dashed #CDBDEB;background:var(--surface,#fff);border-radius:14px;padding:10px;min-height:76px;color:inherit}.zq-s i{font-style:normal;font-size:22px}.zq-s b{font-size:14px}.zq-s small{font-size:12px;color:var(--muted,#736C86)}
.zq-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center;font-size:13px}.zq-cal span{padding:7px 0;border-radius:9px;background:var(--surface,#fff);position:relative}.zq-cal span.h{background:none;font-weight:800;font-size:11px;color:var(--muted,#736C86)}.zq-cal span:empty{background:none}.zq-cal span.on{background:#3FA66B;color:#fff;font-weight:800}.zq-cal span.td{outline:2px solid #6C4AB6}.zq-cal i{position:absolute;top:1px;right:3px;font-style:normal;font-size:9px}
.zq-week{margin-bottom:10px}
/* 🧭 Ordnung */
#ktHome .card.ke-edit .row .oq-del{margin-right:6px;min-width:40px;min-height:40px}
.oq-empty{padding:6px 2px}.oq-empty b{display:block;font-size:17px;margin-bottom:4px}
/* 🧘 Karte öffnen ohne Zucken */
#view-haupt{transition:opacity .14s ease}
#view-haupt.rq2-swap{opacity:0}
/* 🧘 Karten springen nicht */
#view-haupt > .card.ks-hold{transition:min-height .25s ease}
#view-haupt{overflow-anchor:auto}
.ksh-ghost{pointer-events:none!important}
.rk-bar{position:sticky;top:0;z-index:2;background:var(--bg,#F7F4FB);padding-bottom:6px}
.rk-bar .chip-row{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}

/* v125.16b: 🎡 Ausflüge · 🏃 Mach mit! · ＋-Zentrale */
.af-tiles,.mm-two{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:6px 0 4px}
.af-tile{display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:0;border-radius:18px;padding:12px;min-height:92px;color:#fff;box-shadow:0 2px 6px rgba(0,0,0,.08);font:inherit;cursor:pointer}
.af-tile i{font-style:normal;font-size:24px;line-height:1;margin-bottom:6px}
.af-tile b{font-size:15px;line-height:1.2}
.af-tile small{font-size:12px;opacity:.92;margin-top:2px;line-height:1.3}
.af-find{display:flex;gap:6px;align-items:center;margin:6px 0}
.af-find .text-input{flex:1;min-width:0}
.af-find .chip{flex:0 0 auto;min-height:44px}
.af-place{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;background:var(--surface,#fff);border-radius:14px;padding:10px 12px;margin:6px 0;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.af-place b{flex:1 1 60%;font-size:15px}
.af-place small{flex-basis:100%;color:var(--muted,#736C86);font-size:12.5px;order:3}
.af-wx{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;background:#EEF7F1;border-radius:14px;padding:10px 12px;margin:6px 0}
.af-wx b{font-size:20px}
.af-wx small{flex-basis:100%;font-weight:700}
.af-wx.bad{background:#FFF1E4;color:#8A3B00}
.af-planb{font-size:13.5px;margin:4px 0 8px}
.af-kids{margin:4px 0 8px;padding-left:20px;font-size:14px;line-height:1.5}
.af-wish{display:flex;gap:6px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line,#F0EBF7)}
.af-wish span{flex:1;min-width:0;font-weight:700}
.af-again{display:flex;gap:8px;align-items:center;margin-top:10px}
.af-again b{flex:1}
.af-arts{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}
.af-arts .chip{flex:0 0 auto}
.mm-row .tb-bar{display:block;margin-top:6px}
.mm-fb{font-weight:700;margin:6px 0 4px;font-size:14px}
.mm-cert-in{border:3px double #C9A227;border-radius:16px;padding:16px;text-align:center;background:#FFFDF6;line-height:1.7}
.mm-cert-in b{display:block;font-size:20px;margin-bottom:4px}
.mm-cert-in p{font-weight:800;margin:0 0 8px}
.mm-cert-in small{display:block;color:var(--muted,#736C86);margin-top:8px}
.pz-top{position:sticky;top:0;z-index:2;background:var(--sheet-bg,#F7F4FB);padding-bottom:6px}
.pz-q{width:100%;box-sizing:border-box;font-size:16px}
#pzRes .option-tile{margin-top:6px}
.pz-card .chip{margin:0 6px 6px 0}

/* v125.16c: 🧳 Reisen 2.0 · 🛣️ Etappen · 🎯 Programm · 🌍 Land */
.rx-hint{margin:8px 0}
.et-row{display:flex;gap:10px;align-items:flex-start;background:var(--surface,#fff);border-radius:14px;padding:10px 12px;margin:6px 0;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.et-row.long{box-shadow:inset 3px 0 0 #E0A800,0 1px 3px rgba(0,0,0,.05)}
.et-n{flex:0 0 26px;height:26px;border-radius:50%;background:#B5452B;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px}
.et-b{flex:1;min-width:0}.et-b b{display:block;font-size:14.5px}.et-b small{display:block;color:var(--muted,#736C86);font-size:12.5px;margin-top:2px}
.et-b .et-warn{color:#8A5A00;font-weight:700}
.pg3-anker{background:#EEF3FC;border-radius:16px;padding:10px 12px;margin:6px 0}
.pg3-row{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line,#F0EBF7)}
.pg3-i{font-size:20px;flex:0 0 26px;text-align:center}.pg3-b{flex:1;min-width:0}.pg3-b b{display:block}.pg3-b small{color:var(--muted,#736C86);font-size:12.5px}
.pg3-v{flex:0 0 auto}
.lk-row{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line,#F0EBF7);font-size:14px}
.lk-row b{text-align:right}
.lk-conv{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;background:#EEF7F1;border-radius:14px;padding:10px 12px;margin:8px 0}
.lk-conv .text-input{max-width:110px}.lk-conv b{font-size:17px}.lk-conv small{flex-basis:100%;color:var(--muted,#736C86)}
#rsTabs{overflow-x:auto;flex-wrap:nowrap}#rsTabs button{flex:0 0 auto}
.lk-aa{border-radius:12px;padding:8px 12px;margin:8px 0;font-weight:700;font-size:13.5px}.lk-aa:empty{display:none}
.lk-aa.ok{background:#EEF7F1;color:#1E7A50}.lk-aa.mid{background:#FFF4D6;color:#7A5A00}.lk-aa.bad{background:#FDECEF;color:#B3264A}

/* v125.16d: Vorlagen-Offensive */
.fv-box .shop-row{margin:2px 0}
.tv-row,.tvp-row{margin:8px 0 4px}
.tv-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.tv-chips .chip{flex:0 0 auto}
.tvp-row .chip-row{flex-wrap:nowrap;overflow-x:auto}.tvp-row .chip{flex:0 0 auto}
.gk-nudge{margin-left:6px}
.gk-plus{min-width:44px}
#apBtn{margin:6px 0}

/* v125.16e: Kinder, Haustiere */
.kr-rt{background:var(--surface,#fff);border-radius:16px;padding:10px 12px;margin:8px 0;box-shadow:0 1px 3px rgba(0,0,0,.05)}.kr-rt.all{box-shadow:inset 0 0 0 2px #E0A800}
.kr-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.kr-h span{font-weight:800;color:#8A5A00}
.kr-s{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;border:2px solid var(--line,#E6DDF5);background:#fff;border-radius:14px;padding:6px 10px;margin:4px 0;font:inherit;font-size:15px;text-align:left}
.kr-s i{font-style:normal;font-size:26px}.kr-s.on{background:#EEF7F1;border-color:#2E8B57}.kr-s.on span{text-decoration:line-through;opacity:.7}
.kr-a{display:flex;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line,#F0EBF7)}.kr-a span{flex:1}
.kr-v{display:grid;grid-template-columns:1fr auto auto auto;gap:4px 8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line,#F0EBF7)}.kr-v small{grid-column:1;color:var(--muted,#736C86)}.kr-v b{grid-column:1}
.kr-v.done{opacity:.6}.kr-v.now b{color:#B5452B}.kr-v.past{opacity:.45}
.ht-pet{margin-bottom:14px}.ht-now{font-size:15px;margin:6px 0}.ht-low{color:#B5452B;font-weight:700}

/* v125.16f: Aufräumen */
.af2-hide{display:none!important}
.af2-dots{flex:0 0 auto;min-width:36px}
.af2-empty{text-align:center;padding:22px 12px;color:var(--text,#221D33)}.af2-empty .af2-big{font-size:40px}.af2-empty p{color:var(--muted,#736C86);margin:6px 0 12px}
.fq-acts .chip,.chip[aria-hidden="true"]{background:transparent!important;border:1px dashed var(--line,#E6DDF5)!important;box-shadow:none!important;min-height:0;padding:4px 9px;font-weight:600;cursor:default}
.tb-fc button.chip,.wl-anl .chip{min-height:44px}
.hq-band{background:linear-gradient(135deg,#6C4AB6,#8B6AD6);color:#fff;border:0}
.hq-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.hq-top b{font-size:19px}.hq-top small{opacity:.9}
.hq-now{background:rgba(255,255,255,.16);border-radius:14px;padding:10px 12px;margin:10px 0 8px;font-size:15px}
.hq-mini{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hq-mini button{border:0;border-radius:14px;background:rgba(255,255,255,.95);color:#221D33;padding:10px;font:inherit;font-size:13.5px;text-align:left;min-height:48px}.hq-mini b{font-size:17px}
#view-haupt > .card:not(.hq-band):not(:has(.bk-head, .ue-band, .tb-band, .kt-head, .sc-head)){background-image:linear-gradient(var(--accent, #6C4AB6),var(--accent, #6C4AB6));background-size:100% 4px;background-repeat:no-repeat;background-position:top left}
#saSheet [data-sa-all]{display:block;width:100%;text-align:center;border:1.5px solid var(--line,#DCD3EE);border-radius:14px;padding:11px;margin-top:10px;background:transparent;text-decoration:none;font-weight:700;color:var(--accent,#6C4AB6)}
/* v125.16f Pläne-Leiste */
.pn-bar{display:flex;gap:6px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.pn-bar::-webkit-scrollbar{display:none}
.pn-chip{flex:0 0 auto;white-space:nowrap;min-height:40px;padding:8px 12px;border-radius:999px;background:var(--card,#fff);border:1px solid var(--line,#E6DDF5);font:inherit;font-size:13.5px;font-weight:800;color:inherit;cursor:pointer}
.pn-chip.on{background:var(--accent,#6C4AB6);color:#fff;border-color:var(--accent,#6C4AB6)}.pn-chip.ps:not(.on){opacity:.7}.pn-chip.ad{border-style:dashed;color:var(--accent,#6C4AB6)}
.pn-note{font-size:13px;background:#F3EEFA;border-radius:12px;padding:8px 10px;margin:0 0 8px}
.pn-conf{background:#FFF7E6;border:1px solid #F2D49B;border-radius:12px;padding:8px 10px;font-size:13px;margin:0 0 8px}.pn-conf b{display:block}.pn-conf .btn{margin-top:6px;width:100%}
.pn-sw{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 10px}.pn-sw .btn{width:100%}
.pn-row{display:flex;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line,#F0EBF7)}.pn-row:last-of-type{border:0}
.pn-open{flex:1;text-align:left;background:none;border:0;font:inherit;color:inherit;padding:4px 0;cursor:pointer}.pn-open b{display:block}.pn-open small{display:block;color:var(--muted,#736C86);font-size:12.5px}
.pn-act{flex:0 0 auto;min-height:38px;border-radius:999px;border:0;background:#EFE9F8;font:inherit;font-weight:800;font-size:13px;padding:6px 12px;color:inherit;cursor:pointer}
.pn-today,.pn-hint{display:block;width:100%;text-align:left;margin-top:8px;background:#EAF6EF;border:0;border-radius:12px;padding:10px 12px;font:inherit;font-size:13.5px;color:inherit;cursor:pointer}.pn-hint small{display:block;color:var(--muted,#736C86);font-size:12.5px}
.pk3-x{display:flex;width:100%;text-align:left;background:none;border:0;font:inherit;color:inherit;cursor:pointer;align-items:center}.pk3-x .pk3-go{margin-left:auto;color:var(--muted,#736C86);font-weight:800;padding-left:8px}
.pk3-more{margin-top:6px}.kr-rt.pk3-paused{opacity:.75}
/* v125.16f Klassik raus */
body.ui-kacheln #ktCalAll{display:none !important}
body.kt-calonly .cal-below .cb-sub-l, body.kt-calonly .cal-below .cb-sub-l ~ *{display:none !important}
.pm-wk{margin-bottom:6px}.pm-putz{margin-top:8px}
.snx-off{opacity:.85}
/* v125.17a – Favoriten-Reihe, Umbenennen, Abschnitte */
.s17-fav{margin:4px 0 10px}
.s17-fav-row{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none}
.s17-fav-row::-webkit-scrollbar{display:none}
.s17-fv{flex:0 0 auto;display:flex;align-items:center;gap:6px;min-height:44px;padding:8px 12px;border-radius:14px;border:0;background:var(--surface,#fff);box-shadow:0 1px 4px rgba(40,20,80,.1);border-left:5px solid var(--fv,#6C4AB6);font:inherit;color:inherit;cursor:pointer}
.s17-fv span{font-size:18px}.s17-fv b{font-size:14px;white-space:nowrap}
.s17-sec{display:flex;align-items:center;gap:8px}
.s17-sec .s17-zu{margin-left:auto;font-size:12px;text-transform:none;letter-spacing:0}
.ke-edit .row .s17-in{flex:1;min-width:0;max-width:170px;padding:6px 8px;font-size:14px}
.ke-edit .row .s17-ren,.ke-edit .row .s17-ok,.ke-edit .row .s17-rs{min-width:36px}
.s17-evrow{margin-bottom:10px}
/* „+ Termin hinzufügen“ als echter Knopf (Jazz-Liste 28.10.) */
.dd-addrow .dd-add{background:var(--accent,#6C4AB6);color:#fff;border-radius:999px;padding:9px 16px;min-height:40px;font-size:14px;box-shadow:0 1px 4px rgba(60,30,120,.18)}
/* v125.17c – Ausflüge 2.0 */
.a17-top{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0 0 10px;padding:8px 10px;background:var(--surface-2,#F6F2FC);border-radius:14px}
.a17-st{font-weight:800;font-size:13px;margin-right:4px}
.a17-ok{color:#2E7D4F;font-weight:700;font-size:13px}
.a17-help{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:6px;margin:8px 0 4px}
.a17-h{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:12px;background:var(--surface-2,#F0EBF7);font-size:11.5px;font-weight:800;color:inherit;text-decoration:none;min-height:44px}
.a17-h i{font-style:normal;font-size:20px}
.a17-pop{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--line,#EEE7F7)}
.a17-pi{font-size:22px}.a17-pb{flex:1;min-width:0}.a17-pb b{display:block;font-size:14px}.a17-pb small{color:var(--muted,#736C86);font-size:12px}
.a17-stufe{font-size:12px;font-weight:800;color:var(--muted,#736C86);margin:8px 0 2px;text-transform:uppercase;letter-spacing:.05em}
.a17-stb{font-weight:700}
/* v125.17d – Reisen */
.r17-top{margin:0 0 10px;padding:8px 10px;background:var(--surface-2,#F6F2FC);border-radius:14px}
.r17-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.r17-st{font-weight:800;font-size:13px;margin-right:4px}
.r17-est{margin-top:6px;font-size:13px}.r17-est small{display:block;color:var(--muted,#736C86);font-size:11.5px}
.r17-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}.r17-tabs .chip{flex:0 0 auto}
.r17-slot{background:var(--surface,#fff);border-radius:14px;padding:8px 10px;margin:6px 0;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.r17-slot h5{margin:0 0 4px;font-size:11.5px;color:var(--muted,#736C86);text-transform:uppercase;letter-spacing:.05em}
.r17-it{padding:6px 0;border-top:1px solid var(--line,#EEE7F7)}.r17-it:first-of-type{border-top:0}
.r17-it b{display:block;font-size:14px}
.r17-help{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.r17-h{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:999px;background:var(--surface-2,#F0EBF7);font-size:12.5px;font-weight:700;color:inherit;text-decoration:none;min-height:36px}
.r17-mv .chip{min-width:36px}
.r17-pl{padding:6px 0;border-top:1px dashed var(--line,#E4DCF2)}.r17-pl b{display:block}.r17-pl small{color:var(--muted,#736C86)}
.r17-veh{margin:8px 0}
.r17-run{display:flex;justify-content:space-between;align-items:center;width:100%;margin:0 0 10px;padding:12px 14px;border:0;border-radius:16px;background:linear-gradient(135deg,#E08A2B,#C77D2B);color:#fff;font:inherit;cursor:pointer;min-height:48px}
.r17-run span{font-weight:800}
/* v125.17e – Essen mit Bildern, Terminplaner */
.e17-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:8px 0}
.e17-day{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 2px;border:0;border-radius:12px;background:var(--surface,#fff);box-shadow:0 1px 3px rgba(0,0,0,.06);font:inherit;color:inherit;cursor:pointer;min-width:0}
.e17-day.today{outline:2px solid var(--accent,#6C4AB6)}
.e17-day b{font-size:11px}.e17-day small{font-size:9.5px;color:var(--muted,#736C86);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.e17-pic{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1/1;border-radius:9px;font-size:22px;background-size:cover;background-position:center}
.e17-pic.big{height:150px;aspect-ratio:auto;font-size:64px;border-radius:16px;margin-bottom:8px}
.e17-head{margin-bottom:8px}.e17-steps{margin:4px 0 8px 18px;padding:0;font-size:13.5px}.e17-steps li{margin:3px 0}
.e17-urlin{margin:6px 0}
.tp-go{margin-left:6px}
.tp-sc{margin-bottom:8px}
.tp-day{background:var(--surface,#fff);border-radius:14px;margin-bottom:8px;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden}
.tp-day.today .tp-dh{background:var(--surface-2,#F0EBF7)}
.tp-dh{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:0;background:none;font:inherit;color:inherit;cursor:pointer;min-height:44px;text-align:left}
.tp-dh small{color:var(--muted,#736C86);margin-left:auto}
.tp-all{display:flex;flex-wrap:wrap;gap:4px;padding:0 12px 6px}.tp-chipev{font-size:12px;background:var(--surface-2,#F0EBF7);border-radius:999px;padding:3px 9px}
.tp-hours{padding:0 12px 8px}
.tp-h{display:grid;grid-template-columns:46px 1fr;border-top:1px solid var(--line,#EEE7F7);min-height:30px}
.tp-t{font-size:11.5px;color:var(--muted,#736C86);padding-top:4px}
.tp-ev{display:flex;flex-direction:column;gap:3px;padding:3px 0}
.tp-e{display:flex;align-items:center;gap:6px;border:0;border-radius:10px;background:var(--accent,#6C4AB6);color:#fff;padding:6px 9px;font:inherit;font-size:13px;text-align:left;cursor:pointer}
.tp-e i{font-style:normal}.tp-e small{opacity:.85;margin-left:auto;font-size:11px}
.tp-free{padding:0 12px 10px;margin:0}
/* v125.17f – Zuhause */
.z17-band{display:flex;flex-direction:column;gap:2px;margin:0 0 10px;padding:10px 12px;border-radius:16px;background:linear-gradient(135deg,#5E8C61,#4E7D3A);color:#fff}
.z17-band small{opacity:.95;font-size:13px}
.z17-auto .field,.z17-safe .school-line{margin-bottom:6px}
.z17-safe .school-line small{display:block;color:var(--muted,#736C86);font-size:11.5px}
/* v125.17g – Wer sieht was? */
.g17-p{margin-bottom:8px}
.g17-ph{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.g17-cells{display:flex;flex-wrap:wrap;gap:6px}
.g17-c{display:flex;align-items:center;gap:6px;border:1px solid var(--line,#E4DCF2);background:var(--surface,#fff);border-radius:12px;padding:6px 10px;font:inherit;font-size:12.5px;color:inherit;cursor:pointer;min-height:36px}
.g17-c b{font-size:13px}.g17-c.lv0{opacity:.6}.g17-c.kid{border-color:#F2A900}.g17-c[disabled]{opacity:.45;cursor:default}
.g17-pick{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px;padding:4px 0}
.g17-warn{flex-basis:100%;background:#FFF4D6;border-radius:10px;padding:8px;font-size:13px}
/* v125.17h – Einladen */
.h17-box .option-tile{margin-bottom:6px}
.h17-aps{gap:6px}
/* v125.17i Tasting · Genuss · Drehorte */
.i17-nav{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 10px}
.i17-nav button{flex:1 1 auto;min-width:0;font-size:.82rem}
.i17-s,.i17-d{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border:1px solid var(--line,#e3dccd);border-radius:12px;margin:6px 0;background:var(--card,#fff)}
.i17-n{flex:0 0 auto;min-width:26px;height:26px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;background:var(--soft,#f3eee4);font-weight:600}
.i17-sb{flex:1 1 auto;min-width:0}
.i17-sb b{display:block}
.i17-sb small{display:block;color:var(--muted,#6b6357)}
.i17-ck{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:8px 10px;margin:4px 0;border:1px solid var(--line,#e3dccd);border-radius:10px;background:var(--card,#fff);color:inherit;font:inherit}
.i17-card,.i17-loc{border:1px solid var(--line,#e3dccd);border-radius:14px;padding:10px;margin:8px 0;background:var(--card,#fff)}
.i17-ch{display:flex;align-items:center;gap:8px;justify-content:space-between}
.i17-ch b{flex:1 1 auto}
.i17-steps{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0;font-size:.8rem;color:var(--muted,#6b6357)}
.i17-pts{display:flex;gap:2px;margin:6px 0}
.i17-pts button{border:0;background:none;font-size:1.5rem;line-height:1;padding:4px 6px;color:#C9A227;cursor:pointer;min-width:40px;min-height:40px}
.i17-note{margin-top:6px}
.i17-tk{border:0;background:none;font-size:1.3rem;padding:2px 4px;min-width:40px;min-height:40px;cursor:pointer}
.i17-done b{text-decoration:none;opacity:.85}
.i17-due{border-color:#D9822B;background:#FFF6EC}
.i17-warn{border-radius:12px;background:var(--soft,#f6f1e7);padding:8px 10px;font-size:.88rem}
.i17-warn div{padding:2px 0}
.i17-18{background:#FFF3F3;border-radius:10px;padding:6px 10px}
.i17-blind{margin:8px 0}
@media (prefers-color-scheme:dark){.i17-due{background:#3a2a17}.i17-18{background:#3a1f1f}}
/* v125.17j Reise-Extras & Meine Links */
.j17-box{margin-top:14px}
.j17-it{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border:1px solid var(--line,#e3dccd);border-radius:12px;margin:6px 0;background:var(--card,#fff)}
.j17-it a{color:inherit;text-decoration:none}
.j17-it a b{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
.j17-ok{border-color:#3D9A5B}
.j17-stat{margin:0 0 10px}
.j17-pwrow{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:12px;background:#FFF6EC;border:1px solid #D9822B;margin:0 0 8px;font-size:.9rem}
.j17-sur{text-align:center;padding:8px 0}
.j17-big{font-size:3.2rem;line-height:1.2}
.j17-sur .go-btns{justify-content:center}
@media (prefers-color-scheme:dark){.j17-pwrow{background:#3a2a17}}
/* v125.17k Feinschliff */
.sheet .sheet-head .au-back,.sheet .sheet-head .lb-back{flex:0 0 auto;margin-right:8px;border:0;background:var(--surface-2,#F0EBF7);border-radius:999px;padding:8px 12px;font-weight:800;font-size:14px;min-height:40px;color:inherit;font-family:inherit}
#schoolCard .school-line:not(.wx-line){cursor:pointer;border-radius:10px}
#schoolCard .school-line:not(.wx-line):hover{filter:brightness(1.05)}
#schoolCard .school-line:not(.wx-line)::after{content:"›";margin-left:auto;opacity:.6;font-weight:800}
.k17-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.k17-nav b{text-align:center;font-size:15px}.k17-nav b small{display:block;font-weight:600;color:var(--text-muted,#736C86);font-size:12px}
.k17-grid{display:grid;gap:4px;align-items:stretch}
.k17-dh{text-align:center;font-weight:800;font-size:13px;padding:4px 0;border-radius:10px}.k17-dh small{display:block;font-weight:600;font-size:11px;color:var(--text-muted,#736C86)}
.k17-dh.on{background:#6C4AB6;color:#fff}.k17-dh.on small{color:#fff}
.k17-no{font-size:11px;color:var(--text-muted,#736C86);display:flex;align-items:center;justify-content:center;font-weight:700}
.k17-f{color:#fff;border-radius:10px;padding:7px 2px;font-size:11px;-webkit-hyphens:auto;font-weight:700;text-align:center;line-height:1.2;word-break:break-word;hyphens:auto;min-height:34px;display:flex;align-items:center;justify-content:center}
.k17-f.on{box-shadow:0 0 0 2px #fff,0 0 0 4px #6C4AB6}
.k17-e{border-radius:10px;background:var(--surface-2,#F6F2FC);min-height:34px}
.k17-free{border-radius:10px;background:#FFF4D6;color:#8A5A00;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:20px;text-align:center}.k17-free small{font-size:11px;font-weight:700;margin-top:4px}
.k17-pack{display:flex;flex-direction:column;gap:4px;font-size:13.5px}
@media (prefers-color-scheme:dark){.k17-free{background:#3a2f17;color:#F2D28A}}
/* v125.18a Termin mit Ort */
.o18-pick{display:flex;flex-direction:column;gap:6px}
.o18-cur{display:flex;align-items:center;gap:8px;background:var(--surface-2,#F0EBF7);border-radius:12px;padding:8px 10px}
.o18-cur span{flex:1;min-width:0}.o18-cur small,.o18-hit small,.o18-where small{display:block;color:var(--text-muted,#736C86);font-size:12px}
.o18-res{display:flex;flex-direction:column;gap:4px}
.o18-h{font-size:12px;font-weight:800;color:var(--text-muted,#736C86);margin-top:2px}
.o18-hit{text-align:left;border:1px solid var(--line,#E6DDF5);background:var(--card,#fff);border-radius:12px;padding:8px 10px;font:inherit;color:inherit;cursor:pointer;min-height:44px}
.o18-own{border-style:dashed}
.o18-more summary{font-size:13px;color:var(--text-muted,#736C86);cursor:pointer;padding:4px 0}
.o18-more input{margin-top:6px}
.o18-box{border:1px solid var(--line,#E6DDF5);border-radius:14px;padding:10px;margin:8px 0}
.o18-where{display:flex;gap:8px;align-items:flex-start;font-size:14px}
.o18-go{margin-top:8px;background:#E3F4E8;border-radius:10px;padding:8px 10px;font-size:13.5px}.o18-go small{display:block;color:#2E5E3E}
@media (prefers-color-scheme:dark){.o18-go{background:#1f3a28}.o18-go small{color:#a6d8b4}}
/* v125.18b Buchung einfügen */
.b18-drop{display:flex;flex-direction:column;align-items:center;gap:2px;border:3px dashed #CDBDEB;border-radius:14px;padding:16px;margin-bottom:8px;cursor:pointer;color:#6C4AB6;text-align:center}
.b18-drop small{color:var(--text-muted,#736C86);font-weight:600}
.b18-f{display:flex;gap:10px;align-items:flex-start;width:100%;text-align:left;border:1px solid var(--line,#E6DDF5);border-radius:14px;padding:10px 12px;margin:6px 0;background:var(--card,#fff);font:inherit;color:inherit;cursor:pointer}
.b18-f.on{border-color:#3D9A5B;background:#F2FAF4}
.b18-ck{font-size:18px;line-height:1.2}
.b18-b{display:flex;flex-direction:column;gap:2px;min-width:0}.b18-b b{font-size:14.5px}.b18-b small{color:var(--text-muted,#736C86);font-size:12.5px;line-height:1.4}
.b18-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}.b18-row small{color:var(--text-muted,#736C86);font-size:12px}
@media (prefers-color-scheme:dark){.b18-f.on{background:#1f3a28}}
/* v125.18d Fotos */
.d18{margin:8px 0}.d18-h{font-size:12px;font-weight:800;color:var(--text-muted,#736C86);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.d18-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.d18-th{aspect-ratio:1;border:0;border-radius:12px;background-size:cover;background-position:center;cursor:pointer}
.d18-add{aspect-ratio:1;border:2px dashed #CDBDEB;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#6C4AB6;font-weight:800;cursor:pointer}
.d18-big img{width:100%;border-radius:14px;display:block}
/* v125.18e Vergleichen */
.e18{display:flex;flex-direction:column;gap:2px;font-size:13px}
.e18-r{display:grid;grid-template-columns:76px repeat(var(--n,2),minmax(0,1fr));gap:6px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line,#F0EBF7)}
.e18-l{font-size:11.5px;font-weight:800;color:var(--text-muted,#736C86)}
.e18-v{min-width:0;overflow-wrap:anywhere;padding:4px 6px;border-radius:8px}
.e18-v.best{background:#E3F4E8;color:#2E7D4F;font-weight:800}
.e18-head .e18-v{font-size:14px}
.e18-act .e18-v{display:flex;flex-direction:column;gap:4px}.e18-act .chip{justify-content:center}
.e18-pick .option-tile.on{outline:2px solid #6C4AB6}
@media (prefers-color-scheme:dark){.e18-v.best{background:#1f3a28;color:#a6d8b4}}
/* v125.18f Reiseheft */
.f18-prev{margin:10px 0;max-height:360px;overflow:auto;border-radius:12px;background:#ECEAF1;padding:10px}
.f18-page{background:#fff;color:#1F1A2E;border-radius:6px;box-shadow:0 2px 8px rgba(0,0,0,.15);padding:14px;font-size:12px;line-height:1.45}
.f18-page h1{font-family:Georgia,serif;font-size:18px;margin:0}.f18-page .sub{color:#736C86;margin:2px 0 8px}
.f18-page h2{font-size:13px;border-bottom:2px solid #6C4AB6;padding-bottom:2px;margin:12px 0 4px}.f18-page h3{font-size:12px;margin:8px 0 2px;color:#3B2A63}
.f18-page ul{margin:2px 0;padding-left:16px}.f18-page .pk{columns:2}.f18-page .pi{margin:1px 0 1px 4px}.f18-page .foot{color:#9A93AC;font-size:10px;margin-top:10px}
/* v125.19b: zentrale Sperre – alte Kreis-Seiten nur mit gewähltem Kalender/Karte */
body.b19-home #view-familie, body.b19-home #view-freunde, body.b19-home #view-arbeit{display:none !important}
body.b19-home #view-haupt{display:block !important}
/* Kachel → Unterfunktion: Hauptkarte nicht aufblitzen lassen */
body.b19-hold #lcSheet{opacity:0 !important; transition:none !important}
/* v125.19c Ämtchen */
.ae19-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:var(--surface,#fff);border:1px solid var(--line,#E4DCF2);border-radius:14px;padding:9px 11px;margin-bottom:6px;font:inherit;color:inherit;cursor:pointer}
.ae19-ic{font-size:22px}.ae19-t{flex:1;min-width:0}.ae19-t b{display:block;font-size:15px}.ae19-t small{display:block;color:var(--muted,#736C86);font-size:12.5px}
.ae19-p{border-radius:999px;padding:4px 10px;font-size:12.5px;font-weight:800;color:#fff;white-space:nowrap}.ae19-p.ae19-free{background:#9A93AC}
.ae19-wk{display:grid;gap:4px;font-size:12.5px}.ae19-wk b{background:var(--chip,#F0EBF7);border-radius:8px;padding:5px 3px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ae19-wk span{background:var(--surface,#fff);border:1px solid var(--line,#EEE8F6);border-radius:8px;padding:5px 2px;text-align:center;min-height:26px}
/* v125.19c Rezepte */
.rz19-gl{margin:2px 0 4px;font-size:14px;line-height:1.5}
/* v125.19d Reise-Karte */
#ptSheet.rx19 .pt-tabs, #ptSheet.rx19 .pw-pt{display:none !important}
#ptSheet.rx19 #ptXBox .j17-wrap{display:none}
#ptSheet.rx19 #ptXBox.rx19-mappe .j17-wrap, #ptSheet.rx19 #ptXBox.rx19-pw .j17-wrap{display:block}
#ptSheet.rx19 #ptXBox.rx19-mappe .j17-pw{display:none}
#ptSheet.rx19 #ptXBox.rx19-pw .j17-box:not(.j17-pw){display:none}
#ptSheet.rx19 #ptXBox .b18-row [data-f18-open]{display:none}
.rx19-x{margin-top:8px}
.rx19-prog{display:flex;align-items:center;gap:8px}.rx19-prog small{color:var(--text-muted,#736C86);font-size:12.5px;white-space:nowrap}
.rx19-bar{flex:1;height:8px;border-radius:9px;background:var(--surface-2,#E4DCF2);overflow:hidden}.rx19-bar i{display:block;height:100%;background:#2E9E5B;border-radius:9px}
.rx19-mb{margin-left:auto}
.rx19-miss{margin-top:8px}.rx19-miss small{display:block;font-size:11.5px;font-weight:800;color:var(--text-muted,#736C86);text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}
.rx19-m{display:flex;justify-content:space-between;align-items:center;width:100%;gap:8px;background:#FFF6DC;color:#1F1A2E;border:0;border-radius:12px;padding:9px 11px;margin-bottom:5px;font:inherit;font-size:14px;text-align:left;cursor:pointer}.rx19-m b{color:var(--accent,#6C4AB6);font-size:12.5px;white-space:nowrap}
.rx19-more{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.rx19-more button{background:var(--surface,#fff);border:1px solid var(--line,#E4DCF2);border-radius:14px;padding:9px 3px;font:inherit;font-size:12px;font-weight:700;color:inherit;cursor:pointer}.rx19-more button i{display:block;font-style:normal;font-size:21px;margin-bottom:2px}
#ptXBox .rx19-tabs{display:grid !important;grid-template-columns:repeat(4,1fr)}#ptXBox .rx19-tabs button{display:flex;flex-direction:column;align-items:center;font-size:12px;padding:7px 2px}
.rx19-sub{margin-top:6px}.rx19-back{margin:6px 0}
/* v125.19d Einkauf */
#shopSheet.sl19 .sl19-big{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0 6px}
#shopSheet.sl19 .sl19-big button{background:var(--surface,#fff);border:1px solid var(--line,#E4DCF2);border-radius:16px;padding:11px 3px;font:inherit;font-weight:800;font-size:12.5px;color:inherit;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.05)}
#shopSheet.sl19 .sl19-big button i{display:block;font-style:normal;font-size:26px;margin-bottom:2px}
#shopSheet.sl19 .sl19-more{margin:6px 0 4px}#shopSheet.sl19 .sl19-more summary{color:var(--accent,#6C4AB6);font-weight:700;font-size:13px;cursor:pointer;padding:6px 0}
#shopSheet.sl19 .sl19-mb{display:flex;flex-direction:column;gap:6px;padding-top:4px}
/* v125.19d Neuer Termin in 4 Schritten */
#evWizSheet.ev19x .ev-switch{display:none !important}
.ev19-pg{display:flex;gap:5px;margin:6px 0 12px}.ev19-pg i{flex:1;height:6px;border-radius:9px;background:var(--surface-2,#E4DCF2)}.ev19-pg i.on{background:var(--accent,#6C4AB6)}
#evWizSheet.ev19 [data-ev-step="was"] .ev-hints{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}
#evWizSheet.ev19 [data-ev-step="was"] .ev-hints .chip{border-radius:16px;padding:14px 10px;font-size:15px;font-weight:700;justify-content:flex-start;text-align:left;min-height:54px}
#evWizSheet.ev19 [data-ev-step="was"] .ev-sub, #evWizSheet.ev19 [data-ev-step="was"] .ev-mirror, #evWizSheet.ev19 [data-ev-step="wann"] .ev-sub, #evWizSheet.ev19 [data-ev-step="wann"] .ev-mirror{display:none}
#evWizSheet.ev19 [data-ev-step="wann"] .ev-hints .chip{padding:9px 14px}
.ev19-more{display:block;width:100%;border:2px dashed var(--line,#D6CCEA);background:none;border-radius:14px;padding:10px 12px;color:var(--accent,#6C4AB6);font:inherit;font-weight:800;font-size:13.5px;margin:8px 0;cursor:pointer;text-align:left}
.ev19-form{display:block;margin:10px auto 0;background:none;border:0;color:var(--accent,#6C4AB6);font:inherit;font-weight:700;font-size:13px;cursor:pointer;text-decoration:underline}
#evWizSheet.ev19 .ev-skip{display:none}
#evWizSheet.ev19x{min-height:82vh}
/* v125.19d Neuer Kalender */
.kal19-c{display:inline-block;width:20px;height:20px;border-radius:50%;vertical-align:middle}
.kal19-cols .chip{padding:6px 8px}
body.kal19-hold #subCalWizard{opacity:0 !important;pointer-events:none}
