/* Profil (v254) : rendez-vous santé + écran sombre / clair */
.pp-card{margin-top:14px}
.pp-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.pp-head .checkin-title{margin:0}
.pp-add{width:36px;height:36px;border:0;border-radius:50%;background:#b46a54;color:#fff8f1;font:400 22px/1 var(--sans);cursor:pointer}
.pp-rdv-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.pp-rdv-list button{display:grid;grid-template-columns:36px 1fr;grid-template-rows:auto auto;column-gap:10px;row-gap:7px;align-items:center;width:100%;padding:11px 12px;border:0;border-radius:16px;background:#f6ebdf;color:inherit;text-align:left;cursor:pointer}
.pp-ico{grid-row:1/3;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fffaf5;color:#b46a54;font-size:16px}
.pp-txt b{display:block;font:400 16px/1.2 Fraunces,Georgia,serif;color:var(--cacao,#3a2028)}
.pp-txt small{display:block;margin-top:2px;font-size:11.5px;color:var(--muted,#7d6157)}
.pp-pill{justify-self:start;padding:5px 10px;border-radius:999px;font:600 11px/1.2 var(--sans);background:#e9dccf;color:#5d4a40}
.pp-pill.is-planned{background:#cfe0bd;color:#2f4220}
.pp-pill.is-soon{background:#f6d9a8;color:#5a3b0c}
.pp-pill.is-late{background:#f2b8a8;color:#5b1d10}
.pp-empty{margin:10px 0 12px;font-size:13px;line-height:1.55;color:var(--muted,#7d6157)}
.pp-btn{display:block;width:100%;min-height:48px;margin-top:10px;border:0;border-radius:999px;background:#b46a54;color:#fff8f1;font:650 14px/1 var(--sans);cursor:pointer}
.pp-btn.is-ghost{background:none;box-shadow:inset 0 0 0 1px #d9c3b0;color:inherit}

.pp-switch{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer}
.pp-switch b{display:block;font:400 18px/1.2 Fraunces,Georgia,serif;color:var(--cacao,#3a2028)}
.pp-switch small{display:block;margin-top:3px;font-size:12px;line-height:1.4;color:var(--muted,#7d6157)}
.pp-switch input{position:absolute;opacity:0;pointer-events:none}
.pp-switch i{position:relative;flex:0 0 52px;height:30px;border-radius:999px;background:#d9c3b0;transition:background .25s}
.pp-switch i:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #0003;transition:transform .25s}
.pp-switch input:checked+i{background:#b46a54}
.pp-switch input:checked+i:after{transform:translateX(22px)}
.pp-switch input:focus-visible+i{outline:2px solid #b46a54;outline-offset:2px}

/* nuit étoilée */
.night-page .pp-rdv-list button{background:#ffffff10}
.night-page .pp-ico{background:#ffffff14;color:#f2a58c}
.night-page .pp-txt b,.night-page .pp-switch b{color:#fff3e6}
.night-page .pp-txt small,.night-page .pp-empty,.night-page .pp-switch small{color:#d9b8a6}
.night-page .pp-pill{background:#ffffff1a;color:#f6dcc9}
.night-page .pp-pill.is-planned{background:#9caf8040;color:#dfeccd}
.night-page .pp-pill.is-soon{background:#e0b46a40;color:#f8dfae}
.night-page .pp-pill.is-late{background:#d8746a4d;color:#ffd2c6}
.night-page .pp-switch i{background:#ffffff26}

/* fiche */
.pp-backdrop{position:fixed;inset:0;z-index:140;background:#12070c80;opacity:0;transition:opacity .25s}
.pp-sheet{position:fixed;left:0;right:0;bottom:0;z-index:141;max-height:88dvh;overflow:auto;padding:10px 18px calc(22px + var(--sab,0px));border-radius:26px 26px 0 0;background:#fbf4ec;color:#3a2028;transform:translateY(100%);transition:transform .28s ease}
.pp-open .pp-backdrop{opacity:1}
.pp-open .pp-sheet{transform:none}
.pp-sheet-handle{width:40px;height:4px;margin:0 auto 12px;border-radius:9px;background:#0002}
.pp-sheet h2{margin:0 0 6px;font:400 23px/1.15 Fraunces,Georgia,serif}
.pp-label{display:block;margin:16px 0 8px;font:650 12.5px/1.2 var(--sans);color:#7d6157}
.pp-label small{font-weight:400}
.pp-chips{display:flex;flex-wrap:wrap;gap:7px}
.pp-chips button{padding:9px 13px;border:0;border-radius:999px;background:#f0e2d5;color:#5d4a40;font:600 12.5px/1 var(--sans);cursor:pointer}
.pp-chips button.is-on{background:#3a2028;color:#fff8f1}
.pp-input{display:block;width:100%;box-sizing:border-box;margin-top:8px;padding:12px 14px;border:1px solid #e4d1bf;border-radius:14px;background:#fffdf9;color:#3a2028;font:500 16px/1.3 var(--sans);resize:vertical}
.pp-chips+.pp-input{margin-top:10px}
.pp-status{margin:16px 0 4px;padding:11px 13px;border-radius:14px;background:#f0e2d5;font-size:13px;line-height:1.45}
.pp-status.is-late{background:#f6d0c5}
.pp-status.is-soon{background:#f8e3bd}
.pp-status.is-planned{background:#dce8cd}
.pp-del{display:block;margin:14px auto 0;padding:8px;border:0;background:none;color:#a2412f;font:600 13px/1 var(--sans);cursor:pointer}
.pp-sheet.is-night{background:#2e1822;color:#fbefe3}
.pp-sheet.is-night .pp-sheet-handle{background:#fff3}
.pp-sheet.is-night .pp-label{color:#d9b8a6}
.pp-sheet.is-night .pp-chips button{background:#ffffff14;color:#f6dcc9}
.pp-sheet.is-night .pp-chips button.is-on{background:#f3e2d4;color:#2c1620}
.pp-sheet.is-night .pp-input{background:#ffffff0f;border-color:#ffffff24;color:#fff3e6;color-scheme:dark}
.pp-sheet.is-night .pp-status{background:#ffffff14}
.pp-sheet.is-night .pp-status.is-late{background:#d8746a40}
.pp-sheet.is-night .pp-status.is-soon{background:#e0b46a33}
.pp-sheet.is-night .pp-status.is-planned{background:#9caf8033}
.pp-sheet.is-night .pp-btn.is-ghost{box-shadow:inset 0 0 0 1px #ffffff30}
.pp-sheet.is-night .pp-del{color:#f2a58c}

/* rappel du jour */
.pp-banner{position:fixed;left:12px;right:12px;top:calc(10px + var(--sat,0px));z-index:150;display:flex;align-items:center;gap:10px;padding:13px 16px;border:0;border-radius:18px;background:#3a2028;color:#fff3e6;font:600 13.5px/1.35 var(--sans);text-align:left;box-shadow:0 10px 30px #0005;transform:translateY(-140%);transition:transform .35s ease;cursor:pointer}
.pp-banner.is-in{transform:none}
.pp-banner span{flex:0 0 auto;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#ffffff1a;color:#f2a58c}

/* bascule de thème sans à-coups */
html.pp-theme-switch *{transition:none!important}
