/* Misión 006: Atry owns the platform shell; a business owns only its surfaces. */
:root{--atry-primary:#4754E6;--atry-primary-hover:#3643CB;--atry-cyan:#00EFFF;--atry-link:#007BA9;--atry-pale:#BCDAED;--atry-alert:#FF2D55;--atry-alert-ink:#A80E32;--atry-positive:#22C55E;--atry-warning:#91630B;--motion-fast:160ms;--motion-normal:240ms;--focus-ring:0 0 0 3px #4754E633;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-control:12px;--radius-panel:20px;--shadow-panel:0 14px 38px #171C6010;--accent:#4754E6;--accent2:#00A5E2;--primary:#4754E6;--radius:20px;--shadow:var(--shadow-panel)}
body{background:#F6F7FC}
:root:not([data-appearance=business]) .btn:not(.secondary,.outline,.danger,.success,.warning,.orange){background:var(--atry-primary);color:#FFFFFF}
:root:not([data-appearance=business]) .btn:not(.secondary,.outline,.danger,.success,.warning,.orange):hover:not(:disabled){background:var(--atry-primary-hover)}
.logo b,.eyebrow,.auth-form .bottom a{color:var(--atry-primary)}
.site{background:#F7F8FC}.hero-window,.price-card.featured{box-shadow:var(--shadow-panel)}
.auth-artwork{background:#191E63}.auth-brand-line{background:var(--atry-cyan)}
.auth-pitch span{color:#BCDAED}.auth-signature a{color:#BCDAED}
.btn.danger{background:#FFF0F3;color:var(--atry-alert-ink);border-color:#FFC0CD}.btn.danger:hover:not(:disabled){background:#FFE0E7}
.badge.cancelled,.badge.no_show,.toast.error,.danger-note{color:var(--atry-alert-ink);border-color:#FFC0CD;background:#FFF0F3}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--brand-focus,var(--atry-primary));outline-offset:3px}
::selection{background:#BCDAED;color:#171B42}
.cc-shell{--accent:var(--atry-primary);--primary:var(--atry-primary);background:#F6F7FC}
.cc-sidebar{background:#1A1E62}.cc-sidebar nav a{color:#CDD1F7}.cc-sidebar nav a:hover,.cc-sidebar nav a[aria-current]{background:#333BA1;border-left-color:var(--atry-cyan);color:#FFFFFF}.cc-brand small{color:#A9F6FF}
.cc-panel,.cc-metric,.cc-table-wrap{border-color:#E2E4F1;box-shadow:0 5px 20px #16195508}
.cc-metric{border-radius:16px;color:#252B63}.cc-metric:hover{border-color:#929BEF;transform:translateY(-2px)}.cc-table th{background:#F0F2FC;color:#515985}.cc-table a,.cc-panel>a{color:#3542C1}
.cc-badge.danger{background:#FFF0F3;color:var(--atry-alert-ink)}.cc-badge.warning{background:#FFF5DE;color:#77520A}.cc-shell :focus-visible{outline-color:var(--atry-primary)}
.cc-empty{padding:18px 20px;border:1px dashed #CDD1E8;border-radius:14px;background:#FAFAFE;color:#5A628A;font-size:13px;margin:14px 0}
.cc-section-negocios .cc-header form[data-cc-form=global],.cc-section-usuarios .cc-header form[data-cc-form=global]{display:none}
.cc-account-actions{margin:0 0 10px}.cc-account-actions summary{cursor:pointer;color:#3542C1;font-weight:650}.cc-account-actions .cc-actions{padding:10px 0}
.cc-guides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cc-guides details{padding:13px 15px;border:1px solid #E2E4F1;border-radius:12px}.cc-guides summary{cursor:pointer;font-weight:650;color:#232A6B}.cc-guides p{font-size:12px;margin:10px 0}.cc-guides a{font-size:12px;color:#3542C1;text-decoration:underline}
.cc-emergency{margin-top:19px;border-top:1px solid #E2E4F1;padding-top:14px}.cc-emergency summary{cursor:pointer;color:var(--atry-alert-ink);font-size:12px;font-weight:700}.cc-emergency p{font-size:12px;color:#6D748A;margin:10px 0}.cc-emergency .cc-actions{padding:8px 0 3px}
.cc-tech{font-size:11px;color:#69718A;margin-top:7px}.cc-tech summary{cursor:pointer}.cc-tech code{display:block;overflow-wrap:anywhere;padding-top:6px;color:#323B70}

.cc-panel h2{color:#232A6B}
:root[data-appearance=business]{--accent:var(--brand-action);--accent2:var(--brand-secondary);--primary:var(--brand-action);--shadow:var(--shadow-panel)}
:root[data-appearance=business] .app-shell,:root[data-appearance=business] .public-shell{--theme-action:var(--brand-action);--theme-secondary:var(--brand-secondary);--theme-soft:var(--brand-soft);--theme-soft-secondary:var(--brand-soft-secondary)}
:root[data-appearance=business] .app-shell .btn:not(.secondary,.outline,.danger,.success,.warning,.orange),:root[data-appearance=business] .public-shell .btn:not(.secondary,.outline,.danger,.success,.warning,.orange){background:var(--theme-action);color:var(--brand-on-action)}
:root[data-appearance=business] .app-shell .btn:not(.secondary,.outline,.danger,.success,.warning,.orange):hover:not(:disabled),:root[data-appearance=business] .public-shell .btn:not(.secondary,.outline,.danger,.success,.warning,.orange):hover:not(:disabled){filter:brightness(.91)}
:root[data-appearance=business] .sidebar{background:#151929;border-right:0;color:#F8F9FF}
:root[data-appearance=business] .sidebar .store-box,:root[data-appearance=business] .sidebar select{background:#252A3D;border-color:#3A4059;color:#F8F9FF}
:root[data-appearance=business] .sidebar .store-icon,:root[data-appearance=business] .sidebar .user-card .avatar{background:var(--theme-action);color:var(--brand-on-action)}
:root[data-appearance=business] .sidebar .navlink{color:#D2D6E8}
:root[data-appearance=business] .sidebar .navlink:hover,:root[data-appearance=business] .sidebar .navlink.active{background:var(--theme-action);color:var(--brand-on-action);box-shadow:inset 3px 0 var(--theme-secondary)}
:root[data-appearance=business] .sidebar .navlink.active .i{color:inherit}
:root[data-appearance=business] .sidebar .side-title{color:#B4BDE0}
:root[data-appearance=business] .app-shell .topbar{border-bottom:2px solid var(--theme-soft-secondary)}
:root[data-appearance=business] .app-shell .card,:root[data-appearance=business] .app-shell .metric,:root[data-appearance=business] .public-shell .card{border-color:var(--theme-soft-secondary)}
:root[data-appearance=business] .app-shell .metric-top .i,:root[data-appearance=business] .app-shell .metric .delta,:root[data-appearance=business] .app-shell .appt-time,:root[data-appearance=business] .app-shell .calendar-date.is-today{color:var(--theme-action)}
:root[data-appearance=business] .app-shell .bar-col .bar{background:var(--theme-action)}
:root[data-appearance=business] .app-shell .settings-tabs button.active{background:var(--theme-soft);border-color:var(--theme-action);color:var(--theme-action)}
:root[data-appearance=business] .public-shell .book-identity{border-top:5px solid var(--theme-action)}
:root[data-appearance=business] .public-shell .service-option.selected,:root[data-appearance=business] .public-shell .staff-option.selected,:root[data-appearance=business] .public-shell .slot.selected{background:var(--theme-soft);border-color:var(--theme-action);box-shadow:inset 0 0 0 1px var(--theme-action)}
:root[data-appearance=business] .public-shell .book-step .num{background:var(--theme-action);color:var(--brand-on-action)}
:root[data-appearance=business] .app-shell .hint-block,:root[data-appearance=business] .public-shell .hint-block{background:var(--theme-soft-secondary);border-color:var(--theme-soft-secondary)}
:root[data-appearance-mode=dark] .app-shell,:root[data-appearance-mode=dark] .public-shell{--bg:#10131D;--surface:#191D2A;--surface2:#222737;--surface3:#2B3143;--line:#394052;--ink:#F4F6FB;--muted:#BEC6D7;background:var(--bg);color:var(--ink);color-scheme:dark}
:root[data-appearance-mode=dark] .app-shell .topbar,:root[data-appearance-mode=dark] .app-shell .card,:root[data-appearance-mode=dark] .app-shell .metric,:root[data-appearance-mode=dark] .public-shell .card,:root[data-appearance-mode=dark] .public-shell .book-identity{background:var(--surface);color:var(--ink)}
:root[data-appearance-mode=dark] .public-shell .service-option,:root[data-appearance-mode=dark] .public-shell .staff-option,:root[data-appearance-mode=dark] .public-shell .slot{background:var(--surface2);color:var(--ink);border-color:var(--line)}
:root[data-appearance-mode=dark] .public-shell .service-option.selected,:root[data-appearance-mode=dark] .public-shell .staff-option.selected,:root[data-appearance-mode=dark] .public-shell .slot.selected{background:var(--theme-soft);color:var(--ink);border-color:var(--theme-action)}
:root[data-appearance-mode=dark] .app-shell input,:root[data-appearance-mode=dark] .app-shell select,:root[data-appearance-mode=dark] .app-shell textarea,:root[data-appearance-mode=dark] .public-shell input,:root[data-appearance-mode=dark] .public-shell select,:root[data-appearance-mode=dark] .public-shell textarea{background:var(--surface2);color:var(--ink);border-color:var(--line)}
:root[data-appearance-mode=dark] .app-shell .field label,:root[data-appearance-mode=dark] .public-shell .field label{color:var(--muted)}
:root[data-appearance-mode=dark] .app-shell .table tr:hover td{background:var(--surface2)}
:root[data-appearance-mode=dark] .app-shell .modal{background:var(--surface);color:var(--ink)}
.appearance-editor{display:grid;gap:18px}.appearance-swatches{display:flex;gap:9px;flex-wrap:wrap}.appearance-swatch{border:1px solid var(--line);background:var(--surface);padding:8px 12px;border-radius:11px;min-height:42px;color:var(--ink)}.appearance-swatch[aria-pressed=true]{border-color:var(--theme-action,var(--atry-primary));box-shadow:var(--focus-ring)}
.appearance-preview{display:grid;grid-template-columns:minmax(110px,.42fr) 1fr;min-height:230px;border:1px solid var(--line);border-radius:16px;overflow:hidden}.appearance-preview aside{background:var(--preview-action);color:var(--preview-on-action);padding:15px;display:grid;align-content:start;gap:12px}.appearance-preview main{background:var(--preview-surface);color:var(--preview-ink);padding:15px;display:grid;gap:11px;align-content:start}.appearance-preview .preview-card{padding:12px;border:1px solid var(--preview-action);border-radius:10px}.appearance-preview .preview-button,.appearance-preview .preview-selected{background:var(--preview-action);color:var(--preview-on-action);padding:8px;border-radius:8px}.appearance-preview .preview-calendar{display:flex;gap:5px}.appearance-preview .preview-calendar span{border:1px solid var(--preview-action);padding:5px;border-radius:5px}.appearance-preview .preview-calendar .selected{background:var(--preview-action);color:var(--preview-on-action)}
.appearance-preview-logo{max-width:52px;max-height:42px;object-fit:contain;background:#FFFFFF;border-radius:7px;padding:3px}
:root[data-appearance-mode=dark] .app-shell .logo-upload{background:var(--surface2);color:var(--ink)}
@media(max-width:540px){.appearance-preview{grid-template-columns:1fr}.appearance-preview aside{display:flex;flex-wrap:wrap;align-items:center}.cc-metrics,.cc-guides{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.cc-guides{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.cc-metric{transition:none}}
/* El panel de marca acompaña el cambio entre acceso y registro. */
.auth-artwork .auth-switch{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;margin-top:30px;padding:10px 19px;border:1px solid #8CEAF2;border-radius:12px;color:#E7FCFF;font-size:13px;font-weight:650;letter-spacing:.01em;transition:background .22s ease,border-color .22s ease,transform .22s ease}
.auth-artwork .auth-switch:hover{background:#6CE5F221;border-color:#C3FAFF;transform:translateY(-2px)}
.auth-artwork .auth-switch .i{width:16px;height:16px}
@media(min-width:801px){
 .auth-shell--register .auth-artwork{grid-column:2;grid-row:1}
 .auth-shell--register .auth-right{grid-column:1;grid-row:1}
}
/* One opaque contour slides; transparent content crossfades inside its clipped surface. */
.auth-shell{overflow-x:clip}
.auth-motion-stage{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:100;background:transparent}
.auth-motion-layer.auth-shell{position:absolute;inset:0;display:block;min-height:0;background:transparent;pointer-events:none}
.auth-motion-layer .auth-motion-surface{z-index:2;will-change:transform;overflow:hidden;isolation:isolate}
.auth-motion-surface>.auth-motion-anchor{z-index:3;will-change:transform;visibility:visible}
.auth-motion-content{position:absolute;inset:0;background:transparent;pointer-events:none}
.auth-motion-layer .auth-right{z-index:1;will-change:opacity}
@media(prefers-reduced-motion:reduce){.auth-artwork .auth-switch,.auth-artwork .auth-switch:hover{transition:none;transform:none}}

/* The brand panel keeps its curved inner edge as it changes sides. */
@media(min-width:801px){
 .auth-shell--login .auth-artwork{border-radius:0 40% 27% 0 / 0 31% 21% 0}
 .auth-shell--register .auth-artwork{border-radius:40% 0 0 27% / 31% 0 0 21%}
}

/* The active destination joins the content without shadow seams or pointed tips. */
@media(min-width:761px){
 ::view-transition-old(root),::view-transition-new(root){animation:none}
 .cc-sidebar nav{margin-right:-18px}
 .cc-sidebar nav a{position:relative;margin-right:18px;transition:background-color .22s ease,color .22s ease,margin-right .22s ease}
 .cc-sidebar nav a[aria-current]{margin-right:0;border-left:0;border-radius:15px 0 0 15px;background:#F6F7FC;color:#232A6B;font-weight:700;view-transition-name:atry-cc-active}
 .cc-sidebar nav a[aria-current] .i{color:#4754E6}
 .cc-sidebar nav a[aria-current]::before,.cc-sidebar nav a[aria-current]::after{content:"";position:absolute;right:0;width:24px;height:24px;pointer-events:none}
 .cc-sidebar nav a[aria-current]::before{top:-24px;background:radial-gradient(circle at 0 0,transparent 23.5px,#F6F7FC 24px)}
 .cc-sidebar nav a[aria-current]::after{bottom:-24px;background:radial-gradient(circle at 0 100%,transparent 23.5px,#F6F7FC 24px)}
 .cc-main{background:#F6F7FC}
 .cc-shell--loading .cc-main{position:relative}
 .cc-shell--loading .cc-main::before{content:"";position:absolute;inset:0 0 auto;height:3px;z-index:3;background:linear-gradient(90deg,#4754E6,#8C99FF,#00C7E7,#4754E6);background-size:200% 100%;animation:atry-cc-progress 1.3s linear infinite}
 ::view-transition-group(atry-cc-active){animation-duration:540ms;animation-timing-function:cubic-bezier(.16,1,.3,1);z-index:5}
 ::view-transition-old(atry-cc-active){animation:atry-cc-old-snap 540ms linear both}
 ::view-transition-new(atry-cc-active){animation:atry-cc-new-snap 540ms linear both}
 .cc-shell--enter #cc-content{animation:atry-cc-content-in 460ms cubic-bezier(.16,1,.3,1) both}
}
@keyframes atry-cc-old-snap{0%,49%{opacity:1}50%,100%{opacity:0}}
@keyframes atry-cc-new-snap{0%,49%{opacity:0}50%,100%{opacity:1}}
@keyframes atry-cc-content-in{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}
@keyframes atry-cc-progress{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.cc-shell--enter #cc-content,.cc-shell--loading .cc-main::before{animation:none}.cc-sidebar nav a{transition:none!important}}

/* Business navigation shares the same curved connection with its own content surface. */
@media(min-width:1001px){
 :root[data-appearance=business] .app-shell{--business-nav-surface:#F6F7FC}
 :root[data-appearance=business][data-appearance-mode=dark] .app-shell{--business-nav-surface:var(--bg)}
 :root[data-appearance=business] .app-shell .main{background:var(--business-nav-surface)}
 :root[data-appearance=business] .sidebar .navlink{position:relative;transition:background-color .22s ease,color .22s ease,transform .22s ease}
 :root[data-appearance=business] .sidebar .navlink.active{margin-right:-18px;border-radius:16px 0 0 16px;background:var(--business-nav-surface);color:var(--ink);box-shadow:inset 3px 0 var(--theme-action);font-weight:750}
 :root[data-appearance=business] .sidebar .navlink.active .i{color:var(--theme-action)}
 :root[data-appearance=business] .sidebar .navlink.active::before,:root[data-appearance=business] .sidebar .navlink.active::after{content:"";position:absolute;right:0;width:24px;height:24px;pointer-events:none}
 :root[data-appearance=business] .sidebar .navlink.active::before{top:-24px;background:radial-gradient(circle at 0 0,transparent 23.5px,var(--business-nav-surface) 24px)}
 :root[data-appearance=business] .sidebar .navlink.active::after{bottom:-24px;background:radial-gradient(circle at 0 100%,transparent 23.5px,var(--business-nav-surface) 24px)}
 .app-shell--enter .main-content{animation:atry-business-content-in 460ms cubic-bezier(.16,1,.3,1) both}
}
@keyframes atry-business-content-in{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.app-shell--enter .main-content{animation:none}}

/* Subtle Atry violet gradient; reference proportions for the two inner curves. */
.auth-artwork{background:linear-gradient(90deg,#4754E6 0%,#6250DF 100%)}
.auth-artwork::before,.auth-motion{display:none}
.auth-artwork .logo b{color:#FFFFFF}
.auth-artwork .auth-pitch h1,.auth-artwork h1 span{color:#FFFFFF}
.auth-artwork .auth-pitch p,.auth-artwork .auth-signature,.auth-artwork .auth-signature a{color:#FFFFFF}
.auth-artwork .auth-switch{border-color:#FFFFFF99;color:#FFFFFF}
.auth-artwork .auth-switch:hover{background:#FFFFFF14;border-color:#FFFFFF}
/* Keep all three phrases intact, including at browser zoom and narrow desktops. */
.auth-artwork .auth-pitch{container-type:inline-size}
.auth-artwork .auth-pitch h1{font-size:clamp(32px,4.3vw,64px);font-size:clamp(32px,13.4cqw,74px);white-space:nowrap}
.auth-artwork .auth-pitch h1 span{white-space:nowrap}

/* Registration layout — balanced with the existing login. */
/* Registration shares the login's half-screen grid and form width.
   The artwork keeps the same viewport height while longer forms can scroll naturally. */
.auth-shell--register .auth-form{max-width:430px}
.auth-shell--register .auth-right{min-width:0;min-height:100svh;padding:32px 24px}
.auth-shell--register .onboarding-progress{margin:20px 0 24px;gap:10px}
.auth-shell--register .onboarding-progress span{padding:8px 2px;font-size:12px}
.registration-wizard section>h2{font-size:30px;line-height:1.2;margin:10px 0 12px}
.registration-wizard section>p{font-size:14px;line-height:1.55;color:var(--muted);margin:0 0 22px;max-width:420px}
.registration-wizard section>.field{margin-bottom:18px}
.registration-wizard .sector-fieldset{margin:0 0 22px;min-width:0}
.registration-wizard .sector-fieldset legend{margin-bottom:10px;font-size:12px;font-weight:700;color:var(--muted)}
.registration-wizard .sector-grid{gap:8px}
.registration-wizard .sector-option>span{min-height:50px;padding:10px 12px;gap:10px;border-radius:12px}
.registration-wizard .sector-option strong{font-size:12px;line-height:1.3}
.registration-wizard .sector-option .i{height:21px;width:21px;flex:none}
.registration-wizard .sector-option:last-child{grid-column:1/-1}
.registration-wizard .sector-option input:checked+span{background:#F0F0FF;border-color:var(--atry-primary);color:var(--atry-primary)}
.registration-wizard .sector-option input:checked+span strong,.registration-wizard .sector-option input:checked+span .i{color:var(--atry-primary)}
.registration-wizard .hint-block{font-size:12px;line-height:1.6;margin:6px 0 18px}
.auth-shell--register .auth-form .bottom{margin-top:18px}
@media(min-width:801px){
 .auth-shell--register{align-items:start}
 .auth-shell--register .auth-artwork{height:100svh;min-height:100svh;position:sticky;top:0;align-self:start}
 .auth-shell--register .auth-right{padding-block:36px}
}
@media(max-width:800px){
 .auth-shell--register .auth-right{padding:32px 24px 40px}
 .auth-shell--register .auth-return{margin-top:8px}
 .auth-shell--register .auth-form{padding:0}
 .registration-wizard section>h2{font-size:28px}
 .registration-wizard .sector-option>span{min-height:54px}
}
@media(max-width:360px){
 .auth-shell--register .auth-right{padding-inline:20px}
 .registration-wizard .sector-option>span{padding:10px 9px;gap:7px}
 .registration-wizard .sector-option strong{font-size:11px}
 .registration-wizard section>h2{font-size:26px}
}
@media(min-width:801px) and (max-height:800px){
 .auth-shell--register .auth-right{padding-block:24px}
 .auth-shell--register .onboarding-progress{margin:12px 0 18px}
 .registration-wizard section>h2{font-size:28px;margin:8px 0 10px}
 .registration-wizard section>p{margin-bottom:16px}
 .registration-wizard section>.field{margin-bottom:14px}
 .registration-wizard .sector-fieldset{margin-bottom:18px}
 .registration-wizard .sector-option>span{min-height:46px;padding-block:8px}
 .auth-shell--register .auth-form .bottom{margin-top:14px}
}

/* Mirror the brand anchors with the artwork, away from its curved inner edge. */
@media(min-width:801px){
 .auth-artwork>.logo,.auth-artwork>.auth-signature{flex-shrink:0}
 .auth-shell--register .auth-artwork>.logo{align-self:flex-end}
 .auth-shell--register .auth-artwork>.auth-signature{align-self:flex-end;justify-content:flex-end;text-align:right}
}
/* Shared semantic palette: filled actions and explicit evidence labels. */
:root{--atry-danger:#E51D4F;--atry-danger-hover:#C81240;--atry-success:#22C55E;--atry-success-hover:#1DB154;--atry-amber:#F2C94C;--atry-orange:#C44D14;--atry-danger-soft:#FFF0F4;--atry-success-soft:#E8F7F0;--atry-warning-soft:#FFF8DC;--atry-orange-soft:#FFF1E7}
.btn.danger{background:var(--atry-danger);border-color:var(--atry-danger);color:#FFF;box-shadow:0 4px 12px #E51D4F16}
.btn.danger:hover:not(:disabled){background:var(--atry-danger-hover);border-color:var(--atry-danger-hover);color:#FFF}
.btn.success{background:var(--atry-success);border-color:var(--atry-success);color:#FFF}
.btn.success:hover:not(:disabled){background:var(--atry-success-hover);border-color:var(--atry-success-hover)}
.btn.warning{background:var(--atry-amber);border-color:var(--atry-amber);color:#493500}
.btn.orange{background:var(--atry-orange);border-color:var(--atry-orange);color:#FFF}
.cc-shell{background:#F5F6FC}
.cc-main{padding:30px clamp(20px,2.8vw,48px) 28px}
.cc-header{gap:14px;margin-bottom:28px}
.cc-header h1{font-size:28px;line-height:1.25;margin-top:8px;letter-spacing:-.035em}
.cc-header .eyebrow{font-size:10px;letter-spacing:.13em}
.cc-header form{max-width:440px;flex:1}
.cc-header form input{width:100%;min-width:0;font:inherit;font-size:13px}
.cc-header form .btn{flex-shrink:0}
.cc-header .btn{gap:8px;min-height:42px}
.cc-header .btn .i{width:16px;height:16px}
.cc-shell .cc-panel{border:1px solid #E8EAF5;border-radius:22px;padding:24px;box-shadow:0 10px 32px #20255906}
.cc-panel h2{font-size:18px;letter-spacing:-.02em}
.cc-panel>h2:first-child{margin-top:0}
.cc-shell .cc-metric{background:#FFF;color:#20264A;border:1px solid #E8EAF5;border-radius:20px;padding:20px;gap:12px;box-shadow:0 8px 28px #20255906;text-decoration:none;transition:transform 160ms ease,border-color 160ms ease,box-shadow 160ms ease}
.cc-shell .cc-metric:hover{transform:translateY(-3px);border-color:#B6BCF5;box-shadow:0 14px 30px #20255910}
.cc-shell .cc-metric span{color:inherit}
.cc-shell .cc-metric strong{font-size:32px;line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
.cc-metric-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;line-height:1.5}
.cc-metric-label>.i{box-sizing:content-box;padding:9px;border-radius:12px;background:var(--cc-soft,#F1F2FA);color:var(--cc-tone,#747B96);width:19px;height:19px;flex-shrink:0}
.cc-metric-bottom{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#6C7490!important}
.cc-metric-bottom>.i{width:14px;height:14px;color:#858DAA}
.cc-tone-success{--cc-tone:var(--atry-success);--cc-soft:var(--atry-success-soft)}
.cc-tone-warning{--cc-tone:#866000;--cc-soft:var(--atry-warning-soft)}
.cc-tone-danger{--cc-tone:var(--atry-danger);--cc-soft:var(--atry-danger-soft)}
.cc-tone-orange{--cc-tone:var(--atry-orange);--cc-soft:var(--atry-orange-soft)}
.cc-tone-info{--cc-tone:var(--atry-primary);--cc-soft:#EDEEFF}
.cc-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:32px;padding:32px 36px;border-radius:24px;background:linear-gradient(115deg,#202366,#373FA8 70%,#4754E6);color:#FFF;box-shadow:0 14px 34px #252B7D16}
.cc-hero:before{content:'';position:absolute;width:340px;height:340px;border:1px solid #FFFFFF15;border-radius:50%;right:24%;top:-240px;z-index:-1}
.cc-hero-kicker{color:#9EEAF7;font-size:10px;font-weight:700;letter-spacing:.15em}
.cc-hero h2{color:#FFF;font-size:clamp(24px,2.2vw,34px);line-height:1.23;letter-spacing:-.035em;margin:14px 0 12px}
.cc-hero p{font-size:13px;color:#DEE1FF;line-height:1.6;margin:0 0 20px}
.cc-checked{display:flex;gap:7px;align-items:center;color:#C7CEFA;font-size:10px;line-height:1.5}
.cc-checked .i{width:14px;height:14px;flex-shrink:0}
.cc-hero-links{display:grid;gap:9px}
.cc-hero-links>a{display:flex;gap:13px;align-items:center;padding:14px 16px;border:1px solid #FFFFFF25;background:#FFFFFF0B;border-radius:14px;color:#FFF;transition:background 160ms,border-color 160ms;text-decoration:none}
.cc-hero-links>a:hover{background:#FFFFFF19;border-color:#FFFFFF55}
.cc-hero-links>a>.i:first-child{color:#9EEAF7;width:20px;height:20px;flex-shrink:0}
.cc-hero-links>a>.i:last-child{margin-left:auto;width:16px;height:16px;flex-shrink:0}
.cc-hero-links span{font-size:12px;font-weight:650;line-height:1.5}
.cc-hero-links small{display:block;color:#D4D9FF;font-size:10px;font-weight:400;margin-top:2px}
.cc-section-heading{display:flex;gap:12px;align-items:baseline;justify-content:space-between;margin:28px 0 14px}
.cc-section-heading h2{font-size:17px;color:#252B5D;margin:0}
.cc-section-heading>span{font-size:11px;color:#727A94}
.cc-section-inicio .cc-metrics{margin:0 0 6px;gap:14px}
.cc-overview-bottom{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:18px}
.cc-overview-bottom>.cc-panel{min-width:0;margin:16px 0}
.cc-panel-heading{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.cc-panel-heading h2{margin:0 0 5px}
.cc-panel-heading p{margin:0;line-height:1.5}
.cc-section-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;flex-shrink:0;background:#EEF0FF;color:var(--atry-primary)}
.cc-section-icon .i{width:21px;height:21px}
.cc-count{margin-left:auto;display:grid;place-items:center;min-width:28px;height:28px;border-radius:9px;background:#F0F2FA;color:#65708D;font-size:12px}
.cc-clear-state{min-height:144px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;border:1px dashed #DCE5E5;border-radius:16px;background:linear-gradient(135deg,#F4FBF8,#FAFBFF);padding:22px}
.cc-clear-state>.i{width:27px;height:27px;color:var(--atry-success)}
.cc-clear-state strong{font-size:13px;color:#29554D}
.cc-clear-state span{font-size:11px;color:#65788A;line-height:1.6}
.cc-source{line-height:1.7;margin-bottom:0}
.cc-worker>.cc-badge{max-width:100%;white-space:normal}
.cc-worker-date{font-size:12px;color:#485273;margin:14px 0}
.cc-worker>p.small{line-height:1.7}
.cc-worker>.btn{margin-top:10px;gap:14px;font-size:12px}
.cc-shell .cc-badge{display:inline-flex;align-items:center;gap:6px;min-height:25px;padding:5px 9px;border-radius:8px;font-size:10px;font-weight:600;line-height:1.4;background:#F0F2F7;color:#626B83;vertical-align:middle}
.cc-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}
.cc-shell .cc-badge.success{background:var(--atry-success);color:#FFF}
.cc-shell .cc-badge.danger{background:var(--atry-danger-soft);color:#BF153F}
.cc-shell .cc-badge.warning{background:var(--atry-warning-soft);color:#805B00}
.cc-shell .cc-badge.orange{background:var(--atry-orange-soft);color:#A7410F}
.cc-shell .cc-badge.info{background:#ECEEFF;color:#3945C5}
.cc-shell .cc-table-wrap{border:1px solid #E8EAF4;border-radius:15px;box-shadow:none}
.cc-table th{padding:14px 16px;font-size:10px;letter-spacing:.04em}
.cc-table td{padding:16px;line-height:1.6}
.cc-table tbody tr:hover{background:#FAFBFF}
.cc-table td>a{font-weight:600}
.cc-table td small{margin-top:4px;line-height:1.5}
.cc-filters{padding:16px;background:#F0F2FA;border:1px solid #E4E7F3;border-radius:16px;align-items:end}
.cc-filters label{font-size:11px;color:#59617D;gap:7px}
.cc-filters input,.cc-filters select{background:#FFF;font-size:12px}
.cc-filters>.btn{min-height:40px}
.cc-facts{gap:22px;padding:20px 0}
.cc-facts dt{margin-bottom:7px;color:#727A91}
.cc-facts dd{line-height:1.6;color:#28324D}
.cc-footnote{padding-top:16px;border-top:1px solid #E4E7F2;margin-top:14px;line-height:1.6}
.cc-shell a:focus-visible,.cc-shell button:focus-visible{outline:3px solid #7280F6;outline-offset:3px}
@media(min-width:761px){.cc-shell{grid-template-columns:248px minmax(0,1fr)}
.cc-shell .cc-sidebar{background:linear-gradient(170deg,#191D4B,#20265F);padding:28px 16px;gap:16px}
.cc-sidebar .cc-brand{padding:2px 10px 18px}
.cc-sidebar .cc-brand small{font-size:9px;letter-spacing:.15em;color:#A4AFDA;margin-top:18px}
.cc-sidebar nav a{font-size:12px;min-height:44px;line-height:1.45}
.cc-sidebar nav a .i{width:18px;height:18px;stroke-width:1.7}
.cc-sidebar>a:not(.cc-brand){font-size:11px;padding:12px 10px;color:#CAD1ED}
.cc-sidebar>button[data-action=logout]{background:#FFFFFF0C;border:1px solid #FFFFFF20;color:#E9ECFF;min-height:40px}
.cc-sidebar>button[data-action=logout]:hover{background:#FFFFFF18}
}
@media(min-width:761px) and (max-width:1180px){.cc-shell{grid-template-columns:220px minmax(0,1fr)}
.cc-hero{padding:26px;gap:22px}
.cc-metric-label{font-size:11px}
.cc-shell .cc-metric{padding:16px}
.cc-metric-label>.i{padding:7px;width:16px;height:16px}
.cc-overview-bottom{grid-template-columns:1fr}
.cc-overview-bottom>.cc-panel{margin:10px 0}
.cc-header form{max-width:350px}
}
@media(max-width:960px){.cc-section-inicio .cc-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
.cc-hero{grid-template-columns:1fr;gap:22px}
.cc-hero-links{grid-template-columns:1fr}
.cc-hero h2 br{display:none}
.cc-section-heading>span{display:none}
}
@media(max-width:760px){.cc-shell .cc-main{padding:20px 16px}
.cc-header{margin-bottom:20px}
.cc-header h1{font-size:24px}
.cc-shell .cc-panel{padding:20px;border-radius:18px}
.cc-hero{padding:24px;border-radius:20px}
.cc-hero h2{font-size:26px}
.cc-hero p{font-size:12px}
.cc-hero-links>a{padding:12px}
.cc-overview-bottom{grid-template-columns:1fr;gap:0}
.cc-shell .cc-metric{padding:16px;border-radius:16px;gap:10px}
.cc-metric-label{align-items:flex-start;font-size:11px}
.cc-metric-label>.i{width:15px;height:15px;padding:7px;border-radius:9px}
.cc-shell .cc-metric strong{font-size:28px}
.cc-metric-bottom{font-size:9px}
.cc-section-inicio .cc-metrics{gap:10px}
.cc-panel-heading{gap:10px}
.cc-panel-heading h2{font-size:16px}
.cc-header form{max-width:none}
.cc-header>button[data-cc-refresh]{font-size:11px;gap:5px}
.cc-header>button[data-cc-refresh] .i{width:14px;height:14px}
}
@media(prefers-reduced-motion:reduce){.cc-shell .cc-metric{transition:none}
.cc-shell .cc-metric:hover{transform:none}
}


.cc-metric[class*="cc-tone-"]:not(.cc-tone-neutral) .cc-metric-label>.i{background:var(--cc-tone);color:#FFF}
.cc-metric.cc-tone-warning .cc-metric-label>.i{background:var(--atry-amber);color:#493500}
.cc-header>button[data-cc-refresh]{margin-left:auto}
.cc-header form+button[data-cc-refresh]{margin-left:0}
.cc-filters label:has(input[name=q]){flex:2;min-width:210px}
.cc-table .cc-badge{white-space:nowrap}
.cc-table td small{overflow-wrap:anywhere}
@media(min-width:761px){.cc-table{min-width:850px;table-layout:auto}
.cc-attention .cc-table{min-width:600px}
.cc-table td{word-break:normal;overflow-wrap:normal}
}

/* Reflow each table by its own available space, including split panels. */
.cc-table-wrap{container-type:inline-size}
.cc-table th,.cc-table td{word-break:normal}
.cc-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,175px),1fr));align-items:end}
.cc-filters label,.cc-filters label:has(input[name=q]){min-width:0;min-inline-size:0}
.cc-filters input,.cc-filters select{width:100%;min-width:0;max-width:100%}
.cc-filters label:has(input[name=q]){grid-column:1 / -1}
.cc-filters>.btn{justify-self:start}
.cc-title-row{flex-wrap:wrap}
.cc-actions>*{max-width:100%}
.cc-panel-heading>div{min-width:0}
.cc-panel-heading h2{overflow-wrap:break-word}
@container(max-width:900px){
 .cc-table{display:block;min-width:0!important;width:100%;border-collapse:separate}
 .cc-table thead{display:none}
.cc-table tbody{display:grid;gap:12px;background:#F5F6FC}
 .cc-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;padding:20px;background:#FFF;border:1px solid #E8EAF4;border-radius:15px}
 .cc-table td{display:block;min-width:0;max-width:none;border:0;padding:0;overflow-wrap:anywhere!important;font-size:12px}
 .cc-table td:empty{display:none}
.cc-table td:before{content:attr(data-label);display:block;font-size:10px;font-weight:600;letter-spacing:.02em;color:#727A94;margin-bottom:7px}
 .cc-table td strong{margin-top:0}
.cc-table td small{font-size:11px}
.cc-table .cc-badge{white-space:normal;overflow-wrap:normal}
.cc-table td a{overflow-wrap:anywhere}
}
@container(max-width:520px){.cc-table tr{grid-template-columns:1fr;gap:18px;padding:20px}
.cc-table td{font-size:13px}
}
@media(min-width:761px) and (max-width:1200px){.cc-metrics,.cc-section-inicio .cc-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){.cc-header>div{flex:1;min-width:0}
.cc-header .eyebrow{font-size:9px;line-height:1.5;display:block}
.cc-header h1{overflow-wrap:break-word}
.cc-header>button[data-cc-refresh]{margin-left:auto;min-height:38px}
.cc-header form+button[data-cc-refresh]{margin-left:auto}
.cc-hero h2{line-height:1.3}
.cc-panel-heading{align-items:flex-start}
.cc-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
.cc-filters>.btn{min-height:44px}
.cc-facts>div{min-width:0}
.cc-table-wrap{border:0!important;background:transparent!important}
.cc-pagination{gap:8px}
.cc-pagination .btn{min-height:40px}
.cc-section-heading h2{line-height:1.4}
}
@media(max-width:360px){.cc-shell .cc-main{padding:18px 12px}
.cc-hero{padding:20px}
.cc-shell .cc-metric{padding:13px}
.cc-metric-label{flex-wrap:wrap;gap:6px}
.cc-metric-bottom>.i{display:none}
.cc-header .eyebrow{font-size:8px}
.cc-filters{grid-template-columns:1fr}
}

/* Atry platform sidebar only: the same violet family as the approved login. */
.cc-shell .cc-sidebar{background:linear-gradient(155deg,#4754E6 0%,#6250DF 100%);color:#FFF}
.cc-shell .cc-sidebar nav a{color:#F5F4FF}
.cc-shell .cc-sidebar .cc-brand small{color:#E8E8FF}
.cc-shell .cc-sidebar>a:not(.cc-brand){color:#F5F4FF}
.cc-shell .cc-sidebar>button[data-action=logout]{background:#FFFFFF12;border-color:#FFFFFF35;color:#FFF}
.cc-shell .cc-sidebar nav a:hover:not([aria-current]){background:#FFFFFF15;color:#FFF}
.cc-shell .cc-sidebar .logo b{color:#C5F7FF}
.cc-shell .cc-sidebar nav a[aria-current]{color:#262B6D}
.cc-shell .cc-sidebar nav a[aria-current] .i{color:#4754E6}
.cc-shell .cc-sidebar .cc-mobile-account .user-card span{color:#E4E5FF}
.cc-shell .cc-sidebar .cc-mobile-account .user-card .btn{background:#FFFFFF15;border-color:#FFFFFF35;color:#FFF}
.cc-refresh-icon{stroke-width:1.65}
.cc-shell [data-cc-refresh][aria-busy=true] .cc-refresh-icon{animation:cc-refresh-spin .8s linear infinite}
.cc-shell [data-cc-refresh]:hover:not(:disabled) .cc-refresh-icon{transform:rotate(35deg);transition:transform .25s ease}
@keyframes cc-refresh-spin{to{transform:rotate(360deg)}
}
@media(max-width:760px){.cc-shell .cc-sidebar nav a[aria-current]{background:#FFF;color:#262B6D}
.cc-shell .cc-sidebar .sidebar-close{background:#FFFFFF15;border-color:#FFFFFF30;color:#FFF}
}
@media(prefers-reduced-motion:reduce){.cc-shell [data-cc-refresh] .cc-refresh-icon{animation:none!important;transition:none!important;transform:none!important}
}

@media(max-width:760px){.cc-header{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px 10px;align-items:center}
.cc-header>.cc-menu-toggle{grid-column:1;grid-row:1;min-width:38px;width:38px;margin:0}
.cc-header>div{grid-column:2;grid-row:1}
.cc-header h1{font-size:clamp(20px,5.4vw,24px);overflow-wrap:normal;word-break:normal;line-height:1.25}
.cc-header>button[data-cc-refresh],.cc-header form+button[data-cc-refresh]{grid-column:1/-1;grid-row:2;justify-self:end;margin:0}
.cc-header>form{grid-column:1/-1;grid-row:3;width:100%;min-width:0}
.cc-shell .cc-panel .cc-table tr{border-radius:12px}
.cc-shell .cc-panel .cc-table tbody{background:transparent}
.cc-shell .cc-panel p{overflow-wrap:break-word}
}

.cc-section-inicio .cc-metric.cc-tone-success .cc-metric-label>.i{background:#171923;color:#FFF}
/* Keep the platform drawer consistent with its desktop sidebar at every breakpoint. */
.cc-shell .cc-sidebar.sidebar{background:linear-gradient(155deg,#4754E6 0%,#6250DF 100%);color:#FFF}
.cc-shell .cc-sidebar.sidebar nav a{color:#F5F4FF}
.cc-shell .cc-sidebar.sidebar nav a:hover:not([aria-current]){background:#FFFFFF15;color:#FFF}
.cc-shell .cc-sidebar.sidebar nav a[aria-current]{background:#F5F6FC;color:#262B6D;box-shadow:none;border-left:0}
.cc-shell .cc-sidebar.sidebar nav a[aria-current] .i{color:#4754E6}
.cc-shell .cc-sidebar.sidebar>.sidebar-close{background:#FFFFFF15;border-color:#FFFFFF35;color:#FFF}

.account-avatar{display:inline-grid;place-items:center;flex-shrink:0;overflow:hidden}.account-avatar--atry{background:#191E63!important;border:1px solid #FFFFFF30}.account-avatar--atry img{display:block;width:80%;height:80%;object-fit:contain}.cc-sidebar>a>.account-avatar{width:32px;height:32px;border-radius:10px}.account-identity>.account-avatar{width:58px;height:58px;border-radius:17px}
