@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css";.offline-booking{display:flex;flex-direction:column;gap:16px;max-width:1180px}.offline-booking__intro{margin:0;max-width:720px}.offline-booking__mode-tabs{display:flex;gap:8px;flex-wrap:wrap}.offline-booking__mode-tab{border:1px solid var(--border, #e2e8f0);background:#fff;border-radius:999px;padding:8px 16px;font-size:.875rem;font-weight:600;cursor:pointer;color:var(--text-muted, #64748b)}.offline-booking__mode-tab.active{border-color:var(--primary, #534ab7);background:#534ab714;color:var(--primary, #534ab7)}.offline-booking__panel{display:flex;flex-direction:column;gap:16px}.offline-booking__workspace{display:grid;grid-template-columns:minmax(0,1fr) min(340px,34%);gap:20px;align-items:start}.offline-booking__slots-col{min-width:0;display:flex;flex-direction:column;gap:16px}.offline-booking__intake{position:sticky;top:8px;display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--camon-border);border-radius:var(--camon-radius);background:linear-gradient(180deg,#f8fafc,#fff 48%);box-shadow:var(--camon-shadow)}.offline-booking__intake .section-title{margin:0;font-size:1rem}.offline-booking__intake-fields{display:flex;flex-direction:column;gap:12px}.offline-booking__intake-hint{margin:0;font-size:.875rem}.offline-booking__field{display:flex;flex-direction:column;gap:8px}.offline-booking__field input,.offline-booking__field select{width:100%;max-width:none}.offline-booking__date-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.offline-booking__date-label{font-size:.9rem;color:var(--camon-muted)}.offline-booking__submit{width:100%;margin-top:4px}.offline-booking__result{margin-top:0}.offline-booking__empty{margin:0}.offline-booking__summary{margin:0;font-size:.875rem;line-height:1.45}.offline-booking__pay-methods{display:flex;gap:8px}.offline-booking__pay-chip{flex:1;border:1px solid var(--camon-border);background:#fff;border-radius:8px;padding:8px 12px;font-size:.875rem;font-weight:600;cursor:pointer;color:var(--camon-muted)}.offline-booking__pay-chip.active{border-color:var(--camon-primary, #534ab7);background:#534ab714;color:var(--camon-primary, #534ab7)}@media(max-width:960px){.offline-booking__workspace{grid-template-columns:1fr;gap:16px}.offline-booking__intake{order:-1;top:0;z-index:2;box-shadow:0 4px 16px #0f172a14}.offline-booking__intake-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.offline-booking__submit{width:auto;align-self:flex-start}}@media(max-width:560px){.offline-booking__intake-fields{grid-template-columns:1fr}.offline-booking__submit{width:100%}}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.slot-btn{padding:10px 8px;border-radius:var(--camon-radius-sm);border:1px solid var(--camon-border);background:var(--camon-surface);cursor:pointer;font-size:13px;text-align:center;font-family:inherit}.slot-btn.available:hover{border-color:var(--camon-brand)}.slot-btn.selected{background:var(--camon-brand-light);border-color:var(--camon-brand)}.slot-btn.unavailable{cursor:not-allowed}.slot-btn.time-sale{border-color:var(--camon-warn)}.card-meta{margin:0;font-size:.875rem;color:var(--camon-muted)}.date-strip-picker-wrap{margin-bottom:4px}.date-strip-bar{position:relative;padding:12px;border:1px solid var(--camon-border);border-radius:var(--camon-radius);background:var(--camon-surface)}.date-strip-hint{margin:0 0 10px;font-size:12px}.date-strip-outside{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:14px 16px;border-radius:var(--camon-radius-sm);background:var(--camon-brand-light);border:1px solid var(--camon-brand)}.date-strip-outside-text{display:flex;flex-direction:column;gap:2px}.date-strip-outside-label{font-size:12px;font-weight:600;color:var(--camon-brand-dark)}.date-strip-outside-text strong{font-size:16px;color:var(--camon-text)}.venue-detail-slots-summary{margin:14px 0 18px;font-size:14px;font-weight:600;color:var(--camon-brand-dark)}.venue-detail-slots-hint{margin:0 0 12px}.venue-detail-court-block{margin-bottom:24px}.venue-detail-court-title{margin:0 0 10px;font-size:15px;font-weight:700}.venue-detail-slot-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.venue-slot-card{display:flex;flex-direction:column;align-items:stretch;gap:4px;min-height:88px;padding:12px 10px;text-align:left}.venue-slot-time{font-size:16px;font-weight:700}.venue-slot-meta{font-size:12px;color:var(--camon-muted)}.venue-slot-price{font-size:14px;font-weight:600;color:var(--camon-brand-dark);margin-top:auto}.venue-slot-badge{align-self:flex-start;font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;background:var(--camon-warn);color:#fff}.venue-slot-card.unavailable{background:#f1f5f9;border-color:#cbd5e1;border-style:dashed;box-shadow:none}.venue-slot-card.unavailable:hover{border-color:#cbd5e1}.venue-slot-card--sold-out{background:#f8fafc}.venue-slot-card.unavailable .venue-slot-time{color:#475569;font-weight:600}.venue-slot-card.unavailable .venue-slot-meta{color:#64748b}.venue-slot-card.unavailable .venue-slot-price{color:#94a3b8;font-weight:500}.venue-slot-status{align-self:stretch;text-align:center;font-size:11px;font-weight:700;line-height:1.3;letter-spacing:.03em;padding:5px 8px;border-radius:6px;margin-bottom:2px}.venue-slot-status--sold-out{background:#334155;color:#fff}.venue-slot-status--past{background:#e2e8f0;color:#334155;border:1px solid #cbd5e1}.venue-slot-selection-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:14px 16px;background:var(--camon-surface);border:1px solid var(--camon-border);border-radius:var(--camon-radius);box-shadow:var(--camon-shadow)}.venue-slot-selection-bar__info{display:flex;flex-direction:column;gap:4px;min-width:0}.venue-slot-selection-bar__warn{font-size:.8125rem;color:var(--camon-warn)}.venue-slot-selection-bar__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.date-strip-row{display:flex;align-items:flex-start;gap:8px}.date-strip-scroll{flex:1;min-width:0;display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.date-strip-more-wrap{position:relative;flex-shrink:0}.date-strip-calendar-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:50;animation:date-popover-in .15s ease-out}@keyframes date-popover-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.inline-calendar{display:flex;flex-direction:column;gap:8px;width:min(406px,calc(100vw - 32px));padding:24px;border:1px solid rgb(229 231 235 / .85);border-radius:24px;background:var(--camon-surface);box-shadow:0 24px 24px #00000024,0 0 .5px #0000000a}.inline-calendar-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px}.inline-calendar-title{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:none;background:none;font-family:inherit;cursor:pointer}.inline-calendar-month{font-size:1rem;font-weight:700;color:var(--camon-text)}.inline-calendar-title__chevron{font-size:12px;color:var(--camon-text);transition:transform .15s ease}.inline-calendar-title--open .inline-calendar-title__chevron{transform:scaleY(-1)}.inline-calendar-nav-group{display:inline-flex;align-items:center;gap:12px}.inline-calendar-nav{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:none;cursor:pointer;color:var(--camon-text);font-size:1.25rem}.inline-calendar-nav:disabled{opacity:.3;cursor:not-allowed}.inline-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.inline-calendar-weekday{text-align:center;font-size:12px;font-weight:400;color:var(--camon-muted)}.inline-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.inline-calendar-day{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border:1px solid transparent;border-radius:999px;background:transparent;font-size:.95rem;font-weight:500;cursor:pointer;font-family:inherit;color:var(--camon-text)}.inline-calendar-day:hover:not(:disabled){background:var(--camon-border)}.inline-calendar-day.other-month{color:#d1d5db}.inline-calendar-day.today{border-color:var(--camon-text);font-weight:700}.inline-calendar-day.selected{background:var(--camon-brand);color:#fff;font-weight:700;border-color:var(--camon-brand)}.inline-calendar-day.selected.today{border-color:var(--camon-brand)}.inline-calendar-day:disabled{opacity:.5;cursor:not-allowed}.inline-calendar-years{display:flex;flex-wrap:wrap;gap:8px}.inline-calendar-year{padding:6px 12px;border:1px solid var(--camon-border);border-radius:999px;background:var(--camon-surface);cursor:pointer;font-family:inherit}.inline-calendar-year:hover{border-color:var(--camon-brand)}.inline-calendar-year--active{background:var(--camon-brand-light);border-color:var(--camon-brand);font-weight:700}.inline-calendar-months{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.inline-calendar-month-cell{padding:10px 8px;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm);background:var(--camon-surface);cursor:pointer;font-family:inherit}.inline-calendar-month-cell:hover:not(:disabled){border-color:var(--camon-brand)}.inline-calendar-month-cell:disabled{opacity:.4;cursor:not-allowed}.inline-calendar-month-cell.selected{background:var(--camon-brand-light);border-color:var(--camon-brand);font-weight:700}.date-strip-scroll::-webkit-scrollbar{display:none}.date-strip-chip{flex:0 0 auto;min-width:72px;padding:10px 12px;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm);background:var(--camon-surface);cursor:pointer;scroll-snap-align:start;font-family:inherit;color:var(--camon-text)}.date-strip-chip-more{min-width:64px}.date-strip-weekday-more{font-size:1.1rem;font-weight:700;line-height:1}.date-strip-chip:hover{border-color:var(--camon-brand)}.date-strip-chip.active{border-color:var(--camon-brand);background:var(--camon-brand-light)}.date-strip-weekday{display:block;font-size:11px;color:var(--camon-muted);margin-bottom:2px}.date-strip-chip.active .date-strip-weekday{color:var(--camon-brand-dark)}.date-strip-label{display:block;font-size:13px;font-weight:700}.court-ops{--color-background-primary: #ffffff;--color-background-secondary: #f4f3ee;--color-background-tertiary: #ebe9e2;--color-background-info: #e6f1fb;--color-background-success: #e4f2e0;--color-background-warning: #faeeda;--color-background-danger: #fcebeb;--color-text-primary: #1b1b19;--color-text-secondary: #5f5e5a;--color-text-tertiary: #8a8980;--color-text-info: #185fa5;--color-text-success: #2e7d44;--color-text-warning: #854f0b;--color-text-danger: #a32d2d;--color-border-tertiary: rgba(0, 0, 0, .12);--color-border-secondary: rgba(0, 0, 0, .22);--color-border-info: #85b7eb;--co-radius-md: 8px;--co-radius-lg: 12px;color:var(--color-text-primary);line-height:1.5}.court-ops input[type=text],.court-ops input[type=tel],.court-ops input[type=date],.court-ops select{height:36px;border:.5px solid var(--color-border-secondary);border-radius:8px;padding:0 10px;font-size:13px;background:var(--color-background-primary);color:var(--color-text-primary);outline:none;font-family:inherit}.court-ops select{padding:0 8px}.court-ops input:focus,.court-ops select:focus{box-shadow:0 0 0 2px var(--color-border-info);border-color:transparent}.court-ops button{font-family:inherit;cursor:pointer;border-radius:8px;background:var(--color-background-primary);border:.5px solid var(--color-border-secondary);color:var(--color-text-primary);padding:7px 12px;font-size:13px}.court-ops button:active{transform:scale(.98)}.court-ops .mv-tg{font-size:13px;padding:5px 14px;border-radius:6px;cursor:pointer;color:var(--color-text-secondary)}.court-ops .mv-tg.on{background:var(--color-background-info);color:var(--color-text-info);font-weight:500}.court-ops .mv-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:5px 11px;border-radius:16px;border:.5px solid var(--color-border-tertiary);cursor:pointer;-webkit-user-select:none;user-select:none}.court-ops .mv-dow{text-align:center;font-size:11px;color:var(--color-text-secondary);padding:5px 0}.court-ops .ai-assistant-btn{padding:9px 15px;border-radius:var(--radius-full);background:var(--camon-ai);color:#fff;border:none;font-size:13px;font-weight:500}.court-ops .ai-assistant-btn i{font-size:17px}:root{--camon-brand: #1d2bf1;--camon-brand-dark: #1620c4;--camon-brand-light: #dde0fe;--camon-brand-tint: #eff1fe;--camon-bg: #f5f6f8;--camon-surface: #ffffff;--camon-text: #0f172a;--camon-muted: #64748b;--camon-border: #e2e8f0;--camon-border-strong: #cbd5e1;--camon-danger: #b91c1c;--camon-danger-bg: #fef2f2;--camon-success: #15803d;--camon-success-bg: #f0fdf4;--camon-warn: #c2410c;--camon-warn-bg: #fff7ed;--camon-sidebar: #232e7a;--camon-sidebar-text: rgba(255, 255, 255, .82);--camon-sidebar-muted: rgba(255, 255, 255, .6);--camon-point: #a8fd30;--camon-ai: #4f46b5;--camon-line: #e2e8f0;--camon-count-bg: #eef1f6;--camon-radius: 12px;--camon-radius-sm: 8px;--radius-md: 10px;--radius-lg: 16px;--radius-full: 999px;--camon-shadow: 0 4px 24px rgb(15 23 42 / .06);--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px;--camon-font: "Spoqa Han Sans Neo", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--camon-font);line-height:1.5;color:var(--camon-text);background:var(--camon-bg)}a{color:var(--camon-brand-dark);text-decoration:none}a:hover{text-decoration:underline}code{font-size:.85em;background:#e2e8f0;padding:.1em .35em;border-radius:4px}.admin-shell{display:flex;min-height:100vh}.admin-sidebar{width:260px;flex-shrink:0;background:var(--camon-sidebar);color:var(--camon-sidebar-text);display:flex;flex-direction:column;padding:20px 12px;max-height:100vh;position:sticky;top:0}.admin-brand{padding:4px 10px 20px;margin-bottom:16px}.admin-brand-title{font-size:1.15rem;font-weight:700;color:#fff;letter-spacing:-.02em}.admin-brand-sub{font-size:.75rem;color:var(--camon-sidebar-muted);margin-top:4px}.admin-nav-scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding-right:2px;margin-right:-2px}.admin-nav-scroll::-webkit-scrollbar{width:5px}.admin-nav-scroll::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.admin-nav-group{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid rgb(255 255 255 / .12)}.admin-nav-group:last-child{margin-bottom:8px;padding-bottom:0;border-bottom:none}.admin-nav-group-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#ffffff8c;padding:0 10px 10px;margin-bottom:8px}.admin-nav-section{margin-bottom:6px}.admin-nav-section:last-child{margin-bottom:0}.admin-nav-section-label{font-size:.65rem;font-weight:600;letter-spacing:.04em;color:#ffffff8c;padding:6px 10px 4px 12px;opacity:.9}.admin-nav-links{display:flex;flex-direction:column;gap:1px}.admin-nav-link{display:flex;align-items:center;gap:10px;padding:8px 12px 8px 10px;border-radius:var(--camon-radius-sm);color:var(--camon-sidebar-text);text-decoration:none;font-size:.86rem;line-height:1.3;transition:background .12s,color .12s}.admin-nav-link:hover{background:#ffffff14;text-decoration:none}.admin-nav-link.active{background:#ffffff1a;color:var(--camon-point);font-weight:600}.admin-nav-icon{width:1.25rem;text-align:center;opacity:.85;font-size:1.05rem;line-height:1}.admin-nav-link.active .admin-nav-icon{opacity:1}.admin-body{flex:1;display:flex;flex-direction:column;min-width:0}.admin-topbar{background:var(--camon-surface);border-bottom:1px solid var(--camon-border);padding:12px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-user{font-size:.88rem;color:var(--camon-muted)}.admin-user strong{color:var(--camon-text)}.admin-main{flex:1;padding:24px 28px 48px;max-width:1280px;width:100%}.admin-page{animation:admin-fade-in .2s ease}@keyframes admin-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.page-title{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.page-desc{margin:6px 0 0;font-size:.9rem;max-width:52ch}.page-header-actions{display:flex;gap:8px;flex-shrink:0}.card{background:var(--camon-surface);border:1px solid var(--camon-line);border-radius:var(--radius-lg);padding:18px 20px;box-shadow:var(--camon-shadow);margin-bottom:16px}.card--flat{box-shadow:none}.card-title{margin:0 0 12px;font-size:.95rem;font-weight:600}.muted{color:var(--camon-muted);font-size:.88rem}.section-title{font-size:1rem;font-weight:600;margin:0 0 12px}button,.btn{font:inherit;cursor:pointer;border-radius:var(--camon-radius-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;font-size:.88rem;font-weight:600;border:1px solid transparent;text-decoration:none;transition:background .12s,border-color .12s}.btn-primary{background:var(--camon-brand);color:#fff;border-color:var(--camon-brand)}.btn-primary:hover{background:var(--camon-brand-dark);border-color:var(--camon-brand-dark)}.btn-secondary{background:var(--camon-surface);color:var(--camon-text);border-color:var(--camon-border-strong)}.btn-secondary:hover{background:var(--camon-bg)}.btn-ghost{background:transparent;color:var(--camon-muted);border-color:transparent}.btn-ghost:hover{background:var(--camon-bg);color:var(--camon-text)}.btn-sm{padding:6px 12px;font-size:.8rem}.btn-danger{background:var(--camon-danger);color:#fff;border-color:var(--camon-danger)}.btn-danger:hover{background:#991b1b}button:disabled,.btn:disabled{opacity:.55;cursor:not-allowed}input,select,textarea{font:inherit;padding:9px 12px;border:1px solid var(--camon-border-strong);border-radius:var(--camon-radius-sm);background:var(--camon-surface);color:var(--camon-text);min-height:38px}input:focus,select:focus,textarea:focus{outline:2px solid var(--camon-brand-light);border-color:var(--camon-brand)}.filter-bar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.filter-bar-fields{display:flex;flex-wrap:wrap;gap:14px 20px;flex:1}.filter-field{display:flex;flex-direction:column;gap:6px;min-width:140px}.filter-field-label{font-size:.78rem;font-weight:600;color:var(--camon-muted)}.filter-bar-actions{flex-shrink:0;align-self:flex-end}.filter-bar-actions .btn{min-width:96px}.booking-status-cell{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.reservation-calendar__expanded-badges .booking-status-cell{flex-direction:row;flex-wrap:wrap;align-items:center}.row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.table-wrap{overflow-x:auto;border:1px solid var(--camon-border);border-radius:var(--camon-radius);background:var(--camon-surface);margin-bottom:16px}.admin-table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-table th,.admin-table td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--camon-border)}.admin-table th{background:#f8fafc;font-weight:600;font-size:.78rem;color:var(--camon-muted);text-transform:none;white-space:nowrap}.admin-table tbody tr:hover{background:#fafbfc}.admin-table tbody tr:last-child td{border-bottom:none}table:not(.admin-table){border-collapse:collapse;width:100%;background:var(--camon-surface);border-radius:var(--camon-radius);overflow:hidden;border:1px solid var(--camon-border)}table:not(.admin-table) th,table:not(.admin-table) td{padding:10px 14px;border-bottom:1px solid var(--camon-border);text-align:left}table:not(.admin-table) th{background:#f8fafc;font-weight:600;font-size:.78rem;color:var(--camon-muted)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-bottom:20px}.kpi-card{margin-bottom:0;display:flex;flex-direction:column}.kpi-label{margin:0 0 8px;font-size:.8rem;font-weight:400;color:var(--camon-muted)}.kpi-value{font-size:1.65rem;font-weight:500;letter-spacing:-.02em;line-height:1.2}.kpi-hint{margin:8px 0 0;font-size:.78rem}.alert{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:var(--camon-radius-sm);margin-bottom:14px;font-size:.9rem}.alert--error{background:var(--camon-danger-bg);color:var(--camon-danger);border:1px solid #fecaca}.alert--success{background:var(--camon-success-bg);color:var(--camon-success);border:1px solid #bbf7d0}.alert--info{background:var(--camon-brand-light);color:var(--camon-brand-dark);border:1px solid #99f6e4}.alert--warn{background:var(--camon-warn-bg);color:var(--camon-warn);border:1px solid #fdba74}.alert-dismiss{border:none;background:transparent;font-size:1.2rem;line-height:1;padding:0 4px;color:inherit;opacity:.7}.err{color:var(--camon-danger)}.ok{color:var(--camon-success)}.empty-state{text-align:center;padding:48px 24px;background:var(--camon-surface);border:1px dashed var(--camon-border-strong);border-radius:var(--camon-radius)}.empty-state-icon{font-size:2rem;color:var(--camon-border-strong);margin-bottom:12px}.empty-state-title{margin:0 0 8px;font-weight:600}.empty-state-desc{max-width:36ch;margin:0 auto 16px}.page-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px}.page-loading-spinner{width:32px;height:32px;border:3px solid var(--camon-border);border-top-color:var(--camon-brand);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.status-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:600}.status-badge--success{background:var(--camon-success-bg);color:var(--camon-success)}.status-badge--warn{background:var(--camon-warn-bg);color:var(--camon-warn)}.status-badge--danger{background:var(--camon-danger-bg);color:var(--camon-danger)}.status-badge--neutral{background:#f1f5f9;color:#475569}.franchise-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.franchise-card{margin-bottom:0;display:flex;flex-direction:column;gap:10px}.franchise-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.franchise-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:8px;border-top:1px solid var(--camon-border)}.instructors-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:14px}.instructors-toolbar .filter-bar{flex:1;min-width:min(100%,480px);margin-bottom:0}.instructors-toolbar__create{flex-shrink:0}.instructors-filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.instructors-filter-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;border:1px solid var(--camon-border);background:#fff;font-size:.85rem;font-weight:500;color:#475569;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.instructors-filter-chip:hover{border-color:#94a3b8;background:#f8fafc}.instructors-filter-chip--on{border-color:var(--camon-brand);background:var(--camon-brand-light, #f0fdfa);color:var(--camon-brand-dark, #0f766e);font-weight:600}.instructors-filter-chip__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;padding:0 5px;border-radius:999px;background:#0f172a0f;font-size:.75rem;font-weight:600}.instructors-filter-chip--on .instructors-filter-chip__count{background:#0d948826}.instructors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.instructors-grid--loading .instructor-grid-card--skeleton{min-height:320px;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:instructor-skeleton 1.2s ease-in-out infinite}@keyframes instructor-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.instructor-grid-card{margin-bottom:0;padding:0;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .18s,border-color .18s,transform .18s}.instructor-grid-card:hover{box-shadow:0 8px 24px #0f172a14;transform:translateY(-1px)}.instructor-grid-card--selected{border-color:var(--camon-brand);box-shadow:0 0 0 1px var(--camon-brand)}.instructor-grid-card__main{flex:1;display:flex;flex-direction:column;width:100%;padding:0;border:none;background:transparent;text-align:left;cursor:pointer}.instructor-grid-card__photo-wrap{position:relative;aspect-ratio:4 / 3;background:linear-gradient(145deg,#e2e8f0,#cbd5e1);overflow:hidden}.instructor-grid-card__photo{width:100%;height:100%;object-fit:cover;object-position:top center}.instructor-grid-card__photo--empty{display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:700;color:#64748b}.instructor-grid-card__photo-overlay{position:absolute;inset:auto 0 0;padding:28px 14px 12px;background:linear-gradient(transparent,#0f172ac7);color:#fff}.instructor-grid-card__name{display:block;font-size:1rem;line-height:1.3}.instructor-grid-card__headline{display:block;margin-top:2px;font-size:.78rem;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instructor-grid-card__badges{position:absolute;top:10px;right:10px;display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.instructor-grid-card__badge{padding:3px 8px;border-radius:999px;font-size:.68rem;font-weight:600;background:#0f172a8c;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.instructor-grid-card__badge--live{background:#0d9488e0}.instructor-grid-card__badge--muted{background:#64748bd9}.instructor-grid-card__body{padding:12px 14px 10px;display:flex;flex-direction:column;gap:8px;flex:1}.instructor-grid-card__meta{margin:0;font-size:.8rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.instructor-grid-card__stats{display:flex;gap:12px}.instructor-grid-card__stat{display:inline-flex;align-items:baseline;gap:4px;font-size:.82rem}.instructor-grid-card__stat-label{color:var(--camon-muted);font-size:.75rem}.instructor-grid-card__tags{display:flex;flex-wrap:wrap;gap:4px}.instructor-grid-card__tag{padding:2px 8px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:.72rem;font-weight:500}.instructor-grid-card__tag--more{background:#e2e8f0}.instructor-grid-card__footer{display:flex;gap:6px;padding:0 12px 12px;border-top:none}.instructor-grid-card__footer .btn{flex:1}html.instructor-drawer-open,body.instructor-drawer-open{overflow:hidden}.instructor-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172a6b;display:flex;justify-content:flex-end;overflow:hidden;overscroll-behavior:none;animation:instructor-drawer-fade .2s ease-out}@keyframes instructor-drawer-fade{0%{opacity:0}to{opacity:1}}.instructor-drawer-panel{width:min(760px,100vw);height:100%;max-height:100dvh;background:var(--camon-surface);box-shadow:-12px 0 40px #0f172a24;display:flex;flex-direction:column;overflow:hidden;animation:instructor-drawer-slide .24s ease-out}@keyframes instructor-drawer-slide{0%{transform:translate(100%)}to{transform:translate(0)}}.instructor-drawer-panel__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 24px 16px;border-bottom:1px solid var(--camon-border);flex-shrink:0}.instructor-drawer-panel__identity{display:flex;gap:14px;align-items:flex-start;min-width:0}.instructor-drawer-panel__avatar{width:52px;height:64px;border-radius:10px;overflow:hidden;background:linear-gradient(145deg,#e2e8f0,#cbd5e1);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;color:#475569}.instructor-drawer-panel__avatar img{width:100%;height:100%;object-fit:cover;object-position:top center}.instructor-drawer-panel__eyebrow{margin:0 0 2px;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.instructor-drawer-panel__title{margin:0;font-size:1.2rem;line-height:1.3}.instructor-drawer-panel__badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}.instructor-drawer-panel__meta{font-size:.8rem}.instructor-drawer-panel__close{flex-shrink:0}.instructor-drawer-panel__tabs{flex-shrink:0;margin:0;padding:0 24px;border-bottom:1px solid var(--camon-border)}.instructor-drawer-panel__body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:20px 24px 0;scroll-padding-bottom:96px}.instructor-drawer-panel__body .instructor-profile-form{padding-bottom:96px}.instructor-drawer-panel__body .instructor-profile-form__footer{margin:0 -24px;padding:14px 24px max(14px,env(safe-area-inset-bottom,0px));background:var(--camon-surface);box-shadow:0 -8px 24px #0f172a14}.instructor-lesson-open--embedded{margin-top:0;padding-top:0;border-top:none}.instructor-lesson-open__desc--embedded{margin:0 0 16px}.lesson-open-form__end-preview{margin:0 0 12px}.lesson-recurrence-fields{margin-top:12px;padding-top:12px;border-top:1px dashed var(--camon-border)}.lesson-recurrence-fields__toggle{align-items:flex-start}.lesson-recurrence-fields__hint{font-size:.82rem}.lesson-recurrence-fields__options{margin-top:10px}.instructor-lesson-open{margin-top:20px;padding-top:20px;border-top:1px solid var(--camon-border)}.instructor-lesson-open__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.instructor-lesson-open__title{margin:0 0 4px;font-size:1.05rem}.instructor-lesson-open__desc{margin:0;font-size:.88rem}.instructor-lessons-tab__toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.instructor-lessons-tab__title{margin:0 0 4px;font-size:1.05rem}.instructor-lessons-tab__desc{margin:0;font-size:.88rem}.instructor-lesson-program-detail__head{margin-bottom:12px}.instructor-lesson-program-detail__title{margin:8px 0 0;font-size:1.05rem}.instructor-lesson-list__program-title-btn{display:block;padding:0;border:none;background:none;text-align:left;cursor:pointer;color:inherit}.instructor-lesson-list__program-title-btn:hover .instructor-lesson-list__program-title{color:var(--camon-primary, #0d9488)}.instructor-lesson-bookings__head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.instructor-lesson-bookings__head .lessons-manage-detail__form-title{margin:0}.instructor-bookings-tab__head{margin-bottom:12px}.instructor-bookings-tab__title{margin:0 0 4px;font-size:1.05rem}.instructor-bookings-tab__desc{margin:0 0 8px;font-size:.88rem}.lessons-manage-tabs__link-out{margin-left:auto}.data-table--compact th,.data-table--compact td{font-size:.85rem;padding:8px 10px}.instructor-lessons-tab__actions{display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0}.instructor-lesson-list__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.instructor-lesson-list__stat{padding:12px 14px;background:#f8fafc;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm)}.instructor-lesson-list__stat--wide{grid-column:1 / -1}.instructor-lesson-list__stat-value{display:block;font-size:1.15rem;font-weight:700;color:var(--camon-text)}.instructor-lesson-list__stat-label{display:block;margin-top:2px;font-size:.78rem;color:var(--camon-muted)}.instructor-lesson-list__empty{padding:20px;margin-bottom:16px;text-align:center}.instructor-lesson-list__empty-title{margin:0 0 6px;font-weight:600}.instructor-lesson-list__programs{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.instructor-lesson-list__program{padding:14px 16px}.instructor-lesson-list__program-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}.instructor-lesson-list__program-title{margin:0 0 4px;font-size:.98rem}.instructor-lesson-list__program-meta{margin:0;font-size:.82rem}.instructor-lesson-list__program-badges{display:flex;flex-wrap:wrap;gap:6px}.instructor-lesson-list__sessions{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:6px}.instructor-lesson-list__session{display:flex;align-items:center;gap:10px;font-size:.85rem}.instructor-lesson-list__session-time{flex:1;min-width:0}.instructor-lesson-list__session-cap{font-variant-numeric:tabular-nums;color:var(--camon-muted)}.instructor-lesson-list__session-more{font-size:.82rem}.instructor-lesson-list__program-actions{display:flex;gap:8px}.lessons-manage-page__top-actions{display:flex;gap:8px;margin:12px 0 16px}.lessons-manage-layout{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:16px;align-items:start}@media(max-width:900px){.lessons-manage-layout{grid-template-columns:1fr}.instructor-lesson-list__stats{grid-template-columns:1fr 1fr}}.lessons-manage-layout__list{padding:14px;max-height:calc(100vh - 220px);overflow:auto}.lessons-manage-layout__list-title{margin:0 0 10px;font-size:.95rem}.lessons-manage-program-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.lessons-manage-program-list__item{width:100%;text-align:left;padding:10px 12px;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm);background:#fff;cursor:pointer;transition:border-color .15s,background .15s}.lessons-manage-program-list__item:hover{border-color:var(--camon-brand)}.lessons-manage-program-list__item--on{border-color:var(--camon-brand);background:#f0fdfa}.lessons-manage-program-list__title{display:block;font-weight:600;font-size:.9rem}.lessons-manage-program-list__meta{display:block;margin-top:2px;font-size:.78rem}.lessons-manage-detail__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px;margin-bottom:12px}.lessons-manage-detail__title{margin:0 0 4px;font-size:1.05rem}.lessons-manage-detail__meta{margin:0;font-size:.85rem}.lessons-manage-detail__actions{display:flex;flex-wrap:wrap;gap:8px}.lesson-onboarding-guide{padding:12px 14px;margin:0 0 12px;border:1px solid var(--camon-border, #dbe3ec);border-radius:var(--camon-radius-sm, 8px);background:#f8fafc}.lesson-onboarding-guide--compact .lesson-onboarding-guide__lead{margin-bottom:8px}.lesson-onboarding-guide__lead{margin:0 0 10px;font-size:.9rem}.lesson-onboarding-guide__steps{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.lesson-onboarding-guide__steps li{display:flex;gap:10px;align-items:flex-start;font-size:.88rem}.lesson-onboarding-guide__step-num{flex-shrink:0;width:1.4rem;height:1.4rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--camon-primary, #0d9488);color:#fff;font-size:.75rem;font-weight:700}.lesson-onboarding-guide__link{font-weight:600;white-space:nowrap}.franchise-scope-banner{display:flex;flex-direction:column;gap:2px;padding:10px 14px;margin:0 0 12px;border-radius:var(--camon-radius-sm, 8px);border:1px solid #93c5fd;background:#eff6ff;font-size:.88rem}.franchise-scope-banner--all{border-color:#fcd34d;background:#fffbeb}.franchise-scope-banner__meta{color:var(--camon-text-muted, #64748b);font-size:.85rem}.franchise-scope-banner--sticky{position:sticky;top:0;z-index:6;box-shadow:0 2px 8px #0f172a0f}.lesson-workflow-stepper{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.lesson-workflow-stepper__step{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--camon-border, #dbe3ec);border-radius:999px;background:#fff;font-size:.82rem;font-weight:600;color:var(--camon-text-muted, #64748b);text-decoration:none}.lesson-workflow-stepper__step:hover{border-color:var(--camon-primary, #0d9488);color:var(--camon-primary, #0d9488)}.lesson-workflow-stepper__step--on{border-color:var(--camon-primary, #0d9488);background:#ecfdf5;color:var(--camon-primary, #0d9488)}.lesson-workflow-stepper__step--done{opacity:.85}.lesson-workflow-stepper__num{width:1.25rem;height:1.25rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--camon-border, #e2e8f0);font-size:.72rem}.lesson-workflow-stepper__step--on .lesson-workflow-stepper__num{background:var(--camon-primary, #0d9488);color:#fff}.lessons-manage-detail__sessions-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.lessons-manage-detail__sessions-toolbar .lessons-manage-detail__form-title{margin:0}.lesson-program-edit__head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.lesson-program-edit__head .lessons-manage-detail__form-title{margin:0}.lesson-program-edit__summary{margin:0;display:grid;gap:10px;font-size:.9rem}.lesson-program-edit__summary div{display:grid;grid-template-columns:7.5rem 1fr;gap:8px}.lesson-program-edit__summary dt{margin:0;color:var(--camon-text-muted, #64748b);font-weight:600}.lesson-program-edit__summary dd{margin:0}.lessons-manage-detail__form{padding:16px;margin-bottom:12px}.lessons-manage-detail__form-title{margin:0 0 12px;font-size:.95rem}.lessons-manage-detail__sessions{padding:16px}.lessons-manage-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.lessons-manage-tabs__btn{padding:8px 14px;border:1px solid var(--camon-border, #dbe3ec);border-radius:var(--camon-radius-sm, 8px);background:#fff;color:var(--camon-text, #1e293b);font-size:.9rem;font-weight:600;cursor:pointer}.lessons-manage-tabs__btn:hover{border-color:var(--camon-primary, #0d9488)}.lessons-manage-tabs__btn--on{background:var(--camon-primary, #0d9488);border-color:var(--camon-primary, #0d9488);color:#fff}.lesson-program-edit__desc{margin:0 0 16px;font-size:.88rem}.lesson-program-edit{margin-bottom:12px}.lesson-program-edit__actions,.lesson-session-edit__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.lessons-manage-session-actions{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.lesson-session-edit{padding:4px 0}.feedback-toast-region{position:fixed;top:16px;right:16px;z-index:10000;display:flex;flex-direction:column;gap:10px;max-width:min(420px,calc(100vw - 32px));pointer-events:none}.feedback-toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--camon-radius-sm, 8px);box-shadow:0 8px 24px #0f172a2e;font-size:.92rem;line-height:1.45;pointer-events:auto;animation:feedback-toast-in .2s ease-out}.feedback-toast--success{background:#ecfdf5;border:1px solid #6ee7b7;color:#065f46}.feedback-toast--error{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.feedback-toast--warn{background:var(--camon-warn-bg);border:1px solid #fdba74;color:var(--camon-warn)}.feedback-toast__message{flex:1}.feedback-toast__dismiss{flex-shrink:0;border:none;background:transparent;color:inherit;opacity:.65;font-size:1.1rem;line-height:1;cursor:pointer;padding:0 2px}.feedback-toast__dismiss:hover{opacity:1}@keyframes feedback-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.instructor-profile-form__intro{margin:0 0 16px;padding:12px 14px;background:#f8fafc;border-radius:var(--camon-radius-sm);font-size:.88rem;line-height:1.5}.instructor-profile-hero{display:grid;grid-template-columns:minmax(140px,200px) minmax(0,1fr);gap:20px;align-items:start;margin-bottom:8px}@media(max-width:640px){.instructor-profile-hero{grid-template-columns:1fr}}.instructor-profile-hero__fields .form-section{padding-top:0;margin-bottom:0;border-bottom:none}.instructor-photo-upload__zone{position:relative;aspect-ratio:3 / 4;max-height:260px;border:2px dashed #cbd5e1;border-radius:var(--camon-radius-sm);background:#f8fafc;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}.instructor-photo-upload__zone:hover,.instructor-photo-upload__zone--drag{border-color:var(--camon-brand);background:#f0fdfa}.instructor-photo-upload__zone--has-preview{border-style:solid;border-color:var(--camon-border)}.instructor-photo-upload__preview{width:100%;height:100%;object-fit:cover;object-position:top center}.instructor-photo-upload__placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;text-align:center}.instructor-photo-upload__icon{width:40px;height:40px;border-radius:50%;background:#e2e8f0;position:relative}.instructor-photo-upload__icon:after{content:"";position:absolute;top:10px;right:12px;bottom:14px;left:12px;border:2px solid #94a3b8;border-radius:4px;box-shadow:inset 0 -6px 0 -2px #94a3b8}.instructor-photo-upload__cta{font-size:.82rem;color:#64748b;line-height:1.4}.instructor-photo-upload__change{position:absolute;inset:auto 0 0;padding:8px;font-size:.78rem;text-align:center;background:linear-gradient(transparent,#0f172aa6);color:#fff}.instructor-photo-upload__guide{margin:8px 0 0;font-size:.78rem;line-height:1.45}.instructor-photo-upload__err{margin:6px 0 0;font-size:.82rem;color:#b91c1c}.instructor-photo-upload__url-toggle{margin-top:6px}.instructor-photo-upload__url-field{margin-top:8px}.instructor-profile-form .form-section{padding-bottom:20px;margin-bottom:20px}.instructor-profile-form__empty-hint{margin:0 0 8px;font-size:.85rem}.instructor-cert-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:8px}.instructor-cert-list__item{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:center;padding:10px;background:#f8fafc;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm)}@media(max-width:520px){.instructor-cert-list__item{grid-template-columns:1fr}}.instructor-profile-form__visibility{margin-top:12px;margin-bottom:8px;align-items:flex-start}.instructor-profile-form__visibility-desc{display:block;font-weight:400;font-size:.82rem;margin-top:2px}.instructor-account-link__history-list{list-style:none;margin:8px 0 0;padding:0;border:1px solid var(--camon-border);border-radius:8px;max-height:240px;overflow-y:auto}.instructor-account-link__history-item{padding:10px 12px;border-bottom:1px solid var(--camon-border)}.instructor-account-link__history-item:last-child{border-bottom:none}.instructor-account-link__tabs{display:flex;gap:8px;margin:8px 0 12px}.instructor-account-link__tab{padding:6px 12px;border:1px solid var(--camon-border);border-radius:999px;background:#fff;font-size:.875rem;cursor:pointer}.instructor-account-link__tab.active{border-color:var(--camon-primary, #00b4a8);background:#00b4a814;font-weight:600}.instructor-account-link__tab:disabled{opacity:.5;cursor:not-allowed}.instructor-account-link__panel{margin-top:4px}.instructor-account-link__results{list-style:none;margin:8px 0 0;padding:0;border:1px solid var(--camon-border);border-radius:8px;max-height:220px;overflow-y:auto}.instructor-account-link__result-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;border:none;background:#fff;text-align:left;cursor:pointer}.instructor-account-link__result-btn:hover:not(:disabled){background:var(--camon-surface-muted, #f5f6f8)}.instructor-account-link__result-btn:disabled{opacity:.55;cursor:not-allowed}.instructor-account-link__results li+li{border-top:1px solid var(--camon-border)}.instructor-profile-form__footer{position:sticky;bottom:0;margin:20px -20px 0;padding:14px 20px max(14px,env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,#ffffffd9,#fff 24%);border-top:1px solid var(--camon-border);display:flex;justify-content:flex-end;z-index:2}.instructor-venues-empty{padding:12px 0}.instructor-venues-empty__hint{margin:4px 0 0;font-size:.85rem}.instructor-venue-cards{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px}.instructor-venue-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm);background:#f8fafc}.instructor-venue-card__main{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.instructor-venue-card__type{font-size:.72rem}.instructor-venue-assign{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.form-hint{display:block;margin-top:4px;font-size:.75rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-brand-panel{background:var(--camon-sidebar);color:var(--camon-sidebar-text);padding:48px;display:flex;flex-direction:column;justify-content:center}.login-brand-panel h1{color:var(--camon-brand);font-size:2rem;margin:0 0 12px}.login-form-panel{display:flex;align-items:center;justify-content:center;padding:32px}.login-card{width:100%;max-width:400px;margin-bottom:0}.login-card h2{margin:0 0 8px}.admin-social-stack{display:flex;flex-direction:column;gap:var(--space-xl);margin-top:var(--space-2xl)}.admin-social-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:44px;padding:10px 16px;border:1px solid var(--camon-border);border-radius:10px;background:var(--camon-surface);color:var(--camon-text);font-size:.95rem;font-weight:500;cursor:pointer}.admin-social-btn:hover:not(:disabled){background:var(--camon-surface-2, #f8fafc)}.admin-social-btn:disabled{opacity:.65;cursor:not-allowed}.admin-social-btn__icon{display:inline-flex;align-items:center;justify-content:center}.admin-social-btn--light{background:var(--camon-surface);color:var(--camon-text);border-color:var(--camon-border)}.admin-social-btn--dark{background:#000;color:#fff;border-color:#000}.admin-social-btn--dark:hover:not(:disabled){background:#1a1a1a}.admin-social-btn--kakao{background:#fee500;color:#191919;border-color:#fee500}.admin-social-btn--kakao:hover:not(:disabled){background:#f5dc00}.login-field{display:block;margin-bottom:14px}.login-field span{display:block;font-size:.8rem;font-weight:600;color:var(--camon-muted);margin-bottom:6px}.login-field input{width:100%}.login-dev-hint{margin-top:20px;padding-top:16px;border-top:1px solid var(--camon-border);font-size:.8rem}.login-dev-hint summary{cursor:pointer;color:var(--camon-muted)}@media(max-width:900px){.admin-shell{flex-direction:column}.admin-sidebar{width:100%;max-height:none;position:static;padding:12px}.admin-nav-scroll{max-height:none}.admin-nav-group{width:100%;margin-bottom:14px}.admin-nav-group-label{font-size:.65rem;padding-bottom:6px;margin-bottom:6px}.admin-nav-section-label{display:none}.admin-nav-links{flex-direction:row;flex-wrap:wrap;gap:4px}.admin-nav-link{padding:6px 10px;font-size:.8rem;background:#ffffff0f}.login-page{grid-template-columns:1fr}.login-brand-panel{padding:32px 24px}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:24px}.modal-panel{background:var(--camon-surface);border-radius:var(--camon-radius);box-shadow:var(--camon-shadow);padding:24px;max-width:420px;width:100%}.account-edit-modal{max-width:min(720px,96vw);max-height:min(90vh,900px);overflow-y:auto}.account-edit-modal__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.account-edit-modal__head h2{margin:0 0 4px;font-size:1.15rem}.account-edit-modal__email{margin:0;font-size:.88rem}.account-edit-form__permissions{margin-top:16px;padding-top:16px;border-top:1px solid var(--camon-border)}.account-edit-form__permissions-title{margin:0 0 6px;font-size:.95rem}.account-edit-form__permissions-hint{margin:0 0 12px;font-size:.85rem}.account-edit-form__all-access{margin:12px 0 0;padding:10px 12px;background:#f8fafc;border-radius:var(--camon-radius-sm);font-size:.88rem}.account-edit-form__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--camon-border)}.franchise-switcher{display:inline-flex;align-items:center;gap:8px;margin-left:12px}.franchise-switcher select{padding:4px 8px;border-radius:var(--camon-radius-sm);border:1px solid var(--camon-border)}.franchise-accounts-panel__toolbar-actions{display:flex;flex-wrap:wrap;gap:8px}.finance-subnav{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px;padding:4px;background:var(--camon-bg);border:1px solid var(--camon-border);border-radius:var(--camon-radius)}.finance-subnav__link{padding:8px 16px;border-radius:var(--camon-radius-sm);font-size:.88rem;font-weight:600;color:var(--camon-muted);text-decoration:none;transition:background .12s,color .12s}.finance-subnav__link:hover{color:var(--camon-text);background:var(--camon-surface)}.finance-subnav__link.active{background:var(--camon-brand);color:#fff}.finance-callout{margin-bottom:16px}.finance-callout__title{margin:0 0 6px;font-size:.82rem;font-weight:700;color:var(--camon-brand-dark)}.finance-callout__body{margin:0;font-size:.86rem;line-height:1.55}.finance-callout__body ol{margin:0;padding-left:1.2rem}.finance-callout__body li+li{margin-top:4px}.finance-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:20px}.finance-panel{margin:0}.finance-panel .section-title{margin-top:0}.finance-steps{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:0;list-style:none}.finance-steps li{flex:1;min-width:140px;padding:10px 12px;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm);background:var(--camon-surface);font-size:.82rem;color:var(--camon-muted)}.finance-steps li strong{display:block;margin-bottom:2px;color:var(--camon-text);font-size:.88rem}.finance-amount{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.finance-amount--net{color:var(--camon-brand-dark)}.finance-manual-form{max-width:520px}.finance-manual-form details{margin-bottom:12px}.finance-manual-form summary{cursor:pointer;font-weight:600;color:var(--camon-brand-dark);margin-bottom:12px}.review-list__rating{white-space:nowrap;font-weight:600}.review-list__body{max-width:280px;line-height:1.4}.review-list__date{white-space:nowrap;font-size:.82rem}.review-list__actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.review-reply-modal{max-width:520px;width:100%;padding:0;overflow:hidden}.review-reply-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 12px;border-bottom:1px solid var(--camon-border)}.review-reply-modal__header h2{margin:0 0 4px;font-size:1.1rem}.review-reply-modal__sub{margin:0;font-size:.85rem}.review-reply-modal__original,.review-reply-modal__posted,.review-reply-modal__form{padding:16px 20px}.review-reply-modal__original{background:var(--camon-bg);border-bottom:1px solid var(--camon-border)}.review-reply-modal__original-label{margin:0 0 8px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--camon-muted)}.review-reply-modal__original-text,.review-reply-modal__posted-text{margin:0;line-height:1.55;word-break:break-word}.review-reply-modal__posted{background:var(--camon-brand-light);border-bottom:1px solid var(--camon-border)}.review-reply-modal__time{display:block;margin-top:8px;font-size:.78rem}.review-reply-modal__textarea{width:100%;min-height:120px;resize:vertical;margin:0;padding:12px;font:inherit;line-height:1.5;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm)}.review-reply-modal__textarea:focus{outline:2px solid var(--camon-brand);outline-offset:1px}.review-reply-modal__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:12px}.review-reply-modal__footer--single{justify-content:flex-end;padding:12px 20px 20px}.review-reply-modal__actions{display:flex;gap:8px}.review-reply-modal__counter{font-size:.78rem;font-variant-numeric:tabular-nums}.dashboard-section{margin-top:var(--space-2xl);margin-bottom:28px}.dashboard-section__title{margin:0 0 6px;font-size:1.05rem;font-weight:500}.dashboard-section__desc{margin:0 0 12px;font-size:.88rem}.dashboard-footnote{margin-top:8px;font-size:.88rem}.kpi-card--link{display:flex;flex-direction:column;text-decoration:none;color:inherit}.kpi-card--urgent{border-color:#fbbf24;background:#fffbeb}.kpi-link-hint{display:inline-flex;align-items:center;gap:2px;margin-top:auto;padding-top:10px;font-size:.75rem}.dashboard-action-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.dashboard-action-card{display:flex;flex-direction:column;gap:4px;padding:14px 16px;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}.dashboard-action-card--urgent{border-color:#fbbf24;background:#fffbeb}.dashboard-action-card__label{font-size:.82rem;font-weight:400;color:var(--camon-muted)}.dashboard-action-card__count{font-size:1.75rem;font-weight:500;line-height:1.2}.dashboard-action-card__hint{font-size:.8rem}.dashboard-action-card__cta{margin-top:auto;padding-top:6px;display:inline-flex;align-items:center;gap:2px;font-size:.78rem}.dashboard-trend{padding:16px 18px 12px}.dashboard-trend__legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:14px;font-size:.78rem;color:var(--camon-muted)}.dashboard-trend__swatch{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px}.dashboard-trend__swatch--bookings{background:#0d9488}.dashboard-trend__swatch--revenue{background:#6366f1}.dashboard-trend__swatch--captured{background:#f59e0b}.dashboard-trend__swatch--occ{background:#94a3b8}.dashboard-trend__chart{display:flex;align-items:flex-end;gap:8px;min-height:160px;padding-top:8px}.dashboard-trend__col{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px}.dashboard-trend__bars{display:flex;align-items:flex-end;justify-content:center;gap:3px;width:100%;height:140px}.dashboard-trend__bar{flex:1;max-width:12px;min-height:2px;border-radius:3px 3px 0 0;transition:height .2s}.dashboard-trend__bar--bookings{background:#0d9488}.dashboard-trend__bar--revenue{background:#6366f1}.dashboard-trend__bar--captured{background:#f59e0b}.dashboard-trend__bar--occ{background:#cbd5e1}.dashboard-trend__label{font-size:.72rem;color:var(--camon-muted);font-variant-numeric:tabular-nums}.bookings-page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.bookings-page-toolbar .bookings-view-tabs{margin-bottom:0}.bookings-view-tabs{display:inline-flex;gap:4px;margin-bottom:16px;padding:4px;background:var(--camon-surface-muted, #f1f5f9);border-radius:10px}.bookings-view-tab{border:none;background:transparent;padding:8px 16px;border-radius:8px;font-weight:600;cursor:pointer;color:var(--camon-muted)}.bookings-view-tab.active{background:#fff;color:var(--camon-text);box-shadow:0 1px 2px #0f172a14}.reservation-calendar{display:flex;flex-direction:column;gap:16px}.reservation-calendar__toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:0}.reservation-calendar__nav-title{display:flex;align-items:center;gap:4px}.reservation-calendar__datelabel{margin:0;font-size:1rem;font-weight:600;min-width:10rem;text-align:center}.reservation-calendar__chev{font-size:1.25rem;line-height:1;min-width:36px}.reservation-calendar__toolbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.reservation-calendar__view-tabs{margin-bottom:0}.reservation-calendar__court-row{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:0}.reservation-calendar__court-label{font-size:.78rem;font-weight:600;color:var(--camon-muted);padding-top:6px;flex-shrink:0}.reservation-calendar__court-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}.reservation-calendar__court-chip{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;padding:6px 12px;border-radius:999px;border:1px solid var(--camon-border);background:var(--camon-surface);cursor:pointer;transition:background .12s,border-color .12s}.reservation-calendar__court-chip:hover{background:var(--camon-bg)}.reservation-calendar__court-chip--off{opacity:.55;background:var(--camon-bg)}.reservation-calendar__court-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--camon-border-strong)}.reservation-calendar__court-off{font-size:.72rem;color:var(--camon-muted)}.reservation-calendar__month-card{padding:0;overflow:hidden;margin-bottom:0}.reservation-calendar__dow-row{display:grid;grid-template-columns:repeat(7,1fr);background:#f8fafc;border-bottom:1px solid var(--camon-border)}.reservation-calendar__dow{text-align:center;font-size:.75rem;font-weight:600;color:var(--camon-muted);padding:10px 0}.reservation-calendar__dow--sun{color:var(--camon-danger)}.reservation-calendar__dow--sat{color:var(--camon-brand-dark)}.reservation-calendar__month-grid{display:grid;grid-template-columns:repeat(7,1fr)}.reservation-calendar__month-cell{min-height:88px;padding:8px;border-right:1px solid var(--camon-border);border-bottom:1px solid var(--camon-border);background:var(--camon-surface);text-align:left;cursor:pointer;transition:background .12s}.reservation-calendar__month-cell:nth-child(7n){border-right:none}.reservation-calendar__month-cell:hover:not(:disabled){background:#f8fafc}.reservation-calendar__month-cell--outside{cursor:default;background:var(--camon-bg);opacity:.65}.reservation-calendar__month-cell--today{background:var(--camon-brand-light)}.reservation-calendar__month-cell--selected{box-shadow:inset 0 0 0 2px var(--camon-brand);background:#f0fdfa}.reservation-calendar__month-cell-num{display:flex;align-items:center;justify-content:space-between;gap:4px;font-size:.82rem;font-weight:600;margin-bottom:6px}.reservation-calendar__today-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;background:var(--camon-brand);color:#fff;border-radius:999px;font-size:.78rem}.reservation-calendar__month-count{font-size:.68rem;font-weight:600;color:var(--camon-brand-dark);background:var(--camon-brand-light);border-radius:999px;padding:1px 6px}.reservation-calendar__month-pills{display:flex;flex-direction:column;gap:3px}.reservation-calendar__pill{font-size:.68rem;line-height:1.35;border-left:3px solid;padding:2px 6px;border-radius:0 4px 4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reservation-calendar__pill-more{font-size:.68rem;color:var(--camon-muted);padding-left:4px}.reservation-calendar__selected-day{display:flex;flex-direction:column;gap:12px}.reservation-calendar__selected-day-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.reservation-calendar__selected-day-head .section-title{margin-bottom:4px}.reservation-calendar__selected-day-sub{margin:0}.reservation-calendar__selected-empty{margin-bottom:0;text-align:center;padding:28px 16px}.reservation-calendar__day-card{margin-bottom:0;overflow-x:auto}.reservation-calendar__day-grid{display:grid;position:relative;min-width:480px;background:#fff}.reservation-calendar__day-head{text-align:center;font-size:.82rem;padding:10px 6px;font-weight:600;border-left:1px solid var(--camon-border);border-bottom:1px solid var(--camon-border);background:#f8fafc}.reservation-calendar__day-head--corner{border-left:none}.reservation-calendar__hour-label{font-size:.72rem;color:var(--camon-muted);text-align:right;padding:4px 8px 0 0;font-variant-numeric:tabular-nums}.reservation-calendar__hour-label--half{padding:0}.reservation-calendar__hour-cell{margin:0;padding:0;border:none;border-left:1px solid var(--camon-border);border-top:1px solid var(--camon-border);border-radius:0;background:transparent}.reservation-calendar__hour-cell--half{border-top-color:#f1f5f9}.reservation-calendar__day-block{margin:1px 6px;border:none;border-left:3px solid;padding:3px 8px;overflow:hidden;cursor:pointer;text-align:left;border-radius:6px;z-index:2;-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;line-height:1.25;box-shadow:0 1px 2px #0f172a0f}.reservation-calendar__day-block-title{font-size:.76rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reservation-calendar__day-block-time{font-size:.68rem;opacity:.82;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reservation-calendar__day-block--blocked{background:repeating-linear-gradient(-45deg,#f8fafc,#f8fafc 6px,#eef2f6 6px,#eef2f6 12px);border-left-color:#64748b;color:#334155;z-index:1;box-shadow:none}.reservation-calendar__hour-cell--blockable{cursor:pointer}.reservation-calendar__hour-cell--blockable:hover{background:#0d948812}.reservation-calendar__hour-cell--blockable:focus-visible{outline:2px solid var(--camon-brand);outline-offset:-2px;z-index:1}.reservation-calendar__hour-cell--droppable{z-index:0}.reservation-calendar__hour-cell--drop-target{background:#0d948824;box-shadow:inset 0 0 0 2px var(--camon-brand);z-index:1}.reservation-calendar__day-block--draggable{cursor:grab}.reservation-calendar__day-block--draggable:active{cursor:grabbing}.reservation-calendar__day-block--dragging{opacity:.55}.reservation-calendar__context-menu{position:fixed;z-index:40;min-width:196px;padding:6px;border-radius:10px;border:1px solid var(--camon-border);background:#fff;box-shadow:var(--camon-shadow)}.reservation-calendar__context-menu-head{padding:6px 10px 8px;font-size:.72rem;color:var(--camon-muted);border-bottom:1px solid var(--camon-border);margin-bottom:4px}.reservation-calendar__context-menu-item{display:block;width:100%;padding:8px 10px;border:none;border-radius:6px;background:transparent;color:var(--camon-text);font:inherit;font-size:.84rem;text-align:left;text-decoration:none;cursor:pointer}.reservation-calendar__context-menu-item:hover{background:#f8fafc}.reservation-calendar__day-legend{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0 0;font-size:.85rem}.reservation-calendar__legend-booking{color:#0f766e}.reservation-calendar__legend-block{color:#64748b}.reservation-calendar__day-empty{margin:12px 0 0;text-align:center}.reservation-calendar__expanded{margin:12px 0 0}.reservation-calendar__expanded-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.reservation-calendar__expanded-badges{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.reservation-calendar__upcoming{margin-bottom:0}.reservation-calendar__upcoming .section-title{margin-bottom:12px}.reservation-calendar__upcoming-table{margin-bottom:0}.reservation-calendar__upcoming-row{cursor:pointer}.ai-assistant-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;border:none;border-radius:var(--radius-md);padding:9px 15px;background:var(--camon-count-bg);color:var(--camon-ai);font-family:inherit;font-weight:500;font-size:13px;line-height:1;cursor:pointer;white-space:nowrap;transition:background .12s}.ai-assistant-btn:hover{background:#e2e6ef}.ai-assistant-btn i,.ai-assistant-btn svg{font-size:17px;flex-shrink:0}.ai-assistant-btn--fixed{position:fixed;right:28px;bottom:28px;z-index:150}.ai-assistant-btn--absolute{position:absolute;right:18px;bottom:18px;z-index:5}@media(max-width:640px){.ai-assistant-btn{padding:0;width:44px;height:44px;border-radius:50%}.ai-assistant-btn__label{display:none}}.booking-ai-assistant__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;border:none;background:#0f172a4d;cursor:pointer;animation:instructor-drawer-fade .2s ease-out}.booking-ai-assistant__panel{position:fixed;top:0;right:0;bottom:0;z-index:201;width:min(360px,100vw);display:flex;flex-direction:column;background:var(--camon-surface);border-left:1px solid var(--camon-border);box-shadow:-8px 0 32px #0f172a1f;animation:instructor-drawer-slide .24s ease-out}.booking-ai-assistant__head{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--camon-border);flex-shrink:0}.booking-ai-assistant__head-icon{width:32px;height:32px;border-radius:50%;background:#eeedfe;color:#534ab7;display:flex;align-items:center;justify-content:center;flex-shrink:0}.booking-ai-assistant__head-text{flex:1;min-width:0}.booking-ai-assistant__title{margin:0;font-size:.88rem;font-weight:600}.booking-ai-assistant__status{font-size:.72rem;color:var(--camon-success)}.booking-ai-assistant__close{flex-shrink:0}.booking-ai-assistant__messages{flex:1;overflow:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--camon-bg)}.booking-ai-assistant__bubble{max-width:92%;font-size:.82rem;line-height:1.45;padding:9px 12px;border-radius:14px 14px 14px 4px}.booking-ai-assistant__bubble--bot{align-self:flex-start;background:var(--camon-surface);border:1px solid var(--camon-border)}.booking-ai-assistant__bubble--user{align-self:flex-end;background:#534ab7;color:#fff;border-radius:14px 14px 4px;border:none}.booking-ai-assistant__bubble--success{align-self:flex-start;background:var(--camon-success-bg);color:var(--camon-success);border:1px solid #bbf7d0}.booking-ai-assistant__slots-block{display:flex;flex-direction:column;gap:8px}.booking-ai-assistant__slot-grid{display:flex;flex-direction:column;gap:6px}.booking-ai-assistant__slot-btn{text-align:left;font-size:.82rem;padding:10px 12px;border-radius:var(--camon-radius-sm);border:1px solid var(--camon-brand-light);background:var(--camon-brand-light);color:var(--camon-brand-dark);cursor:pointer}.booking-ai-assistant__slot-btn:hover:not(:disabled){background:#b8ebe6}.booking-ai-assistant__slot-btn:disabled{opacity:.6;cursor:not-allowed}.booking-ai-assistant__confirm{margin:0;padding:12px}.booking-ai-assistant__confirm-title{font-size:.82rem;font-weight:600;margin-bottom:8px;color:var(--camon-brand-dark)}.booking-ai-assistant__confirm-table{width:100%;font-size:.82rem;margin-bottom:10px}.booking-ai-assistant__confirm-table th{text-align:left;color:var(--camon-muted);font-weight:500;padding:2px 8px 2px 0;white-space:nowrap}.booking-ai-assistant__confirm-table td{padding:2px 0;font-weight:600}.booking-ai-assistant__confirm-actions{display:flex;gap:8px}.booking-ai-assistant__typing{margin:0;font-size:.8rem}.booking-ai-assistant__suggest{align-self:flex-end;max-width:90%;text-align:left;font-size:.82rem;line-height:1.45;padding:8px 12px;border-radius:12px;border:1px solid var(--camon-brand-light);background:var(--camon-brand-light);color:var(--camon-brand-dark);cursor:pointer}.booking-ai-assistant__suggest:hover{background:#b8ebe6}.booking-ai-assistant__composer{display:flex;align-items:center;gap:8px;padding:12px 14px;border-top:1px solid var(--camon-border);flex-shrink:0;background:var(--camon-surface)}.booking-ai-assistant__composer input{flex:1;min-height:36px;margin:0}.booking-ai-assistant__send{width:36px;height:36px;border:none;border-radius:var(--camon-radius-sm);background:#534ab7;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center}.booking-ai-assistant__send:hover{background:#433aa0}.booking-ai-assistant__inline{display:flex;flex-direction:column;min-height:420px;max-height:min(72vh,640px);overflow:hidden;padding:0}.booking-ai-assistant__inline-head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border, #e2e8f0);flex-shrink:0}.booking-ai-assistant__messages--inline{flex:1;min-height:280px;max-height:none}.booking-ai-assistant__composer--inline{flex-shrink:0;border-top:1px solid var(--border, #e2e8f0)}.booking-ai-assistant__bubble--typing{opacity:.85;font-style:italic}.booking-ai-assistant__examples{display:flex;flex-direction:column;gap:8px;margin-top:4px}.booking-ai-assistant__batch{margin:4px 0;max-width:100%}.booking-ai-assistant__batch-meta{margin:0 0 8px;font-size:.8125rem}.booking-ai-assistant__batch-list{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:10px;max-height:280px;overflow-y:auto}.booking-ai-assistant__batch-row{display:flex;flex-direction:column;gap:6px;padding-bottom:8px;border-bottom:1px solid var(--border, #e2e8f0)}.booking-ai-assistant__batch-row:last-child{border-bottom:none;padding-bottom:0}.booking-ai-assistant__batch-row-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.875rem}.booking-ai-assistant__batch-select{width:100%;font-size:.875rem}.booking-actions{display:flex;flex-wrap:wrap;gap:6px}.revenue-calendar{margin-bottom:0}.revenue-calendar__dow-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:4px}.revenue-calendar__dow{text-align:center;font-size:.72rem;color:var(--camon-muted);padding:4px 0}.revenue-calendar__dow--sun{color:#dc2626}.revenue-calendar__dow--sat{color:#2563eb}.revenue-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.revenue-calendar__cell{min-height:72px;border:1px solid var(--camon-border);border-radius:8px;background:#fff;padding:6px 8px;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:4px;cursor:default;overflow:visible;text-align:left}.revenue-calendar__cell--outside{opacity:.35;background:#f8fafc}.revenue-calendar__cell--has-revenue{background:rgb(13 148 136 / calc(.08 + var(--revenue-intensity, 0) * .35));border-color:rgb(13 148 136 / calc(.2 + var(--revenue-intensity, 0) * .5))}.revenue-calendar__cell--selected{box-shadow:inset 0 0 0 2px var(--camon-brand)}.revenue-calendar__day{font-size:.78rem;font-weight:600}.revenue-calendar__amount{font-size:.72rem;line-height:1.2;color:#0f766e;font-weight:700;word-break:keep-all}.revenue-monthly-chart__chart{display:grid;grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:8px;align-items:end;min-height:180px;padding-top:8px}.revenue-monthly-chart__col{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:160px;justify-content:flex-end}.revenue-monthly-chart__bar{width:100%;max-width:48px;min-height:4px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#14b8a6,#0d9488)}.revenue-monthly-chart__label,.revenue-monthly-chart__value{font-size:.72rem;color:var(--camon-muted)}.revenue-monthly-chart__value{color:var(--camon-text);font-weight:600}.revenue-weekday-chart__row{display:grid;grid-template-columns:28px 1fr 56px;gap:8px;align-items:center;margin-bottom:8px}.revenue-weekday-chart__label{font-size:.78rem;font-weight:600}.revenue-weekday-chart__track{height:10px;background:#f1f5f9;border-radius:999px;overflow:hidden}.revenue-weekday-chart__bar{height:100%;background:linear-gradient(90deg,#5eead4,#0d9488);border-radius:999px}.revenue-weekday-chart__value{font-size:.72rem;text-align:right;color:var(--camon-muted)}.revenue-source-bars__row{display:grid;grid-template-columns:88px 1fr auto;gap:10px;align-items:center;margin-bottom:10px}.revenue-source-bars__label{font-size:.82rem;font-weight:500}.revenue-source-bars__track{height:12px;background:#f1f5f9;border-radius:999px;overflow:hidden}.revenue-source-bars__bar{height:100%;background:linear-gradient(90deg,#99f6e4,#0f766e);border-radius:999px}.revenue-source-bars__meta{font-size:.75rem;color:var(--camon-muted);white-space:nowrap}.partner-revenue-overview__charts{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin:16px 0}.partner-revenue-overview__panels{margin-bottom:16px}.partner-revenue-overview__links{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 4px}.partner-revenue-overview__day-detail{margin-top:16px}.partner-revenue-overview__day-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}@media(max-width:960px){.partner-revenue-overview__charts,.partner-revenue-overview__charts--half{grid-template-columns:1fr}}.partner-revenue-overview__charts--half{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.partner-revenue-overview__settlement{margin:16px 0}.revenue-hour-chart__hint{margin:-4px 0 12px;font-size:.82rem}.revenue-hour-chart__chart{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:6px;align-items:end;min-height:140px}.revenue-hour-chart__col{display:flex;flex-direction:column;align-items:center;gap:4px;justify-content:flex-end;min-height:120px}.revenue-hour-chart__bar{width:100%;min-height:4px;border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,#67e8f9,#0891b2)}.revenue-hour-chart__label{font-size:.68rem;color:var(--camon-muted)}.revenue-court-chart__row{display:grid;grid-template-columns:72px 1fr auto;gap:10px;align-items:center;margin-bottom:10px}.revenue-court-chart__label{font-size:.82rem;font-weight:600}.revenue-court-chart__track{height:12px;background:#f1f5f9;border-radius:999px;overflow:hidden}.revenue-court-chart__bar{height:100%;background:linear-gradient(90deg,#fdba74,#ea580c);border-radius:999px}.revenue-court-chart__meta{font-size:.75rem;color:var(--camon-muted);white-space:nowrap}.revenue-comparison-chart__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end;min-height:180px}.revenue-comparison-chart__col{display:flex;flex-direction:column;align-items:center;gap:6px;justify-content:flex-end;min-height:160px}.revenue-comparison-chart__amount{font-size:.82rem;font-weight:700}.revenue-comparison-chart__pct{font-size:.72rem;font-weight:600}.revenue-comparison-chart__pct--up{color:#0f766e}.revenue-comparison-chart__pct--down{color:#dc2626}.revenue-comparison-chart__bar{width:100%;max-width:56px;min-height:8px;border-radius:6px 6px 2px 2px}.revenue-comparison-chart__bar--current{background:linear-gradient(180deg,#14b8a6,#0d9488)}.revenue-comparison-chart__bar--prior{background:linear-gradient(180deg,#cbd5e1,#64748b)}.revenue-comparison-chart__bar--yoy{background:linear-gradient(180deg,#fde68a,#d97706)}.revenue-comparison-chart__label{font-size:.72rem;color:var(--camon-muted);text-align:center}.settlement-preview__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.settlement-preview__head .section-title{margin:0}.settlement-preview__hint{margin:0 0 12px;font-size:.82rem}.settlement-preview__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0}.settlement-preview__grid dt{font-size:.75rem;color:var(--camon-muted);margin-bottom:4px}.settlement-preview__grid dd{margin:0;font-size:1rem;font-weight:700}.settlement-preview__net dd{color:#0f766e}@media(max-width:760px){.settlement-preview__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.revenue-hour-chart__chart{grid-template-columns:repeat(8,minmax(0,1fr))}}.section-title{font-size:1.1rem;font-weight:700;margin:8px 0 12px}.pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.75rem;background:var(--camon-brand-light);color:var(--camon-brand-dark)}.schedule-grid{display:grid;grid-template-columns:80px repeat(4,1fr);gap:1px;background:#e2e8f0;border-radius:12px;overflow:hidden}.schedule-grid>div{background:#fff;padding:8px;min-height:44px;font-size:.8rem}.slot-block{background:#ccfbf1;border-radius:6px;padding:4px 6px;margin:2px 0}.slot-block.maintenance{background:#fee2e2}.franchise-page{max-width:720px}.franchise-page:has(.franchise-edit-panel){max-width:880px}.franchise-page-head{margin-bottom:20px}.franchise-page-title{margin:0;font-size:1.35rem}.franchise-page-meta{margin:6px 0 0}.franchise-edit-panel{background:var(--camon-surface);border:1px solid var(--camon-border);border-radius:var(--camon-radius);box-shadow:var(--camon-shadow);overflow:hidden}.franchise-form{padding-bottom:8px}.franchise-edit-panel .franchise-form--tabs{padding:24px 20px 12px}.form-step-nav{margin-bottom:20px}.form-step-nav ol{display:flex;list-style:none;margin:0;padding:0;gap:0;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0f172a0f;overflow:hidden}.form-step-nav li{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 8px;font-size:.85rem;color:#64748b;border-bottom:3px solid transparent}.form-step-nav li.active{color:var(--camon-brand-dark);font-weight:600;border-bottom-color:var(--camon-brand);background:var(--camon-brand-light)}.form-step-nav li.done{color:#334155}.form-step-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:.75rem;font-weight:700;background:#e2e8f0;color:#475569}.form-step-nav li.active .form-step-num{background:var(--camon-brand);color:#fff}.form-step-nav li.done .form-step-num{background:#99f6e4;color:#0f766e}.form-tab-nav{margin-bottom:16px}.form-tab-nav--attached{margin-bottom:0}.form-tab-nav-inner{display:flex;flex-wrap:wrap;gap:6px;padding:6px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0f172a0f}.form-tab-nav--attached .form-tab-nav-inner{gap:0;padding:0 8px;background:#f8fafc;border-radius:0;box-shadow:none;border-bottom:1px solid var(--camon-border)}.form-tab-nav__tab,.form-tab-nav-inner button{flex:1 1 auto;min-width:88px;padding:10px 14px;border:none;border-radius:8px;background:transparent;color:#64748b;font-size:.85rem;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s,color .15s,border-color .15s}.form-tab-nav--attached .form-tab-nav__tab{flex:1 1 0;min-width:72px;padding:14px 10px;border-radius:0;border-bottom:3px solid transparent;margin-bottom:-1px}.form-tab-nav-inner button:hover,.form-tab-nav__tab:hover{background:#f1f5f9;color:#334155}.form-tab-nav--attached .form-tab-nav__tab:hover:not(.active){background:#fff9}.form-tab-nav-inner button.active,.form-tab-nav__tab.active{background:var(--camon-brand-light);color:var(--camon-brand-dark);font-weight:600}.form-tab-nav--attached .form-tab-nav__tab.active{background:var(--camon-surface);color:var(--camon-brand-dark);border-bottom-color:var(--camon-brand)}.franchise-form--tabs .form-section{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-tab-save-hint{font-size:.8rem}.form-field--checkbox{display:inline-flex;align-items:center;gap:10px;margin-top:4px;margin-bottom:0;padding:12px 16px;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm);background:#f8fafc;cursor:pointer;width:auto;max-width:100%}.form-field--checkbox input[type=checkbox]{width:18px;height:18px;min-height:18px;margin:0;flex-shrink:0;accent-color:var(--camon-brand);cursor:pointer}.form-field--checkbox-label{font-size:.9rem;font-weight:500;color:var(--camon-text);-webkit-user-select:none;user-select:none}.directory-basic-panel{margin-bottom:14px;padding:14px 14px 2px;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm);background:#f8fafc}.directory-basic-panel__hint{margin:0 0 10px;font-size:.8rem}.form-section{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid #e2e8f0}.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section-title{margin:0 0 4px;font-size:1rem;font-weight:600}.form-section-desc{margin:0 0 16px;font-size:.85rem}.form-field{display:block;margin-bottom:14px}.form-field:last-child{margin-bottom:0}.form-field input:not([type=checkbox]):not([type=radio]),.form-field select,.form-field textarea{display:block;width:100%;margin-top:4px}.form-label{display:block;font-size:.8rem;font-weight:600;color:#475569}.form-row{display:flex;gap:12px}.form-row--2>.form-field,.form-row--3>.form-field{flex:1;min-width:0}.form-row--3{display:flex;gap:12px;flex-wrap:wrap}.form-check{display:flex;align-items:center;gap:8px;font-size:.9rem;margin-bottom:10px;cursor:pointer}.chip-grid{display:flex;flex-wrap:wrap;gap:8px}.chip-grid--compact .chip{padding:5px 10px;font-size:.78rem}.chip{padding:6px 12px;border-radius:999px;border:1px solid #cbd5e1;background:#fff;font-size:.8rem;cursor:pointer;color:#334155}.chip:hover{border-color:#0d9488}.chip.selected,.chip--on{background:var(--camon-brand-light);border-color:var(--camon-brand);color:var(--camon-brand-dark)}.btn-link{border:none;background:none;color:#0d9488;font-size:.85rem;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.btn-link:hover{color:#0f766e}.btn-secondary,.btn-primary{padding:10px 20px;border-radius:8px;font-size:.9rem;font-weight:600;border:none}.btn-secondary{border:1px solid #cbd5e1;background:#fff;color:#334155}.btn-secondary:hover{background:#f8fafc}.btn-primary{background:var(--camon-brand);color:#fff}.btn-primary:hover{background:var(--camon-brand-dark)}.form-wizard-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding-top:20px;border-top:1px solid #e2e8f0}.form-wizard-footer--single{justify-content:space-between;flex-wrap:wrap;margin-top:24px;padding-top:20px}.franchise-edit-panel .form-wizard-footer--single{margin-top:8px;padding-top:20px;margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px;background:#f8fafc;border-top:1px solid var(--camon-border)}.media-url-toolbar{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.media-url-toolbar__field{margin-bottom:0;min-width:0}.media-url-toolbar__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.media-url-toolbar__upload{margin:0;cursor:pointer}@media(max-width:720px){.media-url-toolbar{grid-template-columns:1fr}.media-url-toolbar__actions{width:100%}.media-url-toolbar__actions .btn{flex:1}}.form-banner{margin:0 0 12px}.franchise-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-top:12px}.franchise-gallery-item{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#f8fafc}.franchise-gallery-item img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.franchise-gallery-actions{display:flex;gap:8px;align-items:center;padding:6px 8px;font-size:.8rem}.facility-detail-card{margin-bottom:16px}.facility-detail-card textarea{width:100%;resize:vertical}.facility-picker-actions{display:flex;flex-wrap:wrap;gap:12px 16px;margin-top:10px}.facility-selected-count{margin:8px 0 0;font-size:.8rem}.court-count-row{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:16px}.court-count-hint{margin:0 0 6px;font-size:.85rem}.stepper{display:flex;align-items:stretch;margin-top:4px;max-width:140px}.stepper button{width:36px;border:1px solid #cbd5e1;background:#f8fafc;font-size:1.1rem;line-height:1}.stepper button:first-child{border-radius:6px 0 0 6px}.stepper button:last-child{border-radius:0 6px 6px 0}.stepper input{width:52px;text-align:center;border-radius:0;border-left:none;border-right:none;margin:0}.court-names-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.form-details-toggle{margin-top:4px}.refund-policy-preview{margin:8px 0 0;padding:12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;font-size:.8rem;line-height:1.5;white-space:pre-wrap;font-family:inherit}.court-summary-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.court-summary-list li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.court-summary-name{font-weight:600}.court-summary-meta{font-size:.78rem;text-align:right}.court-pricing-block{margin-bottom:20px}.court-pricing-block-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;margin-bottom:12px}.court-pricing-block-title{margin:0;font-size:.9rem;font-weight:600;color:var(--camon-text)}.court-pricing-block-hint{font-size:.78rem}.court-pricing-empty{margin:0 0 12px;font-size:.88rem}.court-edit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.court-edit-row{display:grid;gap:10px 12px;align-items:end;padding:14px;background:#f8fafc;border:1px solid var(--camon-border);border-radius:var(--camon-radius-sm)}@media(min-width:720px){.court-edit-row{grid-template-columns:1.4fr 1fr 1fr auto}}.court-edit-row .form-field{margin-bottom:0}.court-edit-row__actions{display:flex;align-items:flex-end;justify-content:flex-end;padding-bottom:2px}.court-edit-row__delete:disabled{opacity:.45}.court-edit-add{margin-top:12px}.court-pricing-panel{display:grid;gap:20px;padding:16px;background:linear-gradient(180deg,#f8fafc,#fff);border:1px solid var(--camon-border);border-radius:var(--camon-radius)}@media(min-width:640px){.court-pricing-panel{grid-template-columns:1fr 1fr;align-items:start}.court-pricing-rate{grid-column:1 / -1}}.court-pricing-rate-field{margin-bottom:0}.court-pricing-rate-input-wrap{display:flex;align-items:center;gap:6px;margin-top:6px;padding:4px 12px;background:#fff;border:1px solid var(--camon-border-strong);border-radius:var(--camon-radius-sm)}.court-pricing-rate-input-wrap:focus-within{border-color:var(--camon-brand);box-shadow:0 0 0 3px #00b4a826}.court-pricing-won-prefix{font-size:1.1rem;font-weight:600;color:var(--camon-brand-dark)}.court-pricing-rate-input{flex:1;min-width:0;margin-top:0!important;border:none!important;background:transparent!important;font-size:1.25rem!important;font-weight:600;padding:8px 0!important;box-shadow:none!important}.court-pricing-rate-suffix{font-size:.85rem;white-space:nowrap}.court-pricing-rate-preview{margin:10px 0 0;font-size:.85rem}.court-pricing-settings{display:flex;flex-direction:column;gap:16px}.court-pricing-env-fieldset{margin:0;padding:0;border:none}.court-pricing-env-fieldset .form-label{margin-bottom:8px}.court-pricing-env-chips{display:flex;flex-wrap:wrap;gap:8px}.court-pricing-env-chip{min-width:72px;text-align:center}.court-pricing-footer{margin:16px 0 0;font-size:.85rem;line-height:1.5}.court-pricing-link{font-weight:600;color:var(--camon-brand-dark)}.address-map-picker{margin-bottom:8px}.address-map-picker-search{display:block;position:relative;margin-bottom:8px}.address-map-picker-search input[type=search],.place-autocomplete-host{width:100%;margin-top:4px}.place-autocomplete-host gmp-place-autocomplete{width:100%;color-scheme:light}.address-map-picker-hint{display:block;font-size:.8rem;margin-top:4px}.address-map-picker-results{position:absolute;z-index:1000;left:0;right:0;top:100%;margin:4px 0 0;padding:4px 0;list-style:none;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 12px 32px #0f172a1f;max-height:240px;overflow-y:auto}.address-map-picker-results li{margin:0}.address-map-picker-results button{display:block;width:100%;text-align:left;padding:10px 14px;border:none;background:transparent;cursor:pointer;font:inherit;font-size:.875rem;line-height:1.35;color:#0f172a}.address-map-picker-results button:hover{background:#f1f5f9}.address-map-picker-map-hint{margin:0 0 8px;font-size:.8rem}.address-map-picker-map{border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;min-height:280px;background:#e2e8f0}.address-map-picker-map-loading{display:flex;align-items:center;justify-content:center;min-height:280px;font-size:.875rem}.address-map-picker-map-loading.err{color:#dc2626;text-align:center;padding:16px}.address-map-picker-map .google-map-container,.address-map-picker-map .kakao-map-container,.address-map-picker-map .naver-map-container,.address-picker-map{height:280px!important;width:100%!important;z-index:0}.map-place-search--kakao,.map-place-search--naver{display:flex;gap:8px;align-items:stretch;margin-top:4px}.map-place-search--kakao .map-place-search__input,.map-place-search--naver .map-place-search__input{flex:1;min-width:0;border:1px solid #e2e8f0;border-radius:8px;padding:8px 10px;font-size:14px;font-family:inherit}.map-place-search--kakao .map-place-search__go,.map-place-search--naver .map-place-search__go{flex-shrink:0}.venue-map.kakao-map-container,.venue-map.naver-map-container,.venue-map.google-map-container{min-height:480px;width:100%}.franchise-accounts-panel__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.franchise-accounts-form{padding:16px;margin-bottom:20px;display:grid;gap:12px}.franchise-accounts-form label{display:grid;gap:6px;font-size:.875rem}.franchise-accounts-perms{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.franchise-accounts-perm{display:flex;align-items:center;gap:6px;font-size:.85rem}.franchise-accounts-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.settings-page{display:grid;gap:20px;max-width:960px}.settings-page__hero{padding:20px 24px}.settings-page__title{margin:0 0 8px;font-size:1.25rem}.settings-page__desc{margin:0 0 8px;line-height:1.55}.settings-page__links a,.settings-page__meta code{color:var(--camon-brand-dark, #007a73)}.settings-page__tips{margin:12px 0 0;padding-left:1.2rem;font-size:.875rem;line-height:1.6}.settings-page__tips li+li{margin-top:4px}.accounts-panel.card-surface{padding:0;overflow:visible}.accounts-panel__intro{margin:0;padding:16px 20px 0;line-height:1.55}.accounts-panel__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--camon-border, #e2e8f0);background:#f8fafc}.accounts-panel__tabs{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.accounts-panel__tools{display:flex;align-items:center;gap:8px}.accounts-panel__alerts{display:grid;gap:10px;padding:12px 20px 0}.accounts-panel__body{padding:20px}.accounts-panel__body .copyable-secret{margin-bottom:16px}.accounts-tab{padding:8px 14px;border:1px solid var(--camon-border, #e2e8f0);border-radius:999px;background:var(--camon-surface, #fff);font-size:.875rem;cursor:pointer;color:var(--camon-muted, #64748b)}.accounts-tab:hover{border-color:var(--camon-brand, #00b4a8);color:var(--camon-text, #0f172a)}.accounts-tab.active{background:var(--camon-brand-light, #ccf0ed);border-color:var(--camon-brand, #00b4a8);color:var(--camon-brand-dark, #007a73);font-weight:600}.accounts-tab__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;margin-left:6px;padding:0 6px;border-radius:999px;font-size:.75rem;font-weight:700;background:#00b4a826}.accounts-tab:not(.active) .accounts-tab__count{background:#e2e8f0;color:var(--camon-muted, #64748b)}.accounts-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.accounts-list-head__title{margin:0;font-size:1rem;font-weight:600}.accounts-empty-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.accounts-table__actions-col{width:88px;text-align:right;overflow:visible;position:relative}.accounts-table__readonly{font-size:.8125rem}.accounts-row__you{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:4px;font-size:.7rem;background:#e2e8f0}.accounts-row-menu__trigger--disabled{opacity:.55;pointer-events:none}.accounts-row-menu__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1090;border:none;padding:0;margin:0;background:transparent;cursor:default}.accounts-row-menu__panel--floating{position:fixed;z-index:1100;min-width:160px;padding:6px;border:1px solid var(--camon-border, #e2e8f0);border-radius:var(--camon-radius-sm, 8px);background:var(--camon-surface, #fff);box-shadow:0 12px 32px #0f172a2e}.accounts-row-menu__item{display:block;width:100%;padding:8px 10px;border:none;border-radius:6px;background:transparent;font:inherit;font-size:.8125rem;text-align:left;cursor:pointer;color:var(--camon-text, #0f172a)}.accounts-row-menu__item:hover{background:#f1f5f9}.accounts-row-menu__item--danger{color:var(--camon-danger, #b91c1c)}.accounts-panel__section{padding:20px}.accounts-form__title{margin:0 0 12px;font-size:1.1rem}.accounts-form__hint{margin:0 0 16px;font-size:.875rem}.accounts-form{display:grid;gap:16px}.accounts-form--stacked{gap:20px}.accounts-form__permissions{min-width:0}.accounts-form__main{display:grid;gap:14px;min-width:0}.accounts-form__aside{min-width:0}.accounts-form__field{display:grid;gap:6px}.accounts-form__field span:first-child{font-size:.8125rem;font-weight:600;color:var(--camon-muted, #64748b)}.accounts-form__field input,.accounts-form__field select{width:100%}.accounts-form__field-hint{font-size:.75rem}.accounts-form__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:640px){.accounts-form__row{grid-template-columns:1fr}}.accounts-table__role-label{font-size:.875rem;white-space:nowrap}.accounts-role-cell--hint{cursor:help;border-bottom:1px dotted var(--camon-muted, #94a3b8)}.accounts-role-perms-popover{position:fixed;z-index:1100;display:flex;flex-direction:column;width:min(300px,calc(100vw - 16px));padding:12px 14px;border:1px solid var(--camon-border, #e2e8f0);border-radius:var(--camon-radius-sm, 8px);background:var(--camon-surface, #fff);box-shadow:0 12px 32px #0f172a2e;pointer-events:auto;overflow:hidden}.accounts-role-perms-popover__title{flex-shrink:0;font-size:.8125rem;font-weight:600;margin:0 0 10px}.accounts-role-perms-popover__body{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;overflow-y:auto}.accounts-role-perms-popover__group-label{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--camon-muted, #64748b);margin-bottom:4px}.accounts-role-perms-popover__list{margin:0;padding-left:1.1rem;font-size:.8125rem;line-height:1.5}.accounts-role-perms-popover__meta{flex-shrink:0;display:block;margin-top:10px;font-size:.75rem}.role-permission-picker{border:1px solid var(--camon-border, #e2e8f0);border-radius:var(--camon-radius-sm, 8px);padding:18px 20px;margin:0;background:#f8fafc}.role-permission-picker__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.role-permission-picker legend{font-weight:700;font-size:1rem;padding:0}.role-permission-picker__hint{margin:0 0 16px;font-size:.875rem;line-height:1.5}.role-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-bottom:18px}.role-template-card{display:grid;gap:4px;padding:12px 14px;border:2px solid var(--camon-border, #e2e8f0);border-radius:10px;background:var(--camon-surface, #fff);cursor:pointer;transition:border-color .12s,box-shadow .12s}.role-template-card input{position:absolute;opacity:0;pointer-events:none}.role-template-card:hover{border-color:var(--camon-brand, #00b4a8)}.role-template-card--active{border-color:var(--camon-brand, #00b4a8);background:var(--camon-brand-light, #ccf0ed);box-shadow:0 0 0 1px var(--camon-brand, #00b4a8)}.role-template-card__title{font-weight:700;font-size:.9rem}.role-template-card__desc{font-size:.78rem;color:var(--camon-muted, #64748b);line-height:1.4}.role-template-card__meta{font-size:.72rem}.role-permission-picker__base{margin-bottom:14px}.role-permission-picker__base-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--camon-muted, #64748b);margin-bottom:8px}.role-permission-picker__chips{display:flex;flex-wrap:wrap;gap:6px}.role-perm-chip{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.75rem;background:#e2e8f0;color:#334155}.role-perm-chip--base{background:#e0f2fe;color:#0369a1}.role-perm-chip--extra{background:#fef3c7;color:#b45309}.role-permission-picker__extras-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;border:1px solid var(--camon-border, #e2e8f0);border-radius:8px;background:var(--camon-surface, #fff);font:inherit;font-size:.875rem;font-weight:600;cursor:pointer;color:var(--camon-text, #0f172a)}.role-permission-picker__extras-toggle:hover{border-color:var(--camon-brand, #00b4a8)}.role-permission-picker__extras-body{margin-top:12px;padding:14px;border:1px solid var(--camon-border, #e2e8f0);border-radius:8px;background:var(--camon-surface, #fff)}.permission-group-block{margin-bottom:14px}.permission-group-block:last-child{margin-bottom:0}.permission-group-block__label{font-size:.75rem;font-weight:600;color:var(--camon-muted, #64748b);margin-bottom:8px}.permission-group-block__checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px 12px}.accounts-form label span{font-size:.8125rem;font-weight:500;color:var(--camon-muted, #64748b)}.accounts-form__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px;padding-top:16px;border-top:1px solid var(--camon-border, #e2e8f0)}.accounts-table-wrap{overflow-x:auto;overflow-y:visible}.accounts-table.accounts-table tbody td{overflow:visible}.accounts-table__email{font-size:.875rem}.accounts-table__meta{font-size:.8125rem;white-space:nowrap}.accounts-row--readonly{opacity:.85}.accounts-row__you{font-size:.8125rem}.status-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:600}.status-badge--active{background:var(--camon-success-bg, #f0fdf4);color:var(--camon-success, #15803d)}.status-badge--disabled{background:#f1f5f9;color:#64748b}.status-badge--invite{background:#fff7ed;color:#c2410c}.status-badge--invite-mail-failed{background:var(--camon-warn-bg);color:var(--camon-warn);border:1px solid #fdba74}.accounts-invite-mail-warn{display:flex;flex-direction:column;gap:8px;min-width:220px}.accounts-invite-mail-warn__label{margin:0;font-size:.82rem;font-weight:700;color:var(--camon-warn)}.accounts-invite-mail-warn .copyable-secret{margin:0}.status-badge--role-super{background:#ede9fe;color:#5b21b6}.status-badge--role-admin{background:#dbeafe;color:#1d4ed8}.status-badge--role-staff{background:#e0f2fe;color:#0369a1}.btn-danger-text{color:var(--camon-danger, #b91c1c)!important}.copyable-secret{padding:14px 16px;margin-bottom:16px;border:1px solid var(--camon-brand-light, #ccf0ed);background:#f0fdfa}.copyable-secret__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.copyable-secret__value{display:block;padding:10px 12px;background:#fff;border-radius:8px;font-size:.8125rem;word-break:break-all;border:1px solid var(--camon-border, #e2e8f0)}.copyable-secret__hint{margin:8px 0 0;font-size:.8125rem}.permission-fieldset{border:1px solid var(--camon-border, #e2e8f0);border-radius:var(--camon-radius-sm, 8px);padding:14px;margin:0;background:#f8fafc}.permission-fieldset__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.permission-fieldset legend{font-weight:600;font-size:.9rem;padding:0}.permission-fieldset__count{font-size:.75rem}.permission-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.permission-preset{padding:6px 12px;border:1px solid var(--camon-border, #e2e8f0);border-radius:999px;background:var(--camon-surface, #fff);font-size:.8125rem;cursor:pointer;color:var(--camon-text, #0f172a)}.permission-preset:hover{border-color:var(--camon-brand, #00b4a8)}.permission-preset--active{background:var(--camon-brand-light, #ccf0ed);border-color:var(--camon-brand, #00b4a8);color:var(--camon-brand-dark, #007a73);font-weight:600}.permission-preset--muted{color:var(--camon-muted, #64748b)}.permission-groups{display:grid;gap:8px}.permission-group-details{border:1px solid var(--camon-border, #e2e8f0);border-radius:8px;background:var(--camon-surface, #fff);overflow:hidden}.permission-group-details__summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;cursor:pointer;font-size:.8125rem;font-weight:600;list-style:none}.permission-group-details__summary::-webkit-details-marker{display:none}.permission-group-details__meta{font-size:.75rem;font-weight:500}.permission-group-details__body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;padding:0 12px 12px;border-top:1px solid var(--camon-border, #e2e8f0)}@media(max-width:520px){.permission-group-details__body{grid-template-columns:1fr}}.permission-check{display:flex;align-items:center;gap:8px;font-size:.8125rem;cursor:pointer}.permission-check input{min-height:auto;margin:0}.permission-fieldset--compact .permission-group-details__body{grid-template-columns:1fr}.accounts-audit{margin:0;border-top:1px solid var(--camon-border, #e2e8f0)}.accounts-audit summary{padding:14px 20px;cursor:pointer;font-weight:600;font-size:.875rem;color:var(--camon-muted, #64748b);list-style:none}.accounts-audit summary::-webkit-details-marker{display:none}.accounts-audit[open] summary{border-bottom:1px solid var(--camon-border, #e2e8f0);color:var(--camon-text, #0f172a)}.accounts-audit .audit-log-panel--embedded{padding:16px 20px 20px}.franchise-switcher{display:inline-flex;align-items:center;gap:8px;margin-left:12px;padding-left:12px;border-left:1px solid var(--camon-border, #e2e8f0)}.franchise-switcher__select{padding:4px 10px;border-radius:8px;border:1px solid var(--camon-border, #e2e8f0);font-size:.875rem;max-width:220px}.franchise-switcher__busy{font-size:.75rem}.change-password-modal{max-width:420px}.change-password-modal>h2,.change-password-modal>.muted:not(.change-password-modal__rules),.change-password-modal__icon{text-align:center}.change-password-modal__icon{font-size:2rem;margin-bottom:8px}.change-password-modal__rules{margin:0 0 16px;padding-left:20px;font-size:.875rem}.change-password-form{display:grid;gap:14px;margin-top:4px;text-align:left}.change-password-form__field{display:grid;gap:6px}.change-password-form__label{font-size:.8125rem;font-weight:600;color:var(--camon-muted, #64748b)}.change-password-form__field input{width:100%}.change-password-form__submit{width:100%;margin-top:4px}.invite-page .invite-card__footer{margin-top:20px;text-align:center;font-size:.875rem}.invite-form{display:grid;gap:0}.audit-filters{padding:1rem 1.25rem;margin-bottom:1rem}.audit-filters__row{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:1rem 1.25rem;align-items:end;width:100%}.audit-filters__refresh{justify-self:end;grid-column:-1}@media(max-width:720px){.audit-filters__refresh{grid-column:1 / -1;width:100%}}.audit-filters__field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.audit-filters__field span{font-size:.8125rem;color:var(--muted, #64748b)}.audit-filters__field select,.audit-filters__field input{width:100%}.audit-filters__scope{margin:0;font-size:.875rem}.audit-filters__field--wide{grid-column:span 2}@media(max-width:900px){.audit-filters__field--wide{grid-column:1 / -1}}.audit-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.audit-table--platform{width:100%;min-width:72rem;table-layout:fixed}.audit-col--time{width:10.5rem}.audit-col--outcome{width:4.25rem}.audit-col--source{width:5.5rem}.audit-col--operation{width:4rem}.audit-col--action,.audit-col--actor{width:11rem}.audit-col--ip{width:7rem}.audit-col--resource{width:10rem}.audit-col--api{width:12rem}.audit-col--detail{width:9rem}.audit-table--platform th,.audit-table--platform td{vertical-align:middle;overflow:hidden}.audit-table__cell--compact{white-space:nowrap;text-align:center}.audit-table--platform thead th:nth-child(n+2):nth-child(-n+4){text-align:center}.audit-table__time{white-space:nowrap;font-size:.8125rem;font-variant-numeric:tabular-nums}.audit-table__action{display:block;font-size:.8125rem;font-weight:500;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-table__detail,.audit-table__target,.audit-table__api,.audit-table__actor{font-size:.8125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-table__target{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.audit-table__ip{font-size:.75rem;white-space:nowrap;font-variant-numeric:tabular-nums}.audit-chip{display:inline-block;max-width:100%;font-size:.6875rem;font-weight:600;line-height:1.25;padding:.2rem .5rem;border-radius:999px;white-space:nowrap;vertical-align:middle}.audit-chip--outcome.audit-chip--success{color:#166534;background:#dcfce7}.audit-chip--outcome.audit-chip--failure{color:#991b1b;background:#fee2e2}.audit-chip--source{color:#1e40af;background:#dbeafe}.audit-chip--operation{color:#5b21b6;background:#ede9fe}.audit-outcome{font-size:.75rem;font-weight:600;padding:.15rem .45rem;border-radius:4px}.audit-outcome--success{color:#166534;background:#dcfce7}.audit-outcome--failure{color:#991b1b;background:#fee2e2}.audit-row--failure{background:#fee2e259}.audit-row--failure:hover{background:#fee2e280}.open-matches-page__alerts{margin-bottom:16px}.open-match-form{margin-bottom:20px;padding:20px}.open-match-form__title{margin:0 0 16px;font-size:1.05rem}.open-match-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.open-match-form__field{display:flex;flex-direction:column;gap:6px;font-size:.8125rem}.open-match-form__field--wide{grid-column:1 / -1}.open-match-form__field input,.open-match-form__field select{width:100%}.open-match-form__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.open-matches-table__link{color:inherit;text-decoration:none}.open-matches-table__link:hover strong{color:var(--camon-brand, #0d9488);text-decoration:underline}.open-matches-table__row{cursor:pointer}.open-matches-table__when{white-space:nowrap;font-size:.8125rem}.open-matches-table__host,.open-matches-table__wait{display:block;font-size:.75rem;margin-top:2px}.open-match-phase{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:600}.open-match-phase--upcoming{background:#dbeafe;color:#1d4ed8}.open-match-phase--live{background:#dcfce7;color:#15803d}.open-match-phase--past{background:#f1f5f9;color:#64748b}.open-match-detail-page__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.open-match-detail-page__alerts{margin-bottom:16px}.open-match-summary{padding:20px;margin-bottom:20px}.open-match-summary__top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.open-match-summary__title{margin:8px 0 4px;font-size:1.35rem}.open-match-summary__join{text-align:right;font-size:1.25rem}.open-match-summary__join .muted{display:block;font-size:.75rem}.open-match-summary__meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px 20px;margin:0}.open-match-summary__meta dt{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--camon-muted, #64748b);margin-bottom:2px}.open-match-summary__meta dd{margin:0;font-size:.875rem}.open-match-detail-page__rosters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.open-match-roster{padding:16px 18px}.open-match-roster__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.open-match-roster__head h3{margin:0;font-size:1rem}.open-match-roster__empty{margin:0;font-size:.875rem}.open-match-roster__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.open-match-roster__item{display:flex;align-items:center;gap:10px}.open-match-roster__avatar{width:32px;height:32px;border-radius:50%;background:var(--camon-brand-light, #ccfbf1);color:var(--camon-brand-dark, #0f766e);display:inline-flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:700;flex-shrink:0}.open-match-roster__name{flex:1;font-size:.875rem}.open-match-roster__level{font-size:.75rem}@media(max-width:900px){.open-match-form__grid,.open-match-detail-page__rosters{grid-template-columns:1fr}.open-match-summary__top{flex-direction:column}.open-match-summary__join{text-align:left}}.partner-shell{--camon-accent: #1d2bf1;--camon-accent-muted: #dde0fe}.partner-sidebar{border-right-color:#ffffff14}.partner-sidebar .admin-brand-title{color:#fff}.partner-login-brand{background:linear-gradient(145deg,#0f766e,#134e4a)}.partner-login-page .btn-primary{background:var(--camon-accent);border-color:var(--camon-accent)}.partner-login-page .btn-primary:hover{background:#0f766e}.partner-hub-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.partner-hub-tab{display:inline-flex;align-items:center;padding:8px 16px;border-radius:999px;border:1px solid var(--camon-border);background:#fff;color:var(--camon-text);text-decoration:none;font-size:.9rem;font-weight:500;transition:background .15s,border-color .15s}.partner-hub-tab:hover,.partner-hub-tab:focus,.partner-hub-tab:active,.partner-hub-tab.active:hover{text-decoration:none}.partner-hub-tab:hover{border-color:var(--camon-brand)}.partner-hub-tab.active{background:var(--camon-brand-tint);border-color:var(--camon-brand);color:var(--camon-brand)}.partner-hub__hint{margin:0 0 12px;font-size:.875rem}.partner-hub__panel{min-width:0}.partner-hub-setup-card{margin-top:16px;margin-bottom:0;padding:0;overflow:hidden}.partner-hub-setup-card--collapsible:not(.is-expanded){padding:0}.partner-hub-setup-card__toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin:0;padding:12px 16px;border:0;background:transparent;color:var(--camon-text);text-align:left;cursor:pointer;font:inherit}.partner-hub-setup-card__toggle:hover{background:#f8fafc}.partner-hub-setup-card__toggle-label{font-size:.95rem;font-weight:600;color:#64748b}.partner-hub-setup-card.is-expanded .partner-hub-setup-card__toggle-label{color:var(--camon-text)}.partner-hub-setup-card__chevron{flex-shrink:0;font-size:.75rem;color:#94a3b8}.partner-hub-setup-card__body{padding:0 16px 16px}.partner-hub-setup-card__body .section-title{margin-top:0}.partner-court-onboarding{margin:0 0 12px;padding-left:1.25rem;line-height:1.55}.partner-court-onboarding li+li{margin-top:8px}.partner-lesson-wizard{margin-bottom:16px;padding:16px}.partner-today__toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:var(--space-xl)}.partner-today__toolbar .customer-search{flex:0 1 360px}.partner-today__section{margin-top:var(--space-2xl);padding:16px}.partner-today__section:not(.card){padding:0}.partner-today__section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.partner-today__section-links{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.partner-today__section-title{margin:0;font-size:1rem;font-weight:500}.partner-quick-actions{display:flex;flex-wrap:wrap;gap:8px}.partner-quick-action{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border:none;border-radius:var(--radius-full);background:var(--camon-brand-tint);color:var(--camon-brand);font-size:.9rem;font-weight:500;text-decoration:none;cursor:pointer;transition:background .15s}.partner-quick-action:hover{background:var(--camon-brand-light)}.partner-quick-action i{font-size:1.1rem;line-height:1}.partner-today a,.partner-today a:hover,.partner-today a:focus,.partner-today a:active,.partner-today button{text-decoration:none}.partner-today a:focus-visible,.partner-today button:focus-visible{outline:2px solid rgb(29 43 241 / .5);outline-offset:2px;border-radius:6px}.partner-today__list{list-style:none;margin:0;padding:0}.partner-today__time{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--camon-text);font-weight:500}.partner-today__list-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid var(--camon-border)}.partner-today__list-item:last-child{border-bottom:none}.partner-today__list-actions{display:flex;align-items:center;gap:8px}.partner-today__list-card{padding:16px}.partner-today__list-card .partner-today__court:first-child{margin-top:0}.partner-today__court-empty{margin:0}.partner-today__court{margin-top:12px}.partner-today__court-label{margin:0 0 6px;font-size:.9rem}.customer-search{display:flex;align-items:center;gap:10px;height:50px;padding:5px 5px 5px 18px;border:1px solid var(--camon-line);border-radius:var(--radius-full);background:#fff;box-shadow:var(--camon-shadow);transition:border-color .15s}.customer-search:focus-within{border-color:var(--camon-border-strong)}.customer-search__input{flex:1;min-width:0;padding:0;border:none;outline:none;background:transparent;font:inherit;font-size:15px;color:var(--camon-text)}.customer-search__input::placeholder{color:var(--camon-muted);opacity:1}.customer-search__btn{flex-shrink:0;width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;color:var(--camon-brand);cursor:pointer}.filter-field--search{min-width:200px}.partner-bookings-filter-bar.filter-bar{flex-wrap:nowrap;align-items:flex-end;gap:10px 12px}.partner-bookings-filter-bar .filter-bar-fields{display:flex;flex-wrap:nowrap;flex:1;min-width:0;gap:10px 12px;align-items:flex-end}.partner-bookings-filter-bar .filter-field{min-width:0;flex:0 0 auto}.partner-bookings-filter-bar .filter-field--customer{flex:1 1 280px;min-width:260px;max-width:360px}.partner-bookings-filter-bar .filter-field--compact{flex:0 0 108px}.partner-bookings-filter-bar .filter-field--compact select{width:100%;padding-left:8px;padding-right:8px}.partner-bookings-filter-bar .filter-field-label{font-size:.72rem;white-space:nowrap}.partner-bookings-filter-bar .customer-search{width:100%}.partner-bookings-filter-bar .filter-bar-actions .btn{min-width:72px;padding-left:12px;padding-right:12px;white-space:nowrap}.partner-bookings-table .booking-status-cell{gap:6px}.partner-nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ef4444;color:#fff;font-size:.7rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center}.admin-nav-link{display:flex;align-items:center;gap:6px;padding-top:6px;padding-bottom:6px}@keyframes navIconPop{0%{transform:scale(1) rotate(0)}30%{transform:scale(1.18) rotate(-7deg)}55%{transform:scale(.94) rotate(5deg)}to{transform:scale(1) rotate(0)}}.admin-nav-link.active .admin-nav-icon{animation:navIconPop .42s cubic-bezier(.34,1.56,.64,1) 1}svg.admin-nav-icon{display:block;width:1.25rem;height:1.05rem}@media(prefers-reduced-motion:reduce){.admin-nav-link.active .admin-nav-icon{animation:none}}.admin-nav-group-label{padding-bottom:4px;margin-bottom:2px}.admin-nav-scroll{scrollbar-width:thin;scrollbar-color:transparent transparent}.admin-nav-scroll::-webkit-scrollbar{width:6px}.admin-nav-scroll::-webkit-scrollbar-thumb{background:transparent;border-radius:4px;transition:background .2s}.admin-sidebar:hover .admin-nav-scroll,.admin-nav-scroll:hover{scrollbar-color:rgb(255 255 255 / .25) transparent}.admin-sidebar:hover .admin-nav-scroll::-webkit-scrollbar-thumb,.admin-nav-scroll:hover::-webkit-scrollbar-thumb{background:#ffffff40}.partner-menu-toggle{display:none}.partner-menu-toggle svg{display:block}.partner-sidebar-logout{display:none;align-items:center;gap:8px;margin:8px 0 4px;padding:10px 12px;border:none;border-radius:var(--camon-radius-sm);background:transparent;color:var(--camon-sidebar-text);font:inherit;font-size:.9rem;text-align:left;cursor:pointer}.partner-sidebar-logout:hover{background:#ffffff14}.partner-sidebar-logout i{font-size:1.05rem}.partner-topbar-user{font-size:.85rem}.partner-main{padding-bottom:96px;background:#fff}.partner-venue-settings .form-section{margin-bottom:20px}.partner-venue-settings__intro{margin:0 0 16px;line-height:1.55}.partner-venue-settings__intro a{color:#0f766e;font-weight:600}.venue-hours-preview{margin:0 0 16px;padding:12px 14px;border-radius:var(--camon-radius-sm);background:var(--camon-accent-muted, #ccfbf1);font-size:.9rem}.venue-hours-preview strong{color:#0f766e}.partner-bottom-nav,.partner-sidebar-backdrop{display:none}@media(max-width:900px){.partner-menu-toggle{display:inline-flex}.partner-header-logout{display:none}.partner-sidebar-logout{display:flex}.partner-today__toolbar .customer-search{flex:1 1 100%}.partner-shell .admin-sidebar{position:fixed;top:0;left:0;bottom:0;z-index:120;width:min(280px,88vw);transform:translate(-105%);transition:transform .2s ease;box-shadow:4px 0 24px #0000001f}.partner-sidebar--open{transform:translate(0)}.partner-sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;border:none;background:#0f172a73;cursor:pointer}.partner-shell .admin-nav-scroll{max-height:calc(100vh - 100px);overflow:auto}.partner-bottom-nav{display:flex;position:sticky;bottom:0;z-index:50;background:#fff;border-top:1px solid var(--camon-border);padding:6px 4px calc(6px + env(safe-area-inset-bottom));gap:2px}.partner-bottom-nav__item{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;text-decoration:none;color:var(--camon-muted);font-size:.65rem;position:relative;border-radius:var(--camon-radius-sm)}.partner-bottom-nav__item.active{color:var(--camon-brand);background:#1d2bf11a}.partner-bottom-nav__icon{font-size:1.1rem}.partner-bottom-nav__badge{position:absolute;top:2px;right:12%;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#ef4444;color:#fff;font-size:.6rem;font-weight:700;display:flex;align-items:center;justify-content:center}.partner-main{padding-bottom:140px}.partner-today__list-item{flex-direction:column;align-items:flex-start}.bookings-page-toolbar{flex-direction:column;align-items:stretch}}@media(min-width:901px){.partner-shell .admin-sidebar{position:sticky;top:0;height:100vh}}.partner-walk-in-fab{position:fixed;right:16px;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:40;display:inline-flex;align-items:center;gap:8px;padding:14px 22px;border-radius:999px;background:var(--camon-brand);color:var(--camon-point);text-decoration:none;font-size:15px;font-weight:500;box-shadow:0 6px 18px #1d2bf157}.partner-walk-in-fab:hover,.partner-walk-in-fab:focus,.partner-walk-in-fab:active{text-decoration:none}.partner-walk-in-fab__icon{display:inline-flex;align-items:center;line-height:0}@media(min-width:901px){.partner-walk-in-fab{bottom:24px}}.partner-bookings-table .booking-actions--touch{flex-wrap:wrap}.partner-bookings-table .btn-md{padding:8px 14px;font-size:.9rem}.court-ops-reservation-actions .booking-actions--touch{flex-wrap:wrap}.court-ops-reservation-actions .booking-actions--touch .btn{flex:1 1 calc(50% - 3px);min-width:0}.partner-schedule-day{display:grid;gap:12px;margin-bottom:16px}.partner-schedule-day__court{padding:12px 16px}.partner-schedule-day__court-label{margin:0 0 8px;font-size:1rem}.partner-schedule-day__slots{list-style:none;margin:0;padding:0}.partner-schedule-day__slot{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 0;border-top:1px solid var(--camon-border)}.partner-schedule-day__time{font-variant-numeric:tabular-nums;min-width:7rem}.partner-schedule-day__actions{margin-left:auto}.partner-schedule-day__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.partner-court-grid{margin-bottom:20px}.partner-court-grid__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.partner-court-grid__title{margin:0;font-size:1rem}.partner-court-grid__columns{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.partner-court-grid__court{padding:12px}.partner-court-grid__court-label{margin:0 0 8px;font-size:.95rem}.partner-court-grid__slots{list-style:none;margin:0;padding:0}.partner-court-grid__slot{display:grid;grid-template-columns:1fr auto;gap:4px 8px;padding:8px 0;border-top:1px solid var(--camon-border)}.partner-court-grid__slot-time{font-size:.85rem;font-variant-numeric:tabular-nums}.partner-court-grid__slot-body{grid-column:1;font-size:.9rem}.partner-court-grid__slot-actions{grid-column:2;grid-row:1 / span 2;align-self:center}.partner-more__intro{margin:0 0 16px}.partner-more__grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.partner-more-card{position:relative;display:flex;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--camon-border);border-radius:var(--camon-radius);background:#fff;text-decoration:none;color:inherit}.partner-more-card:hover{border-color:var(--camon-accent)}.partner-more-card__icon{font-size:1.25rem}.partner-more-card__label{font-weight:600}.partner-more-card__desc{font-size:.8rem;line-height:1.4}.partner-schedule-calendar__intro{margin:0 0 12px}.partner-schedule-calendar__block-modal{margin-top:16px}.partner-revenue-overview__intro,.partner-settlements__intro{margin:0 0 12px}.partner-revenue-overview{display:flex;flex-direction:column;gap:20px}.revenue-hero{padding:20px 22px;margin-bottom:0;background:linear-gradient(135deg,#f0fdfa,#fff 55%);border-color:#99f6e4}.revenue-hero__top{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-end;justify-content:space-between}.revenue-hero__primary{flex:1 1 220px;min-width:0}.revenue-hero__eyebrow{margin:0 0 6px;font-size:.78rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:#0f766e}.revenue-hero__total{margin:0;font-size:clamp(1.85rem,4vw,2.35rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--camon-text)}.revenue-hero__delta{margin:8px 0 0;font-size:.82rem;color:var(--camon-muted)}.revenue-hero__delta--up{color:#0f766e}.revenue-hero__delta--down{color:#dc2626}.revenue-hero__settlement{flex:0 1 auto;padding:12px 16px;border-radius:10px;background:#fff;border:1px solid #99f6e4;text-align:right}.revenue-hero__settlement-value{margin:0;font-size:1.35rem;font-weight:800;color:#0f766e;letter-spacing:-.02em}.revenue-hero__settlement-link{display:inline-block;margin-top:4px;font-size:.78rem;font-weight:600;color:#0f766e;text-decoration:none}.revenue-hero__settlement-link:hover{text-decoration:underline}.revenue-hero__secondary{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid rgb(15 118 110 / .12)}.revenue-stat-chip{display:inline-flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:8px;background:#ffffffb3;border:1px solid var(--camon-border);text-decoration:none;color:inherit}.revenue-stat-chip--urgent{background:#fef2f2;border-color:#fecaca}.revenue-stat-chip__label{font-size:.68rem;font-weight:600;color:var(--camon-muted);text-transform:uppercase;letter-spacing:.03em}.revenue-stat-chip__value{font-size:.88rem;font-weight:700;color:var(--camon-text)}.revenue-stat-chip--urgent .revenue-stat-chip__value{color:#dc2626}.revenue-section{margin:0}.revenue-section--primary .revenue-section__title{font-size:1.05rem;font-weight:700;color:var(--camon-text)}.revenue-section__head{margin-bottom:12px}.revenue-section__title{margin:0;font-size:.95rem;font-weight:700;color:var(--camon-text)}.revenue-section__sub{margin:4px 0 0;font-size:.78rem;color:var(--camon-muted);line-height:1.4}.revenue-section--details{border:1px solid var(--camon-border);border-radius:var(--camon-radius, 12px);background:#fff;overflow:hidden}.revenue-section--details[open]{box-shadow:0 1px 3px #0f172a0a}.revenue-section__summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;padding:14px 16px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;background:#f8fafc;border-bottom:1px solid transparent}.revenue-section--details[open]>.revenue-section__summary{border-bottom-color:var(--camon-border)}.revenue-section__summary::-webkit-details-marker{display:none}.revenue-section__summary:before{content:"▸";font-size:.75rem;color:var(--camon-muted);transition:transform .15s}.revenue-section--details[open]>.revenue-section__summary:before{transform:rotate(90deg)}.revenue-section--details>.revenue-section__body{padding:16px}.revenue-section--primary>.revenue-section__body .revenue-calendar>.section-title{display:none}.partner-revenue-overview .revenue-section--details .section-title,.partner-revenue-overview .finance-panel__title{font-size:.82rem;font-weight:600;color:var(--camon-muted);margin:0 0 10px}.partner-revenue-overview__charts{display:grid;gap:16px}.partner-revenue-overview__charts--stack{grid-template-columns:1fr}.partner-revenue-overview__charts--half{grid-template-columns:1fr 1fr}.partner-revenue-overview__day-detail{margin:0;padding:14px 16px}.partner-revenue-overview__day-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.partner-revenue-overview__footer{display:flex;flex-wrap:wrap;gap:16px;padding-top:4px;border-top:1px solid var(--camon-border)}.partner-revenue-overview__footer a{font-size:.82rem;font-weight:600;color:var(--camon-muted);text-decoration:none}.partner-revenue-overview__footer a:hover{color:#0f766e}.finance-panel--compact{padding:14px 16px;margin-bottom:0}.admin-table--compact th,.admin-table--compact td{padding:8px 10px;font-size:.82rem}@media(max-width:960px){.partner-revenue-overview__charts--half{grid-template-columns:1fr}.revenue-hero__settlement{text-align:left;width:100%}}.partner-revenue-analytics-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:12px 16px;background:#f0fdfa;border-color:#99f6e4}.partner-revenue-analytics-banner__text{margin:0;flex:1 1 220px;font-size:.875rem;line-height:1.5}.partner-hub__panel .reservation-calendar{margin-top:0}.manual-revenue-page{display:flex;flex-direction:column;gap:16px}.partner-login-split.login-split{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.partner-login-split .login-split__form-side{position:relative;display:flex;flex-direction:column;background:var(--camon-surface);padding:clamp(24px,4vw,48px)}.partner-login-split .login-split__logo{position:absolute;top:clamp(24px,4vw,40px);left:clamp(24px,4vw,48px);display:inline-flex;align-items:center;gap:8px}.partner-login-split .login-split__logo img{height:32px;width:auto;filter:invert(1)}.partner-login-split .login-split__suffix{font-size:1.05rem;font-weight:400;letter-spacing:-.05em;color:var(--camon-muted);transform:translateY(4px)}.partner-sidebar-logo{display:inline-flex;align-items:center;gap:8px;cursor:pointer;text-decoration:none;color:inherit}.partner-sidebar-logo img{height:28px;width:auto}.partner-sidebar-logo__suffix{font-size:1.05rem;font-weight:400;letter-spacing:-.05em;color:#ffffffb3;transform:translateY(3px)}.partner-login-split .login-split__form-wrap{flex:1;display:flex;align-items:center;justify-content:center}.partner-login-split .login-split__form-wrap .login-card{width:100%;max-width:380px;background:transparent;border:none;box-shadow:none;border-radius:0;padding:0}.partner-login-split .login-split__media{position:relative;overflow:hidden;background:#232e9e}.partner-login-split .login-split__video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}@media(max-width:760px){.partner-login-split.login-split{grid-template-columns:1fr}.partner-login-split .login-split__media{display:none}.partner-login-split .login-split__form-side{padding-top:clamp(72px,16vw,96px)}}.manual-revenue-page__intro{margin:0;font-size:.875rem;line-height:1.5;color:var(--camon-muted)}.manual-revenue-page__form-card{padding:18px 20px}.manual-revenue-page__hint{margin:0 0 16px;font-size:.82rem}.manual-revenue-form{display:flex;flex-direction:column;gap:12px;max-width:520px}.manual-revenue-page__list{padding:16px 20px}@media(max-width:900px){.partner-bottom-nav__label{font-size:.58rem}}
