/* v15 Catch Diary + raised centre Log button */
.tab-bar.tab-bar-5.tab-bar-v13.has-fab{grid-template-columns:1fr 1fr 70px 1fr 1fr 1fr!important}
.tab-bar-v13 .tab-fab{position:relative;overflow:visible;color:#e6fffb!important}
.tab-fab .fab-disc{position:absolute;top:-24px;left:50%;transform:translateX(-50%);width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 35% 30%,#5eead4,#14b8a6 55%,#0f766e);color:#03221f;box-shadow:0 8px 20px rgba(20,184,166,.45),0 0 0 5px rgba(10,18,28,.94);transition:transform .15s}
.tab-fab:active .fab-disc{transform:translateX(-50%) scale(.93)}
.tab-fab .tab-label{margin-top:30px;color:#5eead4}
.cd-wrap{position:fixed;inset:0;z-index:25000;background:rgba(0,0,0,.5);display:flex;align-items:flex-end}
.cd-panel{width:100%;max-height:92vh;overflow:auto;background:#0d1b2a;color:#e6f1fb;border-radius:18px 18px 0 0;padding:14px 16px calc(18px + env(safe-area-inset-bottom,0px));font:14px/1.4 system-ui,sans-serif;box-shadow:0 -10px 30px rgba(0,0,0,.5)}
.cd-diary .cd-panel{max-height:96vh;min-height:70vh}
.cd-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cd-head h2{margin:0;font-size:18px}
.cd-x{background:rgba(255,255,255,.06);border:0;color:#cbd5e1;width:32px;height:32px;border-radius:50%;font-size:15px}
.cd-sec{margin:10px 0}.cd-lbl{font-size:12px;opacity:.7;margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px}
.cd-row{display:flex;gap:8px;align-items:flex-end}.cd-row label{flex:1;font-size:12px;opacity:.9;display:flex;flex-direction:column;gap:4px}
.cd-row input,.cd-in,.cd-filters select{width:100%;box-sizing:border-box;padding:9px 10px;border-radius:10px;border:1px solid #334155;background:#0b1520;color:#e6f1fb;font:inherit;color-scheme:dark}
.cd-mini{background:rgba(56,189,248,.12);border:1px solid rgba(56,189,248,.45);color:#e0f2fe;border-radius:9px;padding:7px 10px;font-size:12.5px;white-space:nowrap}
.cd-del{border-color:rgba(248,113,113,.5);color:#fecaca;background:rgba(248,113,113,.08)}
.cd-hint{font-size:12px;opacity:.7;margin:4px 0}
#cd-loc{font-size:13px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.cd-splist{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px;max-height:250px;overflow:auto;padding:2px;border-radius:10px;transition:box-shadow .2s}
.cd-need{box-shadow:0 0 0 2px #f87171}
.cd-sp{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;border-radius:10px;border:1px solid rgba(148,163,184,.25);background:rgba(255,255,255,.03);color:#e6f1fb;font-size:11px;line-height:1.2;text-align:center}
.cd-sp img,.cd-sp-ph{width:100%;height:44px;object-fit:cover;border-radius:7px;background:#13294b;display:flex;align-items:center;justify-content:center;font-size:20px}
.cd-sp.on{border-color:#2dd4bf;background:rgba(45,212,191,.15);box-shadow:0 0 0 1px #2dd4bf}
.cd-save{width:100%;margin-top:6px;padding:13px;border:0;border-radius:12px;background:#2dd4bf;color:#03221f;font-weight:700;font-size:15px}
.cd-toast{position:fixed;left:50%;bottom:calc(var(--st-nav-h,80px) + 70px);transform:translate(-50%,20px);opacity:0;background:#0f2a2a;color:#ccfbf1;border:1px solid #2dd4bf;padding:9px 14px;border-radius:12px;z-index:26000;transition:.25s;font:13px system-ui;pointer-events:none}
.cd-toast.on{opacity:1;transform:translate(-50%,0)}
.cd-filters{display:flex;gap:6px;margin:4px 0 8px}
.cd-mnav{display:flex;align-items:center;justify-content:space-between;margin:6px 0}.cd-mnav b{font-size:15px}
.cd-mnav button{width:38px;height:38px;border-radius:50%;border:1px solid rgba(148,163,184,.3);background:none;color:#e6f1fb;font-size:20px}
.cd-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cd-dow{text-align:center;font-size:11px;opacity:.6;padding:2px 0}
.cd-day{aspect-ratio:1/1.05;border-radius:10px;border:1px solid rgba(148,163,184,.14);background:rgba(255,255,255,.02);color:#cbd5e1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:13px}
.cd-day.today{border-color:#2dd4bf;color:#fff}.cd-day.has{background:rgba(45,212,191,.1);color:#fff}
.cd-dots{display:flex;gap:2px;align-items:center;font-style:normal}.cd-dots b{width:5px;height:5px;border-radius:50%;background:#fbbf24;display:block}.cd-dots em{font-size:9px;color:#fbbf24;font-style:normal;margin-left:2px}
.cd-sum{font-size:12.5px;opacity:.75;margin:8px 0}
.cd-back{background:none;border:0;color:#38bdf8;padding:2px 0 6px;font-size:13px}
.cd-curve{width:100%;height:auto;display:block;background:rgba(15,23,42,.6);border-radius:12px;border:1px solid rgba(148,163,184,.18)}
.cd-line{fill:none;stroke:#a78bfa;stroke-width:2}.cd-area{fill:rgba(167,139,250,.15)}.cd-maj{fill:rgba(251,191,36,.18)}.cd-min{fill:rgba(56,189,248,.16)}
.cd-ext{font-size:7px;fill:#c4b5fd;text-anchor:middle}.cd-ax{font-size:6.5px;fill:#94a3b8;text-anchor:middle}
.cd-pin circle,.cd-tpin circle{fill:#0f766e;stroke:#5eead4;stroke-width:1.5;cursor:pointer}.cd-pin text,.cd-tpin text{font-size:10px;text-anchor:middle;cursor:pointer}.cd-tpin text{font-size:8px}
.cd-leg{font-size:11px;opacity:.75;margin:4px 0 8px;display:flex;align-items:center;gap:5px}.cd-l-maj,.cd-l-min{display:inline-block;width:10px;height:10px;border-radius:2px;background:rgba(251,191,36,.5)}.cd-l-min{background:rgba(56,189,248,.5);margin-left:6px}
.cd-entry{border:1px solid rgba(148,163,184,.22);border-radius:12px;padding:10px;margin:8px 0;background:rgba(15,23,42,.55)}
.cd-etop{display:flex;gap:10px;align-items:center}.cd-etop img,.cd-etop .cd-sp-ph{width:56px;height:40px;object-fit:cover;border-radius:8px;flex:none}.cd-etop>div{flex:1;min-width:0}
.cd-eact{display:flex;gap:5px}.cd-note{margin:6px 0;font-style:italic;opacity:.9}
.cd-cond{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:8px 0 0;font-size:12.5px}.cd-cond dt{opacity:.75;white-space:nowrap}.cd-cond dd{margin:0}
.cd-src{font-size:10.5px;opacity:.55;margin:6px 0 0}
.cd-tools{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:12px 0 4px}.cd-tog{font-size:12.5px;display:flex;gap:6px;align-items:center;margin-left:auto}
.cd-nocurve{padding:22px;text-align:center;opacity:.6;border:1px dashed rgba(148,163,184,.3);border-radius:12px;font-size:13px}
.cd-pop{position:fixed;left:12px;right:12px;bottom:calc(var(--st-nav-h,80px) + 12px);z-index:24000;background:#0d1b2a;color:#e6f1fb;border:1px solid #2dd4bf;border-radius:14px;padding:12px 14px;font:13px/1.4 system-ui;box-shadow:0 10px 26px rgba(0,0,0,.5);max-height:55vh;overflow:auto}
.cd-pop .cd-x{float:right}
.cd-mappin{width:26px;height:26px;border-radius:50%;background:#0f766e;border:2px solid #5eead4;display:flex;align-items:center;justify-content:center;font-size:14px;box-shadow:0 2px 6px rgba(0,0,0,.5)}
