.pp-grid{cursor:crosshair;touch-action:none;user-select:none;background:repeating-linear-gradient(to bottom,transparent 0,transparent 14px,#f1f5f9 15px,transparent 16px,transparent 29px,#dbe4f0 30px)}
.pp-draft{position:absolute;z-index:5;left:5px;right:5px;min-height:15px;padding:5px;border:2px solid #2563eb;border-radius:8px;background:#2563ebdd;color:#fff;pointer-events:none;overflow:hidden;box-shadow:0 5px 18px #1d4ed844}
.pp-draft b,.pp-draft span{display:block;font-size:11px}
.pp-selection-summary{display:grid;grid-template-columns:1fr auto;gap:2px 15px;padding:14px;border-radius:12px;background:#172554;color:#fff}
.pp-selection-summary strong{font-size:20px}
.pp-selection-summary span{grid-column:1/-1;color:#bfdbfe;font-size:12px}
.pp-day-field{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.pp-time-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pp-time-fields label{display:grid;gap:5px;font-weight:700}
.pp-time-fields input{width:100%;box-sizing:border-box}
.pp-slot{cursor:grab;touch-action:none;user-select:none;z-index:2}
.pp-slot>*{pointer-events:none}
.pp-slot .pp-resize-handle{pointer-events:auto}
.pp-slot:focus{outline:3px solid #f59e0b;outline-offset:2px}
.pp-slot.is-dragging{cursor:grabbing;opacity:.8;z-index:9;box-shadow:0 8px 24px #1e3a8a55}
.pp-resize-handle{position:absolute;left:5px;right:5px;bottom:0;height:9px;cursor:ns-resize;border-bottom:3px solid #2563eb;border-radius:4px}
.pp-slot.valide .pp-resize-handle{border-color:#16a34a}
body.pp-is-dragging,body.pp-is-dragging *{cursor:grabbing!important}
body.pp-is-resizing,body.pp-is-resizing *{cursor:ns-resize!important}
.pp-validate button:disabled{background:#94a3b8;color:#fff;cursor:not-allowed;opacity:.8}
.pc-archives{margin-top:22px;padding:14px;border:1px solid #cbd5e1;border-radius:14px;background:#f8fafc}
.pc-archives>summary{cursor:pointer;font-weight:800;color:#334155}
.pc-archives .pc-grid{margin-top:14px}
.pc-card.is-archived{opacity:.78;filter:saturate(.7)}
@media(max-width:600px){.pp-time-fields{grid-template-columns:1fr}}
.pp-slot.valide{cursor:pointer}
.pp-proposals{margin:18px 0;padding:20px;border-radius:18px;background:#fff;box-shadow:0 8px 30px rgba(29,45,90,.08)}
.pp-proposals article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e8edf7}
.pp-proposals small{display:block;color:#667085}
#pp-assignment form{min-width:min(520px,90vw);padding:24px}
