:root{--bg:#0b0d0f;--surface:#121619;--surface-2:#181d21;--line:#2a3034;--text:#f5f2eb;--muted:#9ca4a9;--gold:#d2a665;--gold-light:#f0d5a4;--danger:#ef7f78;--success:#70c995;--shadow:0 30px 80px rgba(0,0,0,.38)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',system-ui,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.brand{display:inline-flex;align-items:center;gap:14px}.brand img{width:54px;height:54px}.brand span{display:flex;flex-direction:column;line-height:1}.brand strong{font-family:'Playfair Display',serif;font-size:25px;letter-spacing:.08em}.brand small{font-size:8px;letter-spacing:.24em;color:var(--gold);margin-top:8px}.button{border:1px solid transparent;border-radius:12px;padding:13px 20px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;transition:.2s}.button:hover{transform:translateY(-1px)}.button--gold{background:linear-gradient(135deg,var(--gold-light),#b27d3d);color:#17120c;box-shadow:0 12px 30px rgba(210,166,101,.18)}.button--outline{border-color:#50565a}.button--ghost{border-color:var(--line);background:#15191c}.button--full{width:100%;min-height:52px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:var(--gold);font-weight:700}.site-header{max-width:1240px;margin:auto;padding:24px 32px;display:flex;justify-content:space-between;align-items:center}.site-header nav{display:flex;align-items:center;gap:28px;color:#c5c9cc;font-size:14px}.hero{max-width:1240px;margin:20px auto 90px;min-height:680px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px;padding:40px 32px}.hero h1{font-family:'Playfair Display',serif;font-size:clamp(48px,5.6vw,78px);line-height:1.02;max-width:740px;margin:18px 0 24px}.hero__content>p{font-size:18px;color:#aeb4b8;max-width:620px}.hero__actions{display:flex;gap:12px;margin-top:34px}.hero__trust{display:flex;gap:38px;margin-top:44px;color:#949da2;font-size:13px}.hero__trust span{display:flex;flex-direction:column}.hero__trust b{color:#fff;font-size:17px}.hero__visual{position:relative;display:flex;justify-content:center;min-height:590px;background:radial-gradient(circle,rgba(210,166,101,.17),transparent 62%)}.phone-frame{width:320px;height:650px;background:#050607;border:1px solid #57585a;border-radius:48px;padding:10px;box-shadow:var(--shadow);transform:rotate(3deg)}.phone-screen{height:100%;border-radius:39px;background:linear-gradient(#101417,#080a0b);padding:26px 20px;overflow:hidden}.phone-top{position:absolute;top:18px;left:50%;transform:translateX(-50%);width:90px;height:23px;background:#000;border-radius:0 0 17px 17px;z-index:2}.mini-brand{display:flex;align-items:center;gap:8px;margin:8px 0 44px;font-family:'Playfair Display';letter-spacing:.08em}.mini-brand img{width:30px}.mini-greeting{font-size:18px;font-weight:600}.mini-card{border:1px solid #2a3034;background:#151a1d;border-radius:16px;padding:16px;display:flex;flex-direction:column}.mini-card--hero{background:linear-gradient(135deg,#3b2c1b,#171513);min-height:132px;justify-content:flex-end}.mini-card small,.service-row small{color:#aeb4b8}.mini-card strong{font-size:20px}.mini-title{display:flex;justify-content:space-between;font-size:12px;margin:24px 0 12px}.mini-title span{color:var(--gold)}.service-row{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #23282c;font-size:12px}.service-row div:nth-child(2){display:flex;flex-direction:column}.service-avatar{width:42px;height:42px;border-radius:11px;background:#252a2e;display:grid;place-items:center;color:var(--gold);font-size:20px}.phone-screen>button{width:100%;border:0;border-radius:12px;background:var(--gold);padding:13px;margin-top:20px;font-weight:700}.floating-card{position:absolute;background:rgba(20,24,27,.96);border:1px solid #30373b;border-radius:15px;padding:14px 17px;display:flex;gap:12px;align-items:center;box-shadow:var(--shadow);font-size:12px}.floating-card>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(210,166,101,.13);color:var(--gold)}.floating-card div{display:flex;flex-direction:column}.floating-card small{color:var(--muted)}.floating-card--one{left:0;top:120px}.floating-card--two{right:0;bottom:95px}.feature-strip{max-width:1176px;margin:0 auto;padding:0 0 110px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.feature-strip article{padding:38px 36px;border-right:1px solid var(--line)}.feature-strip article:last-child{border:0}.feature-strip span{color:var(--gold);font-size:12px}.feature-strip h2{font-family:'Playfair Display';font-size:23px}.feature-strip p{color:var(--muted)}.experience-section{max-width:1176px;margin:auto;padding:80px 40px 120px;background:linear-gradient(140deg,#151a1d,#0d1012);border:1px solid #252b2f;border-radius:30px}.experience-section>div:first-child{max-width:760px}.experience-section h2{font:600 44px/1.1 'Playfair Display';margin:12px 0 50px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.experience-grid article{padding:28px;border-radius:18px;background:#101416;border:1px solid #262c30}.experience-grid i{font-style:normal;font-size:28px;color:var(--gold);display:block;margin-bottom:22px}.experience-grid strong{font-size:17px}.experience-grid p{color:var(--muted);font-size:14px}.site-footer{max-width:1176px;margin:40px auto 0;padding:30px 0 45px;display:flex;justify-content:space-between;color:#777f84;font-size:12px}.auth-page{min-height:100vh}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr}.auth-showcase{padding:46px 7vw;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(115deg,rgba(5,6,7,.25),rgba(5,6,7,.92)),radial-gradient(circle at 18% 22%,#684a29 0,#2e241b 24%,#111517 62%)}.showcase-copy{max-width:600px}.showcase-copy h1{font:600 clamp(46px,5vw,70px)/1.03 'Playfair Display';margin:18px 0}.showcase-copy p{font-size:17px;color:#c3c6c8}.showcase-quote{color:#aeb4b8;font-size:14px;border-left:2px solid var(--gold);padding-left:18px}.auth-card{background:#0f1315;padding:48px clamp(28px,6vw,90px);display:flex;flex-direction:column;justify-content:center}.back-link{position:absolute;top:35px;color:#969ea3;font-size:13px}.auth-heading{margin-bottom:30px}.auth-heading h1,.auth-heading h2{font:600 40px/1.1 'Playfair Display';margin:10px 0}.auth-heading p{color:var(--muted)}.auth-form,.form-grid{display:grid;gap:18px}.auth-form label,.form-grid label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600}.auth-form label small{color:var(--muted);font-weight:400}.auth-form input,.form-grid input{width:100%;height:52px;border-radius:11px;border:1px solid #30373b;background:#151a1d;color:#fff;padding:0 15px;outline:none}.auth-form input:focus,.form-grid input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(210,166,101,.1)}.password-field{position:relative}.password-field button{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--gold);font-size:12px}.password-field input{padding-right:70px}.form-row{display:flex;justify-content:space-between;align-items:center}.check{display:flex!important;flex-direction:row!important;align-items:center;font-weight:400!important;color:#aeb4b8}.check input{width:18px!important;height:18px!important;accent-color:var(--gold)}.muted-link,.auth-switch a{color:var(--gold);font-size:13px}.auth-switch{text-align:center;color:var(--muted);font-size:13px;margin-top:24px}.alert{padding:13px 15px;border-radius:10px;margin-bottom:20px;font-size:13px}.alert--error{border:1px solid rgba(239,127,120,.35);background:rgba(239,127,120,.1);color:#ffc1bd}.alert--success{border:1px solid rgba(112,201,149,.35);background:rgba(112,201,149,.1);color:#a9e9c3}.auth-shell--single{display:grid;place-items:center;padding:40px;background:radial-gradient(circle at top,#302315,#0b0d0f 56%)}.install-card{width:min(850px,100%);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.install-card .brand{margin-bottom:36px}.form-grid{grid-template-columns:repeat(2,1fr)}.form-grid .full{grid-column:1/-1}.app-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh}.sidebar{background:#0d1012;border-right:1px solid #23282c;padding:28px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:10}.brand--compact img{width:45px;height:45px}.brand--compact strong{font-size:20px}.brand--compact small{display:none}.sidebar-nav{display:grid;gap:7px;margin-top:55px}.sidebar-nav a,.sidebar-bottom a{display:flex;align-items:center;gap:13px;padding:13px;border-radius:11px;color:#9ca4a9;font-size:14px}.sidebar-nav a.active{background:rgba(210,166,101,.11);color:#f1d6a8}.sidebar-nav a span,.sidebar-bottom span{font-size:18px;width:22px;text-align:center}.sidebar-nav a small{margin-left:auto;font-size:9px;color:#626a6f}.sidebar-nav a.disabled{opacity:.58}.sidebar-bottom{margin-top:auto;border-top:1px solid #22272b;padding-top:18px}.dashboard{padding:34px 42px 55px;max-width:1500px;width:100%}.dashboard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.dashboard-header h1{font:600 34px/1.1 'Playfair Display';margin:5px 0}.user-chip{display:flex;align-items:center;gap:12px;background:#121619;border:1px solid #252b2f;border-radius:14px;padding:8px 14px 8px 8px}.avatar{width:39px;height:39px;border-radius:11px;background:linear-gradient(135deg,var(--gold),#7f5428);display:grid;place-items:center;color:#130f0a;font-weight:700}.user-chip div:last-child{display:flex;flex-direction:column}.user-chip small{color:var(--muted);font-size:11px}.menu-button{display:none}.welcome-banner{min-height:235px;border-radius:25px;border:1px solid #3b3429;background:radial-gradient(circle at 85% 50%,rgba(210,166,101,.25),transparent 25%),linear-gradient(135deg,#2f2317,#131719 64%);padding:42px;display:flex;justify-content:space-between;align-items:center;overflow:hidden}.welcome-banner h2{font:600 35px/1.1 'Playfair Display';margin:14px 0 8px}.welcome-banner p{color:#b7bdc0;max-width:600px}.welcome-banner img{width:210px;opacity:.58;transform:rotate(8deg)}.badge{font-size:10px;letter-spacing:.2em;background:rgba(210,166,101,.13);color:var(--gold-light);border:1px solid rgba(210,166,101,.2);padding:8px 11px;border-radius:999px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.stats-grid article{background:#121619;border:1px solid #252b2f;border-radius:18px;padding:22px;display:grid;grid-template-columns:48px 1fr;column-gap:14px}.stat-icon{width:48px;height:48px;border-radius:14px;background:#20262a;display:grid;place-items:center;color:var(--gold);grid-row:1/4;font-size:22px}.stats-grid span{color:var(--muted);font-size:12px}.stats-grid strong{font-size:17px}.stats-grid small{color:#70797e}.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.panel-card{background:#121619;border:1px solid #252b2f;border-radius:20px;padding:25px}.panel-heading{display:flex;justify-content:space-between;align-items:center}.panel-heading h3,.next-card h3{font:600 24px 'Playfair Display';margin:8px 0}.progress-ring{width:58px;height:58px;border:5px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700}.checklist-card ul{list-style:none;padding:0;margin:22px 0 0}.checklist-card li{display:flex;gap:14px;align-items:center;padding:15px 0;border-top:1px solid #242a2e}.checklist-card li>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(112,201,149,.12);color:var(--success)}.checklist-card li div{display:flex;flex-direction:column}.checklist-card li small{color:var(--muted)}.next-card{display:flex;flex-direction:column}.next-card p{color:var(--muted)}.next-visual{margin-top:auto;padding:20px;background:linear-gradient(135deg,#272014,#171a1c);border:1px solid #3c3325;border-radius:16px;display:flex;align-items:center;gap:16px}.next-visual>span{font:600 36px 'Playfair Display';color:var(--gold)}.next-visual div{display:flex;flex-direction:column}.next-visual small{color:var(--muted)}.offline-page{min-height:100vh;display:grid;place-items:center;text-align:center}.offline-page main{max-width:380px;padding:30px}.offline-page img{width:110px}.offline-page h1{font:600 40px 'Playfair Display'}.offline-page p{color:var(--muted)}.offline-page button{border:0;border-radius:12px;background:var(--gold);padding:13px 18px;font-weight:700}
@media(max-width:1000px){.hero{grid-template-columns:1fr;padding-top:70px}.hero__content{text-align:center}.hero__content>p{margin-left:auto;margin-right:auto}.hero__actions,.hero__trust{justify-content:center}.hero__visual{margin-top:20px}.auth-showcase{display:none}.auth-shell{grid-template-columns:1fr}.auth-card{max-width:650px;width:100%;margin:auto;min-height:100vh}.dashboard{padding:28px 24px}.stats-grid{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:1fr}}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-285px;transition:.25s}.sidebar--open{left:0;box-shadow:20px 0 50px rgba(0,0,0,.5)}.menu-button{display:grid;place-items:center;width:44px;height:44px;border-radius:11px;border:1px solid #2d3438;background:#121619;color:#fff}.dashboard-header>div:nth-child(2){margin-right:auto;margin-left:14px}}
@media(max-width:700px){.site-header{padding:18px 20px}.site-header nav>a:not(.button){display:none}.brand img{width:45px;height:45px}.brand strong{font-size:20px}.hero{padding:25px 20px;margin-bottom:55px}.hero h1{font-size:45px}.hero__trust{gap:20px}.hero__visual{transform:scale(.88);margin-left:-20px;margin-right:-20px}.floating-card--one{left:-25px}.floating-card--two{right:-25px}.feature-strip{grid-template-columns:1fr;padding:0 20px 70px;border:0}.feature-strip article{border-right:0;border-top:1px solid var(--line);padding:28px 8px}.experience-section{margin:0 18px;padding:55px 24px}.experience-section h2{font-size:34px}.experience-grid{grid-template-columns:1fr}.site-footer{margin:20px;padding:25px 0}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.auth-card{padding:80px 24px 40px}.dashboard{padding:20px 16px}.dashboard-header h1{font-size:28px}.user-chip div:last-child{display:none}.welcome-banner{padding:30px 24px}.welcome-banner img{display:none}.welcome-banner h2{font-size:29px}.stats-grid article{padding:18px}.panel-card{padding:20px}}

/* Bloque 2: sucursales y datos del negocio */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.header-actions{display:flex;align-items:center;gap:12px}.header-action{white-space:nowrap}.dashboard-title{min-width:0}.button--small{padding:10px 15px;border-radius:10px;font-size:13px}.button--danger-outline{border-color:rgba(239,127,120,.45);color:#ffc1bd;background:rgba(239,127,120,.06)}
.alert--warning{border:1px solid rgba(210,166,101,.35);background:rgba(210,166,101,.1);color:var(--gold-light)}.alert--dismissible{display:flex;align-items:center;justify-content:space-between;gap:16px}.alert--dismissible button{border:0;background:transparent;color:inherit;font-size:22px;line-height:1;padding:0}.alert a{text-decoration:underline;font-weight:700}
.welcome-banner--business .banner-actions{display:flex;gap:10px;margin-top:22px}.module-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.filter-bar select,.module-form select,.module-form textarea,.module-form input,.settings-layout select{width:100%;border:1px solid #30373b;background:#151a1d;color:#fff;border-radius:11px;outline:none}.filter-bar select,.module-form select{height:48px;padding:0 38px 0 14px}.module-form textarea{padding:14px;resize:vertical;min-height:100px}.filter-bar select:focus,.module-form select:focus,.module-form textarea:focus,.module-form input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(210,166,101,.1)}.filter-bar>label:not(.search-field){width:160px}.search-field{position:relative;width:min(420px,55vw)}.search-field input{height:48px;padding:0 50px 0 15px}.search-field button{position:absolute;right:4px;top:4px;width:40px;height:40px;border:0;border-radius:9px;background:#252b2f;color:var(--gold);font-size:20px}.results-count{color:var(--muted);font-size:13px;white-space:nowrap}
.branch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.branch-card{background:#121619;border:1px solid #252b2f;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;min-height:330px;transition:.2s}.branch-card:hover{transform:translateY(-2px);border-color:#3b4145;box-shadow:0 18px 45px rgba(0,0,0,.2)}.branch-card__top{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 0}.branch-symbol,.branch-hero-icon{display:grid;place-items:center;color:var(--gold);background:linear-gradient(135deg,#2c251a,#171b1e);border:1px solid #3b3328}.branch-symbol{width:44px;height:44px;border-radius:13px;font-size:22px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:700;letter-spacing:.04em}.status-pill--active{background:rgba(112,201,149,.11);color:#9be0b7;border:1px solid rgba(112,201,149,.22)}.status-pill--inactive{background:rgba(156,164,169,.1);color:#b7bec2;border:1px solid rgba(156,164,169,.2)}.branch-card__body{padding:21px 20px 15px;flex:1}.branch-card h2{font:600 23px 'Playfair Display';margin:0 0 4px}.branch-location{color:var(--gold);font-size:12px;margin:0 0 22px}.branch-details{display:grid;gap:12px;margin:0}.branch-details div{display:grid;gap:2px}.branch-details dt{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.branch-details dd{margin:0;font-size:13px;color:#d5d9db;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.branch-card__actions{padding:15px 20px 20px;border-top:1px solid #242a2e;display:flex;justify-content:space-between;align-items:center;gap:10px}.branch-card__actions .button{flex:1}.icon-button{width:40px;height:40px;border-radius:10px;border:1px solid #363d41;background:#181d20;display:grid;place-items:center;color:var(--gold)}
.empty-state{text-align:center;display:grid;place-items:center;min-height:390px}.empty-icon{width:72px;height:72px;border-radius:22px;background:#1b2023;display:grid;place-items:center;color:var(--gold);font-size:34px}.empty-state h2{font:600 30px 'Playfair Display';margin:18px 0 4px}.empty-state p{color:var(--muted);margin:0 0 22px}.pagination{margin-top:24px;display:flex;align-items:center;justify-content:center;gap:20px;color:var(--muted);font-size:13px}.pagination a{color:var(--gold-light);font-weight:700}
.module-form{display:grid;gap:18px}.form-section{padding:28px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading h2,.section-heading h3{font:600 25px 'Playfair Display';margin:7px 0 0}.section-number{font:600 32px 'Playfair Display';color:#4a4032}.form-grid--wide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid--wide label{display:flex;flex-direction:column;gap:7px;color:#cbd0d2;font-size:12px}.form-grid--wide label.full{grid-column:1/-1}.field-error{color:#ffaaa5!important;font-size:11px!important;margin-top:1px}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding:4px 0 14px}.form-actions--sticky{position:sticky;bottom:0;z-index:5;background:linear-gradient(transparent,#0b0d0f 28%);padding:30px 0 16px}
.schedule-table{display:grid;gap:10px}.schedule-row{border:1px solid #292f33;background:#151a1d;border-radius:15px;padding:15px;display:grid;grid-template-columns:150px 1fr;gap:15px;align-items:center}.schedule-row--closed{opacity:.62}.schedule-row--closed .schedule-times{pointer-events:none}.day-toggle{position:relative;display:flex;align-items:center;gap:12px;cursor:pointer}.day-toggle input{position:absolute!important;opacity:0;width:1px!important;height:1px!important}.day-toggle>span{width:38px;height:22px;border-radius:999px;background:#343b3f;position:relative;transition:.2s}.day-toggle>span:after{content:'';position:absolute;width:16px;height:16px;border-radius:50%;background:#8d969b;left:3px;top:3px;transition:.2s}.day-toggle input:checked+span{background:rgba(210,166,101,.35)}.day-toggle input:checked+span:after{left:19px;background:var(--gold-light)}.schedule-times{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:9px}.schedule-times label{display:grid;gap:4px;color:var(--muted);font-size:10px}.schedule-times input{height:42px!important;padding:0 10px!important;color-scheme:dark}
.back-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;color:var(--muted);font-size:13px}.back-row>a:hover{color:var(--gold-light)}.branch-profile-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:17px}.branch-profile-main{min-height:285px;background:radial-gradient(circle at 90% 20%,rgba(210,166,101,.14),transparent 30%),#121619}.branch-hero-icon{width:64px;height:64px;border-radius:20px;font-size:32px;margin-bottom:24px}.branch-profile-main h2{font:600 34px 'Playfair Display';margin:8px 0}.branch-profile-main p{color:var(--muted);margin:3px 0}.contact-actions{display:flex;gap:9px;margin-top:24px}.info-list{display:grid;margin:16px 0 0}.info-list>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 0;border-top:1px solid #282e32}.info-list dt{color:var(--muted);font-size:12px}.info-list dd{margin:0;text-align:right;font-size:13px;word-break:break-word}.hours-card,.notes-card,.danger-zone{margin-top:17px}.hours-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px}.hours-list>div{display:grid;grid-template-columns:110px 1fr;align-items:center;padding:14px 0;border-top:1px solid #282e32}.hours-list strong{font-size:13px}.hours-list span{color:#d8dcde;font-size:13px}.hours-list small{grid-column:2;color:var(--muted);font-size:10px}.closed-label{color:#8f989d!important}.notes-card p{color:#c5cbce;margin-bottom:0}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:24px;border-color:rgba(239,127,120,.18)}.danger-zone h3{font:600 20px 'Playfair Display';margin:0 0 4px}.danger-zone p{color:var(--muted);margin:0;font-size:13px}
.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.settings-main{display:grid;gap:18px}.settings-preview{position:sticky;top:25px;text-align:center;padding:30px}.business-preview-logo{width:100px;height:100px;margin:20px auto 16px;border-radius:28px;background:radial-gradient(circle,rgba(210,166,101,.22),transparent 65%);display:grid;place-items:center}.business-preview-logo img{width:82px}.settings-preview h2{font:600 28px 'Playfair Display';margin:0}.settings-preview>p{color:var(--muted);font-size:12px}.settings-preview dl{margin:24px 0;text-align:left}.settings-preview dl div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid #282e32}.settings-preview dt{color:var(--muted);font-size:11px}.settings-preview dd{margin:0;font-size:12px;text-align:right}.preview-note{border:1px solid #302b24;background:#1b1814;border-radius:12px;padding:13px;text-align:left!important}.input-suffix{position:relative}.input-suffix input{padding-right:62px!important}.input-suffix span{position:absolute;right:14px;top:16px;color:var(--muted);font-size:11px}
.quick-actions{display:grid;margin-top:20px}.quick-actions>a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:13px;padding:15px 0;border-top:1px solid #282e32}.quick-actions>a>span{width:42px;height:42px;border-radius:12px;background:#20262a;display:grid;place-items:center;color:var(--gold);font-size:19px}.quick-actions>a>div{display:flex;flex-direction:column}.quick-actions small{color:var(--muted)}.quick-actions i{font-style:normal;color:var(--gold)}.business-summary-card h3,.client-dashboard-grid h3{font:600 25px 'Playfair Display';margin:10px 0}.text-link{display:inline-block;color:var(--gold-light);font-size:12px;font-weight:700;margin-top:15px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--success);margin-right:5px}.muted-copy{color:var(--muted)}.client-dashboard-grid{margin-top:18px}.client-style-card{text-align:center;display:grid;place-items:center}.update-card{max-width:650px;margin:40px auto;text-align:center;padding:45px}.update-icon{width:72px;height:72px;border-radius:22px;margin:0 auto 20px;background:#22201b;color:var(--gold);display:grid;place-items:center;font-size:34px}.update-card h2{font:600 32px 'Playfair Display';margin:12px 0}.update-card p{color:var(--muted);margin-bottom:24px}.error-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#2e2217,#0b0d0f 55%)}.error-state{text-align:center;padding:35px;max-width:520px}.error-code{font:700 80px 'Playfair Display';color:var(--gold)}.error-state h1{font:600 36px 'Playfair Display';margin:0}.error-state p{color:var(--muted);margin:10px 0 24px}
@media(max-width:1250px){.branch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-layout{grid-template-columns:1fr}.settings-preview{position:static}.schedule-times{grid-template-columns:repeat(2,minmax(110px,1fr))}}
@media(max-width:900px){.header-actions .header-action{display:none}.branch-profile-grid{grid-template-columns:1fr}.module-toolbar{align-items:flex-start}.hours-list{grid-template-columns:1fr}.form-actions--sticky{bottom:0}.dashboard-header{gap:8px}.header-actions{margin-left:auto}}
@media(max-width:700px){.module-toolbar{flex-direction:column}.filter-bar{width:100%;display:grid;grid-template-columns:1fr 130px}.search-field{width:100%}.filter-bar .button{grid-column:1/-1}.results-count{align-self:flex-end}.branch-grid{grid-template-columns:1fr}.form-section{padding:20px 16px}.form-grid--wide{grid-template-columns:1fr}.form-grid--wide label.full{grid-column:auto}.schedule-row{grid-template-columns:1fr}.schedule-times{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-times input{min-width:0}.section-number{font-size:25px}.branch-profile-main h2{font-size:29px}.danger-zone{align-items:flex-start;flex-direction:column}.danger-zone form,.danger-zone button{width:100%}.settings-preview{padding:22px}.form-actions{position:sticky;bottom:0;background:linear-gradient(transparent,#0b0d0f 25%);padding:30px 0 12px}.form-actions .button{flex:1}.welcome-banner--business .banner-actions{flex-wrap:wrap}.hours-list>div{grid-template-columns:95px 1fr}.header-actions .user-chip{padding-right:8px}.dashboard-title h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52vw}}
@media(max-width:390px){.filter-bar{grid-template-columns:1fr}.filter-bar>label:not(.search-field){width:100%}.schedule-times{grid-template-columns:1fr 1fr}.branch-card__actions{flex-wrap:wrap}.dashboard-title h1{max-width:43vw}.user-chip{display:none}.header-actions{display:none}}
.toolbar-end{display:flex;align-items:center;gap:10px}.mobile-create{display:none}
@media(max-width:700px){.toolbar-end{width:100%;justify-content:space-between}.mobile-create{display:inline-flex}.results-count{align-self:center}}
.sidebar-bottom form{margin:0}.sidebar-bottom button{width:100%;display:flex;align-items:center;gap:13px;padding:13px;border-radius:11px;color:#9ca4a9;font-size:14px;background:transparent;border:0;text-align:left}.sidebar-bottom button:hover{background:#171b1e;color:#fff}.sidebar-bottom button span{font-size:18px;width:22px;text-align:center}
/* Bloque 3 · Equipo */
.team-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.team-summary-grid article{border:1px solid #282e32;background:linear-gradient(145deg,#151a1d,#101316);border-radius:16px;padding:18px 20px;display:grid;grid-template-columns:1fr auto;gap:3px 14px;align-items:center}.team-summary-grid span{font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}.team-summary-grid strong{grid-row:1/3;grid-column:2;font:600 34px 'Playfair Display';color:var(--gold-light)}.team-summary-grid small{color:#c0c6c9}.filter-bar--team{flex:1;flex-wrap:wrap}.filter-bar--team .search-field{min-width:260px;flex:1}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.team-card{position:relative;border:1px solid #282e32;background:#121619;border-radius:18px;overflow:hidden;min-width:0;box-shadow:0 16px 35px rgba(0,0,0,.16)}.team-card__cover{height:70px;background:radial-gradient(circle at 18% 20%,rgba(210,166,101,.2),transparent 34%),linear-gradient(135deg,#211b15,#111517)}.team-avatar{position:absolute;top:31px;left:20px;width:76px;height:76px;border-radius:22px;border:4px solid #121619;background:#292117;overflow:hidden;display:grid;place-items:center;color:var(--gold-light);font:600 30px 'Playfair Display'}.team-avatar img{width:100%;height:100%;object-fit:cover}.team-card>.status-pill{position:absolute;top:88px;right:18px}.team-card__body{padding:50px 20px 17px}.team-card__body h2{font:600 25px 'Playfair Display';margin:7px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-card__body>p{color:var(--muted);font-size:12px;min-height:19px;margin:0}.team-card__details{margin:16px 0 0;display:grid}.team-card__details div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #282e32;padding:11px 0}.team-card__details dt{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.team-card__details dd{margin:0;text-align:right;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:62%}.team-card__actions{border-top:1px solid #282e32;padding:14px 20px 18px;display:flex;gap:9px}.team-card__actions .button{flex:1}.status-pill--blocked{color:#ffaaa5;background:rgba(239,127,120,.11);border-color:rgba(239,127,120,.22)}
.staff-profile-form{display:grid;grid-template-columns:185px minmax(0,1fr);gap:26px;align-items:start}.avatar-uploader{display:grid;justify-items:center;gap:10px;padding:18px;border:1px dashed #3a4145;border-radius:16px;background:#101416;text-align:center}.avatar-preview{width:118px;height:118px;border-radius:28px;overflow:hidden;background:radial-gradient(circle,rgba(210,166,101,.22),#1a1f22 70%);display:grid;place-items:center;color:var(--gold-light);font:600 45px 'Playfair Display'}.avatar-preview img{width:100%;height:100%;object-fit:cover}.avatar-uploader>label.button{position:relative;overflow:hidden;cursor:pointer}.avatar-uploader>label.button input{position:absolute;inset:0;opacity:0;cursor:pointer}.avatar-uploader>small{color:var(--muted);font-size:10px}.check-row{border:1px solid #30363a;background:#151a1d;border-radius:13px;padding:14px;display:flex!important;flex-direction:row!important;align-items:flex-start;gap:11px!important;cursor:pointer}.check-row input{width:18px!important;height:18px!important;min-height:0!important;margin-top:2px;accent-color:var(--gold)}.check-row>span{display:grid;gap:2px}.check-row strong{color:#e8e4dc;font-size:13px}.check-row small{color:var(--muted)!important}.check-row--compact{padding:8px 10px!important;background:transparent;border:0}.branch-assignment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.branch-check-card{position:relative;border:1px solid #30363a;background:#151a1d;border-radius:14px;padding:14px;display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;cursor:pointer;min-width:0;transition:.2s}.branch-check-card:hover,.branch-check-card.selected{border-color:#77603f;background:#1a1814}.branch-check-card input{position:absolute;opacity:0;pointer-events:none}.branch-check-icon{width:38px;height:38px;border-radius:11px;background:#20262a;display:grid;place-items:center;color:var(--gold)}.branch-check-card>span:nth-of-type(2){display:grid;min-width:0}.branch-check-card strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.branch-check-card small{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.branch-check-card i{font-style:normal;width:23px;height:23px;border-radius:50%;border:1px solid #3c4448;display:grid;place-items:center;color:transparent;font-size:11px}.branch-check-card.selected i{background:var(--gold);border-color:var(--gold);color:#111}.primary-branch-field{margin-top:18px;max-width:520px}.staff-profile-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:17px}.staff-profile-main{display:grid;grid-template-columns:155px 1fr;gap:24px;align-items:center;background:radial-gradient(circle at 5% 10%,rgba(210,166,101,.15),transparent 32%),#121619}.staff-profile-avatar{width:155px;height:175px;border-radius:28px;overflow:hidden;background:#211b15;display:grid;place-items:center;color:var(--gold-light);font:600 58px 'Playfair Display'}.staff-profile-avatar img{width:100%;height:100%;object-fit:cover}.staff-profile-main h2{font:600 35px 'Playfair Display';margin:7px 0 2px}.staff-specialty{color:var(--gold-light);margin:0}.staff-bio{color:var(--muted);font-size:13px;line-height:1.6;max-width:620px}.team-detail-grid{margin-top:17px}.assigned-branches-list{display:grid}.assigned-branches-list .assigned-branch-row{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;padding:13px 0;border-top:1px solid #282e32}.assigned-branches-list .assigned-branch-row>span{width:38px;height:38px;border-radius:11px;background:#20262a;display:grid;place-items:center;color:var(--gold)}.assigned-branches-list .assigned-branch-row>div{display:grid}.assigned-branches-list small{color:var(--muted)}.assigned-branches-list i{font-style:normal;color:var(--gold-light);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.status-pill--inactive{color:#b8c0c4;background:rgba(156,164,169,.1);border-color:rgba(156,164,169,.2)}
@media(max-width:1250px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.branch-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-profile-grid{grid-template-columns:1fr}}
@media(max-width:900px){.team-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.staff-profile-form{grid-template-columns:1fr}.avatar-uploader{grid-template-columns:auto 1fr;justify-items:start;text-align:left}.avatar-preview{grid-row:1/4}.staff-profile-main{grid-template-columns:125px 1fr}.staff-profile-avatar{width:125px;height:145px}}
@media(max-width:700px){.team-summary-grid{grid-template-columns:1fr}.team-summary-grid article{padding:14px 16px}.team-summary-grid strong{font-size:29px}.filter-bar--team{display:grid;grid-template-columns:1fr 1fr}.filter-bar--team .search-field{grid-column:1/-1;min-width:0}.team-grid{grid-template-columns:1fr}.branch-assignment-grid{grid-template-columns:1fr}.avatar-uploader{grid-template-columns:1fr;justify-items:center;text-align:center}.avatar-preview{grid-row:auto}.staff-profile-main{grid-template-columns:1fr;text-align:center;justify-items:center}.staff-profile-main .contact-actions{justify-content:center}.staff-profile-avatar{width:145px;height:160px}.staff-profile-main h2{font-size:30px}}
@media(max-width:390px){.filter-bar--team{grid-template-columns:1fr}.team-card__actions{flex-wrap:wrap}.staff-profile-main{padding:22px 16px}.staff-account-card{padding:20px 16px}.assigned-branches-list i{display:none}}
[hidden]{display:none!important}
/* Bloque 4 · Servicios y precios */
.stats-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.service-summary-grid article:nth-child(3){background:linear-gradient(145deg,#1b1813,#101316)}.service-toolbar .toolbar-end{flex-wrap:wrap;justify-content:flex-end}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.service-card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #282e32;background:linear-gradient(160deg,#151a1d,#101315);border-radius:20px;box-shadow:0 18px 42px rgba(0,0,0,.17)}.service-card--featured{border-color:#6e593c;background:radial-gradient(circle at 90% 5%,rgba(210,166,101,.18),transparent 30%),linear-gradient(160deg,#1a1814,#101315)}.service-card__top{min-height:82px;padding:18px 19px 12px;display:flex;align-items:center;gap:12px}.service-card__top>div{display:grid;gap:5px;min-width:0}.service-card__top>.status-pill{margin-left:auto}.service-symbol{width:47px;height:47px;flex:0 0 47px;border-radius:15px;background:linear-gradient(135deg,#34291c,#1c2023);border:1px solid #453a2b;color:var(--gold-light);display:grid;place-items:center;font-size:22px}.featured-label{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#17120c;background:var(--gold);border-radius:999px;padding:4px 8px;width:max-content;font-weight:800}.service-card__body{padding:4px 20px 18px;flex:1}.service-card__body h2{font:600 26px/1.15 'Playfair Display';margin:8px 0 7px}.service-card__body p{color:var(--muted);font-size:12px;line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:58px}.service-card__meta{display:flex;gap:8px;flex-wrap:wrap;padding:0 20px 16px}.service-card__meta span{display:flex;align-items:center;gap:7px;border:1px solid #2c3337;background:#151a1d;border-radius:999px;padding:7px 10px;color:#b8bfc2;font-size:10px}.service-card__meta i{font-style:normal;color:var(--gold)}.service-card__footer{border-top:1px solid #282e32;padding:15px 20px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.service-price{display:flex;align-items:baseline;gap:8px}.service-price strong{font:600 24px 'Playfair Display';color:var(--gold-light)}.service-price small{text-decoration:line-through;color:#7d8589}.input-prefix{position:relative}.input-prefix>span{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--gold);font-weight:700;z-index:1}.input-prefix input{padding-left:31px!important}.barber-assignment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.barber-check-card{position:relative;border:1px solid #30363a;background:#151a1d;border-radius:14px;padding:12px;display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;cursor:pointer;min-width:0;transition:.2s}.barber-check-card:hover,.barber-check-card.selected{border-color:#77603f;background:#1a1814}.barber-check-card input{position:absolute;opacity:0;pointer-events:none}.barber-check-card>span{width:42px;height:42px;border-radius:13px;background:radial-gradient(circle,rgba(210,166,101,.22),#20262a 70%);display:grid;place-items:center;color:var(--gold-light);font:600 18px 'Playfair Display'}.barber-check-card>div{display:grid;min-width:0}.barber-check-card strong,.barber-check-card small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.barber-check-card strong{font-size:12px}.barber-check-card small{font-size:10px;color:var(--muted)}.barber-check-card i{font-style:normal;width:23px;height:23px;border-radius:50%;border:1px solid #3c4448;display:grid;place-items:center;color:transparent;font-size:11px}.barber-check-card.selected i{background:var(--gold);border-color:var(--gold);color:#111}.service-detail-hero{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:24px;align-items:center;background:radial-gradient(circle at 8% 18%,rgba(210,166,101,.15),transparent 28%),#121619}.service-detail-hero--featured{border-color:#6e593c}.service-detail-icon{width:100px;height:110px;border-radius:26px;background:linear-gradient(145deg,#372b1d,#1b2023);border:1px solid #4b3c29;display:grid;place-items:center;color:var(--gold-light);font-size:42px}.service-detail-hero h2{font:600 38px/1.08 'Playfair Display';margin:7px 0 8px}.service-detail-hero p{color:var(--muted);font-size:13px;max-width:690px;margin:0}.service-detail-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.service-detail-badges span{border:1px solid #30363a;background:#151a1d;border-radius:999px;padding:7px 10px;color:#c0c6c9;font-size:10px}.service-detail-price{min-width:190px;border-left:1px solid #30363a;padding-left:25px;display:grid;text-align:right}.service-detail-price strong{font:600 38px 'Playfair Display';color:var(--gold-light)}.service-detail-price small{text-decoration:line-through;color:#858d91}.service-detail-price span{color:var(--muted);font-size:10px}.service-detail-grid{margin-top:17px}.service-barber-list{display:grid;gap:2px}.service-barber-list>div{display:grid;grid-template-columns:46px 1fr;align-items:center;gap:12px;padding:11px 0;border-top:1px solid #282e32}.service-barber-list>div>span{width:46px;height:46px;border-radius:14px;overflow:hidden;background:#252014;display:grid;place-items:center;color:var(--gold-light);font:600 18px 'Playfair Display'}.service-barber-list img{width:100%;height:100%;object-fit:cover}.service-barber-list>div>div{display:grid}.service-barber-list small{color:var(--muted)}.service-admin-details{margin-top:17px}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.category-card{padding:0;overflow:hidden;display:flex;flex-direction:column}.category-card__icon{height:88px;background:radial-gradient(circle at 20% 10%,rgba(210,166,101,.2),transparent 35%),linear-gradient(135deg,#211a13,#111517);display:grid;place-items:center;font-size:28px;color:var(--gold)}.category-card__body{padding:19px 20px;flex:1}.category-title-row{display:flex;justify-content:space-between;align-items:center}.category-title-row>small{color:var(--muted);font-size:9px}.category-card h2{font:600 26px 'Playfair Display';margin:12px 0 5px}.category-card p{color:var(--muted);font-size:12px;min-height:40px}.category-card dl{display:grid;grid-template-columns:1fr 1fr;margin:17px 0 0;border-top:1px solid #282e32}.category-card dl div{display:flex;justify-content:space-between;padding:12px 10px 0 0}.category-card dt{color:var(--muted);font-size:10px}.category-card dd{margin:0;color:var(--gold-light);font-weight:700}.category-card__actions{border-top:1px solid #282e32;padding:14px 20px 18px;display:flex;gap:9px}.category-card__actions>*{flex:1}.category-card__actions form,.category-card__actions button{width:100%}.category-form{max-width:880px}
@media(max-width:1250px){.stats-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.barber-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.service-detail-hero{grid-template-columns:80px 1fr}.service-detail-icon{width:80px;height:90px}.service-detail-price{grid-column:1/-1;border-left:0;border-top:1px solid #30363a;padding:17px 0 0;display:flex;align-items:baseline;gap:10px;text-align:left}.service-detail-price span{margin-left:auto}}
@media(max-width:700px){.stats-grid--four{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.barber-assignment-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr}.service-card__footer{align-items:flex-end}.service-detail-hero{grid-template-columns:1fr;text-align:center}.service-detail-icon{margin:auto}.service-detail-badges{justify-content:center}.service-detail-price{justify-content:center;flex-wrap:wrap}.service-detail-price span{width:100%;margin:0;text-align:center}.service-toolbar .toolbar-end{justify-content:space-between}.service-toolbar .toolbar-end .button--outline{display:inline-flex}.category-form{max-width:none}}
@media(max-width:390px){.service-card__footer{flex-direction:column;align-items:stretch}.service-card__footer .button{width:100%}.service-price{justify-content:center}.service-toolbar .toolbar-end{display:grid;grid-template-columns:1fr 1fr}.service-toolbar .results-count{grid-column:1/-1}.service-toolbar .button{width:100%}}

/* Bloque 5 · Agenda y reservaciones */
.button--danger{background:rgba(239,127,120,.12);border-color:rgba(239,127,120,.4);color:#ffc1bd}.button--success{background:rgba(112,201,149,.14);border-color:rgba(112,201,149,.38);color:#b8f0cd}.soft-pill{display:inline-flex;align-items:center;border:1px solid #30363a;background:#151a1d;border-radius:999px;padding:7px 10px;color:#c0c6c9;font-size:10px}.status-pill--pending{background:rgba(210,166,101,.12);color:#efd09e;border:1px solid rgba(210,166,101,.28)}.status-pill--confirmed{background:rgba(92,151,221,.12);color:#a9cffb;border:1px solid rgba(92,151,221,.28)}.status-pill--in_service{background:rgba(179,125,229,.12);color:#d9b5fa;border:1px solid rgba(179,125,229,.28)}.status-pill--completed{background:rgba(112,201,149,.12);color:#a9e9c3;border:1px solid rgba(112,201,149,.28)}.status-pill--cancelled,.status-pill--no_show{background:rgba(239,127,120,.1);color:#ffc1bd;border:1px solid rgba(239,127,120,.25)}
.appointment-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.appointment-summary-grid article{border:1px solid #282e32;background:linear-gradient(145deg,#151a1d,#101316);border-radius:16px;padding:18px 20px;display:grid;grid-template-columns:1fr auto;gap:3px 14px;align-items:center}.appointment-summary-grid article:nth-child(2){background:linear-gradient(145deg,#1b1813,#101316)}.appointment-summary-grid span{font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}.appointment-summary-grid strong{grid-row:1/3;grid-column:2;font:600 34px 'Playfair Display';color:var(--gold-light)}.appointment-summary-grid small{color:#c0c6c9}.appointment-toolbar{align-items:flex-start}.appointment-filter{flex:1}.appointment-filter>label:not(.search-field){width:160px}.appointment-filter .date-filter{display:grid;gap:4px}.appointment-filter .date-filter span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.appointment-filter input[type=date]{height:48px;border:1px solid #30373b;background:#151a1d;color:#fff;border-radius:11px;padding:0 12px;color-scheme:dark}.appointment-list{display:grid;gap:12px}.appointment-card{display:grid;grid-template-columns:86px minmax(0,1fr) auto;align-items:stretch;border:1px solid #282e32;background:linear-gradient(155deg,#151a1d,#101315);border-radius:18px;overflow:hidden;min-width:0;transition:.2s}.appointment-card:hover{transform:translateY(-1px);border-color:#3b4145}.appointment-card--past{opacity:.8}.appointment-date{display:grid;place-items:center;align-content:center;border-right:1px solid #282e32;background:linear-gradient(145deg,#211b15,#121619);padding:14px 10px;text-align:center}.appointment-date span{text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:var(--gold)}.appointment-date strong{font:600 34px/1 'Playfair Display';margin:4px 0}.appointment-date small{font-size:11px;color:#c4c9cb}.appointment-main{padding:17px 20px;min-width:0}.appointment-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.appointment-title-row h2{font:600 24px/1.1 'Playfair Display';margin:5px 0}.appointment-services{color:var(--gold-light);font-size:12px;margin:3px 0 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appointment-meta{display:flex;gap:8px;flex-wrap:wrap}.appointment-meta span{border:1px solid #2d3438;background:#151a1d;border-radius:999px;padding:6px 9px;color:#aeb5b9;font-size:10px}.appointment-actions{display:flex;align-items:center;padding:18px;border-left:1px solid #282e32}.appointment-form{display:grid;gap:17px}.appointment-form.is-loading{opacity:.78}.appointment-form-section{padding:28px}.appointment-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.appointment-form .form-grid>label{display:flex;flex-direction:column;gap:7px;color:#cbd0d2;font-size:12px}.appointment-form .form-grid>.full,.appointment-form .form-grid>label.full{grid-column:1/-1}.appointment-form select,.appointment-form input,.appointment-form textarea{width:100%;border:1px solid #30373b;background:#151a1d;color:#fff;border-radius:11px;outline:none}.appointment-form select,.appointment-form input{height:50px;padding:0 14px}.appointment-form textarea{padding:14px;resize:vertical;min-height:100px}.appointment-form select:focus,.appointment-form input:focus,.appointment-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(210,166,101,.1)}.appointment-form input[readonly]{color:#aeb5b9;background:#111517}.form-label{display:block;color:#cbd0d2;font-size:12px;font-weight:600;margin-bottom:8px}.field-hint{color:var(--muted)!important;font-size:10px!important;font-weight:400!important}.appointment-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.service-choice{position:relative;border:1px solid #30363a;background:#151a1d;border-radius:14px;padding:13px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;cursor:pointer;min-width:0;transition:.2s}.service-choice:hover,.service-choice.selected{border-color:#77603f;background:#1a1814}.service-choice input{position:absolute;opacity:0;pointer-events:none}.service-choice>span{display:grid;min-width:0}.service-choice strong,.service-choice small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.service-choice strong{font-size:12px}.service-choice small{font-size:10px;color:var(--muted)}.service-choice b{font:600 17px 'Playfair Display';color:var(--gold-light)}.availability-message{border:1px dashed #343b3f;border-radius:13px;padding:18px;text-align:center;color:var(--muted);font-size:12px}.appointment-detail-hero{display:grid;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:25px;padding:25px;background:radial-gradient(circle at 8% 20%,rgba(210,166,101,.16),transparent 30%),#121619}.appointment-detail-date{width:110px;height:125px;border-radius:25px;background:linear-gradient(145deg,#372b1d,#1b2023);border:1px solid #4b3c29;display:grid;place-items:center;align-content:center}.appointment-detail-date span{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--gold)}.appointment-detail-date strong{font:600 42px/1 'Playfair Display';margin:5px 0}.appointment-detail-date small{color:var(--muted)}.appointment-detail-main h2{font:600 38px/1.08 'Playfair Display';margin:7px 0}.appointment-detail-main>p{color:var(--gold-light);margin:0}.appointment-detail-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.appointment-detail-total{min-width:190px;border-left:1px solid #30363a;padding-left:25px;display:grid;text-align:right}.appointment-detail-total span,.appointment-detail-total small{color:var(--muted);font-size:10px}.appointment-detail-total strong{font:600 38px 'Playfair Display';color:var(--gold-light)}.appointment-detail-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:17px;margin-top:17px}.appointment-detail-column{display:grid;gap:17px;align-content:start}.detail-section{padding:24px}.detail-section .section-heading{margin-bottom:18px}.appointment-service-lines{display:grid}.appointment-service-lines>div{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;border-top:1px solid #282e32}.appointment-service-lines>div:first-child{border-top:0}.appointment-service-lines span{display:grid}.appointment-service-lines small{color:var(--muted)}.appointment-service-lines b{font:600 18px 'Playfair Display';color:var(--gold-light)}.appointment-info-list{display:grid;margin:0}.appointment-info-list>div{display:grid;grid-template-columns:145px 1fr;gap:15px;padding:12px 0;border-top:1px solid #282e32}.appointment-info-list>div:first-child{border-top:0}.appointment-info-list dt{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.09em}.appointment-info-list dd{margin:0;display:grid;font-size:12px}.appointment-info-list dd small{color:var(--muted)}.detail-copy{color:#c3c8ca;font-size:13px;line-height:1.7;margin:0}.appointment-status-actions{display:grid;gap:11px}.appointment-status-actions .section-heading{margin-bottom:4px}.appointment-status-actions form{display:grid;gap:7px}.appointment-status-actions label{display:grid;gap:6px;color:var(--muted);font-size:10px}.appointment-status-actions textarea{border:1px solid #30373b;background:#151a1d;color:#fff;border-radius:10px;padding:10px;resize:vertical}.appointment-timeline{display:grid}.appointment-timeline>div{position:relative;display:grid;grid-template-columns:18px 1fr;gap:10px;padding:0 0 18px}.appointment-timeline>div:before{content:"";position:absolute;left:5px;top:12px;bottom:0;width:1px;background:#343b3f}.appointment-timeline>div:last-child:before{display:none}.appointment-timeline i{width:11px;height:11px;border-radius:50%;background:var(--gold);margin-top:4px;box-shadow:0 0 0 4px rgba(210,166,101,.1)}.appointment-timeline span{display:grid}.appointment-timeline small{color:var(--muted);font-size:10px}.appointment-timeline p{margin:5px 0 0;color:#c0c6c9;font-size:11px}
@media(max-width:1150px){.appointment-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-detail-grid{grid-template-columns:1fr}.appointment-detail-column:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-detail-column:last-child .appointment-status-actions{grid-column:1/-1}}
@media(max-width:900px){.appointment-card{grid-template-columns:76px minmax(0,1fr)}.appointment-actions{grid-column:1/-1;border-left:0;border-top:1px solid #282e32;justify-content:flex-end;padding:12px 16px}.appointment-detail-hero{grid-template-columns:90px 1fr}.appointment-detail-date{width:90px;height:105px}.appointment-detail-total{grid-column:1/-1;border-left:0;border-top:1px solid #30363a;padding:16px 0 0;display:flex;align-items:baseline;gap:10px;text-align:left}.appointment-detail-total small{margin-left:auto}}
@media(max-width:700px){.appointment-summary-grid{grid-template-columns:1fr}.appointment-filter>label:not(.search-field),.appointment-filter .search-field{width:100%;max-width:none}.appointment-filter .button{flex:1}.appointment-form .form-grid{grid-template-columns:1fr}.appointment-form .form-grid>.full,.appointment-form .form-grid>label.full{grid-column:auto}.appointment-service-grid{grid-template-columns:1fr}.appointment-detail-hero{grid-template-columns:1fr;text-align:center}.appointment-detail-date{margin:auto}.appointment-detail-badges{justify-content:center}.appointment-detail-total{justify-content:center;flex-wrap:wrap}.appointment-detail-total small{width:100%;margin:0;text-align:center}.appointment-detail-column:last-child{grid-template-columns:1fr}.appointment-info-list>div{grid-template-columns:1fr;gap:3px}}
@media(max-width:480px){.appointment-card{grid-template-columns:64px minmax(0,1fr)}.appointment-date{padding:10px 5px}.appointment-date strong{font-size:28px}.appointment-main{padding:14px}.appointment-title-row{display:grid;gap:7px}.appointment-title-row .status-pill{width:max-content}.appointment-meta span{width:100%}.appointment-actions .button{width:100%}.appointment-form-section{padding:20px}.appointment-detail-hero,.detail-section{padding:20px}}

/* Bloque 6 · Clientes y expediente */
.customer-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.customer-summary-grid article,.customer-profile-stats article{background:linear-gradient(145deg,#15191c,#101315);border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;flex-direction:column;min-width:0}.customer-summary-grid span,.customer-profile-stats span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-weight:700}.customer-summary-grid strong,.customer-profile-stats strong{font-family:'Playfair Display',serif;font-size:32px;line-height:1.1;margin:7px 0 3px}.customer-summary-grid small,.customer-profile-stats small{color:#8f989d}.filter-bar--customers{grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(145px,.7fr)) auto}.customer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.customer-card{background:linear-gradient(150deg,#15191c,#0f1214);border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 18px 40px rgba(0,0,0,.16);display:flex;flex-direction:column;min-width:0}.customer-card__top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center}.customer-card__top h2{font-family:'Playfair Display',serif;font-size:21px;margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-avatar,.customer-profile-avatar{display:grid;place-items:center;background:linear-gradient(145deg,var(--gold-light),#936127);color:#17120c;font-family:'Playfair Display',serif;font-weight:700;box-shadow:0 10px 24px rgba(210,166,101,.18)}.customer-avatar{width:48px;height:48px;border-radius:15px;font-size:21px}.customer-card__contact{display:flex;flex-direction:column;gap:2px;color:#aab1b5;font-size:13px;padding:17px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.customer-card__stats{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.customer-card__stats div{padding:15px 0;display:flex;flex-direction:column}.customer-card__stats div+div{padding-left:18px;border-left:1px solid var(--line)}.customer-card__stats strong{font-size:18px}.customer-card__stats small{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.customer-card__details{display:grid;gap:10px;margin:16px 0}.customer-card__details div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:10px;font-size:13px}.customer-card__details dt{color:var(--muted)}.customer-card__details dd{margin:0;text-align:right;overflow-wrap:anywhere}.customer-card__actions{display:flex;align-items:center;gap:10px;margin-top:auto}.customer-card__actions .button{flex:1}.customer-form{display:grid;gap:20px}.customer-form-section{padding:26px}.preference-switches{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.switch-card{display:flex;align-items:flex-start;gap:13px;background:#111517;border:1px solid var(--line);border-radius:15px;padding:16px;cursor:pointer}.switch-card:has(input:checked){border-color:rgba(210,166,101,.65);background:rgba(210,166,101,.07)}.switch-card input{margin-top:4px;accent-color:var(--gold)}.switch-card span{display:flex;flex-direction:column}.switch-card small{color:var(--muted);margin-top:3px}.customer-password-grid{margin-top:18px}.customer-profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:28px;margin-bottom:18px}.customer-profile-avatar{width:82px;height:82px;border-radius:24px;font-size:34px}.customer-profile-main h2{font-family:'Playfair Display',serif;font-size:32px;margin:3px 0}.customer-profile-main>p{color:#aab1b5;margin:0}.customer-profile-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.customer-profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.customer-profile-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.75fr);gap:18px}.customer-profile-column{display:grid;align-content:start;gap:18px;min-width:0}.customer-preference-list{display:grid;gap:12px}.customer-preference-list article{background:#111517;border:1px solid var(--line);border-radius:15px;padding:17px}.customer-preference-list span{display:block;color:var(--gold);font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;margin-bottom:7px}.customer-preference-list p{margin:0;color:#d6d9da}.customer-preference-list .customer-alert-note{border-color:rgba(239,127,120,.28);background:rgba(239,127,120,.045)}.customer-history-list{display:grid}.customer-history-list>a{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--line);transition:.2s}.customer-history-list>a:last-child{border-bottom:0}.customer-history-list>a:hover{padding-left:5px}.customer-history-date{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:end}.customer-history-date strong{font-family:'Playfair Display',serif;font-size:26px;grid-row:1/3}.customer-history-date span,.customer-history-date small{font-size:11px;color:var(--muted);text-transform:uppercase}.customer-history-main{display:flex;flex-direction:column;min-width:0}.customer-history-main strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-history-main small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-history-end{display:flex;align-items:center;gap:12px}.customer-history-end b{min-width:72px;text-align:right}.inline-empty{display:flex;align-items:center;gap:12px;color:var(--muted);padding:18px 0}.inline-empty span{font-size:24px}.inline-empty p{margin:0}
@media(max-width:1250px){.customer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-bar--customers{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(140px,.65fr));}.filter-bar--customers>label:nth-of-type(4){grid-column:auto}}
@media(max-width:900px){.customer-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-profile-grid{grid-template-columns:1fr}.customer-profile-hero{grid-template-columns:auto minmax(0,1fr)}.customer-profile-actions{grid-column:1/-1;justify-content:flex-start}.filter-bar--customers{grid-template-columns:1fr 1fr}.filter-bar--customers .search-field{grid-column:1/-1}}
@media(max-width:700px){.customer-grid{grid-template-columns:1fr}.customer-summary-grid,.customer-profile-stats,.preference-switches{grid-template-columns:1fr 1fr}.customer-profile-hero{grid-template-columns:1fr;text-align:center}.customer-profile-avatar{margin:auto}.customer-profile-actions{justify-content:center}.customer-profile-main .appointment-detail-badges{justify-content:center}.customer-history-list>a{grid-template-columns:62px minmax(0,1fr)}.customer-history-end{grid-column:2;justify-content:space-between}.filter-bar--customers{grid-template-columns:1fr}.filter-bar--customers .search-field{grid-column:auto}.customer-card__top{grid-template-columns:auto minmax(0,1fr)}.customer-card__top>.status-pill{grid-column:1/-1;justify-self:start}}
@media(max-width:390px){.customer-summary-grid,.customer-profile-stats,.preference-switches{grid-template-columns:1fr}.customer-form-section{padding:20px}.customer-card{padding:17px}.customer-history-list>a{gap:10px}.customer-history-end{align-items:flex-start;flex-direction:column}.customer-profile-main h2{font-size:27px}}

/* Bloque 7: historial técnico */
.record-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.record-summary-grid article{border:1px solid #282e32;background:linear-gradient(145deg,#151a1d,#101316);border-radius:16px;padding:18px 20px;display:grid;grid-template-columns:1fr auto;gap:3px 14px;align-items:center}.record-summary-grid article:nth-child(2){background:linear-gradient(145deg,#1b1813,#101316)}.record-summary-grid span{font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}.record-summary-grid strong{grid-row:1/3;grid-column:2;font:600 34px 'Playfair Display';color:var(--gold-light)}.record-summary-grid small{color:#c0c6c9}.record-filter{flex:1}.record-filter>label:not(.search-field){width:160px}.record-filter .date-filter{display:grid;gap:4px}.record-filter .date-filter span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.record-filter input[type=date]{height:48px;border:1px solid #30373b;background:#151a1d;color:#fff;border-radius:11px;padding:0 12px;color-scheme:dark}.record-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.record-card{background:linear-gradient(150deg,#15191c,#0f1214);border:1px solid var(--line);border-radius:22px;padding:20px;display:flex;flex-direction:column;min-width:0;box-shadow:0 18px 40px rgba(0,0,0,.16)}.record-card__top{display:grid;grid-template-columns:68px minmax(0,1fr);gap:14px;position:relative}.record-card__top>div:nth-child(2){min-width:0;padding-right:76px}.record-card__top h2{font:600 22px/1.1 'Playfair Display';margin:3px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.record-card__top p{margin:0;color:var(--gold-light);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.record-date,.record-detail-date{background:linear-gradient(145deg,#372b1d,#1b2023);border:1px solid #4b3c29;display:grid;place-items:center;align-content:center;text-align:center}.record-date{width:68px;height:82px;border-radius:18px}.record-date span,.record-detail-date span{text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:var(--gold)}.record-date strong{font:600 28px/1 'Playfair Display';margin:3px 0}.record-date small,.record-detail-date small{font-size:10px;color:var(--muted)}.record-status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 9px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;white-space:nowrap}.record-status--draft{color:#f2c16b;background:rgba(242,193,107,.1);border:1px solid rgba(242,193,107,.25)}.record-status--final{color:#88d9a5;background:rgba(69,185,108,.1);border:1px solid rgba(69,185,108,.25)}.record-card__top>.record-status{position:absolute;top:0;right:0}.record-card__details{display:grid;margin:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0}.record-card__details>div{display:flex;justify-content:space-between;gap:14px;padding:6px 0;font-size:11px}.record-card__details dt{color:var(--muted)}.record-card__details dd{margin:0;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-card__actions{margin-top:auto}.record-card__actions .button{width:100%}.record-form{display:grid;gap:18px}.record-form-section{padding:27px}.record-form .form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.record-form label{display:flex;flex-direction:column;gap:7px;color:#cbd0d2;font-size:12px}.record-form select,.record-form input[type=text],.record-form textarea{width:100%;border:1px solid #30373b;background:#151a1d;color:#fff;border-radius:11px;outline:none}.record-form select,.record-form input[type=text]{height:50px;padding:0 14px}.record-form textarea{padding:14px;resize:vertical;min-height:105px}.record-form select:focus,.record-form input[type=text]:focus,.record-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(210,166,101,.1)}.record-appointment-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:17px}.record-appointment-preview>div{display:grid;background:#111517;border:1px solid var(--line);border-radius:15px;padding:16px}.record-appointment-preview>div>span:not(.eyebrow){color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.record-appointment-preview strong{font:600 18px 'Playfair Display';margin:4px 0}.record-appointment-preview small{color:var(--muted)}.record-internal-section,.record-internal-panel{border-color:rgba(210,166,101,.23);background:linear-gradient(145deg,rgba(210,166,101,.045),#101315)}.section-note{color:var(--muted);font-size:10px}.record-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.record-upload-card{background:#111517;border:1px solid var(--line);border-radius:16px;padding:14px}.record-upload-card>span{color:var(--gold);text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700}.record-upload-drop{display:block!important}.record-upload-drop>input[type=file]{position:absolute;opacity:0;width:1px;height:1px}.record-upload-card [data-record-photo-preview]{height:160px;border:1px dashed #3b4348;border-radius:13px;display:grid;place-items:center;align-content:center;gap:5px;margin:3px 0 10px;overflow:hidden;cursor:pointer;color:var(--muted)}.record-upload-card [data-record-photo-preview] b{font-size:28px;color:var(--gold);font-weight:400}.record-upload-card [data-record-photo-preview] img{width:100%;height:100%;object-fit:cover}.record-upload-card>input[type=text]{height:42px;font-size:11px}.record-status-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.record-status-options label{position:relative;display:block;cursor:pointer}.record-status-options input{position:absolute;opacity:0}.record-status-options span{display:flex;flex-direction:column;border:1px solid #30373b;background:#111517;border-radius:15px;padding:17px;min-height:82px}.record-status-options input:checked+span{border-color:var(--gold);background:rgba(210,166,101,.07);box-shadow:0 0 0 3px rgba(210,166,101,.08)}.record-status-options small{color:var(--muted);margin-top:4px}.record-detail-hero{display:grid;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:25px;padding:25px;background:radial-gradient(circle at 8% 20%,rgba(210,166,101,.16),transparent 30%),#121619}.record-detail-date{width:110px;height:125px;border-radius:25px}.record-detail-date strong{font:600 42px/1 'Playfair Display';margin:5px 0}.record-detail-main h2{font:600 38px/1.08 'Playfair Display';margin:7px 0}.record-detail-main>p{color:var(--gold-light);margin:0}.record-detail-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.record-detail-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:17px;margin-top:17px}.record-detail-column{display:grid;gap:17px;align-content:start;min-width:0}.record-photo-groups{display:grid;gap:20px}.record-photo-group h3{font:600 18px 'Playfair Display';margin:0 0 10px}.record-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.record-photo-grid figure{margin:0;position:relative;background:#0d1012;border:1px solid var(--line);border-radius:15px;overflow:hidden}.record-photo-grid a{display:block;aspect-ratio:4/3}.record-photo-grid img{width:100%;height:100%;object-fit:cover;display:block}.record-photo-grid figcaption{padding:9px 11px;color:#c8cdcf;font-size:10px}.record-photo-grid form{position:absolute;top:7px;right:7px}.record-photo-grid form button{width:28px;height:28px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(8,10,11,.82);color:#fff;font-size:18px;line-height:1}.record-detail-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.record-detail-notes article{background:#111517;border:1px solid var(--line);border-radius:15px;padding:17px}.record-detail-notes article>span{display:block;color:var(--gold);font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-bottom:7px}.record-detail-notes p{margin:0;color:#d6d9da;line-height:1.65;font-size:12px}.record-detail-notes .record-recommendation{border-color:rgba(69,185,108,.24);background:rgba(69,185,108,.045)}.record-care-card{text-align:center;background:radial-gradient(circle at top,rgba(210,166,101,.11),transparent 58%),#111517}.record-care-card>span{font:600 21px 'Playfair Display'}.record-care-card p{color:var(--muted);font-size:12px}.technical-history-list .record-status{font-size:8px}.client-welcome+.appointment-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1250px){.record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.record-detail-grid{grid-template-columns:1fr}.record-detail-column:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}.record-detail-column:last-child .record-care-card{grid-column:1/-1}}
@media(max-width:900px){.record-filter{display:grid;grid-template-columns:1fr 1fr;width:100%}.record-filter .search-field{grid-column:1/-1;max-width:none}.record-filter>label:not(.search-field){width:100%}.record-detail-hero{grid-template-columns:90px minmax(0,1fr)}.record-detail-date{width:90px;height:105px}.record-detail-actions{grid-column:1/-1;justify-content:flex-start}.record-upload-grid{grid-template-columns:1fr 1fr}.client-welcome+.appointment-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.record-summary-grid,.record-grid{grid-template-columns:1fr}.record-filter{grid-template-columns:1fr}.record-filter .search-field{grid-column:auto}.record-form .form-grid--two,.record-appointment-preview,.record-status-options,.record-detail-notes{grid-template-columns:1fr}.record-upload-grid{grid-template-columns:1fr}.record-detail-hero{grid-template-columns:1fr;text-align:center}.record-detail-date{margin:auto}.record-detail-main .appointment-detail-badges{justify-content:center}.record-detail-actions{justify-content:center}.record-detail-column:last-child{grid-template-columns:1fr}.record-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-welcome+.appointment-summary-grid{grid-template-columns:1fr}}
@media(max-width:390px){.record-form-section,.record-detail-hero{padding:20px}.record-card{padding:17px}.record-card__top{grid-template-columns:58px minmax(0,1fr)}.record-date{width:58px;height:74px}.record-card__top>div:nth-child(2){padding-right:0}.record-card__top>.record-status{position:static;grid-column:1/-1;justify-self:start}.record-photo-grid{grid-template-columns:1fr}}

/* Caja y cobros */
.cash-dashboard-summary{margin-top:18px}.cash-register-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:30px}.cash-register-card{display:grid;gap:20px}.cash-register-card__top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.cash-register-card h3{font:600 25px/1.15 'Playfair Display';margin:12px 0 3px}.cash-register-card small{color:var(--muted)}.cash-register-amount{text-align:right;display:grid}.cash-register-amount span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.cash-register-amount strong{font-size:27px;color:var(--gold-light)}.cash-register-breakdown{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cash-register-breakdown span{padding:13px;border:1px solid var(--line);background:#0f1315;border-radius:12px;display:grid}.cash-register-breakdown small{font-size:10px}.cash-register-breakdown b{font-size:16px;margin-top:3px}.cash-filters{grid-template-columns:minmax(180px,1.5fr) repeat(4,minmax(125px,1fr)) auto}.sales-list{display:grid;gap:10px}.sale-row{display:grid;grid-template-columns:minmax(150px,.9fr) minmax(230px,1.7fr) minmax(150px,.8fr) minmax(120px,.65fr) auto;gap:15px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:14px;background:#101416}.sale-row--void{opacity:.62}.sale-row__reference,.sale-row__main,.sale-row__barber,.sale-row__total{display:grid}.sale-row small{color:var(--muted);font-size:11px}.sale-row__reference span{color:var(--gold);font-weight:700;font-size:12px}.sale-row__main strong{font-size:15px}.sale-row__barber span{font-size:13px}.sale-row__total{justify-items:end;gap:5px}.sale-row__total strong{font-size:18px}.compact-form-card{max-width:820px}.money-field{position:relative}.money-field i{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--gold);font-weight:700;z-index:1}.money-field input{padding-left:32px!important}.cash-close-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:25px}.cash-close-summary>div{border:1px solid var(--line);border-radius:15px;background:#101416;padding:18px;display:grid}.cash-close-summary span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.cash-close-summary strong{font:600 29px 'Playfair Display';color:var(--gold-light)}.cash-close-summary small{color:var(--muted)}.cash-register-hero,.sale-detail-hero{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:22px;background:linear-gradient(135deg,#171b1e,#121415)}.cash-register-hero h2,.sale-detail-hero h2{font:600 32px 'Playfair Display';margin:12px 0 3px}.cash-register-hero p,.sale-detail-hero p{color:var(--muted);margin:0}.cash-register-hero__amount,.sale-detail-total{text-align:right;display:grid}.cash-register-hero__amount span,.sale-detail-total span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.cash-register-hero__amount strong,.sale-detail-total strong{font:600 36px 'Playfair Display';color:var(--gold-light)}.cash-register-hero__amount small,.sale-detail-total small{color:var(--muted)}.cash-detail-grid,.sale-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.payment-summary-list,.movement-list{display:grid}.payment-summary-list>div,.movement-list>div{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}.payment-summary-list>div:last-child,.movement-list>div:last-child{border-bottom:0}.payment-summary-list>div>span,.movement-list>div>span:nth-child(2){display:grid;flex:1}.payment-summary-list i{grid-row:1/3;width:38px;height:38px;border-radius:11px;background:rgba(210,166,101,.12);color:var(--gold);display:grid;place-items:center;font-style:normal;margin-right:12px;float:left}.payment-summary-list strong,.movement-list strong{font-size:14px}.payment-summary-list small,.movement-list small{color:var(--muted);font-size:11px}.payment-summary-list b,.movement-list b{white-space:nowrap}.movement-sign{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:800}.movement-sign--positive{background:rgba(112,201,149,.14);color:var(--success)}.movement-sign--negative{background:rgba(239,127,120,.14);color:var(--danger)}.sale-form-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}.sale-form-main{display:grid;gap:18px}.sale-summary{position:sticky;top:28px;display:grid;gap:14px}.sale-summary h2{font:600 28px 'Playfair Display';margin:0}.sale-totals{display:grid;margin:5px 0}.sale-totals>div{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.sale-totals dt{color:var(--muted);font-size:13px}.sale-totals dd{margin:0;font-weight:700}.sale-total-final dt,.sale-total-final dd{font-size:21px;color:var(--text)}.money-field--compact{width:130px}.money-field--compact input{height:40px;text-align:right}.register-indicator{padding:7px 10px;border-radius:999px;font-size:11px;font-weight:700}.register-indicator--open{background:rgba(112,201,149,.12);color:var(--success)}.register-indicator--closed{background:rgba(239,127,120,.12);color:var(--danger)}.payment-method-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.payment-method-grid article{border:1px solid var(--line);border-radius:14px;background:#101416;padding:14px;display:grid;gap:12px}.payment-method-grid label{display:grid;gap:7px;font-size:12px;font-weight:600}.sale-custom-line{margin-top:18px}.appointment-sale-preview{padding:14px;border:1px solid #3b3429;border-radius:13px;background:rgba(210,166,101,.07);display:grid}.appointment-sale-preview strong{font-size:15px}.appointment-sale-preview small,.appointment-sale-preview span{color:var(--muted);font-size:11px}.sale-payment-mismatch [data-sale-paid]{color:var(--danger)}.sale-form.is-loading{opacity:.72;pointer-events:none}.sale-detail-hero--void{filter:saturate(.4)}.sale-breakdown{display:grid;margin-top:18px;border-top:1px solid var(--line);padding-top:10px}.sale-breakdown>div{display:flex;justify-content:space-between;padding:7px 0}.sale-breakdown>div:last-child{font-size:20px;font-weight:800}.change-callout,.tip-assignment{display:flex;justify-content:space-between;align-items:center;padding:14px;border-radius:13px;background:rgba(210,166,101,.09);border:1px solid #3b3429;margin-top:12px}.change-callout strong,.tip-assignment b{color:var(--gold-light);font-size:20px}.tip-assignment span{display:grid}.tip-assignment small{color:var(--muted)}.receipt-page{background:#d9d9d9;color:#171717;min-height:100vh;padding:30px}.receipt-shell{width:min(760px,100%);margin:auto}.receipt-toolbar{display:flex;justify-content:space-between;margin-bottom:18px}.receipt-card{background:#fff;color:#191919;padding:42px;border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.18)}.receipt-header{display:flex;align-items:center;gap:12px;justify-content:center;padding-bottom:22px;border-bottom:2px solid #1d1d1d}.receipt-header div{display:grid}.receipt-header strong{font:700 28px 'Playfair Display';letter-spacing:.08em}.receipt-header span{text-transform:uppercase;letter-spacing:.18em;font-size:8px}.receipt-business{text-align:center;padding:18px 0}.receipt-business h1{font:600 21px 'Playfair Display';margin:0}.receipt-business p{margin:3px;color:#555;font-size:12px}.receipt-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;padding:15px 0;border-top:1px dashed #999;border-bottom:1px dashed #999}.receipt-meta div{display:grid}.receipt-meta span{font-size:10px;color:#666;text-transform:uppercase}.receipt-meta strong{font-size:12px}.receipt-lines{padding:15px 0}.receipt-lines>div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #ddd}.receipt-lines span{display:grid}.receipt-lines small{color:#666}.receipt-totals{margin-left:auto;width:min(310px,100%)}.receipt-totals>div{display:flex;justify-content:space-between;padding:5px 0}.receipt-totals dd{margin:0}.receipt-total{font-size:21px;font-weight:800;border-top:2px solid #1d1d1d;margin-top:6px;padding-top:10px!important}.receipt-payments{border-top:1px dashed #999;margin-top:18px;padding-top:12px}.receipt-payments span{font-size:10px;text-transform:uppercase;color:#666}.receipt-payments p{margin:2px 0;font-size:12px}.receipt-card footer{text-align:center;display:grid;margin-top:28px;border-top:1px dashed #999;padding-top:18px}.receipt-card footer span{font-size:11px;color:#666}.receipt-void{margin-top:20px;border:4px solid #a30000;color:#a30000;font-weight:900;text-align:center;padding:12px;transform:rotate(-2deg);font-size:24px}
@media(max-width:1100px){.cash-register-grid{grid-template-columns:1fr}.cash-filters{grid-template-columns:repeat(3,1fr)}.sale-form-grid{grid-template-columns:1fr}.sale-summary{position:static}.sale-row{grid-template-columns:1fr 1.6fr .8fr auto}.sale-row__barber{display:none}}
@media(max-width:760px){.cash-register-card__top,.cash-register-hero,.sale-detail-hero{align-items:flex-start;flex-direction:column}.cash-register-amount,.cash-register-hero__amount,.sale-detail-total{text-align:left}.cash-register-breakdown,.cash-close-summary,.cash-detail-grid,.sale-detail-grid,.payment-method-grid{grid-template-columns:1fr}.cash-filters{grid-template-columns:1fr}.sale-row{grid-template-columns:1fr auto}.sale-row__main{grid-column:1/-1;grid-row:2}.sale-row__total{justify-items:end}.sale-row>a{grid-column:1/-1}.receipt-page{padding:12px}.receipt-card{padding:24px 18px;border-radius:10px}.receipt-meta{grid-template-columns:1fr}.receipt-toolbar{position:sticky;top:8px;z-index:3}}
@media print{.receipt-page{background:#fff;padding:0}.receipt-toolbar{display:none}.receipt-card{box-shadow:none;border-radius:0;padding:15px;width:100%}}

/* Bloque 9 · Inventario */
.inventory-product-grid{margin-top:1.25rem}.product-card--low{border-color:rgba(214,169,76,.46)}.stock-warning{margin:0 1.25rem;padding:.7rem .85rem;border:1px solid rgba(214,169,76,.3);border-radius:12px;background:rgba(214,169,76,.08);color:#e9c778;font-size:.78rem;font-weight:700}.product-detail-hero{align-items:center}.stock-branch-list{display:grid;gap:.8rem}.stock-branch-list article{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(120px,.7fr) minmax(110px,.5fr);gap:1rem;align-items:center;padding:1rem;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.stock-branch-list article>div{display:grid;gap:.25rem}.stock-number{font-family:'Playfair Display',serif;font-size:1.5rem;color:var(--text)}.stock-number--low{color:#e9c778}.stacked-actions{display:grid;gap:.7rem}.stacked-actions form{margin:0}.category-list{display:grid;gap:.8rem}.category-list article{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.category-list h3,.supplier-card h3{margin:.45rem 0 .25rem}.category-list p,.supplier-card p{margin:0;color:var(--muted)}.category-list form,.supplier-card form{margin:0}.supplier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.supplier-card{display:grid;gap:1rem}.supplier-card dl{display:grid;gap:.5rem;margin:0}.supplier-card dl div{display:flex;justify-content:space-between;gap:1rem}.supplier-card dt{color:var(--muted)}.supplier-card dd{margin:0;text-align:right}.inventory-movement-list{display:grid;gap:.7rem}.inventory-movement-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.inventory-movement-list p{margin:.35rem 0 0;color:var(--muted);font-size:.84rem}.movement-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;font-size:1.25rem;font-weight:800}.movement-icon--in{background:rgba(92,185,134,.13);color:#83d2a6}.movement-icon--out{background:rgba(218,103,103,.13);color:#ef9b9b}.movement-quantity{display:grid;text-align:right;gap:.2rem}.movement-quantity span,.movement-quantity small{color:var(--muted);font-size:.76rem}.product-sale-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.product-sale-card{display:grid;grid-template-columns:minmax(0,1fr) auto 84px;gap:.75rem;align-items:center;padding:.9rem;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}.product-sale-card>div{display:grid;gap:.2rem}.product-sale-card small{color:var(--muted)}.product-sale-card>span{font-weight:800;color:var(--gold)}.product-sale-card input{width:100%;text-align:center}.empty-inline{display:flex;align-items:center;gap:.7rem;padding:1rem;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}.empty-inline p{margin:0}.purchase-lines{display:grid;gap:.8rem}.purchase-line{display:grid;grid-template-columns:minmax(210px,1.5fr) minmax(100px,.55fr) minmax(130px,.65fr) minmax(100px,.5fr) auto;gap:.7rem;align-items:end;padding:1rem;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.purchase-line label{margin:0}.purchase-line-total{display:grid;gap:.35rem;padding-bottom:.65rem}.purchase-line-total span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.purchase-line-total strong{font-size:1.05rem}.icon-button{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--muted);font-size:1.3rem;cursor:pointer}.icon-button:hover{border-color:rgba(218,103,103,.5);color:#ef9b9b}.purchase-total{display:flex;justify-content:flex-end;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.purchase-total span{color:var(--muted)}.purchase-total strong{font-family:'Playfair Display',serif;font-size:1.6rem;color:var(--gold)}
@media(max-width:1050px){.supplier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-line{grid-template-columns:1fr 1fr}.purchase-line label:first-child{grid-column:1/-1}.purchase-line-total{padding:.5rem 0}.product-sale-grid{grid-template-columns:1fr}}
@media(max-width:720px){.stock-branch-list article,.inventory-movement-list article{grid-template-columns:1fr}.movement-icon{display:none}.movement-quantity{text-align:left}.category-list article{align-items:flex-start;flex-direction:column}.supplier-grid{grid-template-columns:1fr}.product-sale-card{grid-template-columns:1fr auto}.product-sale-card label{grid-column:1/-1}.purchase-line{grid-template-columns:1fr}.purchase-line label:first-child{grid-column:auto}.purchase-line-total{display:flex;justify-content:space-between;align-items:center}.icon-button{width:100%}}

/* Bloque 10 · comisiones y liquidaciones */
.settlement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 24px}.settlement-card{display:flex;flex-direction:column;gap:18px;min-height:310px}.settlement-card__top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.settlement-card__top h2{margin:4px 0 3px;font-size:1.2rem}.settlement-card__top small{color:var(--text-muted)}.settlement-period{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--text-muted);font-size:.83rem}.settlement-period i{color:var(--gold);font-style:normal}.settlement-amount{padding:18px;border:1px solid rgba(198,154,80,.2);border-radius:16px;background:rgba(198,154,80,.06)}.settlement-amount small,.settlement-amount span{display:block;color:var(--text-muted)}.settlement-amount strong{display:block;font-size:2rem;color:var(--gold-light);margin:4px 0}.settlement-card .service-card__footer{margin-top:auto}.status-pill--draft{background:rgba(255,255,255,.08);color:#ddd}.status-pill--approved{background:rgba(74,144,226,.15);color:#89b8f5}.status-pill--paid{background:rgba(60,190,120,.15);color:#7de1a7}.status-pill--void{background:rgba(220,70,70,.15);color:#ff8b8b}.financial-movement-list{display:grid;gap:10px}.financial-movement-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid var(--border)}.financial-movement-list article:last-child{border-bottom:0}.financial-movement-list p{margin:5px 0 0;color:var(--text-muted);font-size:.88rem}.movement-amount{font-weight:800;text-align:right}.movement-amount small{display:block;font-size:.72rem;font-weight:500;color:var(--text-muted)}.movement-amount--positive{color:#7de1a7}.movement-amount--negative{color:#ff9b9b}.commission-preview-stats{margin-top:22px}.settlement-item-list{display:grid}.settlement-item-list article{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(95px,auto);gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}.settlement-item-list article:last-child{border-bottom:0}.settlement-item-list strong{display:block}.settlement-item-list small{display:block;color:var(--text-muted);margin-top:3px}.settlement-item-list b{text-align:right;color:#7de1a7}.settlement-item-list b.negative{color:#ff9b9b}.item-category{border:1px solid var(--border);border-radius:999px;padding:5px 9px;color:var(--text-muted);font-size:.72rem;white-space:nowrap}.form-actions--inside{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.settlement-confirm-copy{color:var(--text-muted)}.settlement-confirm-copy strong{color:var(--gold-light)}.settlement-actions-panel{margin-top:22px}.settlement-action-grid{display:grid;grid-template-columns:1fr 2fr;gap:18px}.payment-action-form{grid-column:span 2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end}.void-action-form{display:grid;gap:12px}.payment-action-form label,.void-action-form label{display:grid;gap:7px}.settlement-detail-hero .detail-hero__icon{font-size:2rem}.commission-receipt .signature-line{margin-top:40px;border-top:1px solid #777;text-align:center;padding-top:8px}.commission-receipt .signature-line span{font-size:.76rem;color:#666}.icon-button--danger{color:#ff8b8b}.financial-movements-panel{margin-top:24px}
@media(max-width:1100px){.settlement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-action-form{grid-template-columns:repeat(2,minmax(0,1fr));grid-column:span 1}.settlement-action-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.settlement-grid{grid-template-columns:1fr}.settlement-item-list article{grid-template-columns:minmax(0,1fr) auto}.settlement-item-list .item-category{grid-column:1}.settlement-item-list b{grid-row:1/3;grid-column:2}.financial-movement-list article{grid-template-columns:minmax(0,1fr) auto}.financial-movement-list form{grid-column:2}.settlement-action-grid,.payment-action-form{grid-template-columns:1fr}.payment-action-form{grid-column:auto}.settlement-confirm-copy{width:100%}.settlement-card{min-height:0}}

/* Bloque 11: membresías y paquetes */
.membership-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0}.membership-card{display:flex;flex-direction:column;gap:20px;min-width:0}.membership-card__head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.membership-card__head h2{margin:4px 0 3px}.membership-card__head small{color:var(--muted)}.membership-card__dates{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.membership-card__dates span{display:flex;flex-direction:column;gap:3px}.membership-card__dates span:last-child{text-align:right}.membership-card__dates small{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.membership-card__dates i{font-style:normal;color:var(--gold)}.membership-usage{display:grid;gap:9px}.membership-usage>div:first-child{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.88rem}.membership-usage b{color:var(--text)}.membership-progress{height:7px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}.membership-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold),#f2d187)}
.membership-plan-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.membership-plan-strip>a{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025);transition:.2s ease}.membership-plan-strip>a:hover{transform:translateY(-2px);border-color:rgba(214,177,90,.45)}.membership-plan-strip span{align-self:flex-start;padding:4px 8px;border-radius:99px;background:rgba(255,255,255,.07);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.membership-plan-strip span.featured{background:rgba(214,177,90,.15);color:var(--gold)}.membership-plan-strip strong{font-size:1.05rem}.membership-plan-strip b{font-size:1.35rem;color:var(--gold)}.membership-plan-strip small{color:var(--muted)}
.membership-service-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.membership-service-editor article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.02)}.membership-service-editor article>div{display:grid;gap:3px}.membership-service-editor small{color:var(--muted)}.membership-service-editor label{display:flex;align-items:center;gap:8px}.membership-service-editor label span{font-size:.75rem;color:var(--muted)}.membership-service-editor input{width:84px}
.membership-plan-hero,.membership-detail-hero{margin-bottom:20px}.membership-balance-list{display:grid;gap:10px}.membership-balance-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.membership-balance-list article:last-child{border-bottom:0}.membership-balance-list article>div{display:grid;gap:3px}.membership-balance-list small{color:var(--muted)}.membership-balance-list b{padding:7px 11px;border-radius:12px;background:rgba(214,177,90,.12);color:var(--gold);white-space:nowrap}.membership-branch-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.membership-branch-list span{padding:8px 10px;border:1px solid var(--line);border-radius:12px;color:var(--muted)}.membership-detail-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:20px;margin-bottom:20px}.membership-redeem-form,.membership-adjust-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px}.membership-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.membership-renew-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end;grid-column:1/-1;padding:16px;border:1px solid var(--line);border-radius:16px}.membership-transaction-list{display:grid}.membership-transaction-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid var(--line)}.membership-transaction-list article:last-child{border-bottom:0}.membership-transaction-list article>div{display:grid;gap:3px}.membership-transaction-list small,.membership-transaction-list p{color:var(--muted);margin:0}.membership-tx-amount{font-weight:700;color:var(--gold);white-space:nowrap}.membership-customer-list{display:grid}.membership-customer-list a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}.membership-customer-list a:last-child{border-bottom:0}.membership-customer-list a>div{display:grid;gap:3px}.membership-customer-list small{color:var(--muted)}.membership-customer-list b{color:var(--gold);white-space:nowrap}.status-pill--paused{background:rgba(244,181,56,.14);color:#f0c46a}.status-pill--expired{background:rgba(148,163,184,.14);color:#b9c2ce}.status-pill--cancelled{background:rgba(248,113,113,.14);color:#f58d8d}.membership-dashboard-summary{margin-top:18px}
@media(max-width:1100px){.membership-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.membership-plan-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.membership-detail-grid{grid-template-columns:1fr}.membership-action-grid{grid-template-columns:1fr}.membership-renew-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.membership-grid,.membership-plan-strip,.membership-service-editor{grid-template-columns:1fr}.membership-card__head{flex-direction:column}.membership-card__dates{grid-template-columns:1fr}.membership-card__dates i{display:none}.membership-card__dates span:last-child{text-align:left}.membership-redeem-form,.membership-adjust-form,.membership-renew-form{grid-template-columns:1fr}.membership-transaction-list article,.membership-customer-list a{align-items:flex-start}.membership-tx-amount{margin-left:auto}}

/* Bloque 12: fidelización, puntos y recompensas */
.loyalty-dashboard-summary{margin-top:18px}.loyalty-account-list{display:grid}.loyalty-account-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.loyalty-account-list>a:last-child{border-bottom:0}.loyalty-account-list>a>div:nth-child(2){display:grid;gap:3px}.loyalty-account-list small{color:var(--muted)}.loyalty-account-list>a>span{text-align:right}.loyalty-account-list>a>span b{display:block;color:var(--gold);font-size:1.15rem}.loyalty-account-list>a>i{font-style:normal;color:var(--muted);font-size:1.3rem}.loyalty-hero{display:grid;grid-template-columns:minmax(0,1.4fr) auto auto;gap:28px;align-items:center;margin-bottom:20px;background:radial-gradient(circle at 85% 20%,rgba(214,177,90,.12),transparent 35%),var(--panel)}.loyalty-hero__main h2{margin:5px 0}.loyalty-hero__main p{margin:0;color:var(--muted);max-width:650px}.loyalty-balance,.loyalty-lifetime{padding:18px 22px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025);text-align:center;min-width:150px}.loyalty-balance small,.loyalty-lifetime small,.loyalty-balance span,.loyalty-lifetime span{display:block;color:var(--muted)}.loyalty-balance strong{display:block;color:var(--gold);font-size:2.4rem;line-height:1;margin:6px 0}.loyalty-lifetime b{display:block;font-size:1.5rem;margin:6px 0}.loyalty-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}.loyalty-lot-list,.loyalty-transaction-list,.loyalty-redemption-list,.loyalty-tier-list{display:grid}.loyalty-lot-list article,.loyalty-transaction-list article,.loyalty-redemption-list article{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.loyalty-lot-list article:last-child,.loyalty-transaction-list article:last-child,.loyalty-redemption-list article:last-child{border-bottom:0}.loyalty-lot-list article>div,.loyalty-transaction-list article>div,.loyalty-redemption-list article>div{display:grid;gap:3px}.loyalty-lot-list span,.loyalty-transaction-list small,.loyalty-redemption-list small{color:var(--muted);font-size:.82rem}.loyalty-tier-progress{display:flex;gap:0;align-items:flex-start;padding-top:10px}.loyalty-tier-progress>div{position:relative;flex:1;text-align:center;padding-top:28px;color:var(--muted)}.loyalty-tier-progress>div:before{content:"";position:absolute;top:8px;left:0;right:0;height:3px;background:rgba(255,255,255,.08)}.loyalty-tier-progress>div:first-child:before{left:50%}.loyalty-tier-progress>div:last-child:before{right:50%}.loyalty-tier-progress i{position:absolute;top:1px;left:50%;width:17px;height:17px;transform:translateX(-50%);border-radius:50%;border:3px solid var(--panel);background:#4a4d52;z-index:1}.loyalty-tier-progress .reached i,.loyalty-tier-progress .reached:before{background:var(--gold)}.loyalty-tier-progress span,.loyalty-tier-progress small{display:block}.loyalty-tier-progress span{font-weight:700;color:var(--text)}.loyalty-adjust-panel{margin-bottom:20px}.loyalty-adjust-form{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:14px;align-items:end}.loyalty-adjust-form label{display:grid;gap:7px}.loyalty-transaction-list b.positive{color:#7de1a7}.loyalty-transaction-list b.negative{color:#ff9b9b}.loyalty-history-grid{align-items:start}.loyalty-reward-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.loyalty-reward-card{display:flex;flex-direction:column;gap:18px;min-height:310px}.loyalty-reward-card__top{display:flex;justify-content:space-between;gap:12px}.loyalty-reward-card__top span{padding:5px 9px;border-radius:99px;background:rgba(214,177,90,.13);color:var(--gold);font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}.loyalty-reward-card__top small{color:var(--muted)}.loyalty-reward-card h2{margin:0 0 7px}.loyalty-reward-card p{margin:0;color:var(--muted)}.loyalty-reward-cost{display:flex;align-items:baseline;gap:7px;margin-top:auto}.loyalty-reward-cost strong{font-size:2.2rem;color:var(--gold)}.loyalty-reward-cost span{color:var(--muted)}.reward-stock{color:var(--muted)}.loyalty-mini-balance{color:var(--muted)}.loyalty-mini-balance b{color:var(--gold)}.loyalty-settings-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:20px}.loyalty-tier-list article{display:flex;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.loyalty-tier-list article:last-child{border-bottom:0}.loyalty-tier-list article>div:first-child{display:grid;gap:4px}.loyalty-tier-list p{margin:3px 0 0;color:var(--muted)}.loyalty-tier-list article>div:last-child{display:flex;gap:9px;align-items:center}.status-pill--pending{background:rgba(244,181,56,.14);color:#f0c46a}.status-pill--used{background:rgba(60,190,120,.15);color:#7de1a7}.loyalty-redemption-list .inline-actions{margin-left:auto}.loyalty-reward-form [hidden]{display:none!important}
@media(max-width:1100px){.loyalty-reward-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.loyalty-hero{grid-template-columns:minmax(0,1fr) repeat(2,minmax(130px,auto))}.loyalty-settings-grid{grid-template-columns:1fr}}
@media(max-width:760px){.loyalty-hero,.loyalty-detail-grid,.loyalty-reward-grid{grid-template-columns:1fr}.loyalty-balance,.loyalty-lifetime{text-align:left}.loyalty-adjust-form{grid-template-columns:1fr}.loyalty-account-list>a{grid-template-columns:auto minmax(0,1fr) auto}.loyalty-account-list>a>i{display:none}.loyalty-tier-list article,.loyalty-redemption-list article{align-items:flex-start;flex-wrap:wrap}.loyalty-tier-list article>div:last-child{width:100%;justify-content:flex-end}.loyalty-tier-progress{overflow-x:auto;padding-bottom:8px}.loyalty-tier-progress>div{min-width:110px}.loyalty-redemption-list .inline-actions{width:100%;margin-left:0}.loyalty-redemption-list .inline-actions button{width:100%}}
.loyalty-pending-panel{margin-bottom:20px}.loyalty-pending-list{display:grid}.loyalty-pending-list article{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.loyalty-pending-list article:last-child{border-bottom:0}.loyalty-pending-list article>div{display:grid;gap:3px}.loyalty-pending-list small{color:var(--muted)}.loyalty-redemption-actions{display:flex;gap:8px;align-items:center;margin-left:auto}.loyalty-redemption-actions details{position:relative}.loyalty-redemption-actions summary{cursor:pointer;color:var(--muted);font-size:.8rem}.loyalty-redemption-actions details form{position:absolute;right:0;top:28px;z-index:5;display:grid;gap:8px;width:260px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 18px 40px rgba(0,0,0,.35)}
@media(max-width:760px){.loyalty-pending-list article{align-items:flex-start;flex-direction:column}.loyalty-redemption-actions{width:100%;margin-left:0;flex-wrap:wrap}.loyalty-redemption-actions details{margin-left:auto}.loyalty-redemption-actions details form{right:0;width:min(280px,85vw)}}

/* Bloque 13: promociones, cupones y campañas */
.promotion-grid,.campaign-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.promotion-card,.campaign-card{display:flex;flex-direction:column;gap:17px;min-height:360px;overflow:hidden}.promotion-card--live{border-color:rgba(210,166,101,.48);background:radial-gradient(circle at 85% 5%,rgba(210,166,101,.15),transparent 32%),var(--panel)}.promotion-card__top,.campaign-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.promotion-kind,.campaign-card__top>span:first-child{display:inline-flex;width:max-content;padding:5px 9px;border-radius:999px;background:rgba(210,166,101,.13);color:var(--gold);font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}.promotion-card__value{display:flex;align-items:baseline;gap:8px}.promotion-card__value strong{font:700 2.5rem/1 'Playfair Display';color:var(--gold-light)}.promotion-card__value span{color:var(--muted)}.promotion-card h2,.campaign-card h2{margin:0 0 7px}.promotion-card p,.campaign-card p{margin:0;color:var(--muted);line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.coupon-code{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px dashed rgba(210,166,101,.45);border-radius:13px;padding:11px 13px;background:rgba(210,166,101,.06)}.coupon-code span{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.coupon-code b{color:var(--gold-light);letter-spacing:.12em}.coupon-code--large{max-width:390px;margin-top:18px}.coupon-code--large b{font-size:1.12rem}.promotion-card__meta,.campaign-card__meta{display:grid;gap:5px;color:var(--muted);font-size:.78rem;margin-top:auto}.campaign-promotion{padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025)}.campaign-promotion span,.campaign-promotion strong{display:block}.campaign-promotion span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.campaign-promotion strong{margin-top:4px;color:var(--gold-light)}.promotion-hero{display:grid;grid-template-columns:minmax(0,1.5fr) auto auto;gap:30px;align-items:center;margin-bottom:20px;background:radial-gradient(circle at 78% 15%,rgba(210,166,101,.14),transparent 32%),var(--panel)}.promotion-hero h2{font:700 2.35rem/1.08 'Playfair Display';margin:8px 0}.promotion-hero p{margin:0;color:var(--muted);max-width:700px}.promotion-hero__value{text-align:center;padding:20px 26px;border:1px solid rgba(210,166,101,.28);border-radius:19px;background:rgba(210,166,101,.06)}.promotion-hero__value strong,.promotion-hero__value span{display:block}.promotion-hero__value strong{font:700 2.6rem/1 'Playfair Display';color:var(--gold-light)}.promotion-hero__value span{margin-top:7px;color:var(--muted)}.promotion-hero__status{display:grid;gap:7px;justify-items:end;text-align:right}.promotion-hero__status small{color:var(--muted)}.promotion-stats{margin-bottom:20px}.promotion-detail-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:20px;margin-bottom:20px}.muted-copy{color:var(--muted);line-height:1.6}.promotion-use-list{display:grid}.promotion-use-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.promotion-use-list article:last-child{border-bottom:0}.promotion-use-list article>div{display:grid;gap:4px}.promotion-use-list small{color:var(--muted)}.promotion-use-list b{color:#7de1a7}.promotion-use-list article.is-void{opacity:.62}.promotion-use-list article.is-void b{text-decoration:line-through;color:var(--muted)}.selection-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.promotion-applicable-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.promotion-applicable-grid>div{min-width:0}.promotion-applicable-grid h3{margin:0 0 12px}.selection-list{max-height:360px;overflow:auto;display:grid;gap:8px;padding-right:5px}.selection-list label{position:relative;display:flex;gap:11px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.02);cursor:pointer}.selection-list input{accent-color:var(--gold);width:18px;height:18px}.selection-list span{display:grid;gap:3px;min-width:0}.selection-list strong,.selection-list small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selection-list small{color:var(--muted)}.promotion-apply-box{display:grid;gap:8px;padding:14px;margin:12px 0 18px;border:1px solid rgba(210,166,101,.25);border-radius:16px;background:rgba(210,166,101,.045)}.promotion-apply-box label{display:grid;gap:7px}.promotion-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.promotion-code-row input{text-transform:uppercase;letter-spacing:.06em}.promotion-best-button{width:max-content;border:0;background:transparent;padding:0;cursor:pointer}.promotion-result{padding:9px 11px;border-radius:10px;font-size:.8rem}.promotion-result--success{background:rgba(60,190,120,.12);color:#7de1a7}.promotion-result--error{background:rgba(220,70,70,.12);color:#ff9b9b}.sale-totals [data-sale-promotion]{color:#7de1a7}.status-pill--scheduled{background:rgba(74,144,226,.15);color:#89b8f5}.status-pill--completed{background:rgba(60,190,120,.15);color:#7de1a7}.status-pill--cancelled{background:rgba(220,70,70,.15);color:#ff8b8b}
@media(max-width:1150px){.promotion-grid,.campaign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.promotion-hero{grid-template-columns:minmax(0,1fr) repeat(2,auto)}.selection-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.promotion-grid,.campaign-grid,.promotion-detail-grid,.promotion-applicable-grid,.promotion-hero{grid-template-columns:1fr}.promotion-card,.campaign-card{min-height:auto}.promotion-hero__value{text-align:left}.promotion-hero__status{justify-items:start;text-align:left}.selection-card-grid{grid-template-columns:1fr}.promotion-use-list article{grid-template-columns:minmax(0,1fr) auto;align-items:start}.promotion-use-list article .button{grid-column:1/-1;width:100%}.promotion-code-row{grid-template-columns:1fr}.promotion-code-row .button{width:100%}.selection-list{max-height:280px}}

/* Bloque 14 · Notificaciones */
.notification-summary,.notification-dashboard-summary{margin-bottom:20px}.notification-list,.queue-list{display:grid;gap:14px}.notification-item,.queue-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start}.notification-item.is-unread{border-color:rgba(210,166,101,.34);box-shadow:0 0 0 1px rgba(210,166,101,.08),var(--shadow)}.notification-item__icon,.queue-item__channel{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(210,166,101,.1);color:var(--gold-light);font-size:1.15rem;border:1px solid rgba(210,166,101,.18)}.notification-item__content,.queue-item__content{min-width:0}.notification-item__heading,.queue-item__heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.notification-item__heading h2,.queue-item__heading h2{font:700 1.08rem/1.25 'DM Sans';margin:0}.notification-item__heading time{font-size:.76rem;color:var(--muted);white-space:nowrap}.notification-item p,.queue-item p{margin:8px 0 12px;color:var(--muted);line-height:1.55}.notification-item__actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.notification-item__actions form{margin:0}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.template-card{display:flex;flex-direction:column;gap:16px;min-height:310px}.template-card__top,.queue-item__heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.template-card__top>span:first-child{font-size:.74rem;color:var(--gold-light);text-transform:uppercase;letter-spacing:.08em}.template-card h2{font:700 1.25rem/1.2 'Playfair Display';margin:7px 0}.template-subject{display:block;color:#f1e4d1;margin-bottom:8px}.template-card p{margin:0;color:var(--muted);line-height:1.55;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.template-card__meta{display:grid;gap:5px;margin-top:auto;color:var(--muted);font-size:.78rem}.placeholder-list{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.placeholder-list code,.cron-key code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:rgba(210,166,101,.08);color:var(--gold-light);border:1px solid rgba(210,166,101,.2);border-radius:9px;padding:6px 8px;font-size:.78rem}.queue-item__meta{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--muted);font-size:.78rem}.queue-error{margin:10px 0;padding:9px 11px;border-radius:10px;background:rgba(220,70,70,.1);color:#ff9b9b;font-size:.82rem}.status-pill--queued{background:rgba(210,166,101,.13);color:var(--gold-light)}.status-pill--processing{background:rgba(74,144,226,.15);color:#89b8f5}.status-pill--sent{background:rgba(60,190,120,.15);color:#7de1a7}.status-pill--failed{background:rgba(220,70,70,.15);color:#ff8b8b}.cron-key{display:grid;gap:8px;margin:16px 0}.cron-key span{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.07em}.cron-key code{word-break:break-all}.confirm-shell{min-height:100vh}.confirm-card{max-width:620px}.confirm-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;margin-bottom:18px;background:rgba(220,70,70,.12);color:#ff9b9b;font-size:1.8rem}.confirm-icon--success{background:rgba(60,190,120,.14);color:#7de1a7}.button--full{width:100%;justify-content:center}
@media(max-width:1150px){.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.template-grid{grid-template-columns:1fr}.notification-item,.queue-item{grid-template-columns:1fr}.notification-item__icon,.queue-item__channel{width:40px;height:40px}.notification-item__heading,.queue-item__heading{display:grid;gap:8px}.notification-item__heading time{white-space:normal}.notification-item__actions{display:grid;grid-template-columns:1fr}.notification-item__actions .button,.notification-item__actions form,.notification-item__actions form button{width:100%}.queue-item__meta{display:grid;gap:5px}.template-card{min-height:auto}}
.notification-auto-icon{width:86px;height:86px;border-radius:26px;display:grid;place-items:center;margin:22px 0;background:radial-gradient(circle,rgba(210,166,101,.24),rgba(210,166,101,.07) 68%);border:1px solid rgba(210,166,101,.24);color:var(--gold-light);font-size:2.4rem;line-height:1}

/* Bloque 15 · Reportes y analítica */
.report-tabs{display:flex;gap:8px;overflow:auto;padding:2px 0 14px;margin-bottom:10px;scrollbar-width:thin}.report-tabs a{white-space:nowrap;padding:10px 14px;border:1px solid var(--line);border-radius:11px;color:var(--muted);font-size:.82rem}.report-tabs a.active{color:var(--gold-light);border-color:rgba(210,166,101,.38);background:rgba(210,166,101,.09)}.report-filter-card{margin-bottom:20px}.report-filter-grid{grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end}.report-filter-grid label{display:grid;gap:7px}.report-filter-grid label>span{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.report-filter-grid input,.report-filter-grid select{width:100%;height:45px;border:1px solid #30373b;background:#151a1d;color:var(--text);border-radius:11px;padding:0 12px}.report-filter-grid .filter-actions{display:flex;gap:8px;align-items:center}.report-period{display:flex;justify-content:space-between;gap:18px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.82rem}.report-period strong{color:var(--text)}.report-kpis{margin-bottom:20px}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}.report-grid--wide{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr)}.report-chart-card,.report-list-card{min-width:0}.section-heading{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:18px}.section-heading h2{font:700 1.35rem/1.2 'Playfair Display';margin:5px 0 0}.section-heading>small{color:var(--muted)}.report-bars{display:grid;gap:11px;max-height:450px;overflow:auto;padding-right:4px}.report-bars>div,.report-ranking>div{display:grid;grid-template-columns:72px minmax(90px,1fr) 100px;gap:12px;align-items:center}.report-bars time,.report-ranking span{font-size:.78rem;color:var(--muted)}.report-bars strong,.report-ranking strong{text-align:right;font-size:.82rem}.report-bar{display:block;height:8px;background:#20262a;border-radius:999px;overflow:hidden}.report-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8a6033,var(--gold-light));min-width:0}.report-width-0{width:0}.report-width-5{width:5%}.report-width-10{width:10%}.report-width-15{width:15%}.report-width-20{width:20%}.report-width-25{width:25%}.report-width-30{width:30%}.report-width-35{width:35%}.report-width-40{width:40%}.report-width-45{width:45%}.report-width-50{width:50%}.report-width-55{width:55%}.report-width-60{width:60%}.report-width-65{width:65%}.report-width-70{width:70%}.report-width-75{width:75%}.report-width-80{width:80%}.report-width-85{width:85%}.report-width-90{width:90%}.report-width-95{width:95%}.report-width-100{width:100%}.report-ranking{display:grid;gap:15px}.report-ranking>div{grid-template-columns:minmax(90px,130px) minmax(90px,1fr) 70px}.report-table-wrap{width:100%;overflow:auto}.report-table{width:100%;border-collapse:collapse;min-width:520px}.report-table th,.report-table td{text-align:left;padding:12px 11px;border-bottom:1px solid var(--line);font-size:.82rem}.report-table th{color:var(--muted);font-size:.71rem;text-transform:uppercase;letter-spacing:.06em}.report-table tbody tr:last-child td{border-bottom:0}.report-table td:last-child,.report-table th:last-child{text-align:right}.table-subline{display:block;color:var(--muted);margin-top:3px}.mini-empty{display:grid;place-items:center;min-height:160px;color:var(--muted);text-align:center}.report-secondary-summary{margin-bottom:20px}.insight-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-height:235px}.insight-card h2{margin:0;font:700 1.35rem/1.2 'Playfair Display'}.insight-card p{color:var(--muted);margin:0 0 auto}.insight-icon{width:46px;height:46px;border:1px solid rgba(210,166,101,.2);background:rgba(210,166,101,.09);color:var(--gold-light);border-radius:14px;display:grid;place-items:center;font-size:1.2rem}
@media(max-width:1100px){.report-filter-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}.report-filter-grid .filter-actions{grid-column:1/-1}.report-grid--wide{grid-template-columns:1fr}.report-grid{grid-template-columns:1fr}}
@media(max-width:760px){.report-filter-grid{grid-template-columns:1fr}.report-filter-grid .filter-actions{display:grid;grid-template-columns:1fr}.report-filter-grid .button{width:100%}.report-period{display:grid;gap:5px}.report-bars>div{grid-template-columns:58px minmax(70px,1fr) 85px;gap:8px}.report-ranking>div{grid-template-columns:90px minmax(60px,1fr) 55px;gap:8px}.report-table{min-width:580px}.report-tabs{margin-left:-4px;margin-right:-4px}}

/* Bloque 16 · Seguridad, continuidad y bitácora */
.security-hero,.backup-hero,.session-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px}.security-hero h2,.backup-hero h2,.session-intro h2{font:700 1.65rem/1.2 'Playfair Display';margin:7px 0}.security-hero p,.backup-hero p,.session-intro p{color:var(--muted);max-width:720px;margin:0}.security-shield{width:84px;height:84px;border:1px solid rgba(210,166,101,.3);border-radius:24px;display:grid;place-items:center;color:var(--gold-light);background:rgba(210,166,101,.08);font-size:2.2rem;flex:0 0 auto}.security-kpis{margin-bottom:20px}.stat-date{font-size:1.1rem!important}.security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:20px}.security-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;transition:.2s}.security-link:hover{border-color:rgba(210,166,101,.35);transform:translateY(-2px)}.security-link__icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:rgba(210,166,101,.09);border:1px solid rgba(210,166,101,.2);color:var(--gold-light);font-size:1.2rem}.security-link h3{margin:3px 0 5px;font:700 1.15rem/1.2 'Playfair Display'}.security-link p{margin:0;color:var(--muted);font-size:.86rem}.security-link>i{color:var(--gold);font-style:normal}.security-link--form{padding:0}.security-link--form button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;width:100%;height:100%;padding:24px;border:0;background:transparent;color:inherit;text-align:left}.security-summary dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.security-summary dl div{padding:17px;border:1px solid var(--line);margin:-1px 0 0 -1px}.security-summary dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.security-summary dd{margin:7px 0 0;font-weight:700}.security-preview .business-preview-logo{font-size:2rem;color:var(--gold-light)}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.session-list,.backup-list{display:grid;gap:15px}.session-card,.backup-card{display:grid;grid-template-columns:minmax(240px,1.2fr) minmax(340px,1.8fr) auto;gap:20px;align-items:center}.session-device,.backup-file{display:flex;align-items:center;gap:13px}.session-device>span{color:var(--success);font-size:1.1rem}.session-device h3,.backup-file h3{margin:0;font:700 1.08rem/1.2 'Playfair Display';word-break:break-word}.session-device p,.backup-file p{margin:5px 0 0;color:var(--muted);font-size:.78rem}.session-card dl,.backup-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.session-card dt,.backup-card dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.session-card dd,.backup-card dd{margin:5px 0 0;font-size:.82rem}.session-agent,.backup-note,.backup-error{grid-column:1/-1;margin:0;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem;word-break:break-word}.backup-error{color:var(--danger)}.backup-create{display:grid;grid-template-columns:minmax(200px,300px) auto;gap:10px}.backup-create input{border:1px solid #30373b;background:#151a1d;color:var(--text);border-radius:11px;padding:0 12px;min-height:46px}.backup-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.backup-actions form{margin:0}.audit-filter-grid{grid-template-columns:1.4fr repeat(4,minmax(130px,1fr)) auto}.audit-table td:first-child{white-space:nowrap}.password-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:20px}.password-card{display:grid;gap:16px}.password-card h2,.password-rules h2{font:700 1.5rem/1.2 'Playfair Display';margin:0}.password-card>p,.password-rules p{color:var(--muted);margin:0}.password-card label{display:grid;gap:7px}.password-rules{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.password-rules ul{margin:0;padding-left:19px;color:var(--muted);display:grid;gap:10px}.confirm-dialog{width:min(520px,calc(100% - 28px));border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--text);padding:0;box-shadow:var(--shadow)}.confirm-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}.confirm-dialog form{padding:28px;display:grid;gap:16px;position:relative}.confirm-dialog h2{font:700 1.45rem/1.2 'Playfair Display';margin:0}.confirm-dialog p{color:var(--muted);margin:0}.confirm-dialog label{display:grid;gap:7px}.confirm-dialog input{width:100%;border:1px solid #30373b;background:#151a1d;color:var(--text);border-radius:11px;padding:12px}.dialog-close{position:absolute;right:16px;top:14px;border:0;background:transparent;color:var(--muted);font-size:1.5rem}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.maintenance-state form{margin-top:18px}
@media(max-width:1100px){.session-card,.backup-card{grid-template-columns:1fr}.backup-actions{justify-content:flex-start}.audit-filter-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}.audit-filter-grid .filter-actions{grid-column:1/-1}.security-summary dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.security-hero,.backup-hero,.session-intro{align-items:flex-start;flex-direction:column}.security-shield{width:64px;height:64px}.security-grid{grid-template-columns:1fr}.security-summary dl{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}.session-card dl,.backup-card dl{grid-template-columns:1fr}.backup-create{grid-template-columns:1fr;width:100%}.backup-create .button{width:100%}.audit-filter-grid{grid-template-columns:1fr}.audit-filter-grid .filter-actions{display:grid;grid-template-columns:1fr}.password-layout{grid-template-columns:1fr}.dialog-actions{display:grid}.dialog-actions .button{width:100%}}

.account-filter-grid{grid-template-columns:1.5fr repeat(2,minmax(150px,1fr)) auto}.account-list{display:grid;gap:15px}.account-card{display:grid;grid-template-columns:minmax(240px,1fr) minmax(380px,1.6fr) auto;gap:18px;align-items:center}.account-person{display:flex;align-items:center;gap:13px}.account-person h3{margin:0;font:700 1.08rem/1.2 'Playfair Display'}.account-person p{margin:5px 0 0;color:var(--muted);font-size:.78rem}.account-card dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.account-card dt{font-size:.67rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.account-card dd{margin:5px 0 0;font-size:.82rem}.account-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.account-actions form{margin:0}@media(max-width:1100px){.account-card{grid-template-columns:1fr}.account-actions{justify-content:flex-start}.account-filter-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}.account-filter-grid .filter-actions{grid-column:1/-1}}@media(max-width:760px){.account-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.account-filter-grid{grid-template-columns:1fr}.account-filter-grid .filter-actions{display:grid;grid-template-columns:1fr}}

/* Bloque 17 · Portal del cliente, favoritos y lista de espera */
.client-portal-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:24px;align-items:stretch;margin-bottom:20px;background:radial-gradient(circle at 15% 20%,rgba(210,166,101,.16),transparent 43%),linear-gradient(135deg,#171b1e,#101315)}.client-portal-hero__copy{padding:12px 4px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.client-portal-hero h2{font:700 clamp(2rem,4vw,3.4rem)/1.04 'Playfair Display';max-width:720px;margin:13px 0}.client-portal-hero__copy>p{max-width:720px;color:var(--muted);font-size:1rem}.client-next-card{border:1px solid rgba(210,166,101,.25);background:rgba(9,11,12,.65);border-radius:20px;padding:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:230px}.client-next-card>strong{font:700 1.65rem/1.1 'Playfair Display';margin-top:10px}.client-next-card>b{color:var(--gold-light);font-size:1.25rem;margin-top:4px}.client-next-card p{margin:14px 0 4px}.client-next-card small{color:var(--muted)}.client-next-card .text-link{margin-top:18px}.client-portal-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.client-portal-stats a{padding:20px;border:1px solid var(--line);background:var(--surface);border-radius:17px;display:flex;flex-direction:column;transition:.2s}.client-portal-stats a:hover{border-color:rgba(210,166,101,.4);transform:translateY(-2px)}.client-portal-stats span{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.client-portal-stats strong{font:700 1.8rem/1.2 'Playfair Display';margin:8px 0 2px}.client-portal-stats small{color:var(--muted)}.client-portal-grid{display:grid;grid-template-columns:minmax(0,2fr) repeat(2,minmax(220px,.65fr));gap:18px;margin-bottom:20px}.client-portal-panel--wide{min-width:0}.portal-appointment-list{display:grid;gap:10px}.portal-appointment-list>a{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:13px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:12px;transition:.2s}.portal-appointment-list>a:hover{border-color:rgba(210,166,101,.35)}.portal-appointment-list time{width:52px;height:52px;border-radius:13px;background:rgba(210,166,101,.09);display:flex;flex-direction:column;align-items:center;justify-content:center}.portal-appointment-list time b{font-size:1.15rem}.portal-appointment-list time span{text-transform:uppercase;color:var(--gold);font-size:.65rem}.portal-appointment-list div{min-width:0;display:flex;flex-direction:column}.portal-appointment-list div strong,.portal-appointment-list div small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-appointment-list div small{color:var(--muted);margin-top:4px}.client-benefits-card{display:flex;flex-direction:column;align-items:flex-start}.client-benefits-card h2{font:700 1.55rem/1.2 'Playfair Display';margin:10px 0}.client-benefits-card p{color:var(--muted);margin:0 0 auto;padding-bottom:20px}.portal-favorites-section,.portal-discover{margin-bottom:20px}.portal-favorite-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.portal-favorite-grid>article{border:1px solid var(--line);border-radius:15px;padding:16px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;position:relative}.portal-favorite-grid article>div{display:flex;flex-direction:column;min-width:0}.portal-favorite-grid article small{color:var(--muted)}.portal-favorite-grid article strong{margin:3px 0}.portal-favorite-grid article p{color:var(--muted);font-size:.78rem;margin:0}.portal-favorite-grid article>a{grid-column:2;color:var(--gold);font-size:.78rem}.favorite-mark{color:var(--gold);font-size:1.2rem}.favorite-avatar{width:39px;height:39px;border-radius:12px;background:linear-gradient(135deg,var(--gold),#7f5428);display:grid;place-items:center;color:#130f0a;font-weight:700}.favorite-avatar--large{width:58px;height:58px;border-radius:16px;font-size:1.15rem}.compact-empty{display:flex;align-items:center;gap:14px;border:1px dashed var(--line);border-radius:14px;padding:18px;color:var(--muted)}.compact-empty>span{font-size:1.45rem;color:var(--gold)}.compact-empty strong{color:var(--text)}.compact-empty p{margin:4px 0 0}.compact-empty.full{grid-column:1/-1}.compact-empty .text-link{margin-left:auto}.portal-service-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.portal-service-strip a{padding:16px;border-radius:15px;border:1px solid var(--line);display:flex;flex-direction:column;transition:.2s}.portal-service-strip a:hover{border-color:rgba(210,166,101,.35);transform:translateY(-1px)}.portal-service-strip small{color:var(--gold)}.portal-service-strip strong{margin:5px 0}.portal-service-strip span{color:var(--muted);font-size:.78rem}.favorites-intro,.waitlist-hero{margin-bottom:20px}.favorites-intro h2,.waitlist-hero h2{font:700 1.7rem/1.2 'Playfair Display';margin:8px 0}.favorites-intro p,.waitlist-hero p{color:var(--muted);max-width:760px;margin:0}.favorites-layout{display:grid;gap:20px}.favorite-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.favorite-choice{border:1px solid var(--line);border-radius:16px;padding:17px;display:flex;flex-direction:column;gap:17px}.favorite-choice.is-favorite,.favorite-barber-card.is-favorite{border-color:rgba(210,166,101,.42);background:rgba(210,166,101,.045)}.favorite-choice small,.favorite-barber-card small{color:var(--gold)}.favorite-choice h3,.favorite-barber-card h3{font:700 1.05rem/1.2 'Playfair Display';margin:5px 0}.favorite-choice p,.favorite-barber-card p{color:var(--muted);margin:0;font-size:.8rem}.favorite-choice-actions{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.favorite-toggle{width:38px;height:38px;border-radius:11px;border:1px solid var(--line);background:var(--surface-2);color:var(--gold);font-size:1.2rem}.favorite-barber-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.favorite-barber-card{border:1px solid var(--line);border-radius:16px;padding:17px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center}.waitlist-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}.waitlist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.waitlist-card{display:flex;flex-direction:column;gap:16px}.waitlist-card__head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.waitlist-card h2{font:700 1.25rem/1.2 'Playfair Display';margin:5px 0 0}.waitlist-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.waitlist-meta div{padding:11px;border:1px solid var(--line);border-radius:12px}.waitlist-meta dt{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.waitlist-meta dd{margin:4px 0 0;font-size:.84rem}.waitlist-notes{margin:0;color:var(--muted);border-left:2px solid var(--gold);padding-left:12px}.waitlist-actions{margin-top:auto;display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.waitlist-actions form{display:flex;gap:8px;flex-wrap:wrap}.waitlist-actions select{border:1px solid #30373b;background:#151a1d;color:var(--text);border-radius:10px;padding:0 10px}.waitlist-form{max-width:980px}.status-pill--waitlist-active{background:rgba(210,166,101,.1);color:var(--gold-light)}.status-pill--waitlist-offered{background:rgba(112,201,149,.1);color:#9ee0ba}.status-pill--waitlist-booked{background:rgba(112,201,149,.14);color:#a9e9c3}.status-pill--waitlist-cancelled,.status-pill--waitlist-expired{background:rgba(156,164,169,.1);color:var(--muted)}
@media(max-width:1180px){.client-portal-grid{grid-template-columns:1fr 1fr}.client-portal-panel--wide{grid-column:1/-1}.favorite-choice-grid,.favorite-barber-grid,.portal-favorite-grid,.portal-service-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.client-portal-hero{grid-template-columns:1fr}.client-portal-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.client-portal-grid{grid-template-columns:1fr}.client-portal-panel--wide{grid-column:auto}.waitlist-grid{grid-template-columns:1fr}.waitlist-hero{align-items:flex-start;flex-direction:column}.portal-appointment-list>a{grid-template-columns:52px minmax(0,1fr)}.portal-appointment-list .status-pill{grid-column:2;justify-self:start}.favorite-choice-grid,.favorite-barber-grid,.portal-favorite-grid,.portal-service-strip{grid-template-columns:1fr}}
@media(max-width:520px){.client-portal-stats{grid-template-columns:1fr 1fr;gap:10px}.client-portal-stats a{padding:15px}.client-portal-hero{padding:18px}.client-next-card{min-height:0}.portal-appointment-list>a{grid-template-columns:46px minmax(0,1fr)}.favorite-barber-card{grid-template-columns:auto minmax(0,1fr)}.favorite-barber-card form{grid-column:2}.waitlist-card__head{flex-direction:column}.waitlist-meta{grid-template-columns:1fr}.waitlist-actions,.waitlist-actions form{width:100%}.waitlist-actions .button,.waitlist-actions select{width:100%;min-height:44px}.compact-empty{align-items:flex-start;flex-wrap:wrap}.compact-empty .text-link{margin-left:0;width:100%}}
.sidebar{overflow-y:auto;overscroll-behavior:contain}.sidebar-bottom{background:#0d1012}

/* Bloque 18: documentos, consentimientos y firma digital */
.document-list-grid,.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}.document-card,.template-card{display:flex;flex-direction:column;gap:16px;min-width:0}.document-card__head,.template-card__top{display:flex;align-items:flex-start;gap:12px}.document-card__head>div{min-width:0;flex:1}.document-card__head h2,.template-card h2{font-size:1.1rem;margin:3px 0 0;overflow-wrap:anywhere}.document-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid rgba(213,174,92,.35);border-radius:14px;background:rgba(213,174,92,.08);color:var(--gold,#d5ae5c);font-size:1.2rem}.document-card__body{display:grid;gap:8px;flex:1}.document-card__body p,.document-card__body small{margin:0}.template-card__meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--muted,#96999d);font-size:.84rem}.document-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.document-detail-hero h2{margin:.3rem 0}.document-detail-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.65fr);gap:20px;align-items:start}.document-side{display:grid;gap:18px}.document-paper{background:#f7f3ea!important;color:#1a1a1a!important;border-color:#dfd5bf!important;padding:clamp(24px,4vw,54px)!important;box-shadow:0 24px 70px rgba(0,0,0,.22)!important}.document-paper__header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid #d9cfba}.document-paper__header div{display:grid}.document-paper__header strong{font-family:"Playfair Display",serif;font-size:1.35rem;letter-spacing:.08em}.document-paper__header small,.document-paper__header>span{color:#706b61}.document-paper h1{font-family:"Playfair Display",serif;font-size:clamp(1.65rem,4vw,2.4rem);margin:34px 0 24px;color:#181715}.document-content{font-size:1rem;line-height:1.75;color:#2e2c28}.document-content p{margin:0 0 1.1em;white-space:normal}.signature-proof,.signature-placeholder{margin-top:42px;padding-top:24px;border-top:1px solid #d9cfba;display:grid;gap:7px;justify-items:start}.signature-proof img{max-width:280px;max-height:110px;object-fit:contain;mix-blend-mode:multiply}.signature-proof span,.signature-proof small,.signature-placeholder{color:#6f6a60}.document-actions-card{display:grid;gap:12px}.document-actions-card>.button,.document-actions-card>form>.button{width:100%}.stacked-form{display:grid;gap:10px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.document-event-list{display:grid;gap:0}.document-event-list article{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.07)}.document-event-list article:last-child{border-bottom:0}.document-event-list article>span{color:var(--gold,#d5ae5c)}.document-event-list article>div{display:grid;gap:3px}.document-event-list small{color:var(--muted,#96999d)}.signature-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:20px;align-items:start}.signature-form{display:grid;gap:16px;position:sticky;top:18px}.signature-canvas-wrap{border:1px solid rgba(213,174,92,.35);border-radius:18px;overflow:hidden;background:#fff}.signature-canvas-wrap canvas{display:block;width:100%;height:190px;touch-action:none;cursor:crosshair;background:linear-gradient(#fff,#fcfbf8)}.signature-canvas-actions{display:flex;justify-content:flex-end;padding:8px;background:#111315}.print-document{max-width:960px;margin:0 auto;padding:28px}.print-actions{display:flex;gap:10px;justify-content:flex-end;margin-bottom:18px}.document-paper--print{box-shadow:none!important;border:1px solid #d9cfba!important}.print-meta{display:flex;flex-wrap:wrap;gap:10px 24px;margin:-10px 0 26px;color:#625e55;font-size:.9rem}
@media(max-width:1050px){.document-list-grid,.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.document-detail-grid,.signature-layout{grid-template-columns:1fr}.signature-form{position:static}}
@media(max-width:640px){.document-list-grid,.template-grid{grid-template-columns:1fr}.document-detail-hero{align-items:flex-start;flex-direction:column}.document-paper{padding:24px!important}.document-paper__header{flex-direction:column}.signature-canvas-wrap canvas{height:165px}.print-document{padding:10px}.print-actions{flex-direction:column}.print-actions .button{width:100%}}
@media print{.print-actions{display:none!important}.print-document{padding:0;max-width:none}.document-paper--print{border:0!important;padding:0!important}.sidebar,.dashboard-header{display:none!important}}


/* Bloque 19: anticipos, pagos y políticas de reservación */
.booking-policy-grid,.payment-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.booking-policy-grid>div,.payment-summary-grid>div{padding:15px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.018);display:grid;gap:4px}.booking-policy-grid span,.payment-summary-grid span{color:var(--muted);font-size:.75rem}.booking-policy-grid strong,.payment-summary-grid strong{font-size:1rem}.payment-request-mini-list{display:grid;margin-top:14px;border-top:1px solid var(--line)}.payment-request-mini-list a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.payment-request-mini-list a>span{display:grid}.payment-request-mini-list small{color:var(--muted)}.payment-request-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.payment-request-card{display:flex;flex-direction:column;gap:14px}.payment-request-card__head{display:flex;justify-content:space-between;gap:12px}.payment-link-card{display:grid;gap:12px;padding:16px;border:1px solid rgba(210,166,101,.3);border-radius:15px;background:rgba(210,166,101,.05);overflow-wrap:anywhere}.payment-link-card__actions{display:flex;gap:8px;flex-wrap:wrap}.payment-public-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,rgba(210,166,101,.16),transparent 42%),var(--bg)}.payment-public-card{width:min(650px,100%);display:grid;gap:18px}.payment-public-amount{font:700 clamp(2rem,7vw,3.6rem)/1 'Playfair Display';color:var(--gold-light)}.payment-instructions{padding:15px;border-left:2px solid var(--gold);background:rgba(210,166,101,.05);white-space:pre-line}.policy-accept{align-items:flex-start!important}.sale-totals [data-sale-credit-row] dd{color:var(--success)}
@media(max-width:1000px){.booking-policy-grid,.payment-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-request-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.booking-policy-grid,.payment-summary-grid,.payment-request-grid{grid-template-columns:1fr}.payment-link-card__actions,.payment-link-card__actions .button{width:100%}}

/* Bloque 20: preparación final */
.production-hero{display:flex;justify-content:space-between;gap:28px;align-items:center;overflow:hidden;position:relative}.production-hero>div:first-child{max-width:760px}.production-score{width:150px;height:150px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 auto;border:1px solid rgba(201,169,110,.45);background:radial-gradient(circle,rgba(201,169,110,.18),rgba(201,169,110,.04));box-shadow:0 0 0 10px rgba(201,169,110,.04)}.production-score strong{font-size:44px;font-family:"Playfair Display",serif}.production-score span{font-size:12px;color:var(--muted)}.production-score--warning{border-color:rgba(236,179,73,.55)}.production-score--danger{border-color:rgba(219,92,92,.6)}.production-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.production-item{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:start;border:1px solid var(--line);border-radius:18px;padding:16px;background:rgba(255,255,255,.018)}.production-item__mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:800;background:rgba(95,184,132,.14);color:#7cd39e}.production-item--warning .production-item__mark{background:rgba(236,179,73,.14);color:#f0bd60}.production-item--fail .production-item__mark{background:rgba(219,92,92,.14);color:#e67a7a}.production-item small{color:var(--gold);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.production-item h3{margin:3px 0 4px;font-size:16px}.production-item p{margin:0;color:var(--muted);font-size:13px}.production-item b{font-size:10px;color:#e67a7a;border:1px solid rgba(219,92,92,.35);padding:5px 7px;border-radius:999px}.production-actions{display:flex;gap:8px}.production-guides .security-grid{margin-top:14px}.guide-card pre{white-space:pre-wrap;word-break:break-word;font:14px/1.75 "DM Sans",sans-serif;color:var(--text);margin:0}.production-history table{min-width:720px}@media(max-width:760px){.production-hero{align-items:flex-start;flex-direction:column}.production-score{width:112px;height:112px}.production-score strong{font-size:34px}.production-items{grid-template-columns:1fr}.production-item{grid-template-columns:38px 1fr}.production-item b{grid-column:2}.production-actions{width:100%}.production-actions form,.production-actions button{width:100%}}
.install-preflight{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:18px 0}.install-preflight__item{display:flex;gap:9px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:10px 11px;background:rgba(255,255,255,.02)}.install-preflight__item>span{width:25px;height:25px;border-radius:9px;display:grid;place-items:center;background:rgba(95,184,132,.14);color:#7cd39e;font-weight:800;flex:0 0 auto}.install-preflight__item--fail>span{background:rgba(219,92,92,.14);color:#e67a7a}.install-preflight__item strong{display:block;font-size:12px}.install-preflight__item small{display:block;color:var(--muted);font-size:10px;line-height:1.35;margin-top:2px}@media(max-width:560px){.install-preflight{grid-template-columns:1fr}}
