/* Partner-Kalender (Schuhhäuser) – Handy zuerst, Farben wie OrthoFlow */
:root{--bg:#f1f3ef;--card:#fff;--ink:#1d2733;--mute:#6b7785;--line:#d6ddd3;--pri:#557a5c;--pri-d:#3f5e45;--tint:#e7ede4;--bad:#c0392b;--badbg:#fde8e5;--okbg:#e6f5ec;--ok:#1e8e4e}
*{box-sizing:border-box}
body{margin:0;font:16px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink)}
.top{display:flex;align-items:center;gap:10px;background:var(--pri);color:#fff;padding:10px 16px;position:sticky;top:0;z-index:5}
.sp{flex:1}
main{max-width:720px;margin:0 auto;padding:14px 16px 40px}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px;margin-bottom:12px}
h2{font-size:18px;margin:0 0 10px}
label{display:block;font-size:13px;color:var(--mute);margin:10px 0 4px}
input,select,textarea{width:100%;font:inherit;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:2px solid #a9bfa6;border-color:var(--pri)}
button{font:inherit;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);cursor:pointer}
button.pri{background:var(--pri);border-color:var(--pri-d);color:#fff;font-weight:600}
button.danger{color:var(--bad);border-color:#e6b9b3}
button.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5);padding:6px 10px}
button:disabled{opacity:.5;cursor:default}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.full{width:100%}
.muted{color:var(--mute)}.small{font-size:13px}
.err{color:var(--bad);min-height:20px;margin-top:8px}
.ok{background:var(--okbg);color:var(--ok);padding:10px;border-radius:8px;margin-bottom:12px}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.tabs button.on{background:var(--pri);color:#fff;border-color:var(--pri-d)}
.daynav{display:grid;grid-template-columns:48px 1fr 48px;gap:8px;align-items:center}
.daynav input{text-align:center}
.dayhead{font-weight:600;margin:12px 0 6px}
.bk{display:grid;grid-template-columns:92px 1fr;gap:4px 10px;padding:10px 0;border-top:1px solid var(--line)}
.bk:first-child{border-top:0}
.bk .t{font-variant-numeric:tabular-nums;font-weight:600}
.bk .dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:baseline}
.bk.own{background:var(--tint);margin:0 -14px;padding:10px 14px}
.bk .acts{grid-column:2;display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
.bk .acts button{padding:6px 10px;font-size:14px}
.tag{display:inline-block;font-size:12px;padding:1px 7px;border-radius:10px;background:var(--pri);color:#fff;margin-left:6px}
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:6px;margin-top:6px}
.slots button{padding:8px 4px;font-variant-numeric:tabular-nums}
.slots button.on{background:var(--pri);color:#fff;border-color:var(--pri-d)}
.empty{padding:10px 0}
#who{font-size:13px;text-align:right;line-height:1.2;max-width:45vw}
