:root{--navy:#111f3d;--red:#e52d3b;--ink:#18243b;--muted:#758093;--line:#e8ebf0;--bg:#f5f6fa;--green:#1e8066;--radius:16px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font:14px/1.6 Inter,Segoe UI,Arial,sans-serif}a{color:var(--ink);text-decoration:none}a:hover{color:var(--red)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e52d3b55;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-1px;line-height:1.2;margin-bottom:0}h2{font-size:19px;letter-spacing:-.4px;line-height:1.4;margin-bottom:10px}h3{font-size:16px}small,.small{font-size:12px}.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.7px;color:var(--red);display:block;margin-bottom:10px}.eyebrow.light{color:#ffacb2}.sidebar{position:fixed;width:258px;height:100dvh;left:0;top:0;background:#fff;border-right:1px solid var(--line);padding:30px 18px 20px;display:flex;flex-direction:column;z-index:20;overflow-y:auto}.brand{display:block;padding:0 12px 25px}.brand img{width:196px;height:60px;object-fit:contain}.workspace{display:flex;gap:10px;background:var(--bg);border-radius:12px;padding:13px 11px;margin-bottom:28px;align-items:center}.workspace strong{display:block;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.workspace small{color:var(--muted);display:block;font-size:11px}.avatar{width:36px;height:36px;flex-shrink:0;background:#e8ebf4;color:var(--navy);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-weight:800}.nav-label{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#9aa1af;padding:0 13px 12px}nav{display:grid;gap:6px}nav a,.sidebar-bottom>a,.logout button{display:flex;gap:12px;padding:12px 14px;align-items:center;border-radius:10px;color:#697487;font-size:13px;font-weight:500}nav a:hover{background:#faf0f1;color:var(--red)}nav a.selected{background:var(--navy);color:white;box-shadow:0 5px 12px #14244217}.icon{width:20px;height:20px;flex-shrink:0}.sidebar-bottom{margin-top:auto;padding-top:30px}.sidebar-bottom>small{display:block;color:#a0a6b1;padding:10px 14px;font-size:10px}.logout button{border:0;background:transparent;width:100%}.logout button:hover{color:var(--red)}.main-shell{margin-left:258px;min-height:100vh}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 38px;font-size:12px;color:var(--muted)}.topbar strong{color:var(--ink);font-weight:500}.slash{margin:0 14px;color:#bec2ca}.top-user,.topbar-left{display:flex;align-items:center;gap:12px}.small-avatar{border-radius:50%;width:32px;height:32px;background:#fcebed;color:var(--red)}.status-dot,.story-dot{width:7px;height:7px;border-radius:50%;background:#2dac86;display:inline-block}.content{max-width:1600px;padding:34px 38px 50px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.date-chip{padding:9px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px;color:var(--muted)}.welcome{background:var(--navy);border-radius:18px;padding:30px 34px;color:#fff;display:flex;justify-content:space-between;align-items:center;overflow:hidden;margin-bottom:28px;position:relative}.welcome h2{font-size:29px;margin-bottom:8px;letter-spacing:-.8px}.welcome p{color:#bdc7dc;margin:0;font-size:13px}.welcome img{height:130px;width:130px;object-fit:contain;transform:rotate(-12deg);background:#fff;border-radius:30px;padding:8px;margin-right:25px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:26px 0 16px}.section-title h2{margin:0}.section-title p{margin:7px 0 0}.section-title>a{font-size:12px;color:var(--red);font-weight:600}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-bottom:25px}.metrics.four{grid-template-columns:repeat(4,minmax(0,1fr))}.metric{padding:21px 22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:0}.metric-head{display:flex;justify-content:space-between;align-items:center;color:#6b778a;font-size:12px;gap:7px}.metric-head .icon{color:#a5aec0}.metric>strong{font-size:29px;letter-spacing:-1px;display:block;margin:9px 0 3px;overflow-wrap:anywhere}.metric>small{color:#939ba9;font-size:11px}.panel{border:1px solid var(--line);background:white;padding:26px;border-radius:var(--radius);margin-bottom:22px;min-width:0}.panel>p:last-child{margin-bottom:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.two-col>.panel{height:100%}.chart{width:100%;height:auto;display:block;margin-top:20px}.chart-grid{stroke:#eef0f5;stroke-dasharray:4}.chart-bar{fill:var(--red)}.chart-panel:nth-child(2) .chart-bar{fill:var(--navy)}.chart-label{fill:#8490a3;font-size:12px}.chart-value{fill:#38455d;font-size:11px}.btn{border:1px solid var(--red);background:var(--red);color:#fff;border-radius:9px;padding:10px 17px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap;min-height:40px}.btn:hover{background:#cc2330;color:white}.btn.secondary{background:white;border-color:#e1e5ed;color:#4b5870}.btn.secondary:hover{background:var(--bg);color:var(--ink)}.btn.danger{background:#fff0f1;border-color:#f8d5d8;color:#cb2636}.btn.small{padding:7px 11px;font-size:11px;min-height:32px}.toolbar,.row-actions{display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap}.toolbar{margin-bottom:22px}.row-actions{justify-content:flex-start}.toolbar>label{min-width:220px}.search{display:flex;gap:10px;max-width:480px;flex:1}.inline{display:inline-flex;gap:8px;align-items:center}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.stack{display:grid;gap:18px}.wide{grid-column:1/-1}.narrow{max-width:900px}.form-actions{border-top:1px solid var(--line);padding-top:20px;margin-top:6px}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;color:#526079}input,select,textarea{width:100%;padding:11px 12px;border-radius:8px;border:1px solid #dfe4ec;background:#fff;min-width:0;color:var(--ink);font-size:13px}input::placeholder{color:#a0a8b5}textarea{resize:vertical}.check{display:flex;flex-direction:row;align-items:center;gap:9px;font-weight:400}.check input{width:17px;height:17px;accent-color:var(--red)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap;text-align:left}th{background:#f8f9fc;padding:12px 14px;color:#8c95a6;font-size:10px;text-transform:uppercase;letter-spacing:.6px;font-weight:600}td{padding:16px 14px;border-bottom:1px solid #f0f1f5;vertical-align:middle}td small{display:block;color:#919aaa;font-size:11px;font-weight:400;max-width:260px;white-space:normal;overflow-wrap:anywhere}.amount{font-weight:700}.badge{display:inline-flex;border-radius:6px;padding:4px 9px;background:#eef0f6;color:#5b6680;font-size:10px;font-weight:600;white-space:nowrap}.badge.green{background:#eaf7f1;color:#258465}.badge.orange{background:#fff2e5;color:#b07126}.pagination{display:flex;justify-content:space-between;align-items:center;padding-top:20px;gap:12px;color:var(--muted);font-size:11px}.empty{text-align:center;padding:38px 20px;color:var(--muted);width:100%}.empty>.icon{width:30px;height:30px;color:#b4bdcd;margin-bottom:10px}.empty h3{color:#526079;margin:8px 0}.empty p{font-size:12px;margin:0}.alert{padding:15px 18px;border-radius:10px;margin-bottom:20px;font-size:13px}.alert.error{background:#fff0ef;color:#a83435;border:1px solid #f4d3d3}.alert.success{background:#eaf8f0;color:#267650;border:1px solid #cce9d9}.callout{display:flex;justify-content:space-between;align-items:center;gap:20px}.callout p{margin:0}.prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.group-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.group-row strong{margin-right:8px}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px}.schedule{padding:18px;border:1px solid var(--line);border-left:3px solid var(--red);border-radius:10px;background:#fcfcfe}.schedule p{color:var(--muted);font-size:12px}.schedule h3{margin-bottom:7px}.integration-status{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:15px;font-size:12px;color:var(--muted)}.announcement h2{margin-top:12px}.announcement p{font-size:13px;color:#647087}.page-footer{padding:0 38px 25px;color:#8d97a8;font-size:11px;display:flex;justify-content:space-between}dialog{border:0;padding:28px;border-radius:18px;max-width:680px;width:calc(100% - 32px);max-height:90dvh;box-shadow:0 30px 100px #101d3c40;color:var(--ink)}dialog::backdrop{background:#0a183e88;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:12px}.dialog-head h2{margin:0}.dialog-head button{border:0;background:var(--bg);border-radius:8px;font-size:24px;width:36px;height:36px;color:var(--muted)}hr{border:0;border-top:1px solid var(--line);margin:25px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.scrim,.menu-toggle{display:none}.login-body{background:#edf0f6;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:36px}.login-shell{width:1050px;min-height:650px;display:grid;grid-template-columns:1fr 1fr;background:white;border-radius:24px;overflow:hidden;box-shadow:0 24px 70px #12234910}.login-story{background:var(--navy);color:#fff;padding:56px 48px;position:relative;overflow:hidden}.login-story:after{content:'';position:absolute;width:380px;height:380px;border:65px solid #ffffff04;border-radius:50%;right:-160px;bottom:-110px;pointer-events:none}.login-story h1{font-size:61px;letter-spacing:-2.5px;line-height:1.12;margin:45px 0 22px}.login-story h1 em{font-style:normal;color:#ff6470}.login-story>p{color:#b8c3da;font-size:15px}.story-card{display:flex;gap:14px;align-items:center;padding:20px;border:1px solid #ffffff20;border-radius:14px;margin-top:35px;background:#ffffff05}.story-card strong{font-size:13px}.story-card small{display:block;color:#aebbd5;font-size:11px;margin-top:3px}.story-dot{background:#ff6170;width:9px;height:9px}.story-footer{display:block;margin-top:55px;font-size:9px;letter-spacing:2px;color:#9aa9c5}.login-form{padding:52px 48px;display:flex;flex-direction:column;gap:24px;justify-content:center}.login-logo{width:220px;height:70px;object-fit:contain;align-self:flex-start;margin-bottom:13px}.login-form h2{font-size:28px}.login-form p{margin-bottom:0}.login-form footer{font-size:10px;color:#9ba4b3;margin-top:auto;padding-top:18px}.password-wrap{position:relative}.password-wrap input{padding-right:65px}.eye{position:absolute;right:8px;top:8px;background:none;border:0;padding:4px 5px;font-size:11px;color:var(--muted)}
@media(min-width:1600px){.content{padding-top:45px}.welcome{padding:36px 40px}}
@media(max-width:1150px){.sidebar{width:228px}.brand img{width:166px}.main-shell{margin-left:228px}.content{padding:25px}.topbar{padding:0 25px}.metrics.four{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.welcome img{margin-right:0;width:110px;height:110px}.workspace strong{max-width:130px}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:258px}.main-shell{margin-left:0}.menu-open .sidebar{transform:translateX(0)}.menu-open .scrim{display:block;position:fixed;inset:0;border:0;background:#0d173f77;z-index:19}.menu-toggle{display:block;border:0;background:none;color:var(--navy);font-size:23px;padding:0 7px 0 0}.topbar{height:64px;padding:0 17px}.top-user>span:not(.avatar){display:none}.topbar-left{gap:7px}.content{padding:24px 16px}.page-heading{margin-bottom:20px}h1{font-size:25px}.date-chip{font-size:10px;padding:7px 9px}.welcome{padding:24px;gap:15px}.welcome h2{font-size:24px}.welcome img{width:68px;height:68px;border-radius:15px;padding:4px}.welcome .eyebrow{font-size:8px;letter-spacing:1px}.welcome p{font-size:12px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{padding:15px}.metric>strong{font-size:24px}.metric-head{font-size:11px}.metric-head .icon{display:none}.metric>small{font-size:10px}.panel{padding:20px 16px}.table-panel{padding:20px 0}.table-panel>h2,.table-panel>p,.table-panel>.section-title,.table-panel>.pagination{margin-left:16px;margin-right:16px}.table-panel>.pagination{margin-bottom:0}.toolbar,.section-title{align-items:flex-start;flex-wrap:wrap}.search{min-width:100%;max-width:none}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.callout{align-items:flex-start;flex-direction:column}.page-footer{padding:0 17px 25px}.month-filter input{max-width:160px}.login-body{padding:16px}.login-shell{grid-template-columns:1fr;min-height:0;max-width:480px}.login-story{display:none}.login-form{padding:35px 25px;gap:25px}.login-logo{width:200px}.pagination{align-items:flex-start;flex-direction:column}.two-col{gap:0}.section-title h2{font-size:18px}dialog{padding:22px}.row-actions{gap:7px}.integration-status{gap:10px}.workspace strong{max-width:150px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* v2 — Temas limitados por rol. El administrador de negocio conserva el diseño original. */
.role-global{color-scheme:dark;--ink:#e1e7f2;--muted:#95a4bc;--line:#2b3547;--bg:#0c111b;--navy:#152137;--red:#fb7180;--radius:12px;background:var(--bg)}
.role-global .sidebar{background:#101722;border-color:#263145}
.role-global .brand{background:#f4f6fc;border-radius:10px;padding:6px 12px;margin:0 4px 25px;align-self:flex-start}
.role-global .brand img{height:48px;width:182px;display:block}
.role-global .workspace{background:#192333;border:1px solid #2b374c}
.role-global .avatar{background:#26344e;color:#b9cfff;border:1px solid #3a4a65;font-family:Consolas,monospace}
.role-global .nav-label,.role-global .eyebrow,.role-global .date-chip,.role-global .chart-label,.role-global .metric>strong{font-family:Consolas,'Courier New',monospace}
.role-global nav a,.role-global .sidebar-bottom>a,.role-global .logout button{color:#a9b6cc}
.role-global nav a.selected{background:#20324b;color:#bcd8ff;box-shadow:inset 3px 0 #7faeff}
.role-global nav a:hover,.role-global .sidebar-bottom>a:hover,.role-global .logout button:hover{background:#1c293d;color:#e4eeff}
.role-global .topbar{background:#101722;border-color:var(--line);color:#a0aec5}
.role-global .topbar strong,.role-global .menu-toggle{color:#e1e7f2}
.role-global .slash{color:#66758c}
.role-global .small-avatar{background:#302535;color:#ffadb7;border-color:#623448}
.role-global .date-chip{background:#151f2e;color:#b2c2d9;border-color:#324058}
.role-global .welcome{background:radial-gradient(ellipse at top right,#293b60 0,transparent 65%),linear-gradient(115deg,#162135,#111927);border:1px solid #344562;border-radius:12px;box-shadow:0 12px 30px #0002}
.role-global .welcome .eyebrow{color:#91baff}.role-global .welcome p{color:#b0bfd6}
.role-global .welcome img{height:105px;width:105px;border-radius:18px;transform:none;opacity:.92}
.role-global .metric,.role-global .panel{background:#141d2b;border-color:var(--line);box-shadow:0 8px 20px #0001}
.role-global .metric{border-top:2px solid #426da6}
.role-global .metric:last-child{border-top-color:#fa788a}
.role-global .metric-head{color:#a3b1c6}.role-global .metric-head .icon{color:#84a9dd}
.role-global .metric>strong{color:#edf3ff;font-size:28px}.role-global .metric>small{color:#95a4bc}
.role-global .chart-grid{stroke:#2c394e}.role-global .chart-value{fill:#d7e2f3}.role-global .chart-label{fill:#a6b4c9}
.role-global .chart-bar{fill:#ee7184}.role-global .chart-panel:nth-child(2) .chart-bar{fill:#7ca8ed}
.role-global input,.role-global select,.role-global textarea{background:#0e1623;border-color:#38465d;color:#e4ebf7}
.role-global input::placeholder{color:#8698b1}.role-global label{color:#bdc9dd}
.role-global .btn{background:#df405b;color:#fff;border-color:#eb5972}.role-global .btn:hover{background:#c9304c}
.role-global .btn.secondary{background:#1c2a3e;border-color:#3a4b65;color:#ccdcf3}.role-global .btn.secondary:hover{background:#293a53}
.role-global .btn.danger{background:#3b202c;border-color:#6e3447;color:#ffb2be}
.role-global th{background:#192537;color:#afbed4}.role-global td{border-color:#283348}.role-global td small{color:#9aabc4}
.role-global .badge{background:#28354b;color:#cbdaf0}.role-global .badge.green{background:#163b32;color:#9ce1c0}.role-global .badge.orange{background:#42351f;color:#f5ce8d}
.role-global .alert.error{background:#3b202a;color:#ffbac4;border-color:#70404d}.role-global .alert.success{background:#15392d;color:#a8e3c1;border-color:#2e6351}
.role-global .empty h3{color:#b9c7dd}.role-global .empty>.icon{color:#7187a8}
.role-global dialog{background:#141d2b;color:#e1e7f2;border:1px solid #3d4c66}.role-global .dialog-head button{background:#26334a;color:#c4d4ef}
.role-global .page-footer,.role-global .sidebar-bottom>small{color:#8b9bb4}
.role-global .page-heading .eyebrow{color:#8cb7ff}.role-global .section-title>a{color:#ff9ca9}

/* Portal final: cálido, ligero y con accesos sencillos. */
.role-client{--bg:#faf7f5;--line:#eee5e1;--muted:#817b80;--radius:20px;--red:#cf4b5b;background:radial-gradient(ellipse at 100% 0,#fcebe7 0,transparent 48%),var(--bg)}
.role-client .sidebar{background:#fffdfc;border-color:#eee4df}.role-client .workspace{background:#f9efeb}
.role-client .avatar{background:#fae2dc;color:#9d4e51;border-radius:12px}
.role-client nav a{color:#746a73}.role-client nav a.selected{background:#fbe4de;color:#9f3c4c;box-shadow:inset 3px 0 #da6a73}
.role-client nav a:hover{background:#fcf0eb;color:#a74251}.role-client .sidebar-bottom>a,.role-client .logout button{color:#776c76}
.role-client .topbar{background:#fffdfce8;border-color:#efe4de}.role-client .small-avatar{background:#fae3de;color:#9b4655}
.role-client .date-chip{background:#fffdfc;border-color:#ecdfd9;color:#81767e}
.role-client .welcome{background:radial-gradient(circle at 100% 5%,#ffdbbd 0,transparent 48%),linear-gradient(110deg,#f9d4cf,#ffe8dc);color:#663340;padding:34px;border:1px solid #f3cfc5;box-shadow:0 10px 25px #9c5b4c08;border-radius:24px}
.role-client .welcome .eyebrow{color:#9e4f59}.role-client .welcome h2{color:#623345}.role-client .welcome p{color:#815460}
.role-client .welcome img{background:#fff9f5;height:100px;width:100px;padding:10px;border-radius:28px;transform:rotate(-7deg);box-shadow:0 8px 20px #a8665712}
.role-client .panel,.role-client .metric{box-shadow:0 6px 20px #49352b04;border-color:#eee5e0}
.role-client .metric{padding:23px;border-radius:20px;border-top:3px solid #edb2a5}
.role-client .metric:nth-child(2){border-top-color:#b3cbbc}.role-client .metric:nth-child(3){border-top-color:#c7bedf}
.role-client .metric-head{color:#7c6e78}.role-client .metric-head .icon{color:#b5787d}
.role-client .metric>strong{font-size:25px;color:#4c4058}.role-client .metric>small{color:#827781}
.role-client .btn{background:#b94458;border-color:#b94458}.role-client .btn:hover{background:#a33549}
.role-client .btn.secondary{background:#fffaf7;border-color:#eadad3;color:#755767}
.role-client input,.role-client select,.role-client textarea{border-color:#e5dad6;background:#fffdfc}
.role-client .announcement{border-left:4px solid #e7b0a4}.role-client .announcement h2{color:#684555}.role-client .announcement p{color:#756472}
.role-client .schedule{background:#fffcfa;border-color:#f0e4dc;border-left-color:#d78389}.role-client th{background:#fcf4ef;color:#86737c}.role-client td{border-color:#f1e8e3}
.role-client .empty{border:1px dashed #e7d9d1;border-radius:20px;background:#fffcfa}.role-client .empty h3{color:#77616d}
.portal-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:-3px 0 25px}
.portal-shortcuts>a{display:flex;gap:15px;align-items:center;padding:20px 22px;background:#fffdfc;border:1px solid #ecdfd9;border-radius:18px;box-shadow:0 5px 15px #64403a04;transition:transform .15s,box-shadow .15s}
.portal-shortcuts>a:hover{transform:translateY(-2px);box-shadow:0 8px 22px #815b4a0d;color:#9f3c4c}
.portal-shortcuts>a>span:nth-child(2){flex:1}.portal-shortcuts strong{display:block;font-size:14px;color:#654756}.portal-shortcuts small{display:block;color:#8b7780;font-size:11px;margin-top:3px}
.shortcut-icon{background:#fbe7df;color:#ae6471;border-radius:13px;width:44px;height:44px;display:flex;justify-content:center;align-items:center;flex-shrink:0}
.portal-shortcuts>a:nth-child(2) .shortcut-icon{background:#eaf1eb;color:#5b866f}
.role-client .badge.green{background:#eaf5ed;color:#377854}.role-client .badge.orange{background:#fff0da;color:#9a681f}
@media(max-width:1150px){.role-global .brand img{width:152px}}
@media(max-width:760px){.role-global .brand img{width:182px}.role-global .welcome img{height:65px;width:65px;border-radius:13px}.role-global .metric>strong{font-size:23px}.role-client .welcome{padding:24px;border-radius:20px}.role-client .welcome img{height:65px;width:65px;padding:6px;border-radius:18px}.role-client .metric{padding:16px}.role-client .metric>strong{font-size:21px}.portal-shortcuts{grid-template-columns:1fr;gap:10px;margin-bottom:20px}.portal-shortcuts>a{padding:15px 17px}.role-client .metrics{grid-template-columns:1fr}.role-client .metric{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 15px}.role-client .metric>strong{grid-column:2;grid-row:1/3;margin:0;text-align:right;max-width:160px}.role-client .metric>small{grid-column:1}.role-client .metric-head{font-size:12px}.role-client .metric-head .icon{display:none}}


/* =====================================================
   CLIENTES FINALES
   Azul petróleo + turquesa + detalles violeta
   ===================================================== */

body.role-client {
    --bg: #f3f7fb;
    --line: #dde7ef;
    --muted: #617589;
    --red: #087f8c;

    color: #243b53;

    background:
        radial-gradient(
            ellipse at top right,
            #dceff4,
            transparent 55%
        ),
        #f3f7fb;
}

/* Menú lateral */

.role-client .sidebar {
    background: #ffffff;
    border-color: #dfe8f0;
}

.role-client .workspace {
    background: #edf4fa;
}

.role-client .avatar {
    color: #17617c;
    background: #dceef5;
}

.role-client nav a {
    color: #526b81;
}

.role-client nav a.selected {
    color: #ffffff;
    background: linear-gradient(110deg, #175675, #087f8c);
    box-shadow: 0 5px 14px #17567520;
}

.role-client nav a:hover:not(.selected) {
    color: #126b80;
    background: #e9f4f7;
}

.role-client .sidebar-bottom > a,
.role-client .logout button {
    color: #526b81;
}

/* Barra superior */

.role-client .topbar {
    background: #ffffff;
    border-color: #dfe8f0;
}

.role-client .small-avatar {
    color: #54509c;
    background: #eae8fa;
}

.role-client .date-chip {
    color: #526b81;
    background: #ffffff;
    border-color: #dfe8f0;
}

.role-client .eyebrow {
    color: #087582;
}

/* Bienvenida: principal zona de color */

.role-client .welcome {
    color: #ffffff;

    background:
        radial-gradient(
            circle at top right,
            #249da0,
            transparent 65%
        ),
        linear-gradient(115deg, #183e65, #126d80);

    border: 1px solid #216b81;
    box-shadow: 0 10px 25px #17496918;
}

.role-client .welcome .eyebrow {
    color: #b9f0ee;
}

.role-client .welcome h2 {
    color: #ffffff;
}

.role-client .welcome p {
    color: #deeff7;
}

.role-client .welcome img {
    background: #f7fcff;
    box-shadow: 0 8px 20px #102b4420;
}

/* Tarjetas: fondo blanco y acentos moderados */

.role-client .panel,
.role-client .metric {
    background: #ffffff;
    border-color: #dfe8f0;
    box-shadow: 0 6px 18px #24486608;
}

.role-client .metric {
    border-top: 3px solid #2786b2;
}

.role-client .metric:nth-child(2) {
    border-top-color: #16a095;
}

.role-client .metric:nth-child(3) {
    border-top-color: #8274c8;
}

.role-client .metric-head {
    color: #526b81;
}

.role-client .metric-head .icon {
    color: #237e9c;
}

.role-client .metric > strong {
    color: #203e59;
}

.role-client .metric > small {
    color: #65798b;
}

/* Botones */

.role-client .btn {
    color: #ffffff;
    background: #087f8c;
    border-color: #087f8c;
}

.role-client .btn:hover {
    color: #ffffff;
    background: #066875;
    border-color: #066875;
}

.role-client .btn.secondary {
    color: #245c7b;
    background: #edf5fa;
    border-color: #cddfea;
}

.role-client .btn.secondary:hover {
    background: #dfedf6;
}

/* Formularios, incluido Mi perfil */

.role-client label {
    color: #425e76;
}

.role-client input,
.role-client select,
.role-client textarea {
    color: #243b53;
    background: #fbfdff;
    border-color: #cfdde8;
}

.role-client input::placeholder {
    color: #73869a;
}

.role-client input:focus,
.role-client select:focus,
.role-client textarea:focus {
    border-color: #168694;
}

.role-client input:focus-visible,
.role-client select:focus-visible,
.role-client textarea:focus-visible,
.role-client button:focus-visible,
.role-client a:focus-visible {
    outline: 3px solid #16869455;
    outline-offset: 3px;
}

.role-client .check input {
    accent-color: #087f8c;
}

/* Anuncios y horarios */

.role-client .announcement {
    border-left: 4px solid #21a298;
}

.role-client .announcement h2 {
    color: #235778;
}

.role-client .announcement p {
    color: #526b81;
}

.role-client .schedule {
    background: #f6faff;
    border-color: #dce7f0;
    border-left-color: #5c83c4;
}

.role-client .schedule h3 {
    color: #245c7b;
}

/* Tablas */

.role-client th {
    color: #4d6780;
    background: #edf4fa;
}

.role-client td {
    border-color: #e5edf4;
}

/* Mensajes sin contenido */

.role-client .empty {
    background: #f8fbfe;
    border-color: #cddfea;
}

.role-client .empty h3 {
    color: #42647e;
}

.role-client .empty > .icon {
    color: #6596b4;
}

/* Accesos rápidos, si están incluidos en tu inicio */

.role-client .portal-shortcuts > a {
    background: #ffffff;
    border-color: #dce7f0;
    box-shadow: 0 5px 15px #24486608;
}

.role-client .portal-shortcuts > a:hover {
    color: #087582;
    box-shadow: 0 8px 22px #24486615;
}

.role-client .portal-shortcuts strong {
    color: #245c7b;
}

.role-client .portal-shortcuts small {
    color: #65798b;
}

.role-client .shortcut-icon {
    color: #237c99;
    background: #e0f0f7;
}

.role-client .portal-shortcuts > a:nth-child(2) .shortcut-icon {
    color: #6656a4;
    background: #eeeafa;
}

/* Mantener colores claros para los estados */

.role-client .badge.green {
    color: #226b4d;
    background: #e4f4eb;
}

.role-client .badge.orange {
    color: #865716;
    background: #fff1d8;
}

/* Citas: utiliza los colores del rol actual */

.cita-editor > summary {
    cursor: pointer;
    color: var(--ink);
    font-weight: 600;
    padding: 10px 0;
}

.cita-editor[open] > summary {
    margin-bottom: 12px;
}

.cita-editor .form-grid,
.cita-editor .stack {
    margin: 14px 0 20px;
}

.cita-card .section-title {
    margin-top: 0;
}

.cita-card p {
    overflow-wrap: anywhere;
}

.cita-card .btn {
    white-space: normal;
}

.cita-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 0;
    border-bottom: 1px solid var(--line);
}

.cita-summary:last-child {
    border-bottom: 0;
}

.citas-home {
    border-left: 4px solid #168b97;
}

@media (max-width: 760px) {
    .cita-summary {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .cita-card .section-title {
        align-items: flex-start;
    }
}