@media print{.sidebar-cluster,.sidebar-backdrop,.sidebar-rail,.sidebar-panel,.sidebar-drawer,.navbar-main,.notification-center,.session-watchdog{display:none!important}.app-layout{grid-template-columns:1fr!important}.main-content{margin-left:0!important;padding:0!important}}.side-modal-backdrop{opacity:0;pointer-events:none;z-index:2000;background:#02061770;transition:opacity .28s cubic-bezier(.4,0,.2,1);position:fixed;inset:0}.side-modal-backdrop.open{opacity:1;pointer-events:auto}.side-modal-panel{background:color-mix(in srgb, var(--shell-panel-strong) 98%, #000 2%);border-left:1px solid var(--shell-border-strong);z-index:2100;opacity:0;flex-direction:column;width:410px;max-width:98vw;height:100vh;padding:0;transition:transform .38s cubic-bezier(.4,0,.2,1),opacity .28s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-8px 0 32px #02061738}.side-modal-panel.open{opacity:1;transform:translate(0)}.side-modal-close{color:var(--muted);cursor:pointer;z-index:1;background:0 0;border:none;font-size:28px;font-weight:700;transition:color .18s;position:absolute;top:18px;right:18px}.side-modal-close:hover{color:var(--danger)}.co-data-card-modal{box-shadow:none;background:0 0;border-radius:0 0 0 18px;flex-direction:column;gap:18px;min-height:100vh;margin:0;padding:38px 32px 32px;animation:.5s fadeInUp;display:flex}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.sidebar-group-title{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;opacity:.7;margin:0 0 6px 8px;font-size:11px;font-weight:700}.sidebar-group-items{flex-direction:column;gap:2px;animation:.5s fadeInUp;display:flex}:root{--text:#97a3b6;--text-h:#eef4ff;--bg:#07111f;--border:#94a3b82e;--code-bg:#0f172ab8;--accent:#38bdf8;--accent-strong:#0ea5e9;--accent-bg:#38bdf81f;--accent-border:#38bdf852;--social-bg:#0f172a80;--shadow:0 18px 48px #02061747;--shell-bg:linear-gradient(180deg, #08111d 0%, #091423 56%, #0a1729 100%);--shell-panel:#09111fc7;--shell-panel-strong:#0b1321f0;--shell-elevated:#0f172a9e;--shell-border:#94a3b824;--shell-border-strong:#94a3b838;--sidebar-bg:#07111fe6;--sidebar-item-hover:#38bdf814;--sidebar-item-active:linear-gradient(90deg, #38bdf82e, #0ea5e90f);--topbar-bg:#07111fb8;--card-bg:linear-gradient(180deg, #ffffff08, #ffffff04);--card-bg-soft:#0f172a7a;--feature-panel-bg:linear-gradient(180deg, #ffffff0a, #ffffff04);--feature-panel-solid:#081223;--feature-panel-soft:#0f172a8f;--feature-panel-softer:#0f172a75;--feature-panel-track:#ffffff0f;--overlay-bg:#02061799;--muted:#93a3b8;--success:#22c55e;--warning:#f59e0b;--danger:#f87171;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width<=1024px){:root{font-size:16px}}[data-theme=light]{--text:#7b8799;--text-h:#1e293b;--bg:#f3f6fb;--border:#47556929;--code-bg:#e2e8f0b3;--accent:#2563eb;--accent-strong:#1d4ed8;--accent-bg:#2563eb1a;--accent-border:#2563eb3d;--social-bg:#e2e8f0b3;--shadow:0 16px 40px #0f172a1f;--shell-bg:linear-gradient(180deg, #eef3f8 0%, #e8eff7 100%);--shell-panel:#ffffffb8;--shell-panel-strong:#ffffffeb;--shell-elevated:#f8fafce0;--shell-border:#4755691f;--shell-border-strong:#4755692e;--sidebar-bg:#ffffffd1;--sidebar-item-hover:#2563eb14;--sidebar-item-active:linear-gradient(90deg, #2563eb24, #2563eb0a);--topbar-bg:#ffffffb8;--card-bg:linear-gradient(180deg, #fffffffa, #f8fafceb);--card-bg-soft:#ffffffb8;--feature-panel-bg:linear-gradient(180deg, #fffffffa, #f1f5f9f0);--feature-panel-solid:#fffffff5;--feature-panel-soft:#f8fafce6;--feature-panel-softer:#f1f5f9db;--feature-panel-track:#94a3b829;--overlay-bg:#94a3b857;--muted:#64748b;--success:#16a34a;--warning:#d97706;--danger:#dc2626;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}#root{text-align:left;box-sizing:border-box;width:100%;max-width:100%;min-height:100svh;margin:0;display:block}body{background:var(--shell-bg);color:var(--text);margin:0}body:before{content:"";pointer-events:none;background:radial-gradient(circle at 12% 18%, var(--accent-bg) 0%, transparent 30%), radial-gradient(circle at 84% 12%, var(--accent-bg) 0%, transparent 26%), radial-gradient(circle at 52% 82%, var(--accent-bg) 0%, transparent 34%);opacity:0;z-index:120;transition:opacity .38s,transform .46s;position:fixed;inset:0;transform:scale(1.035)}html.theme-changing body:before{opacity:1;transform:scale(1)}:where(body,.dashboard-root,.dashboard-shell,.topbar,.sidebar,.sidebar-footer,.theme-switcher,.theme-chip,.menu-item,.menu-icon,.card,.service-card,.trainer-card,.trainer-fact-card,.trainers-overview-card,.trainers-mini-stat,.trainers-load-board,.trainers-pulse-item,.sedes-overview-card,.sedes-highlight-card,.sedes-mini-stat,.sedes-modal-card,.members-table-card,.member-metric-card,.modal,.table th,.table td,button,input,select,textarea){transition:background .42s cubic-bezier(.22,1,.36,1),background-color .42s cubic-bezier(.22,1,.36,1),color .28s,border-color .34s,box-shadow .34s,transform .28s cubic-bezier(.22,1,.36,1),opacity .28s}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.auth-shell{background:radial-gradient(circle at 0 0,#bbf7d0c7 0%,#bbf7d000 34%),radial-gradient(circle at right 12%,#dcfce7eb 0%,#dcfce700 28%),linear-gradient(#fff 0%,#f7fff9 45%,#effcf2 100%);min-height:100svh;position:relative;overflow:hidden}.auth-gradient{opacity:.95;background:radial-gradient(circle at 12% 18%,#bbf7d0e0 0%,#bbf7d000 28%),radial-gradient(circle at 82% 14%,#86efac7a 0%,#86efac00 26%),radial-gradient(circle at 50% 90%,#dcfce7eb 0%,#dcfce700 34%);animation:18s ease-in-out infinite auth-gradient-shift;position:absolute;inset:0}.auth-noise{display:none}.auth-layout{grid-template-columns:minmax(320px,1fr) minmax(360px,520px);align-items:center;gap:48px;min-height:100svh;padding:48px 56px;display:grid;position:relative}.auth-layout-minimal{max-width:1280px;margin:0 auto}.auth-story,.auth-panel{z-index:1;position:relative}.auth-story{gap:22px;max-width:580px;display:grid}.auth-kicker{color:#166534;letter-spacing:.14em;text-transform:uppercase;background:#16a34a14;border:1px solid #22c55e24;border-radius:999px;align-items:center;width:fit-content;padding:8px 14px;font-size:12px;font-weight:700;display:inline-flex}.auth-story h1{color:#16301f;letter-spacing:-.06em;max-width:12ch;margin:0;font-size:clamp(3rem,6vw,4.9rem);line-height:.98}.auth-story h1,.auth-mode-slide strong,.auth-account-selector h3{font-family:var(--heading);font-weight:600}.auth-story>p{color:#527060;max-width:52ch;font-size:17px;line-height:1.7}.auth-story-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.auth-illustration{background:linear-gradient(135deg,#ffffffe0,#f0fdf4d6),linear-gradient(#bbf7d038,#0000 72%);border:1px solid #22c55e24;border-radius:32px;min-height:250px;position:relative;overflow:hidden;box-shadow:0 24px 64px #1665341a}.auth-illustration:before,.auth-illustration:after{content:"";filter:blur(4px);background:#86efac33;border-radius:999px;position:absolute}.auth-illustration:before{width:180px;height:180px;top:-54px;right:-42px}.auth-illustration:after{width:140px;height:140px;bottom:-48px;left:-36px}.auth-illustration-grid{background-image:linear-gradient(#16a34a14 1px,#0000 1px),linear-gradient(90deg,#16a34a14 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000000b3,#0000 92%);mask-image:linear-gradient(#000000b3,#0000 92%)}.auth-illustration-card{background:#ffffffdb;border:1px solid #22c55e24;border-radius:22px;gap:4px;max-width:220px;padding:16px 18px;display:grid;position:absolute;box-shadow:0 20px 34px #16653414}.auth-illustration-card span{color:#15803d;letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:800}.auth-illustration-card strong{color:#16301f;letter-spacing:-.05em;font-size:24px}.auth-illustration-card small{color:#688172;font-size:12px;line-height:1.55}.auth-illustration-card-primary{top:34px;left:30px;transform:rotate(-3deg)}.auth-illustration-card-secondary{bottom:34px;right:28px;transform:rotate(4deg)}.auth-illustration-preview{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd6;border:1px solid #22c55e24;border-radius:24px;width:min(270px,100% - 80px);padding:14px;position:absolute;top:54%;left:50%;transform:translate(-50%,-50%);box-shadow:0 22px 44px #16653417}.auth-preview-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.auth-preview-head strong{color:#16301f;font-size:14px;font-family:var(--sans)}.auth-preview-head span{color:#5c7865;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.auth-preview-grid{grid-template-columns:32px repeat(5,1fr);align-items:center;gap:6px;display:grid}.auth-preview-label{color:#6b8174;font-size:11px;font-weight:700}.auth-preview-cell{background:#22c55e14;border:1px solid #22c55e14;border-radius:999px;min-height:18px;display:block}.auth-preview-cell.booked{background:linear-gradient(90deg,#22c55e,#16a34a);border-color:#16a34a3d}.auth-preview-cell.partial{background:linear-gradient(90deg,#86efac,#4ade80);border-color:#22c55e33}.auth-preview-cell.maintenance{background:linear-gradient(90deg,#d9f99d,#bef264);border-color:#84cc1638}.auth-preview-cell.free{background:#f0fdf4f2;border-color:#22c55e1f}.auth-illustration-node{background:linear-gradient(#4ade80,#22c55e);border-radius:50%;width:14px;height:14px;position:absolute;box-shadow:0 0 0 8px #bbf7d06b}.auth-illustration-node:after{content:"";transform-origin:0;background:#22c55e47;width:88px;height:1px;position:absolute;inset:50% auto auto 50%}.auth-illustration-node-a{top:76px;right:168px}.auth-illustration-node-a:after{transform:rotate(38deg)}.auth-illustration-node-b{bottom:104px;left:198px}.auth-illustration-node-b:after{width:120px;transform:rotate(-24deg)}.auth-illustration-node-c{top:150px;left:136px}.auth-illustration-node-c:after{width:66px;transform:rotate(12deg)}.auth-story-card{background:#ffffffb3;border:1px solid #22c55e1f;border-radius:24px;gap:8px;padding:18px;display:grid;box-shadow:0 18px 48px #16653414}.auth-story-card strong{color:#16301f;font-size:15px}.auth-story-card span{color:#688172;font-size:13px;line-height:1.55}.auth-panel-minimal{-webkit-backdrop-filter:blur(14px);background:#ffffffd1;border:1px solid #22c55e29;border-radius:36px;overflow:hidden;box-shadow:0 30px 80px #1665341f,inset 0 1px #ffffffd1}.auth-panel-surface{gap:20px;padding:26px;display:grid;position:relative}.auth-panel-surface:before{content:"";background:linear-gradient(135deg, #dcfce7db 0%, #fff0 40%), radial-gradient(circle at calc(16% + (var(--auth-mode-index) * 30%)) 10%, #86efac3d 0%, #86efac00 24%);pointer-events:none;transition:background .45s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.auth-brand-head{z-index:1;align-items:center;gap:14px;display:flex;position:relative}.auth-brand-logo{color:#f0fdf4;background:linear-gradient(#166534,#22c55e);border-radius:16px;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 12px 24px #22c55e38}.auth-brand-head strong{color:#16301f;margin-bottom:4px;font-size:15px;display:block}.auth-brand-head p{color:#6b8174;font-size:13px}.auth-tabs-slider{grid-template-columns:repeat(var(--auth-tab-count), minmax(0, 1fr));z-index:1;background:#f5fbf6;border:1px solid #16a34a1f;border-radius:999px;padding:6px;display:grid;position:relative}.auth-tab-indicator{width:calc((100% - 12px) / var(--auth-tab-count));transform:translateX(calc(var(--auth-mode-index) * 100%));background:linear-gradient(#22c55e,#16a34a);border-radius:999px;transition:transform .38s cubic-bezier(.22,1,.36,1);position:absolute;top:6px;bottom:6px;left:6px;box-shadow:0 10px 20px #22c55e3d}.auth-tab{z-index:1;color:#4f6959;cursor:pointer;letter-spacing:-.01em;background:0 0;border:none;border-radius:999px;padding:12px 14px;font-weight:700;position:relative}.auth-tab.active{color:#fff}.auth-mode-window{background:linear-gradient(#f8fff9,#effcf2);border:1px solid #22c55e1f;border-radius:24px;overflow:hidden}.auth-card-stage{z-index:1;transition:height .42s cubic-bezier(.22,1,.36,1);position:relative;overflow:hidden}.auth-card-stage-inner{transition:transform .44s cubic-bezier(.22,1,.36,1),opacity .28s;display:grid}.auth-card-stage-inner[data-mode=login],.auth-card-stage-inner[data-mode=register],.auth-card-stage-inner[data-mode=forgot]{transform:translate(0)}.auth-mode-track{grid-template-columns:repeat(var(--auth-tab-count), 100%);transform:translateX(calc(var(--auth-mode-index) * -100%));transition:transform .45s cubic-bezier(.22,1,.36,1);display:grid}.auth-mode-slide{gap:8px;padding:20px 22px;display:grid}.auth-mode-slide span{color:#15803d;letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:800}.auth-mode-slide strong{color:#16301f;letter-spacing:-.04em;font-size:24px}.auth-mode-slide p{color:#688172;font-size:14px;line-height:1.6}.auth-feedback{border:1px solid #0000;border-radius:18px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:14px;display:flex}.auth-feedback.info{color:#166534;background:#bbf7d047;border-color:#22c55e29}.auth-feedback.error{color:#991b1b;background:#fee2e2d6;border-color:#ef444429}.auth-feedback.success{color:#166534;background:#dcfce7eb;border-color:#22c55e2e}.auth-account-selector,.auth-form{z-index:1;gap:14px;display:grid;position:relative}.auth-form-stage{animation:.38s cubic-bezier(.22,1,.36,1) both auth-form-enter}.auth-form-stage-login{animation-name:auth-form-enter-left}.auth-form-stage-register{animation-name:auth-form-enter-right}.auth-form-stage-forgot{animation-name:auth-form-enter-up}.auth-account-selector{background:#ffffffb8;border:1px solid #22c55e1f;border-radius:24px;padding:16px}.auth-account-selector h3{color:#16301f;margin:0;font-size:18px}.auth-account-list{gap:10px;display:grid}.auth-account-item-wrapper{grid-template-columns:1fr auto;align-items:center;gap:10px;display:grid}.auth-account-item,.auth-account-remove{background:#fff;border:1px solid #22c55e1f}.auth-account-item{text-align:left;cursor:pointer;border-radius:18px;align-items:center;gap:12px;width:100%;padding:12px;display:flex}.auth-account-avatar{color:#166534;background:linear-gradient(#bbf7d0,#86efac);border-radius:50%;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.auth-account-info{gap:3px;display:grid}.auth-account-info strong{color:#16301f;font-size:14px}.auth-account-info span{color:#688172;font-size:12px}.auth-account-hint{color:var(--accent-strong,#0ea5e9);letter-spacing:.03em;font-size:11px;font-weight:600}.auth-account-remove{color:#4f6959;cursor:pointer;border-radius:14px;place-items:center;width:38px;height:38px;display:grid}.auth-field{gap:8px;display:grid}.auth-field>span{color:#51705e;letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:700}.auth-input-group{position:relative}.auth-input-icon{color:#6f8f7a;align-items:center;display:flex;position:absolute;inset:0 auto 0 14px}.auth-field .input,.auth-panel .input.with-icon{box-sizing:border-box;color:#16301f;background:#ffffffeb;border:1px solid #22c55e24;border-radius:18px;width:100%;min-height:54px;padding-left:46px;box-shadow:inset 0 1px #fffc}.auth-field .input::placeholder,.auth-panel .input.with-icon::placeholder{color:#9aaea0}.auth-field .input:focus,.auth-panel .input.with-icon:focus{border-color:#16a34a61;outline:none;box-shadow:0 0 0 4px #bbf7d080}.auth-strength-meter{gap:6px;display:grid}.auth-strength-meter span{color:#688172;font-size:12px}.auth-strength-bar{background:#16a34a1a;border-radius:999px;height:6px;overflow:hidden}.auth-strength-bar div{border-radius:inherit;background:linear-gradient(90deg,#86efac,#22c55e);width:0;height:100%;transition:width .24s}.auth-strength-meter.weak .auth-strength-bar div{width:42%}.auth-strength-meter.good .auth-strength-bar div{width:100%}.auth-actions{gap:10px;margin-top:4px;display:grid}.auth-submit,.auth-magic{border-radius:18px;width:100%;min-height:52px;padding:12px 16px;font-weight:700}.auth-submit{color:#fff;background:linear-gradient(#22c55e,#16a34a);border:none;box-shadow:0 16px 28px #22c55e38}.auth-magic{color:#166534;background:#fff;border:1px solid #22c55e24}.auth-submit.loading{opacity:.82}.auth-oauth-divider{align-items:center;gap:12px;margin:4px 0;display:flex}.auth-oauth-divider:before,.auth-oauth-divider:after{content:"";background:#ffffff1f;flex:1;height:1px}.auth-oauth-divider span{color:var(--muted);white-space:nowrap;font-size:12px}.auth-oauth-btn{border-radius:14px;flex:1;justify-content:center;align-items:center;gap:8px;min-height:44px;font-size:13px;font-weight:600;display:inline-flex}.auth-other-account{margin-top:2px}.auth-global-footer{z-index:1;color:#76907e;justify-content:space-between;gap:12px;padding-top:6px;font-size:12px;display:flex;position:relative}.quote-builder-card{border-radius:28px;gap:22px;margin-top:24px;padding:24px;display:grid;position:relative}.quote-builder-card.is-busy{pointer-events:auto}.quote-builder-loading-overlay{z-index:5;background:color-mix(in srgb, var(--overlay-bg) 82%, white 18%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:28px;justify-content:center;align-items:center;padding:20px;animation:.18s both overlay-fade;display:flex;position:absolute;inset:0}.quote-builder-loading-card{text-align:center;background:color-mix(in srgb, var(--feature-panel-solid) 96%, white 4%);border:1px solid var(--shell-border);min-width:min(320px,100%);max-width:420px;box-shadow:var(--shadow-soft);border-radius:24px;justify-items:center;gap:10px;padding:24px 22px;display:grid}.quote-builder-loading-card strong{color:var(--text-h);font-size:18px}.quote-builder-loading-card small{color:var(--muted);line-height:1.5}.quote-builder-progress-track{background:color-mix(in srgb, var(--shell-border) 70%, white 30%);border-radius:999px;width:100%;height:8px;overflow:hidden}.quote-builder-progress-track>span{border-radius:inherit;background:linear-gradient(90deg, var(--accent-strong), var(--accent));height:100%;transition:width .18s;display:block}.quote-builder-spinner{border:3px solid color-mix(in srgb, var(--accent) 18%, var(--shell-border));border-top-color:var(--accent-strong);border-radius:999px;width:42px;height:42px;animation:.72s linear infinite quote-spin}.quote-builder-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.quote-builder-head h3{margin:6px 0 8px;font-size:24px}.quote-head-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.quote-builder-layout{grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);align-items:start;gap:22px;display:grid}.quote-builder-form-grid{gap:18px;display:grid}.quote-builder-panel{background:color-mix(in srgb, var(--feature-panel-soft) 88%, transparent);border:1px solid var(--shell-border);border-radius:22px;gap:14px;padding:18px;display:grid}.quote-builder-panel h4{color:var(--text-h);margin:0;font-size:16px}.quote-design-head p{margin:6px 0 0}.quote-design-preset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.quote-design-preset-card{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-solid) 94%, transparent);text-align:left;color:var(--text-h);cursor:pointer;border-radius:18px;gap:10px;padding:14px;display:grid}.quote-design-preset-card.active{border-color:color-mix(in srgb, var(--accent) 48%, var(--shell-border));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 22%, transparent)}.quote-design-preset-swatches{gap:6px;display:flex}.quote-design-preset-swatches i{border:1px solid #0f172a14;border-radius:999px;width:26px;height:26px;display:block}.quote-color-input{min-block-size:46px;inline-size:100%;padding:6px}.quote-design-mini-preview{border:1px dashed var(--shell-border);background:color-mix(in srgb, var(--feature-panel-solid) 80%, transparent);border-radius:18px;padding:14px}.quote-design-mini-sheet{border:1px solid color-mix(in srgb, var(--quote-design-accent,var(--accent)) 24%, white 76%);background:linear-gradient(180deg, var(--quote-design-paper,#fff), var(--quote-design-soft,#f3f4f6));min-height:150px;color:var(--quote-design-ink,var(--text-h));border-radius:22px;align-content:space-between;gap:10px;padding:18px;display:grid}.quote-design-mini-sheet.square{border-radius:6px}.quote-design-mini-sheet strong{font-size:22px}.quote-design-mini-sheet span{color:color-mix(in srgb, var(--quote-design-ink,var(--text-h)) 66%, white 34%)}.quote-design-mini-badge{background:var(--quote-design-accent,var(--accent));color:#fff;letter-spacing:.08em;border-radius:999px;justify-self:start;padding:6px 10px;font-size:11px;font-weight:700}.quote-line-items-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.quote-line-items-head p{margin:6px 0 0}.quote-line-items-grid{gap:14px;display:grid}.quote-line-item-card{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-solid) 92%, transparent);border-radius:18px;gap:14px;padding:16px;display:grid}.quote-line-item-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.quote-line-item-head strong{color:var(--text-h);display:block}.quote-line-item-head span{color:var(--muted);font-size:13px}.quote-grid{gap:14px;display:grid}.quote-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-grid.one{grid-template-columns:minmax(0,1fr)}.quote-grid label,.quote-builder-panel label{gap:8px;display:grid}.quote-grid label>span,.quote-builder-panel label>span{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:700}.quote-grid-span-full{grid-column:1/-1}.quote-textarea{resize:vertical;min-height:92px}.quote-rate-mode-row{flex-wrap:wrap;gap:10px;display:flex}.quote-rate-mode{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-solid) 90%, transparent);color:var(--text-h);cursor:pointer;border-radius:999px;min-height:42px;padding:0 14px;font-weight:700}.quote-rate-mode.active{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 22%, transparent), color-mix(in srgb, var(--accent-strong) 28%, transparent));border-color:color-mix(in srgb, var(--accent) 42%, var(--shell-border))}.quote-builder-preview{min-width:0}.quote-preview-sticky{gap:14px;display:grid;position:sticky;top:92px}.quote-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.quote-preview-card,.quote-preview-total-card,.quote-preview-legal-note{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-solid) 94%, transparent);border-radius:22px;gap:6px;padding:18px;display:grid}.quote-preview-card.accent{background:linear-gradient(135deg, color-mix(in srgb, var(--accent-bg) 76%, transparent), color-mix(in srgb, var(--feature-panel-solid) 94%, transparent))}.quote-preview-card span,.quote-preview-total-card span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:11px;font-weight:700}.quote-preview-card strong,.quote-preview-total-card strong{color:var(--text-h);font-size:22px;line-height:1.1}.quote-preview-card small,.quote-preview-total-card small,.quote-preview-legal-note p{color:var(--muted);line-height:1.55}.quote-preview-total-card{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 18%, transparent), color-mix(in srgb, var(--feature-panel-solid) 96%, transparent))}.quote-preview-legal-note strong{color:var(--text-h)}.quote-preview-pdf-frame-card{gap:12px}.quote-preview-frame-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.quote-preview-frame{border:1px solid var(--shell-border);background:#fff;border-radius:18px;width:100%;min-height:720px}.quote-image-preview-card{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-solid) 92%, transparent);border-radius:18px;gap:10px;padding:14px;display:grid}.quote-logo-preview-card{justify-items:start}.quote-logo-preview{object-fit:contain;max-width:220px;max-height:72px;display:block}.quote-gallery-preview-grid{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));align-items:start;gap:10px;display:grid}.quote-gallery-preview-item{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-solid) 94%, transparent);border-radius:16px;min-height:88px;overflow:hidden}.quote-gallery-preview-image{object-fit:cover;width:100%;height:100%;min-height:88px;display:block}.admin-root{max-width:1200px;margin:0 auto;padding:28px 40px}.admin-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.logo{color:#0000;background:linear-gradient(90deg,#7c3aed,#06b6d4);-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:700}.admin-nav a{color:var(--text);margin-left:16px;font-weight:500;text-decoration:none}.hero{border:1px solid var(--border);background:linear-gradient(#7a59ff0f,#0000 70%);border-radius:12px;justify-content:space-between;align-items:center;padding:28px;display:flex}.hero-content h1{margin:0 0 8px;font-size:40px}.hero-sub{color:var(--text);margin:0 0 18px}.hero-actions{align-items:center;gap:12px;display:flex}.cta-button{background:linear-gradient(90deg, var(--accent), var(--accent-strong));color:#fff;cursor:pointer;box-shadow:var(--shadow);border:none;border-radius:10px;padding:10px 18px}.cta-ghost{color:var(--text-h);background:0 0;border:1px solid #0000;border-radius:8px;padding:8px 12px;text-decoration:none}.hero-visual{justify-content:center;align-items:center;display:flex}.progress-ring{color:#fff;width:120px;height:120px;box-shadow:var(--shadow);background:linear-gradient(#0ea5a4,#7c3aed);border-radius:999px;justify-content:center;align-items:center;display:flex}.ring-value{font-size:20px;font-weight:700}.stats{gap:16px;margin-top:18px;display:flex}.auth-text-link{color:var(--accent-strong);font:inherit;letter-spacing:.01em;cursor:pointer;background:0 0;border:0;justify-self:flex-start;width:fit-content;padding:0;font-weight:600;transition:color .18s,transform .18s}.auth-text-link:hover{color:var(--accent);transform:translate(2px)}.auth-text-link:disabled{opacity:.56;cursor:not-allowed;transform:none}.card{border:1px solid var(--border);background:linear-gradient(#fff9,#ffffff4d);border-radius:10px;flex:1;padding:16px}.card-title{color:var(--text);font-size:14px}.card-value{color:var(--text-h);margin-top:6px;font-size:22px;font-weight:700}@media (width<=768px){.auth-layout{grid-template-columns:1fr;gap:28px;padding:24px 18px 28px}.auth-story{gap:18px;max-width:none}.auth-story h1{max-width:none;font-size:clamp(2.5rem,11vw,3.5rem)}.auth-story-grid{grid-template-columns:1fr}.auth-illustration{min-height:220px}.auth-illustration-preview{width:min(230px,100% - 56px);padding:12px;top:56%}.auth-preview-grid{grid-template-columns:28px repeat(5,1fr);gap:5px}.auth-illustration-card{max-width:180px;padding:14px 15px}.auth-illustration-card strong{font-size:20px}.auth-illustration-card-secondary{bottom:20px;right:18px}.auth-illustration-card-primary{top:22px;left:18px}.auth-illustration-node-a{right:120px}.auth-illustration-node-b{bottom:78px;left:146px}.auth-illustration-node-c{top:132px;left:98px}.auth-panel-surface{padding:20px}.auth-global-footer{flex-direction:column}.auth-tab{padding-inline:8px;font-size:13px}.quote-builder-card{padding:18px}.quote-builder-head,.quote-builder-layout{grid-template-columns:1fr;display:grid}.quote-head-actions,.quote-preview-frame-head{justify-content:stretch}.quote-head-actions>*,.quote-preview-frame-head>.btn{width:100%}.quote-grid.two,.quote-preview-grid,.quote-design-preset-grid{grid-template-columns:1fr}.quote-preview-sticky{position:static}.quote-preview-frame{min-height:500px}}@keyframes auth-form-enter-left{0%{opacity:0;transform:translate(-24px)scale(.985)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes auth-form-enter-right{0%{opacity:0;transform:translate(24px)scale(.985)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes quote-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes auth-form-enter-up{0%{opacity:0;transform:translateY(18px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.dashboard-root{background:var(--shell-bg);width:100vw;height:100vh;color:var(--text-h);display:flex;overflow:hidden}.dashboard-shell{background:var(--shell-bg);flex-direction:column;flex:1;gap:16px;min-width:0;height:100vh;margin-left:90px;padding:16px;transition:margin-left .4s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden auto}.sidebar-cluster:hover+.dashboard-shell{margin-left:310px}.sidebar-backdrop{opacity:0;pointer-events:none;z-index:45;background:#02061785;transition:opacity .18s;position:fixed;inset:0}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.sidebar-cluster{z-index:100;isolation:isolate;align-items:stretch;gap:14px;height:calc(100vh - 40px);transition:width .4s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:20px;left:20px}.sidebar-rail{background:color-mix(in srgb, var(--sidebar-bg) 85%, transparent);border:1px solid var(--shell-border);-webkit-backdrop-filter:blur(26px);z-index:10;border-radius:24px;flex-direction:column;align-items:center;gap:16px;width:70px;padding:14px 6px;transition:opacity .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 12px 32px #0206171f}.sidebar{background:color-mix(in srgb, var(--sidebar-bg) 94%, #000);width:280px;height:100%;color:var(--muted);border:1px solid var(--shell-border);-webkit-backdrop-filter:blur(32px);opacity:0;pointer-events:none;z-index:20;border-radius:28px;flex-direction:column;gap:12px;padding:16px;transition:opacity .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:0;left:0;transform:translate(-12px)scale(.99);box-shadow:0 28px 64px #02061773}.sidebar-cluster:hover .sidebar{opacity:1;pointer-events:auto;transform:translate(0)scale(1)}.sidebar-cluster:hover .sidebar-rail{opacity:0;pointer-events:none;transform:scale(.95)}.sidebar-top{justify-content:space-between;align-items:center;gap:12px;min-height:16px;padding:2px 2px 0;display:flex}.brand-lockup{align-items:center;gap:12px;min-width:0;display:flex}.sidebar-brand-lockup{border-bottom:1px solid var(--shell-border-subtle);align-items:center;width:100%;padding:4px 8px 10px 6px}.brand-badge{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;letter-spacing:.04em;width:42px;height:42px;box-shadow:var(--shadow);border-radius:14px;justify-content:center;align-items:center;font-weight:700;display:flex}.brand-copy{flex-direction:column;justify-content:center;min-width:0;display:flex}.sidebar .brand{color:var(--text-h);margin:0;font-size:18px;font-weight:700;line-height:1.1}.brand-copy span{color:var(--muted);margin-top:2px;font-size:11px;font-weight:500}.menu{flex-direction:column;flex:1;gap:6px;padding-right:4px;display:flex;overflow-y:auto}.menu::-webkit-scrollbar{width:4px}.menu::-webkit-scrollbar-thumb{background:var(--shell-border);border-radius:10px}.menu-item{color:var(--muted);border:1px solid #0000;border-radius:14px;grid-template-columns:20px minmax(0,1fr);align-items:center;column-gap:12px;padding:10px 14px;text-decoration:none;transition:all .2s;display:grid}.menu-item:hover{background:var(--sidebar-item-hover);color:var(--text-h);transform:translate(4px)}.menu-item.active{background:var(--sidebar-item-active);color:var(--text-h);border-color:var(--accent-border);box-shadow:0 4px 12px rgba(var(--accent-rgb), .15)}.menu-icon{width:20px;height:20px;color:inherit;justify-content:center;align-items:center;display:flex}.menu-icon svg{width:18px;height:18px;display:block}.menu-label{white-space:nowrap;font-size:13.5px;font-weight:500}.sidebar-footer{border:1px solid var(--shell-border);color:var(--muted);background:#ffffff08;border-radius:18px;flex-direction:column;gap:4px;margin-top:auto;padding:14px;font-size:11px;display:flex}.sidebar-footer strong{color:var(--text-h);font-size:13px}.logout-button{color:#f87171;cursor:pointer;background:#ef444411;border:1px solid #ef444433;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:8px;padding:10px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.logout-button:hover{color:#ef4444;background:#ef444422;border-color:#ef444455}.sidebar-rail-item{width:42px;height:42px;color:var(--muted);border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;text-decoration:none;transition:all .2s;display:flex}.sidebar-rail-item:hover{background:var(--sidebar-item-hover);color:var(--text-h);transform:scale(1.05)}.sidebar-rail-head{flex-direction:column;justify-content:flex-start;align-items:center;gap:10px;width:100%;min-height:99px;padding-bottom:2px;display:flex}.sidebar-rail-toggle{background:color-mix(in srgb, var(--shell-panel-strong) 92%, transparent);width:36px;height:36px;color:var(--text-h);cursor:pointer;border:none;border:1px solid var(--shell-border);border-radius:14px;justify-content:center;align-items:center;display:flex;box-shadow:0 10px 20px #0206171f}.sidebar-rail-toggle svg{width:18px;height:18px;display:block}.sidebar-rail-menu{flex-direction:column;flex:1;align-items:center;gap:12px;width:100%;padding-top:4px;display:flex}.sidebar-rail-item{width:40px;height:40px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;text-decoration:none;display:flex}.sidebar-rail-item:hover{background:var(--sidebar-item-hover);border-color:var(--shell-border)}.sidebar-rail-item.active{background:var(--sidebar-item-active);color:var(--text-h);border-color:var(--accent-border)}.sidebar-rail-icon{justify-content:center;align-items:center;display:flex}.sidebar-rail-icon svg{width:18px;height:18px;display:block}.topbar{z-index:40;background:color-mix(in srgb, var(--sidebar-bg) 72%, transparent);border:1px solid var(--shell-border);-webkit-backdrop-filter:blur(22px);border-radius:24px;justify-content:space-between;align-items:center;gap:18px;margin:16px 24px 0;padding:18px 24px;display:flex;position:sticky;top:16px;box-shadow:0 20px 48px #0206171f}.topbar-left,.topbar-right{align-items:center;gap:12px;display:flex}.topbar-right{flex-wrap:wrap;justify-content:flex-end;position:relative}.topbar-heading{flex-direction:column;gap:2px;min-width:0;display:flex}.topbar-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:11px}.topbar-heading strong{color:var(--text-h);font-size:18px;line-height:1.2}.topbar-heading span:last-child{color:var(--muted);font-size:13px}.topbar-role-pill{background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--text-h);white-space:nowrap;border-radius:999px;align-items:center;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.notification-center{position:relative}.notification-trigger{border:1px solid var(--shell-border);background:var(--shell-panel);width:44px;height:44px;color:var(--text-h);cursor:pointer;border-radius:16px;justify-content:center;align-items:center;display:inline-flex;position:relative;box-shadow:0 10px 24px #02061714}.notification-trigger:hover,.notification-trigger.active{border-color:var(--accent-border);background:color-mix(in srgb, var(--accent-bg) 35%, var(--shell-panel))}.notification-trigger.paused{color:var(--muted)}.notification-trigger svg{width:18px;height:18px;display:block}.notification-badge{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;border:2px solid var(--shell-panel-strong);border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:-6px;right:-6px}.notification-panel{background:var(--shell-panel-strong);border:1px solid var(--shell-border-strong);z-index:90;-webkit-backdrop-filter:blur(20px);border-radius:24px;grid-template-rows:auto 1fr;width:min(390px,100vw - 48px);max-height:min(72vh,620px);display:grid;position:absolute;top:calc(100% + 12px);right:0;overflow:hidden;box-shadow:0 28px 64px #02061747}.notification-panel-head{border-bottom:1px solid var(--shell-border);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 18px 14px;display:flex}.notification-panel-head strong{color:var(--text-h);margin-bottom:4px;font-size:15px;display:block}.notification-panel-head span{color:var(--muted);font-size:12px}.notification-list{gap:10px;padding:14px;display:grid;overflow:auto}.notification-item{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 80%, transparent);border-radius:18px;gap:12px;padding:14px;display:grid}.notification-item.info{border-color:color-mix(in srgb, var(--accent-border) 80%, var(--shell-border))}.notification-item.success{border-color:color-mix(in srgb, var(--success) 42%, var(--shell-border))}.notification-item.warning{border-color:color-mix(in srgb, var(--warning) 46%, var(--shell-border))}.notification-item.danger{border-color:color-mix(in srgb, var(--danger) 42%, var(--shell-border))}.notification-item.is-read{opacity:.78}.notification-item-main{gap:8px;display:grid}.notification-item-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.notification-item-head strong{color:var(--text-h);font-size:14px}.notification-item p{color:var(--text);font-size:13px;line-height:1.5}.notification-item span{color:var(--muted);font-size:12px}.notification-dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 14%, transparent);border-radius:999px}.notification-item-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.notification-text-button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.notification-text-button.danger{color:var(--danger)}.notification-empty-state{color:var(--muted);gap:8px;padding:18px;display:grid}.notification-empty-state strong{color:var(--text-h)}.theme-switcher{background:var(--shell-panel);border:1px solid var(--shell-border);border-radius:999px;align-items:center;gap:8px;padding:6px;display:flex}.theme-chip{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:8px 12px;font-weight:600}.theme-chip.active{background:var(--accent-bg);color:var(--text-h);box-shadow:0 10px 26px var(--accent-bg);transform:translateY(-1px)}.dashboard-main{flex:1;padding:20px 24px 24px}.admin-home-minimal{max-width:1400px;margin:0 auto;padding:16px;animation:.4s ease-out fadeIn}.dashboard-header-modern{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.dashboard-chip-group{background:var(--shell-panel);border:1px solid var(--shell-border);border-radius:12px;gap:8px;padding:4px;display:flex}.dashboard-chip{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600;transition:all .2s}.dashboard-chip.active{background:var(--accent-bg);color:var(--accent)}.dashboard-grid-modern{grid-template-columns:1fr 320px;gap:24px;display:grid}.stat-grid-compact{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.stat-panel{background:var(--shell-panel);border:1px solid var(--shell-border);cursor:pointer;border-radius:20px;flex-direction:column;padding:20px;transition:all .2s cubic-bezier(.175,.885,.32,1.275);display:flex}.stat-panel:hover{border-color:var(--accent-border);background:var(--shell-panel-strong);transform:translateY(-4px)}.stat-panel.active{border-color:var(--accent);background:var(--accent-bg)}.stat-label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:4px;font-size:12px}.stat-meta{color:var(--muted);margin-top:8px;font-size:11px}.stat-panel.highlight{background:linear-gradient(135deg, var(--accent-bg), #7c3aed1a)}.chart-container-modern{margin-bottom:24px;padding:24px}.chart-header-modern{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.minimal-select{border-radius:10px;padding:8px 12px;font-size:13px}.sub-grid-modern{grid-template-columns:1fr 280px;gap:24px;display:grid}.activity-compact-list{flex-direction:column;gap:12px;margin-top:16px;display:flex}.activity-row{background:#ffffff05;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.status-dot{background:var(--muted);border-radius:50%;width:8px;height:8px}.status-dot.confirmada,.status-dot.checkout{background:var(--success)}.status-dot.pendiente,.status-dot.checkin{background:var(--warning)}.status-dot.cancelada{background:var(--danger)}.quick-actions-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;display:grid}.action-tile{background:var(--shell-elevated);border:1px solid var(--shell-border);cursor:pointer;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;transition:all .2s;display:flex}.action-tile:hover{background:var(--accent-bg);border-color:var(--accent);transform:scale(1.02)}.action-icon{font-size:20px}.action-name{color:var(--text-h);font-size:12px;font-weight:600}.summary-bullets{flex-direction:column;gap:10px;margin-top:16px;display:flex}.summary-bullet{background:#ffffff05;border-radius:10px;justify-content:space-between;padding:10px 14px;display:flex}.bullet-label{color:var(--muted);font-size:13px}.bullet-value{color:var(--text-h);font-size:13px;font-weight:700}.promo-card-minimal{background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid #ffffff0d;border-radius:20px;margin-top:24px;padding:20px}.promo-content strong{color:#fff;margin-bottom:6px;display:block}.promo-content p{color:var(--muted);margin-bottom:16px;font-size:13px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=1200px){.dashboard-grid-modern{grid-template-columns:1fr}.stat-grid-compact{grid-template-columns:1fr 1fr}}.dashboard-route-stage{min-width:0;animation:.48s cubic-bezier(.22,1,.36,1) both route-fade}.dashboard-route-stage>*{min-width:0}.dashboard-route-stage>*>*{opacity:1;animation:.56s cubic-bezier(.22,1,.36,1) both section-reveal;transform:translateY(0)scale(1)}.dashboard-route-stage>*>:first-child{animation-delay:40ms}.dashboard-route-stage>*>:nth-child(2){animation-delay:.1s}.dashboard-route-stage>*>:nth-child(3){animation-delay:.16s}.dashboard-route-stage>*>:nth-child(4){animation-delay:.22s}.dashboard-route-stage>*>:nth-child(5){animation-delay:.28s}.dashboard-route-stage>*>:nth-child(6){animation-delay:.34s}@media (prefers-reduced-motion:reduce){.dashboard-route-stage,.dashboard-route-stage>*>*{opacity:1;animation:none;transform:none}}.dashboard-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.dashboard-header h2{color:var(--text-h);margin:0}.dashboard-grid{grid-template-columns:minmax(0,1fr) 320px;gap:22px;display:grid}.left-col,.right-col{flex-direction:column;gap:22px;display:flex}.card{background:var(--card-bg);border:1px solid var(--shell-border);color:var(--text-h);box-shadow:var(--shadow);border-radius:16px;padding:14px}.card.horizontal{padding:20px}.card .card-body{flex-direction:column;gap:12px;display:flex}.cards-row{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.cards-row>*{min-width:0}.dashboard-stat-button{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;min-width:0;padding:0;display:block}.dashboard-stat-button .stat-card{box-sizing:border-box;border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent);border-radius:18px;width:100%;height:100%;padding:14px 16px;overflow:hidden}.dashboard-stat-button.active .stat-card{border-color:var(--accent-border);box-shadow:0 18px 34px color-mix(in srgb, var(--accent) 16%, transparent)}.dashboard-stat-button.passive{cursor:default}.dashboard-filter-bar{border-top:1px solid var(--shell-border);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin:12px 0 14px;padding-top:14px;display:flex}.dashboard-filter-group{gap:8px;display:grid}.dashboard-filter-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.dashboard-filter-select{min-width:180px}.dashboard-date-range-group{min-width:min(100%,320px)}.dashboard-date-range{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dashboard-date-input{min-width:140px}.dashboard-date-separator{color:var(--muted);text-transform:uppercase;font-size:13px;font-weight:700}.dashboard-chip-group{flex-wrap:wrap;gap:8px;display:flex}.dashboard-chip{border:1px solid var(--shell-border);color:var(--text-h);cursor:pointer;background:0 0;border-radius:999px;padding:8px 12px;font-weight:600}.dashboard-chip.active{background:var(--accent-bg);border-color:var(--accent-border)}.stat-card{box-sizing:border-box;background:0 0;border-radius:8px;min-width:0;padding:12px}.desktop-only{display:inline-flex}.mobile-only{display:none}.stat-title{color:var(--muted);font-size:13px}.stat-value{color:var(--text-h);font-size:22px;font-weight:700}.stat-small{color:var(--accent);font-size:12px}.chart-wrap h3{color:var(--text-h);margin:0 0 8px}.line-chart{width:100%;height:160px}.small-grid{gap:12px;display:flex}.small-item{flex-direction:column;flex:1;align-items:center;gap:8px;display:flex}.donut-chart{width:120px;height:120px}.weekly-activity-card{text-align:left;align-items:stretch}.weekly-activity-summary{color:var(--muted);justify-content:space-between;gap:12px;margin-top:6px;font-size:13px;display:flex}.neon-card{background:var(--feature-panel-bg);border:1px solid var(--shell-border-strong);box-shadow:var(--shadow)}.line-chart-wrapper{padding:6px 0}.line-multi{width:100%;height:160px;display:block}.line-multi .glow-point{filter:drop-shadow(0 6px 18px #7c3aed59)}.bar-chart.neon{grid-template-columns:repeat(auto-fit,minmax(0,1fr));align-items:end;gap:8px;min-height:146px;padding:8px;display:grid}.bar-chart-column{flex-direction:column;justify-content:flex-end;align-items:center;gap:10px;min-width:0;height:130px;display:flex}.bar-chart.neon .bar{background:linear-gradient(#7c3aedf2,#06b6d4f2);border-radius:8px 8px 0 0;width:100%;max-width:28px;min-height:6px;transition:transform .18s;box-shadow:inset 0 10px 30px #0009,0 8px 20px #06b6d414}.bar-chart.neon .bar:hover{transform:translateY(-6px);box-shadow:0 18px 40px #6366f12e}.bar-chart.neon .bar.max{background:linear-gradient(#ff41bb,#ff7ab6);box-shadow:0 12px 34px #ff41bb2e}.bar-label{color:var(--muted);text-align:center;white-space:nowrap;font-size:12px;line-height:1}.pie-donut{display:block}.pie-donut path{filter:drop-shadow(0 8px 28px #7c3aed2e)}.page .grid{display:grid}.bar-chart{align-items:flex-end;gap:6px;height:84px;display:flex}.bar{background:linear-gradient(#06b6d4,#7c3aed);border-radius:6px;width:18px}.summary-list,.activity-list{color:var(--text);margin:8px 0 0;padding-left:16px}.recent-activity-body{gap:16px}.recent-activity-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.recent-activity-pill{background:var(--accent-bg);color:var(--text-h);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.recent-activity-list{gap:14px;display:grid}.recent-activity-item{grid-template-columns:34px minmax(0,1fr);align-items:flex-start;gap:12px;display:grid}.recent-activity-marker{background:var(--card-bg-soft);border:1px solid var(--shell-border);width:34px;height:34px;color:var(--text-h);border-radius:12px;justify-content:center;align-items:center;font-weight:700;display:flex}.recent-activity-content{padding:4px 0 14px;position:relative}.recent-activity-item:not(:last-child) .recent-activity-content:after{content:"";background:var(--shell-border-strong);width:1px;height:calc(100% - 20px);position:absolute;top:38px;left:-29px}.recent-activity-status{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;font-size:12px;font-weight:700}.recent-activity-content p{color:var(--text);line-height:1.5}.trainer-dashboard-page{gap:18px;display:grid}.trainer-dashboard-header{align-items:flex-end;gap:16px}.trainer-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.trainer-hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.85fr);gap:18px;display:grid}.trainer-identity-card,.trainer-next-session-card,.trainer-trend-card,.trainer-timeline-card,.trainer-members-card,.trainer-occupancy-card,.trainer-alerts-card,.trainer-actions-card{background:linear-gradient(180deg, color-mix(in srgb, var(--card-bg) 92%, transparent), color-mix(in srgb, var(--feature-panel-soft) 82%, transparent))}.trainer-identity-card{gap:18px;padding:20px;display:grid}.trainer-identity-top{align-items:center;gap:16px;display:flex}.trainer-identity-avatar{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;letter-spacing:.08em;width:64px;height:64px;box-shadow:0 16px 34px color-mix(in srgb, var(--accent) 24%, transparent);border-radius:20px;justify-content:center;align-items:center;font-size:1.2rem;font-weight:800;display:flex}.trainer-identity-copy h3{color:var(--text-h);margin:0;font-size:1.4rem}.trainer-identity-copy p{color:var(--muted);margin:6px 0 0}.trainer-identity-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin-bottom:8px;font-size:11px;display:inline-flex}.trainer-identity-pills{flex-wrap:wrap;gap:10px;display:flex}.trainer-identity-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.trainer-identity-meta div{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-softer) 86%, transparent);border-radius:16px;padding:14px 16px}.trainer-identity-meta span{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.trainer-identity-meta strong{color:var(--text-h);font-size:1.05rem}.trainer-next-session-card{gap:16px;padding:20px;display:grid}.trainer-next-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.trainer-next-session-card h3{color:var(--text-h);margin:0;font-size:1.32rem}.trainer-next-session-card p{color:var(--muted);margin:0}.trainer-next-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.trainer-next-detail-grid div{background:var(--feature-panel-soft);border:1px solid var(--shell-border);border-radius:16px;padding:14px}.trainer-next-detail-grid span{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.trainer-next-detail-grid strong{color:var(--text-h)}.trainer-empty-state{border:1px dashed var(--shell-border-strong);background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent);border-radius:16px;padding:18px}.trainer-empty-state strong{color:var(--text-h)}.trainer-stat-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.trainer-stat-row .stat-card{background:color-mix(in srgb, var(--feature-panel-soft) 80%, transparent);border:1px solid var(--shell-border);border-radius:18px;padding:16px}.trainer-main-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.78fr);gap:18px;display:grid}.trainer-main-col,.trainer-side-col{align-content:start;gap:18px;display:grid}.trainer-section-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.trainer-section-head.compact{margin-bottom:14px}.trainer-section-head h3{color:var(--text-h);margin:0}.trainer-section-inlineMeta{color:var(--muted);flex-wrap:wrap;gap:10px;font-size:12px;display:flex}.trainer-timeline-list,.trainer-member-list,.trainer-alert-list,.trainer-action-list{gap:12px;display:grid}.trainer-timeline-item{grid-template-columns:40px minmax(0,1fr);align-items:flex-start;gap:12px;display:grid}.trainer-timeline-marker{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 22%, transparent), color-mix(in srgb, var(--accent-strong) 24%, transparent));border:1px solid var(--shell-border-strong);width:40px;height:40px;color:var(--text-h);border-radius:14px;justify-content:center;align-items:center;font-weight:800;display:flex}.trainer-timeline-content{padding:10px 0 14px;position:relative}.trainer-timeline-content strong{color:var(--text-h);margin-bottom:4px;display:block}.trainer-timeline-content p{color:var(--muted);margin:0;line-height:1.5}.trainer-timeline-item:not(:last-child) .trainer-timeline-content:after{content:"";background:var(--shell-border-strong);width:1px;height:calc(100% - 20px);position:absolute;top:40px;left:-31px}.trainer-member-item{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-softer) 80%, transparent);border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.trainer-member-item strong{color:var(--text-h);margin-bottom:4px;display:block}.trainer-member-item p{color:var(--muted);margin:0}.trainer-member-meta{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.trainer-occupancy-card{text-align:center;justify-items:center;gap:14px;display:grid}.trainer-occupancy-copy{gap:4px;display:grid}.trainer-occupancy-copy strong{color:var(--text-h)}.trainer-occupancy-copy span{color:var(--muted);font-size:13px}.trainer-alert-item{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 84%, transparent);border-radius:18px;padding:14px 16px}.trainer-alert-item strong{color:var(--text-h);margin-bottom:6px;display:block}.trainer-alert-item p{color:var(--muted);margin:0;line-height:1.5}.trainer-alert-item.ok{border-color:color-mix(in srgb, #10b981 44%, var(--shell-border));background:color-mix(in srgb, #10b981 10%, var(--card-bg))}.trainer-alert-item.warn{border-color:color-mix(in srgb, #f59e0b 44%, var(--shell-border));background:color-mix(in srgb, #f59e0b 10%, var(--card-bg))}.trainer-alert-item.danger{border-color:color-mix(in srgb, #ef4444 44%, var(--shell-border));background:color-mix(in srgb, #ef4444 10%, var(--card-bg))}.trainer-action-list .btn{justify-content:center;width:100%}@media (width<=900px){.dashboard-grid{grid-template-columns:1fr}.cards-row{grid-template-columns:repeat(2,minmax(0,1fr))}.trainer-hero-grid,.trainer-main-grid,.trainer-stat-row{grid-template-columns:1fr}.trainer-header-actions{justify-content:flex-start}.trainer-identity-meta,.trainer-next-detail-grid{grid-template-columns:1fr}.desktop-only{display:none}.mobile-only{display:inline-flex}.dashboard-shell{margin-left:0}.sidebar-cluster{pointer-events:none;width:auto;height:100vh;display:block;top:0;left:0}.sidebar-cluster:before,.sidebar-cluster:after{display:none}.sidebar{width:min(82vw,300px);height:100vh;box-shadow:var(--shadow);pointer-events:auto;border-radius:0 24px 24px 0;position:fixed;top:0;left:0;transform:translate(-100%)}.dashboard-root.sidebar-collapsed .sidebar{opacity:1;border-color:var(--shell-border);width:min(82vw,300px);margin-right:0;padding:14px;transform:translate(-100%)}.sidebar-cluster.mobile-open .sidebar{transform:translate(0)}.sidebar-rail{display:none}}.page{padding:12px 0}.muted{color:var(--muted);margin-top:6px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stats-grid>*{min-width:0}.stats-grid .stat-card{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-soft) 82%, transparent);border-radius:18px;gap:8px;padding:16px;display:grid}.stats-grid .stat-card span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:12px}.stats-grid .stat-card strong{color:var(--text-h);font-size:32px;font-weight:800;line-height:1}.stats-grid .stat-card small{color:var(--text);font-size:13px;line-height:1.35}.reservas-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.reservas-select{min-width:160px}.reservas-range-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.reservas-date-input{min-width:144px}.reservas-layout>div{min-width:0}.reservas-feature-card,.reservas-summary-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.reservas-payment-banner{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-soft) 84%, transparent);border-radius:18px;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:16px;padding:14px 16px;display:flex}.reservas-payment-banner strong{color:var(--text-h);margin-bottom:4px;display:block}.reservas-payment-banner p{margin:0}.reservas-payment-fields{grid-template-columns:repeat(2,minmax(180px,1fr));gap:10px;min-width:min(100%,420px);display:grid}.reservas-mini-list{gap:14px;display:grid}.reservas-mini-item{gap:8px;display:grid}.reservas-mini-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.reservas-mini-track{background:var(--feature-panel-track);border-radius:999px;width:100%;height:10px;overflow:hidden}.reservas-mini-fill{border-radius:999px;height:100%;box-shadow:0 8px 20px #0000001f}.reservas-occupancy-meta{flex-wrap:wrap;align-items:stretch;gap:10px;display:flex}.reservas-occupancy-meta>div{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-soft) 86%, transparent);border-radius:14px;gap:4px;min-width:132px;padding:10px 12px;display:grid}.reservas-occupancy-meta strong{color:var(--text-h);font-size:22px;line-height:1}.reservas-occupancy-meta span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.occupancy-legend{flex-wrap:wrap;gap:12px;display:flex}.occupancy-legend-item{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.occupancy-legend-swatch{border-radius:999px;width:12px;height:12px;display:inline-flex}.occupancy-legend-swatch.ok{background:linear-gradient(90deg,#10b981,#059669)}.occupancy-legend-swatch.reserved{background:linear-gradient(90deg,#60a5fa,#3b82f6)}.occupancy-legend-swatch.paid{background:linear-gradient(90deg,#22c55e,#16a34a)}.occupancy-legend-swatch.partial{background:linear-gradient(90deg,#fbbf24,#eab308)}.occupancy-legend-swatch.credit{background:linear-gradient(90deg,#a855f7,#8b5cf6)}.occupancy-legend-swatch.pending{background:linear-gradient(90deg,#f97316,#ea580c)}.occupancy-legend-swatch.courtesy{background:linear-gradient(90deg,#14b8a6,#0d9488)}.occupancy-legend-swatch.completed{background:linear-gradient(90deg,#10b981,#047857)}.occupancy-legend-swatch.info{background:linear-gradient(90deg,#1e40af,#1d4ed8)}.occupancy-legend-swatch.warn{background:linear-gradient(90deg,#f59e0b,#f97316)}.occupancy-legend-swatch.available{background:color-mix(in srgb, var(--feature-panel-track) 88%, transparent);border:1px solid var(--shell-border)}.occupancy-legend-swatch.room-warn{background:linear-gradient(90deg,#f59e0bb8,#eab308d1)}.occupancy-legend-swatch.room-danger{background:linear-gradient(90deg,#ef4444cc,#be185dd6)}.occupancy-board-wrap{--occupancy-room-width:198px;--occupancy-day-width:74px;border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-soft) 82%, transparent);cursor:grab;scrollbar-width:none;-ms-overflow-style:none;border-radius:18px;width:100%;max-width:100%;max-height:calc(100vh - 260px);overflow:auto}.occupancy-board-wrap::-webkit-scrollbar{display:none}.reservas-fullscreen-occupancy{z-index:9999;background:var(--shell-bg,#0c0e14);flex-direction:column;padding:16px;display:flex;position:fixed;inset:0;overflow:hidden}.reservas-fullscreen-occupancy>.card{border-radius:14px;flex-direction:column;flex:1;display:flex;overflow:hidden}.reservas-fullscreen-occupancy .reservas-card-head,.reservas-fullscreen-occupancy .occupancy-legend{flex-shrink:0}.reservas-fullscreen-occupancy .occupancy-board-wrap{flex:1;min-height:0;max-height:none}.occupancy-board{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}.occupancy-board th,.occupancy-board td{border-right:1px solid var(--shell-border);border-bottom:1px solid var(--shell-border)}.occupancy-board td{position:relative;overflow:visible}.occupancy-board thead th{z-index:3;min-width:var(--occupancy-day-width);text-align:center;background:var(--feature-panel-solid);padding:8px 6px;position:sticky;top:0}.occupancy-board thead th:first-child{z-index:5}.occupancy-board thead th span{color:var(--muted);text-transform:uppercase;font-size:11px;display:block}.occupancy-board thead th strong{color:var(--text-h);font-size:15px;display:block}.occupancy-board thead th.is-today{background:color-mix(in srgb, var(--accent-bg) 70%, var(--feature-panel-solid));box-shadow:inset 0 -2px 0 var(--accent)}.occupancy-room-head,.occupancy-room-cell{z-index:4;min-width:var(--occupancy-room-width);max-width:var(--occupancy-room-width);background:var(--feature-panel-solid);position:sticky;left:0}.occupancy-room-head{z-index:5}.occupancy-room-cell{text-align:left;padding:10px 12px}.occupancy-room-label{gap:4px;display:grid}.occupancy-room-label strong{color:var(--text-h);font-size:14px}.occupancy-room-label span,.occupancy-room-label small{color:var(--muted);font-size:11px}.occupancy-cell{min-width:var(--occupancy-day-width);vertical-align:middle;background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent);height:60px;padding:4px}.occupancy-cell.available{color:color-mix(in srgb, var(--accent) 55%, var(--muted));text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.occupancy-available-button{appearance:none;width:100%;min-height:52px;color:inherit;cursor:pointer;text-transform:inherit;letter-spacing:inherit;font:inherit;background:0 0;border:none;padding:0}.occupancy-available-button span{justify-content:center;align-items:center;width:100%;height:100%;font-size:0;line-height:1;display:flex}.occupancy-available-button span:before{content:"•";color:color-mix(in srgb, var(--accent) 62%, #7dd3fc);text-shadow:0 0 16px color-mix(in srgb, var(--accent) 22%, transparent);font-size:20px;transition:transform .18s,color .18s,text-shadow .18s,content .18s}.occupancy-room-block-button{appearance:none;width:100%;min-height:52px;color:inherit;cursor:pointer;font:inherit;background:0 0;border:none;padding:0}.occupancy-room-block-button span{width:100%;min-height:52px;color:var(--text-h);text-transform:uppercase;letter-spacing:.04em;text-align:center;border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-size:10px;display:flex}.occupancy-cell.status-ok{background:linear-gradient(#22c55e3d,#16a34a52)}.occupancy-cell.status-reserved{background:linear-gradient(#60a5fa47,#3b82f659)}.occupancy-cell.status-paid{background:linear-gradient(#22c55e3d,#16a34a52)}.occupancy-cell.status-partial{background:linear-gradient(#fbbf2438,#eab3084d)}.occupancy-cell.status-credit{background:linear-gradient(#a855f73d,#8b5cf652)}.occupancy-cell.status-pending{background:linear-gradient(#f973163d,#ea580c52)}.occupancy-cell.status-courtesy{background:linear-gradient(#14b8a63d,#0d948852)}.occupancy-cell.status-completed{background:linear-gradient(#10b9813d,#05966957)}.occupancy-cell.status-info{background:linear-gradient(#1e40af52,#1d4ed866)}.occupancy-cell.status-warn{background:linear-gradient(#fbbf243d,#f973164d)}.occupancy-cell.status-danger{background:linear-gradient(#f8717138,#e11d4847)}.occupancy-cell.room-warn{color:var(--text-h);text-align:center;text-transform:uppercase;letter-spacing:.04em;background:linear-gradient(#facc153d,#f59e0b38);font-size:11px}.occupancy-cell.room-danger{color:var(--text-h);text-align:center;text-transform:uppercase;letter-spacing:.04em;background:linear-gradient(#f8717133,#e11d483d);font-size:11px}.occupancy-cell.has-booking,.occupancy-cell.room-state{padding:3px 0}.occupancy-cell.has-booking.segment-start,.occupancy-cell.room-state.segment-start,.occupancy-cell.has-booking.segment-single,.occupancy-cell.room-state.segment-single{padding-left:3px}.occupancy-cell.has-booking.segment-end,.occupancy-cell.room-state.segment-end,.occupancy-cell.has-booking.segment-single,.occupancy-cell.room-state.segment-single{padding-right:3px}.occupancy-cell.has-booking.segment-start,.occupancy-cell.has-booking.segment-middle,.occupancy-cell.room-state.segment-start,.occupancy-cell.room-state.segment-middle{border-right-color:#0000}.occupancy-cell.is-today{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--accent) 55%, transparent)}.occupancy-cell-merged{padding:4px}.occupancy-booking-chip{transform-origin:50%;text-align:center;background:#08111d24;border:1px solid #ffffff1a;border-radius:10px;justify-items:center;gap:4px;padding:6px 7px;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;display:grid}.occupancy-booking-chip.is-pending{background:linear-gradient(#b4530957,#ea580c42);border-color:#fbbf248a;box-shadow:inset 0 0 0 1px #fbbf2442,0 10px 22px #b453092e}.occupancy-booking-button{text-align:center;cursor:pointer;appearance:none;z-index:1;border:none;align-content:center;width:100%;height:100%;min-height:52px;padding:0;position:relative}.occupancy-cell-merged .occupancy-booking-button{min-height:100%}.occupancy-cell-merged .occupancy-booking-chip{align-content:center;min-height:100%}.occupancy-cell.has-booking.segment-start .occupancy-booking-chip{border-radius:12px 0 0 12px}.occupancy-cell.has-booking.segment-middle .occupancy-booking-chip{border-radius:0}.occupancy-cell.has-booking.segment-end .occupancy-booking-chip{border-radius:0 12px 12px 0}.occupancy-cell.has-booking.segment-single .occupancy-booking-chip{border-radius:12px}.occupancy-cell.has-booking.segment-middle .occupancy-booking-chip,.occupancy-cell.has-booking.segment-end .occupancy-booking-chip{border-left-color:#0000}.occupancy-booking-chip strong{color:var(--text-h);text-align:center;font-size:11px;line-height:1.15}.occupancy-booking-chip span{color:#ffffffd1;text-transform:uppercase;letter-spacing:.04em;text-align:center;font-size:10px}.occupancy-booking-status{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;width:max-content;min-height:18px;padding:0 7px;font-size:9px;font-weight:700;display:inline-flex}.occupancy-booking-status.status-reserved{color:#1d4ed8;background:#dbeafef5}.occupancy-booking-status.status-paid{color:#15803d;background:#f0fdf4f5}.occupancy-booking-status.status-partial{color:#a16207;background:#fef9c3f5}.occupancy-booking-status.status-credit{color:#7c3aed;background:#f3e8fff5}.occupancy-booking-status.status-pending{color:#c2410c;background:#ffedd5f5}.occupancy-booking-status.status-courtesy{color:#0f766e;background:#ccfbf1f5}.occupancy-booking-status.status-completed{color:#047857;background:#d1fae5f5}.occupancy-booking-status.status-ok{color:#15803d;background:#f0fdf4f5}.occupancy-booking-status.status-warn{color:#c2410c;background:#fff7edf5}.occupancy-booking-status.status-info{color:#1e3a8a;background:#dbe0fef5}.occupancy-booking-status.status-danger{color:#dc2626;background:#fef2f2f5}.occupancy-cell.room-state span{border-radius:10px;justify-content:center;align-items:center;min-height:52px;transition:transform .18s,box-shadow .18s,background .18s;display:flex}.occupancy-cell.room-state.segment-start span{border-radius:12px 0 0 12px}.occupancy-cell.room-state.segment-middle span{border-radius:0}.occupancy-cell.room-state.segment-end span{border-radius:0 12px 12px 0}.occupancy-available-button span,.occupancy-room-block-button span{transition:transform .18s,box-shadow .18s,background .18s,border-color .18s}.occupancy-cell:hover{z-index:6}.occupancy-cell:hover .occupancy-booking-chip,.occupancy-cell:hover .occupancy-available-button span,.occupancy-cell:hover .occupancy-room-block-button span,.occupancy-cell:hover.room-state span{transform:scale(1.1);box-shadow:0 12px 28px #0f172a33}.occupancy-cell:hover .occupancy-available-button span{background:color-mix(in srgb, var(--feature-panel-solid) 92%, var(--accent-bg))}.occupancy-cell:hover .occupancy-available-button span:before{content:"Disponible";letter-spacing:.08em;text-transform:uppercase;color:var(--text-h);text-shadow:none;font-size:10px;font-weight:700}.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-start,.occupancy-board.is-vertical .occupancy-cell.room-state.segment-start,.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-single,.occupancy-board.is-vertical .occupancy-cell.room-state.segment-single{padding-top:3px;padding-left:0}.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-end,.occupancy-board.is-vertical .occupancy-cell.room-state.segment-end,.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-single,.occupancy-board.is-vertical .occupancy-cell.room-state.segment-single{padding-bottom:3px;padding-right:0}.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-start,.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-middle,.occupancy-board.is-vertical .occupancy-cell.room-state.segment-start,.occupancy-board.is-vertical .occupancy-cell.room-state.segment-middle{border-right-color:var(--shell-border);border-bottom-color:#0000}.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-start .occupancy-booking-chip{border-radius:12px 12px 0 0}.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-middle .occupancy-booking-chip{border-radius:0}.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-end .occupancy-booking-chip{border-radius:0 0 12px 12px}.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-single .occupancy-booking-chip{border-radius:12px}.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-middle .occupancy-booking-chip,.occupancy-board.is-vertical .occupancy-cell.has-booking.segment-end .occupancy-booking-chip{border-left-color:inherit;border-top-color:#0000}.occupancy-board.is-vertical .occupancy-cell.room-state.segment-start span,.occupancy-board.is-vertical .occupancy-cell.room-state.segment-start button{border-radius:12px 12px 0 0}.occupancy-board.is-vertical .occupancy-cell.room-state.segment-middle span,.occupancy-board.is-vertical .occupancy-cell.room-state.segment-middle button{border-radius:0}.occupancy-board.is-vertical .occupancy-cell.room-state.segment-end span,.occupancy-board.is-vertical .occupancy-cell.room-state.segment-end button{border-radius:0 0 12px 12px}.occupancy-board.is-vertical .occupancy-room-head{z-index:10;background:var(--shell-bg);min-width:140px;position:sticky;top:0;left:0}.occupancy-board.is-vertical .occupancy-room-header-vert{z-index:6;background:var(--feature-panel-solid);padding:8px 6px;position:sticky;top:0}.occupancy-board.is-vertical .occupancy-date-cell-vert{z-index:4;background:var(--feature-panel-solid);min-width:140px;position:sticky;left:0}.occupancy-board.is-vertical th.is-today,.occupancy-board.is-vertical td.is-today{background-color:#4285f40d}.reservas-table-actions{flex-wrap:wrap;gap:8px;display:flex}.reservas-block-item{gap:8px}.modal.reservas-editor-modal{scrollbar-gutter:stable;flex-direction:column;align-self:center;width:min(920px,100vw - 40px);max-width:min(920px,100vw - 40px);height:min(760px,100dvh - 40px);max-height:calc(100dvh - 40px);margin:auto;padding:16px;display:flex;overflow:hidden}.reservas-editor-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.reservas-editor-subtitle{max-width:520px;margin:0;line-height:1.45}.reservas-editor-head-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.reservas-modal-close{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--shell-panel) 92%, transparent);width:38px;height:38px;color:var(--text-h);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;font-size:1.45rem;line-height:1;display:flex}.reservas-wizard-shell{flex:auto;grid-template-rows:auto auto minmax(0,1fr);gap:12px;min-height:0;padding:0;display:grid;overflow:hidden}.reservas-wizard-progress-compact{gap:8px}.reservas-compact-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.reservas-compact-overview-card{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 80%, transparent);border-radius:16px;min-width:0;padding:12px 14px}.reservas-compact-overview-card.accent{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 88%, white 5%), color-mix(in srgb, var(--accent-strong) 90%, white 5%));color:#fff;border-color:#0000}.reservas-compact-overview-card span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:6px;font-size:11px;display:block}.reservas-compact-overview-card.accent span,.reservas-compact-overview-card.accent small{color:#ffffffd1}.reservas-compact-overview-card strong{color:var(--text-h);font-size:1.15rem;line-height:1.2;display:block}.reservas-compact-overview-card.accent strong{color:#fff}.reservas-compact-overview-card small{color:var(--muted);overflow-wrap:anywhere;margin-top:6px;line-height:1.35;display:block}.reservas-compact-body{min-height:0;padding-right:4px;overflow:auto}.reservas-compact-panel{gap:14px;display:grid}.reservas-compact-panel-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.reservas-compact-panel-head h4{color:var(--text-h);margin:4px 0 0}.reservas-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;display:grid}.reservas-compact-grid-guest,.reservas-compact-grid-tariff{grid-template-columns:repeat(2,minmax(0,1fr))}.reservas-compact-grid-full{grid-column:1/-1}.reservas-compact-counter-row{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px 14px;display:grid}.reservas-compact-counter-field{gap:6px;display:grid}.reservas-compact-counter-field span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.reservas-compact-counter{grid-template-columns:42px minmax(44px,auto) 42px;align-items:center;gap:8px;display:grid}.reservas-compact-counter strong{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--shell-panel) 90%, transparent);min-height:38px;color:var(--text-h);border-radius:12px;justify-content:center;align-items:center;font-size:1rem;display:flex}.reservas-compact-counter .btn{border-radius:12px;min-height:38px;padding:0}.reservas-compact-note-field{gap:6px;display:grid}.reservas-guest-creation-card-compact{gap:10px}.reservas-mode-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.reservas-mode-card{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 78%, transparent);color:var(--text);text-align:left;cursor:pointer;border-radius:16px;gap:6px;padding:14px;display:grid}.reservas-mode-card span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.reservas-mode-card strong{color:var(--text-h);overflow-wrap:anywhere;font-size:1rem}.reservas-mode-card.active{border-color:color-mix(in srgb, var(--accent) 46%, var(--shell-border));background:color-mix(in srgb, var(--accent-bg) 82%, transparent)}.reservas-toggle-chip{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--shell-panel) 92%, transparent);width:max-content;max-width:100%;color:var(--text-h);cursor:pointer;border-radius:999px;padding:10px 14px}.reservas-toggle-chip.active{border-color:color-mix(in srgb, var(--success) 46%, var(--shell-border));background:color-mix(in srgb, var(--success) 12%, var(--shell-panel))}.reservas-compact-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.reservas-compact-metrics article{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 76%, transparent);border-radius:14px;padding:12px}.reservas-compact-metrics span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;font-size:11px;display:block}.reservas-compact-metrics strong{color:var(--text-h);overflow-wrap:anywhere;font-size:1rem;line-height:1.25}.reservas-confirmation-list-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.reservas-summary-note-compact{padding:14px 16px}.reservas-checkout-shell{grid-template-columns:minmax(0,1.45fr) minmax(320px,.9fr);align-items:stretch;gap:16px;min-height:0;display:grid;overflow:hidden}.reservas-checkout-main,.reservas-checkout-sidebar{align-content:start;gap:14px;display:grid}.reservas-checkout-main,.reservas-checkout-sidebar,.reservas-step-panel,.reservas-pricing-card,.reservas-pricing-card-checkout{min-width:0}.reservas-checkout-main,.reservas-checkout-sidebar{min-height:0;padding-right:4px;overflow:auto}.reservas-checkout-sidebar{position:static}.reservas-checkout-panel{gap:18px;display:grid}.reservas-checkout-panel-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.reservas-checkout-panel-head h4{color:var(--text-h);margin:4px 0 0;font-size:1.22rem}.reservas-guest-creation-card{border-top:1px solid var(--shell-border);gap:12px;padding-top:12px;display:grid}.reservas-editor-grid-tariffs-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.reservas-discount-toggle{margin:-2px 0 0}.reservas-pricing-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.reservas-checkout-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.reservas-pricing-card-checkout{gap:14px;margin-bottom:0;display:grid}.reservas-pricing-grid-checkout{grid-template-columns:repeat(2,minmax(0,1fr))}.reservas-summary-total-pill-sidebar{width:100%;min-width:0}.reservas-checkout-confirmation{min-height:100%}.reservas-confirmation-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.reservas-confirmation-list article{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 78%, transparent);border-radius:18px;padding:16px}.reservas-confirmation-list strong{color:var(--text-h);margin-bottom:6px;display:block}.reservas-confirmation-list p{color:var(--text);overflow-wrap:anywhere;margin:0;line-height:1.5}.reservas-wizard-progress{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:2px;display:grid}.reservas-wizard-step{text-align:left;border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 74%, transparent);color:var(--text);border-radius:14px;gap:4px;padding:11px 14px;transition:border-color .18s,transform .18s,background .18s;display:grid}.reservas-wizard-step strong{color:var(--text-h);font-size:1rem}.reservas-wizard-step small{color:var(--muted);font-size:12px;line-height:1.35}.reservas-wizard-step-index{background:color-mix(in srgb, var(--shell-panel) 94%, transparent);width:max-content;color:var(--muted);letter-spacing:.08em;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:700;display:inline-flex}.reservas-wizard-step.is-current{border-color:color-mix(in srgb, var(--accent) 40%, var(--shell-border));background:color-mix(in srgb, var(--accent-bg) 78%, transparent);transform:translateY(-1px)}.reservas-wizard-step.is-current .reservas-wizard-step-index{background:linear-gradient(90deg, var(--accent), var(--accent-strong));color:#fff}.reservas-wizard-step.is-done{border-color:color-mix(in srgb, var(--success) 34%, var(--shell-border));background:color-mix(in srgb, var(--success) 9%, var(--card-bg-soft))}.reservas-wizard-step.is-done .reservas-wizard-step-index{background:color-mix(in srgb, var(--success) 88%, transparent);color:#fff}.reservas-wizard-step.is-pending{opacity:.82}.reservas-wizard-step:disabled{cursor:default}.reservas-step-layout{grid-template-columns:minmax(0,1.75fr) minmax(280px,.85fr);align-items:start;gap:14px;display:grid}.reservas-step-layout.has-new-guest{grid-template-columns:minmax(0,1.45fr) minmax(360px,1fr)}.reservas-step-layout-pricing{grid-template-columns:minmax(0,1.15fr) minmax(340px,.9fr)}.reservas-step-panel{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 76%, transparent);border-radius:18px;padding:14px}.reservas-step-panel-side{align-content:start;gap:12px;display:grid}.reservas-editor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;margin-bottom:12px;display:grid}.reservas-editor-grid label,.reservas-editor-notes{color:var(--muted);gap:6px;font-size:13px;display:grid}.reservas-editor-grid label:last-child{grid-column:1/-1}.reservas-editor-grid-data,.reservas-editor-grid-tariffs{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:0}.reservas-field-span-2{grid-column:span 1}.reservas-field-span-full{grid-column:1/-1}.reservas-field-span-full textarea.input{resize:vertical;max-inline-size:100%;overflow:auto}.reservas-editor-grid label span,.reservas-editor-notes span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.reservas-editor-detail-grid{margin-bottom:14px}.reservas-editor-value{background:var(--shell-panel);border:1px solid var(--shell-border);min-height:42px;color:var(--text-h);border-radius:10px;align-items:center;padding:10px 12px;display:flex}.reservas-editor-value-multiline{white-space:pre-wrap;align-items:flex-start}.reservas-editor-notes{margin-bottom:14px}.reservas-editor-notes textarea{box-sizing:border-box;resize:vertical;width:100%}.reservas-editor-checkbox{color:var(--text);align-items:flex-start;gap:10px;margin-bottom:14px;font-size:13px;line-height:1.45;display:flex}.reservas-editor-checkbox input{margin-top:2px}.reservas-editor-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.reservas-editor-actions-wizard{border-top:1px solid var(--shell-border);background:linear-gradient(180deg, color-mix(in srgb, var(--shell-panel-strong) 12%, transparent), var(--shell-panel-strong) 36%, var(--shell-panel-strong) 100%);flex:none;grid-template-columns:minmax(0,1fr);justify-content:stretch;gap:12px;margin-top:6px;padding:12px 0 0;display:grid}.reservas-editor-footer-meta{flex:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;display:grid}.reservas-editor-footer-meta>div{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 76%, transparent);border-radius:14px;min-width:0;padding:12px 14px}.reservas-editor-footer-meta span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px;display:block}.reservas-editor-footer-meta strong{color:var(--text-h);overflow-wrap:anywhere;font-size:1rem;line-height:1.3;display:block}.reservas-editor-footer-meta small{color:var(--muted);overflow-wrap:anywhere;margin-top:6px;line-height:1.4;display:block}.reservas-editor-action-buttons{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.reservas-pricing-card{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-bg) 78%, transparent);border-radius:16px;margin-bottom:12px;padding:14px 16px}.reservas-pricing-card-side{height:100%;margin-bottom:0}.reservas-pricing-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.reservas-pricing-head strong{color:var(--text-h);margin-bottom:4px;display:block}.reservas-pricing-head span{color:var(--muted);font-size:12px;line-height:1.45}.reservas-pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.reservas-pricing-grid div{background:color-mix(in srgb, var(--card-bg-soft) 72%, transparent);border:1px solid var(--shell-border);border-radius:14px;padding:12px}.reservas-pricing-grid span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:12px;display:block}.reservas-pricing-grid strong{color:var(--text-h);font-size:1rem}.reservas-editor-grid>label,.reservas-pricing-grid>div{min-width:0}.reservas-summary-stage{gap:16px;display:grid}.reservas-summary-hero{border:1px solid var(--shell-border-strong);background:var(--feature-panel-bg);border-radius:20px;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.reservas-summary-hero h4{color:var(--text-h);margin:0 0 8px;font-size:1.3rem}.reservas-summary-total-pill{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 90%, white 4%), color-mix(in srgb, var(--accent-strong) 92%, white 4%));color:#fff;min-width:220px;box-shadow:var(--shadow);border-radius:18px;padding:16px}.reservas-summary-total-pill span{letter-spacing:.08em;text-transform:uppercase;opacity:.86;margin-bottom:8px;font-size:12px;display:block}.reservas-summary-total-pill strong{font-size:1.45rem;line-height:1.1}.reservas-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.reservas-summary-grid-finance{grid-template-columns:repeat(4,minmax(0,1fr))}.reservas-summary-card-block{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 78%, transparent);border-radius:18px;min-width:0;padding:16px}.reservas-summary-card-block.accent{background:color-mix(in srgb, var(--accent-bg) 76%, transparent);border-color:color-mix(in srgb, var(--accent) 32%, var(--shell-border))}.reservas-summary-card-block span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:12px;display:block}.reservas-summary-card-block strong{color:var(--text-h);overflow-wrap:anywhere;font-size:1.05rem;line-height:1.35;display:block}.reservas-summary-card-block small{color:var(--muted);overflow-wrap:anywhere;margin-top:8px;line-height:1.45;display:block}.reservas-summary-note{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--shell-panel) 84%, transparent);border-radius:18px;padding:16px 18px}.reservas-summary-note strong{color:var(--text-h);margin-bottom:8px;display:block}.reservas-summary-note p{color:var(--text);margin:0;line-height:1.55}.reservas-side-stack{gap:10px;display:grid}.reservas-side-stack-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.reservas-side-field-full{grid-column:1/-1}.reservas-side-toggle{margin-bottom:6px}.reservas-side-note{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--shell-panel) 88%, transparent);border-radius:16px;padding:14px 16px}.reservas-side-note strong{color:var(--text-h);margin-bottom:6px;display:block}.reservas-side-note p{color:var(--text);overflow-wrap:anywhere;margin:0;line-height:1.5}.reservas-side-note.muted-surface{background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent)}.reservas-alert-modal{max-width:480px}.reservas-alert-modal.success{border-color:color-mix(in srgb, var(--success) 42%, var(--shell-border))}.reservas-alert-modal.warning{border-color:color-mix(in srgb, var(--warning) 46%, var(--shell-border));animation:.28s cubic-bezier(.22,1,.36,1) both modal-pop,.42s 60ms both alert-shake}.reservas-alert-modal.danger{border-color:color-mix(in srgb, var(--danger) 44%, var(--shell-border));animation:.28s cubic-bezier(.22,1,.36,1) both modal-pop,.48s 60ms both alert-shake}.reservas-alert-modal.info{border-color:color-mix(in srgb, var(--accent) 44%, var(--shell-border))}.reservas-alert-head{grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:14px;display:grid}.reservas-alert-head h3{color:var(--text-h);margin:0 0 8px;font-size:1.2rem}.reservas-alert-head p{color:var(--text);margin:0;line-height:1.55}.reservas-alert-icon{color:#fff;border-radius:16px;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:800;display:flex;box-shadow:0 14px 28px #02061729}.reservas-alert-icon.success{background:linear-gradient(135deg,#22c55e,#16a34a)}.reservas-alert-icon.warning{background:linear-gradient(135deg,#f59e0b,#ea580c)}.reservas-alert-icon.danger{background:linear-gradient(135deg,#ef4444,#be123c)}.reservas-alert-icon.info{background:linear-gradient(135deg,#38bdf8,#2563eb)}.reservas-alert-actions{justify-content:flex-end;margin-top:18px;display:flex}.sede-distribution-card{background:var(--feature-panel-bg);border:1px solid var(--shell-border-strong);box-shadow:var(--shadow);border-radius:16px;padding:16px}.sede-distribution-title{color:var(--text-h);text-transform:uppercase;letter-spacing:.6px;margin:0 0 12px;font-size:13px;font-weight:700}.sede-distribution-layout{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.sede-distribution-chartWrap{flex:0 0 200px;width:200px;height:200px;position:relative}.sede-distribution-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.sede-distribution-total{color:var(--text-h);font-size:24px;font-weight:800}.sede-distribution-subtitle{color:var(--muted);text-transform:uppercase;margin-top:6px;font-size:12px}.sede-distribution-legend{flex:220px;width:100%;min-width:0}.sede-distribution-item{margin-bottom:10px}.sede-distribution-itemHead{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.sede-distribution-nameWrap{align-items:center;gap:8px;min-width:0;display:flex}.sede-distribution-name{color:var(--text);overflow-wrap:anywhere;font-size:13px}.sede-distribution-percent{color:var(--text-h);font-weight:700}.sede-distribution-track{background:var(--feature-panel-track);border-radius:8px;width:100%;height:8px;overflow:hidden}.card-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));align-items:stretch;gap:12px;display:grid}.entity-card{background:var(--card-bg);border:1px solid var(--shell-border);border-radius:16px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:12px;min-height:220px;padding:16px;display:flex;overflow:hidden}.entity-header{align-items:center;gap:8px;min-width:0;display:flex}.entity-header strong{color:var(--text-h);overflow-wrap:anywhere;font-size:1.15rem;line-height:1.2}.entity-body{flex-direction:column;align-items:flex-start;gap:10px;width:100%;min-width:0;display:flex}.price{font-weight:700}.tag{background:var(--accent-bg);color:var(--text-h);border-radius:999px;padding:4px 8px;font-size:12px}.actions{gap:8px;margin-top:auto;display:flex}.btn{background:linear-gradient(90deg, var(--accent), var(--accent-strong));color:#fff;cursor:pointer;border:none;border-radius:10px;padding:8px 12px}.btn.ghost{border:1px solid var(--shell-border-strong);color:var(--text-h);background:0 0}.avatar{background:var(--card-bg-soft);width:44px;height:44px;color:var(--text-h);border-radius:8px;justify-content:center;align-items:center;font-weight:700;display:flex}.entity-info{flex:1;margin-left:12px}.entity-actions{margin-left:12px}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;padding:12px 10px}.pill{border-radius:999px;padding:6px 10px;font-weight:600}.pill.ok{color:#fff;background:linear-gradient(90deg,#10b981,#059669)}.pill.reserved{color:#fff;background:linear-gradient(90deg,#60a5fa,#3b82f6)}.pill.paid{color:#fff;background:linear-gradient(90deg,#22c55e,#16a34a)}.pill.partial{color:#fff;background:linear-gradient(90deg,#fbbf24,#eab308)}.pill.credit{color:#fff;background:linear-gradient(90deg,#a855f7,#8b5cf6)}.pill.pending{color:#fff;background:linear-gradient(90deg,#f97316,#ea580c)}.pill.courtesy{color:#fff;background:linear-gradient(90deg,#14b8a6,#0d9488)}.pill.completed{color:#fff;background:linear-gradient(90deg,#10b981,#047857)}.pill.info{color:#fff;background:linear-gradient(90deg,#1e40af,#1d4ed8)}.pill.warn{color:#fff;background:linear-gradient(90deg,#f59e0b,#f97316)}.pill.danger{color:#fff;background:linear-gradient(90deg,#ef4444,#be185d)}@media (width<=1180px){.modal.reservas-editor-modal{width:min(920px,100vw - 24px);max-width:min(920px,100vw - 24px);height:min(760px,100dvh - 24px);max-height:calc(100dvh - 24px)}.reservas-checkout-shell,.reservas-step-layout,.reservas-step-layout-pricing{grid-template-columns:1fr}.reservas-checkout-shell{overflow:auto}.reservas-checkout-main,.reservas-checkout-sidebar{padding-right:0;overflow:visible}.reservas-editor-grid,.reservas-editor-grid-data{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=980px){.modal.reservas-editor-modal{width:calc(100vw - 20px);max-width:calc(100vw - 20px);height:min(720px,100dvh - 20px);max-height:calc(100dvh - 20px)}.reservas-compact-overview,.reservas-compact-counter-row,.reservas-compact-metrics,.reservas-mode-cards,.reservas-compact-grid,.reservas-compact-grid-guest,.reservas-compact-grid-tariff,.reservas-confirmation-list-compact,.reservas-wizard-progress,.reservas-editor-grid,.reservas-editor-grid-data,.reservas-editor-grid-tariffs{grid-template-columns:1fr}.reservas-field-span-2{grid-column:auto}.reservas-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reservas-pricing-grid-wide,.reservas-pricing-grid-checkout,.reservas-checkout-summary-grid,.reservas-confirmation-list{grid-template-columns:1fr}.reservas-summary-hero{flex-direction:column}.reservas-summary-total-pill{width:100%;min-width:0}.reservas-summary-grid,.reservas-summary-grid-finance,.reservas-editor-footer-meta,.reservas-side-stack-form{grid-template-columns:1fr}.reservas-checkout-panel-head{flex-direction:column}}@media (width<=640px){.modal-overlay{padding:10px}.modal.reservas-editor-modal{width:calc(100vw - 20px);max-width:calc(100vw - 20px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);padding:14px}.stats-grid,.card-list,.cards-row{grid-template-columns:1fr}.trainer-dashboard-header{align-items:flex-start}.trainer-identity-top,.trainer-member-item{flex-direction:column;align-items:flex-start}.trainer-member-meta{justify-content:flex-start}.trainer-section-head,.reservas-card-head{flex-direction:column;align-items:flex-start}.reservas-select{width:100%;min-width:0}.reservas-range-controls{justify-content:flex-start;width:100%}.reservas-date-input{width:100%;min-width:0}.reservas-payment-banner{flex-direction:column;align-items:flex-start}.reservas-payment-fields{grid-template-columns:1fr;width:100%}.reservas-mini-head{flex-direction:column;align-items:flex-start}.reservas-occupancy-meta{width:100%}.reservas-occupancy-meta>div{flex:140px}.reservas-editor-head{flex-direction:column;align-items:flex-start}.reservas-editor-grid{grid-template-columns:1fr}.reservas-editor-actions{justify-content:stretch}.reservas-editor-actions-wizard,.reservas-editor-action-buttons{justify-content:stretch;width:100%}.reservas-editor-footer-meta,.reservas-editor-action-buttons .btn{width:100%}.reservas-compact-panel-head{flex-direction:column}.reservas-wizard-step{padding:10px 12px}.occupancy-board-wrap{--occupancy-room-width:162px;--occupancy-day-width:66px}.occupancy-room-head,.occupancy-room-cell{min-width:162px;max-width:162px}.occupancy-board thead th,.occupancy-cell{min-width:66px}.sede-distribution-chartWrap{flex-basis:100%}.recent-activity-head,.weekly-activity-summary{flex-direction:column;align-items:flex-start}}.service-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;margin-top:12px;display:grid}.service-card{background:var(--card-bg);border:1px solid var(--shell-border);border-radius:16px;padding:14px;transition:transform .18s,box-shadow .18s;position:relative}.service-card:hover{transform:translateY(-6px);box-shadow:0 10px 30px #00000080}.card-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.service-name{color:var(--text-h);font-weight:700}.state-pill{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.state-pill.ok{color:#fff;background:linear-gradient(90deg,#06b6d4,#7c3aed)}.state-pill.warn{color:#fff;background:linear-gradient(90deg,#f97316,#fb7185)}.state-pill.danger{color:#fff;background:linear-gradient(90deg,#ef4444,#be185d)}.service-meta{justify-content:space-between;gap:12px;margin-top:10px;display:flex}.meta-line{color:var(--text);font-size:13px}.price{color:var(--text-h);font-weight:800}.capacity{margin-top:12px}.cap-label{color:var(--muted);margin-bottom:6px;font-size:13px}.progress-outer{background:#94a3b81f;border-radius:999px;height:12px;position:relative;overflow:hidden}.progress-inner{background:linear-gradient(90deg,var(--accent),var(--accent-strong));border-radius:999px;height:12px;transition:width .5s}.service-card.agotado .progress-inner{background:linear-gradient(90deg,#ef4444,#be185d)}.service-card.ultimos-cupos .progress-inner{background:linear-gradient(90deg,#06b6d4,#fb0ab0)}.sede-controls{justify-content:flex-start;margin-top:8px;display:flex}.sede-tabs{gap:8px;display:flex}.sede-tab{border:1px solid var(--shell-border);color:var(--text);cursor:pointer;background:0 0;border-radius:999px;padding:8px 12px}.sede-tab.active{background:linear-gradient(90deg,var(--accent),var(--accent-strong));color:#fff;box-shadow:var(--shadow)}.card-actions{align-items:center;gap:8px;margin-top:12px;display:flex}.signup-inline{gap:8px;margin-top:8px;display:flex}.input{box-sizing:border-box;background:var(--shell-panel);border:1px solid var(--shell-border);width:100%;min-width:0;max-width:100%;color:var(--text-h);border-radius:10px;padding:10px 12px}.member-card{background:linear-gradient(#ffffff05,#ffffff03);border:1px solid #ffffff08;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;height:100%;min-height:150px;padding:14px;display:grid}.member-avatar{color:#fff;background:linear-gradient(90deg,#ff41bb,#8b5cf6);border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;font-weight:700;display:flex}.member-info{align-self:stretch;min-width:0}.member-name{color:var(--text-h);overflow-wrap:anywhere;margin:0;line-height:1.2}.member-plan{color:var(--muted);overflow-wrap:anywhere;margin-top:4px;font-size:13px}.member-actions{flex-direction:column;justify-content:space-between;align-self:stretch;align-items:flex-end;gap:8px;min-width:0;display:flex}.member-status{border-radius:999px;padding:6px 8px;font-size:12px}.member-status.active{color:#86efac;background:#22c55e1f}.member-status.expired{color:#fca5a5;background:#ef44441f}.btn.small{padding:6px 8px;font-size:12px}.modal-overlay{background:var(--overlay-bg);z-index:60;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:flex-start;padding:16px;animation:.22s both overlay-fade;display:flex;position:fixed;inset:0;overflow:auto}.modal{background:var(--shell-panel-strong);width:100%;max-width:560px;max-height:calc(100vh - 32px);color:var(--text-h);border:1px solid var(--shell-border);box-shadow:var(--shadow);border-radius:18px;margin:auto 0;padding:18px;animation:.28s cubic-bezier(.22,1,.36,1) both modal-pop;overflow:auto}.trainer-card{background:linear-gradient(#ffffff05,#ffffff03);border:1px solid #ffffff08;border-radius:12px;justify-content:space-between;align-items:center;padding:12px;display:flex}.trainer-left{align-items:flex-start;gap:12px;min-width:0;display:flex}.trainer-left .avatar{background:var(--card-bg-soft);width:48px;height:48px;color:var(--text-h);border-radius:8px;justify-content:center;align-items:center;font-weight:700;display:flex}.trainer-info{min-width:0}.trainer-info strong{color:var(--text-h);overflow-wrap:anywhere;line-height:1.2;display:block}.trainer-subline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.trainer-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.sede-pill{background:var(--card-bg-soft);color:var(--text);border-radius:999px;padding:6px 10px}.work-badge{background:linear-gradient(90deg,var(--accent),var(--accent-strong));color:#fff;white-space:nowrap;border-radius:999px;padding:6px 10px;font-weight:700}.add-card{border:1px dashed var(--shell-border-strong);color:var(--text);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:18px;display:flex}.add-card .plus{font-size:28px;font-weight:700}.floating-add{position:relative}.trainer-card.detailed{background:var(--feature-panel-bg), radial-gradient(circle at top right, #06b6d41f, transparent 34%), radial-gradient(circle at bottom left, #7c3aed1f, transparent 30%), var(--feature-panel-solid);border:1px solid var(--shell-border-strong);min-height:250px;box-shadow:var(--shadow);border-radius:20px;grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:start;gap:16px;padding:18px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;overflow:hidden}.trainer-card.detailed:hover{border-color:#38bdf847;transform:translateY(-4px);box-shadow:0 22px 46px #0206178f}.trainer-card-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.trainer-avatar{background:linear-gradient(135deg,#22d3eef2,#7c3aedf2);border-radius:16px;width:56px;height:56px;box-shadow:0 14px 28px #06b6d42e}.trainer-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;font-size:11px;display:inline-flex}.trainer-card.detailed .muted-id{color:var(--muted);font-size:12px}.trainer-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.trainer-fact-card{background:var(--feature-panel-soft);border:1px solid var(--shell-border);border-radius:14px;padding:12px}.trainer-fact-card span{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.trainer-fact-card strong{color:var(--text-h);overflow-wrap:anywhere;line-height:1.2}.trainer-fact-card .rating{color:#fbbf24;font-weight:700}.trainer-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;width:100%;margin-top:auto;display:flex}.trainer-delete{color:#fecaca;border-color:#f8717147}.trainers-page-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.trainers-cta{min-width:180px}.trainers-hero{grid-template-columns:minmax(0,1.55fr) minmax(290px,.8fr);align-items:stretch;gap:16px;margin-bottom:18px;display:grid}.hero-left,.hero-right{min-width:0}.hero-right{gap:16px;width:auto;display:grid}.trainers-overview-card{background:var(--feature-panel-bg), radial-gradient(circle at top left, #38bdf81a, transparent 30%), radial-gradient(circle at bottom right, #7c3aed1a, transparent 34%), var(--feature-panel-solid);min-height:100%;padding:20px}.trainers-overview-top{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.trainers-eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin-bottom:8px;font-size:11px;display:inline-flex}.trainers-overview-top h3{color:var(--text-h);margin:0;font-size:1.45rem}.trainers-overview-total{color:var(--text-h);white-space:nowrap;font-size:2.1rem;font-weight:800}.trainers-overview-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.trainers-mini-stat{background:var(--feature-panel-soft);border:1px solid var(--shell-border);border-radius:14px;padding:12px 14px}.trainers-mini-stat span{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.trainers-mini-stat strong{color:var(--text-h);font-size:1.2rem}.trainers-load-board{background:var(--feature-panel-softer);border:1px solid var(--shell-border);border-radius:16px;padding:16px}.trainers-load-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:14px;display:flex}.trainers-load-head h4{color:var(--text-h);margin:0}.trainers-load-row{gap:8px;margin-bottom:12px;display:grid}.trainers-load-row:last-child{margin-bottom:0}.trainers-load-rowHead{justify-content:space-between;align-items:center;gap:12px;display:flex}.trainers-load-nameWrap{min-width:0}.trainers-load-nameWrap strong{color:var(--text-h);overflow-wrap:anywhere;display:block}.trainers-load-nameWrap span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.trainers-load-value{color:var(--accent);white-space:nowrap;font-weight:700}.trainers-load-track{background:var(--feature-panel-track);border-radius:999px;width:100%;height:12px;overflow:hidden}.trainers-load-fill{background:linear-gradient(90deg,#7c3aed,#22d3ee);border-radius:999px;height:100%;box-shadow:0 8px 22px #38bdf838}.trainers-spotlight-card,.trainers-pulse-card{padding:18px}.trainers-spotlight-body,.trainers-pulse-body{text-align:center;justify-content:center;align-items:center;height:100%}.trainers-spotlight-name{color:var(--text-h);font-size:1.25rem;font-weight:700}.trainers-spotlight-footer{color:var(--text);flex-wrap:wrap;justify-content:center;gap:12px;font-size:13px;display:flex}.trainers-pulse-list{gap:10px;width:100%;display:grid}.trainers-pulse-item{background:var(--feature-panel-soft);border:1px solid var(--shell-border);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.trainers-pulse-item span{color:var(--muted)}.trainers-pulse-item strong{color:var(--text-h)}.trainers-roster-head{justify-content:space-between;align-items:flex-end;gap:14px;margin:6px 0 12px;display:flex}.trainers-roster-head h3{color:var(--text-h);margin:0}.trainers-grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:16px}.trainer-add-card{background:var(--feature-panel-bg), radial-gradient(circle at top right, #22d3ee1a, transparent 30%), var(--feature-panel-solid);border-radius:20px;flex-direction:column;justify-content:flex-end;align-items:flex-start;min-height:250px;padding:24px}.trainer-add-card strong{color:var(--text-h);font-size:1.1rem}.trainer-add-card .muted{margin-top:6px}.availability{border-radius:999px;padding:6px 10px;font-weight:700}.availability.disponible{color:#06b6d4;background:#06b6d41f}.availability.enclase{color:#7c3aed;background:#7c3aed1f}.availability.fueradehorario{color:#9ca3af;background:#6b728014}.modal ul{padding-left:18px}.member-card{position:relative}.member-card.active{border:1px solid #10b9811f;box-shadow:0 6px 20px #10b98114}.member-card.expired{border:1px solid #ef44441f;box-shadow:0 6px 20px #ef444414}.member-card .member-avatar{background:linear-gradient(90deg,#ff41bb,#8b5cf6);box-shadow:0 6px 18px #8b5cf61f}.member-card .quick-menu{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex;position:static}.btn.icon{padding:6px 8px;font-size:12px}.search-neon{background:var(--shell-panel);border:1px solid var(--shell-border-strong);box-shadow:none;color:var(--text-h)}.members-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;display:flex}.widgets{flex:none;grid-template-columns:repeat(2,minmax(96px,120px));gap:12px;display:grid}.widget{background:color-mix(in srgb, var(--feature-panel-soft) 82%, transparent);border:1px solid var(--shell-border);border-radius:16px;align-content:center;gap:6px;min-height:72px;padding:14px 16px;display:grid;box-shadow:0 10px 24px #0f172a0f}.widget-title{color:var(--muted);font-size:12px}.widget-value{color:var(--text-h);font-size:26px;font-weight:700;line-height:1}.members-filters{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--feature-panel-soft) 76%, transparent);border-radius:20px;grid-template-columns:minmax(240px,1.4fr) repeat(3,minmax(150px,.8fr)) auto;gap:10px;width:min(100%,980px);padding:14px;display:grid}.members-filters .input{width:100%}.members-results-bar{justify-content:flex-end;align-items:center;margin-top:10px;display:flex}.trainers-hero{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.hero-left{flex:1}.hero-right{flex-direction:column;gap:12px;width:360px;display:flex}.metric-large{color:var(--text-h);margin-top:6px;font-size:20px;font-weight:700}.card.small{padding:12px}.card.small .card-body{flex-direction:column;align-items:center;gap:8px;display:flex}.members-metrics{grid-template-columns:minmax(280px,320px) minmax(0,1fr);align-items:stretch;gap:12px;margin-top:12px;display:grid}.member-metric-card{min-height:252px}.member-metric-card .card-body{justify-content:center;width:100%;height:100%}.member-distribution-card .card-body{align-items:stretch}.member-distribution-body{flex-direction:column;justify-content:center;align-items:stretch;gap:18px;display:flex}.member-distribution-bars{gap:14px;display:grid}.member-distribution-row{gap:8px;display:grid}.member-distribution-rowHead{justify-content:space-between;align-items:center;gap:12px;display:flex}.member-distribution-labelWrap{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.member-distribution-dot{border-radius:999px;flex:0 0 12px;width:12px;height:12px;box-shadow:0 8px 26px #06b6d447}.member-distribution-label{min-width:0;color:var(--text-h);overflow-wrap:anywhere}.member-distribution-value{white-space:nowrap;margin-top:0}.member-distribution-track{background:var(--feature-panel-track);border-radius:999px;width:100%;height:12px;overflow:hidden;box-shadow:inset 0 1px 3px #0000001f}.member-distribution-fill{border-radius:999px;min-width:8px;height:100%;box-shadow:0 8px 24px #7c3aed33}.members-table-card{padding:0;overflow:hidden}.members-table-scroll{overflow-x:auto}.members-table{min-width:900px}.members-table tbody tr{border-bottom:1px solid #ffffff0a}.members-table tbody tr:last-child{border-bottom:none}.members-table th{white-space:nowrap}.members-table-id{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px}.members-table-nameWrap{flex-direction:column;gap:4px;min-width:0;display:flex}.members-table-name{color:var(--text-h);overflow-wrap:anywhere;line-height:1.2}.members-table-email{overflow-wrap:anywhere;margin-top:0}.members-table-actions{align-items:center;gap:8px;display:flex}.members-table-empty{text-align:center;padding:20px 8px}.member-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin-bottom:14px;display:grid}.member-modal-grid p{color:var(--text);margin:0}.member-modal-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}@media (width<=900px){.trainers-page-head{flex-direction:column;align-items:stretch}.trainers-cta{width:100%}.trainers-hero{grid-template-columns:1fr}.hero-right{width:100%}.trainers-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.members-header{flex-direction:column;align-items:stretch}.members-filters{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.members-metrics,.member-modal-grid{grid-template-columns:1fr}}.upcoming{margin-top:22px}.table.dark th,.table.dark td{color:var(--text-h);background:0 0}.table.dark thead th{color:var(--muted);border-bottom:1px solid var(--shell-border)}.metrics{margin-top:18px}.metrics-row{align-items:center;gap:12px;display:flex}.metrics-chart{flex:1}.metrics-info{min-width:220px;color:var(--text)}.sede-card .sede-location{overflow-wrap:anywhere;margin-top:0}.sede-stats{gap:8px;width:100%;display:grid}.sede-stats .muted{justify-content:space-between;gap:12px;margin-top:0;display:flex}.sede-stats strong{color:var(--text-h)}.sedes-page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.sedes-overview-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr);gap:16px;margin-bottom:16px;display:grid}.sedes-overview-card,.sedes-highlight-card{background:var(--feature-panel-bg), radial-gradient(circle at top left, #22d3ee14, transparent 28%), radial-gradient(circle at bottom right, #7c3aed14, transparent 32%), var(--feature-panel-solid);padding:20px}.sedes-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin-bottom:8px;font-size:11px;display:inline-flex}.sedes-overview-card h3,.sedes-highlight-card h3{color:var(--text-h);margin:0 0 14px}.sedes-overview-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.sedes-mini-stat{background:var(--feature-panel-soft);border:1px solid var(--shell-border);border-radius:14px;padding:12px 14px}.sedes-mini-stat span{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.sedes-mini-stat strong{color:var(--text-h);font-size:1.25rem}.sedes-highlight-metrics{flex-wrap:wrap;gap:10px;margin:10px 0 14px;display:flex}.sedes-highlight-metrics span,.sedes-highlight-status{background:var(--card-bg-soft);border:1px solid var(--shell-border);color:var(--text);border-radius:999px;padding:8px 12px;display:inline-flex}.sedes-toolbar{justify-content:space-between;align-items:center;gap:12px;margin:12px 0;display:flex}.sedes-toolbar .search-neon{flex:1;max-width:460px}.sedes-results{white-space:nowrap}.sedes-table{min-width:860px}.sedes-name-wrap strong{color:var(--text-h)}.sedes-status{border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.sedes-status.ok{color:#86efac;background:#10b98124}.sedes-status.warn{color:#fcd34d;background:#f59e0b24}.sedes-status.muted{color:var(--text);background:#94a3b81f}.sedes-modal{max-width:920px}.sedes-modal-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.sedes-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.sedes-modal-card{background:var(--feature-panel-soft);border:1px solid var(--shell-border);border-radius:16px;padding:16px}.sedes-modal-card h4{color:var(--text-h);margin:0 0 12px}.sede-summary-layout{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.sede-summary-chart{flex:0 0 220px;justify-content:center;align-items:center;display:flex}.sede-summary-legend{flex:220px;min-width:0}.sede-summary-item{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.sede-summary-labelWrap{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.sede-summary-label{min-width:0;color:var(--text-h);overflow-wrap:anywhere}.sede-summary-value{white-space:nowrap;margin-top:0}.profile-page{gap:18px;display:grid}.profile-header{align-items:flex-start;gap:16px}.profile-header-actions{flex-wrap:wrap;gap:10px;display:flex}.profile-feedback{border:1px solid var(--shell-border-strong);border-radius:18px;padding:14px 16px;font-weight:600}.profile-feedback.success{background:color-mix(in srgb, #10b981 12%, var(--card-bg));border-color:color-mix(in srgb, #10b981 42%, var(--shell-border));color:var(--text-h)}.profile-feedback.error{background:color-mix(in srgb, #ef4444 10%, var(--card-bg));border-color:color-mix(in srgb, #ef4444 42%, var(--shell-border));color:var(--text-h)}.profile-admin-badge{background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--text-h);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;align-items:center;margin-bottom:10px;padding:6px 10px;font-size:11px;font-weight:700;display:inline-flex}.profile-hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(260px,.7fr);gap:16px;display:grid}.profile-hero-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong);padding:22px}.profile-avatar-block{align-items:center;gap:16px;margin-bottom:18px;display:flex}.profile-avatar-large{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;letter-spacing:.04em;width:72px;height:72px;box-shadow:var(--shadow);border-radius:24px;justify-content:center;align-items:center;font-size:1.3rem;font-weight:800;display:flex}.profile-image-editor{align-items:flex-start}.profile-avatar-copy h3{color:var(--text-h);margin:6px 0 4px;font-size:1.6rem}.profile-avatar-copy p{color:var(--muted)}.profile-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-size:11px;display:inline-flex}.profile-hero-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.profile-meta-pill{background:color-mix(in srgb, var(--card-bg-soft) 88%, transparent);border:1px solid var(--shell-border);border-radius:18px;padding:14px 16px}.profile-meta-pill strong{color:var(--text-h);margin-bottom:6px;display:block}.profile-meta-pill span{color:var(--muted);font-size:13px}.profile-summary-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong);align-content:start;gap:12px;padding:18px;display:grid}.profile-admin-note{background:color-mix(in srgb, var(--accent-bg) 72%, transparent);border:1px solid var(--accent-border);border-radius:18px;padding:14px 16px}.profile-admin-note strong{color:var(--text-h);margin-bottom:6px;display:block}.profile-admin-note span{color:var(--text);font-size:13px;line-height:1.45}.profile-summary-item{background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent);border:1px solid var(--shell-border);border-radius:18px;padding:14px 16px}.profile-summary-item span{color:var(--muted);margin-bottom:6px;font-size:13px;display:block}.profile-summary-item strong{color:var(--text-h);font-size:1.15rem}.profile-content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-section-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong);padding:20px}.profile-section-card-wide{grid-column:1/-1}.profile-section-head{margin-bottom:16px}.profile-section-head h3{color:var(--text-h);margin:6px 0 0}.profile-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.profile-field{gap:8px;display:grid}.profile-field span{color:var(--muted);font-size:13px}.profile-field-full{grid-column:1/-1}.profile-role-note{margin-top:12px;line-height:1.5}.super-admin-page{gap:24px;display:grid}.super-admin-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.super-admin-summary-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong);padding:18px}.super-admin-summary-card span{color:var(--muted);margin-bottom:8px;font-size:13px;display:block}.super-admin-summary-card strong{color:var(--text-h);font-size:1.5rem}.super-admin-top-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:20px;display:grid}.super-admin-toolbar-card,.super-admin-table-card,.super-admin-invite-card,.super-admin-audit-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.super-admin-section-head{margin-bottom:14px}.super-admin-section-head h3{color:var(--text-h);margin:6px 0 0}.super-admin-invite-form{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.super-admin-invitation-list,.super-admin-audit-list{gap:10px;display:grid}.super-admin-invitation-item,.super-admin-audit-item{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent);border-radius:18px;gap:4px;padding:14px 16px;display:grid}.super-admin-invitation-item strong,.super-admin-audit-item strong{color:var(--text-h)}.super-admin-invitation-item span,.super-admin-audit-item span{color:var(--muted);font-size:13px;line-height:1.45}.super-admin-toolbar{grid-template-columns:minmax(0,1fr) 220px;gap:12px;display:grid}.super-admin-table .super-admin-user-cell,.super-admin-table .super-admin-link-cell{gap:4px;display:grid}.super-admin-table .super-admin-user-cell strong,.super-admin-table .super-admin-link-cell strong{color:var(--text-h)}.super-admin-table .super-admin-user-cell span,.super-admin-table .super-admin-link-cell span,.super-admin-role-current{color:var(--muted);font-size:12px;line-height:1.45}.super-admin-role-select{min-width:170px}.profile-toggle-list{gap:12px;display:grid}.profile-toggle-row{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 76%, transparent);border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.profile-toggle-row strong{color:var(--text-h);margin-bottom:4px;display:block}.profile-toggle-row span{color:var(--muted);font-size:13px;line-height:1.45}.profile-toggle{background:color-mix(in srgb, var(--card-bg-soft) 96%, transparent);border:none;border:1px solid var(--shell-border);cursor:pointer;border-radius:999px;justify-content:flex-start;align-items:center;width:54px;height:32px;padding:3px;display:flex}.profile-toggle span{background:var(--shell-panel-strong);border-radius:999px;width:24px;height:24px;transition:transform .2s;box-shadow:0 8px 18px #02061729}.profile-toggle.active{background:linear-gradient(90deg, var(--accent), var(--accent-strong));border-color:#0000}.profile-toggle.active span{background:#fff;transform:translate(22px)}.profile-security-list{gap:12px;display:grid}.profile-security-item{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 76%, transparent);border-radius:18px;padding:14px 16px}.profile-security-item strong{color:var(--text-h);margin-bottom:6px;display:block}.profile-security-item span{color:var(--muted);font-size:13px;line-height:1.45}.sr-only-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.editable-entity-image{gap:8px;display:grid}.editable-entity-image-frame{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 86%, transparent);box-shadow:var(--shadow);position:relative;overflow:hidden}.editable-entity-image.square .editable-entity-image-frame{border-radius:18px;width:64px;height:64px}.editable-entity-image.profile .editable-entity-image-frame{border-radius:28px;width:112px;height:112px}.editable-entity-image.banner .editable-entity-image-frame{border-radius:18px;width:100%;min-height:156px}.editable-entity-image-preview,.editable-entity-image-fallback{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.editable-entity-image-preview{object-fit:cover;object-position:center}.editable-entity-image-fallback{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;letter-spacing:.04em;font-weight:800}.editable-entity-image.banner .editable-entity-image-fallback{min-height:156px;font-size:2rem}.editable-entity-image.profile .editable-entity-image-fallback{font-size:2rem}.editable-entity-image-actions{flex-wrap:wrap;gap:8px;display:flex}.editable-image-button{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.editable-entity-image-hint{color:var(--muted);font-size:12px}.editable-entity-image-error{color:var(--danger);font-size:12px}.help-assistant{z-index:75;justify-items:end;gap:12px;display:grid;position:fixed;bottom:24px;right:24px}.help-assistant-trigger{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;cursor:pointer;border:none;border-radius:999px;align-items:center;gap:10px;padding:12px 16px;font-weight:700;display:inline-flex;box-shadow:0 22px 44px #02061747}.help-assistant-trigger svg{width:18px;height:18px}.help-assistant-panel{background:var(--shell-panel-strong);border:1px solid var(--shell-border-strong);-webkit-backdrop-filter:blur(18px);border-radius:24px;grid-template-rows:auto 1fr auto auto auto;gap:12px;width:min(420px,100vw - 32px);max-height:min(72vh,680px);padding:16px;display:grid;box-shadow:0 28px 64px #02061757}.help-assistant-head strong{color:var(--text-h);margin-bottom:4px;display:block}.help-assistant-head span{color:var(--muted);font-size:13px}.help-assistant-messages{gap:10px;min-height:180px;display:grid;overflow:auto}.help-assistant-message{border-radius:18px;max-width:88%;padding:12px 14px;font-size:13px;line-height:1.5}.help-assistant-message.assistant{background:color-mix(in srgb, var(--card-bg-soft) 92%, transparent);color:var(--text-h);border:1px solid var(--shell-border);justify-self:start}.help-assistant-message.user{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;justify-self:end}.help-assistant-prompts{flex-wrap:wrap;gap:8px;display:flex}.help-assistant-chip{border:1px solid var(--shell-border);color:var(--text-h);cursor:pointer;background:0 0;border-radius:999px;padding:8px 12px;font-size:12px}.help-assistant-action{justify-self:flex-start}.help-assistant-form{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.session-warning-modal{max-width:460px}.session-warning-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.service-image-editor{margin-bottom:14px}.service-image-editor .editable-entity-image-actions{justify-content:flex-end}.sedes-name-wrap{align-items:center;gap:12px;display:flex}.sede-table-image .editable-entity-image-actions{display:none}.sede-modal-image{margin-bottom:14px}.trainer-image-editor .editable-entity-image-actions{justify-content:flex-start}@media (width<=900px){.help-assistant{justify-items:stretch;bottom:16px;left:16px;right:16px}.help-assistant-trigger{justify-content:center}.help-assistant-panel{width:100%}}.payments-page{gap:24px;display:grid}.payments-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.payments-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.payments-summary-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong);padding:18px}.payments-summary-card span{color:var(--muted);margin-bottom:8px;font-size:13px;display:block}.payments-summary-card strong{color:var(--text-h);font-size:1.45rem}.payments-summary-card small{color:var(--muted);margin-top:8px;font-size:12px;line-height:1.45;display:block}.payments-executive-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;display:grid}.payments-executive-trend-card,.payments-executive-breakdown-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.payments-executive-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.payments-executive-controls{justify-items:end;gap:10px;display:grid}.payments-executive-range{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.payments-executive-date{min-width:148px}.payments-executive-separator{color:var(--muted);text-transform:uppercase;font-size:13px;font-weight:700}.payments-executive-inlineStats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.payments-executive-stat{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 80%, transparent);border-radius:18px;padding:14px 16px}.payments-executive-stat span{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.payments-executive-stat strong{color:var(--text-h);margin-bottom:4px;font-size:1.12rem;display:block}.payments-executive-stat small{color:var(--muted);font-size:12px}.payments-top-grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:18px;display:grid}.payments-form-card,.payments-methods-card,.payments-toolbar-card,.payments-table-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.payments-section-head{margin-bottom:14px}.payments-section-head h3{color:var(--text-h);margin:6px 0 0}.payments-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.payments-source-toggle{grid-column:1/-1;gap:10px;display:flex}.payments-source-toggle .btn{min-width:140px}.payments-form-grid>button{grid-column:1/-1;justify-self:flex-start}.payments-method-list{gap:12px;display:grid}.payments-method-item{gap:8px;display:grid}.payments-method-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.payments-method-head strong{color:var(--text-h)}.payments-method-track{background:var(--feature-panel-track);border-radius:999px;width:100%;height:10px;overflow:hidden}.payments-method-fill{background:linear-gradient(90deg, var(--accent), var(--accent-strong));border-radius:999px;height:100%;box-shadow:0 8px 22px #38bdf83d}.payments-pending-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.payments-pending-list{gap:12px;display:grid}.payments-pending-item{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 80%, transparent);border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.payments-pending-item strong{color:var(--text-h);display:block}.payments-pending-item span{color:var(--muted);font-size:12px;line-height:1.45}.payments-pending-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.payments-toolbar{grid-template-columns:minmax(0,1fr) 220px;gap:12px;display:grid}.payments-table{min-width:960px}.payments-client-cell{gap:4px;display:grid}.payments-client-cell strong{color:var(--text-h)}.payments-client-cell span{color:var(--muted);font-size:12px;line-height:1.45}.payments-receipt-button{white-space:nowrap}.membership-page{gap:24px;display:grid}.membership-header{align-items:flex-start}.membership-summary-grid{margin-top:0}.membership-grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:18px;display:grid}.membership-plan-card,.membership-activity-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.membership-highlight{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent);border-radius:20px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;padding:16px 18px;display:flex}.membership-highlight strong{color:var(--text-h);margin-bottom:4px;font-size:1.05rem;display:block}.membership-highlight span{color:var(--muted);font-size:13px}.membership-progress-block{gap:10px;margin-bottom:16px;display:grid}.membership-progress-track{height:12px}.membership-progress-fill{background:linear-gradient(90deg, #14b8a6, var(--accent-strong));box-shadow:0 10px 24px #14b8a63d}.membership-meta-list{grid-template-columns:repeat(2,minmax(0,1fr))}.membership-kpi-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.membership-kpi-item{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 78%, transparent);border-radius:18px;padding:16px}.membership-kpi-item strong{color:var(--text-h);margin-bottom:6px;font-size:1.4rem;display:block}.membership-kpi-item span{color:var(--muted);font-size:12px;line-height:1.45}.membership-activity-list{gap:12px;display:grid}.membership-activity-item{margin:0}.membership-offers-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.membership-offer-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong);gap:12px;display:grid}.membership-offer-card.recommended{border-color:color-mix(in srgb, #14b8a6 45%, var(--shell-border-strong));box-shadow:0 16px 40px #14b8a61f}.membership-offer-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.membership-offer-head h3{color:var(--text-h);margin:6px 0 0}.membership-offer-head strong{color:var(--text-h);font-size:1.2rem}.membership-offer-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:12px;display:flex}.membership-benefit-list{flex-wrap:wrap;gap:8px;display:flex}.membership-benefit-list-compact{margin-top:12px}.membership-benefit-chip{background:color-mix(in srgb, var(--card-bg-soft) 86%, transparent);border:1px solid var(--shell-border);color:var(--text);border-radius:999px;padding:7px 10px;font-size:12px;line-height:1.3}.membership-checkout-modal{max-width:520px}.membership-checkout-grid{gap:12px;display:grid}.membership-checkout-plan{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent);border-radius:18px;padding:16px}.membership-checkout-plan strong{color:var(--text-h);margin-bottom:6px;font-size:1.1rem;display:block}.membership-checkout-plan span{color:var(--muted);margin-bottom:8px;font-size:13px;line-height:1.5;display:block}.membership-checkout-plan small{color:var(--text-h);font-weight:700}.client-alert-card{border-color:var(--shell-border-strong);background:var(--feature-panel-bg);justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.client-alert-card strong{color:var(--text-h);margin-bottom:4px;display:block}.client-alert-card.warn{border-color:color-mix(in srgb, #f59e0b 44%, var(--shell-border))}.client-alert-card.danger{border-color:color-mix(in srgb, #ef4444 44%, var(--shell-border))}.client-home-page{gap:20px;display:grid}.client-home-hero{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:18px;display:grid}.client-home-hero-main,.client-home-hero-side,.client-home-next-card,.client-home-membership-card,.client-home-action-card,.payments-client-recent-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.client-home-hero-main{background:radial-gradient(circle at top left, #38bdf829, transparent 34%), radial-gradient(circle at bottom right, #14b8a624, transparent 30%), var(--feature-panel-bg);position:relative;overflow:hidden}.client-home-hero-main h3,.client-home-hero-side h3,.client-home-next-card h3,.client-home-membership-card h3,.client-home-action-card h3{color:var(--text-h);margin:8px 0 10px}.client-home-hero-actions{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.client-home-hero-visual{border:1px solid var(--shell-border);border-radius:24px;min-height:180px;margin-top:18px;position:relative;overflow:hidden}.client-home-hero-image{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.client-home-hero-imageOverlay{background:linear-gradient(135deg,#0307123d,#080f1ead);position:absolute;inset:0}.client-home-hero-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080f1e94;border:1px solid #ffffff14;border-radius:18px;gap:4px;min-width:min(100%,260px);padding:14px 16px;display:grid;position:absolute;bottom:18px;left:18px}.client-home-hero-panel strong{color:#f8fafc;font-size:1.05rem}.client-home-hero-panel span{color:#e2e8f0d1;font-size:12px}.client-home-hero-panel small{color:#e2e8f0ad;text-transform:uppercase;letter-spacing:.06em;font-size:11px}.client-home-progress-ring{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent);border-radius:20px;gap:6px;margin-bottom:14px;padding:18px;display:grid}.client-home-progress-ring strong{color:var(--text-h);font-size:1.8rem}.client-home-progress-ring span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px}.client-home-hero-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.client-home-hero-kpis div{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent);border-radius:18px;padding:14px}.client-home-hero-kpis strong{color:var(--text-h);margin-bottom:4px;display:block}.client-home-hero-kpis span{color:var(--muted);font-size:12px}.client-home-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:18px;display:grid}.client-home-spotlight{grid-template-columns:minmax(0,1.35fr) minmax(320px,.9fr);gap:18px;display:grid}.client-home-spotlight-card,.client-home-summary-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.client-home-spotlight-card{background:radial-gradient(circle at top left, #38bdf82e, transparent 34%), radial-gradient(circle at 88% 22%, #f59e0b1f, transparent 28%), linear-gradient(135deg, color-mix(in srgb, var(--feature-panel-bg) 92%, transparent), color-mix(in srgb, var(--card-bg-soft) 88%, transparent));padding:24px;position:relative;overflow:hidden}.client-home-spotlight-card:after{content:"";filter:blur(8px);background:#14b8a614;border-radius:999px;width:240px;height:240px;position:absolute;inset:auto -80px -110px auto}.client-home-spotlight-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.client-home-spotlight-pill{color:#d8f4ff;letter-spacing:.08em;text-transform:uppercase;background:#38bdf81f;border:1px solid #38bdf83d;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-size:11px;display:inline-flex}.client-home-spotlight-card h3{max-width:14ch;color:var(--text-h);margin:8px 0 10px;font-size:clamp(1.8rem,2vw,2.5rem);line-height:1.02}.client-home-spotlight-card>p{max-width:62ch;margin-bottom:20px}.client-home-spotlight-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.client-home-spotlight-metrics div{border:1px solid var(--shell-border);background:linear-gradient(180deg, color-mix(in srgb, var(--card-bg-soft) 90%, transparent), color-mix(in srgb, var(--feature-panel-bg) 94%, transparent));z-index:1;border-radius:20px;padding:16px;position:relative}.client-home-spotlight-metrics span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-size:11px;display:block}.client-home-spotlight-metrics strong{color:var(--text-h);margin-bottom:6px;font-size:1.02rem;line-height:1.25;display:block}.client-home-spotlight-metrics small{color:var(--text);font-size:12px;line-height:1.5}.client-home-summary-stack{gap:18px;display:grid}.client-home-summary-card{background:linear-gradient(180deg, color-mix(in srgb, var(--feature-panel-bg) 96%, transparent), color-mix(in srgb, var(--card-bg-soft) 84%, transparent));gap:12px;min-height:156px;padding:20px;display:grid;position:relative;overflow:hidden}.client-home-summary-card:before{content:"";background:var(--summary-accent,var(--accent));width:4px;position:absolute;inset:0 auto 0 0}.client-home-summary-card.accent-cyan{--summary-accent:#38bdf8}.client-home-summary-card.accent-emerald{--summary-accent:#14b8a6}.client-home-summary-card.accent-amber{--summary-accent:#f59e0b}.client-home-summary-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.client-home-summary-top span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.client-home-summary-top small{background:color-mix(in srgb, var(--summary-accent) 18%, transparent);color:var(--text-h);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:5px 9px;font-size:11px}.client-home-summary-card strong{color:var(--text-h);font-size:2.1rem;line-height:1}.client-home-summary-card p{color:var(--text);margin:0;font-size:13px;line-height:1.5}.client-home-next-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.client-home-editorial-section,.client-home-recommendations-shell{grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:18px;display:grid}.client-home-editorial-intro,.client-home-recommendation-intro,.client-home-action-card,.client-home-recommendation-list-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.client-home-editorial-intro,.client-home-recommendation-intro{background:radial-gradient(circle at top left, #38bdf824, transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--feature-panel-bg) 96%, transparent), color-mix(in srgb, var(--card-bg-soft) 86%, transparent));padding:24px}.client-home-editorial-intro h3,.client-home-recommendation-intro h3{color:var(--text-h);margin:8px 0 10px;font-size:clamp(1.45rem,1.8vw,2rem);line-height:1.08}.client-home-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.client-home-recommendations-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.client-home-action-card{background:linear-gradient(180deg, color-mix(in srgb, var(--feature-panel-bg) 98%, transparent), color-mix(in srgb, var(--card-bg-soft) 82%, transparent));align-content:start;gap:12px;min-height:210px;padding:22px;display:grid;position:relative;overflow:hidden}.client-home-action-card:after{content:"";background:color-mix(in srgb, var(--action-accent,var(--accent)) 20%, transparent);border-radius:999px;width:120px;height:120px;position:absolute;bottom:-34px;right:-34px}.client-home-action-card.cyan{--action-accent:#38bdf8}.client-home-action-card.emerald{--action-accent:#14b8a6}.client-home-action-card.amber{--action-accent:#f59e0b}.client-home-action-card h3{color:var(--text-h);max-width:14ch;margin:0;font-size:1.3rem;line-height:1.1}.client-home-action-card .btn{z-index:1;margin-top:auto;position:relative}.client-home-recommendation-list-card{background:radial-gradient(circle at top right, #14b8a624, transparent 28%), linear-gradient(180deg, color-mix(in srgb, var(--feature-panel-bg) 98%, transparent), color-mix(in srgb, var(--card-bg-soft) 82%, transparent));padding:22px}.client-home-recommendation-list-card h3{color:var(--text-h);margin:8px 0 14px}.payments-client-recent-grid{grid-template-columns:1fr;gap:18px;display:grid}.member-plan-picker{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:10px;display:grid}.member-plan-option{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 80%, transparent);text-align:left;color:var(--text);cursor:pointer;border-radius:16px;gap:6px;padding:14px;display:grid}.member-plan-option strong{color:var(--text-h)}.member-plan-option span{color:var(--muted);font-size:12px;line-height:1.45}.member-plan-option small{color:var(--text-h);font-weight:700}.member-plan-option.active{border-color:color-mix(in srgb, var(--accent) 56%, var(--shell-border));box-shadow:0 12px 30px #38bdf81f}.client-reservas-page{gap:20px;display:grid}.client-reservas-hero{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:18px;margin-bottom:4px;display:grid}.client-reservas-hero-main,.client-reservas-hero-side{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.client-reservas-hero-main{background:radial-gradient(circle at top right, #14b8a629, transparent 36%), radial-gradient(circle at bottom left, #38bdf824, transparent 32%), var(--feature-panel-bg);position:relative;overflow:hidden}.client-reservas-hero-main h3,.client-reservas-hero-side h3{color:var(--text-h);margin:8px 0 10px}.client-reservas-hero-pills{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.client-reservas-hero-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.client-reservas-hero-meta div{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 82%, transparent);border-radius:18px;padding:14px}.client-reservas-hero-meta strong{color:var(--text-h);margin-bottom:4px;font-size:1.25rem;display:block}.client-reservas-hero-meta span{color:var(--muted);font-size:12px}.client-service-card{background:linear-gradient(180deg, color-mix(in srgb, var(--card-bg-soft) 86%, transparent), var(--card-bg)), var(--card-bg)}.reservas-client-history-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.reservas-client-toolbar{margin-bottom:16px}.users-page{gap:18px;display:grid}.users-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.users-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.users-summary-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong);padding:18px}.users-summary-card span{color:var(--muted);margin-bottom:8px;font-size:13px;display:block}.users-summary-card strong{color:var(--text-h);font-size:1.45rem}.users-top-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:14px;display:grid}.users-table-card,.users-settings-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.users-toolbar{grid-template-columns:minmax(0,1fr) 220px;gap:12px;margin-bottom:14px;display:grid}.users-table{min-width:940px}.users-cell-stack{gap:4px;display:grid}.users-cell-stack strong{color:var(--text-h)}.users-cell-stack span{color:var(--muted);font-size:12px;line-height:1.45}.users-actions{flex-wrap:wrap;gap:8px;display:flex}.users-section-head{margin-bottom:14px}.users-section-head h3{color:var(--text-h);margin:6px 0 0}.users-guidance-list{gap:12px;display:grid}.users-guidance-item{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 74%, transparent);border-radius:16px;padding:14px 16px}.users-guidance-item strong{color:var(--text-h);margin-bottom:6px;display:block}.users-guidance-item p{margin:0;line-height:1.55}.users-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.users-toggle-list{margin-bottom:14px}.users-modal{max-width:760px}.users-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.users-form-full{grid-column:1/-1}.users-checkbox-row{border:1px solid var(--shell-border);background:color-mix(in srgb, var(--card-bg-soft) 76%, transparent);color:var(--text-h);border-radius:14px;align-items:center;gap:10px;padding:12px 14px;display:flex}.users-checkbox-row input{accent-color:var(--accent)}.users-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.tarifas-page{gap:18px;display:grid}.tarifas-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.tarifas-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.tarifas-summary-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong);padding:18px}.tarifas-summary-card span{color:var(--muted);margin-bottom:8px;font-size:13px;display:block}.tarifas-summary-card strong{color:var(--text-h);font-size:1.45rem}.tarifas-summary-card small{color:var(--muted);margin-top:6px;display:block}.tarifas-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;display:grid}.tarifas-config-card,.tarifas-custom-card,.tarifas-table-card{background:var(--feature-panel-bg);border-color:var(--shell-border-strong)}.tarifas-section-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.tarifas-section-head h3{color:var(--text-h);margin:6px 0 0}.tarifas-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.tarifas-form-grid label{color:var(--muted);gap:6px;font-size:13px;display:grid}.tarifas-form-grid label span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.tarifas-textarea{box-sizing:border-box;resize:vertical;width:100%}.tarifas-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.tarifas-table-head{align-items:flex-end}.tarifas-filter{min-width:220px}.tarifas-table{min-width:980px}.tarifas-rate-modal{max-width:420px}@media (width<=800px){.service-grid{grid-template-columns:1fr}.metrics-row{flex-direction:column;align-items:flex-start}.members-filters{grid-template-columns:1fr}.members-results-bar{justify-content:flex-start}.sedes-overview-grid{grid-template-columns:1fr}.sedes-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sedes-toolbar{flex-direction:column;align-items:stretch}.sedes-toolbar .search-neon{max-width:none}.sedes-results{white-space:normal}.sedes-modal-head{flex-direction:column;align-items:flex-start}.sedes-modal-grid{grid-template-columns:1fr}.reservas-pricing-head{flex-direction:column;align-items:flex-start}.reservas-pricing-grid{grid-template-columns:1fr}.trainers-overview-top{flex-direction:column;align-items:flex-start}.trainers-overview-stats{grid-template-columns:1fr}.trainers-load-rowHead,.trainer-card-top{flex-direction:column;align-items:flex-start}.trainer-facts-grid,.trainers-grid{grid-template-columns:1fr}.member-card{grid-template-columns:auto minmax(0,1fr)}.member-actions{flex-direction:row;grid-column:1/-1;justify-content:space-between;align-items:center}.trainer-meta{justify-content:flex-start}.sede-summary-chart{flex-basis:100%}.member-distribution-rowHead{flex-direction:column;align-items:flex-start}.member-distribution-value{white-space:normal}.member-modal-actions{justify-content:stretch}.profile-hero-grid,.profile-hero-meta,.profile-content-grid,.profile-form-grid{grid-template-columns:1fr}.profile-header{flex-direction:column;align-items:stretch}.super-admin-top-grid,.super-admin-summary-grid,.super-admin-toolbar,.super-admin-invite-form,.payments-summary-grid,.payments-executive-grid,.payments-top-grid,.membership-grid,.membership-offers-grid,.client-home-hero,.client-home-spotlight,.client-home-grid,.client-home-editorial-section,.client-home-recommendations-shell,.client-home-actions-grid,.client-home-recommendations-grid,.client-reservas-hero,.payments-toolbar,.payments-form-grid,.users-summary-grid,.users-top-grid,.users-toolbar,.users-settings-grid,.users-form-grid,.tarifas-summary-grid,.tarifas-layout,.tarifas-form-grid{grid-template-columns:1fr}.tarifas-header{flex-direction:column;align-items:stretch}.client-home-spotlight-metrics{grid-template-columns:1fr}.payments-executive-head{flex-direction:column;align-items:flex-start}.payments-executive-controls{justify-items:start;width:100%}.payments-executive-range{justify-content:flex-start;width:100%}.payments-executive-date{width:100%;min-width:0}.payments-executive-inlineStats{grid-template-columns:1fr}.payments-source-toggle{flex-direction:column}.membership-highlight{flex-direction:column;align-items:flex-start}.membership-meta-list,.membership-kpi-list{grid-template-columns:1fr}.client-alert-card{flex-direction:column;align-items:flex-start}.client-home-hero-kpis,.client-home-next-meta,.client-reservas-hero-meta{grid-template-columns:1fr}}@keyframes route-fade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-gradient-shift{0%{background-position:0%;transform:translate(-2%)scale(1.02)}50%{background-position:100%;transform:translate(2%,-1%)scale(1.05)}to{background-position:0%;transform:translate(-2%)scale(1.02)}}@keyframes auth-form-enter{0%{opacity:0;transform:translateY(16px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes alert-shake{0%{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}to{transform:translate(0)}}@keyframes section-reveal{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:scale(.9)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.reservas-extra-persons-alert{background:color-mix(in srgb, var(--warning,#f97316) 12%, transparent);border:1px solid var(--warning,#f97316);border-radius:10px;flex-direction:column;gap:4px;margin-bottom:16px;padding:12px 16px;display:flex}.reservas-extra-persons-alert strong{color:var(--warning,#f97316);font-size:.9rem}.reservas-extra-persons-alert span{color:var(--muted);font-size:.82rem}.reservas-total-highlight{border-top:1px solid var(--border);margin-top:4px;padding-top:8px}.reservas-total-highlight strong{color:var(--primary);font-size:1.1rem}.tarifas-form-full{grid-column:1/-1}.room-pricing-bar{background:var(--surface-hover);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:4px;margin-top:16px;padding:10px 14px;display:flex}.room-pricing-bar .price-label{text-transform:uppercase;color:var(--muted);letter-spacing:.05em;font-size:.75rem;font-weight:600}.room-pricing-bar .price-value{color:var(--text);font-size:1.05rem;font-weight:700}.advanced-modal{padding:0;overflow:hidden}.modal-header-advanced{border-bottom:1px solid var(--border);background:var(--surface-hover);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header-advanced h3{margin:0;font-size:1.1rem;font-weight:600}.advanced-tabs{background:var(--surface-hover);border-bottom:1px solid var(--border);padding:0 16px;display:flex}.advanced-tabs .atab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:12px 20px;font-size:.95rem;font-weight:500;transition:all .2s}html,body{width:100%;height:100%;margin:0;padding:0;overflow:hidden}#root{flex-direction:column;width:100%;height:100%;display:flex}*{box-sizing:border-box}@media (width<=640px){.dashboard-shell{gap:12px;padding:12px}.topbar{gap:8px;padding:12px}.topbar-left,.topbar-right{gap:8px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cards-row{grid-template-columns:1fr}}.sidebar-cluster,.sidebar{box-sizing:border-box}.dashboard-shell>*{min-width:0;overflow-x:hidden}.advanced-tabs .atab:hover{color:var(--text)}.advanced-tabs .atab.active{color:var(--primary);border-bottom-color:var(--primary)}.modal-body-advanced{padding:24px}.highlight-select{border-color:var(--primary);background-color:color-mix(in srgb, var(--primary) 5%, transparent)}.hidden-empty:empty{display:none}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:6px;margin-top:16px;display:grid}.cal-day-name{text-align:center;color:var(--muted);text-transform:uppercase;padding-bottom:8px;font-size:.8rem;font-weight:600}.cal-day{aspect-ratio:1;cursor:pointer;border:1px solid var(--border);border-radius:8px;justify-content:center;align-items:center;font-weight:500;transition:all .2s;display:flex}.cal-day.other-month{opacity:.3;pointer-events:none}.cal-day.past{opacity:.5;filter:grayscale();pointer-events:none}.cal-day.available{background:var(--surface-hover)}.cal-day.available:hover{background:color-mix(in srgb, var(--success) 15%, transparent);border-color:var(--success)}.cal-day.blocked{background:color-mix(in srgb, var(--danger) 15%, transparent);border-color:var(--danger);color:var(--danger)}.cal-day.blocked:hover{background:color-mix(in srgb, var(--success) 15%, transparent)}.calendar-legend{justify-content:center;gap:16px;margin-top:16px;display:flex}.leg-item{color:var(--muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.leg-item .dot{border-radius:50%;width:10px;height:10px}.leg-item .dot.available{background:var(--surface-hover);border:1px solid var(--border)}.leg-item .dot.blocked{background:var(--danger)}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.calendar-header h4{margin:0;font-size:1.1rem;font-weight:600}@media (prefers-reduced-motion:reduce){body:before,.auth-gradient,.dashboard-route-stage,.dashboard-route-stage>*>*,.modal-overlay,.modal{transition:none!important;animation:none!important;transform:none!important}:where(body,.topbar,.sidebar-footer,.theme-switcher,.theme-chip,.menu-item,.menu-icon,.card,.service-card,.trainer-card,.trainer-fact-card,.trainers-overview-card,.trainers-mini-stat,.trainers-load-board,.trainers-pulse-item,.sedes-overview-card,.sedes-highlight-card,.sedes-mini-stat,.sedes-modal-card,.members-table-card,.member-metric-card,.modal,.table th,.table td,button,input,select,textarea){transition:none!important}}.co-page{border:1px solid var(--shell-border);background:var(--shell-panel);border-radius:16px;height:calc(100vh - 100px);min-height:400px;display:flex;overflow:hidden}.co-sidebar{border-right:1px solid var(--shell-border);background:var(--shell-panel-strong);flex-direction:column;width:220px;min-width:220px;display:flex}.co-sidebar-head{color:var(--text-h);border-bottom:1px solid var(--shell-border);letter-spacing:.03em;padding:16px 18px;font-size:13px}.co-channel-type-filters{border-bottom:1px solid var(--shell-border);flex-wrap:wrap;gap:4px;padding:8px 10px;display:flex}.co-type-chip{border:1px solid var(--shell-border);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:600;transition:all .15s}.co-type-chip:hover{background:#ffffff0a}.co-type-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.co-msg-search{flex-shrink:0;max-width:180px;margin-left:auto;font-size:12px;padding:5px 10px!important}.co-channel-list{flex:1;padding:6px 0;overflow-y:auto}.co-channel-item{width:100%;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:9px 18px;font-size:13px;transition:background .15s;display:flex}.co-channel-item:hover{background:var(--sidebar-item-hover)}.co-channel-item.active{background:var(--sidebar-item-active);color:var(--accent);font-weight:600}.co-channel-icon{color:var(--muted);font-size:15px;font-weight:700}.co-channel-name{flex:1}.co-channel-badge{background:var(--accent);color:#fff;border-radius:10px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;display:flex}.co-main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.co-main-head{border-bottom:1px solid var(--shell-border);background:var(--shell-panel-strong);align-items:center;gap:8px;padding:14px 20px;display:flex}.co-main-head strong{color:var(--text-h);font-size:14px}.co-main-channel-icon{color:var(--accent);font-size:18px;font-weight:700}.co-main-hint{color:var(--muted);opacity:.7;margin-left:auto;font-size:11px}.co-main-hint code{background:var(--card-bg-soft);font-family:var(--mono);border-radius:4px;padding:1px 5px;font-size:10px}.co-messages{flex-direction:column;flex:1;gap:6px;padding:18px 20px;display:flex;overflow-y:auto}.co-center-msg{text-align:center;color:var(--muted);padding:48px 20px;font-size:13px;line-height:1.6}.co-msg{gap:10px;padding:8px 0;display:flex}.co-msg.own{flex-direction:row-reverse}.co-msg.system-msg{justify-content:center}.co-msg-system{color:var(--muted);background:var(--card-bg-soft);border-radius:12px;padding:4px 14px;font-size:11px}.co-msg-avatar{background:var(--accent-bg);width:32px;height:32px;color:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.co-msg.own .co-msg-avatar{background:var(--accent);color:#fff}.co-msg-body{min-width:0;max-width:70%}.co-msg-meta{align-items:center;gap:8px;margin-bottom:3px;display:flex}.co-msg-meta strong{color:var(--text-h);font-size:12px}.co-msg-meta span{color:var(--muted);font-size:11px}.co-msg-content{color:var(--text);word-break:break-word;font-size:13px;line-height:1.55}.co-msg.own .co-msg-content{background:var(--accent-bg);border-radius:12px 2px 12px 12px;padding:8px 12px}.co-typing{color:var(--muted);padding:4px 20px 6px;font-size:11px}.co-typing-dots{color:var(--accent);letter-spacing:2px;font-weight:700}.co-mention-overlay{z-index:20;position:absolute;bottom:60px;left:20px;right:20px}.co-mention-panel{background:var(--shell-panel-strong);border:1px solid var(--shell-border-strong);box-shadow:var(--shadow);border-radius:12px;padding:8px}.co-mention-title{color:var(--text-h);align-items:center;gap:8px;padding:8px 10px 10px;font-size:12px;font-weight:600;display:flex}.co-mention-cat-btn{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;transition:background .12s;display:flex}.co-mention-cat-btn:hover{background:var(--sidebar-item-hover);color:var(--text-h)}.co-mention-cat-emoji{font-size:16px}.co-mention-cancel{width:100%;color:var(--muted);cursor:pointer;background:0 0;border:none;margin-top:4px;padding:8px;font-size:11px}.co-mention-cancel:hover{color:var(--text-h)}.co-mention-back{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:16px}.co-mention-search-panel{flex-direction:column;max-height:480px;display:flex}.co-mention-search-input{width:calc(100% - 8px);margin:0 4px 8px;font-size:13px}.co-mention-filters{flex-direction:column;gap:6px;padding:0 8px 8px;display:flex}.co-mention-filter-group{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.co-mention-filter-label{color:var(--muted);white-space:nowrap;text-transform:uppercase;letter-spacing:.3px;margin-right:2px;font-size:10px;font-weight:600}.co-mention-filter-chip{background:var(--card-bg-soft);border:1px solid var(--shell-border);color:var(--text-h);cursor:pointer;border-radius:12px;padding:2px 10px;font-size:10px;transition:all .15s}.co-mention-filter-chip:hover{border-color:var(--accent-border);background:var(--accent-bg)}.co-mention-filter-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.co-mention-count{color:var(--muted);justify-content:space-between;align-items:center;padding:0 10px 6px;font-size:10px;display:flex}.co-mention-clear-filters{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:10px}.co-mention-clear-filters:hover{text-decoration:underline}.co-mention-results{flex:1;max-height:300px;overflow-y:auto}.co-mention-empty{text-align:center;color:var(--muted);padding:20px;font-size:12px}.co-mention-result-item{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-size:12px;transition:background .12s;display:flex}.co-mention-result-item:hover{background:var(--sidebar-item-hover)}.co-mention-result-text{flex-direction:column;gap:1px;min-width:0;display:flex}.co-mention-result-text strong{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.co-mention-result-text span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.co-attach-btn{border:1px solid var(--accent-border);background:var(--accent-bg);width:36px;height:36px;color:var(--accent);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:700;transition:background .12s;display:flex}.co-attach-btn:hover{background:var(--accent);color:#fff}.co-input-form{border-top:1px solid var(--shell-border);background:var(--shell-panel-strong);gap:8px;padding:12px 20px;display:flex}.co-input{flex:1;font-size:13px}.co-send-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 18px;font-size:12px;font-weight:600}.co-send-btn:disabled{opacity:.4;cursor:default}.co-data-card{background:var(--card-bg-soft);border:1px solid var(--shell-border);border-radius:10px;min-width:200px;max-width:320px;margin:6px 0;padding:10px 14px;display:inline-block}.co-restricted{opacity:.6;color:var(--muted);font-size:12px}.co-dc-loading,.co-dc-error{color:var(--muted);font-size:12px}.co-dc-header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.co-dc-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:5px;padding:2px 7px;font-size:10px;font-weight:700}.co-dc-badge.reserva{color:var(--accent);background:#38bdf826}.co-dc-badge.pago{color:var(--success);background:#22c55e26}.co-dc-badge.huesped{color:var(--warning);background:#f59e0b26}.co-dc-badge.habitacion{color:var(--muted);background:#94a3b826}.co-dc-label{color:var(--text-h);font-size:12px;font-weight:600}.co-dc-body{flex-direction:column;gap:4px;display:flex}.co-dc-row{justify-content:space-between;font-size:11px;display:flex}.co-dc-row span{color:var(--muted)}.co-dc-row strong{color:var(--text-h);font-weight:600}.co-dc-detail-btn{border:1px solid var(--accent-border);color:var(--accent);cursor:pointer;background:0 0;border-radius:6px;width:100%;margin-top:8px;padding:5px 12px;font-size:11px;font-weight:600}.co-dc-detail-btn:hover{background:var(--accent-bg)}.co-toast{background:var(--shell-panel-strong);border:1px solid var(--accent-border);z-index:9999;cursor:pointer;border-radius:12px;max-width:340px;padding:12px 18px;animation:.3s co-toast-in;position:fixed;bottom:24px;right:24px;box-shadow:0 10px 40px #00000080}.co-toast-head{color:var(--accent);align-items:center;gap:6px;margin-bottom:4px;display:flex}.co-toast-head strong{color:var(--text-h);font-size:12px}.co-toast p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;line-height:1.4;overflow:hidden}@keyframes co-toast-in{0%{opacity:0;transform:translateY(16px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=768px){.co-sidebar,.co-main-hint{display:none}}@media (width<=900px){.topbar{align-items:flex-start}.topbar-right{justify-content:flex-start;width:100%}.notification-panel{width:min(100%,420px);left:0;right:auto}}.global-toast-container{z-index:10000;pointer-events:none;flex-direction:column;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.global-toast{pointer-events:auto;background:color-mix(in srgb, var(--shell-panel-strong) 92%, var(--accent-bg));border:1px solid var(--accent-border);-webkit-backdrop-filter:blur(24px);min-width:320px;max-width:440px;color:var(--text-h);border-radius:20px;align-items:center;gap:14px;padding:16px 20px;font-size:14.5px;font-weight:500;line-height:1.5;animation:.45s cubic-bezier(.22,1,.36,1) forwards toast-in;display:flex;box-shadow:0 20px 48px #0206177a}.global-toast i{background:linear-gradient(135deg, var(--success), #16a34a);color:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:15px;font-style:normal;display:flex;box-shadow:0 4px 12px #22c55e4d}@keyframes toast-in{0%{opacity:0;transform:translate(40px)scale(.92)}to{opacity:1;transform:translate(0)scale(1)}}.global-modal-overlay{-webkit-backdrop-filter:blur(10px);z-index:9999;background:#020617b8;justify-content:center;align-items:center;padding:24px;animation:.3s fade-in;display:flex;position:fixed;inset:0}.global-modal{background:var(--shell-panel-strong);border:1px solid var(--shell-border-strong);border-radius:28px;width:100%;max-width:480px;animation:.4s cubic-bezier(.34,1.56,.64,1) modal-pop;overflow:hidden;box-shadow:0 32px 80px #02061799}.error-modal{border-color:#f8717166}.drop-shadow-danger{box-shadow:0 32px 80px #f8717126,0 0 0 1px #f8717133}.global-modal-header{border-bottom:1px solid var(--shell-border);padding:24px 28px 18px}.global-modal-header h3{color:var(--text-h);margin:0;font-size:1.25rem}.error-header h3{color:#fca5a5}.global-modal-body{color:var(--text);padding:24px 28px;line-height:1.6}.global-modal-footer{background:#ffffff05;justify-content:flex-end;gap:12px;padding:20px 28px 24px;display:flex}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.reservas-datetime-group{border:1px solid var(--shell-border);background:#ffffff05;border-radius:14px;align-items:flex-end;gap:12px;padding:12px;display:flex}.reservas-datetime-group label{flex:1}.time-selector-field{flex-direction:column;gap:6px;min-width:140px;display:flex}.time-selector-label{text-transform:uppercase;color:var(--muted);letter-spacing:.5px;font-size:11px;font-weight:600}.time-parts{align-items:center;gap:4px;display:flex}.time-parts .sep{color:var(--muted);opacity:.6;font-weight:700}.time-parts .input.tiny{text-align:center;width:48px;padding:6px 4px;font-size:14px;font-weight:600}.ampm-toggle{background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--accent);cursor:pointer;border-radius:8px;min-width:40px;padding:6px 10px;font-size:12px;font-weight:700;transition:all .2s}.ampm-toggle:hover{background:var(--accent);color:#fff}.reservas-compact-grid{gap:16px}.time-parts.fixed{flex-direction:column;align-items:flex-start;gap:2px}.time-fixed-display{color:var(--accent);letter-spacing:-.5px;font-size:1.1rem;font-weight:700}.time-fixed-hint{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:500}.time-selector-field{border-left:2px solid var(--accent-border);padding:4px 8px}@keyframes backup-spin{to{transform:rotate(360deg)}}@keyframes backup-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes backup-progress{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes backup-pop-in{0%{opacity:0;transform:translateY(8px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes backup-check{0%{stroke-dashoffset:20px;opacity:0}50%{opacity:1}to{stroke-dashoffset:0;opacity:1}}.backup-card{transition:border-color .3s,box-shadow .3s}.backup-card.backup-active{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent)}.backup-spinner{border:2.5px solid color-mix(in srgb, var(--accent) 25%, transparent);border-top-color:var(--accent);vertical-align:middle;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite backup-spin;display:inline-block}.backup-spinner.sm{border-width:2px;width:14px;height:14px}.backup-progress-bar{background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:4px;height:4px;overflow:hidden}.backup-progress-fill{background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 60%, #fff), var(--accent));background-size:200% 100%;border-radius:4px;height:100%;transition:width .3s;animation:1.6s infinite backup-progress}.backup-stat{background:var(--shell-bg);border:1px solid var(--shell-border);text-align:center;border-radius:10px;padding:14px;transition:all .25s}.backup-stat:hover{border-color:var(--accent-border);transform:translateY(-2px)}.backup-stat-value{font-size:20px;font-weight:800;line-height:1.2;transition:color .3s}.backup-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-top:4px;font-size:11px}.backup-dot{vertical-align:middle;border-radius:50%;width:10px;height:10px;margin-right:6px;transition:background .3s;display:inline-block}.backup-dot.on{background:var(--success);box-shadow:0 0 6px var(--success);animation:2s infinite backup-pulse}.backup-dot.off{background:var(--warn)}.backup-btn{cursor:pointer;border:1px solid var(--border);background:var(--shell-bg);color:var(--text-h);border-radius:10px;align-items:center;gap:8px;padding:9px 18px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex;position:relative;overflow:hidden}.backup-btn:hover:not(:disabled){background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.backup-btn:disabled{opacity:.55;cursor:not-allowed}.backup-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.backup-btn.primary:hover:not(:disabled){filter:brightness(1.08)}.backup-btn.danger:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 12%, transparent);border-color:var(--danger);color:var(--danger)}.backup-result{border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:500;animation:.35s cubic-bezier(.22,1,.36,1) backup-pop-in;display:flex}.backup-result.success{background:color-mix(in srgb, var(--success) 10%, transparent);color:var(--success);border:1px solid color-mix(in srgb, var(--success) 25%, transparent)}.backup-result.error{background:color-mix(in srgb, var(--danger) 10%, transparent);color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 25%, transparent)}.backup-result.info{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 25%, transparent)}.backup-result svg.check{stroke-dasharray:20;stroke-dashoffset:0;animation:.5s forwards backup-check}.portal-root[data-theme=light]{--bg:#f3f6fb;--text-h:#1e293b;--accent:#2563eb;--card-bg:#ffffffbf;--card-border:#2563eb1a;--text-body:#475569;--text-muted:#64748b}.portal-root[data-theme=dark]{--bg:#0f172a;--text-h:#f1f5f9;--accent:#60a5fa;--card-bg:#ffffff0f;--card-border:#ffffff1a;--text-body:#94a3b8;--text-muted:#64748b}.glass{-webkit-backdrop-filter:blur(12px);background:#fff9;border:1px solid #fffc;border-radius:16px}[data-theme=light] .glass{background:var(--card-bg,#ffffffbf);border:1px solid var(--card-border,#2563eb1a)}[data-theme=dark] .glass{background:var(--card-bg,#ffffff0f);border:1px solid var(--card-border,#ffffff1a)}[data-theme=dark] .portal-blog-card p,[data-theme=dark] .portal-info-card p,[data-theme=dark] .portal-info-details,[data-theme=dark] .portal-muted,[data-theme=dark] .portal-room-meta-inline,[data-theme=dark] .wizard-room-pricing span,[data-theme=dark] .wizard-room-pricing small,[data-theme=dark] .wizard-summary-line,[data-theme=dark] .portal-policy-item span{color:var(--text-body,#94a3b8)}[data-theme=dark] .portal-blog-card h3,[data-theme=dark] .portal-info-card h3,[data-theme=dark] .wizard-room-top h4,[data-theme=dark] .portal-featured-header h3,[data-theme=dark] .wizard-checkout-section h4,[data-theme=dark] .wizard-summary-room strong,[data-theme=dark] .wizard-summary-dates strong,[data-theme=dark] .portal-policy-item strong,[data-theme=dark] .portal-pane h3{color:var(--text-h,#f1f5f9)}[data-theme=dark] .portal-nav{background:#0f172ae6;border-bottom-color:#ffffff12}[data-theme=dark] .portal-hero-immersive{background:linear-gradient(135deg,#60a5fa14,#60a5fa08),linear-gradient(#0f172a 0%,#1e293b 100%)}[data-theme=dark] .portal-nav-link{color:#f1f5f999}[data-theme=dark] .portal-nav-link:hover{color:var(--text-h,#f1f5f9);background:#60a5fa1a}[data-theme=dark] .portal-nav-link.active{color:var(--accent,#60a5fa);background:#60a5fa26}[data-theme=dark] .portal-footer{background:#60a5fa0a;border-top-color:#ffffff12}[data-theme=dark] .portal-footer-copy{color:#475569}[data-theme=dark] .portal-footer-links button{color:#64748b}[data-theme=dark] .portal-footer-links button:hover{color:var(--text-h,#f1f5f9)}[data-theme=dark] .portal-hero-search{background:#1e293bcc;border-color:#60a5fa33}[data-theme=dark] .input,[data-theme=dark] select.input{color:#f1f5f9;background:#0f172acc;border-color:#60a5fa33}[data-theme=dark] .portal-pill-type{color:var(--accent,#60a5fa);background:#60a5fa26;border-color:#60a5fa33}[data-theme=dark] .portal-amenity-tag{color:#94a3b8;background:#60a5fa14;border-color:#60a5fa1f}[data-theme=dark] .wizard-room-card{background:#ffffff0a}[data-theme=dark] .portal-stat-card strong{color:var(--text-h,#f1f5f9)}[data-theme=dark] .portal-stat-card span{color:var(--text-body,#94a3b8)}.portal-root{background:var(--bg,#f3f6fb);min-height:100vh;color:var(--text-h,#1e293b);flex-direction:column;display:flex}.portal-nav{-webkit-backdrop-filter:blur(12px);z-index:100;background:#ffffffd9;border-bottom:1px solid #2563eb14;justify-content:space-between;align-items:center;padding:14px 32px;display:flex;position:sticky;top:0}.portal-nav-brand{align-items:center;gap:8px;display:flex}.portal-logo-icon{color:var(--accent,#2563eb);filter:drop-shadow(0 0 4px #2563eb33);font-size:20px}.portal-nav-brand strong{color:var(--accent,#2563eb);letter-spacing:.02em;font-size:18px}.portal-nav-links{align-items:center;gap:4px;display:flex}.portal-nav-link{color:#1e293b99;cursor:pointer;background:0 0;border:none;border-radius:12px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s}.portal-nav-link:hover{color:var(--text-h,#1e293b);background:#2563eb0f}.portal-nav-link.active{color:var(--accent,#2563eb);background:#2563eb1f;box-shadow:0 0 8px #2563eb1a}.portal-nav-admin{opacity:.5;margin-left:12px;font-size:11px}.portal-dark-toggle{color:var(--text-h,#1e293b);cursor:pointer;background:0 0;border:1px solid #2563eb1f;border-radius:10px;margin-left:6px;padding:5px 10px;font-size:16px;line-height:1;transition:all .2s}.portal-dark-toggle:hover{background:#2563eb0f}[data-theme=dark] .portal-dark-toggle{color:#f1f5f9;border-color:#ffffff1f}[data-theme=dark] .portal-dark-toggle:hover{background:#ffffff0f}.portal-social-login-nav{align-items:center;gap:6px;margin-left:6px;display:flex}.portal-social-btn{cursor:pointer;background:#ffffffb3;border:1px solid #2563eb26;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:all .2s;display:flex}.portal-social-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.portal-social-btn:disabled{opacity:.5;cursor:not-allowed}.portal-social-google:hover:not(:disabled){background:#4285f40f;border-color:#4285f4}.portal-social-fb:hover:not(:disabled){background:#1877f20f;border-color:#1877f2}[data-theme=dark] .portal-social-btn{background:#ffffff0f;border-color:#ffffff1a}.portal-user-pill{background:#2563eb14;border:1px solid #2563eb26;border-radius:20px;align-items:center;gap:6px;margin-left:6px;padding:4px 10px 4px 6px;display:flex}.portal-user-avatar{object-fit:cover;border:1px solid #2563eb33;border-radius:50%;width:24px;height:24px}.portal-user-name{color:var(--text-h,#1e293b);font-size:13px;font-weight:600}.portal-user-logout{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:11px;line-height:1;transition:color .15s}.portal-user-logout:hover{color:#ef4444}[data-theme=dark] .portal-user-pill{background:#60a5fa1a;border-color:#60a5fa33}[data-theme=dark] .portal-user-name{color:#f1f5f9}.portal-mobile-toggle{color:var(--text-h,#1e293b);cursor:pointer;background:0 0;border:1px solid #2563eb1a;border-radius:8px;padding:6px 10px;font-size:18px;display:none}.portal-main-b2c{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:0 24px 40px}.portal-loading{text-align:center;color:#1e293b99;flex-direction:column;align-items:center;gap:16px;padding:100px 0;display:flex}.portal-spinner{border:3px solid #2563eb1a;border-top-color:var(--accent,#2563eb);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite portalSpin}@keyframes portalSpin{to{transform:rotate(360deg)}}.portal-section{min-height:60vh}.portal-section-header{text-align:center;margin:40px 0 24px}.portal-section-header h2{color:var(--text-h,#1e293b);margin:0 0 8px;font-size:28px;font-weight:800}.portal-muted{color:#1e293b99;margin:0;font-size:14px}.portal-hero-immersive{text-align:center;background:linear-gradient(135deg,#2563eb0f 0%,#2563eb08 100%),linear-gradient(#f8fafc 0%,#eef4ff 100%);border-radius:0 0 24px 24px;margin-bottom:40px;padding:80px 32px 60px;position:relative;overflow:hidden}.portal-hero-content{z-index:2;max-width:800px;margin:0 auto;position:relative}.portal-hero-immersive h1{color:var(--text-h,#1e293b);letter-spacing:-.02em;margin:0 0 16px;font-size:48px;font-weight:900;line-height:1.15}.portal-hero-accent{background:linear-gradient(135deg, var(--accent,#2563eb), #3b82f6);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.portal-hero-immersive p{color:#1e293bb3;margin:0 0 32px;font-size:18px;font-weight:400}.portal-particles{z-index:1;position:absolute;inset:0;overflow:hidden}.portal-particle{pointer-events:none;background:radial-gradient(circle,#2563eb4d,#0000 70%);border-radius:50%;animation:linear infinite alternate portalFloat;position:absolute}@keyframes portalFloat{0%{opacity:.3;transform:translateY(0)scale(1)}50%{opacity:.7}to{opacity:.2;transform:translateY(-40px)scale(1.5)}}.portal-hero-search{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffc;border:1px solid #2563eb1f;border-radius:16px;padding:24px 28px;box-shadow:0 4px 16px #2563eb14}.portal-hero-search-fields{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:16px;display:flex}.portal-hero-search-fields label{color:#1e293bb3;text-transform:uppercase;letter-spacing:.06em;text-align:left;gap:6px;font-size:12px;font-weight:700;display:grid}.portal-hero-search-fields .input{min-width:150px;height:44px;color:var(--text-h,#1e293b);background:#fff6;border-color:#2563eb26;border-radius:12px;font-size:14px}.portal-hero-cta-btn{letter-spacing:.01em;border-radius:50px;padding:16px 40px;font-size:18px;box-shadow:0 8px 32px #2563eb59}.portal-hero-cta-btn:hover:not(:disabled){box-shadow:0 12px 40px #2563eb73}.portal-btn-search{background:linear-gradient(135deg, var(--accent,#2563eb), var(--accent-strong,#1d4ed8));color:#fff;cursor:pointer;border:none;border-radius:12px;height:44px;padding:12px 28px;font-size:14px;font-weight:700;transition:all .2s;box-shadow:0 2px 12px #2563eb33}.portal-btn-search:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #2563eb4d}.portal-btn-search:disabled{opacity:.5;cursor:not-allowed}.portal-profile-picker{text-align:center;margin-bottom:40px}.portal-profile-picker h2{color:var(--text-h,#1e293b);margin:0 0 20px;font-size:22px;font-weight:700}.portal-profile-cards{grid-template-columns:1fr 1fr;gap:20px;max-width:600px;margin:0 auto;display:grid}.portal-profile-card{cursor:pointer;text-align:center;background:#ffffffb3;border:1px solid #2563eb1a;border-radius:20px;padding:28px 24px;transition:all .3s}.portal-profile-card:hover{border-color:#2563eb40}.portal-profile-card.selected{border-color:var(--accent,#2563eb);background:#2563eb0f;box-shadow:0 0 24px #2563eb1f}.portal-profile-icon{margin-bottom:12px;font-size:36px;display:block}.portal-profile-svg{width:100%;max-width:110px;height:70px;margin:0 auto 12px;display:block}.portal-profile-card h3{color:var(--text-h,#1e293b);margin:0 0 8px;font-size:16px}.portal-profile-card p{color:#64748b;margin:0;font-size:13px;line-height:1.5}.portal-stats-row{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:40px;display:grid}.portal-stat-card{text-align:center;border-radius:20px;padding:24px 16px;position:relative;overflow:hidden}.portal-stat-icon{margin-bottom:8px;font-size:24px;display:block}.portal-stat-card strong{color:var(--accent,#2563eb);font-size:32px;font-weight:800;display:block}.portal-stat-card span{color:#64748b;text-transform:uppercase;letter-spacing:.06em;font-size:11px}.portal-featured{margin-bottom:48px}.portal-featured h2{color:var(--text-h,#1e293b);margin:0 0 20px;font-size:22px;font-weight:700}.portal-featured-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.portal-featured-card{cursor:pointer;border-radius:20px;padding:0;position:relative;overflow:hidden}.portal-room-gradient{background:linear-gradient(135deg,#2563eb14,#3b82f60a);border-radius:16px 16px 0 0;height:120px;position:absolute;top:0;left:0;right:0}.portal-featured-content{z-index:1;padding:24px;position:relative}.portal-featured-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.portal-featured-header h3{color:var(--text-h,#1e293b);margin:0;font-size:17px;font-weight:700}.portal-pill-type{color:var(--accent,#2563eb);text-transform:uppercase;letter-spacing:.04em;background:#2563eb14;border:1px solid #2563eb26;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700}.portal-featured-amenities{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.portal-amenity-tag{color:#475569;background:#2563eb0a;border:1px solid #2563eb14;border-radius:8px;padding:4px 10px;font-size:11px}.portal-featured-footer{justify-content:space-between;align-items:center;display:flex}.portal-featured-price strong{color:var(--accent,#2563eb);font-size:22px;font-weight:800}.portal-featured-price span{color:#64748b;margin-left:4px;font-size:12px}.portal-btn-primary{background:linear-gradient(135deg, var(--accent,#2563eb), #1d4ed8);color:#fff;cursor:pointer;border:none;border-radius:14px;padding:12px 28px;font-size:14px;font-weight:700;transition:all .2s;box-shadow:0 4px 16px #2563eb33}.portal-btn-primary:hover:not(:disabled){box-shadow:0 8px 24px #2563eb4d}.portal-btn-primary:disabled{opacity:.4;cursor:not-allowed}.portal-btn-secondary{color:var(--text-h,#1e293b);cursor:pointer;background:#2563eb0f;border:1px solid #2563eb1f;border-radius:14px;padding:12px 28px;font-size:14px;font-weight:600;transition:all .2s}.portal-btn-secondary:hover{background:#2563eb1a}.portal-btn-sm{padding:8px 20px;font-size:13px}.portal-btn-lg{min-height:48px;padding:14px 32px;font-size:15px}.portal-btn-submit{width:auto;min-width:240px}.portal-social-proof{margin-bottom:48px}.portal-social-proof h2{color:var(--text-h,#1e293b);text-align:center;margin:0 0 20px;font-size:22px;font-weight:700}.portal-reviews-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.portal-review-card{border-radius:20px;padding:24px}.portal-review-stars{margin-bottom:12px;font-size:14px}.portal-review-card p{color:#475569;margin:0 0 16px;font-size:14px;font-style:italic;line-height:1.6}.portal-review-author{align-items:center;gap:10px;display:flex}.portal-review-avatar{background:linear-gradient(135deg, var(--accent,#2563eb), #3b82f6);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:800;display:flex}.portal-review-author strong{color:var(--text-h,#1e293b);font-size:13px;display:block}.portal-review-author small{color:#64748b;font-size:11px}.portal-hotels-preview{margin-bottom:48px}.portal-hotels-preview h2{color:var(--text-h,#1e293b);margin:0 0 20px;font-size:22px;font-weight:700}.portal-hotels-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.portal-hotel-card{border-radius:20px;padding:24px;transition:all .3s}.portal-hotel-card h3{color:var(--text-h,#1e293b);margin:0 0 8px;font-size:16px}.portal-hotel-card p{color:#475569;margin:0 0 8px;font-size:13px}.portal-hotel-card small{color:#64748b;font-size:12px}.portal-date-filter{flex-flow:column wrap;gap:12px;margin-bottom:28px;padding:18px 22px;display:flex}.portal-date-presets{flex-wrap:wrap;gap:8px;display:flex}.portal-preset-btn{color:var(--accent,#2563eb);cursor:pointer;background:0 0;border:1.5px solid #2563eb40;border-radius:20px;padding:7px 16px;font-size:12px;font-weight:700;transition:all .18s}.portal-preset-btn:hover{background:#2563eb14}.portal-preset-btn.active{background:var(--accent,#2563eb);color:#fff;border-color:var(--accent,#2563eb)}[data-theme=dark] .portal-preset-btn{color:#93c5fd;border-color:#639bff4d}[data-theme=dark] .portal-preset-btn.active{color:#fff;background:#3b82f6;border-color:#3b82f6}.portal-date-inputs{flex-wrap:wrap;gap:14px;display:flex}.portal-date-inputs label{color:#64748b;text-transform:uppercase;letter-spacing:.04em;flex:1;gap:5px;min-width:150px;font-size:12px;font-weight:700;display:grid}.portal-date-filter label{color:#64748b;text-transform:uppercase;letter-spacing:.04em;gap:6px;font-size:12px;font-weight:700;display:grid}.portal-date-summary{color:#475569;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.portal-nights-badge{color:var(--accent,#2563eb);background:#2563eb14;border:1px solid #2563eb26;border-radius:12px;padding:5px 14px;font-size:13px;font-weight:700}.portal-rooms-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;padding:0 0 12px;display:grid}@media (width<=680px){.portal-rooms-grid{grid-template-columns:1fr}}.portal-rooms-grid::-webkit-scrollbar{height:6px}.portal-rooms-grid::-webkit-scrollbar-track{background:#2563eb0a;border-radius:4px}.portal-rooms-grid::-webkit-scrollbar-thumb{background:#2563eb33;border-radius:4px}.portal-rooms-grid::-webkit-scrollbar-thumb:hover{background:#2563eb66}.portal-room-card{border-radius:16px;flex-direction:column;transition:all .3s;display:flex;position:relative;overflow:hidden}.portal-room-card-img{background:linear-gradient(135deg,#2563eb0f,#60a5fa1f);width:100%;height:180px;position:relative;overflow:hidden}.portal-room-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .4s;display:block}.portal-room-card:hover .portal-room-card-img img{transform:scale(1.05)}.portal-room-card-img-loading{justify-content:center;align-items:center;display:flex}.portal-room-card-img-empty{opacity:.4;justify-content:center;align-items:center;font-size:36px;display:flex}.portal-spinner-sm{border:2px solid #2563eb33;border-top-color:var(--accent,#2563eb);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.portal-room-unavailable{opacity:.45;pointer-events:none}.portal-room-header{z-index:1;justify-content:space-between;align-items:center;gap:8px;padding:20px 20px 0;display:flex;position:relative}.portal-room-header h3{color:var(--text-h,#1e293b);margin:0;font-size:16px;font-weight:700}.portal-room-body{z-index:1;flex:1;padding:12px 20px;position:relative}.portal-room-body p{color:#475569;margin:0 0 12px;font-size:13px;line-height:1.5}.portal-room-amenities{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.portal-room-meta{color:#64748b;gap:16px;margin-bottom:12px;font-size:12px;display:flex}.portal-room-price{align-items:baseline;gap:6px;display:flex}.portal-room-price strong{color:var(--accent,#2563eb);font-size:24px;font-weight:800}.portal-room-price span{color:#64748b;font-size:12px}.portal-room-total{color:#475569;background:#2563eb0a;border-radius:8px;margin-top:6px;padding:6px 12px;font-size:13px;display:inline-block}.portal-room-extra-charge{color:#f59e0b;background:#f59e0b14;border:1px solid #f59e0b33;border-radius:6px;margin-top:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}[data-theme=dark] .portal-room-extra-charge{color:#fbbf24;background:#fbbf2414}.portal-rdm-extra-charge{color:#92400e;background:#f59e0b0f;border:1px solid #f59e0b2e;border-radius:12px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;display:flex}[data-theme=dark] .portal-rdm-extra-charge{color:#fbbf24;background:#fbbf240f;border-color:#fbbf2426}.portal-rdm-extra-charge strong{color:#b45309}[data-theme=dark] .portal-rdm-extra-charge strong{color:#fcd34d}.wizard-summary-extras{color:#f59e0b!important}.wizard-summary-extras span:first-child{color:#92400e!important}[data-theme=dark] .wizard-summary-extras span:first-child{color:#fbbf24!important}.portal-room-footer{z-index:1;padding:0 20px 20px;position:relative}.portal-pill-unavailable{border:1px solid #ef444433;border-radius:10px;padding:6px 14px;font-size:12px;font-weight:600;color:#ef4444!important;background:#ef444426!important}.portal-wizard-container{max-width:960px;margin:0 auto}.portal-wizard-body{margin-top:24px}.wizard-steps{flex-wrap:wrap;justify-content:center;align-items:center;gap:0;padding:20px 0;display:flex}.wizard-connector{background:#2563eb1a;width:48px;height:2px;transition:background .3s}.wizard-connector.active{background:linear-gradient(90deg, var(--accent,#2563eb), #2563eb4d)}.wizard-step{cursor:pointer;color:#666;background:0 0;border:none;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:8px 16px;transition:all .3s;display:flex}.wizard-step:disabled{cursor:not-allowed;opacity:.4}.wizard-step.current{color:var(--accent,#2563eb);background:#2563eb14;box-shadow:0 0 20px #2563eb14}.wizard-step.done{color:var(--accent,#2563eb)}.wizard-step-icon{font-size:20px}.wizard-step-label{text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.wizard-pane{padding:8px 0}.wizard-pane h3{color:var(--text-h,#1e293b);margin:0 0 8px;font-size:22px;font-weight:700}.wizard-pane-inner{border-radius:24px;padding:32px}.wizard-pane-inner h3{margin-bottom:24px}.wizard-dates-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px;display:grid}.wizard-dates-grid label{color:#64748b;gap:6px;font-size:13px;font-weight:600;display:grid}.input-lg{border-radius:14px!important;height:48px!important;font-size:15px!important}.wizard-nights-info{align-items:center;gap:12px;margin-bottom:8px;padding:12px 0;display:flex}.wizard-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.wizard-rooms-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;max-height:520px;margin-bottom:4px;padding-right:6px;display:grid;overflow-y:auto}.wizard-rooms-grid::-webkit-scrollbar{width:6px}.wizard-rooms-grid::-webkit-scrollbar-track{background:0 0}.wizard-rooms-grid::-webkit-scrollbar-thumb{background:#2563eb33;border-radius:3px}.wizard-rooms-grid::-webkit-scrollbar-thumb:hover{background:#2563eb59}.wizard-room-card{cursor:pointer;border-radius:20px;padding:0;transition:all .3s;position:relative;overflow:hidden}.wizard-room-card.selected{box-shadow:0 0 24px #2563eb1f;border-color:var(--accent,#2563eb)!important}.wizard-room-info{z-index:1;padding:22px;position:relative}.wizard-room-top{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.wizard-room-top h4{color:var(--text-h,#1e293b);margin:0;font-size:16px;font-weight:700}.wizard-room-bottom{justify-content:space-between;align-items:flex-end;margin-top:14px;display:flex}.portal-room-meta-inline{color:#64748b;font-size:12px}.wizard-room-pricing{text-align:right}.wizard-room-pricing strong{color:var(--accent,#2563eb);font-size:22px;font-weight:800}.wizard-room-pricing span{color:#64748b;margin-left:4px;font-size:12px}.wizard-room-pricing small{color:#475569;margin-top:2px;font-size:12px;display:block}.wizard-room-selected-badge{background:var(--accent,#2563eb);color:#fff;z-index:2;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:800;position:absolute;top:12px;right:12px}.wizard-no-rooms{text-align:center;border-radius:20px;padding:48px}.wizard-no-rooms p{color:#64748b;margin:0 0 16px}.wizard-extras-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.wizard-extra-card{cursor:pointer;text-align:left;background:#ffffff08;border:1px solid #ffffff14;border-radius:16px;align-items:center;gap:16px;padding:18px 20px;transition:all .3s;display:flex}.wizard-extra-card:hover{border-color:#22c55e33}.wizard-extra-card.selected{background:#22c55e0f;border-color:#22c55e;box-shadow:0 0 16px #22c55e1a}.wizard-extra-icon{flex-shrink:0;font-size:28px}.wizard-extra-info{flex:1}.wizard-extra-info strong{color:#fff;margin-bottom:4px;font-size:14px;display:block}.wizard-extra-info p{color:#888;margin:0 0 6px;font-size:12px;line-height:1.4}.wizard-extra-price{color:#22c55e;font-size:13px;font-weight:700}.wizard-extra-check{color:#888;border:2px solid #ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;transition:all .2s;display:flex}.wizard-extra-check.checked{color:#fff;background:#22c55e;border-color:#22c55e;box-shadow:0 0 12px #22c55e4d}.wizard-extras-summary{background:#22c55e0a;border:1px solid #22c55e33;border-radius:14px;justify-content:space-between;align-items:center;margin-top:16px;padding:16px 20px;display:flex}.wizard-extras-summary span{color:#a1a1aa;font-size:14px}.wizard-extras-summary strong{color:#22c55e;font-size:16px}.wizard-checkout-layout{grid-template-columns:1fr 380px;align-items:start;gap:24px;display:grid}.wizard-checkout-form{flex-direction:column;gap:16px;display:flex}.wizard-checkout-section{border-radius:20px;padding:28px}.wizard-checkout-section h4{color:var(--text-h,#1e293b);margin:0 0 20px;font-size:16px;font-weight:700}.wizard-checkout-fields{grid-template-columns:1fr 1fr;gap:14px;display:grid}.wizard-checkout-fields label{color:#64748b;gap:6px;font-size:13px;font-weight:600;display:grid}.wizard-checkout-summary{border-radius:20px;padding:28px;position:sticky;top:80px}.wizard-checkout-summary h4{color:var(--text-h,#1e293b);margin:0 0 20px;font-size:16px;font-weight:700}.wizard-summary-room{background:#2563eb0a;border:1px solid #2563eb1a;border-radius:12px;margin-bottom:16px;padding:14px 16px}.wizard-summary-room strong{color:var(--text-h,#1e293b);margin-bottom:4px;font-size:15px;display:block}.wizard-summary-room span{color:#64748b;font-size:12px}.wizard-summary-dates{background:#2563eb08;border-radius:12px;justify-content:center;align-items:center;gap:16px;margin-bottom:16px;padding:16px;display:flex}.wizard-summary-dates>div{text-align:center}.wizard-summary-dates small{color:#64748b;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;font-size:10px;display:block}.wizard-summary-dates strong{color:var(--text-h,#1e293b);font-size:14px}.wizard-summary-arrow{color:var(--accent,#2563eb);font-size:18px}.wizard-summary-line{color:#475569;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px;display:flex}.wizard-summary-extra{font-size:13px}.wizard-summary-divider{background:#2563eb14;height:1px;margin:8px 0}.wizard-summary-total{padding:12px 0}.wizard-summary-total strong{color:var(--accent,#2563eb);font-size:18px}.wizard-summary-note{background:#3b82f60f;border:1px solid #3b82f61f;border-radius:10px;margin-top:16px;padding:12px 14px}.wizard-summary-note small{color:#3b82f6;font-size:12px;line-height:1.5}.portal-feedback{border-radius:14px;margin-bottom:14px;padding:14px 18px;font-size:14px}.portal-feedback-ok{color:#16a34a;background:#22c55e14;border:1px solid #22c55e33}.portal-feedback-err{color:#ef4444;background:#ef444414;border:1px solid #ef444433}.portal-validation-msg{color:#ef4444;margin:0;font-size:13px;font-weight:600;animation:.4s portalShake}@keyframes portalShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.portal-guide-categories{flex-wrap:wrap;justify-content:center;gap:8px;margin:0 0 24px;display:flex}.portal-guide-cat-btn{color:var(--text-h,#1e293b);cursor:pointer;background:#2563eb0f;border:1px solid #2563eb1a;border-radius:20px;padding:6px 16px;font-size:13px;font-weight:600;transition:all .2s}.portal-guide-cat-btn:hover{background:#2563eb1a}.portal-guide-cat-btn.active{background:var(--accent,#2563eb);color:#fff;border-color:#0000}[data-theme=dark] .portal-guide-cat-btn{color:#f1f5f9;background:#60a5fa14;border-color:#60a5fa26}[data-theme=dark] .portal-guide-cat-btn:hover{background:#60a5fa24}[data-theme=dark] .portal-guide-cat-btn.active{background:var(--accent,#60a5fa);color:#0f172a}.portal-blog-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-top:24px;display:grid}.portal-blog-card{border-radius:20px;flex-direction:column;gap:12px;padding:28px 24px;transition:all .3s;display:flex}.portal-blog-icon{font-size:32px}.portal-blog-card h3{color:var(--text-h,#1e293b);margin:0;font-size:17px;font-weight:700}.portal-blog-card p{color:#475569;margin:0;font-size:13px;line-height:1.6}.portal-blog-date{color:#64748b;text-transform:capitalize;font-size:11px}.portal-info-card{border-radius:20px;margin-bottom:16px;padding:28px}.portal-info-card h3{color:var(--text-h,#1e293b);margin:0 0 12px;font-size:18px;font-weight:700}.portal-info-card p{color:#475569;margin:0 0 12px;font-size:14px;line-height:1.6}.portal-info-details{color:#475569;gap:10px;margin-top:16px;font-size:14px;display:grid}.portal-info-icon{margin-right:8px}.portal-info-policies{border-radius:20px;margin-top:24px;padding:28px}.portal-info-policies h3{color:var(--text-h,#1e293b);margin:0 0 20px;font-size:18px;font-weight:700}.portal-policies-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.portal-policy-item{background:#2563eb08;border:1px solid #2563eb14;border-radius:12px;align-items:center;gap:12px;padding:16px;display:flex}.portal-policy-icon{font-size:24px}.portal-policy-item strong{color:var(--text-h,#1e293b);margin-bottom:2px;font-size:13px;display:block}.portal-policy-item span{color:#64748b;font-size:12px}.portal-welcome-overlay{z-index:999;-webkit-backdrop-filter:blur(6px);background:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.portal-welcome-modal{border-radius:24px;flex-direction:column;gap:16px;width:100%;max-width:420px;padding:36px 32px;display:flex;box-shadow:0 24px 64px #00000026;background:#fffffff5!important;border:1px solid #2563eb1f!important}[data-theme=dark] .portal-welcome-modal{background:#0f172af7!important;border-color:#60a5fa26!important}.portal-welcome-brand{justify-content:center;align-items:center;gap:8px;margin-bottom:4px;display:flex}.portal-welcome-brand strong{color:var(--accent,#2563eb);font-size:18px}.portal-welcome-modal h2{color:var(--text-h,#1e293b);text-align:center;margin:0;font-size:24px;font-weight:800}.portal-welcome-modal>.portal-muted{text-align:center;font-size:14px}.portal-welcome-oauth{flex-direction:column;gap:8px;display:flex}.portal-welcome-oauth-btn{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #0000001f;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;padding:11px 16px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.portal-welcome-oauth-btn:hover:not(:disabled){background:#4285f40a;border-color:#4285f4;box-shadow:0 2px 8px #4285f41f}.portal-welcome-oauth-btn:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .portal-welcome-oauth-btn{color:#f1f5f9;background:#ffffff0f;border-color:#ffffff1a}.portal-welcome-divider{color:#94a3b8;align-items:center;gap:12px;font-size:12px;display:flex}.portal-welcome-divider:before,.portal-welcome-divider:after{content:"";background:#2563eb1a;flex:1;height:1px}.portal-welcome-divider span{white-space:nowrap}.portal-welcome-form{flex-direction:column;gap:12px;display:flex}.portal-welcome-form label{color:#64748b;flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.portal-welcome-form .input{border-radius:12px;height:44px;font-size:14px}.portal-welcome-error{color:#ef4444;margin:0;font-size:13px;font-weight:600}[data-theme=dark] .portal-welcome-form label{color:#94a3b8}.portal-success-modal{text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:400px;padding:36px 32px;display:flex;box-shadow:0 24px 64px #00000026;background:#fffffff5!important;border:1px solid #2563eb1f!important}[data-theme=dark] .portal-success-modal{background:#0f172af7!important;border-color:#60a5fa26!important}.portal-success-icon-wrap{background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;display:flex;box-shadow:0 8px 24px #22c55e59}.portal-success-icon{color:#fff;font-size:36px;font-weight:800;line-height:1}.portal-success-modal h2{color:var(--text-h,#1e293b);margin:0;font-size:22px;font-weight:800}.portal-success-summary{background:#2563eb0a;border:1px solid #2563eb1a;border-radius:14px;width:100%;overflow:hidden}[data-theme=dark] .portal-success-summary{background:#60a5fa0f;border-color:#60a5fa1a}.portal-success-row{border-bottom:1px solid #2563eb12;justify-content:space-between;align-items:center;padding:10px 16px;font-size:13px;display:flex}.portal-success-row:last-child{border-bottom:none}.portal-success-row span{color:#64748b}.portal-success-row strong{color:var(--text-h,#1e293b);font-weight:700}[data-theme=dark] .portal-success-row span{color:#94a3b8}[data-theme=dark] .portal-success-row strong{color:#f1f5f9}.portal-success-notice{text-align:left;background:#fbbf2414;border:1px solid #fbbf2433;border-radius:14px;align-items:flex-start;gap:12px;width:100%;padding:14px 16px;display:flex}.portal-success-notice-icon{flex-shrink:0;margin-top:1px;font-size:20px}.portal-success-notice p{color:#92400e;margin:0;font-size:13px;line-height:1.5}.portal-success-notice p strong{color:#78350f}[data-theme=dark] .portal-success-notice{background:#fbbf240f;border-color:#fbbf2426}[data-theme=dark] .portal-success-notice p{color:#fbbf24}[data-theme=dark] .portal-success-notice p strong{color:#fcd34d}.portal-room-detail-modal{background:var(--bg,#f3f6fb);border:1px solid #2563eb1a;border-radius:24px;flex-direction:column;width:100%;max-width:620px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 32px 80px #0003}[data-theme=dark] .portal-room-detail-modal{background:#0f172a;border-color:#60a5fa1f}.portal-rdm-image-wrap{background:#2563eb0f;flex-shrink:0;width:100%;height:260px;position:relative;overflow:hidden}.portal-rdm-image{object-fit:cover;width:100%;height:100%;transition:transform .4s}.portal-room-detail-modal:hover .portal-rdm-image{transform:scale(1.03)}.portal-rdm-img-placeholder{color:#94a3b8;background:linear-gradient(135deg,#2563eb0a,#60a5fa14);flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:100%;font-size:13px;display:flex}.portal-rdm-loading{gap:12px}.portal-rdm-close{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;cursor:pointer;background:#00000073;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;transition:background .2s;display:flex;position:absolute;top:12px;right:12px}.portal-rdm-close:hover{background:#000000a6}.portal-rdm-badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;letter-spacing:.05em;text-transform:uppercase;background:#2563ebd9;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700;position:absolute;bottom:12px;left:12px}.portal-rdm-photo-count{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;background:#0000008c;border-radius:14px;padding:4px 10px;font-size:11px;font-weight:600;position:absolute;bottom:12px;right:12px}.portal-rdm-thumbs{background:#0000000a;gap:6px;padding:8px 12px;display:flex;overflow-x:auto}[data-theme=dark] .portal-rdm-thumbs{background:#ffffff08}.portal-rdm-thumb{object-fit:cover;cursor:pointer;opacity:.7;border:2px solid #0000;border-radius:6px;flex-shrink:0;width:56px;height:42px;transition:all .2s}.portal-rdm-thumb:hover{opacity:1}.portal-rdm-thumb.active{border-color:var(--accent,#2563eb);opacity:1}.portal-lightbox{z-index:10001;cursor:zoom-out;background:#000000eb;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.portal-lightbox img{object-fit:contain;cursor:default;border-radius:8px;max-width:90vw;max-height:88vh}.portal-lightbox-close{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex;position:absolute;top:16px;right:16px}.portal-lightbox-close:hover{background:#ffffff4d}.portal-lightbox-arrow{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:28px;transition:background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.portal-lightbox-arrow:hover{background:#ffffff40}.portal-lightbox-prev{left:16px}.portal-lightbox-next{right:16px}.portal-lightbox-counter{color:#ffffffb3;font-size:13px;font-weight:600;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.entity-gallery-section{border-top:1px solid #80808026;margin-top:10px;padding-top:10px}.entity-gallery-header{align-items:center;gap:10px;margin-bottom:8px;display:flex}.entity-gallery-title{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.entity-gallery-grid{flex-wrap:wrap;gap:6px;display:flex}.entity-gallery-thumb{border-radius:6px;width:64px;height:48px;position:relative;overflow:hidden}.entity-gallery-thumb img{object-fit:cover;width:100%;height:100%}.entity-gallery-remove{color:#fff;cursor:pointer;opacity:0;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;transition:opacity .2s;display:flex;position:absolute;top:2px;right:2px}.entity-gallery-thumb:hover .entity-gallery-remove{opacity:1}.portal-rdm-body{flex-direction:column;flex:1;gap:18px;padding:24px 28px;display:flex;overflow-y:auto}.portal-rdm-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.portal-rdm-header h2{color:var(--text-h,#1e293b);margin:0;font-size:22px;font-weight:800}.portal-rdm-price{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.portal-rdm-price strong{color:var(--accent,#2563eb);font-size:22px;font-weight:800}.portal-rdm-price span{color:#64748b;font-size:12px;line-height:1.4}.portal-rdm-price small{color:#94a3b8;font-size:11px}.portal-rdm-price-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}[data-theme=dark] .portal-rdm-price span{color:#94a3b8}[data-theme=dark] .portal-rdm-price-label{color:#64748b}.portal-rdm-desc{color:var(--text-body,#475569);margin:0;font-size:14px;line-height:1.6}[data-theme=dark] .portal-rdm-desc{color:#94a3b8}.portal-rdm-meta-row{flex-wrap:wrap;gap:12px;display:flex}.portal-rdm-meta-item{background:#2563eb0a;border:1px solid #2563eb14;border-radius:12px;flex:1;align-items:center;gap:10px;min-width:130px;padding:10px 14px;display:flex}[data-theme=dark] .portal-rdm-meta-item{background:#60a5fa0f;border-color:#60a5fa1a}.portal-rdm-meta-icon{flex-shrink:0;font-size:20px}.portal-rdm-meta-item strong{color:var(--text-h,#1e293b);font-size:13px;display:block}.portal-rdm-meta-item small{color:#94a3b8;font-size:11px}[data-theme=dark] .portal-rdm-meta-item strong{color:#f1f5f9}.portal-rdm-amenities h4{color:#64748b;text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px;font-size:13px;font-weight:700}[data-theme=dark] .portal-rdm-amenities h4{color:#94a3b8}.portal-rdm-amenities-grid{flex-wrap:wrap;gap:8px;display:flex}.portal-rdm-amenity{color:var(--text-body,#475569);background:#2563eb0f;border:1px solid #2563eb1a;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:flex}[data-theme=dark] .portal-rdm-amenity{color:#cbd5e1;background:#60a5fa14;border-color:#60a5fa1f}.portal-rdm-total-bar{background:linear-gradient(135deg,#2563eb14,#60a5fa0f);border:1px solid #2563eb1f;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.portal-rdm-total-bar span{color:#64748b;font-size:13px}.portal-rdm-total-bar strong{color:var(--accent,#2563eb);font-size:18px;font-weight:800}[data-theme=dark] .portal-rdm-total-bar{background:#60a5fa14;border-color:#60a5fa26}.portal-rdm-actions{gap:10px;padding-top:4px;display:flex}.portal-rdm-actions>*{flex:1}.portal-btn-ghost{color:var(--accent,#2563eb);cursor:pointer;background:0 0;border:1px solid #2563eb40;border-radius:12px;padding:10px 18px;font-weight:600;transition:all .2s}.portal-btn-ghost:hover{border-color:var(--accent,#2563eb);background:#2563eb0f}[data-theme=dark] .portal-btn-ghost{color:#60a5fa;border-color:#60a5fa4d}[data-theme=dark] .portal-btn-ghost:hover{background:#60a5fa14}@media (width<=600px){.portal-rdm-image-wrap{height:200px}.portal-rdm-body{padding:18px 16px}.portal-rdm-header{flex-direction:column}.portal-rdm-price{text-align:left}.portal-rdm-meta-item{min-width:100px}}.portal-footer{background:#2563eb08;border-top:1px solid #2563eb14;padding:32px 24px}.portal-footer-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:0 auto;display:flex}.portal-footer-brand{align-items:center;gap:8px;display:flex}.portal-footer-brand strong{color:var(--accent,#2563eb);font-size:16px}.portal-footer-links{gap:4px;display:flex}.portal-footer-links button{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 12px;font-size:13px;transition:color .2s}.portal-footer-links button:hover{color:var(--text-h,#1e293b)}.portal-footer-copy{color:#94a3b8;font-size:12px}.portal-chatbot-fab{background:linear-gradient(135deg, var(--accent,#2563eb), #1d4ed8);cursor:pointer;z-index:999;border:none;border-radius:50%;width:60px;height:60px;font-size:26px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 32px #2563eb4d}.portal-chatbot-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:999;background:#fffffff7;border:1px solid #2563eb1f;border-radius:20px;flex-direction:column;width:360px;max-height:500px;display:flex;position:fixed;bottom:24px;right:24px;overflow:hidden;box-shadow:0 16px 48px #0000001f}.portal-chatbot-head{background:linear-gradient(135deg,#2563eb0f,#3b82f608);border-bottom:1px solid #2563eb14;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.portal-chatbot-head strong{color:var(--text-h,#1e293b);font-size:14px}.portal-chatbot-head button{color:#64748b;cursor:pointer;background:0 0;border:none;font-size:18px;transition:color .2s}.portal-chatbot-head button:hover{color:var(--text-h,#1e293b)}.portal-chatbot-messages{flex-direction:column;flex:1;gap:10px;min-height:200px;padding:16px;display:flex;overflow-y:auto}.portal-chatbot-msg{word-wrap:break-word;border-radius:16px;max-width:85%;padding:12px 16px;font-size:13px;line-height:1.5}.portal-chatbot-msg-bot{color:#475569;background:#2563eb0f;align-self:flex-start}.portal-chatbot-msg-user{color:var(--text-h,#1e293b);background:#2563eb1f;align-self:flex-end}.portal-chatbot-input{border-top:1px solid #2563eb14;gap:8px;padding:12px 14px;display:flex}.portal-chatbot-input input{color:var(--text-h,#1e293b);background:#2563eb0a;border:1px solid #2563eb1a;border-radius:12px;outline:none;flex:1;padding:10px 14px;font-size:13px}.portal-chatbot-input input:focus{border-color:#2563eb4d}.portal-chatbot-input button{background:linear-gradient(135deg, var(--accent,#2563eb), #1d4ed8);color:#fff;cursor:pointer;border:none;border-radius:12px;width:40px;height:40px;font-size:16px;transition:transform .15s}.portal-chatbot-input button:hover{transform:scale(1.05)}@media (width<=768px){.portal-nav{padding:12px 16px}.portal-mobile-toggle{display:block}.portal-nav-links{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff7;border-bottom:1px solid #2563eb14;flex-direction:column;padding:12px;display:none;position:absolute;top:100%;left:0;right:0}.portal-nav-links.open{display:flex}.portal-hero-immersive{padding:48px 20px 40px}.portal-hero-immersive h1{font-size:28px}.portal-hero-search-fields{flex-direction:column}.portal-hero-search-fields label{width:100%}.portal-hero-search-fields .input{min-width:unset;width:100%}.portal-btn-search{width:100%}.portal-profile-cards{grid-template-columns:1fr}.portal-stats-row{grid-template-columns:repeat(2,1fr)}.portal-featured-grid,.portal-rooms-grid,.portal-reviews-grid,.portal-blog-grid,.portal-policies-grid,.wizard-dates-grid,.wizard-rooms-grid,.wizard-extras-grid,.wizard-checkout-layout,.wizard-checkout-fields{grid-template-columns:1fr}.wizard-checkout-summary{position:static}.wizard-connector{width:24px}.wizard-step{padding:6px 10px}.wizard-step-label{font-size:9px}.portal-chatbot-panel{width:calc(100vw - 32px);max-height:70vh;bottom:16px;right:16px}.portal-footer-content{text-align:center;flex-direction:column}}
