:root{color-scheme:light;--bg:#E5E4E2;--panel:#ffffff;--panel-soft:#f0efed;--line:#d3d2d0;--text:#111111;--muted:#6f6860;--accent:#111111;--accent-soft:#e7e2db;--success:#2f7a57;--warning:#9a6a12;--danger:#a04333;--shadow:0 16px 42px rgba(17,17,17,0.08)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:radial-gradient(circle at top left,rgba(255,255,255,.85),transparent 28%),linear-gradient(180deg,#f5f4f2 0,var(--bg) 32%,#dddcda 100%);color:var(--text);font-family:Avenir Next,Helvetica Neue,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.pageShell{max-width:1320px;margin:0 auto;padding:32px 24px 48px}.pageTopbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:700;color:var(--muted)}.pageTitle{margin:0;font-size:clamp(32px,5vw,48px);line-height:1;font-weight:700}.topbarMeta{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:14px}.summaryStrip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:24px}.summaryCard{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(245,242,237,.95));border:1px solid rgba(211,205,197,.9);border-radius:22px;box-shadow:var(--shadow);padding:18px 22px}.summaryCard span{display:block;margin-bottom:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700}.summaryCard strong{font-size:26px;line-height:1}.calendarShell,.detailPanel,.detailShell,.listPanel{background:rgba(255,255,255,.86);border:1px solid rgba(211,205,197,.82);border-radius:28px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.calendarShell{padding:24px}.calendarHeader{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.calendarNav,.textLink{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:14px;border:1px solid rgba(17,17,17,.12);background:linear-gradient(180deg,#2d2d2d,#111111);color:white;font-weight:700;box-shadow:0 14px 28px rgba(17,17,17,.16)}.textLink{min-height:unset;padding:0;border:0;background:transparent;color:var(--accent);box-shadow:none}.calendarTitleWrap{text-align:center}.calendarTitle{margin:0;font-size:clamp(28px,4vw,42px)}.calendarSubtitle,.detailSubtitle{margin:6px 0 0;color:var(--muted)}.weekHeader{margin-bottom:12px;padding:0 4px;color:#3a342e;font-size:16px;font-weight:500;text-align:center}.calendarGrid,.weekHeader{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:12px;gap:12px}.calendarCard{min-height:150px;border-radius:20px;padding:12px;background:linear-gradient(180deg,#ffffff,#f7f3ee);border:1px solid rgba(211,205,197,.82);box-shadow:0 10px 24px rgba(17,17,17,.07);transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.calendarCard,.calendarCardPrimaryLink{display:flex;flex-direction:column;gap:10px}.calendarCardPrimaryLink{min-height:92px;color:inherit}.calendarCard:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(17,17,17,.12);border-color:rgba(17,17,17,.18)}.calendarCardMuted{opacity:.48}.calendarCardToday{background:linear-gradient(180deg,#f0ece6,#fbfaf8);border-color:rgba(17,17,17,.32)}.calendarCardTop{display:flex;justify-content:space-between;align-items:center}.calendarDayNumber{font-size:28px;font-weight:300}.calendarBookingCount{min-width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#111111;color:white;font-size:14px;font-weight:700}.calendarMetrics{display:flex;flex-direction:column;gap:2px}.calendarMetrics strong{color:var(--success);font-size:22px}.bookingMetaBlock span,.bookingSummaryBlock span,.bookingTimeBlock span,.calendarEmpty,.calendarMetrics span,.calendarPreview span:last-child,.detailItem span{color:var(--muted)}.calendarEmpty{margin-top:auto}.calendarPreview{display:flex;flex-direction:column;gap:2px;border-top:1px solid rgba(211,205,197,.7);padding-top:8px;font-size:11px}.calendarPreview span:first-child{font-weight:700;color:var(--text)}.profileGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px;margin-bottom:18px}.profileStack{display:flex;flex-direction:column;gap:14px}.commCard,.profileCard{border:1px solid rgba(211,205,197,.68);border-radius:18px;background:rgba(247,243,238,.78);padding:16px 18px}.profileCard{display:flex;flex-direction:column;gap:6px}.commSummary,.commSummaryMeta,.profileCardTop{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.profileMetaLink,.profileNameLink,.profilePrimaryLink{color:var(--accent);text-decoration:underline;text-underline-offset:.16em}.profilePrimaryLink{font-weight:700;font-size:18px;text-decoration:none}.profileMetaLink:hover,.profileNameLink:hover,.profilePrimaryLink:hover{opacity:.72}.profileNameLink{font-weight:600}.profileMetaLink{font-size:13px;white-space:nowrap}.profileEmpty,.profileNotes{margin:0;color:var(--muted);line-height:1.6}.commCard{padding:0;overflow:hidden}.commSummary{list-style:none;cursor:pointer;padding:16px 18px}.commSummary::-webkit-details-marker{display:none}.commSummaryMain{display:flex;min-width:0;flex-direction:column;gap:6px}.commSummaryMain strong{font-size:16px}.commSummaryMain span{color:var(--muted);line-height:1.5}.commSummaryMeta{align-items:center;flex-shrink:0}.commBody{border-top:1px solid rgba(211,205,197,.68);padding:16px 18px 18px;display:grid;grid-gap:16px;gap:16px}.commBodyLinkRow{margin:0}.commBodyFrame{border-radius:14px;background:white;border:1px solid rgba(211,205,197,.68);padding:14px 16px;overflow:auto}.commEvents p{margin:0 0 8px;text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--muted);font-weight:700}.commEvents ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.commEvents li{display:flex;justify-content:space-between;gap:12px;color:var(--muted)}.detailShell,.listPanel{padding:14px}.bookingRow{display:flex;justify-content:space-between;gap:16px;padding:16px 18px;border-radius:20px;border:1px solid transparent}.bookingRow+.bookingRow{border-top:1px solid rgba(211,205,197,.65)}.bookingRow:hover{background:rgba(17,17,17,.03);border-color:rgba(17,17,17,.08)}.bookingRowMain{display:flex;gap:18px;min-width:0}.bookingMetaBlock,.bookingTimeBlock{display:flex;flex-direction:column;gap:4px}.bookingTimeBlock{min-width:88px}.bookingMetaBlock strong,.bookingTimeBlock strong{font-size:18px}.bookingSummaryBlock{display:flex;flex-direction:column;gap:4px}.bookingSummaryTop{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bookingSummaryTop strong{font-size:20px}.bookingMetaBlock{align-items:flex-end;text-align:right}.emptyState{padding:42px 24px;text-align:center;color:var(--muted);background:rgba(255,255,255,.86);border-radius:24px;border:1px solid rgba(211,205,197,.82);box-shadow:var(--shadow)}.statusBadge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;text-transform:capitalize}.statusCompleted,.statusConfirmed{background:rgba(30,158,82,.12);color:var(--success)}.statusPending{background:rgba(154,106,18,.14);color:#a36c00}.statusCancelled{background:rgba(204,75,55,.12);color:var(--danger)}.statusInfo{background:rgba(17,17,17,.08);color:var(--accent)}.detailShell{display:grid;grid-gap:18px;gap:18px}.detailHeader{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.detailTitle{margin:6px 0 0;font-size:clamp(28px,4vw,40px)}.detailGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.detailPanel{padding:20px 22px}.detailPanel h2,.detailSubheading{margin:0 0 16px;font-size:16px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.detailSubheading{margin-top:24px}.detailItem{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid rgba(211,205,197,.58)}.detailItem:last-child{border-bottom:0}.detailItem strong{text-align:right}.detailItemEdit{align-items:center}.detailInput{background:transparent;border:none;border-bottom:1px dashed rgba(211,205,197,.45);border-radius:0;padding:2px 4px;font-size:14px;font-family:inherit;color:inherit;text-align:right;width:100%;max-width:220px;transition:border-color .15s}.detailInput:focus{outline:none;border-bottom-color:var(--accent);border-bottom-style:solid}.detailInput[type=datetime-local]{max-width:220px;font-size:13px}.detailTitleInput{background:transparent;border:none;border-bottom:2px solid transparent;padding:2px 0;margin:6px 0 0;font-size:clamp(24px,4vw,38px);font-weight:700;font-family:inherit;color:inherit;width:100%;max-width:520px;line-height:1.2;transition:border-color .15s}.detailTitleInput:focus{outline:none;border-bottom-color:var(--accent)}.statusSelect{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:20px;padding:5px 14px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;text-transform:uppercase;letter-spacing:.08em;background:var(--surface);color:var(--text)}.statusSelect[data-status=pending]{background:#fef3c7;color:#92400e}.statusSelect[data-status=confirmed]{background:#d1fae5;color:#065f46}.statusSelect[data-status=reminder_sent]{background:#dbeafe;color:#1e40af}.statusSelect[data-status=completed]{background:#e0e7ff;color:#3730a3}.statusSelect[data-status=cancelled]{background:#fee2e2;color:#991b1b}.statusSelect[data-status=no_show]{background:#f3f4f6;color:#374151}.detailHeaderLeft{flex:1 1;min-width:0}.detailHeaderRight{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex-shrink:0}.detailActions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.detailTextarea{width:100%;background:transparent;border:1px dashed rgba(211,205,197,.45);border-radius:10px;padding:10px 12px;font-size:14px;font-family:inherit;color:inherit;resize:vertical;line-height:1.6;transition:border-color .15s;box-sizing:border-box}.detailTextarea:focus{outline:none;border-color:var(--accent);border-style:solid}.detailText,.payloadBox{margin:0;white-space:pre-wrap;line-height:1.6}.payloadBox{overflow:auto;padding:16px;border-radius:18px;background:#0f1724;color:#d9e2ef;font-size:13px}.editorActions,.editorHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.editorSaved{font-size:13px;color:#22c55e;font-weight:600}.editorGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin-top:18px}.editorField{display:flex;flex-direction:column;gap:8px}.editorField span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:700}.editorField input,.editorField select,.editorField textarea{width:100%;border:1px solid rgba(211,205,197,.9);border-radius:14px;background:#fffdfa;padding:12px 14px;color:var(--text)}.editorFieldFull{grid-column:1/-1}.buttonGhost,.buttonPrimary{border-radius:14px;padding:11px 16px;font-weight:700;cursor:pointer}.buttonPrimary{border:1px solid #111111;background:#111111;color:white}.buttonGhost{border:1px solid rgba(17,17,17,.15);background:transparent;color:var(--danger)}.buttonNeutral{color:var(--accent)}.buttonGhost:disabled,.buttonPrimary:disabled{opacity:.55;cursor:default}.editorError{margin:14px 0 0;color:var(--danger);font-weight:600}@media (max-width:1100px){.calendarGrid,.weekHeader{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:860px){.calendarGrid,.detailGrid,.editorGrid,.profileGrid,.summaryStrip,.weekHeader{grid-template-columns:repeat(2,minmax(0,1fr))}.bookingRow,.bookingRowMain,.calendarHeader,.detailHeader,.pageTopbar{flex-direction:column}.detailHeaderRight{align-items:flex-start}.detailActions{justify-content:flex-start}.detailTitleInput{max-width:100%}.bookingMetaBlock{align-items:flex-start;text-align:left}.commEvents li,.commSummary,.commSummaryMeta,.profileCardTop{flex-direction:column;align-items:flex-start}}@media (max-width:640px){.pageShell{padding:20px 14px 36px}.calendarShell,.detailPanel,.detailShell,.listPanel{border-radius:22px}.calendarGrid,.detailGrid,.editorGrid,.profileGrid,.summaryStrip,.weekHeader{grid-template-columns:minmax(0,1fr)}.calendarCard{min-height:150px}.detailItemEdit{flex-direction:column;align-items:flex-start;gap:6px}.detailInput{text-align:left;max-width:100%}}