:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f7fb;--panel:#fff;--text:#0f172a;--muted:#475569;--line:#e2e8f0;--primary:#0f172a}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:inherit;text-decoration:none}.page{max-width:1100px;margin:0 auto;padding:1rem}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:1rem}.card-link{cursor:pointer;transition:background-color .15s,border-color .15s;display:block}.card-link:hover{background:#f8fafc;border-color:#cbd5e1}.card-link:focus-visible{outline-offset:2px;outline:2px solid #0f172a}.row{flex-wrap:wrap;gap:.75rem;display:flex}.field{gap:.35rem;min-width:200px;display:grid}label{color:var(--muted);font-size:.85rem}input,select,textarea,button{font:inherit}input,select,textarea{border:1px solid var(--line);background:#fff;border-radius:10px;padding:.55rem .7rem}button{border:1px solid var(--line);color:var(--text);cursor:pointer;background:#fff;border-radius:10px;padding:.55rem .9rem}button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}button:disabled{opacity:.65;cursor:not-allowed}.topnav{z-index:20;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0}.topnav-inner{align-items:center;gap:.8rem;max-width:1100px;margin:0 auto;padding:.75rem 1rem;display:flex}.topnav-brand{gap:.35rem;display:grid}.topnav-links{flex-wrap:wrap;align-items:center;gap:.45rem;margin-left:auto;display:flex}.navlink{border:1px solid var(--line);border-radius:9px;padding:.45rem .7rem;font-size:.9rem}.navlink.active{background:#eef2ff;border-color:#c7d2fe}.muted{color:var(--muted)}.identity-chip{background:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;flex-wrap:wrap;gap:.65rem;padding:.3rem .75rem;font-size:.82rem;display:inline-flex}.error-box{color:#7f1d1d;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;gap:.45rem;padding:.7rem .8rem;display:grid}.error-box.compact{padding:.45rem .6rem}.error-title{margin:0;font-size:.9rem}.error-correlation{flex-wrap:wrap;align-items:center;gap:.55rem;display:inline-flex}.error-correlation code{background:#fff;border:1px solid #fecaca;border-radius:5px;padding:.15rem .3rem;font-size:.8rem}.table-wrap{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;border:1px solid var(--line);background:#fff;border-radius:12px;max-width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%;min-width:900px}.table.table-enhanced{table-layout:fixed}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap;padding:.78rem .9rem;font-size:.92rem;line-height:1.25}.table-enhanced thead th{z-index:1;box-shadow:inset 0 -1px 0 var(--line);background:#fff;position:sticky;top:0}.table-enhanced tbody tr:nth-child(2n){background:#fafbff}.table-enhanced tbody tr:hover{background:#ecf2ff}.table--appointments{min-width:1570px}.table--payments{min-width:1420px}.table--appointments .col-appointment-id,.table--payments .col-appointment-id{width:220px}.table--appointments .col-date-time,.table--payments .col-date-time{width:180px}.table--appointments .col-type,.table--payments .col-type,.table--appointments .col-status,.table--appointments .col-payment{width:130px}.table--appointments .col-meet-link{width:110px}.table--appointments .col-calendar-event{width:220px}.table--appointments .col-client,.table--payments .col-client{width:260px}.table--appointments .col-actions{width:190px}.table--payments .col-payment-status{width:160px}.table--payments .col-appointment-status{width:180px}.table--payments .col-expected-payout{width:170px}.table--payments .col-amount{width:130px}.sort-btn{color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:.35rem;margin:0;padding:0;font-weight:600;display:inline-flex}.sort-btn:hover{color:#1e293b}.sort-btn:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #0f172a}.sort-indicator{color:var(--muted);font-size:.72rem}.sort-btn.active .sort-indicator{color:var(--text)}.appointment-id{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.82rem}.table-row-clickable{cursor:pointer;transition:background-color .15s}.table-row-clickable:hover{background:#f8fafc}.table-row-clickable:focus-visible,.table-row-clickable:focus-within{outline-offset:-2px;outline:2px solid #0f172a}.table-row-link{width:100%;color:inherit;cursor:pointer;text-decoration:none;display:block}.table-row-link:focus-visible{outline-offset:2px;outline:2px solid #0f172a}.badge{border:1px solid #cbd5e1;border-radius:999px;padding:.2rem .55rem;font-size:.75rem;display:inline-flex}.inline-code{border:1px solid var(--line);background:#f8fafc;border-radius:6px;padding:.2rem .35rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.8rem}.grid{gap:.9rem;display:grid}.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.slot-month-header{flex-wrap:wrap;justify-content:center;align-items:center;gap:.85rem;display:flex}.slot-day-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.9rem;display:grid}.slot-day-card h2{font-size:1rem}.slot-list{gap:.7rem;display:grid}.slot-card{border:1px solid var(--line);background:#fff;border-radius:10px;padding:.75rem}.slot-card-top{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.slot-card.slot-unavailable{background:#f8fafc}.slot-card.slot-booked{background:#fff9f1;border-color:#f1c27b}.slot-card.slot-not_in_template{border-style:dashed}.slot-badge{border:1px solid #cbd5e1;border-radius:999px;align-items:center;padding:.2rem .55rem;font-size:.75rem;display:inline-flex}.slot-badge-available{color:#166534;background:#ecfdf3;border-color:#86efac}.slot-badge-unavailable{color:#334155;background:#f8fafc;border-color:#cbd5e1}.slot-badge-booked{color:#9a3412;background:#fff7ed;border-color:#fdba74}.slot-badge-not_in_template{color:#475569;background:#f8fafc;border-color:#d1d5db}.slot-toggle{align-items:center;gap:.45rem;margin-top:.55rem;display:inline-flex}.slot-guidance{margin-top:.55rem;margin-bottom:0;font-size:.86rem}@media (max-width:700px){.topnav-inner{flex-direction:column;align-items:flex-start}.topnav-links{margin-left:0}}.legal-footer{max-width:1100px;color:var(--muted);text-align:center;margin:1rem auto 0;padding:1rem;font-size:.9rem}.legal-footer p{margin:0}
