/* CUT MASTER · Diseño maestro · Fase 1 (v4.35)
   Alcance: cabecera, navegación y tokens. No altera motores, IDs ni eventos. */
:root{
  --cm35-ink:#18283d;--cm35-text:#415169;--cm35-muted:#8290a5;
  --cm35-line:#e7edf4;--cm35-page:#f7f9fc;
  --cm35-primary:#2766c9;--cm35-card:#fff;
  --cm35-radius:22px;--cm35-shadow:0 12px 36px rgba(40,65,96,.045);
}
body.cm35-ready{background:var(--cm35-page);color:var(--cm35-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
body.cm35-ready .app{grid-template-columns:235px minmax(0,1fr)!important;background:var(--cm35-page)}
body.cm35-ready .main{min-width:0;background:var(--cm35-page)}
body.cm35-ready .sidebar{background:#fff!important;border-right:1px solid var(--cm35-line)!important;position:sticky!important;top:0;height:100vh!important;min-height:0!important;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#e3e9f1 transparent}
body.cm35-ready .sidebar .logo{height:94px!important;padding:23px 22px!important;border-bottom:1px solid #edf1f6!important;gap:11px!important;flex:0 0 auto!important}
.cm35-brand-mark{display:grid;grid-template-columns:repeat(3,6px);gap:3px;align-items:end;justify-content:center;width:39px;height:39px;border-radius:13px;background:linear-gradient(160deg,#327fe3,#1d58bc);padding:9px 7px;box-shadow:0 6px 13px #367bdf2c;flex-shrink:0}
.cm35-brand-mark i{display:block;width:6px;border-radius:3px;background:#fff;transform:skewY(-22deg)}.cm35-brand-mark i:nth-child(1){height:11px;opacity:.75}.cm35-brand-mark i:nth-child(2){height:18px}.cm35-brand-mark i:nth-child(3){height:14px;opacity:.85}
.cm35-brand-text{display:flex;flex-direction:column;gap:4px!important;min-width:0}.cm35-brand-text strong{font-size:18px!important;font-weight:800;letter-spacing:-.045em;color:#213854}.cm35-brand-text small{display:block!important;font-size:8px!important;letter-spacing:.18em;font-weight:750;color:#9ca9b9!important;margin:0!important}
body.cm35-ready .sidebar nav{display:flex!important;flex-direction:column;gap:3px!important;padding:15px 10px 15px!important;overflow:visible!important}
body.cm35-ready .sidebar .nav{display:flex!important;flex:none!important;align-items:center!important;gap:12px!important;width:100%;max-width:100%;min-width:0!important;padding:11px 12px!important;min-height:43px!important;border:0!important;border-radius:11px!important;background:transparent!important;box-shadow:none!important;color:#65748b!important;text-align:left!important;transition:background .15s,color .15s!important;transform:none!important}
body.cm35-ready .sidebar .nav>span{color:inherit!important;font-size:12.5px!important;font-weight:650!important;line-height:1.3!important;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.cm35-ready .sidebar .nav>span small{display:none!important}
body.cm35-ready .sidebar .nav>b{width:21px!important;min-width:21px!important;display:grid!important;place-items:center!important;opacity:.86;color:inherit!important;font-size:17px!important}
body.cm35-ready .sidebar .nav>b svg{display:block;max-width:100%}
body.cm35-ready .sidebar .nav:hover{background:#f2f6fb!important;color:#285e9c!important}
body.cm35-ready .sidebar .nav.active{background:#eaf2fd!important;color:#1d62c4!important}
body.cm35-ready .sidebar .nav.active>span{font-weight:770!important}
body.cm35-ready .cm35-nav-caption{font-size:9px;color:#a0aebe;text-transform:uppercase;letter-spacing:.13em;font-weight:850;margin:20px 0 7px 13px;line-height:1.2;white-space:nowrap}
body.cm35-ready .cm35-nav-caption:first-child{margin-top:4px}
body.cm35-ready .sidebar .newbie{display:none!important}
body.cm35-ready .topbar{min-height:79px!important;height:auto!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:20px!important;padding:15px clamp(20px,3vw,46px)!important;background:rgba(255,255,255,.95)!important;border-bottom:1px solid var(--cm35-line)!important;box-shadow:none!important;position:relative;z-index:25}
body.cm35-ready .topbar>div:has(>h1){flex:0 1 auto!important;min-width:160px}
body.cm35-ready .topbar h1{font-size:17px!important;letter-spacing:-.025em!important;line-height:1.1!important;color:#26384f!important;font-weight:780!important}
body.cm35-ready .topbar p{font-size:11px!important;color:#8393a7!important;margin:6px 0 0!important;max-width:450px}
body.cm35-ready #localModeBadge{font-size:9px!important;letter-spacing:.07em!important;opacity:.7;order:5;margin-left:0!important}
body.cm35-ready .top-actions{display:flex!important;margin-left:0!important;gap:8px!important;align-items:center}
body.cm35-ready .top-actions button{padding:10px 14px!important;min-height:39px!important;border-radius:11px!important;font-size:12px!important;font-weight:750!important;white-space:nowrap}
body.cm35-ready .top-actions .easy-home-button{background:#fff!important;color:#57708e!important;border:1px solid #e3ebf2!important}
body.cm35-ready .top-actions .easy-ai-button{background:#eaf1ff!important;color:#225fae!important;border:1px solid #d8e6fa!important}
.cm35-top-search{position:relative;display:flex;align-items:center;gap:8px;min-width:120px;max-width:310px;width:100%;margin-left:auto;height:40px;padding:0 13px;border:1px solid #e7edf4;border-radius:11px;background:#f8fafc;color:#98a6b7;z-index:40}
.cm35-top-search:focus-within{border-color:#9ebce8;box-shadow:0 0 0 3px #bcd2f83c}
.cm35-top-search input{border:0!important;background:transparent!important;outline:0!important;font:500 12px/1.3 inherit;min-width:0!important;width:100%;height:36px!important;padding:0!important;color:#30415b!important;box-shadow:none!important}
.cm35-top-search input::placeholder{color:#96a3b4}.cm35-search-results{position:absolute;top:calc(100% + 7px);left:0;right:0;min-width:220px;border:1px solid #e1eaf4;border-radius:13px;box-shadow:0 17px 44px #1b375c24;background:white;max-height:280px;overflow:auto;padding:6px}
.cm35-search-results[hidden]{display:none!important}.cm35-search-results button{background:none;border:none;border-radius:9px;display:flex;gap:11px;align-items:center;width:100%;min-height:40px;color:#425c78;text-align:left;font-size:12px;cursor:pointer;padding:7px 10px}.cm35-search-results button:hover{background:#eff5fc}.cm35-search-results p{font-size:12px;padding:8px;color:#8a98aa}
.cm35-help-link{display:inline-flex;align-items:center;gap:7px;padding:9px 0;border:0;background:none;color:#64778e;font:650 12px/1.2 inherit;cursor:pointer;white-space:nowrap}.cm35-help-link:hover{color:#2164b8}.cm35-sr{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}
body.cm35-ready button:focus-visible{outline:3px solid #83b6ff!important;outline-offset:2px}
@media(max-width:1210px) and (min-width:821px){body.cm35-ready .app{grid-template-columns:205px minmax(0,1fr)!important}body.cm35-ready .topbar{gap:12px!important;padding:12px 20px!important}body.cm35-ready .topbar p{display:none!important}.cm35-top-search{max-width:215px}}
@media(max-width:820px){body.cm35-ready .app{display:block!important}body.cm35-ready .sidebar{position:fixed!important;top:0!important;bottom:0!important;left:0!important;height:100dvh!important;width:min(292px,87vw)!important;transform:translateX(-100%);z-index:15000!important;box-shadow:10px 0 36px #1f304b1a!important}body.cm35-ready.mobile-nav-open .sidebar{transform:translateX(0)!important}body.cm35-ready .topbar{min-height:64px!important;padding:10px 14px!important;gap:10px!important}body.cm35-ready .topbar>div:has(>h1){min-width:0!important}body.cm35-ready .topbar h1{font-size:17px!important}body.cm35-ready .topbar p{display:none!important}.cm35-top-search{max-width:240px;width:auto;flex:1;min-width:90px;height:38px;margin-left:auto}.cm35-help-link{display:none!important}body.cm35-ready .topbar .top-actions{display:none!important}body.cm35-ready .cm-mobile-bottom-nav{border-top:1px solid #e6edf6!important;box-shadow:0 -10px 30px rgba(33,55,79,.07)!important}}
@media(max-width:520px){body.cm35-ready .topbar{gap:8px!important;padding:10px 12px!important}body.cm35-ready #localModeBadge{display:none!important}.cm35-top-search{max-width:130px!important;height:35px;padding:0 8px}.cm35-top-search input{font-size:11px!important}.cm35-top-search input::placeholder{color:transparent}}
