.cvsbpv2{max-width:980px;margin:20px auto;padding:24px;border-radius:22px;background:#fff;box-shadow:0 12px 35px rgba(0,0,0,.08)}.calhead{display:flex;justify-content:space-between;align-items:center;margin:16px 0}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.weekday{text-align:center;font-weight:700;color:#2a7f62;padding:8px 0}.day.empty{background:transparent;border:0;box-shadow:none}.day{border:1px solid #ddd;border-radius:14px;padding:10px;min-height:76px;background:#f7f7f7}.day button{all:unset;cursor:pointer;display:block;width:100%}.day.available{background:#e8f7ef;border-color:#7bc69a}.day.limited{background:#fff4d8;border-color:#e2ad35}.day.full,.day.blocked,.day.closed,.day.holiday{background:#eee;color:#777}.slots{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.slot{border:1px solid #2a7f62;border-radius:999px;padding:10px 14px;background:#fff;cursor:pointer}.slot.active{background:#2a7f62;color:#fff}.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.form input,.form select,.form textarea{padding:11px;border:1px solid #ccc;border-radius:10px}.form button{grid-column:1/-1;padding:12px;border:0;border-radius:12px;background:#2a7f62;color:#fff}.form button:disabled{cursor:not-allowed;opacity:.55}.legend span{margin-right:12px;font-size:13px}@media(max-width:700px){.cvsbpv2{padding:14px}.cal{grid-template-columns:repeat(7,minmax(34px,1fr));gap:4px}.day{min-height:58px;padding:5px;font-size:12px}.day small{font-size:10px}.form{grid-template-columns:1fr}}
