:root{--pb101-bg:#f5f7fb;--pb101-surface:#ffffff;--pb101-text:#152033;--pb101-muted:#697586;--pb101-primary:#2f6fed;--pb101-primary-2:#174bb6;--pb101-border:#dbe3f0;--pb101-success:#198754;--pb101-warning:#d97706;--pb101-radius:18px;--pb101-shadow:0 18px 50px rgba(31,55,102,.12)}
.pb101-shell,.pb101-admin{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--pb101-text)}
.psico-booking-v5{background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border:1px solid var(--pb101-border);border-radius:24px;box-shadow:var(--pb101-shadow);padding:28px;max-width:980px;overflow:hidden;position:relative}
.pb101-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:20px}.pb101-kicker{display:inline-block;padding:7px 12px;background:#eaf1ff;border:1px solid #cfe0ff;border-radius:999px;color:var(--pb101-primary);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.pb101-head h3{font-size:34px;line-height:1.05;margin:10px 0 0;font-weight:800}.pb101-icon{width:68px;height:68px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,var(--pb101-primary),#6d9cff);color:#fff;font-size:28px;box-shadow:0 16px 30px rgba(47,111,237,.28)}
.pb101-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.pb101-grid p{margin:0}.pb101-notes{grid-column:1/-1}
.psico-booking-v5 label,.pb101-card label{display:block;font-weight:700;font-size:13px;color:#3b4960;margin-bottom:8px}.psico-booking-v5 input,.psico-booking-v5 textarea,.psico-booking-v5 select,.pb101-card input,.pb101-card select{width:100%;padding:13px 14px;border:1px solid var(--pb101-border);border-radius:14px;background:#fff;box-sizing:border-box}.psico-booking-v5 input:focus,.psico-booking-v5 textarea:focus,.psico-booking-v5 select:focus,.pb101-card input:focus,.pb101-card select:focus{outline:none;border-color:#a8c3ff;box-shadow:0 0 0 4px rgba(47,111,237,.12)}
.pb101-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;flex-wrap:wrap}.pb101-mini{color:var(--pb101-muted);font-size:14px}.pb101-action-buttons{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.psico-booking-v5 button,.pb101-admin .button-primary,.pb101-wa{background:linear-gradient(135deg,var(--pb101-primary),var(--pb101-primary-2));color:#fff;border:0;border-radius:14px;padding:14px 22px;font-weight:800;cursor:pointer;box-shadow:0 14px 24px rgba(47,111,237,.25);text-decoration:none}.pb101-wa{background:#25D366;box-shadow:0 14px 24px rgba(37,211,102,.22)}
.pb101-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;margin:18px 0 22px}.pb101-stat,.pb101-card{background:var(--pb101-surface);border:1px solid var(--pb101-border);border-radius:var(--pb101-radius);box-shadow:var(--pb101-shadow)}.pb101-stat{padding:22px;display:flex;flex-direction:column;gap:10px}.pb101-stat-icon{font-size:24px}.pb101-stat span{font-size:34px;font-weight:800}.pb101-stat small{color:var(--pb101-muted)}.pb101-card{padding:22px}.pb101-grid-admin{display:grid;grid-template-columns:minmax(320px,420px) 1fr;gap:18px;align-items:start}.pb101-color{display:inline-block;width:14px;height:14px;border-radius:999px;vertical-align:middle;margin-right:8px;border:1px solid rgba(0,0,0,.08)}.pb101-badge{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;font-weight:700;font-size:12px;text-transform:capitalize}.pb101-badge.confirmed{background:#eaf8ef;color:var(--pb101-success)}.pb101-badge.pending{background:#fff4df;color:var(--pb101-warning)}
.pb101-cal{background:#fff}.pb101-cal-head{font-size:22px;font-weight:800;margin-bottom:16px;text-transform:capitalize}.pb101-weekdays,.pb101-days{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.pb101-weekdays span{font-size:12px;color:var(--pb101-muted);font-weight:700;text-align:center}.pb101-day{min-height:120px;border:1px solid var(--pb101-border);border-radius:14px;padding:10px;background:#fbfdff;display:flex;flex-direction:column;gap:6px}.pb101-day.empty{background:transparent;border-style:dashed}.pb101-day strong{font-size:14px}.pb101-event{font-size:11px;line-height:1.2;padding:6px 7px;background:#fff;border-left:4px solid var(--pb101-primary);border-radius:8px}.pb101-more{font-size:11px;color:var(--pb101-muted)}
@media (max-width: 900px){.pb101-grid-admin{grid-template-columns:1fr}.pb101-head h3{font-size:28px}.pb101-day{min-height:90px}}

.pb101-badge.failed{background:#fdeaea;color:#b42318}.pb101-badge.sent{background:#eaf8ef;color:#198754}.pb101-badge.retrying{background:#eef4ff;color:#174bb6}.pb101-badge.rate_limited{background:#fff4df;color:#d97706}
.pb10-shell{--line:#e7eaf0;--text:#172033;--muted:#667085;--accent:#0f766e;--accent-soft:#e8f6f3;max-width:1220px;margin:0 auto;color:var(--text);font-family:Inter,system-ui,sans-serif}.pb10-top h2{margin:10px 0 8px;font-size:clamp(28px,4vw,40px);line-height:1.05}.pb10-eyebrow{display:inline-block;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#344054;font-size:12px;font-weight:700}.pb10-main{display:grid;grid-template-columns:1.35fr .85fr;gap:24px}.pb10-booker,.pb10-card{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 14px 40px rgba(15,23,42,.06)}.pb10-booker{padding:24px}.pb10-toolbar{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px}.pb10-pro-selector label{display:block;font-size:13px;color:var(--muted);margin-bottom:8px;font-weight:600}.pb10-pro-selector select,.pb10-form-card input,.pb10-form-card select,.pb10-form-card textarea,.pb10-admin-calendar .pb10-calendar-filters input,.pb10-admin-calendar .pb10-calendar-filters select{width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:16px;background:#fcfdff;font-size:15px}.pb10-note{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.pb10-dot{width:10px;height:10px;border-radius:999px;background:#d0d5dd;display:inline-block}.pb10-week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-bottom:18px}.pb10-day{padding:14px 10px;border:1px solid var(--line);border-radius:18px;background:#fff;text-align:left;cursor:pointer}.pb10-dayname{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.pb10-day.is-active{background:linear-gradient(180deg,#f1fffb 0%,#ecfdf8 100%);border-color:#8ad7ca;box-shadow:inset 0 0 0 1px #8ad7ca}.pb10-slots-wrap{border-top:1px solid var(--line);padding-top:18px}.pb10-slots-panel{min-height:220px}.pb10-slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.pb10-slot{padding:14px;border-radius:16px;border:1px solid var(--line);background:#f8fafc;cursor:pointer;font-weight:700;color:#243041}.pb10-slot.is-disabled{opacity:.45;cursor:not-allowed}.pb10-slot.is-selected{background:var(--accent);border-color:var(--accent);color:#fff}.pb10-summary{display:flex;flex-direction:column;gap:20px}.pb10-card{padding:22px}.pb10-summary-card ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}.pb10-summary-card li{display:flex;justify-content:space-between;gap:18px;padding-bottom:12px;border-bottom:1px dashed var(--line)}.pb10-mini-state{margin-top:14px;padding:12px 14px;border-radius:14px;background:#f8fafc;color:#475467;font-weight:600}.pb10-form-card p{margin:0 0 14px}.pb10-form-card label{display:block;font-size:13px;color:#344054;margin-bottom:8px;font-weight:700}.pb10-form-card textarea{min-height:108px;resize:vertical}.pb10-cta{width:100%;padding:15px 18px;border:none;border-radius:16px;background:linear-gradient(180deg,#159a8d 0%,#0f766e 100%);color:#fff;font-weight:800;font-size:15px;cursor:pointer}.pb10-empty,.pb10-day-meta{color:var(--muted);font-size:14px}.pb10-admin-calendar .pb10-calendar-filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.pb10-admin-calendar .pb10-calendar-filters label{display:flex;flex-direction:column;gap:6px;font-weight:600}.pb10-week-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:18px}.pb10-day-col,.pb10-month-cell{background:#fff;border:1px solid #e7eaf0;border-radius:18px;overflow:hidden;box-shadow:0 10px 24px rgba(15,23,42,.04)}.pb10-col-head,.pb10-month-head{padding:14px 16px;border-bottom:1px solid #eef2f6;background:#fbfcfe;display:flex;justify-content:space-between;align-items:center;gap:10px}.pb10-col-body,.pb10-month-body{padding:14px;display:grid;gap:10px}.pb10-admin-event{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:12px;border:1px solid #edf1f5;border-radius:14px;background:#fcfdff;cursor:pointer}.pb10-admin-event-time{font-weight:800;color:#0f766e}.pb10-admin-event-content span{display:block;color:#667085;font-size:13px;margin-top:3px}.pb10-status{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700;text-transform:capitalize;margin-top:8px}.pb10-status-confirmed,.pb10-status-paid{background:#e8f7ef;color:#166534}.pb10-status-pending_payment{background:#fff7e6;color:#b45309}.pb10-status-expired{background:#fef2f2;color:#b91c1c}.pb10-month-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-top:18px}.pb10-event-chip{padding:10px 12px;border-radius:14px;background:#eff8f7;border:1px solid #cde9e3;appearance:none;width:100%;text-align:left;cursor:pointer}.pb10-event-chip span{display:block;font-size:12px;color:#0f766e;font-weight:700}.pb10-empty-mini{color:#94a3b8;font-size:13px}.pb10-modal[hidden]{display:none}.pb10-modal{position:fixed;inset:0;z-index:99999}.pb10-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.45)}.pb10-modal-dialog{position:relative;max-width:620px;margin:8vh auto;background:#fff;border-radius:22px;padding:24px;box-shadow:0 30px 80px rgba(15,23,42,.25)}.pb10-modal-close{position:absolute;top:12px;right:14px;border:none;background:#f1f5f9;width:36px;height:36px;border-radius:999px;font-size:22px;cursor:pointer}.pb10-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pb10-modal-grid div{padding:12px 14px;border:1px solid #e7eaf0;border-radius:14px;background:#fcfdff}.pb10-modal-grid span{display:block;color:#667085;font-size:12px;margin-bottom:4px}.pb10-modal-notes{margin-top:12px;padding:14px;border:1px solid #e7eaf0;border-radius:14px;background:#fcfdff}@media(max-width:980px){.pb10-main{grid-template-columns:1fr}.pb10-week-strip{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.pb10-week-strip{grid-template-columns:repeat(2,1fr)}.pb10-slots-grid{grid-template-columns:repeat(2,1fr)}}
.pb10-timeout-note{margin-top:12px;padding:12px 14px;border-radius:14px;background:#fff7e6;color:#9a6700;font-size:13px;font-weight:600}.pb10-status-expired{background:#fef2f2;color:#b91c1c}
.pb10-payment-timer{margin-bottom:16px;padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,#effcf9 0%,#e6f7f3 100%);border:1px solid #bfe6dd}
.pb10-payment-timer__label{font-size:12px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;color:#0f766e}
.pb10-payment-timer__time{font-size:32px;line-height:1;margin:8px 0 10px;font-weight:900;color:#0f172a;font-variant-numeric:tabular-nums}
.pb10-payment-timer__help{font-size:13px;color:#475467}
.pb10-payment-timer.is-warning{background:linear-gradient(180deg,#fff8eb 0%,#fff3d9 100%);border-color:#f3d08b}
.pb10-payment-timer.is-warning .pb10-payment-timer__label{color:#b45309}
.pb10-payment-timer.is-expired{background:linear-gradient(180deg,#fff1f2 0%,#ffe4e6 100%);border-color:#f5b6bf}
.pb10-payment-timer.is-expired .pb10-payment-timer__label{color:#be123c}
.pb10-payment-timer.is-expired .pb10-payment-timer__time{color:#be123c}

.pb10-booking-edit{background:#fff;border:1px solid #dbe3f0;border-radius:18px;padding:20px;margin:16px 0 20px;box-shadow:0 10px 24px rgba(15,23,42,.05)}.pb10-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pb10-edit-grid p{margin:0}.pb10-edit-grid label{display:block;font-weight:700;margin-bottom:8px}.pb10-edit-grid input,.pb10-edit-grid select,.pb10-edit-grid textarea{width:100%;padding:12px 14px;border:1px solid #d7dee8;border-radius:12px}.pb10-edit-grid textarea{min-height:120px}.pb10-full{grid-column:1/-1}.pb10-edit-actions{display:flex;gap:12px;margin-top:16px}.pb10-modal-actions{margin-top:16px;display:flex;justify-content:flex-end}@media(max-width:760px){.pb10-edit-grid{grid-template-columns:1fr}}
.pb10-actions{display:flex;gap:8px;flex-wrap:wrap}.pb10-cancel{border-color:#f1b2ba!important;color:#b42318!important}.pb10-admin .pb101-card,.pb10-admin .pb10-booking-edit,.pb10-admin-calendar .pb10-card{max-width:1280px}.pb101-admin form p,.pb10-booking-edit form p,.pb10-admin-calendar form label{max-width:none}.pb101-admin input[type=text],.pb101-admin input[type=email],.pb101-admin input[type=number],.pb101-admin input[type=time],.pb101-admin input[type=date],.pb101-admin select,.pb101-admin textarea,.pb10-admin-calendar input,.pb10-admin-calendar select{width:100%;max-width:none;box-sizing:border-box}.pb101-admin textarea{min-height:120px}.pb101-card{overflow:hidden}.pb101-card table{table-layout:auto}.pb101-admin .form-table th{width:280px}.pb101-admin .pb101-card form{display:block}.pb101-admin .pb101-card .submit{padding-top:8px}.pb101-admin h1,.pb101-admin h2{margin-bottom:16px}@media(max-width:900px){.pb101-admin .form-table th,.pb101-admin .form-table td{display:block;width:100%}.pb101-admin .form-table th{padding-bottom:8px}}