/* Pádel Club · Design System v18 — aplicado globalmente */
:root{--padel-primary:#c6f53a;--padel-midnight:#0b1628;--padel-surface:#fff;--padel-background:#f5f7fb;--padel-text:#17263d;--padel-muted:#64748b;--padel-border:#e3e9f0;--padel-radius:16px;--bs-primary:#b6e638;--bs-success:#168451}
[data-bs-theme="dark"]{--padel-surface:#17263d;--padel-background:#0b1628;--padel-text:#f8fafc;--padel-muted:#b7c6d9;--padel-border:#34445a;color-scheme:dark}
*,*::before,*::after{box-sizing:border-box}html{min-width:320px}body.padel-app{font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--padel-background)!important;color:var(--padel-text);min-height:100vh;overflow-x:clip}a{transition:color .18s,background-color .18s} .padel-topbar{background:var(--padel-midnight);color:#fff;position:relative;z-index:10;box-shadow:0 6px 24px #0b162820}.padel-topbar-inner{min-height:76px;display:flex;align-items:center;gap:32px;padding:12px clamp(16px,3vw,52px)}.padel-brand{display:inline-flex;align-items:center;gap:10px;color:white;text-decoration:none;font-size:20px;font-weight:800;letter-spacing:-.8px;white-space:nowrap}.padel-brand:hover{color:white}.padel-brand-icon{display:grid;place-items:center;background:var(--padel-primary);color:var(--padel-midnight);width:38px;height:38px;border-radius:12px;font-size:24px}.padel-brand-accent{color:var(--padel-primary)}.padel-main-nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-left:auto}.padel-nav-link,.padel-nav-login{color:#c5d2e3;text-decoration:none;font-weight:600;font-size:13px;padding:11px 13px;border-radius:10px;white-space:nowrap}.padel-nav-link:hover,.padel-nav-link.is-active{color:#fff;background:#22334d}.padel-nav-login{background:var(--padel-primary);color:#0b1628;margin-left:6px}.padel-nav-login:hover{color:#0b1628;background:#b3e32d}.padel-menu-toggle{display:none;border:1px solid #43536b;background:#17263d;color:#fff;padding:8px 13px;border-radius:10px;margin-left:auto}.padel-shell{min-height:calc(100vh - 76px);display:flex;flex-direction:column}.padel-main{width:100%;max-width:1500px;padding:clamp(20px,3vw,42px) clamp(16px,3vw,48px) 55px!important;flex:1}.padel-page-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:28px}.padel-eyebrow{color:#78913d;font-size:11px;letter-spacing:.15em;font-weight:800;margin-bottom:7px}.padel-page-title{font-size:clamp(25px,3vw,38px);font-weight:800;letter-spacing:-.045em;margin:0;color:#0b1628}.padel-page-mark{font-size:11px;font-weight:800;color:#9aa7b6;letter-spacing:.14em}.padel-footer{text-align:center;color:#8a96a8;padding:18px;font-size:12px;border-top:1px solid var(--padel-border)}.card,.padel-card{background:var(--padel-surface);border:1px solid var(--padel-border)!important;border-radius:var(--padel-radius)!important;box-shadow:0 8px 28px #0b16280a;min-width:0}.card-body{padding:clamp(16px,2vw,26px)}.btn{min-height:42px;border-radius:10px;font-weight:600}.btn-padel{background:var(--padel-primary);border:0;color:#0b1628;font-weight:800;min-height:46px}.btn-padel:hover{background:#b3e32d;color:#0b1628}.btn-success{background:#168451;border-color:#168451}.form-control,.form-select{min-height:44px;border:1px solid #d9e2ec;border-radius:10px}.form-control:focus,.form-select:focus{border-color:#a6d32c;box-shadow:0 0 0 .2rem #c6f53a44}.form-label,label{font-weight:600}.table-responsive{max-width:100%;border-radius:12px}.table{--bs-table-bg:transparent}.table thead th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.alert{border-radius:12px}.padel-admin-nav{display:flex;flex-wrap:wrap;gap:8px;padding:12px;background:#fff;border:1px solid var(--padel-border);border-radius:14px;margin-bottom:26px;box-shadow:0 6px 24px #0b162808}.padel-admin-link{color:#34455c;font-size:13px;font-weight:600;text-decoration:none;padding:10px 14px;border-radius:9px}.padel-admin-link:hover,.padel-admin-link.is-active{background:#0b1628;color:#c6f53a}.padel-kpi-card{border-top:4px solid var(--padel-primary)!important}.padel-kpi-value{color:#0b1628;font-size:clamp(25px,3vw,38px)}.padel-login-card{padding:clamp(14px,2vw,26px);margin-top:30px}.padel-slot{display:flex;align-items:center;justify-content:center;padding:12px;border:1px solid #c6d5e5;border-radius:11px;background:#fff;color:#0b1628;font-weight:700;min-height:52px}.padel-slot:hover,.padel-slot:focus-visible{background:#c6f53a;color:#0b1628;border-color:#b3e32d}.padel-bracket{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x proximity}.padel-bracket__round{flex:0 0 260px;scroll-snap-align:start}.padel-status{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.padel-status--success{background:#dcfce7;color:#166534}.padel-status--pending{background:#fef3c7;color:#92400e}.padel-status--cancelled{background:#fee2e2;color:#991b1b}
@media(max-width:1050px){.padel-menu-toggle{display:block}.padel-main-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:16px;background:#0b1628;box-shadow:0 15px 20px #0b162833;flex-direction:column;align-items:stretch}.padel-main-nav.is-open{display:flex}.padel-nav-login{margin-left:0}.padel-page-mark{display:none}}@media(max-width:575px){.padel-main{padding:20px 14px 40px!important}.padel-admin-nav{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity}.padel-admin-link{white-space:nowrap;scroll-snap-align:start}.padel-page-heading{margin-bottom:20px}.padel-bracket__round{flex-basis:85vw}.padel-login-card{margin-top:8px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

/* Diseño administrativo v19: independiente de Bootstrap CDN */
body.padel-admin{background:#f3f6fa!important;color:#15233a;font-family:Inter,system-ui,sans-serif} .padel-admin a{text-decoration:none}.admin-layout{display:flex;min-height:100vh}.admin-sidebar{width:258px;flex:0 0 258px;background:#0b1628;color:#e6edf7;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:30}.admin-logo{height:92px;display:flex;align-items:center;gap:12px;padding:20px 24px;color:white!important;font-size:19px;font-weight:800;letter-spacing:-.6px}.admin-logo strong{color:#c6f53a}.admin-logo small{display:block;font-size:9px;letter-spacing:2px;color:#8295af;margin-top:3px}.admin-logo-icon{background:#c6f53a;color:#0b1628;border-radius:13px;width:40px;height:40px;display:grid;place-items:center;font-size:25px}.admin-sidebar-scroll{overflow-y:auto;flex:1;padding:8px 13px 24px}.admin-nav-group{margin-bottom:18px}.admin-nav-heading{font-size:10px;font-weight:800;letter-spacing:1.5px;color:#72849f;padding:12px 15px 8px;text-transform:uppercase}.admin-nav-item{display:flex;align-items:center;gap:12px;padding:11px 14px;color:#b9c7d9!important;border-radius:10px;font-size:13px;font-weight:600;margin-bottom:3px}.admin-nav-item:hover{background:#192b45;color:white!important}.admin-nav-item.active{background:#c6f53a;color:#0b1628!important}.nav-glyph{font-size:17px;line-height:1;width:21px;text-align:center}.admin-sidebar-footer{border-top:1px solid #273750;padding:18px;display:flex;gap:10px;align-items:center}.admin-user-avatar{background:#c6f53a;color:#0b1628;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-weight:800}.admin-sidebar-footer strong,.admin-sidebar-footer small{display:block;font-size:12px}.admin-sidebar-footer small{color:#8fa1bb;margin-top:3px}.admin-content{flex:1;min-width:0}.admin-header{height:76px;background:white;border-bottom:1px solid #e5ebf3;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,3vw,42px);gap:12px}.admin-header-label{font-size:12px;color:#64748b;font-weight:700;letter-spacing:.03em}.admin-header-label span{color:#b5bfce;padding:0 7px}.admin-header-actions{display:flex;gap:18px;align-items:center}.admin-site-link,.admin-exit-link{font-size:12px;font-weight:700;color:#263954}.admin-exit-link{background:#f1f4f8;border-radius:9px;padding:9px 13px}.admin-hamburger{display:none;border:1px solid #dbe4ef;border-radius:9px;background:white;padding:7px 12px}.admin-main{padding:32px clamp(18px,3vw,42px) 60px;max-width:1800px;margin:auto;min-width:0}.padel-admin .padel-page-heading{margin-bottom:25px}.padel-admin .padel-page-title{font-size:clamp(25px,3vw,34px)}.admin-date{font-size:12px;color:#64748b;background:white;border:1px solid #e5ebf3;border-radius:9px;padding:9px 13px}.admin-welcome{background:#0b1628;border-radius:20px;padding:32px 36px;color:white;display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px;overflow:hidden}.admin-welcome h2{font-size:clamp(21px,2.4vw,29px);font-weight:800;letter-spacing:-.7px;margin:10px 0}.admin-welcome p{color:#acbed4;font-size:13px;margin:0 0 22px}.welcome-tag{font-size:10px;letter-spacing:1.6px;color:#c6f53a;font-weight:800}.welcome-symbol{font-size:110px;color:#c6f53a;opacity:.75;line-height:1;transform:rotate(-18deg);padding-right:30px}.padel-admin .btn-padel{display:inline-flex;align-items:center;padding:12px 18px;background:#c6f53a;color:#0b1628;font-weight:800;border-radius:10px}.kpi-link{display:block;color:inherit!important;height:100%}.padel-kpi-card{background:white;border:1px solid #e4eaf2;border-radius:16px;padding:22px;min-height:164px;box-shadow:0 4px 14px #12243a08;transition:transform .18s,box-shadow .18s;height:100%}.kpi-link:hover .padel-kpi-card{transform:translateY(-3px);box-shadow:0 12px 24px #12243a15}.kpi-top{display:flex;align-items:center;justify-content:space-between;color:#64748b;font-size:12px;font-weight:700}.kpi-icon{background:#eef7d6;color:#466a08;border-radius:11px;width:37px;height:37px;display:grid;place-items:center;font-size:19px}.kpi-value{font-size:clamp(27px,2.7vw,37px);font-weight:800;color:#0b1628;letter-spacing:-1px;margin:12px 0 5px}.kpi-detail{font-size:11px;color:#8492a5}.kpi-detail span{float:right;color:#78913d;font-size:16px}.admin-section{background:white;border:1px solid #e4eaf2;border-radius:16px;padding:24px;height:100%;min-width:0}.section-head h2{font-size:17px;font-weight:800;color:#0b1628;margin-bottom:5px}.section-head p{font-size:12px;color:#7a889a;margin-bottom:22px}.quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-actions a{display:flex;flex-direction:column;align-items:flex-start;border:1px solid #e5ebf3;border-radius:12px;padding:17px;gap:7px;color:#13243b!important}.quick-actions a:hover{border-color:#b2db45;background:#fbfef3}.quick-actions a span{background:#eef7d6;border-radius:10px;padding:8px;color:#4e7015;font-size:20px}.quick-actions strong{font-size:12px}.quick-actions small{color:#7a889a;font-size:11px}.status-line{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid #eef1f6;font-size:12px;color:#4d5f74}.status-line strong{font-size:16px;color:#0b1628}.status-dot{display:inline-block;width:9px;height:9px;background:#f59e0b;border-radius:50%;margin-right:8px}.dot-lime{background:#8fc82a}.dot-blue{background:#38bdf8}.status-more{display:inline-block;margin-top:21px;font-size:12px;font-weight:800;color:#476c0a!important}.padel-admin .card{border-radius:14px}.padel-admin .table-responsive,.padel-admin .cal-wrap{max-width:100%;overflow-x:auto}.padel-admin .padel-admin-nav{display:none}.admin-overlay{display:none}
@media(max-width:1100px){.admin-sidebar{width:220px;flex-basis:220px}.admin-main{padding:25px 20px}.admin-welcome{padding:24px}.welcome-symbol{font-size:75px;padding:0}}@media(max-width:850px){.admin-sidebar{position:fixed;left:0;top:0;bottom:0;transform:translateX(-100%);transition:transform .2s;width:260px}.sidebar-open .admin-sidebar{transform:translateX(0)}.sidebar-open .admin-overlay{display:block;position:fixed;inset:0;background:#0b1628aa;z-index:25}.admin-hamburger{display:block}.admin-header{padding:0 16px}.admin-main{padding:20px 16px}.admin-header-label{margin-right:auto}.admin-date{display:none}}@media(max-width:500px){.admin-header-label{font-size:10px}.admin-header-actions{gap:8px}.admin-site-link{display:none}.admin-welcome{padding:20px}.welcome-symbol{display:none}.quick-actions{grid-template-columns:1fr 1fr}.quick-actions a{padding:12px}.admin-section{padding:16px}.padel-kpi-card{min-height:145px;padding:16px}.padel-admin .padel-page-title{font-size:25px}}

/* v20: contención de tablas, calendarios y llaves en pantallas estrechas */
.admin-main, .admin-content, .padel-main, .padel-card, .card, .row > * { min-width: 0; }
.table-responsive { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.fc, .fc-view-harness, .fc-scrollgrid { max-width: 100%; }
.fc .fc-toolbar { display:flex; flex-wrap:wrap; gap:.65rem; }
.fc .fc-toolbar-title { font-size:clamp(1rem,2vw,1.4rem); }
.padel-bracket, .bracket-scroll { overflow-x:auto; max-width:100%; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; }
.padel-bracket__round { min-width:250px; }
input, select, textarea { max-width:100%; }
@media (max-width:767.98px) {
 .admin-main, .padel-main { padding-inline:12px; }
 .fc .fc-toolbar { align-items:flex-start; }
 .fc .fc-toolbar-chunk { max-width:100%; }
 .padel-bracket__round { min-width:80vw; }
}

/* POS y accesorios — interfaz táctil */
.pos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px;max-height:65vh;overflow-y:auto}.pos-producto{border:1px solid var(--padel-border,#ddd);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:10px;min-width:0}.pos-producto small{color:var(--padel-muted,#64748b)}.pos-producto button{min-height:44px}@media(max-width:767px){.pos-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.pos-producto{padding:10px}}@media print{.admin-sidebar,.admin-header,.btn{display:none!important}.admin-content{margin:0!important}}

/* v38: cierre de sesión por POST, sin alterar la disposición del menú */
.padel-logout-form {display:inline-flex; margin:0; padding:0; align-items:center;}
.padel-logout-form button {cursor:pointer; font:inherit;}


/* === DISEÑO UNIFICADO v39 · MÓVIL PRIMERO === */
:root{--padel-primary:#c6f53a;--padel-primary-hover:#b1e324;--padel-midnight:#0b1628;--padel-background:#f4f7fb;--padel-surface:#fff;--padel-text:#142239;--padel-muted:#65758a;--padel-border:#e3e9f2;--padel-shadow:0 12px 34px rgba(11,22,40,.07);--padel-radius:18px}
html{scroll-behavior:smooth}body.padel-app{line-height:1.55}main,section,article,.row>[class*=col-]{min-width:0}a:not(.btn){text-underline-offset:3px}.padel-main{max-width:1540px}.padel-page-heading{padding-bottom:12px;border-bottom:1px solid var(--padel-border)}.padel-page-title{line-height:1.12}.card,.padel-card,.admin-section{box-shadow:var(--padel-shadow);transition:box-shadow .18s ease}.card:hover{box-shadow:0 14px 38px rgba(11,22,40,.095)}.card-header{background:transparent;border-color:var(--padel-border);font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;white-space:normal;touch-action:manipulation;transition:background .18s,box-shadow .18s,transform .18s}.btn:active{transform:translateY(1px)}.btn-success,.btn-primary,.btn-padel{background:#c6f53a!important;border-color:#c6f53a!important;color:#0b1628!important;font-weight:750}.btn-success:hover,.btn-primary:hover,.btn-padel:hover{background:#b1e324!important;border-color:#b1e324!important}.btn-outline-primary{color:#24416b;border-color:#b7c5d8}.btn-outline-primary:hover{background:#0b1628;border-color:#0b1628}.btn-danger{background:#cf3748;border-color:#cf3748}.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #60b7f6!important;outline-offset:2px}.form-label{font-size:.875rem;color:var(--padel-text);margin-bottom:.4rem}.form-control,.form-select{background-color:var(--padel-surface);color:var(--padel-text);border-color:var(--padel-border);padding:.65rem .8rem}.form-control::placeholder{color:#8695a8}.form-control:disabled,.form-select:disabled{background:#eef2f7}.badge{font-weight:700;letter-spacing:.015em;padding:.45em .7em;border-radius:999px}.alert{border-left-width:4px}.table-responsive{overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.table{font-size:.9rem;vertical-align:middle}.table>thead>tr>th{background:#f0f4f8;color:#53657d;padding:.9rem}.table>tbody>tr>td{padding:.8rem}.table tbody tr:hover{background:#f7f9fc}.input-group{flex-wrap:nowrap}.input-group>*{min-width:0}.modal-content,.offcanvas{border-radius:18px;border-color:var(--padel-border)}.dropdown-menu{border:1px solid var(--padel-border);box-shadow:var(--padel-shadow);border-radius:14px}.padel-logout-form{margin:0}.padel-logout-form button{cursor:pointer}.admin-sidebar{background:#0b1628}.admin-nav-item{transition:background .18s,color .18s}.admin-nav-item:focus-visible{outline-offset:-3px}.admin-main{min-width:0}.admin-header{min-width:0}.admin-header-label{overflow-wrap:anywhere}.admin-header-actions{display:flex;align-items:center;gap:12px}.admin-section,.padel-kpi-card{border-radius:18px}.padel-kpi-value{font-variant-numeric:tabular-nums}.admin-date{white-space:nowrap}.cal-wrap{overflow-x:auto;max-width:100%;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;border:1px solid var(--padel-border);border-radius:14px}.cal-grid{min-width:max(680px,100%)}.cal-head{position:sticky;top:0;z-index:2}.cal-cell{min-height:64px}.cal-cell a,.cal-cell button{display:block;max-width:100%;overflow-wrap:anywhere}.pos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:12px}.pos-producto{display:flex;flex-direction:column;gap:9px;padding:15px;background:var(--padel-surface);border:1px solid var(--padel-border);border-radius:14px;min-width:0;box-shadow:0 4px 12px rgba(11,22,40,.035)}.pos-producto strong{overflow-wrap:anywhere}.pos-producto small{color:var(--padel-muted)}.pos-producto button{margin-top:auto;min-height:44px}.padel-pos .padel-pos-cart{top:20px!important}.padel-pos #carrito{max-height:40vh;overflow:auto}.padel-pos #total{font-variant-numeric:tabular-nums;font-weight:800}.padel-pos .form-control{min-height:50px}.padel-pos #confirmar{min-height:56px}.padel-bracket,.padel-bracket-board{display:flex;gap:18px;overflow-x:auto;max-width:100%;padding:12px 2px 20px;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.padel-bracket-round{flex:0 0 280px;min-width:0;scroll-snap-align:start}.padel-bracket-round>h2{font-size:1rem;font-weight:800;margin:0 0 14px}.padel-match-card{border-left:3px solid #c6f53a!important}.padel-match-card p{overflow-wrap:anywhere}.padel-reservation{max-width:1040px}.padel-reservation-card{max-width:none!important}.padel-stepper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 20px}.padel-step{background:#e9eef5;color:#5b6b80;padding:12px 8px;border-radius:12px;text-align:center;font-weight:700;font-size:.82rem}.padel-step.is-active{background:#c6f53a;color:#0b1628}.padel-step.is-complete{background:#e2f6bd;color:#2d5b1a}.padel-reservation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.padel-reservation-grid label{min-width:0}.padel-reservation-grid .padel-full{grid-column:1/-1}.padel-slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:9px}.padel-slot-button{min-height:50px;border:1px solid #cad7e7;border-radius:12px;background:white;color:#12233a;font-weight:700}.padel-slot-button:hover,.padel-slot-button.is-selected{background:#c6f53a;border-color:#c6f53a}.padel-reservation-summary{background:#f1f5fa;border-radius:14px;padding:18px}.padel-reservation-summary strong{font-variant-numeric:tabular-nums}.padel-portal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.padel-portal-tabs .btn{border-radius:999px}.padel-portal .card{height:100%}.padel-accessories .card{height:100%}[data-bs-theme=dark] .card,[data-bs-theme=dark] .padel-card{color:var(--padel-text)}[data-bs-theme=dark] .table>thead>tr>th{background:#24354d;color:#d4e1ef}[data-bs-theme=dark] .padel-reservation-summary{background:#24354d}[data-bs-theme=dark] .padel-step{background:#273a52;color:#d6e3f3}
@media(max-width:991.98px){.padel-pos .padel-pos-cart{position:static!important}.padel-pos #carrito{max-height:none}.admin-header-actions{gap:6px}.padel-bracket-round{flex-basis:270px}}
@media(max-width:575.98px){.padel-main,.admin-main{padding:20px 14px 32px!important}.padel-page-heading{align-items:flex-start;flex-direction:column}.padel-reservation-grid{grid-template-columns:1fr}.padel-step{font-size:.72rem;padding:11px 5px}.padel-bracket-round{flex-basis:min(86vw,310px)}.card-body{padding:16px}.table{font-size:.82rem}.padel-pos .pos-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pos-producto{padding:11px}.pos-producto strong{font-size:.85rem}.admin-header-label{font-size:.72rem}.btn{min-height:44px}.padel-portal-tabs .btn{flex:1 1 42%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}


/* V40: capa visual unificada, específica para formularios y módulos reales */
:root{--ui-accent:#c6f53a;--ui-ink:#0b1628;--ui-paper:#fff;--ui-canvas:#f3f6fb;--ui-line:#dfe7f0;--ui-shadow:0 10px 30px rgba(12,29,53,.075)}
body.padel-app{background:var(--ui-canvas)!important}
body.padel-app main{min-width:0}
body.padel-app main .row>*{min-width:0}
body.padel-app .card,body.padel-app .admin-section,body.padel-app .padel-kpi-card{border:1px solid var(--ui-line)!important;border-radius:18px!important;box-shadow:var(--ui-shadow)}
body.padel-app .card-header{background:#f8fafc;border-bottom:1px solid var(--ui-line);border-radius:18px 18px 0 0!important;padding:16px 20px;font-weight:750}
body.padel-app .form-control,body.padel-app .form-select,body.padel-app textarea{background-color:#fff;color:#14233b;border:1px solid #ccd7e5;border-radius:12px;min-height:46px}
body.padel-app .form-control:focus,body.padel-app .form-select:focus{border-color:#8ac20a;box-shadow:0 0 0 4px rgba(198,245,58,.25)}
body.padel-app .form-label{font-size:.88rem;color:#34455c;font-weight:700;margin-bottom:.4rem}
body.padel-app .btn-primary,body.padel-app .btn-success,body.padel-app .btn-padel{background:#c6f53a!important;color:#0b1628!important;border:1px solid #b3dd31!important;font-weight:750;border-radius:12px}
body.padel-app .btn-primary:hover,body.padel-app .btn-success:hover,body.padel-app .btn-padel:hover{background:#b2e02a!important;transform:translateY(-1px)}
body.padel-app .btn-outline-primary{border-color:#a4ca2c;color:#304c09}
body.padel-app .btn-outline-primary:hover{background:#c6f53a;color:#0b1628}
body.padel-app .btn-danger{border-radius:12px}
body.padel-app .table{width:100%;vertical-align:middle;border-collapse:separate;border-spacing:0}
body.padel-app .table thead th{background:#edf2f8;color:#44536b;white-space:nowrap;padding:13px}
body.padel-app .table tbody td{padding:12px 13px;border-bottom:1px solid #e9eef5}
body.padel-app .table tbody tr:hover{background:#f8fbfd}
body.padel-app .badge{border-radius:999px;padding:.5em .75em;font-weight:700}
body.padel-app .modal-content{border:1px solid var(--ui-line);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.15)}
body.padel-app .alert{border-radius:13px;padding:14px 18px}
body.padel-app .fc{--fc-border-color:#e3eaf2;--fc-today-bg-color:#f2f9dc;--fc-button-bg-color:#0b1628;--fc-button-border-color:#0b1628;--fc-button-hover-bg-color:#21334e}
body.padel-app .fc .fc-toolbar{flex-wrap:wrap;gap:10px}
body.padel-app .fc .fc-button{border-radius:9px!important;min-height:40px}
body.padel-app .fc .fc-event{border-radius:7px;padding:2px 4px}
body.padel-app .padel-pos-cart{background:#fff}
body.padel-app .padel-slot-button:focus-visible,body.padel-app button:focus-visible,body.padel-app a:focus-visible{outline:3px solid #57a8ff;outline-offset:3px}
body.padel-app .padel-bracket,body.padel-app .padel-bracket-board{scrollbar-width:thin;scrollbar-color:#a3b3c8 transparent}
body.padel-app .padel-match-card{box-shadow:var(--ui-shadow);background:#fff}
body.padel-app .padel-login-card{max-width:600px;margin-inline:auto}
body.padel-app .padel-page-heading{margin-bottom:24px}
body.padel-app .padel-page-title{font-weight:800;letter-spacing:-.04em}
body.padel-app .admin-header{position:sticky;top:0;z-index:20}
body.padel-app .padel-ui-build{font-size:10px;font-weight:700;letter-spacing:.08em;color:#708099}
body.padel-app .padel-ui-build::before{content:"● ";color:#83b71d}
@media(max-width:767.98px){
 body.padel-app .table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}
 body.padel-app .admin-header{height:auto;min-height:62px;padding:10px 14px}
 body.padel-app .admin-header-actions{flex-wrap:wrap;justify-content:flex-end}
 body.padel-app .fc .fc-toolbar{flex-direction:column;align-items:stretch}
 body.padel-app .fc .fc-toolbar-chunk{text-align:center}
 body.padel-app .padel-pos-cart{position:static!important}
 body.padel-app .padel-page-title{font-size:1.65rem}
}
@media(prefers-reduced-motion:reduce){body.padel-app *{scroll-behavior:auto!important;transition:none!important}}
