@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Tajawal:wght@400;500;700;800&display=swap";:root{--primary:#123d30;--primary-hover:#0c2b22;--primary-light:#e7f2ed;--primary-glow:#123d3026;--accent:#c49a45;--accent-hover:#ad8335;--accent-light:#fbf5e8;--success:#10b981;--success-bg:#ecfdf5;--warning:#f59e0b;--warning-bg:#fffbeb;--danger:#ef4444;--danger-bg:#fef2f2;--info:#3b82f6;--info-bg:#eff6ff;--bg-main:#f5f7f6;--bg-surface:#fff;--bg-subtle:#f0f4f2;--border-subtle:#e2e9e5;--border-strong:#c8d5cf;--text-main:#131f1b;--text-muted:#52665e;--text-dim:#8b9e96;--text-inverse:#fff;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #123d3014, 0 2px 4px -2px #123d300f;--shadow-lg:0 10px 15px -3px #123d301a, 0 4px 6px -4px #123d3014;--shadow-xl:0 20px 25px -5px #123d301f, 0 8px 10px -6px #123d3014;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--font-en:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-ar:"Tajawal", system-ui, -apple-system, sans-serif}[dir=rtl]{font-family:var(--font-ar)}[dir=ltr]{font-family:var(--font-en)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.5}button,input,select,textarea{font-family:inherit;font-size:inherit}.btn{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-weight:600;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-hover));color:var(--text-inverse);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background:var(--bg-surface);color:var(--text-main);border-color:var(--border-subtle)}.btn-secondary:hover:not(:disabled){background:var(--bg-subtle);border-color:var(--border-strong)}.btn-danger{background:var(--danger);color:var(--text-inverse)}.btn-danger:hover:not(:disabled){opacity:.9}.btn-sm{padding:6px 12px;font-size:.85rem}.badge{border-radius:var(--radius-full);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.badge-active{background:var(--success-bg);color:var(--success);border:1px solid #10b98133}.badge-inactive{background:var(--bg-subtle);color:var(--text-dim);border:1px solid var(--border-subtle)}.badge-ride{color:#92400e;background:#fef3c7}.badge-class{color:#3730a3;background:#e0e7ff}.badge-kids{color:#9d174d;background:#fce7f3}.badge-visit{color:#065f46;background:#ecfdf5}.badge-package{color:#9a3412;background:#ffedd5}.badge-role-manager{color:#b45309;background:#fef3c7}.badge-role-trainer{color:#1e40af;background:#dbeafe}.badge-role-reception{color:#6b21a8;background:#f3e8ff}.card{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);padding:24px}.app-container{min-height:100vh;display:flex}.sidebar{background:var(--primary);width:260px;color:var(--text-inverse);flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0;box-shadow:2px 0 12px #0000001a}.sidebar-header{border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;padding:28px 24px;display:flex}.sidebar-brand-icon{background:var(--accent);width:38px;height:38px;color:var(--primary);border-radius:var(--radius-md);justify-content:center;align-items:center;font-size:20px;font-weight:800;display:flex}.sidebar-brand-title{letter-spacing:-.01em;font-size:1.15rem;font-weight:800}.sidebar-nav{flex-direction:column;flex:1;gap:6px;padding:24px 16px;display:flex}.nav-link{border-radius:var(--radius-md);color:#ffffffbf;align-items:center;gap:12px;padding:12px 16px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.nav-link:hover{color:var(--text-inverse);background:#ffffff14}.nav-link.active{background:var(--accent);color:#1a1a1a;box-shadow:var(--shadow-md)}.sidebar-footer{border-top:1px solid #ffffff1a;flex-direction:column;gap:12px;padding:20px 16px;display:flex}.main-content{flex-direction:column;flex:1;display:flex;overflow-x:hidden}.top-bar{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);z-index:10;justify-content:space-between;align-items:center;padding:16px 32px;display:flex;position:sticky;top:0}.content-body{flex:1;padding:32px}.table-container{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);overflow:hidden}.data-table{border-collapse:collapse;text-align:start;width:100%}.data-table th{background:var(--bg-subtle);color:var(--text-muted);text-transform:uppercase;border-bottom:1px solid var(--border-subtle);padding:14px 18px;font-size:.8rem;font-weight:700}.data-table td{border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:16px 18px;font-size:.95rem}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover{background-color:#fafcfb}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0a1e1899;justify-content:center;align-items:center;padding:24px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-surface);border-radius:var(--radius-xl);width:100%;max-width:640px;max-height:90vh;box-shadow:var(--shadow-xl);border:1px solid var(--border-subtle);animation:.25s slideUp;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.modal-title{color:var(--primary);font-size:1.25rem;font-weight:800}.modal-body{padding:28px}.modal-footer{border-top:1px solid var(--border-subtle);background:var(--bg-subtle);justify-content:flex-end;gap:12px;padding:20px 28px;display:flex}.trainer-hours-modal{max-width:1040px}.trainer-hours-header{z-index:2;background:var(--bg-surface);position:sticky;top:0}.trainer-hours-subtitle,.trainer-hours-section-heading p{color:var(--text-muted);margin-top:4px;font-size:.875rem}.trainer-hours-body{gap:24px;display:grid}.trainer-hours-section{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:20px}.trainer-hours-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.trainer-hours-section h3{color:var(--primary);font-size:1.05rem}.trainer-hours-alert,.trainer-hours-conflicts{border-radius:var(--radius-md);background:var(--danger-bg);color:var(--danger);padding:14px 16px}.trainer-hours-mutation-feedback{gap:10px;margin-block:16px;display:grid}.trainer-hours-conflicts ul{margin:8px 0 0;padding-inline-start:22px}.trainer-hours-week,.trainer-hours-overrides{gap:10px;display:grid}.trainer-hours-day,.trainer-hours-override{border-radius:var(--radius-md);background:var(--bg-subtle);grid-template-columns:minmax(100px,.7fr) minmax(240px,2fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.trainer-hours-day-name{font-weight:800}.trainer-hours-windows,.trainer-hours-actions{flex-wrap:wrap;gap:8px;display:flex}.trainer-hours-window{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);align-items:center;gap:6px;padding-block:5px;padding-inline:10px 6px;display:inline-flex}.trainer-hours-empty,.trainer-hours-state{color:var(--text-muted);font-style:italic}.trainer-hours-override>div:first-child{gap:4px;display:grid}.trainer-hours-preview-filters,.trainer-hours-time-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.trainer-hours-preview-filters label{gap:6px;font-size:.875rem;font-weight:700;display:grid}.trainer-hours-preview{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.trainer-hours-preview-day{border:1px solid var(--border-subtle);border-radius:var(--radius-md);gap:8px;padding:12px;display:grid}.trainer-hours-source{width:fit-content}.trainer-hours-editor{z-index:1100;background:#0a1e188c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.trainer-hours-modal{position:relative}.trainer-hours-editor-card{border-radius:var(--radius-lg);background:var(--bg-surface);width:min(460px,100%);box-shadow:var(--shadow-xl);padding:24px}.trainer-hours-editor-card h3{color:var(--primary);margin-bottom:20px}.trainer-hours-checkbox{align-items:center;gap:8px;margin-bottom:18px;font-weight:700;display:flex}.trainer-hours-editor-actions{border-radius:0 0 var(--radius-lg) var(--radius-lg);margin:24px -24px -24px}@media (width<=700px){.modal-overlay{padding:0}.trainer-hours-modal{border-radius:0;min-height:100vh;max-height:100vh}.trainer-hours-header,.trainer-hours-body,.trainer-hours-section{padding:16px}.trainer-hours-day,.trainer-hours-override{grid-template-columns:1fr}.trainer-hours-section-heading{flex-direction:column}.trainer-hours-preview-filters,.trainer-hours-time-fields{grid-template-columns:1fr}.trainer-hours-window{justify-content:space-between;width:100%}}.form-group{margin-bottom:20px}.form-label{color:var(--text-main);margin-bottom:6px;font-size:.875rem;font-weight:700;display:block}.form-control{border:1.5px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);width:100%;color:var(--text-main);padding:10px 14px;transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.form-error{color:var(--danger);margin-top:4px;font-size:.8rem;font-weight:500}.dropzone{border:2px dashed var(--border-strong);border-radius:var(--radius-lg);text-align:center;background:var(--bg-subtle);cursor:pointer;padding:30px;transition:all .2s}.dropzone:hover{border-color:var(--primary);background:var(--primary-light)}.ring-page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.ring-page-title{color:var(--primary);font-size:1.75rem;font-weight:800}.ring-page-subtitle{color:var(--text-muted);margin-top:4px;font-size:.9rem}.ring-alert{border-radius:var(--radius-md);margin-bottom:20px;padding:14px 18px}.ring-alert-error{background:var(--danger-bg);color:var(--danger)}.ring-alert-warning{background:var(--warning-bg);color:#7c4a03;border:1px solid #f59e0b40}.ring-alert-warning h2{margin-bottom:4px;font-size:1rem}.ring-conflict-list{gap:8px;margin:12px 0;list-style:none;display:grid}.ring-conflict-list li{border-radius:var(--radius-sm);background:#ffffffa6;gap:2px;padding:10px 12px;display:grid}.ring-field-hint{color:var(--text-muted);margin-top:6px;font-size:.8rem}.ring-state{color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:14px;padding:48px;display:flex}.ring-name-cell{color:var(--text-main);font-weight:700}.ring-actions-cell{text-align:end}.ring-actions{gap:8px;display:inline-flex}.ring-pagination{color:var(--text-muted);justify-content:space-between;align-items:center;margin-top:18px;font-size:.85rem;display:flex}.ring-pagination>div{gap:8px;display:flex}.session-block-page-header,.session-block-pagination{justify-content:space-between;align-items:center;gap:16px;display:flex}.session-block-page-header{margin-bottom:20px}.session-block-page-header h1{color:var(--primary);font-size:1.75rem}.session-block-page-header p{color:var(--text-muted);margin-top:4px}.session-block-filters{grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px;margin-bottom:18px;display:grid}.session-block-filters label{color:var(--text-muted);gap:6px;font-size:.8rem;font-weight:700;display:grid}.session-block-state{color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:14px;padding:48px;display:flex}.session-block-pagination{color:var(--text-muted);margin-top:18px;font-size:.85rem}.session-block-pagination>div{gap:8px;display:flex}.session-block-table td[dir=ltr]{flex-wrap:wrap;gap:6px;display:flex}.session-block-range-arrow{color:var(--text-muted)}.session-block-scope-farm{color:#991b1b;background:#fee2e2}.session-block-scope-ring{color:#1e40af;background:#dbeafe}.session-block-scope-trainer{color:#5b21b6;background:#ede9fe}.session-block-modal{max-width:760px}.session-block-form-grid{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.session-block-form-full{grid-column:1/-1}.session-block-check{align-items:center;gap:8px;margin:4px 0 18px;display:flex}.session-block-hint{color:var(--text-muted);text-align:end;margin-top:5px;font-size:.78rem}.session-block-alert{border-radius:var(--radius-md);margin-bottom:16px;padding:14px 16px}.session-block-alert.error{background:var(--danger-bg);color:var(--danger)}.session-block-alert.warning{background:var(--warning-bg);color:#7c4a03;border:1px solid #f59e0b40}.session-block-alert h3{margin-bottom:5px;font-size:1rem}.session-conflict-table{margin-top:12px}.session-conflict-table a{color:var(--primary);font-weight:700;text-decoration:underline}.session-block-confirm{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:calc(100% - 32px);max-width:460px;padding:24px}.session-block-confirm h2{color:var(--primary);margin-bottom:8px}.session-block-confirm>p{color:var(--text-muted);margin-bottom:18px}@media (width<=760px){.session-block-page-header,.session-block-pagination{flex-direction:column;align-items:stretch}.session-block-filters,.session-block-form-grid{grid-template-columns:1fr}.session-block-form-full{grid-column:auto}.session-block-table-container{box-shadow:none;background:0 0;overflow:visible}.session-block-table thead{display:none}.session-block-table,.session-block-table tbody{display:block}.session-block-table tr{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:12px;padding:10px 14px;display:block}.session-block-table td{text-align:end;border:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;display:flex}.session-block-table td:before{color:var(--text-muted);content:attr(data-label);text-align:start;font-size:.75rem;font-weight:700}.session-block-table td[dir=ltr]{justify-content:flex-end}.session-conflict-table{min-width:560px}}.discount-toolbar{gap:12px;margin-bottom:18px;display:grid}.discount-filters{flex-wrap:wrap;gap:8px;display:flex}.discount-filter{border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;font:inherit;background:#fff;border-radius:999px;padding:6px 14px;font-size:.85rem}.discount-filter.active{background:var(--primary);border-color:var(--primary);color:#fff}.discount-code-link{color:var(--primary);cursor:pointer;font:inherit;text-align:start;background:0 0;border:0;padding:0;font-weight:700}.discount-window{gap:2px;font-size:.85rem;display:grid}.discount-badge-active{background:var(--success-bg);color:var(--success)}.discount-badge-scheduled{background:var(--warning-bg);color:#7c4a03}.discount-badge-expired,.discount-badge-used_up,.discount-badge-disabled{background:var(--danger-bg);color:var(--danger)}.discount-modal{max-height:92vh;overflow-y:auto}.discount-inline{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.discount-inline .form-control{flex:140px;min-width:0}.discount-radio-row{flex-wrap:wrap;gap:16px;margin-bottom:10px;display:flex}.discount-check{align-items:center;gap:6px;display:inline-flex}.discount-field-error{color:var(--danger);margin-top:6px;font-size:.8rem}.discount-field-warning{color:#7c4a03;margin-top:6px;font-size:.8rem}.discount-example,.discount-preview{background:var(--primary-light);border-radius:var(--radius-sm);margin-top:8px;padding:8px 12px;font-size:.85rem}.discount-anyone{color:var(--text-muted);margin-bottom:8px;font-weight:600}.discount-chips{flex-wrap:wrap;gap:8px;margin:0 0 8px;padding:0;list-style:none;display:flex}.discount-chip{background:var(--primary-light);border-radius:999px;align-items:center;gap:8px;padding:4px 12px;display:inline-flex}.discount-chip button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.discount-drawer-overlay{justify-content:flex-end;padding:0}.discount-drawer{background:#fff;flex-direction:column;width:560px;max-width:100%;height:100%;display:flex;overflow-y:auto}.discount-drawer-body{gap:14px;padding:20px;display:grid}.discount-stats{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.discount-stats div{background:var(--primary-light);border-radius:var(--radius-sm);padding:10px 12px}.discount-stats dt{color:var(--text-muted);font-size:.8rem}.discount-stats dd{margin:0;font-size:1.2rem;font-weight:800}.discount-section-title{margin-top:8px;font-size:1rem}@media (width<=760px){.app-container{display:block}.sidebar{width:100%;height:auto;position:static}.sidebar-header{padding:16px}.sidebar-nav{flex-direction:row;padding:12px;overflow-x:auto}.nav-link{flex:none}.sidebar-footer{display:none}.top-bar,.content-body{padding:16px}.ring-page-header,.ring-pagination{flex-direction:column;align-items:stretch}.ring-table-container{overflow:visible}.ring-table-container .data-table{min-width:0;display:block}.ring-table-container .data-table thead{display:none}.ring-table-container .data-table tbody{gap:12px;display:grid}.ring-table-container .data-table tr{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:block;overflow:hidden}.ring-table-container .data-table td{border-bottom:1px solid var(--border-subtle);text-align:start;grid-template-columns:minmax(95px,38%) minmax(0,1fr);align-items:center;gap:12px;padding:10px 12px;display:grid}.ring-table-container .data-table td:before{color:var(--text-muted);content:attr(data-label);text-transform:uppercase;font-size:.75rem;font-weight:700}.ring-table-container .data-table td:last-child{border-bottom:0}.ring-actions-cell{text-align:start}.ring-actions{width:100%;display:flex}.ring-actions .btn{flex:1 1 0}.modal-overlay{align-items:flex-end;padding:0}.modal-content{border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:92vh}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.horse-page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.horse-page-title{color:var(--primary);font-size:1.75rem;line-height:1.2}.horse-page-subtitle{color:var(--text-muted);margin-top:6px}.horse-pool-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.horse-pool-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:18px 20px}.horse-pool-heading,.horse-pool-counts{align-items:center;gap:14px;display:flex}.horse-pool-heading{color:var(--primary);margin-bottom:12px}.horse-pool-icon{border-radius:var(--radius-md);background:var(--primary-light);place-items:center;width:36px;height:36px;display:grid}.horse-pool-counts{color:var(--text-muted);flex-wrap:wrap;font-size:.9rem}.horse-pool-counts b{color:var(--text-main);font-size:1.1rem}.horse-count-available b{color:var(--success)}.horse-count-unavailable b{color:var(--danger)}.horse-filters{gap:16px;margin-bottom:20px;padding:16px 20px;display:flex}.horse-filters label{min-width:190px;color:var(--text-muted);gap:6px;font-size:.8rem;font-weight:700;display:grid}.horse-table-container{overflow-x:auto}.horse-table{min-width:950px}.horse-name-cell{align-items:center;gap:10px;min-width:150px;display:flex}.horse-name-cell img,.horse-name-cell>span{object-fit:cover;background:var(--primary-light);border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.horse-name-cell div{display:grid}.horse-name-cell small{color:var(--text-muted)}.horse-actions{justify-content:flex-end;gap:8px;display:flex}.horse-state{min-height:220px;color:var(--text-muted);text-align:center;place-content:center;justify-items:center;gap:14px;padding:24px;display:grid}.horse-pagination{color:var(--text-muted);justify-content:space-between;align-items:center;gap:16px;margin-top:16px;font-size:.9rem;display:flex}.horse-pagination div{gap:8px;display:flex}.horse-alert{border-radius:var(--radius-md);border:1px solid;margin-bottom:16px;padding:14px 16px}.horse-alert-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.horse-alert-warning{color:#78350f;background:#fffbeb;border-color:#fde68a}.horse-alert h2{margin-bottom:4px;font-size:1rem}.horse-conflict-list{margin:10px 20px}.horse-conflict-list li+li{margin-top:6px}.horse-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;display:grid}.horse-form-full{grid-column:1/-1}.horse-field-hint{color:var(--text-muted);margin-top:5px;font-size:.78rem}.horse-action-modal{max-width:500px}@media (width<=760px){.app-container{display:block}.sidebar{width:100%;height:auto;position:static}.sidebar-header{padding:16px}.sidebar-nav{flex-direction:row;padding:10px;overflow-x:auto}.nav-link{flex:none}.sidebar-footer,.top-bar{display:none}.content-body{padding:20px 14px}.horse-page-header,.horse-pagination{flex-direction:column;align-items:stretch}.horse-pool-strip,.horse-form-grid{grid-template-columns:1fr}.horse-filters{flex-direction:column;align-items:stretch}.horse-filters label{min-width:0}.horse-pagination div{justify-content:space-between}.horse-table-container{overflow:visible}.horse-table-container .data-table{min-width:0;display:block}.horse-table-container .data-table thead{display:none}.horse-table-container .data-table tbody{gap:12px;display:grid}.horse-table-container .data-table tr{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:block;overflow:hidden}.horse-table-container .data-table td{border-bottom:1px solid var(--border-subtle);text-align:start;grid-template-columns:minmax(95px,38%) minmax(0,1fr);align-items:center;gap:12px;padding:10px 12px;display:grid}.horse-table-container .data-table td:before{color:var(--text-muted);content:attr(data-label);text-transform:uppercase;font-size:.75rem;font-weight:700}.horse-table-container .data-table td:last-child{border-bottom:0}.horse-actions{width:100%}.horse-actions .btn{flex:1 1 0}.modal-overlay{padding:12px}.modal-header,.modal-body,.modal-footer{padding:18px}}.activity-page-header,.activity-filter-bar,.activity-filter-chips,.activity-actions,.activity-name-cell,.activity-inline-input,.offered-hours-heading,.activity-video,.activity-checkbox{align-items:center;display:flex}.activity-page-header{flex-wrap:wrap;justify-content:space-between;gap:16px;margin-bottom:24px}.activity-page-header h1{color:var(--primary);font-size:1.75rem;font-weight:800}.activity-page-header p,.offered-hours-heading p{color:var(--text-muted);font-size:.9rem}.activity-filter-bar{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:24px;padding:16px 20px}.activity-filter-chips,.activity-actions{flex-wrap:wrap;gap:8px}.activity-filter-chips .btn{border-radius:var(--radius-full)}.activity-checkbox{cursor:pointer;gap:8px;font-size:.875rem;font-weight:600}.activity-checkbox input{width:17px;height:17px;accent-color:var(--primary)}.activity-alert{border-radius:var(--radius-md);border:1px solid;justify-content:space-between;gap:16px;margin-bottom:18px;padding:14px 18px;display:flex}.activity-alert ul{padding-inline-start:20px}.activity-alert-error{color:var(--danger);background:var(--danger-bg);border-color:#ef444438}.activity-alert-warning{color:#92400e;background:var(--warning-bg);border-color:#f59e0b4d}.activity-alert-info{color:#1e40af;background:var(--info-bg);border-color:#3b82f640;display:block}.activity-state{color:var(--text-muted);text-align:center;padding:48px}.activity-name-cell{gap:14px}.activity-name-cell small,.bookable-cell small{color:var(--text-muted);font-size:.75rem;display:block}.activity-thumbnail{background:var(--bg-subtle);border-radius:var(--radius-md);flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.activity-thumbnail img{object-fit:cover;width:100%;height:100%}.activity-price{white-space:nowrap;font-weight:700}.bookable-cell{gap:5px;min-width:150px;display:grid}.badge-bookable{color:#065f46;background:var(--success-bg)}.badge-not-bookable{color:#92400e;background:var(--warning-bg)}.activity-actions{justify-content:flex-end}.activity-modal{max-width:880px}.activity-form-grid{gap:16px;display:grid}.activity-form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-form-grid.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-section{background:var(--bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin:4px 0 22px;padding:20px}.activity-section h3{color:var(--primary);margin-bottom:16px}.offered-hours-heading{justify-content:space-between;gap:12px;margin:4px 0 12px}.offered-hours-list{gap:10px;display:grid}.offered-hours-row{grid-template-columns:minmax(140px,1fr) minmax(110px,.7fr) auto minmax(110px,.7fr) auto;align-items:center;gap:8px;display:grid}.offered-hours-empty{color:var(--text-muted);text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius-md);padding:14px}.activity-inline-input,.activity-video{gap:8px}.activity-tags{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.activity-tags button,.activity-media-item button{color:inherit;cursor:pointer;background:0 0;border:0}.activity-dropzone{gap:6px;display:grid}.activity-media-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:12px;display:grid}.activity-media-item{border-radius:var(--radius-md);height:92px;position:relative;overflow:hidden}.activity-media-item img{object-fit:cover;width:100%;height:100%}.activity-media-item button,.activity-media-item small{color:#fff;border-radius:var(--radius-sm);background:#000000a6;padding:2px 6px;position:absolute;top:6px}.activity-media-item button{inset-inline-end:6px}.activity-media-item small{inset-inline-start:6px}.activity-video{background:var(--bg-subtle);border-radius:var(--radius-md);justify-content:space-between;margin-top:10px;padding:10px}.activity-video span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qualification-picker{gap:6px;display:grid}.picker-status{color:var(--text-muted);font-size:.78rem;display:block}.picker-status-warning{color:#92400e}.picker-status-error{color:var(--danger)}.qualification-chips{margin-top:2px}.ring-picker,.ring-options,.ring-priority-list{gap:10px;display:grid}.ring-options{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.ring-option{cursor:pointer;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);grid-template-columns:auto 1fr;align-items:center;gap:2px 9px;padding:10px 12px;display:grid}.ring-option input{accent-color:var(--primary);grid-row:1/span 2}.ring-option small{color:var(--text-muted)}.ring-option-disabled{cursor:not-allowed;opacity:.55}.ring-priority-list{background:var(--bg-surface);border-radius:var(--radius-md);margin-top:6px;padding:12px}.ring-priority-item{justify-content:space-between;align-items:center;gap:12px;display:flex}.ring-priority-item>div{gap:6px;display:flex}.staff-qualification-tags{min-width:150px;margin-top:0}.table-empty-value{color:var(--text-dim);font-style:italic}@media (width<=760px){.activity-form-grid.two-columns,.activity-form-grid.three-columns{grid-template-columns:1fr}.offered-hours-row{grid-template-columns:1fr 1fr}.offered-hours-row>span{display:none}.offered-hours-row>select,.offered-hours-row>button{grid-column:1/-1}.activity-table-container{overflow:visible}.activity-table-container .data-table{min-width:0;display:block}.activity-table-container .data-table thead{display:none}.activity-table-container .data-table tbody{gap:12px;display:grid}.activity-table-container .data-table tr{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:block;overflow:hidden}.activity-table-container .data-table td{border-bottom:1px solid var(--border-subtle);text-align:start;grid-template-columns:minmax(95px,38%) minmax(0,1fr);align-items:center;gap:12px;padding:10px 12px;display:grid}.activity-table-container .data-table td:before{color:var(--text-muted);content:attr(data-label);text-transform:uppercase;font-size:.75rem;font-weight:700}.activity-table-container .data-table td:last-child{border-bottom:0}.activity-actions{width:100%}.activity-actions .btn{flex:1 1 0}}.booking-page-header{margin-bottom:20px}.booking-page-header h1{color:var(--primary);font-size:1.75rem}.booking-page-header p{color:var(--text-muted);margin-top:4px}.booking-filters{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:12px;margin-bottom:18px;display:grid}.booking-filters label{color:var(--text-muted);gap:6px;min-width:0;font-size:.8rem;font-weight:700;display:grid}.booking-state{color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:14px;padding:48px;display:flex}.booking-pagination{color:var(--text-muted);justify-content:space-between;align-items:center;gap:16px;margin-top:18px;font-size:.85rem;display:flex}.booking-pagination>div{gap:8px;display:flex}.booking-muted{color:var(--text-muted)}.booking-contact{gap:2px;display:grid}.booking-status-held{color:#92400e;background:#fef3c7}.booking-status-confirmed{color:#166534;background:#dcfce7}.booking-status-cancelled{color:#991b1b;background:#fee2e2}.booking-status-expired{color:#374151;background:#e5e7eb}.booking-flag{color:#9a3412;background:#ffedd5;margin-inline-start:6px}.booking-modal{max-width:760px}.booking-fields{grid-template-columns:1fr 1fr;gap:10px 16px;margin:0 0 16px;display:grid}.booking-field{overflow-wrap:anywhere;min-width:0}.booking-field dt{color:var(--text-muted);font-size:.75rem;font-weight:700}.booking-field dd{margin:2px 0 0}.booking-modal h3{margin:14px 0 8px}.booking-history{margin:0;padding-inline-start:18px}.booking-alert{border-radius:var(--radius-md);margin-bottom:14px;padding:12px 14px}.booking-alert.error{background:var(--danger-bg);color:var(--danger)}.booking-alert.success{color:#166534;background:#dcfce7}.booking-confirm-overlay{z-index:1100;background:#0a1e18bf}.booking-field-error{color:var(--danger);margin-top:4px;font-size:.8rem;display:block}.booking-confirm{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:calc(100% - 32px);max-width:460px;padding:24px}.booking-confirm h2{color:var(--primary);margin-bottom:8px}.booking-confirm>p{color:var(--text-muted);margin-bottom:14px}@media (width<=760px){.booking-pagination{flex-direction:column;align-items:stretch}.booking-fields{grid-template-columns:1fr}.booking-modal .modal-footer{flex-wrap:wrap}.booking-table-container{box-shadow:none;background:0 0;overflow:visible}.booking-table thead{display:none}.booking-table,.booking-table tbody{display:block}.booking-table tr{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:12px;padding:10px 14px;display:block}.booking-table td{text-align:end;border:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;display:flex}.booking-table td:before{color:var(--text-muted);content:attr(data-label);text-align:start;font-size:.75rem;font-weight:700}.booking-riders{display:block;overflow-x:auto}}
