/* Claridad: navegación estable y acceso directo a las tareas frecuentes. */
.sidebar .side-nav-action { width:100%; display:grid; grid-template-columns:24px minmax(0,1fr); gap:12px; align-items:center; min-height:50px; padding:10px 14px; border:0; border-radius:13px; background:transparent; color:#fff; text-align:left; font:inherit; cursor:pointer; }
.sidebar .side-nav-action:hover { background:var(--brand-orchid); }
.sidebar .side-nav-action .modern-nav-icon { stroke:currentColor; }
.sidebar .side-bottom { margin-top:auto; padding-top:20px; }
.app-shell.nav-compact .sidebar .side-nav-action { width:52px; height:52px; margin:auto; grid-template-columns:1fr; padding:0; place-items:center; }
.app-shell.nav-compact .sidebar .side-nav-action > span { display:none; }
.sidebar #collapseNav { font-size:24px!important; color:#fff; }
.sidebar #collapseNav[aria-expanded=false] { transform:rotate(180deg); }
.register-type-switch { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; padding:6px; border-radius:16px; background:var(--bg); margin:14px 0 20px; }
.register-type-switch button { min-height:44px; padding:8px 4px; border:0; border-radius:11px; background:transparent; color:var(--fg); font:inherit; font-size:14px; cursor:pointer; }
.register-type-switch button[aria-pressed=true] { background:var(--brand-violet); color:#fff; font-weight:600; }
.movement-toolbar { align-items:flex-end; flex-wrap:wrap; }
.movement-toolbar .movement-search { flex:1 1 280px; }
.movement-scope { display:grid; gap:6px; font-size:13px; font-weight:550; }
.movement-scope select { min-height:44px; border:1px solid var(--border); border-radius:12px; padding:8px 12px; background:#fff; color:var(--fg); font:inherit; }
.space-count { display:inline-grid; place-items:center; min-width:28px; min-height:28px; padding:2px 8px; border-radius:9px; background:var(--bg); font-size:15px; vertical-align:middle; }
.access-page { min-height:100dvh; display:flex; flex-direction:column; align-items:center; gap:24px; padding:32px 20px; background:#f5f5fa; }
.access-page .access-brand { display:flex; flex-direction:row; align-items:center; gap:10px; padding:0; min-height:0; background:transparent; color:var(--brand-violet); font-size:26px; font-weight:700; text-decoration:none; }
.access-page .access-brand img { width:48px; height:48px; filter:none; }
.access-card { width:min(100%,480px); padding:32px; border:1px solid var(--border); border-radius:24px; background:#fff; box-shadow:0 8px 24px rgba(34,26,65,.04); }
.access-page .access-form { width:100%; }
.access-page .access-form h2 { font-size:30px; }
.access-page .access-form > .eyebrow { color:var(--brand-violet); margin-top:0; }
.access-page .access-form > p { font-size:15px; }
.access-demo-note { display:block; margin-top:8px; color:var(--muted); line-height:1.5; font-size:12px; text-align:center; }
.access-preparing { margin:18px 0 0; padding-top:14px; border-top:1px solid var(--border); color:var(--muted); font-size:13px; line-height:1.5; }
.access-preparing[hidden] { display:none; }
.access-home { color:var(--brand-violet); font-size:14px; }
button:disabled { cursor:default; opacity:.6; }
:where(button,a,input,select):focus-visible { outline:3px solid var(--brand-violet); outline-offset:3px; }
.sidebar :where(button,a):focus-visible { outline-color:#fff; }
@media(max-width:760px) {
 .access-page { padding:24px 16px; gap:18px; }
 .access-card { padding:26px 22px; border-radius:20px; }
 .access-page .access-links { flex-direction:row; flex-wrap:wrap; font-size:13px; }
 .movement-scope { width:100%; }
 .movement-scope select { width:100%; }
 .register-type-switch button { font-size:12px; }
 .mobile-nav.nav-away { visibility:visible; transform:translateX(-50%); pointer-events:auto; }
}
