:root{--primary:#1268f3;--primary-dark:#0d4fc7;--teal:#13b8c8;--violet:#6b3ff2;--ink:#0b1739;--muted:#64718b;--line:#dfe7f5;--surface:#fff;--bg:#f4f8ff;--success:#12976c;--danger:#c53a50;--shadow:0 24px 70px rgba(20,57,120,.14);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 15% 5%,#e3f6ff 0,transparent 28%),radial-gradient(circle at 90% 90%,#e9e4ff 0,transparent 27%),var(--bg);color:var(--ink)}a{color:var(--primary);text-decoration:none;font-weight:700}a:hover{text-decoration:underline}button,input,select{font:inherit}.skip-link{position:fixed;left:-9999px;top:1rem}.skip-link:focus{left:1rem;z-index:100;background:#fff;padding:.7rem 1rem;border-radius:.7rem}.auth-body main{min-height:100vh;display:grid;place-items:center;padding:32px}.auth-shell{width:min(1180px,100%);min-height:720px;display:grid;grid-template-columns:minmax(420px,.9fr) minmax(480px,1.1fr);background:var(--surface);border:1px solid rgba(18,104,243,.08);border-radius:32px;overflow:hidden;box-shadow:var(--shadow)}.auth-shell-wide{grid-template-columns:minmax(540px,1.1fr) minmax(420px,.9fr)}.auth-card{padding:46px 54px;display:flex;flex-direction:column;justify-content:center}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-size:1.55rem;font-weight:850;letter-spacing:-.04em}.brand:hover{text-decoration:none}.brand span span{color:var(--primary)}.auth-heading{margin:34px 0 26px}.eyebrow{color:var(--primary);font-size:.78rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px}.auth-heading h1,.compact-card h1,.installer-card h1{font-size:clamp(2rem,4vw,3rem);line-height:1.04;letter-spacing:-.045em;margin:0 0 12px}.auth-heading p,.compact-card>p,.installer-card>p{color:var(--muted);line-height:1.65;margin:0}.form-stack{display:grid;gap:18px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:8px;font-size:.9rem;font-weight:750;color:#263451}.field input,.field select{width:100%;border:1px solid var(--line);background:#fbfdff;border-radius:13px;padding:14px 15px;outline:none;transition:.2s}.field input:focus,.field select:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(18,104,243,.1);background:#fff}.field-error{color:var(--danger);font-weight:650;line-height:1.35}.password-wrap{display:flex;position:relative}.password-wrap input{padding-right:76px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:#edf4ff;color:var(--primary);border-radius:9px;padding:7px 10px;font-size:.78rem;font-weight:800;cursor:pointer}.form-row{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:.88rem}.check{display:flex;align-items:flex-start;gap:9px;color:var(--muted);font-size:.86rem;line-height:1.45}.check input{accent-color:var(--primary);width:17px;height:17px;margin-top:2px}.btn{display:inline-flex;justify-content:center;align-items:center;border-radius:13px;padding:14px 18px;border:1px solid transparent;font-weight:850;cursor:pointer;transition:.2s}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--primary),#2458dc 60%,var(--violet));color:#fff;box-shadow:0 12px 28px rgba(18,104,243,.24)}.btn-secondary{background:#fff;color:var(--primary);border-color:#cbdaf3}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-block{width:100%}.btn-small{padding:10px 14px;font-size:.86rem}.auth-switch{text-align:center;color:var(--muted);font-size:.9rem;margin:22px 0 0}.auth-visual{position:relative;display:flex;align-items:flex-end;padding:50px;background:linear-gradient(145deg,#0e60eb,#0b83d8 48%,#15b6c7);overflow:hidden;color:#fff}.auth-visual:before,.auth-visual:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.2)}.auth-visual:before{width:520px;height:520px;right:-150px;top:-130px}.auth-visual:after{width:330px;height:330px;right:35px;top:30px}.visual-content{position:relative;z-index:1;max-width:540px}.status-pill{display:inline-flex;align-items:center;background:rgba(18,104,243,.1);color:var(--primary);border:1px solid rgba(18,104,243,.15);border-radius:999px;padding:8px 12px;font-size:.76rem;font-weight:850}.auth-visual .status-pill{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.2);color:#fff}.visual-content h2{font-size:clamp(2.2rem,4.3vw,4.3rem);line-height:1.02;letter-spacing:-.055em;margin:18px 0 28px;max-width:680px}.benefit-list{list-style:none;margin:0;padding:0;display:grid;gap:16px;font-weight:650;line-height:1.5}.benefit-list li{display:flex;align-items:flex-start;gap:12px}.benefit-list li span{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:50%;background:rgba(255,255,255,.18)}.people-row{margin-top:42px;display:flex;align-items:center;gap:0}.people-row>span{width:44px;height:44px;border:3px solid rgba(255,255,255,.5);border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--primary);font-size:.7rem;font-weight:900;margin-right:-10px}.people-row p{margin-left:22px;max-width:240px;font-size:.85rem;line-height:1.45}.provider-visual{align-items:center}.metric-grid{display:grid;grid-template-columns:1fr;gap:14px}.metric-grid div{padding:18px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);border-radius:16px;backdrop-filter:blur(8px)}.metric-grid strong,.metric-grid span{display:block}.metric-grid strong{font-size:1.15rem}.metric-grid span{font-size:.82rem;opacity:.84;margin-top:3px}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.role-card{position:relative;border:1px solid var(--line);border-radius:16px;padding:16px;display:grid;gap:5px;cursor:pointer;transition:.2s;background:#fbfdff}.role-card input{position:absolute;opacity:0}.role-card.selected{border-color:var(--primary);box-shadow:0 0 0 4px rgba(18,104,243,.08);background:#f5f9ff}.role-icon{font-size:1.5rem}.role-card small{color:var(--muted);line-height:1.35}.password-rules{display:flex;flex-wrap:wrap;gap:7px}.password-rules span{padding:6px 9px;border-radius:999px;background:#edf4ff;color:#42526f;font-size:.72rem;font-weight:750}.center-shell{min-height:100vh;display:grid;place-items:center;padding:28px}.compact-card,.installer-card{width:min(510px,100%);padding:44px;background:#fff;border-radius:28px;box-shadow:var(--shadow);text-align:center;border:1px solid rgba(18,104,243,.08)}.installer-card{width:min(720px,100%)}.compact-card .form-stack,.installer-card .form-stack{text-align:left;margin-top:28px}.solo-logo{display:block;margin:0 auto 22px;border-radius:20px;box-shadow:0 12px 28px rgba(18,104,243,.18)}.otp-input{text-align:center;font-size:2rem;letter-spacing:.45em;font-weight:900}.temporary-code{margin:22px 0;padding:16px;border:1px dashed #b4c8eb;background:#f5f9ff;border-radius:15px;display:grid;gap:5px}.temporary-code span{font-size:.75rem;color:var(--muted);font-weight:750}.temporary-code strong{font-size:1.7rem;letter-spacing:.3em;color:var(--primary)}.inline-form{margin-top:17px}.link-button{border:0;background:transparent;color:var(--primary);font-weight:800;cursor:pointer}.back-link,.development-link{display:inline-block;margin-top:20px}.development-link{background:#eef6ff;padding:11px 14px;border-radius:12px}.toast{position:fixed;top:20px;left:50%;transform:translateX(-50%);z-index:1000;max-width:min(560px,calc(100% - 32px));padding:13px 18px;border-radius:13px;box-shadow:0 15px 35px rgba(12,33,72,.18);font-size:.9rem;font-weight:750;transition:.35s}.toast-success{background:#e9fbf4;color:#087652;border:1px solid #bcebd8}.toast-error{background:#fff0f2;color:#a6273b;border:1px solid #f0c2ca}.toast-info{background:#eef6ff;color:#1456aa;border:1px solid #c8dcfa}.toast-hide{opacity:0;transform:translate(-50%,-15px);pointer-events:none}.topbar{height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:10}.dashboard-shell{display:grid;grid-template-columns:270px 1fr;min-height:calc(100vh - 74px)}.sidebar{background:#fff;border-right:1px solid var(--line);padding:26px 20px;display:flex;flex-direction:column}.profile-mini{display:flex;align-items:center;gap:12px;padding:0 8px 22px;border-bottom:1px solid var(--line)}.avatar{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--primary),var(--violet));color:#fff;display:grid;place-items:center;font-weight:900}.profile-mini strong,.profile-mini span{display:block}.profile-mini span{font-size:.8rem;color:var(--muted);margin-top:2px}.sidebar nav{display:grid;gap:7px;margin-top:22px}.sidebar nav a,.sidebar nav span{padding:12px 14px;border-radius:11px;color:#52617d;font-weight:750}.sidebar nav a.active{background:#edf4ff;color:var(--primary)}.sidebar-note{margin-top:auto;padding:17px;border-radius:15px;background:linear-gradient(145deg,#0f65ee,#0a8ecf);color:#fff}.sidebar-note strong,.sidebar-note span{display:block}.sidebar-note span{font-size:.78rem;line-height:1.4;margin-top:5px;opacity:.85}.dashboard-main{padding:30px;max-width:1400px;width:100%}.welcome-card{background:linear-gradient(135deg,#fff,#eef8ff);border:1px solid #dce8fa;border-radius:24px;padding:30px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 15px 40px rgba(28,65,120,.08)}.welcome-card h1{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.05em;margin:14px 0 8px}.welcome-card p{max-width:700px;color:var(--muted);line-height:1.65}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}.stat-grid article,.next-card,.check-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px}.stat-grid span,.stat-grid small{display:block;color:var(--muted)}.stat-grid strong{display:block;font-size:1.45rem;margin:8px 0}.next-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.next-card h2,.check-card h2{font-size:1.5rem;margin:8px 0 10px}.next-card p{color:var(--muted);line-height:1.6}.check-card ul{list-style:none;padding:0;margin:0;display:grid;gap:11px}.check-card li:before{content:"✓";color:var(--success);font-weight:900;margin-right:10px}.install-button{position:fixed;right:18px;bottom:18px;z-index:20;background:var(--ink);color:#fff;border:0;border-radius:999px;padding:13px 18px;box-shadow:0 12px 30px rgba(11,23,57,.28);font-weight:800;cursor:pointer}.success-panel{margin-top:28px;padding:24px;background:#edf9f5;border:1px solid #c6eadc;border-radius:18px}.success-panel h2{margin-top:0}@media(max-width:900px){.auth-body main{padding:0}.auth-shell,.auth-shell-wide{min-height:100vh;border-radius:0;grid-template-columns:1fr}.auth-card{padding:32px 24px}.auth-visual{min-height:420px;padding:32px 24px}.visual-content h2{font-size:2.7rem}.dashboard-shell{grid-template-columns:1fr}.sidebar{display:none}.dashboard-main{padding:18px}.next-grid{grid-template-columns:1fr}.welcome-card img{width:80px}.stat-grid{grid-template-columns:1fr}}@media(max-width:600px){.field-grid,.role-grid{grid-template-columns:1fr}.form-row{align-items:flex-start;flex-direction:column}.compact-card,.installer-card{padding:30px 20px;border-radius:22px}.welcome-card{align-items:flex-start}.welcome-card img{display:none}.topbar{padding:0 16px}.auth-card{justify-content:flex-start}.auth-heading{margin-top:28px}.dashboard-main{padding:14px}.stat-grid{gap:12px}}
.legal-shell{align-items:start}.legal-card{text-align:left}.legal-card>.brand{margin-bottom:28px}.legal-content{display:grid;gap:8px;margin:26px 0 30px}.legal-content h2{font-size:1.05rem;margin:12px 0 0}.legal-content p{color:var(--muted);line-height:1.7;margin:0}

/* Perfil profesional */
.field textarea{width:100%;border:1px solid var(--line);background:#fbfdff;border-radius:13px;padding:14px 15px;outline:none;transition:.2s;resize:vertical;font:inherit;color:var(--ink)}.field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(18,104,243,.1);background:#fff}.field small{color:var(--muted);font-weight:600;line-height:1.4}.topbar-actions,.topbar-nav{display:flex;align-items:center;gap:14px}.topbar-nav a{font-size:.86rem;color:#52617d}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.provider-workspace{display:grid;gap:20px}.provider-header{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#fff,#eef8ff);border:1px solid #dce8fa;border-radius:24px;padding:28px;box-shadow:0 15px 40px rgba(28,65,120,.08)}.provider-header h1{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.05em;margin:12px 0 8px}.provider-header p{color:var(--muted);max-width:760px;line-height:1.65;margin:0}.completion-card{width:130px;height:130px;flex:0 0 130px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,#fff 55%,transparent 57%),conic-gradient(var(--primary) var(--completion-angle,0deg),#dfe8f8 0);box-shadow:inset 0 0 0 1px #d7e3f5}.completion-card strong{font-size:2rem}.completion-card span{color:var(--muted);font-size:.78rem}.section-tabs{display:flex;gap:8px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:8px;position:sticky;top:84px;z-index:8}.section-tabs a{white-space:nowrap;padding:10px 14px;border-radius:10px;color:#4f5f7b}.section-tabs a:hover{background:#edf4ff;text-decoration:none}.verification-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-radius:17px;border:1px solid var(--line);background:#fff}.verification-banner div{display:grid;gap:4px}.verification-banner span{color:var(--muted);font-size:.86rem}.verification-banner.status-pending{background:#fff9ea;border-color:#f0dba3}.verification-banner.status-verified{background:#ecfbf5;border-color:#bfe9d9}.verification-banner.status-rejected{background:#fff0f2;border-color:#efc3cb}.profile-form{display:grid;gap:20px}.panel-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;scroll-margin-top:155px}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}.panel-heading h2{font-size:1.45rem;margin:4px 0 0}.panel-heading>span{max-width:340px;color:var(--muted);font-size:.82rem;line-height:1.45;text-align:right}.profile-photo-row{display:flex;align-items:center;gap:22px;margin-bottom:22px}.profile-photo-preview{width:112px;height:112px;flex:0 0 112px;border-radius:28px;overflow:hidden;background:linear-gradient(135deg,var(--primary),var(--violet));display:grid;place-items:center;color:#fff;font-size:2rem;font-weight:900;box-shadow:0 15px 35px rgba(18,104,243,.2)}.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.file-field{flex:1}.thirds{grid-template-columns:repeat(3,1fr)}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.category-option{position:relative}.category-option input{position:absolute;opacity:0}.category-option span{display:flex;align-items:center;justify-content:center;min-height:54px;padding:10px;border:1px solid var(--line);border-radius:13px;background:#fbfdff;color:#52617d;font-weight:750;text-align:center;cursor:pointer}.category-option input:checked+span{border-color:var(--primary);background:#edf4ff;color:var(--primary);box-shadow:0 0 0 3px rgba(18,104,243,.08)}.visibility-check{margin-top:18px}.schedule-list{display:grid;gap:10px}.schedule-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;align-items:end;gap:14px;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#fbfdff}.day-toggle{display:flex;align-items:center;gap:10px;font-weight:800;min-height:42px}.day-toggle input{width:18px;height:18px;accent-color:var(--primary)}.time-field{display:grid;gap:6px;color:var(--muted);font-size:.76rem;font-weight:750}.time-field input{border:1px solid var(--line);border-radius:10px;padding:10px;background:#fff}.inline-error{padding:12px 14px;margin-bottom:15px;border-radius:12px;background:#fff0f2;color:var(--danger);font-weight:700}.sticky-save{display:flex;justify-content:flex-end;position:sticky;bottom:14px;z-index:7;pointer-events:none}.sticky-save .btn{pointer-events:auto;box-shadow:0 16px 35px rgba(18,104,243,.28)}.portfolio-form,.document-form{display:grid;grid-template-columns:1.2fr 1.6fr 1.2fr auto;gap:12px;align-items:end;padding:18px;border:1px solid var(--line);background:#f8fbff;border-radius:16px}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}.portfolio-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff}.portfolio-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#eef3fb}.portfolio-card>div{padding:14px}.portfolio-card h3{margin:0 0 6px;font-size:1rem}.portfolio-card p{margin:0 0 10px;color:var(--muted);font-size:.82rem;line-height:1.45}.danger-link{border:0;background:transparent;color:var(--danger);font-weight:800;padding:0;cursor:pointer}.empty-state{margin-top:18px;padding:22px;text-align:center;border:1px dashed #bccbe2;border-radius:15px;color:var(--muted);background:#fbfdff}.requirement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.requirement{padding:15px;border:1px solid var(--line);border-radius:14px;background:#fbfdff;display:grid;gap:4px}.requirement span{font-size:.78rem;color:var(--danger)}.requirement.done{background:#effaf6;border-color:#c6eadc}.requirement.done span{color:var(--success)}.document-list{display:grid;gap:10px;margin-top:18px}.document-list article{display:grid;grid-template-columns:auto minmax(180px,1fr) auto auto auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:14px}.document-list article>div:nth-child(2){display:grid;gap:3px}.document-list article span,.document-list article small{font-size:.78rem;color:var(--muted)}.document-icon{width:44px;height:44px;border-radius:12px;background:#edf4ff;color:var(--primary);display:grid;place-items:center;font-size:.68rem;font-weight:900}.status-badge{padding:6px 9px;border-radius:999px;font-size:.72rem!important;font-weight:850}.status-badge.status-pending{background:#fff4d6;color:#936800}.status-badge.status-approved{background:#e9fbf4;color:#087652}.status-badge.status-rejected{background:#fff0f2;color:#a6273b}.verification-submit{margin-top:20px;padding-top:20px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px}.verification-submit p{margin:5px 0 0;color:var(--muted);font-size:.84rem}.public-profile-page{display:grid;gap:20px}.public-profile-hero{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;padding:28px;background:linear-gradient(135deg,#fff,#eef8ff);border:1px solid #dce8fa;border-radius:24px}.public-avatar{width:140px;height:140px;border-radius:32px;overflow:hidden;background:linear-gradient(135deg,var(--primary),var(--violet));color:#fff;display:grid;place-items:center;font-size:2.5rem;font-weight:900}.public-avatar img{width:100%;height:100%;object-fit:cover}.public-profile-title h1{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.05em;margin:10px 0 2px}.public-profile-title h2{font-size:1.15rem;color:var(--primary);margin:0 0 7px}.public-profile-title p{margin:0;color:var(--muted)}.public-profile-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.public-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.public-stats article{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}.public-stats strong,.public-stats span{display:block}.public-stats strong{font-size:1.4rem}.public-stats span{font-size:.78rem;color:var(--muted);margin-top:4px}.public-profile-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.profile-bio{color:var(--muted);line-height:1.75;white-space:pre-line}.trust-list,.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.trust-list span,.tag-list span{padding:8px 10px;border-radius:999px;background:#edf7ff;color:#245487;font-size:.76rem;font-weight:800}.profile-details{display:grid;gap:12px;margin:22px 0 0}.profile-details div{display:flex;justify-content:space-between;gap:15px;padding-top:12px;border-top:1px solid var(--line)}.profile-details dt{color:var(--muted)}.profile-details dd{margin:0;font-weight:800;text-align:right}.public-portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.public-portfolio-grid figure{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:16px}.public-portfolio-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.public-portfolio-grid figcaption{display:grid;gap:4px;padding:13px}.public-portfolio-grid figcaption span{font-size:.8rem;color:var(--muted)}.public-schedule{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.public-schedule div{display:grid;gap:4px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fbfdff}.public-schedule span{font-size:.78rem;color:var(--muted)}.muted{color:var(--muted)}
@media(max-width:1100px){.category-grid{grid-template-columns:repeat(3,1fr)}.portfolio-form,.document-form{grid-template-columns:1fr 1fr}.portfolio-grid,.public-portfolio-grid{grid-template-columns:repeat(2,1fr)}.public-stats{grid-template-columns:repeat(2,1fr)}.public-profile-grid{grid-template-columns:1fr}.public-schedule{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.topbar-nav{display:none}.provider-header{align-items:flex-start}.completion-card{width:105px;height:105px;flex-basis:105px}.section-tabs{top:78px}.category-grid{grid-template-columns:repeat(2,1fr)}.thirds{grid-template-columns:1fr 1fr}.document-list article{grid-template-columns:auto 1fr auto}.document-list article .btn,.document-list article form{grid-column:2/4}.public-profile-hero{grid-template-columns:auto 1fr}.public-profile-actions{grid-column:1/3;justify-content:flex-start}}
@media(max-width:650px){.provider-header{display:grid}.completion-card{width:92px;height:92px;position:absolute;right:24px;margin-top:0}.provider-header>div:first-child{padding-right:90px}.panel-card{padding:18px}.panel-heading{display:grid}.panel-heading>span{text-align:left}.profile-photo-row{align-items:flex-start}.profile-photo-preview{width:86px;height:86px;flex-basis:86px;border-radius:22px}.thirds,.portfolio-form,.document-form,.schedule-row{grid-template-columns:1fr}.schedule-row{align-items:stretch}.category-grid{grid-template-columns:1fr 1fr}.portfolio-grid,.public-portfolio-grid,.requirement-grid,.public-stats,.public-schedule{grid-template-columns:1fr}.verification-banner,.verification-submit{align-items:flex-start;flex-direction:column}.document-list article{grid-template-columns:auto 1fr}.document-list article>.status-badge{grid-column:2}.document-list article .btn,.document-list article form{grid-column:2}.public-profile-hero{grid-template-columns:1fr;text-align:center}.public-avatar{margin:auto;width:120px;height:120px}.public-profile-actions{grid-column:auto;justify-content:center}.topbar-actions{gap:8px}.topbar .brand{font-size:1.2rem}.completion-card{position:static}.provider-header>div:first-child{padding-right:0}}
.requirement-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:24px 0;text-align:left}.requirement-list div{display:flex;gap:8px;align-items:center;padding:10px 12px;border-radius:11px;background:#f7f9fd;color:var(--muted);font-size:.82rem;font-weight:700}.requirement-list div span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center}.requirement-list .passed span{background:#e9fbf4;color:var(--success)}.requirement-list .failed span{background:#fff0f2;color:var(--danger)}.toast-static{margin:18px 0;padding:13px 18px;border-radius:13px;font-size:.9rem;font-weight:750}@media(max-width:600px){.requirement-list{grid-template-columns:1fr}}

/* Bloque 3: publicación y administración de servicios */
.service-workspace{display:grid;gap:24px}.service-header{align-items:center}.service-header>.btn{white-space:nowrap}.service-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.service-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.service-manage-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 16px 44px rgba(24,66,133,.1);transition:.2s}.service-manage-card:hover{transform:translateY(-2px);box-shadow:0 22px 52px rgba(24,66,133,.15)}.service-manage-card.is-archived{opacity:.72}.service-cover{position:relative;aspect-ratio:16/8.5;background:#eaf2ff;overflow:hidden}.service-cover>img{width:100%;height:100%;object-fit:cover;display:block}.service-cover-empty{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:10px;color:var(--muted);font-weight:800;background:linear-gradient(135deg,#edf5ff,#f7f4ff)}.service-cover-empty img{width:64px;height:64px;opacity:.72}.service-cover-empty.large{min-height:420px}.service-status{position:absolute;top:14px;right:14px;border-radius:999px;padding:7px 11px;font-size:.72rem;font-weight:900;box-shadow:0 8px 20px rgba(11,23,57,.13)}.service-status.status-published{background:#e3f8ef;color:#087451}.service-status.status-draft{background:#fff6d9;color:#8a6500}.service-status.status-paused{background:#edf1f8;color:#48566e}.service-status.status-archived{background:#ffe8ec;color:#a62c43}.service-card-body{padding:22px;display:grid;gap:14px}.service-card-meta{display:flex;justify-content:space-between;gap:12px;color:var(--primary);font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.service-card-body h2{margin:0;font-size:1.35rem;letter-spacing:-.025em}.service-card-body p{margin:0;color:var(--muted);line-height:1.6}.service-price-line{display:flex;align-items:end;justify-content:space-between;padding-top:4px}.service-price-line strong{font-size:1.45rem}.service-price-line span{color:var(--muted);font-size:.82rem}.service-card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding-top:4px}.service-card-actions form,.editor-actions form,.image-actions form{margin:0}.text-action,.danger-link{border:0;background:transparent;padding:5px;color:var(--primary);font-weight:850;cursor:pointer}.danger-link{color:var(--danger)}.service-empty{min-height:390px;display:grid;place-items:center;align-content:center;gap:14px;text-align:center}.service-empty h2,.service-empty p{margin:0}.service-empty p{max-width:520px;color:var(--muted);line-height:1.6}.back-link{display:block;margin-bottom:14px;font-size:.88rem}.service-editor-header{align-items:flex-start}.editor-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.service-editor-form{display:grid;gap:24px}.service-editor-form .panel-card{scroll-margin-top:100px}.repeat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.addon-editor{display:grid;gap:14px;margin-bottom:14px}.addon-row{display:grid;grid-template-columns:1fr 1.5fr .55fr;gap:14px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#f9fbff}.file-drop{padding:20px;border:2px dashed #bfd0ee;border-radius:18px;background:#f9fbff}.local-image-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}.local-image-preview img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;border:1px solid var(--line)}.image-upload-row{display:grid;grid-template-columns:1fr auto;align-items:end;gap:18px;margin-bottom:20px}.service-image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.service-image-card{position:relative;border:1px solid var(--line);border-radius:17px;overflow:hidden;background:#fff}.service-image-card.is-cover{box-shadow:0 0 0 3px rgba(18,104,243,.16)}.service-image-card>img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.cover-badge{position:absolute;top:10px;left:10px;background:var(--primary);color:#fff;border-radius:999px;padding:6px 9px;font-size:.7rem;font-weight:900}.image-actions{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px;flex-wrap:wrap}.image-actions button{font-size:.76rem}.preview-owner-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#eaf3ff;border:1px solid #c9dcfb;border-radius:16px;padding:13px 16px;color:#174a96;font-weight:800}.service-preview-page{display:grid;gap:24px}.service-detail-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:26px}.service-gallery-main{display:grid;gap:12px}.service-gallery-main>img{width:100%;height:520px;object-fit:cover;border-radius:24px;border:1px solid var(--line);box-shadow:var(--shadow)}.service-thumb-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.service-thumb-strip img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.service-detail-copy{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 18px 50px rgba(24,66,133,.1);display:flex;flex-direction:column;gap:20px}.service-detail-copy h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.02;letter-spacing:-.05em;margin:0}.service-detail-meta{display:flex;flex-wrap:wrap;gap:8px}.service-detail-meta span{background:#edf4ff;color:var(--primary);border-radius:999px;padding:7px 10px;font-size:.74rem;font-weight:850}.service-lead{color:var(--muted);line-height:1.65;margin:0}.provider-inline-card{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:16px}.provider-inline-card .avatar{flex:0 0 46px}.provider-inline-card div:nth-child(2){display:grid;gap:3px;min-width:0}.provider-inline-card span{color:var(--muted);font-size:.83rem}.provider-inline-card .verified-label{margin-left:auto;background:#e4f8ef;color:#087451;border-radius:999px;padding:6px 9px;font-weight:850}.service-price-box{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.service-price-box>div{background:#f7f9fd;border:1px solid var(--line);border-radius:14px;padding:13px}.service-price-box span,.service-price-box strong{display:block}.service-price-box span{font-size:.72rem;color:var(--muted);margin-bottom:6px}.service-price-box strong{font-size:1rem}.service-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.service-description-text{color:#33425e;line-height:1.8;margin-bottom:20px}.service-inclusion-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.service-inclusion-list li{display:flex;gap:11px;align-items:flex-start;line-height:1.5}.service-inclusion-list li span{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border-radius:50%;background:#e5f8ef;color:#087451;font-weight:900}.public-addon-list{display:grid;gap:12px}.public-addon-list article{display:flex;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--line);border-radius:14px}.public-addon-list article>div{display:grid;gap:4px}.public-addon-list article span{color:var(--muted);font-size:.84rem;line-height:1.4}.muted{color:var(--muted)}
@media(max-width:1100px){.service-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.service-list-grid{grid-template-columns:1fr}.service-detail-hero{grid-template-columns:1fr}.service-gallery-main>img{height:430px}.addon-row{grid-template-columns:1fr 1fr}.addon-row .field:last-child{grid-column:1/-1}.service-image-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.service-header,.service-editor-header,.preview-owner-bar{align-items:stretch;flex-direction:column}.service-stats{grid-template-columns:1fr 1fr}.repeat-grid,.service-detail-grid{grid-template-columns:1fr}.addon-row{grid-template-columns:1fr}.addon-row .field:last-child{grid-column:auto}.image-upload-row{grid-template-columns:1fr}.service-image-grid,.local-image-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.service-detail-copy{padding:22px}.service-gallery-main>img{height:320px}.service-price-box{grid-template-columns:1fr}.service-card-actions{align-items:stretch}.service-card-actions .btn{flex:1}.editor-actions{width:100%}.editor-actions .btn,.editor-actions form,.editor-actions form button{width:100%}}
@media(max-width:480px){.service-stats{grid-template-columns:1fr}.service-image-grid,.local-image-preview{grid-template-columns:1fr}.service-thumb-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.service-gallery-main>img{height:260px}}
.field-disabled{opacity:.62}.field-disabled input{background:#eef2f8}

/* Bloque 4: exploración, búsqueda, categorías y mapa */
.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}.discovery-workspace{display:grid;gap:24px}.discovery-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding:30px;border-radius:26px;background:linear-gradient(135deg,#eef6ff 0%,#f7f4ff 55%,#ecfbf8 100%);border:1px solid #d8e6fa;overflow:hidden}.discovery-hero h1{margin:9px 0 10px;font-size:clamp(2rem,4vw,3.6rem);line-height:1;letter-spacing:-.05em;max-width:760px}.discovery-hero p{margin:0;color:var(--muted);line-height:1.7;max-width:760px}.market-stat-row{display:grid;grid-template-columns:repeat(2,minmax(110px,1fr));gap:10px}.market-stat-row div{background:rgba(255,255,255,.82);border:1px solid rgba(188,209,239,.8);border-radius:16px;padding:14px;display:grid;gap:2px;box-shadow:0 12px 28px rgba(35,75,139,.08)}.market-stat-row strong{font-size:1.4rem}.market-stat-row span{font-size:.76rem;color:var(--muted);font-weight:750}.discovery-search{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,280px) auto;gap:12px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 15px 40px rgba(24,66,133,.09)}.discovery-search input,.discovery-search select{width:100%;height:48px;border:0;background:#f6f8fc;border-radius:13px;padding:0 15px;font:inherit;color:var(--ink);outline:none}.discovery-search input:focus,.discovery-search select:focus{box-shadow:0 0 0 3px rgba(18,104,243,.15)}.category-explorer{display:grid;gap:14px}.section-title-row{display:flex;justify-content:space-between;align-items:end;gap:20px}.section-title-row h2{margin:2px 0 0;font-size:1.55rem}.section-title-row a{font-weight:800;color:var(--primary)}.category-scroll{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:12px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:thin}.discovery-category{min-width:150px;display:grid;gap:6px;padding:15px;border:1px solid var(--line);border-radius:17px;background:#fff;color:var(--ink);transition:.18s;box-shadow:0 9px 24px rgba(24,66,133,.06)}.discovery-category:hover,.discovery-category.active{border-color:#88b7fa;transform:translateY(-2px);box-shadow:0 15px 30px rgba(24,66,133,.12)}.discovery-category.active{background:#edf5ff}.discovery-category>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#1268f3,#5d43d8);color:#fff;font-size:.72rem;font-weight:900}.discovery-category strong{font-size:.9rem}.discovery-category small{color:var(--muted);font-size:.72rem}.discovery-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start}.filter-panel{position:sticky;top:92px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 15px 40px rgba(24,66,133,.08)}.filter-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:18px}.filter-heading h2{margin:2px 0 0;font-size:1.3rem}.filter-heading a{font-size:.78rem;font-weight:800}.filter-form{display:grid;gap:15px}.field-grid.compact{gap:9px}.filter-checks{display:grid;gap:9px;padding:13px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.filter-checks .check{padding:4px 0}.location-filter-card{display:grid;gap:9px;padding:14px;border-radius:15px;background:#f3f7ff;border:1px solid #dce8fa}.location-filter-card p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.45}.profile-location-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 18px;margin-top:16px;border-radius:16px;background:#f3f7ff;border:1px solid #d8e5f8}.profile-location-card p{margin:5px 0 0;color:var(--muted);font-size:.84rem;line-height:1.5}.discovery-results{min-width:0;display:grid;gap:18px}.results-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px}.results-toolbar>div:first-child{display:grid;gap:3px}.results-toolbar span{color:var(--muted);font-size:.82rem}.view-switch{display:flex;padding:4px;border:1px solid var(--line);background:#fff;border-radius:12px}.view-switch button{border:0;background:transparent;border-radius:9px;padding:8px 13px;color:var(--muted);font-weight:800;cursor:pointer}.view-switch button.active{background:var(--primary);color:#fff}.market-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.market-service-card{background:#fff;border:1px solid var(--line);border-radius:21px;overflow:hidden;box-shadow:0 14px 36px rgba(24,66,133,.08);transition:.2s}.market-service-card:hover{transform:translateY(-2px);box-shadow:0 20px 45px rgba(24,66,133,.14)}.market-cover{position:relative;display:block;aspect-ratio:16/9;background:#eef4ff;overflow:hidden}.market-cover>img{width:100%;height:100%;object-fit:cover;display:block;transition:.3s}.market-service-card:hover .market-cover>img{transform:scale(1.025)}.market-cover .service-cover-empty{position:absolute;inset:0}.category-badge,.urgent-badge{position:absolute;top:12px;border-radius:999px;padding:6px 9px;font-size:.68rem;font-weight:900;box-shadow:0 7px 18px rgba(10,30,70,.14)}.category-badge{left:12px;background:rgba(255,255,255,.94);color:var(--primary)}.urgent-badge{right:12px;background:#fff0e6;color:#a34b04}.market-card-body{padding:18px;display:grid;gap:12px}.market-provider-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}.mini-avatar,.mini-profile-photo{width:40px;height:40px;border-radius:50%;object-fit:cover}.mini-avatar{display:grid;place-items:center;background:linear-gradient(135deg,#1268f3,#6b4ce6);color:#fff;font-size:.72rem;font-weight:900}.market-provider-row>div:nth-child(2){display:grid;gap:2px;min-width:0}.market-provider-row strong{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-provider-row span{font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.verified-dot{display:grid!important;place-items:center;width:24px;height:24px;border-radius:50%;background:#e3f8ef;color:#087451!important;font-weight:900}.market-card-title{color:var(--ink)}.market-card-title h2{margin:0;font-size:1.2rem;line-height:1.25;letter-spacing:-.025em}.market-card-body>p{margin:0;color:var(--muted);font-size:.87rem;line-height:1.55;min-height:2.7em}.market-meta{display:flex;flex-wrap:wrap;gap:7px}.market-meta span{font-size:.7rem;font-weight:800;color:#49617e;background:#f3f6fa;border-radius:999px;padding:5px 8px}.market-card-footer{display:flex;align-items:end;justify-content:space-between;gap:12px;padding-top:3px}.market-card-footer>div{display:grid;gap:2px}.market-card-footer small{color:var(--muted);font-size:.68rem}.market-card-footer strong{font-size:1.2rem}.favorite-button{display:flex;align-items:center;gap:5px;border:1px solid #d6e0ef;background:#fff;color:#4d6079;border-radius:12px;padding:8px 10px;cursor:pointer;font-size:1rem}.favorite-button.saved{background:#fff0f3;color:#b22447;border-color:#ffc7d4}.favorite-button span{font-size:.72rem;font-weight:850}.discovery-empty{min-height:360px;border:1px dashed #cbd8eb;border-radius:22px;background:#fff}.map-panel[hidden],[data-discovery-panel][hidden]{display:none!important}.local-map{position:relative;min-height:570px;overflow:hidden;border-radius:24px;border:1px solid #cbdcf3;background:linear-gradient(135deg,#eaf2ff,#f6fbff 50%,#eafaf5);box-shadow:0 16px 42px rgba(24,66,133,.1)}.map-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(77,117,165,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(77,117,165,.09) 1px,transparent 1px),radial-gradient(circle at 30% 20%,rgba(51,145,230,.13),transparent 23%),radial-gradient(circle at 72% 68%,rgba(40,181,143,.13),transparent 24%);background-size:48px 48px,48px 48px,auto,auto}.map-marker{position:absolute;transform:translate(-50%,-50%);z-index:2;display:grid;justify-items:center;color:var(--ink)}.map-marker>span{width:38px;height:38px;border:4px solid #fff;border-radius:50% 50% 50% 12px;transform:rotate(-45deg);display:grid;place-items:center;background:linear-gradient(135deg,#1268f3,#5b43db);color:#fff;box-shadow:0 8px 20px rgba(20,72,151,.3);font-size:.7rem;font-weight:900}.map-marker>span::first-letter{transform:rotate(45deg)}.map-marker small{display:none;max-width:160px;margin-top:8px;padding:6px 8px;border-radius:8px;background:#fff;box-shadow:0 8px 20px rgba(20,50,90,.2);font-size:.68rem;text-align:center}.map-marker:hover{z-index:4}.map-marker:hover small{display:block}.map-caption{position:absolute;left:18px;bottom:18px;z-index:3;display:grid;gap:2px;padding:12px 14px;background:rgba(255,255,255,.93);border-radius:13px;box-shadow:0 8px 24px rgba(24,66,133,.13)}.map-caption span{color:var(--muted);font-size:.74rem}.map-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:13px}.map-service-list a{display:grid;gap:3px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--ink)}.map-service-list span{color:var(--muted);font-size:.76rem}.pagination{display:flex;align-items:center;justify-content:center;gap:18px;padding:18px}.pagination a{padding:9px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;font-weight:800}.pagination span{color:var(--muted);font-size:.84rem}.marketplace-detail-page{display:grid;gap:24px}.provider-inline-link{color:var(--ink);transition:.18s}.provider-inline-link:hover{border-color:#9ec2f6;background:#f7faff}.detail-safety-note{margin:0;color:var(--muted);font-size:.78rem;line-height:1.5;text-align:center}.text-link{display:inline-block;margin-top:16px;font-weight:800;color:var(--primary)}.availability-card{display:grid;gap:18px}.related-services{display:grid;gap:16px}.related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.related-grid article{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(24,66,133,.07)}.related-cover{display:block;aspect-ratio:16/9;background:#eef4ff}.related-cover img{width:100%;height:100%;object-fit:cover}.related-grid article>div{padding:14px;display:grid;gap:7px}.related-grid span{color:var(--primary);font-size:.68rem;text-transform:uppercase;font-weight:850;letter-spacing:.05em}.related-grid h3{margin:0;font-size:1rem;line-height:1.3}.related-grid h3 a{color:var(--ink)}.related-grid p{margin:0;color:var(--muted);font-size:.75rem}.related-grid strong{font-size:.95rem}
@media(max-width:1200px){.category-scroll{grid-template-columns:repeat(4,minmax(150px,1fr))}.market-service-grid{grid-template-columns:1fr}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.discovery-hero{grid-template-columns:1fr}.market-stat-row{grid-template-columns:repeat(4,minmax(0,1fr))}.discovery-layout{grid-template-columns:1fr}.filter-panel{position:static}.filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-form>.field,.filter-form>.field-grid,.filter-form>.filter-checks,.filter-form>.location-filter-card,.filter-form>.btn{min-width:0}.filter-checks,.location-filter-card{grid-column:span 1}.filter-form>.btn{align-self:end}.category-scroll{grid-template-columns:repeat(3,minmax(150px,1fr))}.local-map{min-height:470px}}
@media(max-width:760px){.discovery-hero{padding:23px}.market-stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}.discovery-search{grid-template-columns:1fr}.category-scroll{display:flex}.discovery-layout{gap:18px}.filter-form{grid-template-columns:1fr}.filter-checks,.location-filter-card{grid-column:auto}.results-toolbar{align-items:flex-start;flex-direction:column}.market-service-grid{grid-template-columns:1fr}.map-service-list,.related-grid{grid-template-columns:1fr}.profile-location-card{grid-template-columns:1fr}.profile-location-card .btn{width:100%}.local-map{min-height:420px}.section-title-row{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:480px){.discovery-hero h1{font-size:2.15rem}.market-stat-row{grid-template-columns:1fr 1fr}.filter-panel{padding:16px}.market-card-body{padding:16px}.market-card-footer{align-items:center}.local-map{min-height:360px}.map-caption{left:10px;right:10px;bottom:10px}.pagination{gap:8px}.pagination a{padding:8px 10px}.related-grid{grid-template-columns:1fr}}

.location-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}@media(max-width:760px){.location-actions{justify-content:stretch}.location-actions .btn,.location-actions .text-action{width:100%}}

/* Bloque 5: detalle y solicitudes */
.package-editor,.faq-editor{display:grid;gap:16px}.package-edit-card,.faq-edit-row{padding:18px;border:1px solid var(--line);border-radius:16px;background:#f9fbff}.faq-edit-row{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:14px}.detail-action-stack{display:grid;gap:10px}.public-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.public-package-card{position:relative;display:grid;align-content:start;gap:12px;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff}.public-package-card.featured{border:2px solid var(--primary);box-shadow:0 16px 36px rgba(18,104,243,.13)}.public-package-card h3,.public-package-card p{margin:0}.public-package-card>strong{font-size:1.65rem;color:var(--ink)}.public-package-card p{color:var(--muted);line-height:1.55}.public-package-card ul{display:grid;gap:8px;margin:0;padding:0;list-style:none;color:var(--muted);font-size:.87rem}.package-badge{justify-self:start;padding:5px 9px;border-radius:999px;background:#e5f7ef;color:#08734f;font-size:.7rem;font-weight:850;text-transform:uppercase}.public-faq-list{display:grid;gap:10px}.public-faq-list details{border:1px solid var(--line);border-radius:14px;background:#fff;padding:0 16px}.public-faq-list summary{cursor:pointer;padding:17px 0;font-weight:850}.public-faq-list p{margin:0;padding:0 0 18px;color:var(--muted);line-height:1.65}.request-create-page,.request-list-page,.request-detail-page{display:grid;gap:22px}.request-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:24px;align-items:center;padding:26px;border-radius:22px;background:linear-gradient(135deg,#eef5ff,#f4fffd);border:1px solid #dbe9fb}.request-hero h1{margin:.45rem 0;font-size:clamp(2rem,4vw,3rem)}.request-hero p{margin:0;color:var(--muted);max-width:720px}.request-service-summary{display:grid;grid-template-columns:92px 1fr;gap:14px;align-items:center;padding:14px;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(24,66,133,.08)}.request-service-summary img{width:92px;height:78px;object-fit:cover;border-radius:13px}.request-service-summary div{display:grid;gap:4px}.request-service-summary span{color:var(--primary);font-size:.72rem;font-weight:850;text-transform:uppercase}.request-service-summary small{color:var(--muted)}.request-form{display:grid;gap:20px}.request-package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.request-package-card{position:relative;display:block;cursor:pointer}.request-package-card input{position:absolute;opacity:0;pointer-events:none}.request-package-card>span{display:grid;gap:7px;min-height:140px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;transition:.18s}.request-package-card input:checked+span{border:2px solid var(--primary);background:#f5f9ff;box-shadow:0 12px 28px rgba(18,104,243,.1)}.request-package-card em{justify-self:start;padding:4px 8px;border-radius:999px;background:#e7f7ef;color:#08734f;font-style:normal;font-size:.66rem;font-weight:850;text-transform:uppercase}.request-package-card small{color:var(--muted);line-height:1.45}.request-package-card b{margin-top:auto;font-size:1.22rem}.request-addon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.request-addon-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}.request-addon-card span{display:grid;gap:4px}.request-addon-card small{color:var(--muted)}.request-schedule-note{display:grid;gap:10px;margin-top:15px;padding:15px;border-radius:14px;background:#f6f9fe}.request-schedule-note div{display:flex;gap:8px;flex-wrap:wrap}.request-schedule-note span{padding:6px 9px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.75rem}.request-submit-bar{position:sticky;bottom:12px;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;border:1px solid #cbdff8;border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 16px 45px rgba(24,66,133,.18);backdrop-filter:blur(12px)}.request-submit-bar div{display:grid;gap:2px}.request-submit-bar span,.request-submit-bar small{color:var(--muted);font-size:.76rem}.request-submit-bar strong{font-size:1.45rem}.stat-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.request-list{display:grid;gap:14px}.request-list-card{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(24,66,133,.06)}.request-cover{height:108px;border-radius:13px;overflow:hidden;background:#eef4ff}.request-cover img{width:100%;height:100%;object-fit:cover}.request-list-copy{display:grid;gap:7px}.request-list-copy h2,.request-list-copy p{margin:0}.request-list-copy h2{font-size:1.1rem}.request-list-copy h2 a{color:var(--ink)}.request-list-copy p{color:var(--muted)}.request-card-top,.request-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.request-number{font-size:.72rem;font-weight:850;color:var(--primary)}.request-status{display:inline-flex;width:max-content;padding:6px 10px;border-radius:999px;font-size:.7rem;font-weight:850;text-transform:uppercase}.status-pending{background:#fff3d8;color:#8c5d00}.status-reviewing{background:#e6f1ff;color:#0759b8}.status-declined,.status-withdrawn{background:#ffe9e9;color:#a92525}.status-closed{background:#edf1f5;color:#4b5968}.request-meta span{font-size:.76rem;color:var(--muted)}.request-card-price{display:grid;justify-items:end;gap:12px}.request-card-price>span{font-size:1.1rem;font-weight:850}.request-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.request-detail-grid .wide{grid-column:1/-1}.provider-response-note{border-left:4px solid var(--primary)}.provider-request-action{display:grid;gap:15px}.action-row{display:flex;gap:10px;flex-wrap:wrap}.btn-danger{background:#fff0f0;color:#a92525;border:1px solid #efb8b8}.btn-danger:hover{background:#ffe4e4}
@media(max-width:980px){.public-package-grid{grid-template-columns:1fr}.request-hero{grid-template-columns:1fr}.request-package-grid,.request-addon-grid{grid-template-columns:1fr}.request-list-card{grid-template-columns:120px 1fr}.request-card-price{grid-column:2;justify-items:start;grid-auto-flow:column;justify-content:space-between;width:100%}}
@media(max-width:760px){.faq-edit-row{grid-template-columns:1fr}.request-list-card{grid-template-columns:1fr}.request-cover{height:180px}.request-card-price{grid-column:auto}.request-detail-grid{grid-template-columns:1fr}.request-detail-grid .wide{grid-column:auto}.request-submit-bar{align-items:stretch;flex-direction:column}.request-submit-bar .btn{width:100%}.stat-grid.compact{grid-template-columns:1fr}.action-row{display:grid}.action-row .btn{width:100%}}

/* Bloque 6: chat y cotizaciones */
.nav-unread{display:inline-grid;place-items:center;min-width:19px;height:19px;margin-left:5px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:900;line-height:1}.nav-unread[hidden]{display:none!important}.conversations-page,.chat-page{display:grid;gap:22px}.conversation-list{display:grid;gap:13px}.conversation-list-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;padding:16px 18px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 12px 30px rgba(24,66,133,.07);transition:.18s}.conversation-list-card:hover{transform:translateY(-1px);border-color:#aac8f1}.conversation-list-card.has-unread{border-color:#92bdf8;background:linear-gradient(90deg,#f3f8ff,#fff)}.conversation-avatar{width:48px;height:48px;display:grid;place-items:center;flex:0 0 auto;border-radius:16px;background:linear-gradient(135deg,#1268f3,#6044db);color:#fff;font-weight:900;letter-spacing:.02em}.conversation-list-copy{min-width:0;display:grid;gap:7px}.conversation-list-top{display:flex;align-items:start;justify-content:space-between;gap:12px}.conversation-list-top h2{margin:0;font-size:1.05rem}.conversation-list-top h2 a{color:var(--ink)}.conversation-list-top>div>span{display:block;margin-top:3px;color:var(--muted);font-size:.75rem}.conversation-list-copy>p{margin:0;color:#536780;font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.7rem}.unread-badge{display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:#1268f3;color:#fff;font-size:.7rem}.chat-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.chat-panel{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 18px 45px rgba(24,66,133,.1)}.chat-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#f8fbff,#f4f2ff)}.chat-person{display:flex;align-items:center;gap:12px;min-width:0}.chat-person h1{margin:0;font-size:1.12rem}.chat-person p{margin:3px 0 0;color:var(--muted);font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chat-thread{height:min(62vh,680px);min-height:440px;overflow-y:auto;display:flex;flex-direction:column;gap:13px;padding:22px;background:linear-gradient(180deg,#f7faff,#f3f6fb)}.chat-empty{margin:auto;display:grid;justify-items:center;gap:5px;text-align:center;color:var(--muted)}.chat-empty strong{color:var(--ink);font-size:1.08rem}.chat-message{align-self:flex-start;max-width:min(78%,700px);display:grid;gap:5px}.chat-message.own-message{align-self:flex-end}.message-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 5px;color:var(--muted);font-size:.68rem}.message-meta strong{color:#40536b}.message-bubble{display:grid;gap:10px;padding:12px 14px;border:1px solid #d8e4f3;border-radius:7px 18px 18px 18px;background:#fff;box-shadow:0 7px 18px rgba(31,67,119,.08)}.own-message .message-bubble{border-color:#1268f3;border-radius:18px 7px 18px 18px;background:#1268f3;color:#fff}.message-bubble>p{margin:0;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.system-message{align-self:center;max-width:88%}.system-message-copy{padding:7px 12px;border-radius:999px;background:#e7edf6;color:#536780;font-size:.72rem;font-weight:750;text-align:center}.message-attachment{overflow:hidden;border-radius:13px}.message-attachment img{display:block;max-width:420px;width:100%;max-height:320px;object-fit:cover;border-radius:13px}.message-attachment audio{display:block;width:min(330px,100%)}.document-attachment{display:grid;gap:3px;padding:12px;border:1px solid rgba(143,170,208,.6);border-radius:12px;background:rgba(255,255,255,.92);color:var(--ink)}.document-attachment span,.document-attachment small{color:var(--muted);font-size:.68rem}.own-message .document-attachment{background:rgba(255,255,255,.95)}.chat-composer{display:grid;gap:10px;padding:15px 17px;border-top:1px solid var(--line);background:#fff}.chat-composer textarea{width:100%;resize:vertical;min-height:58px;max-height:150px;border:1px solid #cfdbea;border-radius:15px;padding:12px 14px;font:inherit;color:var(--ink);outline:none}.chat-composer textarea:focus{border-color:#7caef5;box-shadow:0 0 0 3px rgba(18,104,243,.12)}.composer-actions{display:flex;align-items:center;gap:10px}.composer-actions>small{min-width:0;flex:1;color:var(--muted);font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-chip input{position:absolute;opacity:0;pointer-events:none}.file-chip span{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border:1px solid #cfdbea;border-radius:11px;background:#f7f9fc;color:#40536b;font-size:.75rem;font-weight:850;cursor:pointer}.form-feedback{min-height:1em;margin:0;color:var(--muted);font-size:.72rem}.chat-closed-notice{padding:15px 20px;border-top:1px solid var(--line);background:#fff7e8;color:#84520c;font-size:.82rem;text-align:center}.chat-sidebar{display:grid;gap:15px;position:sticky;top:92px}.request-chat-summary h2,.quote-history h2,.chat-safety-card h2{margin:4px 0 12px;font-size:1.08rem}.chat-safety-card p:last-child{margin:0;color:var(--muted);font-size:.79rem;line-height:1.55}.quote-builder{padding:0;overflow:hidden}.quote-builder>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 18px;cursor:pointer;background:linear-gradient(135deg,#edf5ff,#f7f4ff)}.quote-builder>summary::-webkit-details-marker{display:none}.quote-builder>summary span:first-child{display:grid;gap:2px}.quote-builder>summary small{color:var(--primary);font-weight:850}.quote-builder>summary strong{color:var(--ink)}.quote-builder>form{display:grid;gap:14px;padding:18px;border-top:1px solid var(--line)}.quote-item-editor{display:grid;gap:10px}.quote-edit-row{position:relative;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(80px,.7fr) minmax(110px,.9fr);gap:8px;padding:11px;border:1px solid var(--line);border-radius:14px;background:#f8faff}.quote-edit-row .field{margin:0}.quote-edit-row .field span{font-size:.68rem}.quote-remove-item{position:absolute;right:-7px;top:-8px;width:24px;height:24px;border:0;border-radius:50%;background:#b4233e;color:#fff;cursor:pointer;font-size:1rem;line-height:1}.btn-link{justify-self:start;border:0;background:transparent;color:var(--primary);font-weight:850;cursor:pointer;padding:0}.quote-live-total{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:13px;background:#eaf3ff;color:#174c93}.quote-live-total strong{font-size:1.2rem}.quote-card{display:grid;gap:10px;width:min(440px,100%);padding:14px;border:1px solid #b9d3f5;border-radius:15px;background:#f8fbff;color:var(--ink)}.own-message .quote-card{background:#fff;color:var(--ink)}.quote-card-head{display:flex;align-items:start;justify-content:space-between;gap:10px}.quote-card-head>div{display:grid;gap:2px}.quote-card-head span{font-size:.7rem;color:var(--muted)}.quote-card-head strong{font-size:.84rem}.quote-status{display:inline-flex;align-items:center;width:max-content;padding:4px 7px;border-radius:999px;background:#e7eef8;color:#45617f;font-size:.65rem;font-weight:900}.quote-status-sent .quote-status,.quote-status-sent{border-color:#9fc4f5}.quote-status-accepted .quote-status{background:#dcf6eb;color:#087451}.quote-status-rejected .quote-status,.quote-status-withdrawn .quote-status,.quote-status-expired .quote-status{background:#ffe7ec;color:#a12543}.quote-status-superseded .quote-status{background:#eeeafc;color:#5c44a8}.quote-items{display:grid;gap:6px;padding:10px 0;border-top:1px solid #dce7f5;border-bottom:1px solid #dce7f5}.quote-items>div{display:flex;justify-content:space-between;gap:12px;font-size:.75rem}.quote-items small{color:var(--muted)}.quote-totals{display:grid;gap:5px;margin:0}.quote-totals>div{display:flex;justify-content:space-between;gap:12px}.quote-totals dt,.quote-totals dd{margin:0;font-size:.74rem}.quote-total{padding-top:7px;border-top:1px dashed #bdcee5}.quote-total dt,.quote-total dd{font-size:.9rem!important;font-weight:900}.quote-facts{display:flex;flex-wrap:wrap;gap:6px}.quote-facts span{padding:5px 7px;border-radius:8px;background:#edf3fa;color:#536780;font-size:.66rem}.quote-terms{margin:0!important;padding-top:9px;border-top:1px dashed #bdcee5;color:#536780;font-size:.73rem;line-height:1.5}.quote-actions form{display:flex;flex-wrap:wrap;gap:8px}.quote-history{display:grid;gap:10px}.quote-history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.quote-history-row>div{display:grid;gap:2px}.quote-history-row>div:last-child{justify-items:end}.quote-history-row strong{font-size:.8rem}.quote-history-row span{font-size:.67rem;color:var(--muted)}.request-card-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1100px){.chat-layout{grid-template-columns:minmax(0,1fr)}.chat-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.quote-builder{grid-column:1/-1}.chat-thread{height:56vh}.conversation-list-card{grid-template-columns:auto minmax(0,1fr)}.conversation-list-card>.btn{grid-column:2;justify-self:start}}
@media(max-width:700px){.chat-header{align-items:flex-start;flex-direction:column}.chat-header-actions{width:100%;justify-content:space-between}.chat-thread{min-height:380px;height:55vh;padding:14px}.chat-message{max-width:91%}.message-attachment img{max-height:260px}.composer-actions{align-items:stretch;flex-wrap:wrap}.composer-actions>small{order:3;width:100%;flex-basis:100%}.composer-actions .btn{margin-left:auto}.chat-sidebar{grid-template-columns:1fr}.quote-edit-row{grid-template-columns:1fr 1fr}.quote-edit-row .field:first-child{grid-column:1/-1}.conversation-list-card{grid-template-columns:auto minmax(0,1fr);padding:14px}.conversation-list-card>.btn{grid-column:1/-1;justify-self:stretch}.conversation-list-card>.btn{text-align:center}.conversation-avatar{width:43px;height:43px;border-radius:14px}.conversation-meta{gap:5px}.quote-card{width:100%}}
.record-audio-button{min-height:38px;padding:0 12px;border:1px solid #cfdbea;border-radius:11px;background:#f7f9fc;color:#40536b;font:inherit;font-size:.75rem;font-weight:850;cursor:pointer}.record-audio-button.recording{border-color:#ef4444;background:#fff1f2;color:#b4233e;animation:recordPulse 1.2s ease-in-out infinite}@keyframes recordPulse{50%{box-shadow:0 0 0 5px rgba(239,68,68,.12)}}

/* Bloque 7: agenda y reservas */
.agenda-page{min-width:0}.agenda-header{align-items:center}.calendar-navigation{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.calendar-navigation strong{min-width:145px;text-align:center}.agenda-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1.25rem 0}.agenda-summary-grid article{background:#fff;border:1px solid var(--line);border-radius:1.15rem;padding:1.1rem;box-shadow:0 12px 35px rgba(20,57,120,.07)}.agenda-summary-grid span,.agenda-summary-grid small{display:block;color:var(--muted)}.agenda-summary-grid strong{display:block;font-size:1.85rem;margin:.2rem 0}.agenda-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:1.25rem;align-items:start}.calendar-panel{overflow:hidden}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:1rem;overflow:hidden;background:var(--line);gap:1px}.calendar-weekday{background:#eef4ff;text-align:center;padding:.7rem .3rem;font-weight:800;color:#405173}.calendar-day{min-height:132px;background:#fff;padding:.55rem;min-width:0}.calendar-day.outside-month{background:#f8faff;color:#9aa6ba}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--primary)}.calendar-day-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-weight:800}.calendar-day.today .calendar-day-number{background:var(--primary);color:#fff}.calendar-events{display:grid;gap:.3rem;margin-top:.35rem}.calendar-event{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.35rem;align-items:center;padding:.36rem .45rem;border-radius:.55rem;font-size:.72rem;line-height:1.2;text-decoration:none!important;overflow:hidden}.calendar-event time{font-weight:800}.calendar-event span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-event{background:#e9f1ff;color:#1454b8;border-left:3px solid #2e73ef}.appointment-event.status-confirmed{background:#e6f8f1;color:#087454;border-color:#12a879}.appointment-event.status-pending_client{background:#fff4d9;color:#8b6100;border-color:#e6a800}.appointment-event.status-reschedule_pending{background:#f0e9ff;color:#6940b6;border-color:#8055d9}.appointment-event.status-cancelled,.appointment-event.status-no_show{background:#f7e8eb;color:#9f3044;border-color:#c94f64}.appointment-event.status-completed{background:#edf1f6;color:#536176;border-color:#7b899e}.block-event{background:#f1f3f8;color:#4e5d75;border-left:3px solid #77869d}.block-event.block-vacation{background:#eaf8fb;color:#087586;border-color:#15a7ba}.block-event.block-personal{background:#fff0e8;color:#9a4d16;border-color:#e77c34}.calendar-more{color:var(--muted);font-weight:700}.agenda-sidebar{display:grid;gap:1rem;position:sticky;top:90px}.upcoming-list{display:grid;gap:.75rem}.upcoming-item{display:grid;grid-template-columns:54px minmax(0,1fr);gap:.75rem;padding:.7rem;border:1px solid var(--line);border-radius:.9rem;background:#fbfdff;text-decoration:none!important}.upcoming-item>time{display:grid;place-items:center;background:#eaf2ff;border-radius:.75rem;padding:.4rem}.upcoming-item>time strong{font-size:1.35rem}.upcoming-item>time span{font-size:.68rem;letter-spacing:.06em}.upcoming-item>div{display:grid;gap:.18rem;min-width:0}.upcoming-item>div>strong,.upcoming-item>div>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-status{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:.28rem .6rem;font-size:.75rem;font-weight:800;background:#edf2fa;color:#536176}.appointment-status.status-confirmed{background:#dff6ed;color:#087454}.appointment-status.status-pending_client{background:#fff2cc;color:#835d00}.appointment-status.status-reschedule_pending{background:#eee5ff;color:#6739af}.appointment-status.status-cancelled,.appointment-status.status-no_show{background:#f8e2e7;color:#a02e44}.appointment-status.status-completed{background:#e9eef5;color:#526176}.calendar-block-builder summary,.reschedule-builder summary,.cancellation-builder summary,.appointment-create-card summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none}.calendar-block-builder summary::-webkit-details-marker,.reschedule-builder summary::-webkit-details-marker,.cancellation-builder summary::-webkit-details-marker,.appointment-create-card summary::-webkit-details-marker{display:none}.calendar-block-builder summary span:first-child,.reschedule-builder summary span:first-child,.cancellation-builder summary span:first-child,.appointment-create-card summary span:first-child{display:grid;gap:.15rem}.calendar-block-builder summary small,.reschedule-builder summary small,.cancellation-builder summary small,.appointment-create-card summary small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.calendar-block-builder[open] summary,.reschedule-builder[open] summary,.cancellation-builder[open] summary,.appointment-create-card[open] summary{margin-bottom:1rem}.calendar-block-list article{display:flex;justify-content:space-between;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.calendar-block-list article:last-child{border-bottom:0}.calendar-block-list article>div{display:grid;gap:.2rem}.calendar-block-list article span{color:var(--muted);font-size:.84rem}.danger-link{color:var(--danger)}.appointment-overview-grid{display:grid;grid-template-columns:1.05fr 1fr 1fr;gap:1rem;margin:1.2rem 0}.appointment-date-display{display:flex;align-items:center;gap:.8rem}.appointment-date-display>span{font-size:3.3rem;font-weight:900;line-height:1;color:var(--primary)}.appointment-date-display>div{display:grid}.appointment-date-display strong{font-size:1.2rem}.appointment-date-display small{color:var(--muted)}.appointment-date-card h2{margin:.9rem 0 .2rem}.reminder-list{display:grid;gap:.55rem}.reminder-list>div{display:flex;justify-content:space-between;gap:.75rem;padding:.55rem 0;border-bottom:1px solid var(--line);font-size:.84rem}.reminder-list>div:last-child{border-bottom:0}.reminder-status{font-size:.72rem}.reminder-pending{color:#8b6100}.reminder-sent{color:var(--success)}.reminder-failed{color:var(--danger)}.reminder-cancelled{color:var(--muted)}.appointment-location-card{margin-bottom:1rem}.appointment-callout,.reschedule-alert,.appointment-request-card{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;margin:1rem 0;background:linear-gradient(135deg,#eef6ff,#f5f0ff)}.reschedule-alert{background:linear-gradient(135deg,#fff6df,#f4ebff)}.appointment-actions-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0}.completion-actions{grid-column:1/-1}.timeline-list{display:grid;gap:0}.timeline-list article{position:relative;display:grid;grid-template-columns:20px minmax(0,1fr);gap:.7rem;padding:0 0 1.1rem}.timeline-list article:not(:last-child):before{content:"";position:absolute;left:6px;top:13px;bottom:-2px;width:2px;background:var(--line)}.timeline-dot{width:14px;height:14px;border-radius:50%;background:var(--primary);margin-top:.25rem;z-index:1}.timeline-list article>div{display:grid;gap:.2rem}.timeline-list p{margin:.1rem 0;color:var(--muted)}.accepted-quote-note{display:grid;gap:.25rem;padding:.85rem;border-radius:.85rem;background:#e5f8f0;color:#096e52}.accepted-quote-note span{font-size:.86rem}.empty-copy{color:var(--muted)}
@media (max-width:1180px){.agenda-layout{grid-template-columns:1fr}.agenda-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-block-list{grid-column:1/-1}.appointment-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-overview-grid>section:last-child{grid-column:1/-1}}
@media (max-width:820px){.agenda-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-panel{padding:.65rem}.calendar-grid{overflow-x:auto;grid-template-columns:repeat(7,minmax(110px,1fr))}.calendar-day{min-height:116px}.agenda-sidebar{grid-template-columns:1fr}.appointment-overview-grid,.appointment-actions-layout{grid-template-columns:1fr}.appointment-overview-grid>section:last-child,.completion-actions{grid-column:auto}.appointment-callout,.reschedule-alert,.appointment-request-card{align-items:flex-start;flex-direction:column}}
@media (max-width:560px){.agenda-summary-grid{grid-template-columns:1fr 1fr;gap:.65rem}.agenda-summary-grid article{padding:.8rem}.calendar-navigation strong{order:-1;width:100%;text-align:left}.provider-header.agenda-header{align-items:flex-start}.calendar-weekday{font-size:.75rem}.appointment-date-display>span{font-size:2.7rem}}

/* Bloque 8: pagos, comprobantes, facturación y reseñas */
.payments-page,.payment-detail-page{min-width:0}.payments-hero,.payment-detail-hero{align-items:center}.payment-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.payment-preferences{margin:1.15rem 0}.payment-preferences summary,.invoice-request-builder summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none}.payment-preferences summary::-webkit-details-marker,.invoice-request-builder summary::-webkit-details-marker{display:none}.payment-preferences summary span:first-child,.invoice-request-builder summary span:first-child{display:grid;gap:.18rem}.payment-preferences summary small,.invoice-request-builder summary small{color:var(--muted)}.payment-preferences[open] summary,.invoice-request-builder[open] summary{margin-bottom:1rem}.choice-grid.two-options{grid-template-columns:repeat(2,minmax(0,1fr))}.field textarea{width:100%;border:1px solid var(--line);background:#fbfdff;border-radius:13px;padding:14px 15px;outline:none;resize:vertical;font:inherit;color:var(--ink);transition:.2s}.field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(18,104,243,.1);background:#fff}.payable-section,.payment-history-section,.invoice-queue,.reviews-preview{margin-top:1.15rem}.payable-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.payable-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;border:1px solid var(--line);border-radius:1rem;padding:1rem;background:#fbfdff}.payable-card>strong{font-size:1.45rem;color:var(--primary)}.payable-card form{grid-column:1/-1}.compact-form{grid-template-columns:minmax(180px,1fr) minmax(130px,.6fr) auto;align-items:end}.payment-list{display:grid}.payment-list-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:.9rem;align-items:center;padding:1rem .2rem;border-bottom:1px solid var(--line);text-decoration:none!important}.payment-list-item:last-child{border-bottom:0}.payment-icon{width:44px;height:44px;border-radius:14px;background:#eaf2ff;color:var(--primary);display:grid;place-items:center;font-weight:900;font-size:1.15rem}.payment-list-item>div:nth-child(2){display:grid;gap:.2rem;min-width:0}.payment-list-item>div:nth-child(2)>strong,.payment-list-item>div:nth-child(2)>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-list-item span,.payment-list-item small{color:var(--muted)}.payment-list-amount{text-align:right;display:grid;gap:.35rem;justify-items:end}.payment-list-amount>strong{font-size:1.1rem}.payment-status{display:inline-flex;width:max-content;border-radius:999px;padding:.35rem .65rem;font-size:.74rem;font-weight:850;background:#edf2fa;color:#546178}.status-payment-paid{background:#dff6ed;color:#087454}.status-payment-awaiting_proof,.status-payment-awaiting_confirmation{background:#fff2cc;color:#835d00}.status-payment-proof_submitted{background:#e8e5ff;color:#633cb0}.status-payment-rejected{background:#f8e2e7;color:#a02e44}.status-payment-cancelled,.status-payment-refunded{background:#e9eef5;color:#526176}.invoice-request-list{display:grid}.invoice-request-list>a{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.85rem 0;border-bottom:1px solid var(--line);text-decoration:none!important}.invoice-request-list>a:last-child{border-bottom:0}.invoice-request-list>a>div{display:grid;gap:.2rem}.invoice-request-list span{color:var(--muted)}.review-list{display:grid;gap:1rem}.review-list>article{border:1px solid var(--line);border-radius:1rem;padding:1rem;background:#fbfdff}.review-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.review-heading>div{display:grid;gap:.18rem}.review-heading span{color:var(--muted);font-size:.84rem}.review-heading>strong{color:#f2a600;white-space:nowrap}.empty-stars{color:#d8dfeb}.review-list h3{margin:.8rem 0 .35rem}.review-list p{color:#495875;line-height:1.65}.provider-review-response{margin-top:.9rem;padding:.85rem;border-left:3px solid var(--primary);background:#edf5ff;border-radius:.65rem}.provider-review-response p{margin:.35rem 0 0}.payment-overview-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin:1.15rem 0}.payment-total-card>strong{display:block;font-size:2.4rem;color:var(--primary);margin:.4rem 0 1rem}.payment-total-card dl{margin:0}.payment-total-card dl>div{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0;border-bottom:1px solid var(--line)}.payment-total-card dl>div:last-child{border-bottom:0}.payment-total-card dt{color:var(--muted)}.payment-action-callout,.provider-payment-review{display:flex;justify-content:space-between;align-items:center;gap:1.2rem;margin:1rem 0;background:linear-gradient(135deg,#edf6ff,#f5f0ff)}.payment-action-callout>div,.provider-payment-review>div:first-child{max-width:720px}.compact-upload{min-width:290px}.provider-payment-actions{display:flex;align-items:flex-start;gap:.65rem}.provider-payment-actions details{position:relative}.provider-payment-actions details>summary{list-style:none;cursor:pointer}.provider-payment-actions details>summary::-webkit-details-marker{display:none}.provider-payment-actions details[open] form{position:absolute;z-index:4;right:0;top:calc(100% + .5rem);width:330px;padding:1rem;background:#fff;border:1px solid var(--line);border-radius:1rem;box-shadow:var(--shadow)}.inline-danger-form{text-align:right;margin:.4rem 0}.payment-warning{border-color:#efc1c9;background:#fff4f5;margin:1rem 0}.payment-warning strong{color:var(--danger)}.payment-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}.private-file-list,.transaction-list{display:grid}.private-file-list>a,.transaction-list article{display:flex;justify-content:space-between;gap:.8rem;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--line);text-decoration:none!important}.private-file-list>a:last-child,.transaction-list article:last-child{border-bottom:0}.private-file-list>a>div,.transaction-list article>div{display:grid;gap:.18rem}.private-file-list span,.transaction-list span{color:var(--muted);font-size:.83rem}.financial-breakdown,.invoice-section,.review-builder,.review-published{margin-top:1rem}.financial-numbers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-top:1rem}.financial-numbers article{padding:1rem;border:1px solid var(--line);border-radius:.9rem;background:#fbfdff}.financial-numbers span,.financial-numbers strong{display:block}.financial-numbers span{color:var(--muted);font-size:.82rem}.financial-numbers strong{font-size:1.2rem;margin-top:.35rem}.financial-numbers .net{background:#e9fbf4;border-color:#bcebd8}.financial-numbers .net strong{color:#087652}.invoice-status-card{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:#fbfdff}.invoice-status-card h3{margin:.65rem 0 .25rem}.invoice-file-actions{display:flex;gap:.5rem;flex-wrap:wrap}.invoice-provider-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.rating-form-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem}.rating-summary-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin:1rem 0}.rating-summary-row article{padding:.85rem;border:1px solid var(--line);border-radius:.85rem;text-align:center;background:#fbfdff}.rating-summary-row strong,.rating-summary-row span{display:block}.rating-summary-row strong{font-size:1.25rem;color:#e39b00}.rating-summary-row span{font-size:.78rem;color:var(--muted);margin-top:.18rem}.public-reviews-section{margin-top:1.15rem}.public-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.form-note{color:var(--muted);font-size:.82rem;line-height:1.5;margin:0}
@media(max-width:1180px){.payment-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-overview-grid>section:last-child{grid-column:1/-1}.rating-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.financial-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}.public-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.payable-grid,.payment-detail-grid{grid-template-columns:1fr}.compact-form{grid-template-columns:1fr}.payment-action-callout,.provider-payment-review{align-items:flex-start;flex-direction:column}.compact-upload{min-width:0;width:100%}.provider-payment-actions{width:100%;flex-wrap:wrap}.provider-payment-actions details[open] form{position:static;width:100%;margin-top:.55rem}.rating-summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-status-card{align-items:flex-start;flex-direction:column}.rating-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.payment-stat-grid,.payment-overview-grid,.choice-grid.two-options,.financial-numbers,.rating-form-grid,.rating-summary-row,.public-stats{grid-template-columns:1fr}.payment-overview-grid>section:last-child{grid-column:auto}.payment-list-item{grid-template-columns:40px minmax(0,1fr)}.payment-list-amount{grid-column:2;text-align:left;justify-items:start}.payable-card{grid-template-columns:1fr}.review-heading{flex-direction:column}.invoice-request-list>a,.private-file-list>a,.transaction-list article{align-items:flex-start;flex-direction:column}}

/* Bloque 9: panel principal del cliente */
.client-dashboard-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.45fr);gap:24px;align-items:center;padding:30px;border:1px solid #d9e6fa;border-radius:26px;background:radial-gradient(circle at 88% 10%,rgba(19,184,200,.17),transparent 34%),linear-gradient(135deg,#fff,#edf5ff);box-shadow:0 18px 48px rgba(24,66,133,.1)}
.client-dashboard-hero h1{margin:10px 0 8px;font-size:clamp(2rem,4vw,3.15rem);line-height:1.02;letter-spacing:-.05em;max-width:760px}
.client-dashboard-hero p{margin:0;color:var(--muted);line-height:1.65;max-width:760px}
.dashboard-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:22px;max-width:760px;padding:8px;background:#fff;border:1px solid #d9e4f3;border-radius:17px;box-shadow:0 10px 28px rgba(20,57,120,.08)}
.dashboard-search input{min-width:0;border:0;outline:0;border-radius:12px;padding:0 14px;color:var(--ink);background:#f7f9fd}
.client-quick-actions{margin-top:14px}
.client-hero-summary{min-height:190px;display:grid;place-content:center;justify-items:center;text-align:center;padding:24px;border-radius:22px;background:linear-gradient(145deg,#1268f3,#5844db 58%,#13aebf);color:#fff;box-shadow:0 20px 42px rgba(38,80,173,.24)}
.client-hero-summary strong{font-size:4rem;line-height:1;font-weight:900;letter-spacing:-.07em}
.client-hero-summary span{max-width:180px;margin-top:8px;font-weight:850;line-height:1.25}
.client-hero-summary small{margin-top:13px;padding-top:13px;border-top:1px solid rgba(255,255,255,.28);font-weight:700;opacity:.9}
.dashboard-alert{display:flex;align-items:center;gap:14px;padding:15px 18px;border-radius:16px;border:1px solid;line-height:1.45}
.dashboard-alert strong,.dashboard-alert span{display:block}.dashboard-alert-warning{background:#fff8e8;border-color:#f4d796;color:#754b00}
.client-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.client-stat-grid a{display:grid;gap:5px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 10px 28px rgba(24,66,133,.06);transition:.18s}
.client-stat-grid a:hover{transform:translateY(-2px);text-decoration:none;border-color:#a7c8f6;box-shadow:0 15px 34px rgba(24,66,133,.12)}
.client-stat-grid span{font-size:.72rem;color:var(--muted);font-weight:850;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.client-stat-grid strong{font-size:2rem;letter-spacing:-.05em}.client-stat-grid small{color:var(--muted);font-size:.7rem;line-height:1.35}
.attention-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 20px;border:1px solid #f2cdd4;border-radius:18px;background:linear-gradient(120deg,#fff5f7,#fff);box-shadow:0 10px 26px rgba(157,49,76,.07)}
.attention-strip>div:first-child{display:flex;align-items:center;gap:13px}.attention-strip strong{display:block}.attention-strip p{margin:3px 0 0;color:var(--muted);font-size:.8rem}
.attention-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:#c53a50;color:#fff;font-weight:900}.attention-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.attention-actions a{padding:8px 11px;border-radius:10px;background:#fff;border:1px solid #ecc6ce;font-size:.74rem}
.client-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.dashboard-panel-wide{grid-column:1/-1}
.dashboard-panel,.dashboard-services-section,.dashboard-preferences{padding:21px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 14px 36px rgba(24,66,133,.07)}
.dashboard-panel-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.dashboard-panel-heading>div{min-width:0}.dashboard-panel-heading>div>span{display:block;color:var(--primary);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.dashboard-panel-heading h2{margin:3px 0 0;font-size:1.38rem;letter-spacing:-.03em}.dashboard-panel-heading p{margin:5px 0 0;color:var(--muted);font-size:.78rem}.dashboard-panel-heading>a{white-space:nowrap;font-size:.78rem}
.dashboard-booking-list,.dashboard-conversation-list,.dashboard-request-list,.dashboard-payment-list{display:grid;gap:9px}.dashboard-booking{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px;border:1px solid #e3eaf5;border-radius:15px;color:var(--ink);transition:.16s}.dashboard-booking:hover,.dashboard-conversation-list>a:hover,.dashboard-request-list>a:hover,.dashboard-payment-list>a:hover{background:#f7faff;border-color:#bad3f6;text-decoration:none}.dashboard-booking time{width:50px;height:54px;display:grid;place-content:center;text-align:center;border-radius:13px;background:#edf4ff;color:var(--primary)}.dashboard-booking time strong{font-size:1.35rem;line-height:1}.dashboard-booking time span{font-size:.62rem;font-weight:900}.dashboard-booking>div{display:grid;gap:3px;min-width:0}.dashboard-booking>div strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-booking>div span,.dashboard-booking>div small{color:var(--muted);font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-status{display:inline-flex;align-items:center;justify-content:center;max-width:165px;padding:6px 9px;border-radius:999px;background:#eef3fb;color:#52627a;font-size:.66rem;font-weight:900;text-align:center}.status-confirmed,.status-paid,.status-closed{background:#e6f8ef;color:#087451}.status-pending,.status-pending_client,.status-awaiting_proof,.status-awaiting_confirmation,.status-reviewing,.status-proof_submitted,.status-reschedule_pending{background:#fff4dc;color:#8a5700}.status-declined,.status-rejected,.status-cancelled,.status-withdrawn{background:#ffebef;color:#a52544}.status-unread{background:#e8f1ff;color:#0d55bd}
.dashboard-conversation-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;border:1px solid transparent;border-radius:14px;color:var(--ink)}.dashboard-conversation-list>a>div{display:grid;gap:2px;min-width:0}.dashboard-conversation-list strong,.dashboard-conversation-list span,.dashboard-conversation-list small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-conversation-list span{font-size:.73rem;color:#40536d}.dashboard-conversation-list small{font-size:.7rem;color:var(--muted)}.dashboard-conversation-list b{min-width:23px;height:23px;display:grid;place-items:center;border-radius:999px;background:var(--primary);color:#fff;font-size:.66rem}
.dashboard-request-list>a,.dashboard-payment-list>a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid #e5ebf4;border-radius:14px;color:var(--ink)}.dashboard-request-list>a>div:first-child,.dashboard-payment-list>a>div:first-child{display:grid;gap:3px;min-width:0}.dashboard-request-list strong,.dashboard-request-list span,.dashboard-payment-list strong,.dashboard-payment-list span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-request-list span,.dashboard-payment-list span{color:var(--muted);font-size:.72rem}.dashboard-payment-list>a>div:last-child{display:grid;justify-items:end;gap:2px;flex:0 0 auto}.dashboard-payment-list small{font-size:.66rem;color:var(--muted)}
.dashboard-activity-list{list-style:none;margin:0;padding:0;display:grid;gap:0}.dashboard-activity-list li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;position:relative;padding:0 0 15px}.dashboard-activity-list li:not(:last-child)::before{content:"";position:absolute;left:5px;top:13px;bottom:0;width:1px;background:#dfe7f4}.activity-dot{position:relative;z-index:1;width:11px;height:11px;margin-top:5px;border-radius:50%;background:#8fa4c0;box-shadow:0 0 0 4px #eef3fa}.activity-request{background:#1268f3}.activity-appointment{background:#13a77f}.activity-payment{background:#6b43dc}.activity-message{background:#e88a22}.dashboard-activity-list a{display:grid;gap:2px;color:var(--ink);min-width:0}.dashboard-activity-list a:hover{text-decoration:none}.dashboard-activity-list strong,.dashboard-activity-list span,.dashboard-activity-list small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-activity-list span{font-size:.74rem;color:#445773}.dashboard-activity-list small{font-size:.68rem;color:var(--muted)}
.dashboard-empty-inline{display:grid;justify-items:center;text-align:center;gap:7px;min-height:150px;place-content:center;padding:22px;border:1px dashed #cdd9ea;border-radius:16px;background:#fafcff}.dashboard-empty-inline p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.5}.dashboard-empty-inline.horizontal{min-height:auto;display:flex;align-items:center;justify-content:space-between;text-align:left}.dashboard-empty-inline.horizontal>div{display:grid;gap:4px}
.dashboard-services-section{display:grid;gap:0}.dashboard-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.recommendations-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-service-card{overflow:hidden;border:1px solid #e0e8f4;border-radius:17px;background:#fff;transition:.18s}.dashboard-service-card:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(24,66,133,.1)}.dashboard-service-cover{position:relative;display:block;aspect-ratio:16/9;background:#edf4ff;overflow:hidden}.dashboard-service-cover>img{width:100%;height:100%;object-fit:cover}.dashboard-service-cover>span:not(.service-cover-empty){position:absolute;left:9px;top:9px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--primary);font-size:.63rem;font-weight:900}.dashboard-service-cover>b{position:absolute;right:9px;top:9px;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#e6f8ef;color:#087451}.dashboard-service-card>div{display:grid;gap:7px;padding:13px}.dashboard-service-card h3{margin:0;font-size:.95rem;line-height:1.3}.dashboard-service-card h3 a{color:var(--ink)}.dashboard-service-card p{margin:0;color:var(--muted);font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-service-card>div>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.dashboard-service-card>div>div span{color:#5c6d85;font-size:.68rem}.dashboard-service-card>div>div strong{font-size:.84rem}
.dashboard-preferences{padding:0;overflow:hidden}.dashboard-preferences summary{cursor:pointer;padding:16px 20px;font-weight:850;color:#344a68}.dashboard-preferences summary:hover{background:#f8faff}.dashboard-preferences form{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;align-items:end;gap:13px;padding:18px 20px;border-top:1px solid var(--line);background:#fbfdff}.dashboard-preferences form>label:first-child{display:grid;gap:6px}.dashboard-preferences form label>span{font-size:.75rem;font-weight:800;color:#52627a}.dashboard-preferences select{height:42px;border:1px solid #d7e0ed;border-radius:11px;background:#fff;padding:0 11px;color:var(--ink)}.dashboard-preferences .check{align-self:center}
.client-dashboard-compact{gap:13px}.client-dashboard-compact .client-dashboard-hero{padding:22px}.client-dashboard-compact .client-dashboard-hero h1{font-size:2.2rem}.client-dashboard-compact .client-hero-summary{min-height:145px}.client-dashboard-compact .dashboard-panel,.client-dashboard-compact .dashboard-services-section{padding:16px}.client-dashboard-compact .dashboard-booking,.client-dashboard-compact .dashboard-request-list>a,.client-dashboard-compact .dashboard-payment-list>a{padding:9px}
@media(max-width:1280px){.client-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recommendations-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-preferences form{grid-template-columns:1fr 1fr}.dashboard-preferences form .btn{justify-self:start}}
@media(max-width:900px){.client-dashboard-hero{grid-template-columns:1fr}.client-hero-summary{min-height:140px}.client-hero-summary strong{font-size:3rem}.client-dashboard-grid{grid-template-columns:1fr}.dashboard-panel-wide{grid-column:auto}.recommendations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attention-strip{align-items:flex-start;flex-direction:column}.attention-actions{justify-content:flex-start}}
@media(max-width:640px){.client-dashboard-hero{padding:20px;border-radius:20px}.client-dashboard-hero h1{font-size:2rem}.dashboard-search{grid-template-columns:1fr}.dashboard-search input{min-height:46px}.client-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-stat-grid a{padding:14px}.client-stat-grid strong{font-size:1.65rem}.dashboard-booking{grid-template-columns:auto minmax(0,1fr)}.dashboard-booking>.dashboard-status{grid-column:2;justify-self:start}.dashboard-service-grid,.recommendations-grid{grid-template-columns:1fr}.dashboard-empty-inline.horizontal{display:grid;text-align:center;justify-items:center}.dashboard-preferences form{grid-template-columns:1fr}.dashboard-preferences .check{align-self:auto}.dashboard-panel-heading{align-items:flex-start}.dashboard-panel-heading h2{font-size:1.2rem}.client-quick-actions .btn{width:100%}}

/* Bloque 10 · Panel profesional del proveedor */
.provider-dashboard-hero{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px;align-items:center;padding:34px;border-radius:28px;background:linear-gradient(135deg,#0b2d4a 0%,#125c78 58%,#0f8f8c 100%);color:#fff;box-shadow:0 24px 60px rgba(11,45,74,.2);overflow:hidden;position:relative}.provider-dashboard-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-120px;background:rgba(255,255,255,.08)}.provider-dashboard-hero>div{position:relative;z-index:1}.provider-dashboard-hero .status-pill{background:rgba(255,255,255,.16);color:#fff}.provider-dashboard-hero h1{font-size:clamp(2rem,4vw,3.35rem);line-height:1.03;max-width:780px;margin:14px 0 12px}.provider-dashboard-hero p{max-width:700px;color:rgba(255,255,255,.82);font-size:1.04rem}.provider-dashboard-hero .btn-secondary{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.26);color:#fff}.provider-dashboard-hero .btn-secondary:hover{background:rgba(255,255,255,.18)}.provider-hero-score{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:164px;padding:22px;border:1px solid rgba(255,255,255,.2);border-radius:24px;background:rgba(255,255,255,.1);backdrop-filter:blur(7px)}.provider-hero-score strong{font-size:3.6rem;line-height:1}.provider-hero-score span{font-weight:800;margin-top:8px}.provider-hero-score small{margin-top:10px;color:rgba(255,255,255,.75)}
.provider-account-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.provider-account-strip>div{display:flex;flex-direction:column;gap:6px;min-height:120px;padding:20px;border:1px solid #dfeaf0;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(19,61,82,.06)}.provider-account-strip span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#68808e;font-weight:800}.provider-account-strip strong{font-size:1.15rem;color:#102f43}.provider-account-strip small{color:#728691}.provider-account-strip a{margin-top:auto;color:#087f86;font-weight:800;font-size:.85rem}.provider-progress{height:7px;border-radius:999px;background:#e7eff2;overflow:hidden}.provider-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1971c2,#12a19b)}
.provider-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin:18px 0}.provider-stat-grid>a{display:flex;flex-direction:column;gap:7px;padding:20px;border:1px solid #dfeaf0;border-radius:20px;background:#fff;color:inherit;box-shadow:0 10px 30px rgba(19,61,82,.06);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.provider-stat-grid>a:hover{transform:translateY(-3px);border-color:#83cbd0;box-shadow:0 18px 35px rgba(19,61,82,.1)}.provider-stat-grid span{font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:#68808e;font-weight:800}.provider-stat-grid strong{font-size:2rem;line-height:1;color:#102f43}.provider-stat-grid small{color:#738691;line-height:1.35}.provider-attention-strip{border-color:#f1d9a6;background:linear-gradient(90deg,#fff9eb,#fff)}
.provider-business-overview{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:18px;margin:18px 0}.provider-revenue-card,.provider-trend-card{padding:24px;border:1px solid #dfeaf0;border-radius:24px;background:#fff;box-shadow:0 12px 35px rgba(19,61,82,.07)}.provider-revenue-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.provider-revenue-metrics>div{padding:16px;border-radius:17px;background:#f3f8fa}.provider-revenue-metrics span{display:block;color:#6d838f;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.provider-revenue-metrics strong{display:block;margin-top:7px;color:#102f43;font-size:1.22rem}.provider-goal{margin-top:18px}.provider-goal>div:first-child{display:flex;justify-content:space-between;gap:18px;margin-bottom:8px;color:#334f5e}.provider-goal>div:last-child{height:10px;border-radius:999px;background:#e5eef2;overflow:hidden}.provider-goal i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1971c2,#12a19b)}.provider-revenue-chart{display:flex;align-items:flex-end;gap:13px;height:188px;padding:22px 6px 0}.provider-revenue-chart>div{height:100%;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px}.provider-revenue-chart span{width:min(35px,75%);min-height:4px;border-radius:9px 9px 3px 3px;background:linear-gradient(180deg,#18a6a0,#1971c2);transition:height .25s ease}.provider-revenue-chart small{font-size:.72rem;color:#738691;font-weight:800}
.provider-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.provider-dashboard-grid .dashboard-panel{min-width:0}.provider-dashboard-grid .dashboard-panel-wide{grid-column:1/-1}.provider-booking-list .dashboard-booking{grid-template-columns:64px minmax(0,1fr) auto}.provider-request-list a>div{display:flex;flex-direction:column;gap:3px}.provider-request-list small{color:#7a8e98}.provider-review-list{display:grid;gap:11px}.provider-review-list article{padding:16px;border:1px solid #e3ecef;border-radius:17px;background:#fbfdfe}.provider-review-list article>div,.provider-review-list footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.provider-review-list article>div strong{color:#f0a202;letter-spacing:.04em}.provider-review-list article>div strong span{color:#ced9dd}.provider-review-list h3{font-size:.98rem;margin:10px 0 5px;color:#183a4d}.provider-review-list p{color:#657d89;font-size:.88rem;line-height:1.55}.provider-review-list footer{margin-top:10px;font-size:.78rem;color:#718691}.provider-review-list footer b{padding:4px 8px;border-radius:999px;background:#e9f7f5;color:#087b76}.activity-review{background:#f0a202}.provider-performance-section{margin-top:18px;padding:24px;border:1px solid #dfeaf0;border-radius:24px;background:#fff;box-shadow:0 12px 35px rgba(19,61,82,.07)}.provider-performance-table{display:grid;margin-top:18px;overflow:auto;border:1px solid #e1eaee;border-radius:18px}.provider-performance-row{display:grid;grid-template-columns:minmax(220px,1.8fr) repeat(5,minmax(95px,.65fr));align-items:center;min-width:810px;padding:14px 18px;border-bottom:1px solid #e7eef1;color:#375260}.provider-performance-row:last-child{border-bottom:0}.provider-performance-row:not(.provider-performance-head):hover{background:#f3faf9}.provider-performance-row>span:not(:first-child){text-align:center;font-weight:800}.provider-performance-row>span:first-child{display:flex;flex-direction:column;gap:3px}.provider-performance-row strong{color:#17394c}.provider-performance-row small{color:#758a95}.provider-performance-head{background:#f2f7f9;color:#6a808b;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.provider-dashboard-preferences form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.provider-dashboard-preferences .check{align-self:center}
@media(max-width:1180px){.provider-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.provider-account-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.provider-revenue-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.provider-dashboard-hero{grid-template-columns:1fr}.provider-hero-score{align-items:flex-start;text-align:left;min-height:auto}.provider-business-overview,.provider-dashboard-grid{grid-template-columns:1fr}.provider-dashboard-grid .dashboard-panel-wide{grid-column:auto}.provider-dashboard-preferences form{grid-template-columns:1fr}}
@media(max-width:680px){.provider-dashboard-hero{padding:25px 20px;border-radius:22px}.provider-dashboard-hero h1{font-size:2.15rem}.provider-quick-actions{display:grid;grid-template-columns:1fr}.provider-account-strip,.provider-stat-grid{grid-template-columns:1fr 1fr}.provider-account-strip>div,.provider-stat-grid>a{padding:16px}.provider-stat-grid strong{font-size:1.65rem}.provider-business-overview{gap:14px}.provider-revenue-card,.provider-trend-card,.provider-performance-section{padding:18px;border-radius:20px}.provider-revenue-metrics{grid-template-columns:1fr 1fr}.provider-revenue-chart{height:160px}.provider-booking-list .dashboard-booking{grid-template-columns:54px minmax(0,1fr)}.provider-booking-list .dashboard-status{grid-column:2}.provider-performance-section{margin-left:0;margin-right:0}}
@media(max-width:430px){.provider-account-strip,.provider-stat-grid,.provider-revenue-metrics{grid-template-columns:1fr}.provider-account-strip>div{min-height:auto}.provider-revenue-chart{gap:7px}.provider-revenue-chart span{width:24px}}

/* Bloque 11 · Favoritos, profesionales guardados y colecciones */
.saved-page{max-width:1560px}.saved-hero{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:28px;align-items:center;padding:34px;border-radius:28px;background:linear-gradient(135deg,#202059 0%,#3d42a8 54%,#157fb3 100%);color:#fff;box-shadow:0 24px 60px rgba(32,32,89,.2);position:relative;overflow:hidden}.saved-hero:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-105px;top:-135px;background:rgba(255,255,255,.09)}.saved-hero>div{position:relative;z-index:1}.saved-hero .status-pill{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.22)}.saved-hero h1{font-size:clamp(2rem,4vw,3.35rem);line-height:1.04;max-width:840px;margin:14px 0 12px;letter-spacing:-.045em}.saved-hero p{max-width:760px;color:rgba(255,255,255,.83);line-height:1.65}.saved-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.saved-hero .btn-secondary{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.28);color:#fff}.saved-summary-ring{min-height:174px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.1);border-radius:26px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;backdrop-filter:blur(7px)}.saved-summary-ring strong{font-size:3.8rem;line-height:1}.saved-summary-ring span{font-weight:850;margin-top:8px}.saved-summary-ring small{margin-top:9px;color:rgba(255,255,255,.74)}
.saved-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.saved-stat-grid article{padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(28,56,105,.06)}.saved-stat-grid span,.saved-stat-grid small{display:block;color:#73819a}.saved-stat-grid span{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.saved-stat-grid strong{display:block;font-size:2rem;margin:7px 0;color:#202059}.saved-layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:18px;align-items:start}.saved-sidebar-panel,.saved-alert-panel,.saved-section{border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 12px 35px rgba(28,56,105,.06)}.saved-sidebar-panel{position:sticky;top:92px;padding:20px}.saved-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.saved-panel-heading h2{margin:0;font-size:1.25rem}.saved-panel-heading>span{color:var(--muted);font-size:.8rem;text-align:right}.collection-list{display:grid;gap:6px;margin-top:16px}.collection-list a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;border-radius:12px;color:#51607a}.collection-list a:hover,.collection-list a.active{background:#eef2ff;color:#383fa1;text-decoration:none}.collection-list strong{min-width:28px;padding:3px 7px;border-radius:999px;background:#fff;border:1px solid #dce3f4;text-align:center;font-size:.75rem}.saved-collection-form{display:grid;gap:11px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.saved-collection-form h3{margin:0}.saved-collection-form .field input{padding:11px}.collection-manage-card{margin-top:12px;border:1px solid #e4e9f4;border-radius:14px;padding:11px}.collection-manage-card summary{cursor:pointer;color:#40506d;font-weight:800;font-size:.84rem}.collection-manage-card form{display:grid;gap:9px;margin-top:12px}.collection-manage-card .field input{padding:10px}.link-danger,.saved-remove{border:0;background:transparent;color:#b33249;font-weight:850;cursor:pointer;padding:7px 0}.saved-content{display:grid;gap:18px;min-width:0}.saved-alert-panel,.saved-section{padding:22px}.saved-alert-list{display:grid;gap:9px;margin-top:16px}.saved-alert-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid #e4e9f4;border-radius:15px;background:#fbfcff}.saved-alert-list article.unread{border-color:#aeb8ef;background:#f3f4ff}.saved-alert-list strong,.saved-alert-list p,.saved-alert-list small{display:block}.saved-alert-list p{margin:5px 0;color:#586782}.saved-alert-list small{color:#8390a5}.saved-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:4px 3px}.saved-toolbar h2{margin:0}.saved-tabs{display:flex;gap:6px;padding:5px;border:1px solid var(--line);border-radius:14px;background:#fff}.saved-tabs a{padding:9px 13px;border-radius:10px;color:#66738b;font-size:.84rem}.saved-tabs a.active{background:#eef2ff;color:#383fa1}.saved-tabs a:hover{text-decoration:none}.saved-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:18px}.saved-service-card{display:grid;grid-template-columns:180px minmax(0,1fr);border:1px solid #e2e7f2;border-radius:20px;overflow:hidden;background:#fff}.saved-service-card.saved-unavailable{opacity:.8}.saved-card-media{position:relative;min-height:100%;background:#edf2fb;overflow:hidden}.saved-card-media>img{width:100%;height:100%;object-fit:cover;display:block}.saved-card-media>span{height:100%;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#73819a}.saved-card-media>span img{width:50px}.saved-card-media em,.saved-provider-head em{display:inline-flex;padding:5px 8px;border-radius:999px;background:#edf1ff;color:#3c45a4;font-size:.7rem;font-style:normal;font-weight:850}.saved-card-media em{position:absolute;left:10px;top:10px;background:rgba(255,255,255,.94)}.saved-card-body{padding:17px;min-width:0}.saved-card-status{display:flex;justify-content:space-between;gap:8px;color:#6d7890;font-size:.73rem;font-weight:800;text-transform:uppercase}.saved-card-status b{padding:4px 7px;border-radius:999px;text-transform:none}.status-published{background:#e9f8f1;color:#0d8057}.status-paused,.status-draft{background:#fff5da;color:#926300}.status-archived{background:#edf0f5;color:#657086}.saved-card-body h3{margin:12px 0 7px;font-size:1.08rem}.saved-card-body>p{color:#69768d;line-height:1.5;font-size:.87rem}.saved-provider-line{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-top:1px solid #edf0f6}.saved-provider-line span{font-size:.76rem;color:#77849a}.saved-price-line{display:flex;align-items:end;justify-content:space-between;gap:14px}.saved-price-line span{font-size:.74rem;color:#77849a}.saved-price-line strong{font-size:1.1rem}.saved-edit-details{margin-top:12px;border-top:1px solid #edf0f6;padding-top:11px}.saved-edit-details summary{cursor:pointer;color:#394399;font-size:.82rem;font-weight:850}.saved-edit-details form{display:grid;gap:10px;margin-top:12px}.saved-edit-details textarea{width:100%;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:11px;font:inherit}.saved-remove{font-size:.8rem;margin-top:7px}.saved-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:18px}.saved-provider-card{padding:19px;border:1px solid #e2e7f2;border-radius:20px;background:#fff}.saved-provider-head{display:grid;grid-template-columns:66px minmax(0,1fr) auto;gap:13px;align-items:center}.saved-provider-avatar{width:66px;height:66px;border-radius:19px;overflow:hidden;background:linear-gradient(135deg,#4152b8,#1689b4);color:#fff;display:grid;place-items:center;font-size:1.15rem}.saved-provider-avatar img{width:100%;height:100%;object-fit:cover}.saved-provider-head h3{margin:5px 0 2px}.saved-provider-head p{margin:0;color:#6d7890;font-size:.82rem}.saved-provider-head>b{padding:5px 8px;border-radius:999px;font-size:.7rem}.availability-available{background:#e9f8f1;color:#0d8057}.availability-busy{background:#fff3d2;color:#8d6407}.availability-offline{background:#edf0f5;color:#657086}.saved-provider-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.saved-provider-stats span{padding:10px;border-radius:13px;background:#f6f8fc;color:#77849a;font-size:.7rem;text-align:center}.saved-provider-stats strong{display:block;color:#273050;font-size:.93rem}.saved-private-note{padding:11px;border-left:3px solid #6671d8;background:#f4f5ff;border-radius:0 12px 12px 0;color:#59647e;font-size:.82rem}.saved-provider-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}.inline-alert{display:flex;flex-direction:column;gap:4px;padding:14px 17px;margin-bottom:16px;border-radius:14px}.inline-alert.danger{background:#fff0f2;border:1px solid #f0c2ca;color:#a6273b}
@media(max-width:1250px){.saved-card-grid,.saved-provider-grid{grid-template-columns:1fr}.saved-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){.saved-hero{grid-template-columns:1fr}.saved-summary-ring{align-items:flex-start;text-align:left;min-height:auto}.saved-layout{grid-template-columns:1fr}.saved-sidebar-panel{position:static}.saved-toolbar{align-items:flex-start;flex-direction:column}}@media(max-width:680px){.saved-hero{padding:24px 20px;border-radius:22px}.saved-hero h1{font-size:2.15rem}.saved-stat-grid{grid-template-columns:1fr 1fr}.saved-service-card{grid-template-columns:1fr}.saved-card-media{min-height:190px}.saved-provider-head{grid-template-columns:58px minmax(0,1fr)}.saved-provider-head>b{grid-column:2;justify-self:start}.saved-provider-avatar{width:58px;height:58px}.saved-provider-stats{grid-template-columns:1fr}.saved-alert-list article{align-items:flex-start;flex-direction:column}.saved-tabs{width:100%;overflow:auto}.saved-tabs a{flex:1;text-align:center;white-space:nowrap}}@media(max-width:430px){.saved-stat-grid{grid-template-columns:1fr}.saved-hero-actions{display:grid}.saved-provider-actions{align-items:flex-start;flex-direction:column}}

/* Bloque 12 · Centro de notificaciones y recordatorios */
.notifications-page{max-width:1560px}.notifications-hero{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:28px;align-items:center;padding:34px;border-radius:28px;background:linear-gradient(135deg,#15265f 0%,#274eb0 54%,#168eaa 100%);color:#fff;box-shadow:0 24px 60px rgba(27,55,123,.2);position:relative;overflow:hidden}.notifications-hero:after{content:"";position:absolute;width:310px;height:310px;border-radius:50%;right:-120px;top:-155px;background:rgba(255,255,255,.09)}.notifications-hero>div{position:relative;z-index:1}.notifications-hero .status-pill{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.24)}.notifications-hero h1{font-size:clamp(2rem,4vw,3.35rem);line-height:1.04;max-width:850px;margin:14px 0 12px;letter-spacing:-.045em}.notifications-hero p{max-width:760px;color:rgba(255,255,255,.84);line-height:1.65}.notifications-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.notifications-hero-actions form{margin:0}.notifications-hero .btn-secondary{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);color:#fff}.notifications-hero-count{min-height:174px;border:1px solid rgba(255,255,255,.23);background:rgba(255,255,255,.1);border-radius:26px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;backdrop-filter:blur(7px)}.notifications-hero-count strong{font-size:3.8rem;line-height:1}.notifications-hero-count span{font-weight:850;margin-top:8px}.notifications-hero-count small{margin-top:9px;color:rgba(255,255,255,.76)}
.notification-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.notification-stat-grid article{padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(28,56,105,.06)}.notification-stat-grid span,.notification-stat-grid small{display:block;color:#73819a}.notification-stat-grid span{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.notification-stat-grid strong{display:block;font-size:2rem;margin:7px 0;color:#1d316f}.notifications-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start}.notification-filter-panel,.notification-list-panel,.notification-preferences-panel{border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 12px 35px rgba(28,56,105,.06)}.notification-filter-panel{position:sticky;top:92px;padding:20px}.notification-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.notification-panel-heading h2{margin:0;font-size:1.3rem}.notification-panel-heading>span{color:var(--muted);font-size:.8rem;text-align:right}.notification-filter-list{display:grid;gap:6px;margin-top:16px}.notification-filter-list a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;color:#56657f}.notification-filter-list a:hover,.notification-filter-list a.active{background:#edf3ff;color:#234ca4;text-decoration:none}.notification-filter-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#f4f6fb;font-weight:900}.notification-status-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:18px;padding:5px;border:1px solid var(--line);border-radius:13px}.notification-status-tabs a{text-align:center;padding:8px 4px;border-radius:9px;color:#6c7890;font-size:.76rem}.notification-status-tabs a.active{background:#eaf1ff;color:#214ca8}.notification-status-tabs a:hover{text-decoration:none}.notification-quiet-note{display:grid;gap:4px;margin-top:16px;padding:13px;border-radius:14px;background:#fff7dc;border:1px solid #f2dda0;color:#795912}.notification-quiet-note span{font-size:.78rem;line-height:1.45}.notification-main-column{display:grid;gap:18px;min-width:0}.notification-list-panel,.notification-preferences-panel{padding:22px}.notification-list-heading{padding-bottom:16px;border-bottom:1px solid #edf0f6}.notification-list{display:grid;gap:10px;margin-top:16px}.notification-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;padding:17px;border:1px solid #e3e8f2;border-radius:18px;background:#fff;transition:.2s ease}.notification-card.unread{background:#f7f9ff;border-color:#b8c7ec;box-shadow:0 9px 25px rgba(44,79,157,.07)}.notification-card.priority-high{border-left:4px solid #da435a}.notification-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:#eef3ff;color:#2852ad;font-weight:950;font-size:1.15rem}.notification-icon.category-payments{background:#e8f8f1;color:#087a53}.notification-icon.category-appointments{background:#fff3dd;color:#946510}.notification-icon.category-reviews{background:#fff5cf;color:#9d7005}.notification-icon.category-saved{background:#f3ebff;color:#7440a4}.notification-icon.category-requests{background:#e8f7fb;color:#10758f}.notification-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:.72rem;color:#77849a}.notification-meta>span{font-weight:850;text-transform:uppercase;letter-spacing:.06em}.notification-meta strong{padding:3px 7px;border-radius:999px;background:#ffe9ed;color:#b22b43}.notification-meta time{margin-left:auto}.notification-copy h3{margin:7px 0 5px;font-size:1.05rem;color:#263456}.notification-copy>p{margin:0;color:#65738a;line-height:1.52}.notification-card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:12px}.notification-card-actions form{margin:0}.notification-read-label{font-size:.78rem;color:#7c899d;font-weight:800}.notification-empty{padding:52px 20px}.notification-empty-icon{width:62px;height:62px;margin:0 auto 14px;border-radius:20px;display:grid;place-items:center;background:#e8f8f1;color:#087a53;font-size:1.55rem;font-weight:950}.notification-preferences-form{display:grid;gap:18px;margin-top:18px}.notification-preference-section{padding:18px;border:1px solid #e3e8f2;border-radius:18px;background:#fbfcff}.notification-preference-section h3{margin:0 0 14px;color:#29385d}.notification-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.notification-toggle-card{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid #dfe5f1;border-radius:14px;background:#fff;cursor:pointer}.notification-toggle-card input{margin-top:3px}.notification-toggle-card span{display:grid;gap:4px}.notification-toggle-card small{color:#738098;line-height:1.4}.browser-permission-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px}.browser-permission-row span{font-size:.8rem;color:#6f7c92}.notification-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.notification-category-grid .check{padding:11px 12px;border:1px solid #e2e7f1;border-radius:12px;background:#fff}.notification-time-grid{max-width:420px;margin-top:12px}.notification-disclaimer{display:grid;gap:4px;padding:14px 16px;border-radius:14px;background:#eef5ff;border:1px solid #c9daf5;color:#415578}.notification-disclaimer span{font-size:.82rem;line-height:1.5}.notification-nav-count{margin-left:4px}.topbar-nav .notification-nav-count{display:inline-grid;place-items:center;min-width:19px;height:19px}.topbar-nav .notification-nav-count[hidden]{display:none}
@media(max-width:1250px){.notification-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-toggle-grid{grid-template-columns:1fr}}
@media(max-width:960px){.notifications-hero{grid-template-columns:1fr}.notifications-hero-count{align-items:flex-start;text-align:left;min-height:auto}.notifications-layout{grid-template-columns:1fr}.notification-filter-panel{position:static}.notification-filter-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.notifications-hero{padding:24px 20px;border-radius:22px}.notifications-hero h1{font-size:2.15rem}.notification-stat-grid{grid-template-columns:1fr 1fr}.notification-filter-list,.notification-category-grid{grid-template-columns:1fr}.notification-card{grid-template-columns:40px minmax(0,1fr);padding:14px}.notification-icon{width:40px;height:40px;border-radius:12px}.notification-meta time{width:100%;margin-left:0}.notification-panel-heading{flex-direction:column}.notification-panel-heading>span{text-align:left}.notifications-hero-actions{display:grid}.notifications-hero-actions form,.notifications-hero-actions .btn{width:100%}}
@media(max-width:430px){.notification-stat-grid{grid-template-columns:1fr}.notification-status-tabs{grid-template-columns:1fr}.notification-card-actions{align-items:stretch;flex-direction:column}.notification-card-actions .btn,.notification-card-actions form{width:100%}.notification-card-actions button{width:100%}}

/* Bloque 13 · Historial de servicios y contrataciones */
.history-page,.history-detail-page{max-width:1560px}.history-hero,.history-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:32px;border-radius:28px;background:linear-gradient(135deg,#14285f 0%,#214ca8 52%,#168b9e 100%);color:#fff;box-shadow:0 24px 60px rgba(27,55,123,.2)}.history-hero h1,.history-detail-hero h1{font-size:clamp(2rem,4vw,3.2rem);margin:7px 0 10px;letter-spacing:-.045em}.history-hero p,.history-detail-hero p{max-width:760px;color:rgba(255,255,255,.84);line-height:1.6}.history-hero-actions{display:flex;flex-wrap:wrap;gap:10px}.history-hero .btn-secondary,.history-detail-hero .btn-secondary{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);color:#fff}.history-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.history-stat-grid article{padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(28,56,105,.06)}.history-stat-grid span,.history-stat-grid small{display:block;color:#73819a}.history-stat-grid span{font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.history-stat-grid strong{display:block;font-size:1.85rem;margin:7px 0;color:#1d316f}.history-filter-panel,.history-results-panel{margin-top:18px}.history-filter-form{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:end}.history-search-field{grid-column:span 2}.history-filter-form .btn{min-height:46px}.history-record-list{display:grid;gap:14px}.history-record-card{display:grid;grid-template-columns:150px minmax(0,1fr);overflow:hidden;border:1px solid #e0e7f2;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(29,58,109,.06)}.history-record-cover{display:grid;place-items:center;min-height:170px;background:linear-gradient(135deg,#e8f1ff,#edf0ff);color:#2452a5;font-size:2rem;font-weight:950}.history-record-cover img{width:100%;height:100%;object-fit:cover}.history-record-content{display:grid;gap:13px;padding:18px}.history-record-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.history-record-heading h3{margin:4px 0 4px;font-size:1.18rem}.history-record-heading h3 a{color:#243454}.history-record-heading p{margin:0;color:#6d7b91}.history-category{font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;color:#2b59b1;font-weight:900}.history-record-meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:#66758a;font-size:.78rem}.history-record-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding-top:11px;border-top:1px solid #eef1f6}.history-process-badges{display:flex;flex-wrap:wrap;gap:7px}.mini-process-badge{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;background:#edf1f7;color:#5e6d82;font-size:.67rem;font-weight:850}.mini-process-badge.done{background:#dff7ec;color:#0a7353}.mini-process-badge.pending{background:#fff2d9;color:#8a5c0c}.mini-process-badge.muted{background:#f1f3f7;color:#7d8797}.history-record-amount{display:grid;justify-items:end;gap:4px}.history-record-amount strong{font-size:1.25rem;color:#203e7a}.history-record-amount a{font-size:.76rem;font-weight:850}.history-pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:20px}.history-pagination a{display:grid;place-items:center;min-width:38px;height:38px;padding:0 10px;border:1px solid #dce4ef;border-radius:10px;color:#52647f}.history-pagination a.active{background:#1c61d6;border-color:#1c61d6;color:#fff}.history-status.status-completed,.status-completed{background:#ddf7eb;color:#08734f}.history-status.status-cancelled,.status-cancelled{background:#ffe6eb;color:#a52542}.history-status.status-confirmed,.status-confirmed{background:#e1edff;color:#2456ae}.history-status.status-reschedule_pending,.status-reschedule_pending{background:#fff1d5;color:#8d5a05}.history-status.status-no_show,.status-no_show{background:#ececf2;color:#5f6472}
.history-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.history-detail-toolbar>a{font-weight:850}.history-detail-hero-status{display:grid;justify-items:end;gap:12px}.history-detail-hero-status .status-pill{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.26)}.history-detail-hero-status strong{font-size:2rem}.history-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start;margin-top:18px}.history-detail-main,.history-detail-aside{display:grid;gap:18px}.history-detail-aside{position:sticky;top:92px}.history-fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.history-fact-grid>div,.history-financial-grid>div{padding:14px;border:1px solid #e3e8f2;border-radius:15px;background:#fbfcff}.history-fact-grid span,.history-fact-grid small,.history-financial-grid span{display:block;color:#718097;font-size:.72rem}.history-fact-grid strong,.history-financial-grid strong{display:block;margin:5px 0;color:#2b3b5d}.history-private-location{margin-top:14px;padding:14px;border-radius:14px;background:#eef5ff;border:1px solid #cddcf3}.history-private-location p{margin:5px 0}.history-private-location small{color:#64748b}.history-timeline{position:relative;display:grid;gap:0;padding-left:18px}.history-timeline:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;background:#d9e4f3}.history-timeline-event{position:relative;padding:0 0 20px 22px}.history-timeline-dot{position:absolute;left:-18px;top:5px;width:12px;height:12px;border-radius:50%;background:#2465d5;border:3px solid #eaf2ff;box-shadow:0 0 0 2px #a9c5ef}.history-timeline-event time{color:#7b879a;font-size:.68rem}.history-timeline-event h3{margin:4px 0;font-size:.93rem}.history-timeline-event p{margin:0 0 6px;color:#68758a;font-size:.78rem}.history-copy-block{padding:14px 0;border-top:1px solid #edf0f5}.history-copy-block:first-of-type{border-top:0}.history-copy-block p{margin:6px 0 0;line-height:1.6;color:#5b6b82}.history-addon-list{display:flex;flex-wrap:wrap;gap:8px;padding-top:14px;border-top:1px solid #edf0f5}.history-addon-list>strong{width:100%}.history-addon-list span{padding:7px 9px;border-radius:10px;background:#f0f4fa;color:#53657d;font-size:.75rem}.history-quote-list{display:grid;gap:12px}.history-quote-list>article{padding:16px;border:1px solid #dfe6f0;border-radius:16px;background:#fbfcff}.history-quote-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.history-quote-heading>div{display:grid;gap:4px}.history-quote-heading>div:last-child{justify-items:end}.history-quote-heading span{color:#728096;font-size:.7rem}.history-quote-items{display:grid;gap:6px;margin:13px 0;padding:11px 0;border-top:1px solid #e5eaf2;border-bottom:1px solid #e5eaf2}.history-quote-items span{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.76rem}.history-quote-items small{color:#748197}.history-financial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.history-document-list,.history-invoice-summary{display:grid;gap:8px;margin-top:14px;padding:14px;border-radius:14px;background:#f7f9fc}.history-document-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #e4e8ef}.history-document-list a:first-of-type{border-top:0}.history-document-list small{color:#748197}.history-invoice-summary span{color:#66758b}.history-progress-steps{display:grid;gap:9px;margin-top:16px}.history-progress-steps span{position:relative;padding:9px 12px 9px 34px;border-radius:11px;background:#f2f4f8;color:#718096;font-size:.78rem;font-weight:800}.history-progress-steps span:before{content:"○";position:absolute;left:12px}.history-progress-steps span.done{background:#e7f7ef;color:#08704f}.history-progress-steps span.done:before{content:"✓"}.history-note-card p{color:#6e7c91;font-size:.8rem}.history-note-card small{color:#75839a}.history-links-card{display:grid;gap:8px}.history-links-card h2{margin-bottom:8px}.history-links-card a{padding:10px 11px;border:1px solid #e1e7f0;border-radius:11px;background:#fafbfe;color:#344a70;font-size:.78rem;font-weight:850}
@media(max-width:1250px){.history-filter-form{grid-template-columns:repeat(3,minmax(0,1fr))}.history-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-detail-grid{grid-template-columns:minmax(0,1fr) 300px}.history-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){.history-hero,.history-detail-hero{align-items:flex-start;flex-direction:column}.history-detail-grid{grid-template-columns:1fr}.history-detail-aside{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.history-note-card{grid-column:1/-1}.history-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.history-hero,.history-detail-hero{padding:24px 20px;border-radius:22px}.history-hero h1,.history-detail-hero h1{font-size:2.1rem}.history-stat-grid{grid-template-columns:1fr 1fr}.history-filter-form{grid-template-columns:1fr}.history-search-field{grid-column:auto}.history-record-card{grid-template-columns:1fr}.history-record-cover{min-height:190px}.history-record-heading,.history-record-footer,.history-detail-toolbar{align-items:flex-start;flex-direction:column}.history-record-amount{justify-items:start}.history-fact-grid,.history-financial-grid,.history-detail-aside{grid-template-columns:1fr}.history-detail-hero-status{justify-items:start}.history-quote-heading{flex-direction:column}.history-quote-heading>div:last-child{justify-items:start}.history-quote-items span{align-items:flex-start;flex-direction:column}.history-hero-actions{display:grid;width:100%}.history-hero-actions .btn{width:100%}}
@media(max-width:430px){.history-stat-grid{grid-template-columns:1fr}.history-record-content{padding:15px}.history-record-meta{display:grid}}

/* Bloque 14 · Cancelaciones, reembolsos y reprogramaciones */
.cancellation-center-page,.cancellation-request-page,.cancellation-detail-page{max-width:1560px}.cancellation-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.cancellation-stats article{padding:19px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:0 10px 28px rgba(28,56,105,.06)}.cancellation-stats span,.cancellation-stats small{display:block;color:#728198}.cancellation-stats strong{display:block;margin:6px 0;font-size:1.75rem;color:#203d78}.cancellation-layout,.cancellation-detail-layout,.cancellation-request-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px;align-items:start}.cancellation-main-column,.cancellation-side-column,.cancellation-detail-main,.cancellation-detail-side,.cancellation-request-main,.cancellation-request-side{display:grid;gap:18px}.cancellation-side-column,.cancellation-detail-side,.cancellation-request-side{position:sticky;top:92px}.change-appointment-list,.case-list{display:grid;gap:12px}.change-appointment-card,.case-card{display:grid;gap:12px;padding:16px;border:1px solid #dfe6f1;border-radius:17px;background:#fbfcff}.change-appointment-card h3,.case-card h3{margin:0}.change-appointment-meta,.case-meta{display:flex;flex-wrap:wrap;gap:7px 13px;color:#6f7e94;font-size:.76rem}.change-appointment-actions,.case-card-actions{display:flex;flex-wrap:wrap;gap:8px}.case-card-top,.history-cancellation-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.case-card-top>div,.history-cancellation-heading>div{display:grid;gap:4px}.case-status{display:inline-flex;align-items:center;width:max-content;padding:6px 9px;border-radius:999px;background:#eef2f7;color:#5d6a7e;font-size:.68rem;font-weight:900;text-transform:capitalize}.case-status-submitted,.case-status-under_review{background:#fff0d4;color:#855703}.case-status-approved,.case-status-partially_approved,.case-status-refund_pending{background:#e1eeff;color:#2056ad}.case-status-resolved{background:#dff7ec;color:#08704f}.case-status-rejected,.case-status-disputed{background:#ffe3e9;color:#9d2943}.case-status-withdrawn{background:#eceef3;color:#626b7b}.history-filter-inline{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.history-filter-inline .field{min-width:190px}.reschedule-summary-list,.case-money-list{display:grid;gap:9px}.reschedule-summary-list article,.case-money-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #e8edf4}.reschedule-summary-list article:last-child,.case-money-list>div:last-child{border-bottom:0}.reschedule-summary-list small,.case-money-list span{color:#738198}.policy-editor{display:grid;gap:13px}.input-suffix,.input-prefix{display:flex;align-items:center;border:1px solid var(--line);border-radius:13px;background:#fbfdff;overflow:hidden}.input-suffix input,.input-prefix input{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}.input-suffix span,.input-prefix span{padding:0 13px;color:#64748b;font-weight:800}.process-list{display:grid;gap:10px}.process-list li{position:relative;padding-left:28px;color:#5f6e84;line-height:1.5}.process-list li:before{content:"✓";position:absolute;left:0;top:0;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#e1f6ed;color:#097252;font-size:.68rem;font-weight:900}.refund-estimate-card{padding:20px;border-radius:20px;background:linear-gradient(135deg,#e8f2ff,#ecfbf7);border:1px solid #cddff2}.refund-estimate-card strong{display:block;font-size:2rem;color:#1f4f9d;margin:5px 0}.policy-readonly{display:grid;gap:8px}.policy-readonly>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #e8edf4}.policy-readonly>div:last-child{border-bottom:0}.info-callout,.transparency-note,.refund-status-callout{padding:13px 15px;border-radius:14px;background:#edf5ff;border:1px solid #cfdef3;color:#365777;line-height:1.5}.refund-status-callout{margin-top:13px;background:#fff6df;border-color:#ecd79b;color:#76540d}.case-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.case-overview-grid>div{padding:13px;border:1px solid #e2e8f1;border-radius:14px;background:#fbfcff}.case-overview-grid span,.case-overview-grid small{display:block;color:#758398;font-size:.72rem}.case-overview-grid strong{display:block;margin:4px 0;color:#2a3e62}.decision-note{padding:14px;border-radius:14px;background:#f4f6fa;border-left:4px solid #6e83a8}.refund-process-card{display:grid;gap:14px;border-color:#cfdcf0}.refund-amount-display{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:16px;border-radius:15px;background:#edf5ff}.refund-amount-display strong{font-size:1.8rem;color:#1c4f9e}.refund-file-list,.history-refund-files{display:flex;flex-wrap:wrap;gap:8px}.refund-file-list a,.history-refund-files a{padding:7px 10px;border:1px solid #dbe4f0;border-radius:10px;background:#fff;font-size:.75rem;font-weight:800}.case-timeline{position:relative;display:grid;gap:0;padding-left:18px}.case-timeline:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;background:#d9e4f3}.case-timeline article{position:relative;padding:0 0 18px 22px}.case-timeline article:before{content:"";position:absolute;left:-18px;top:5px;width:12px;height:12px;border-radius:50%;background:#2465d5;border:3px solid #eaf2ff}.case-timeline time{font-size:.68rem;color:#77859a}.case-timeline h3{margin:4px 0;font-size:.92rem}.case-timeline p{margin:0;color:#69768a}.policy-snapshot-card{display:grid;gap:8px}.policy-snapshot-card dl{display:grid;grid-template-columns:1fr auto;gap:8px 14px}.policy-snapshot-card dt{color:#6c7a90}.policy-snapshot-card dd{margin:0;font-weight:850}.danger-zone{border-color:#f1c7cf;background:#fffafb}.danger-zone h2{color:#9c2942}.history-cancellation-list{display:grid;gap:12px}.history-cancellation-item{display:grid;gap:10px;padding:15px;border:1px solid #dfe7f1;border-radius:16px;background:#fbfcff}.history-cancellation-item p{margin:0;color:#5d6c82}.history-cancellation-money{display:flex;flex-wrap:wrap;gap:8px}.history-cancellation-money span{padding:7px 9px;border-radius:10px;background:#eef3fa;color:#627188;font-size:.75rem}.history-cancellation-item>small{color:#6f7e93}.text-link{font-weight:850;font-size:.78rem}.cancellation-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cancellation-form-grid .field-full{grid-column:1/-1}
@media(max-width:1180px){.cancellation-layout,.cancellation-detail-layout,.cancellation-request-layout{grid-template-columns:minmax(0,1fr) 310px}.case-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:920px){.cancellation-layout,.cancellation-detail-layout,.cancellation-request-layout{grid-template-columns:1fr}.cancellation-side-column,.cancellation-detail-side,.cancellation-request-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.cancellation-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.cancellation-side-column,.cancellation-detail-side,.cancellation-request-side,.cancellation-form-grid,.case-overview-grid{grid-template-columns:1fr}.cancellation-stats{grid-template-columns:1fr 1fr;gap:9px}.case-card-top,.history-cancellation-heading,.refund-amount-display{align-items:flex-start;flex-direction:column}.change-appointment-actions,.case-card-actions{display:grid}.change-appointment-actions .btn,.case-card-actions .btn{width:100%}.history-filter-inline{display:grid}.history-filter-inline .field{min-width:0}.policy-snapshot-card dl{grid-template-columns:1fr}.policy-snapshot-card dd{margin-bottom:7px}}
@media(max-width:430px){.cancellation-stats{grid-template-columns:1fr}.history-cancellation-money{display:grid}}
.case-status-pending_provider,.case-status-sent{background:#fff0d4;color:#855703}.case-status-confirmed{background:#dff7ec;color:#08704f}.case-status-cancelled{background:#eceef3;color:#626b7b}.case-status-warning{background:#fff0d4;color:#855703}.case-status-info{background:#e1eeff;color:#2056ad}.case-status-success{background:#dff7ec;color:#08704f}.case-status-danger{background:#ffe3e9;color:#9d2943}.case-status-muted{background:#eceef3;color:#626b7b}

/* Bloque 15 · Soporte, reportes y disputas */
.support-center-page,.support-form-page,.support-detail-page{max-width:1560px}.support-hero,.support-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px;border-radius:26px;background:linear-gradient(135deg,#0d56c9,#1686d8 60%,#16a89b);color:#fff;box-shadow:0 20px 50px rgba(20,82,170,.22)}.support-hero h1,.support-detail-hero h1{margin:4px 0 8px;color:#fff;font-size:2.55rem}.support-hero p,.support-detail-hero p{max-width:760px;margin:0;color:rgba(255,255,255,.88)}.support-hero .eyebrow,.support-detail-hero .eyebrow{color:#d9f7ff}.support-hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.support-hero-actions .btn-primary{background:#fff;color:#1558b8}.support-hero-actions .btn-secondary{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.12);color:#fff}.support-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.support-stat-grid article{padding:19px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:0 10px 28px rgba(28,56,105,.06)}.support-stat-grid span,.support-stat-grid small{display:block;color:#728198}.support-stat-grid strong{display:block;margin:6px 0;font-size:1.8rem;color:#203d78}.support-filter-card{margin-bottom:18px}.support-filter-form{display:grid;grid-template-columns:minmax(240px,1fr) 180px 210px auto auto;gap:11px;align-items:end}.support-section{margin-bottom:18px}.support-case-list{display:grid;gap:12px}.support-case-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border:1px solid #dfe6f1;border-radius:17px;background:#fbfcff;transition:.18s ease}.support-case-card:hover{border-color:#b8cae3;box-shadow:0 10px 24px rgba(30,68,128,.07)}.support-case-main{min-width:0;display:grid;gap:5px}.support-case-main h3{margin:0;font-size:1.05rem}.support-case-main p{margin:0;color:#687890}.support-case-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.support-case-meta{display:flex;gap:7px 15px;flex-wrap:wrap;color:#748298;font-size:.74rem}.support-priority,.support-amount{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:.66rem;font-weight:900;background:#edf2f8;color:#5d6c81}.priority-high{background:#fff0d4;color:#855703}.priority-urgent{background:#ffe2e8;color:#9d2943}.priority-low{background:#eef0f4;color:#687386}.support-amount{background:#e0f6ec;color:#08704f}.support-eligible-card{margin-bottom:18px}.support-appointment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.support-appointment-grid article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid #e1e8f2;border-radius:15px;background:#fbfcff}.support-appointment-grid article>div{display:grid;gap:4px}.support-appointment-grid span{color:#748298;font-size:.75rem}.support-form-layout,.support-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px;align-items:start;margin-top:18px}.support-main-form,.support-reply-form,.support-admin-form{display:grid;gap:14px}.support-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.support-form-grid .field-full{grid-column:1/-1}.support-guide-card,.support-detail-side{position:sticky;top:92px}.support-guide-card h2{margin-top:3px}.support-detail-status{display:grid;justify-items:end;gap:8px}.support-detail-status .case-status{background:rgba(255,255,255,.19);color:#fff;border:1px solid rgba(255,255,255,.32)}.support-detail-main,.support-detail-side{display:grid;gap:18px}.support-thread{display:grid;gap:12px}.support-message{max-width:88%;padding:14px 16px;border-radius:17px 17px 17px 5px;background:#f0f4fa;border:1px solid #dde6f2}.support-message-own{margin-left:auto;border-radius:17px 17px 5px 17px;background:#e4efff;border-color:#c8dbf8}.support-message-internal{max-width:100%;background:#fff6dc;border-color:#ead79b}.support-message-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px}.support-message-head time{font-size:.68rem;color:#758399}.support-message p{margin:0;line-height:1.55;color:#40516d}.support-file-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.support-file-list a{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #d5e0ed;border-radius:10px;background:#fff;color:#315a96;font-size:.75rem;font-weight:800}.support-file-list-large{margin-top:18px}.support-file-list-large a{padding:11px 13px}.support-file-list a small{color:#77859a}.support-facts dl{display:grid;grid-template-columns:1fr auto;gap:9px 13px}.support-facts dt{color:#6d7b91}.support-facts dd{margin:0;text-align:right;font-weight:800;color:#2d405f}.support-report-body{padding:17px;border-radius:15px;background:#f7f9fc;border:1px solid #e0e7f0;color:#485872;line-height:1.65}.resolution-card{border-color:#bfe4d5;background:#f9fffc}.support-reply-form .check-row,.support-admin-form .check-row{margin:0}.support-admin-form .btn{width:100%}.support-dispute-summary{display:grid;gap:14px}.support-dispute-hero{background:linear-gradient(135deg,#193f8f,#5463ce 58%,#9756c8)}.support-dispute-card{border-left:4px solid #6258c7}.support-detail-side .case-timeline{max-height:500px;overflow:auto;padding-right:5px}.support-center-page .module-warning{margin-bottom:18px}
@media(max-width:1180px){.support-form-layout,.support-detail-layout{grid-template-columns:minmax(0,1fr) 310px}.support-filter-form{grid-template-columns:minmax(220px,1fr) 160px 190px auto}.support-filter-form .btn-link{grid-column:1/-1}}
@media(max-width:920px){.support-hero,.support-detail-hero{align-items:flex-start;flex-direction:column}.support-hero-actions{justify-content:flex-start}.support-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-form-layout,.support-detail-layout{grid-template-columns:1fr}.support-guide-card,.support-detail-side{position:static}.support-detail-side{grid-template-columns:repeat(2,minmax(0,1fr))}.support-detail-side>a{grid-column:1/-1}.support-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.support-filter-form .support-search{grid-column:1/-1}.support-appointment-grid{grid-template-columns:1fr}}
@media(max-width:640px){.support-hero,.support-detail-hero{padding:23px 19px;border-radius:22px}.support-hero h1,.support-detail-hero h1{font-size:2rem}.support-hero-actions{display:grid;width:100%}.support-hero-actions .btn{width:100%}.support-stat-grid{grid-template-columns:1fr 1fr;gap:9px}.support-filter-form,.support-form-grid,.support-detail-side{grid-template-columns:1fr}.support-filter-form .support-search,.support-form-grid .field-full{grid-column:auto}.support-case-card{align-items:flex-start;flex-direction:column}.support-case-card>.btn{width:100%}.support-message{max-width:100%}.support-detail-status{justify-items:start}.support-facts dl{grid-template-columns:1fr}.support-facts dd{text-align:left;margin-bottom:7px}.support-appointment-grid article{align-items:flex-start;flex-direction:column}}
@media(max-width:430px){.support-stat-grid{grid-template-columns:1fr}.support-case-meta{display:grid}.support-message-head{align-items:flex-start;flex-direction:column}.support-appointment-grid article .btn-link{width:100%}}

/* Bloque 16: planes y suscripciones */
.subscription-page,.subscription-admin-page{background:#f4f8ff}.subscription-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border:1px solid #d9e5f7;border-radius:24px;background:linear-gradient(135deg,#fff,#eef6ff 58%,#edf1ff);box-shadow:0 16px 38px rgba(24,66,133,.08)}.subscription-hero h1{margin:5px 0 10px;font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.05em}.subscription-hero p{max-width:720px;margin:0;color:var(--muted);line-height:1.6}.current-plan-card{min-width:220px;padding:22px;border-radius:20px;background:linear-gradient(145deg,#1268f3,#5d42dd);color:#fff;box-shadow:0 18px 40px rgba(50,77,183,.24)}.current-plan-card span,.current-plan-card strong,.current-plan-card small{display:block}.current-plan-card span{font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;opacity:.82}.current-plan-card strong{font-size:1.65rem;margin:7px 0}.current-plan-card small{line-height:1.45;opacity:.88}.subscription-usage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.subscription-usage-grid article{padding:19px;border:1px solid var(--line);border-radius:18px;background:#fff}.subscription-usage-grid span,.subscription-usage-grid strong,.subscription-usage-grid small{display:block}.subscription-usage-grid span{font-size:.72rem;color:var(--muted);font-weight:800}.subscription-usage-grid strong{margin:7px 0;font-size:1.4rem}.subscription-usage-grid small{color:var(--muted);font-size:.72rem}.usage-bar{height:7px;border-radius:999px;background:#e8eef8;overflow:hidden}.usage-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--teal))}.subscription-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0}.subscription-plan-card{position:relative;padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 32px rgba(24,66,133,.06)}.subscription-plan-card.is-current{border-color:#7cb2fb;box-shadow:0 0 0 4px rgba(18,104,243,.08),0 16px 38px rgba(24,66,133,.1)}.plan-current-label{position:absolute;right:16px;top:16px;padding:6px 9px;border-radius:999px;background:#e6f8ef;color:#087451;font-size:.66rem}.plan-card-head span{font-size:.76rem;color:var(--primary);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.plan-card-head h2{margin:8px 0 0;font-size:2.3rem;letter-spacing:-.05em}.plan-card-head small{color:var(--muted)}.subscription-plan-card>p{min-height:48px;color:var(--muted);line-height:1.5}.plan-benefits{list-style:none;margin:18px 0;padding:0;display:grid;gap:10px}.plan-benefits li{position:relative;padding-left:22px;color:#43536d;font-size:.82rem}.plan-benefits li:before{content:'✓';position:absolute;left:0;color:var(--success);font-weight:900}.plan-request-form{display:grid;gap:12px;margin-top:20px}.field textarea{width:100%;border:1px solid var(--line);background:#fbfdff;border-radius:13px;padding:13px 14px;resize:vertical;font:inherit}.renewal-card,.featured-services-panel,.subscription-orders-panel,.subscription-events-panel,.subscription-admin-filter,.subscription-admin-list{margin-top:18px}.renewal-card{display:flex;align-items:center;justify-content:space-between;gap:24px}.renewal-card h2{margin:4px 0 7px}.renewal-card p{margin:0;color:var(--muted);line-height:1.5}.renewal-card form{display:grid;gap:13px;min-width:260px}.featured-service-list,.subscription-order-list{display:grid;gap:10px}.featured-service-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px;border:1px solid #e3eaf5;border-radius:14px}.featured-service-list strong,.featured-service-list small{display:block}.featured-service-list small{margin-top:3px;color:var(--muted)}.subscription-order-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:18px;padding:17px;border:1px solid #e1e9f5;border-radius:17px}.order-main h3{margin:9px 0 4px}.order-main p,.order-main small{color:var(--muted)}.order-admin-note,.order-provider-note{padding:11px 13px;border-radius:12px;background:#f5f8fd;line-height:1.5}.order-actions{display:grid;align-content:start;justify-items:start;gap:10px}.proof-upload-form{display:grid;gap:8px;width:100%}.btn-link.danger,.danger{color:var(--danger)}.subscription-timeline{list-style:none;margin:0;padding:0;display:grid}.subscription-timeline li{position:relative;display:grid;grid-template-columns:auto 1fr;gap:12px;padding:0 0 17px}.subscription-timeline li:not(:last-child):before{content:'';position:absolute;left:5px;top:14px;bottom:0;width:1px;background:#dbe5f3}.subscription-timeline i{position:relative;z-index:1;width:11px;height:11px;margin-top:4px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px #eaf2ff}.subscription-timeline strong,.subscription-timeline small{display:block}.subscription-timeline small{margin-top:3px;color:var(--muted)}.admin-subscription-hero{background:linear-gradient(135deg,#fff,#f2efff)}.subscription-admin-filter form{display:flex;align-items:end;gap:12px}.subscription-admin-order{padding:20px;border:1px solid #dfe7f4;border-radius:19px;background:#fff}.subscription-admin-order+.subscription-admin-order{margin-top:12px}.admin-order-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.admin-order-header h2{margin:8px 0 3px}.admin-order-header p{margin:0;color:var(--muted)}.admin-order-amount{text-align:right}.admin-order-amount strong,.admin-order-amount span,.admin-order-amount small{display:block}.admin-order-amount strong{font-size:1.45rem}.admin-order-amount span,.admin-order-amount small{margin-top:4px;color:var(--muted)}.admin-order-actions{display:flex;align-items:flex-start;gap:16px;margin-top:16px}.subscription-review-form{display:grid;gap:10px;flex:1}.subscription-review-form>div{display:flex;gap:8px}.featured-badge{display:inline-flex;margin-left:6px;padding:5px 8px;border-radius:999px;background:linear-gradient(135deg,#ffefb8,#ffd66b);color:#6e4a00;font-size:.62rem;font-weight:900}.module-warning{border-color:#f2d19b;background:#fff8ea;color:#754b00}.muted{color:var(--muted)}
@media(max-width:1050px){.subscription-plan-grid{grid-template-columns:1fr 1fr}.subscription-usage-grid{grid-template-columns:1fr 1fr}.subscription-order-card{grid-template-columns:1fr}.admin-order-actions{flex-direction:column}}
@media(max-width:720px){.subscription-hero,.renewal-card,.admin-order-header{align-items:stretch;flex-direction:column}.current-plan-card{min-width:0}.subscription-plan-grid,.subscription-usage-grid{grid-template-columns:1fr}.subscription-admin-filter form,.admin-order-actions,.subscription-review-form>div{display:grid}.subscription-order-card{padding:14px}.dashboard-main{padding:18px}.subscription-hero{padding:21px}}

/* Bloque 17: panel administrativo */
.admin-dashboard{display:grid;gap:18px}.admin-dashboard-hero{display:flex;align-items:stretch;justify-content:space-between;gap:26px;padding:30px;border:1px solid #d8e4f5;border-radius:26px;background:linear-gradient(135deg,#fff 0,#eef6ff 58%,#f1efff 100%);box-shadow:0 18px 46px rgba(25,66,132,.09)}.admin-dashboard-hero h1{margin:10px 0 12px;font-size:clamp(2rem,4vw,3.5rem);line-height:1.02;letter-spacing:-.052em}.admin-dashboard-hero p{max-width:760px;margin:0;color:var(--muted);line-height:1.65}.admin-quick-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.admin-hero-summary{min-width:225px;display:grid;align-content:center;justify-items:center;padding:22px;border-radius:22px;background:linear-gradient(145deg,#0e5de2,#4d45d4 64%,#6c44d9);color:#fff;box-shadow:0 18px 38px rgba(41,71,176,.25)}.admin-hero-summary>span{font-size:.72rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;opacity:.8}.admin-hero-summary>strong{font-size:4rem;line-height:1;margin:12px 0 4px}.admin-hero-summary>small{opacity:.85}.admin-hero-summary>div{margin-top:16px;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.14);font-size:.78rem}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.admin-stat-grid article{padding:18px;border:1px solid #dfe8f5;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(24,66,133,.05)}.admin-stat-grid span,.admin-stat-grid strong,.admin-stat-grid small{display:block}.admin-stat-grid span{font-size:.73rem;color:#65738a;font-weight:850}.admin-stat-grid strong{margin:7px 0 4px;font-size:1.72rem;letter-spacing:-.035em}.admin-stat-grid small{color:#7a879c;font-size:.72rem;line-height:1.35}.admin-stat-financial{background:linear-gradient(145deg,#fff,#f1f7ff)!important}.admin-alert-panel,.admin-category-section,.admin-system-section{padding:22px;border:1px solid #dfe7f3;border-radius:22px;background:#fff}.admin-alert-list{display:grid;gap:10px}.admin-alert{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 15px;border:1px solid #e2e9f3;border-radius:15px;background:#fbfdff;color:inherit}.admin-alert:hover{text-decoration:none;transform:translateY(-1px)}.admin-alert>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;font-size:1.05rem;font-weight:900}.admin-alert strong,.admin-alert small{display:block}.admin-alert small{margin-top:3px;color:#66748b;font-weight:600;line-height:1.4}.admin-alert>b{font-size:.75rem}.admin-alert-critical{border-color:#f2bdc6;background:#fff7f8}.admin-alert-critical>span{background:#fde5e9;color:#a42339}.admin-alert-warning{border-color:#f0d7a4;background:#fffbf2}.admin-alert-warning>span{background:#fff0c8;color:#8d5b00}.admin-alert-info>span{background:#e8f2ff;color:#1859ba}.admin-clear-state{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid #bfe6d5;border-radius:18px;background:#f6fffb}.admin-clear-state>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#daf6e9;color:#087451;font-size:1.3rem;font-weight:900}.admin-clear-state strong,.admin-clear-state p{display:block;margin:0}.admin-clear-state p{margin-top:4px;color:#5e7169}.admin-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-dashboard-grid .dashboard-panel{min-width:0}.admin-queue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.admin-queue-grid a{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:11px;padding:13px;border:1px solid #e2e9f4;border-radius:14px;background:#fafcff;color:#33445f}.admin-queue-grid a:hover{text-decoration:none;border-color:#bad1f6;background:#f5f9ff}.admin-queue-grid strong{display:grid;place-items:center;min-width:38px;height:38px;padding:0 8px;border-radius:11px;background:#e8f1ff;color:#1259c9}.admin-queue-grid span{font-size:.78rem;font-weight:750}.admin-finance-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 16px}.admin-finance-summary>div{padding:12px;border-radius:13px;background:#f6f9fe}.admin-finance-summary dt{font-size:.72rem;color:#6d7a8f}.admin-finance-summary dd{margin:5px 0 0;font-weight:900;color:#203556}.admin-trend-chart{height:170px;display:grid;grid-template-columns:repeat(6,1fr);align-items:end;gap:10px;padding:14px 8px 0;border-top:1px solid #e8edf5}.admin-trend-chart>div{height:100%;display:grid;grid-template-rows:1fr auto;gap:7px;align-items:end;text-align:center}.admin-trend-bars{height:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px}.admin-trend-bars i,.admin-trend-bars b{display:block;width:12px;min-height:4px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#1268f3,#65a7ff)}.admin-trend-bars b{width:8px;background:linear-gradient(180deg,#6b3ff2,#ab8cff)}.admin-trend-chart small{font-size:.65rem;color:#77849a;text-transform:uppercase}.admin-case-list,.admin-user-list,.admin-service-list,.admin-appointment-list,.admin-payment-list,.admin-subscription-list{display:grid;gap:8px}.admin-case-list>a,.admin-service-list>a,.admin-service-list>article,.admin-appointment-list>a,.admin-payment-list>a,.admin-subscription-list>a,.admin-user-list>article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #e3eaf4;border-radius:14px;background:#fbfdff;color:inherit}.admin-case-list>a:hover,.admin-service-list>a:hover,.admin-appointment-list>a:hover,.admin-payment-list>a:hover,.admin-subscription-list>a:hover{text-decoration:none;border-color:#bed2f2}.admin-case-list>a>div,.admin-service-list>a>div,.admin-service-list>article>div,.admin-appointment-list>a>div,.admin-payment-list>a>div,.admin-subscription-list>a>div,.admin-user-list>article>div{min-width:0;flex:1}.admin-case-list strong,.admin-case-list small,.admin-user-list strong,.admin-user-list small,.admin-service-list strong,.admin-service-list small,.admin-appointment-list strong,.admin-appointment-list small,.admin-payment-list strong,.admin-payment-list small,.admin-subscription-list strong,.admin-subscription-list small{display:block}.admin-case-list small,.admin-user-list small,.admin-service-list small,.admin-appointment-list small,.admin-payment-list small,.admin-subscription-list small{margin-top:3px;color:#6d7a90;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-case-type{padding:6px 8px;border-radius:9px;background:#edf3fd;color:#315a96;font-size:.65rem;font-weight:900}.priority-urgent,.priority-high{color:#b0263f}.priority-normal{color:#315a96}.priority-low{color:#6d7a90}.admin-user-list>article>.mini-avatar{flex:0 0 36px;width:36px;height:36px}.admin-user-list>article>b,.admin-payment-list>a>div:last-child,.admin-subscription-list>a>div:last-child{text-align:right;white-space:nowrap}.admin-user-list .status-active{color:#087451}.admin-user-list .status-pending{color:#9b6500}.admin-user-list .status-blocked{color:#ad2e42}.admin-category-table{display:grid;overflow:auto}.admin-category-row{display:grid;grid-template-columns:minmax(180px,1.5fr) repeat(4,minmax(90px,.7fr));align-items:center;gap:12px;padding:12px 10px;border-bottom:1px solid #e6ecf4}.admin-category-row:last-child{border-bottom:0}.admin-category-row span:not(:first-child){text-align:right}.admin-category-head{font-size:.7rem;color:#748198;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.admin-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.admin-health-grid article{padding:15px;border:1px solid #e1e9f3;border-radius:15px;background:#f9fbff}.admin-health-grid span,.admin-health-grid strong,.admin-health-grid small{display:block}.admin-health-grid span{font-size:.7rem;color:#6e7b91;font-weight:850}.admin-health-grid strong{margin:6px 0 4px;font-size:1rem}.admin-health-grid small{color:#8390a4;font-size:.68rem;line-height:1.35}.admin-dashboard-preferences form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.admin-dashboard-preferences .check{align-self:center}.dashboard-main.client-dashboard-compact .admin-dashboard{gap:12px}.dashboard-main.client-dashboard-compact .admin-dashboard-hero{padding:22px}.dashboard-main.client-dashboard-compact .admin-stat-grid article{padding:13px}.dashboard-main.client-dashboard-compact .admin-dashboard .dashboard-panel{padding:16px}
@media(max-width:1180px){.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard-grid{grid-template-columns:1fr}.admin-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.admin-dashboard-hero{flex-direction:column}.admin-hero-summary{min-width:0}.admin-queue-grid,.admin-finance-summary,.admin-dashboard-preferences form{grid-template-columns:1fr}.admin-category-row{grid-template-columns:minmax(160px,1.4fr) repeat(4,minmax(82px,.7fr))}.admin-health-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.admin-dashboard-hero{padding:22px 18px;border-radius:21px}.admin-dashboard-hero h1{font-size:2rem}.admin-quick-actions{display:grid}.admin-quick-actions .btn{width:100%}.admin-stat-grid,.admin-health-grid{grid-template-columns:1fr}.admin-alert{grid-template-columns:42px 1fr}.admin-alert>b{grid-column:2}.admin-case-list>a,.admin-service-list>a,.admin-appointment-list>a,.admin-payment-list>a,.admin-subscription-list>a,.admin-user-list>article{align-items:flex-start}.admin-category-table{margin:0 -8px}.admin-category-row{min-width:680px}.admin-trend-chart{height:145px;gap:5px}.admin-queue-grid{grid-template-columns:1fr}.admin-finance-summary{grid-template-columns:1fr 1fr}}

/* Bloque 18: gestión de usuarios, proveedores y documentos */
.admin-users-page,.admin-user-detail-page,.admin-user-create-page,.account-security-page{display:grid;gap:18px}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.page-heading h1{margin:5px 0 8px;font-size:clamp(1.9rem,3vw,2.8rem);letter-spacing:-.045em}.page-heading p{margin:0;color:var(--muted);line-height:1.55}.eyebrow{display:block;color:var(--primary);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.panel-card{padding:21px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 14px 36px rgba(24,66,133,.06)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:17px}.panel-heading h2{margin:3px 0 0;font-size:1.35rem;letter-spacing:-.03em}.count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:28px;padding:0 10px;border-radius:999px;background:#e9f2ff;color:#145dbd;font-size:.72rem;font-weight:900}.management-grid{display:grid;gap:18px;align-items:start}.management-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.management-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.user-management-metrics,.user-file-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.metric-grid article{min-width:0}.management-queue{display:grid;gap:9px}.management-queue>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid #e1e8f3;border-radius:15px;background:#fbfdff;color:inherit}.management-queue>a:hover{text-decoration:none;border-color:#afc9ef;background:#f4f8ff}.management-queue>a>div{min-width:0}.management-queue strong,.management-queue small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.management-queue small{margin-top:3px;color:var(--muted);font-size:.72rem}.queue-meta{text-align:right}.queue-meta b,.queue-meta span{display:block}.queue-meta b{color:#9a6100;font-size:.75rem}.queue-meta span{margin-top:3px;color:var(--muted);font-size:.68rem}.small-avatar{width:38px;height:38px;font-size:.72rem}.large-avatar{width:62px;height:62px;font-size:1rem}.admin-user-filters{grid-template-columns:minmax(220px,1.7fr) repeat(5,minmax(120px,1fr));align-items:end}.filter-actions{display:flex;gap:8px;grid-column:1/-1}.responsive-table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:13px 11px;border-bottom:1px solid #e6ecf4;text-align:left;vertical-align:middle}.data-table th{font-size:.68rem;color:#758298;text-transform:uppercase;letter-spacing:.06em}.data-table td{font-size:.78rem}.data-table tr:last-child td{border-bottom:0}.table-user{display:flex;align-items:center;gap:10px;min-width:235px}.table-user>div{min-width:0}.table-user strong,.table-user span,.table-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-user span{margin-top:2px;color:#435570}.table-user small,.user-management-table td>small{margin-top:3px;color:var(--muted);font-size:.67rem;display:block}.status-chip{display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border-radius:999px;background:#eef3fa;color:#53637a;font-size:.65rem;font-weight:900;white-space:nowrap}.status-active,.verification-verified{background:#e2f7ed;color:#087451}.status-pending,.verification-pending{background:#fff2d5;color:#8b5900}.status-blocked,.status-rejected,.verification-rejected{background:#ffe8ec;color:#a4253f}.status-draft,.verification-draft{background:#eef2f8;color:#58677d}.role-client{background:#e8f2ff;color:#155ab6}.role-provider{background:#e7f8f2;color:#08765a}.role-admin{background:#eee9ff;color:#5c39b4}.status-published{background:#e2f7ed;color:#087451}.status-paused{background:#fff2d5;color:#8b5900}.status-archived{background:#eef2f8;color:#58677d}.warning-text{color:#985d00!important}.pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:18px}.pagination a{min-width:34px;height:34px;display:grid;place-items:center;border:1px solid #dce5f1;border-radius:10px;background:#fff;color:#40526e;font-size:.75rem}.pagination a.active{background:var(--primary);border-color:var(--primary);color:#fff}.empty-state{display:grid;justify-items:center;text-align:center;gap:5px;padding:35px;border:1px dashed #cdd9e8;border-radius:16px;background:#fafcff}.empty-state p{margin:0;color:var(--muted)}.stack-form{display:grid;gap:14px}.form-grid.two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.check-row{display:flex;align-items:center;gap:9px;font-size:.78rem;font-weight:750;color:#42536d}.check-row input{width:17px;height:17px}.check-list{display:grid;gap:11px;margin:0;padding:0;list-style:none}.check-list li{position:relative;padding-left:27px;color:#4c5d75;line-height:1.55}.check-list li::before{content:"✓";position:absolute;left:0;top:0;width:19px;height:19px;display:grid;place-items:center;border-radius:50%;background:#e1f7ec;color:#087451;font-size:.68rem;font-weight:900}.alert-card{padding:15px 17px;border-radius:16px;border:1px solid #dce6f3;background:#f8fbff}.alert-card strong,.alert-card p{display:block}.alert-card p{margin:5px 0 0;color:#5d6c82;line-height:1.5}.alert-warning{border-color:#edd7a8;background:#fffaf0}.alert-critical{border-color:#efc0c8;background:#fff6f7}.user-file-heading{align-items:center}.user-file-identity{display:flex;align-items:center;gap:15px}.heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.section-tabs{display:flex;gap:7px;overflow:auto;padding:5px;border:1px solid #dfe7f2;border-radius:15px;background:#fff}.section-tabs a{padding:9px 13px;border-radius:10px;color:#59697f;font-size:.76rem;font-weight:850;white-space:nowrap}.section-tabs a:hover{text-decoration:none;background:#f2f6fc}.section-tabs a.active{background:#e7f1ff;color:#125abf}.detail-list,.mini-detail-list{display:grid;gap:0;margin:0}.detail-list>div,.mini-detail-list>div{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(0,1.3fr);gap:12px;padding:10px 0;border-bottom:1px solid #e8edf5}.detail-list>div:last-child,.mini-detail-list>div:last-child{border-bottom:0}.detail-list dt,.mini-detail-list dt{color:#738096;font-size:.72rem}.detail-list dd,.mini-detail-list dd{margin:0;color:#263b5a;font-size:.78rem;font-weight:750;text-align:right;overflow-wrap:anywhere}.provider-mini-summary{display:grid;gap:5px;margin-top:16px;padding:14px;border-radius:15px;background:#f4f8fe}.provider-mini-summary span:not(.status-chip){color:var(--muted);font-size:.73rem}.compact-list{display:grid;gap:8px}.compact-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #e3eaf4;border-radius:14px;background:#fbfdff}.compact-list>div>div{min-width:0}.compact-list strong,.compact-list span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-list span{margin-top:3px;color:var(--muted);font-size:.7rem}.button-row{display:flex;gap:8px;flex-wrap:wrap}.button-column{display:grid;gap:8px}.btn-danger{background:#b62b43;color:#fff;border-color:#b62b43}.btn-danger:hover{background:#962239;border-color:#962239}.document-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.document-review-card{display:grid;gap:13px;padding:16px;border:1px solid #dfe7f2;border-left:4px solid #c6d2e2;border-radius:17px;background:#fbfdff}.status-border-approved{border-left-color:#20a875}.status-border-rejected{border-left-color:#c13a51}.status-border-pending{border-left-color:#d69b22}.document-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.document-review-head>div{min-width:0}.document-review-head strong,.document-review-head span{display:block}.document-review-head>div>span{margin-top:3px;color:var(--muted);font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-note{margin:0;padding:10px;border-radius:11px;background:#fff4e5;color:#72501b;font-size:.74rem;line-height:1.45}.compact-review-form{padding-top:10px;border-top:1px solid #e4eaf2}.security-actions-grid .panel-card{height:100%}.notes-history-grid{grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr)}.timeline-list{display:grid;gap:0;margin-top:18px}.timeline-list article{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;padding:0 0 17px}.timeline-list article:not(:last-child)::before{content:"";position:absolute;left:5px;top:14px;bottom:0;width:1px;background:#dfe6f1}.timeline-dot{position:relative;z-index:1;width:11px;height:11px;margin-top:5px;border-radius:50%;background:#397fe4;box-shadow:0 0 0 4px #e9f2ff}.timeline-list strong,.timeline-list p,.timeline-list small{display:block}.timeline-list p{margin:4px 0;color:#4b5c73;line-height:1.5;font-size:.76rem}.timeline-list small{margin-top:3px;color:#8490a2;font-size:.67rem}.security-explainer{min-height:100%}.account-security-page .panel-card{max-width:100%}
@media(max-width:1320px){.user-management-metrics,.user-file-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-user-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-search{grid-column:span 2}.management-grid-three{grid-template-columns:1fr 1fr}.security-actions-grid article:last-child{grid-column:1/-1}.document-review-grid{grid-template-columns:1fr}}
@media(max-width:900px){.management-grid-two,.notes-history-grid,.management-grid-three{grid-template-columns:1fr}.security-actions-grid article:last-child{grid-column:auto}.user-management-metrics,.user-file-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-user-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-search{grid-column:1/-1}.page-heading,.user-file-heading{flex-direction:column}.heading-actions{justify-content:flex-start}.document-review-grid{grid-template-columns:1fr}}
@media(max-width:620px){.user-management-metrics,.user-file-metrics,.admin-user-filters,.form-grid.two-columns{grid-template-columns:1fr}.filter-search{grid-column:auto}.page-heading h1{font-size:2rem}.management-queue>a{grid-template-columns:auto minmax(0,1fr)}.queue-meta{grid-column:2;text-align:left}.user-file-identity{align-items:flex-start}.large-avatar{width:50px;height:50px}.panel-card{padding:16px;border-radius:18px}.document-review-head{display:grid}.button-row .btn{flex:1}.section-tabs{margin:0 -4px}.data-table th,.data-table td{padding:10px 8px}}

/* Bloque 19: catálogos, ubicación y comisiones */
.admin-catalogs-page{display:grid;gap:24px;min-width:0}.catalog-metrics{margin:0}.admin-catalog-tabs{position:sticky;top:74px;z-index:4;background:rgba(246,249,255,.94);backdrop-filter:blur(10px);padding:10px;border:1px solid #dbe7f5;border-radius:16px}.admin-catalog-tabs a.active{background:#1268f3;color:#fff}.catalog-section{scroll-margin-top:150px;display:grid;gap:20px}.catalog-section-muted{opacity:.98}.catalog-grid{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:20px;align-items:start}.catalog-editor{position:sticky;top:142px}.catalog-list-card{min-width:0}.catalog-table-wrap{overflow:auto}.data-table td small,.location-state span,.location-city span{display:block;color:#66758d;margin-top:3px}.catalog-location-editors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.location-directory{display:grid;gap:16px}.location-state{border:1px solid #dce7f4;border-radius:18px;padding:16px;background:#fbfdff}.location-state-heading,.location-city{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.location-city{padding:14px 0;border-top:1px solid #e8eef7}.zone-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.zone-chip{display:grid;gap:2px;text-decoration:none;border:1px solid #d5e2f2;background:#fff;border-radius:12px;padding:8px 10px;color:#20334d}.zone-chip span{font-size:.76rem;color:#6c7b90}.zone-chip.inactive{opacity:.55}.commission-layout{grid-template-columns:minmax(300px,430px) minmax(0,1fr)}.commission-targets{display:grid;gap:12px}.commission-rule-list{display:grid;gap:12px}.commission-rule-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:16px;border:1px solid #dce7f4;border-radius:16px;background:#fff}.commission-rule-card.inactive{opacity:.63}.commission-rule-card h3{margin:8px 0 4px}.commission-rule-card p,.commission-rule-card small{margin:0;color:#66758d}.commission-value{text-align:right;display:grid;gap:2px}.commission-value strong{font-size:1.35rem;color:#0d4fbf}.commission-actions{display:grid;gap:8px;justify-items:end}.commission-actions form{margin:0}.managed-location-box{padding:16px;border:1px solid #cfe0f3;border-radius:16px;background:#f7fbff;margin-bottom:16px}.managed-location-box p{margin:4px 0 14px;color:#65768d}
@media(max-width:1100px){.catalog-grid,.commission-layout{grid-template-columns:1fr}.catalog-editor{position:static}.catalog-location-editors{grid-template-columns:1fr 1fr}.catalog-location-editors article:last-child{grid-column:1/-1}}@media(max-width:760px){.catalog-location-editors{grid-template-columns:1fr}.catalog-location-editors article:last-child{grid-column:auto}.commission-rule-card{grid-template-columns:1fr}.commission-value{text-align:left}.commission-actions{display:flex;justify-items:initial}.location-state-heading,.location-city{display:grid}.zone-chips{justify-content:flex-start}.admin-catalog-tabs{position:static;overflow:auto;white-space:nowrap}}

/* Bloque 20: reportes financieros, estadísticas y auditoría */
.admin-reports-page{display:grid;gap:22px;min-width:0}.report-page-heading{align-items:flex-start}.report-page-heading .button-row{justify-content:flex-end}.report-filter-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end}.report-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr)) auto;gap:12px;align-items:end}.report-filter-grid .filter-actions{display:flex;gap:8px;align-items:end}.report-period-note{min-width:190px;padding:14px 16px;border-radius:16px;background:#edf4ff;border:1px solid #cedef6;text-align:right}.report-period-note strong,.report-period-note span{display:block}.report-period-note strong{color:#154ba7}.report-period-note span{margin-top:4px;color:#697790;font-size:.8rem}.admin-report-tabs{position:sticky;top:74px;z-index:4;background:rgba(246,249,255,.96);backdrop-filter:blur(10px);padding:9px;border:1px solid #dbe7f5;border-radius:16px}.admin-report-tabs a.active{background:#1268f3;color:#fff}.report-section{display:grid;gap:18px;scroll-margin-top:140px}.section-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-end}.section-heading h2{margin:3px 0 0}.section-heading>span{color:#6e7b90;font-size:.82rem;text-align:right}.report-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.report-metric-card{position:relative;min-height:142px;padding:18px;border:1px solid #dce6f2;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(31,65,120,.055);overflow:hidden}.report-metric-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#1268f3,#13a1a6)}.report-metric-card>span,.report-metric-card>small{display:block;color:#6b7890}.report-metric-card>span{font-size:.75rem;text-transform:uppercase;letter-spacing:.065em;font-weight:850}.report-metric-card>strong{display:block;margin:9px 0 5px;color:#173c84;font-size:1.55rem;line-height:1.1}.report-metric-card>small{font-size:.76rem}.report-delta{display:inline-flex;margin-top:12px;padding:4px 8px;border-radius:999px;font-size:.72rem}.report-delta.positive{background:#e8f8f1;color:#087a53}.report-delta.negative{background:#ffedf0;color:#b32943}.report-delta.neutral{background:#eef2f7;color:#66748a}.report-two-column{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:18px;align-items:stretch}.report-chart-card,.report-summary-list,.report-table-card{min-width:0}.report-bar-chart{display:flex;align-items:end;gap:8px;height:250px;padding:24px 8px 0;border-bottom:1px solid #dce6f2;overflow-x:auto}.report-bar-item{display:grid;grid-template-rows:minmax(0,1fr) 22px;gap:6px;align-items:end;min-width:34px;height:100%;text-align:center}.report-bars{height:100%;display:flex;gap:3px;align-items:end;justify-content:center}.report-bars>span{display:block;width:10px;min-height:2px;border-radius:6px 6px 2px 2px}.bar-net{background:#1768e5}.bar-subscription{background:#14a5a6}.bar-requests{background:#6f55d9}.bar-appointments{background:#1d79dc}.bar-completed{background:#18a36c}.report-bars.triple>span{width:7px}.report-bar-item small{white-space:nowrap;color:#77849a;font-size:.68rem}.report-chart-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:13px;color:#68758a;font-size:.76rem}.report-chart-legend span{display:flex;align-items:center;gap:6px}.report-chart-legend i{width:10px;height:10px;border-radius:3px}.legend-net{background:#1768e5}.legend-subscription{background:#14a5a6}.legend-requests{background:#6f55d9}.legend-appointments{background:#1d79dc}.legend-completed{background:#18a36c}.report-summary-list dl{display:grid;gap:0;margin:16px 0 0}.report-summary-list dl>div{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #e8edf4}.report-summary-list dt{color:#69768a}.report-summary-list dd{margin:0;font-weight:900;color:#1d355f}.report-table-card .data-table td small{display:block;color:#748097;margin-top:3px}.operations-chart{height:230px}.report-security-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.report-security-grid article{padding:18px;border-radius:17px;border:1px solid #dce5f1;background:#fff}.report-security-grid span{display:block;color:#68758b;font-size:.78rem}.report-security-grid strong{display:block;margin-top:8px;font-size:1.8rem;color:#1c448e}.audit-filter-grid{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end}.audit-overview-grid{grid-template-columns:1fr 1fr}.audit-event-ranking{display:grid;gap:8px;margin-top:14px}.audit-event-ranking div{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:11px;background:#f5f8fc}.audit-event-ranking span{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.77rem;color:#52627a}.audit-guidance p,.audit-guidance li{color:#637189;line-height:1.55}.audit-table-card code{font-size:.75rem}.audit-table-card details summary,.report-table-card details summary{cursor:pointer;color:#2155ad;font-weight:800}.audit-table-card pre,.report-table-card pre{max-width:420px;max-height:180px;overflow:auto;white-space:pre-wrap;word-break:break-word;padding:10px;border-radius:10px;background:#172033;color:#dce8ff;font-size:.7rem}.audit-event-name{display:block;font-weight:850;color:#263b62}.muted{color:#7b8799}.exports-layout{grid-template-columns:1.2fr .8fr}.report-export-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}.report-export-grid a{display:grid;gap:5px;padding:16px;border:1px solid #dce5f1;border-radius:15px;color:#263a5e;background:#fbfdff;text-decoration:none}.report-export-grid a:hover{border-color:#98b8ec;box-shadow:0 8px 24px rgba(31,75,144,.08)}.report-export-grid span{font-size:.78rem;color:#6c7890;line-height:1.4}.report-export-grid b{margin-top:5px;color:#1768e5;font-size:.78rem}.reports-compact{gap:14px}.reports-compact .report-metric-card{min-height:115px;padding:14px}.reports-compact .panel-card{padding:16px}.reports-compact .report-bar-chart{height:190px}
@media(max-width:1450px){.report-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-filter-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}.report-filter-grid .filter-actions{grid-column:auto}}
@media(max-width:1100px){.report-filter-card{grid-template-columns:1fr}.report-period-note{text-align:left}.report-two-column,.audit-overview-grid,.exports-layout{grid-template-columns:1fr}.report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-filter-grid{grid-template-columns:1fr 1fr}.audit-filter-grid .filter-actions{grid-column:1/-1}.report-security-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.report-page-heading,.section-heading{display:grid}.report-page-heading .button-row{justify-content:stretch}.report-page-heading .button-row .btn{flex:1}.report-filter-grid,.audit-filter-grid{grid-template-columns:1fr}.audit-filter-grid .filter-actions{grid-column:auto}.report-metric-grid,.operations-metrics{grid-template-columns:1fr 1fr}.admin-report-tabs{position:static;overflow-x:auto;white-space:nowrap}.report-export-grid{grid-template-columns:1fr}.report-bar-chart{height:200px}.report-security-grid{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.report-metric-grid,.operations-metrics,.report-security-grid{grid-template-columns:1fr}.report-page-heading .button-row,.report-filter-grid .filter-actions{display:grid}.report-page-heading .button-row .btn,.report-filter-grid .filter-actions .btn{width:100%}}

/* Bloque 21: instalación, estado técnico, seguridad y rendimiento */
.connection-banner,.pwa-update-banner{position:fixed;z-index:1200;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:12px;max-width:min(92vw,760px);padding:10px 16px;border-radius:0 0 14px 14px;box-shadow:0 12px 30px rgba(18,38,74,.18);font-weight:800}.connection-banner{top:0;background:#7f1d1d;color:#fff}.pwa-update-banner{top:0;background:#e9f2ff;color:#163f86;border:1px solid #b9cff0}.connection-banner[hidden],.pwa-update-banner[hidden]{display:none}.system-readiness-page,.admin-system-health{display:grid;gap:22px;min-width:0}.system-page-heading{align-items:flex-start}.system-page-heading .button-row{justify-content:flex-end}.system-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.system-status-card{padding:18px;border:1px solid #dae6f4;border-radius:18px;background:linear-gradient(145deg,#fff,#f7faff);box-shadow:0 10px 28px rgba(31,65,120,.055)}.system-status-card>span,.system-status-card>small{display:block;color:#68768b}.system-status-card>span{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;font-weight:850}.system-status-card>strong{display:block;margin:9px 0 5px;color:#154a9e;font-size:1.38rem}.system-status-card>small{font-size:.76rem}.system-readiness-grid,.system-health-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:start}.system-detail-list{display:grid;margin:10px 0 18px}.system-detail-list>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #e7edf5}.system-detail-list dt{color:#6c798d}.system-detail-list dd{margin:0;text-align:right;font-weight:850;color:#263c62}.system-guidance-list{display:grid;gap:12px;margin:14px 0 0;padding-left:20px;color:#5f6f87;line-height:1.55}.device-list{display:grid;gap:12px}.device-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;padding:16px;border:1px solid #dce6f2;border-radius:16px;background:#fff}.device-card>div:first-child{display:grid;gap:4px}.device-card span,.device-card small{color:#6b788d}.device-badges{display:flex;gap:8px;flex-wrap:wrap}.health-summary-card{display:grid;grid-template-columns:1.5fr repeat(3,minmax(120px,.6fr));gap:14px;padding:18px;border:1px solid;border-radius:19px}.health-summary-card>div{padding:8px 14px;border-right:1px solid currentColor}.health-summary-card>div:last-child{border-right:0}.health-summary-card span,.health-summary-card small{display:block;opacity:.75}.health-summary-card strong{display:block;margin:5px 0;font-size:1.45rem}.health-summary-card.health-ok{background:#ecfaf4;border-color:#a7dfc6;color:#096b4a}.health-summary-card.health-warning{background:#fff8e7;border-color:#ebd18a;color:#8a5a08}.health-summary-card.health-error{background:#fff0f1;border-color:#efb5bc;color:#a4263b}.health-check-list{display:grid;gap:9px}.health-check{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid #e0e7f0;border-radius:13px}.health-check>span{width:10px;height:10px;border-radius:50%;background:#8290a5}.health-check>div{display:grid;gap:2px}.health-check small{color:#6e7b8e}.health-check>b{padding:4px 8px;border-radius:999px;font-size:.72rem}.health-check.health-ok>span{background:#13a36d}.health-check.health-ok>b{background:#e8f8f1;color:#087a53}.health-check.health-warning>span{background:#d59a13}.health-check.health-warning>b{background:#fff4d7;color:#895a00}.health-check.health-error>span{background:#d33d52}.health-check.health-error>b{background:#ffeaed;color:#a92339}.offline-card{max-width:520px;text-align:center}
@media(max-width:1100px){.system-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.system-readiness-grid,.system-health-grid{grid-template-columns:1fr}.health-summary-card{grid-template-columns:repeat(2,minmax(0,1fr))}.health-summary-card>div{border-right:0}}
@media(max-width:720px){.system-page-heading{display:grid}.system-page-heading .button-row{justify-content:stretch}.system-status-grid,.health-summary-card{grid-template-columns:1fr 1fr}.device-card{grid-template-columns:1fr}.device-badges{justify-content:flex-start}.system-detail-list>div{display:grid;gap:5px}.system-detail-list dd{text-align:left}}
@media(max-width:460px){.system-status-grid,.health-summary-card{grid-template-columns:1fr}.connection-banner,.pwa-update-banner{width:100%;max-width:none;border-radius:0}.pwa-update-banner{justify-content:space-between}.system-page-heading .button-row{display:grid}}

/* Bloque 22: configuración comercial, actualizaciones y lanzamiento */
.admin-launch-page{display:grid;gap:22px;min-width:0}.release-badge{display:grid;gap:3px;min-width:180px;padding:13px 18px;border-radius:16px;border:1px solid}.release-badge span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.release-badge strong{font-size:1.05rem}.release-badge.is-current{background:#eaf9f2;border-color:#a9dfc7;color:#08724f}.release-badge.needs-update{background:#fff5dc;border-color:#e9ce83;color:#805408}.launch-overview-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:18px}.release-state{display:grid;gap:4px;padding:14px 16px;border-radius:14px;margin:12px 0}.release-state.success-state{background:#eaf9f2;color:#08724f}.release-state.warning-state{background:#fff5dc;color:#805408}.migration-list{display:grid;gap:7px;padding-left:22px}.migration-list code{font-size:.78rem;color:#29446d}.release-form{display:grid;gap:14px;margin-top:16px}.launch-score-card{align-content:start}.launch-score{display:flex;align-items:baseline;gap:9px;margin:18px 0 9px}.launch-score strong{font-size:2.4rem;color:#1768e5}.launch-score span{color:#68768b}.launch-progress{height:10px;border-radius:999px;background:#e7edf6;overflow:hidden;margin-bottom:20px}.launch-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1768e5,#15a5a6)}.launch-settings-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:18px;align-items:start}.launch-settings-grid fieldset{border:0;padding:0;margin:0;display:grid;gap:18px}.launch-settings-grid fieldset:disabled{opacity:.58}.settings-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.danger-choice{border-color:#efc5cb!important}.launch-check-list{display:grid;gap:9px;margin-top:12px}.launch-check{display:grid;grid-template-columns:30px minmax(0,1fr);gap:11px;align-items:center;padding:12px;border:1px solid #dfe7f1;border-radius:13px}.launch-check>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-weight:900}.launch-check>div{display:grid;gap:2px}.launch-check small{color:#6f7c90}.launch-check.check-ok>span{background:#e5f8ef;color:#08724f}.launch-check.check-pending>span{background:#fff0d4;color:#8b5d05}.maintenance-card{text-align:center}.maintenance-card form{margin-top:16px}
@media(max-width:1100px){.launch-overview-grid,.launch-settings-grid{grid-template-columns:1fr}.settings-toggle-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.release-badge{width:100%}.settings-toggle-grid{grid-template-columns:1fr}.admin-launch-page .form-grid.two-columns{grid-template-columns:1fr}}
.installer-final-shell{padding:28px 16px}.installer-final-card{width:min(100%,980px);max-width:980px}.installer-form fieldset{border:1px solid #dce5f1;border-radius:17px;padding:18px;margin:0}.installer-form legend{padding:0 8px;font-weight:900;color:#1d448e}.form-grid.three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.installer-success-panel{margin-top:18px}.install-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.install-summary div{padding:12px;border-radius:12px;background:#f5f8fc}.install-summary dt{color:#6e7b8e;font-size:.76rem}.install-summary dd{margin:4px 0 0;font-weight:850;word-break:break-word}@media(max-width:760px){.form-grid.three-columns,.install-summary{grid-template-columns:1fr}.installer-form fieldset{padding:14px}}
