.site-header{height:88px;padding-left:max(24px,calc((100vw - 1240px)/2));padding-right:max(24px,calc((100vw - 1240px)/2));gap:34px}
.site-header .brand{flex:0 0 auto;padding:4px 0}
.site-header .brand .app-logo{content:url('/assets/logo-header.png');display:block;width:250px;height:auto;max-height:66px;object-fit:contain;border-radius:10px}
.site-header .brand .app-nombre{display:none}
.sidebar{width:270px;padding-top:20px}
.sidebar-brand{padding:0 6px 25px}
.sidebar-brand .app-logo{content:url('/assets/logo-header.png');display:block;width:100%;height:auto;max-height:66px;object-fit:contain;background:#fff;border-radius:11px;padding:4px}
.sidebar-brand .app-nombre{display:none}
.dashboard-mode .view{margin-left:270px}
.hero{padding-top:88px;gap:72px}
.hero>div:first-child{max-width:690px}
.hero h1{max-width:680px}
.hero p{line-height:1.75}
.auth-aside .app-logo{width:260px;max-width:100%;height:auto}
.password-field{position:relative!important;display:block!important;width:100%!important}
.password-field input{display:block!important;width:100%!important;padding-right:54px!important;margin:0!important}
.password-field .toggle-password{position:absolute!important;right:3px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;width:44px!important;height:44px!important;min-height:44px!important;margin:0!important;padding:0!important;display:grid!important;place-items:center!important;background:transparent!important;color:var(--muted)!important;border-radius:8px!important;z-index:2}
.password-field .toggle-password:hover,.password-field .toggle-password:focus-visible{color:var(--accent2)!important;background:color-mix(in srgb,var(--accent) 10%,transparent)!important;outline:none}
.password-field .toggle-password svg{width:20px!important;height:20px!important;pointer-events:none}
.home-visuals{display:flex;flex-direction:column;gap:24px}.home-visual-card{display:grid;grid-template-columns:1.08fr .92fr;min-height:390px;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow)}.home-visual-card.reverse{grid-template-columns:.92fr 1.08fr}.home-visual-card.reverse img{order:2}.home-visual-card img{width:100%;height:100%;min-height:390px;object-fit:cover}.home-visual-card>div{display:flex;flex-direction:column;justify-content:center;padding:48px}.home-visual-card h2{margin:8px 0 12px;font-size:clamp(27px,3.5vw,40px)}.home-visual-card p{margin:0;color:var(--text2);font-size:16px}.photo-credit{margin:0;text-align:right;color:var(--muted);font-size:11px}.photo-credit a{color:inherit}
@media(max-width:900px){.site-header .brand .app-logo{width:210px}.site-header{gap:16px}.header-actions{margin-left:auto}}
@media(max-width:768px){.site-header{height:80px;padding:0 14px}.site-header .brand .app-logo{width:150px;max-height:58px}.header-actions{gap:5px}.header-actions .icon-btn{width:40px;min-height:40px}.header-actions .btn-primary{font-size:13px;min-height:42px}.dashboard-mode .view{margin-left:0}.hero{padding-top:52px}.hero h1{font-size:43px;letter-spacing:-.04em}.hero p{font-size:17px}.hero-actions .btn{min-height:48px}.verification-head .app-logo{content:url('/assets/logo-header.png');width:210px;max-height:62px}}
@media(max-width:390px){.site-header .brand .app-logo{width:132px}.header-actions .btn-primary{padding:8px 10px;font-size:12px}.hero h1{font-size:39px}}
@media(max-width:768px){.home-visual-card,.home-visual-card.reverse{grid-template-columns:1fr;min-height:0}.home-visual-card.reverse img{order:0}.home-visual-card img{min-height:220px;max-height:280px}.home-visual-card>div{padding:28px 22px}.photo-credit{text-align:left}}
.compliance-section{display:grid;gap:18px}.compliance-alert{display:grid;grid-template-columns:auto 1fr;gap:20px;padding:28px;border:1px solid color-mix(in srgb,var(--accent2) 38%,var(--border));border-left:5px solid var(--accent2);border-radius:18px;background:color-mix(in srgb,var(--accent2) 7%,var(--surface));box-shadow:var(--shadow)}.compliance-alert-critical{border-color:color-mix(in srgb,#d69b16 58%,var(--border));border-left-color:#d69b16;background:color-mix(in srgb,#f0b429 10%,var(--surface))}.compliance-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--surface);color:var(--accent2);box-shadow:0 4px 18px #0001}.compliance-alert-critical .compliance-icon{color:#b37700}.compliance-alert h2{margin:5px 0 10px;font-size:clamp(22px,3vw,32px)}.compliance-alert p{margin:6px 0;line-height:1.7;color:var(--text2)}.compliance-alert code{padding:2px 6px;border-radius:5px;background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text);font-size:.88em}.legal-precision{font-size:13px}.compliance-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:15px}.compliance-links a{color:var(--accent2);font-weight:750}.dashboard-compliance{margin-bottom:28px;padding:20px}.dashboard-compliance p{margin:4px 0}
@media(max-width:600px){.compliance-alert{grid-template-columns:1fr;padding:22px 18px}.compliance-icon{width:44px;height:44px}.compliance-alert h2{font-size:23px}}

/* Premium interface layer: shared by public, client and admin shells. */
.btn-primary,.btn-success,button.btn-primary,a.btn-primary{color:#fff!important;background:linear-gradient(135deg,#00a99d 0%,#007f86 100%)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 9px 24px rgba(0,142,132,.24),inset 0 1px 0 rgba(255,255,255,.22);text-shadow:0 1px 1px rgba(0,18,56,.2);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.btn-primary:hover,.btn-success:hover,button.btn-primary:hover,a.btn-primary:hover{color:#fff!important;filter:brightness(1.07) saturate(1.08);transform:translateY(-2px);box-shadow:0 13px 30px rgba(0,142,132,.34),inset 0 1px 0 rgba(255,255,255,.28)}.btn-primary:active,.btn-success:active{transform:translateY(0);box-shadow:0 5px 14px rgba(0,142,132,.24)}
[data-theme="dark"] .btn-primary,[data-theme="dark"] .btn-success,[data-theme="dark"] button.btn-primary,[data-theme="dark"] a.btn-primary{color:#fff!important;background:linear-gradient(135deg,#00b9aa 0%,#00767d 100%)!important;box-shadow:0 0 0 1px rgba(33,238,217,.16),0 11px 30px rgba(0,187,170,.25),inset 0 1px 0 rgba(255,255,255,.24)}
.hero-seal{isolation:isolate;background:radial-gradient(circle at 68% 22%,rgba(0,198,183,.5),transparent 32%),linear-gradient(145deg,#001238,#003f5c)!important;box-shadow:0 35px 80px rgba(0,18,56,.24),inset 0 1px 0 rgba(255,255,255,.12)!important}.hero-seal:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.09) 47%,transparent 70%);transform:translateX(-110%);animation:premium-sheen 7s ease-in-out infinite;z-index:-1}
.process-card,.value-card,.metric-card,.brand-card,.timeline-card,.toggle-card,.config-grid,.legal-card,.form-card{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--accent2) 14%,var(--border));box-shadow:0 14px 38px rgba(0,18,56,.075),inset 0 1px 0 rgba(255,255,255,.6);transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}.process-card:before,.value-card:before,.metric-card:before,.brand-card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,var(--accent),transparent 82%);opacity:.8}.process-card:hover,.value-card:hover,.brand-card:hover,.timeline-card:hover,.toggle-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent2) 38%,var(--border));box-shadow:0 20px 46px rgba(0,18,56,.13)}
[data-theme="dark"] .process-card,[data-theme="dark"] .value-card,[data-theme="dark"] .metric-card,[data-theme="dark"] .brand-card,[data-theme="dark"] .timeline-card,[data-theme="dark"] .toggle-card,[data-theme="dark"] .config-grid,[data-theme="dark"] .legal-card,[data-theme="dark"] .form-card{box-shadow:0 16px 40px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.04);border-color:rgba(91,139,178,.28)}
.dashboard-mode .view{background-image:radial-gradient(circle at 92% 2%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 28%),linear-gradient(180deg,color-mix(in srgb,var(--surface) 24%,transparent),transparent 300px)}.dashboard-head{padding-bottom:20px;border-bottom:1px solid color-mix(in srgb,var(--accent2) 14%,var(--border))}.metric-card strong{background:linear-gradient(135deg,var(--text),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}.site-header{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 8px 30px rgba(0,18,56,.05)}
@keyframes premium-sheen{0%,70%,100%{transform:translateX(-110%)}85%{transform:translateX(110%)}}
@media(max-width:768px){.btn-primary:hover,.btn-success:hover,button.btn-primary:hover,a.btn-primary:hover{transform:none}.process-card:hover,.value-card:hover,.brand-card:hover,.timeline-card:hover,.toggle-card:hover{transform:none}.process-card,.value-card,.metric-card,.brand-card{border-radius:18px}.dashboard-head{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.hero-seal:after{animation:none}.btn-primary,.btn-success,.process-card,.value-card,.brand-card,.timeline-card,.toggle-card{transition:none!important}}
.forgot-password-link{display:inline-flex;align-items:center;gap:7px;align-self:flex-end;margin-top:10px;color:var(--accent2);font-size:13px;font-weight:750;text-decoration:none}.forgot-password-link:hover{text-decoration:underline}.forgot-password-link svg{width:16px;height:16px}.recovery-card{max-width:560px}.recovery-card .form-head{margin-bottom:28px}.recovery-card .form-note{min-height:24px}.recovery-card .form-actions{align-items:center}
@media(max-width:520px){.forgot-password-link{align-self:flex-start}.recovery-card .form-actions{flex-direction:column-reverse;align-items:stretch}.recovery-card .form-actions .btn{width:100%}}
.register-owner-card{max-width:820px}.owner-type-fieldset{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 24px;padding:0;border:0}.owner-type-fieldset legend{width:100%;margin-bottom:9px;color:var(--muted);font-size:12px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.owner-type-card{display:grid;grid-template-columns:auto 44px 1fr;align-items:center;gap:12px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface2);cursor:pointer;transition:.2s ease}.owner-type-card input{width:18px;height:18px;accent-color:var(--accent2)}.owner-type-card.selected{border-color:var(--accent2);background:color-mix(in srgb,var(--accent) 9%,var(--surface));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.owner-type-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;color:var(--accent2);background:var(--surface)}.owner-type-card strong,.owner-type-card small{display:block}.owner-type-card small{margin-top:2px;color:var(--muted);font-size:12px}.owner-section{margin-top:18px;padding:22px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface) 92%,var(--surface2))}.owner-section-head{display:flex;align-items:center;gap:12px;margin-bottom:20px}.owner-section-head>svg{width:24px;color:var(--accent2)}.owner-section-head h2{margin:0;font-size:19px}.owner-section-head p{margin:2px 0 0;color:var(--muted);font-size:13px}.company-section{border-color:color-mix(in srgb,var(--accent2) 32%,var(--border))}.security-section .field{max-width:440px}.owner-legal-note{margin:20px 0 0}.owner-legal-note p{margin:0}.owner-section[hidden]{display:none}
@media(max-width:650px){.owner-type-fieldset{grid-template-columns:1fr}.owner-type-card{grid-template-columns:auto 40px 1fr}.owner-section{padding:18px 15px}.owner-section-head{align-items:flex-start}}
.code-fieldset{margin:20px 0;padding:0;border:0}.code-fieldset legend{margin-bottom:9px;color:var(--muted);font-size:12px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.code-inputs{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.code-inputs input{width:100%;min-width:0;height:58px;padding:0;text-align:center;text-transform:uppercase;font-size:24px;font-weight:800;color:var(--text);background:var(--surface2);border:1px solid var(--border);border-radius:11px;outline:none}.code-inputs input:focus{border-color:var(--accent2);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.resend-line{margin-top:8px;color:var(--muted);font-size:13px}.resend-line a{color:var(--accent2);font-weight:750}.field select{appearance:auto}.company-section select{cursor:pointer}
@media(max-width:420px){.code-inputs{gap:6px}.code-inputs input{height:52px;font-size:21px}.recovery-card{padding:18px}}
[hidden]{display:none!important}.dashboard-compliance{display:block!important;padding:0;overflow:hidden}.dashboard-compliance[open]{display:block!important}.dashboard-compliance summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px 18px;cursor:pointer;list-style:none}.dashboard-compliance summary::-webkit-details-marker{display:none}.dashboard-compliance summary>span:nth-child(2){display:flex;flex-direction:column;gap:2px}.dashboard-compliance summary strong{font-size:14px;color:var(--text)}.dashboard-compliance .compliance-icon{width:42px;height:42px}.compliance-chevron{width:20px;color:var(--muted);transition:transform .2s ease}.dashboard-compliance[open] .compliance-chevron{transform:rotate(180deg)}.dashboard-compliance-body{padding:0 20px 18px 76px;border-top:1px solid color-mix(in srgb,#d69b16 24%,transparent)}.dashboard-compliance-body p{margin:16px 0 0}.dashboard-compliance:hover summary{background:color-mix(in srgb,#f0b429 5%,transparent)}
@media(max-width:600px){.dashboard-compliance summary{grid-template-columns:auto 1fr auto;padding:14px}.dashboard-compliance-body{padding:0 14px 16px}.dashboard-compliance .compliance-icon{width:38px;height:38px}.dashboard-compliance summary strong{font-size:13px}}
.app-booting .site-header,.app-booting .app-shell{visibility:hidden}.app-booting:after{content:"";position:fixed;inset:0;z-index:20000;background:var(--bg) url('/assets/logo-header.png') center/220px auto no-repeat}.app-booting:before{content:"";position:fixed;left:calc(50% - 22px);top:calc(50% + 58px);z-index:20001;width:44px;height:3px;border-radius:3px;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:boot-pulse 1.1s ease-in-out infinite}
[data-role-only]{display:none!important}body[data-user-role="cliente"] [data-role-only="cliente"]:not([hidden]),body[data-user-role="admin"] [data-role-only="admin"]:not([hidden]){display:flex!important}.dashboard-inline-loader{min-height:calc(100vh - 40px);display:grid;place-content:center;text-align:center;color:var(--muted)}.dashboard-inline-loader span{width:42px;height:42px;margin:auto;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.client-dashboard-premium{position:relative}.premium-dashboard-head{padding:28px;border:1px solid color-mix(in srgb,var(--accent2) 18%,var(--border));border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--accent) 7%,var(--surface)));box-shadow:0 18px 45px rgba(0,18,56,.08)}.premium-dashboard-head .page-title{font-size:clamp(34px,5vw,50px)}.premium-metrics{margin-top:22px}.premium-metrics .metric-card{min-height:150px;padding:22px;background:linear-gradient(150deg,var(--surface),color-mix(in srgb,var(--accent) 5%,var(--surface2)))}.metric-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:14px;border-radius:12px;color:#fff;background:linear-gradient(135deg,#00aa9e,#006f79);box-shadow:0 9px 22px rgba(0,142,132,.22)}.metric-icon svg{width:20px}.dashboard-visual-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.dashboard-visual-card{position:relative;min-height:250px;overflow:hidden;border:1px solid var(--border);border-radius:20px;background:#001238;box-shadow:0 18px 42px rgba(0,18,56,.14);isolation:isolate}.dashboard-visual-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.dashboard-visual-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 20%,rgba(0,10,34,.92) 100%)}.dashboard-visual-card>div{position:absolute;inset:auto 0 0;z-index:2;padding:26px;color:#fff}.dashboard-visual-card .eyebrow{color:#58e1d3}.dashboard-visual-card h3{margin:5px 0;font-size:23px}.dashboard-visual-card p{margin:0;color:#d2e2ea}.dashboard-visual-card:hover img{transform:scale(1.045)}.dashboard-records-head{margin:46px 0 20px}.premium-brand-card{border-radius:20px!important}.premium-brand-card .registration-id{font-size:12px;color:var(--muted)}
@keyframes boot-pulse{0%,100%{transform:scaleX(.45);opacity:.4}50%{transform:scaleX(1);opacity:1}}
@media(max-width:760px){.premium-dashboard-head{padding:22px 18px}.dashboard-visual-grid{grid-template-columns:1fr}.dashboard-visual-card{min-height:220px}.premium-metrics .metric-card{min-height:130px}.dashboard-records-head{margin-top:34px}}
@media(prefers-reduced-motion:reduce){.app-booting:before,.dashboard-inline-loader span{animation:none}.dashboard-visual-card img{transition:none}}
.premium-metrics .metric-icon{color:#fff!important}.premium-metrics .metric-icon svg{color:#fff!important;stroke:#fff!important}
