/* Pulse identity: presentation only. Metric palettes and chart styles remain in their own modules. */
:root{--pulse-accent:#242424;--pulse-accent-hover:#3b3b3b;--pulse-ui-muted:#6b6b6b;--pulse-ui-line:#e2e2e2}
:is(.app-sidebar,.sidebar,.platform-header){background:#242424!important;color:#e5e5e5}
:is(.app-sidebar,.sidebar) nav :is(a,button),:is(.app-sidebar,.sidebar) .sidebar-group-label{color:#d4d4d4!important}
:is(.app-sidebar,.sidebar) nav :is(a,button):hover,:is(.app-sidebar,.sidebar) .sidebar-group-label:hover{background:#303030!important;color:#fff!important}
:is(.app-sidebar,.sidebar) nav :is(a,button).active{background:#404040!important;color:#fff!important}
:is(.app-sidebar,.sidebar) .sidebar-secondary{border-color:#484848!important}
:is(.app-sidebar,.sidebar) :is(.sidebar-foot small,.app-sidebar-foot small,.sidebar-group-label){color:#a3a3a3!important}
:is(.app-sidebar,.sidebar) .sensor-status{color:#e5e5e5}
:is(.app-sidebar,.sidebar) .sensor-status small::before{filter:grayscale(1)}
.pulse-brand{isolation:isolate;display:block!important;line-height:0!important;background:#242424;overflow:hidden}
:is(.app-sidebar,.sidebar) .pulse-brand{width:100%;padding:0 0 20px!important;flex:none}
.pulse-brand img{mix-blend-mode:normal;display:block;width:100%;height:auto;max-width:100%;border:0;border-radius:0!important;box-shadow:none!important}
.auth-layout>.pulse-brand{width:min(100%,275px);margin-bottom:28px;border-radius:12px}
.platform-header .pulse-brand{width:160px;flex:0 0 160px;padding:0}
.platform-brand small{color:#bbb}
:is(h1,h2,h3,.eyebrow,.sec-eyebrow,.topbar,.internet-topbar,.ai-pagebar,.pagebar){color:#363636}
:is(.topbar,.internet-topbar,.ai-pagebar){background:#fff;border-color:var(--pulse-ui-line)}
:is(.primary,.primary-button,.sec-link,.sec-quick-link,.sec-toolbar .sec-apply,.ai-form button,.ai-key-dialog button[type=submit]){background:#242424!important;color:#fff!important;border-color:#242424!important;box-shadow:none}
:is(.primary,.primary-button,.sec-link,.sec-quick-link,.sec-toolbar .sec-apply,.ai-form button,.ai-key-dialog button[type=submit]):hover:not(:disabled){background:#3b3b3b!important;border-color:#3b3b3b!important}
:is(.provider-app,.platform-app,.equipment-app) button:not(.secondary):not(.text-button):not(.equipment-entry),.provider-app .button:not(.secondary),.devices-app main button{background:#242424;border-color:#242424;color:#fff}
:is(.secondary,.text-button,.small-link,.text-link,.internet-help,.equipment-link,.country-sort,.state-sort,.country-pager button,.internet-controls button,.whois-raw summary,.sec-sort-button,.sec-more-filters summary,.sec-summary-count a,.ai-key-dialog a,.ai-activate){color:#444444!important}
:is(.secondary,.page-tabs a,.country-pager button,.view-buttons,.map-switch button[aria-pressed=true],.refresh-controls .auto-refresh:has(input:checked),.sec-refresh-controls .sec-auto:has(input:checked)){background:#f5f5f5!important;border-color:var(--pulse-ui-line)!important}
:is(.secondary,.country-pager button,.view-buttons button,.sec-sort-button):hover:not(:disabled){background:#ececec!important;border-color:#bdbdbd!important}
:is(.view-buttons button[aria-pressed=true],.country-sort.selected,.state-sort.selected,.sec-sort-button.selected,.page-tabs a,.quick-primary,.operation-title-button:hover,.operation-head a:hover){color:#242424!important}
:is(.country-sort,.state-sort).active{color:#242424!important}
:is(.refresh-button,.sec-toolbar button:not(.sec-apply),.sec-pages button,.sec-attention-card button,.sec-events-table button,.sec-events-heading-actions button,.sec-coverage-results .sec-panel-heading button){color:#444444!important;border-color:var(--pulse-ui-line)!important}
:is(.refresh-button,.sec-toolbar button:not(.sec-apply),.sec-pages button,.sec-attention-card button,.sec-events-table button,.sec-events-heading-actions button,.sec-coverage-results .sec-panel-heading button):hover:not(:disabled){background:#f3f3f3!important}
:is(input,select,textarea):focus-visible,:is(button,a,summary):focus-visible{outline-color:#7a7a7a!important}
input[type=checkbox],input[type=radio]{accent-color:#242424!important}
:is(input,select,textarea):focus{border-color:#777!important;box-shadow:0 0 0 3px #2424240d}
:is(.traffic-section-title .section-role-icon,.link-traffic-section .section-role-icon,.unified-links-panel .section-role-icon,.bgp-activity-panel h2>.icon,.summary-icon,.origin-icon,.help-box svg,.tool-arrow,.ai-thinking-avatar,.ai-input-icon,.step>span,.step-number,.ai-suggestions button svg){color:#444444!important}
:is(.traffic-section-title .section-role-icon,.bgp-activity-panel h2>.icon,.summary-icon,.origin-icon,.step>span,.step-number){background:#f0f0f0!important}
.ai-thinking-dots i{background:#444444}.ai-thinking-body{border-color:#e2e2e2}
.ai-dialog-head button{color:#666}
:is(.help-box,.origin-bar,.activation-panel){background:#f8f8f8;border-color:#e2e2e2}
.tool-choice.selected{border-color:#242424;box-shadow:0 0 0 1px #24242430;background:#fafafa}
.tool-choice:hover{border-color:#999;box-shadow:0 4px 15px #24242409}
.tool-arrow{border-color:#e2e2e2;background:#f5f5f5}
.selected .tool-arrow{color:#fff!important;background:#242424;border-color:#242424}
.tone-ping{--light:#333;--dark:#242424}
.tools-app .result-symbol{color:#fff;background:linear-gradient(140deg,var(--light,#0985ff),var(--dark,#0052ef))}
.spinner{border-top-color:#242424}.history-panel tbody tr.selected{background:#f4f4f4}
:is(.auth-layout .text-button,.auth-layout .small-link,.auth-layout details summary,.auth-layout .page-top a,.equipment-app summary,.equipment-checks summary,.install summary){color:#444444}
.quick-card{background:#242424}.quick-icon{color:#fff}.quick-card p{color:#bbb}.quick-secondary{color:#ddd;border-color:#333}
@media(max-width:1020px){:is(.app-sidebar,.sidebar) .pulse-brand{width:142px;flex:0 0 142px;padding:0!important}}
@media(max-width:600px){:is(.app-sidebar,.sidebar) .pulse-brand{width:160px;flex-basis:160px}}
/* Text belonging to controls and descriptions uses neutral grays, independently from readings. */
:is(.period-calendar,.period-control,.period-control select,.period-label,.query-period,.auto-refresh,.sec-auto-refresh,.sec-time-window,.country-sort span,.state-sort span){color:#444444!important}
:is(.head-intro>p,.page-head>div>p,.panel-head p,.subtitle,.intro,.field-help,.auth-footer,.origin-bar label,.tool-description small,.form-fields label,.form-identity p,.help-box,.help,.install-step p,.install-step li,.install-step code,.title>div>p,.sec-page-head p,.eyebrow,.sec-eyebrow,.auth-layout label,.page-controls label){color:#696969}
:is(.country-table-wrap,.brazil-panel) td:first-child,.service-name-text strong,.service-name-text small{color:#444444}
:is(.brazil-panel select,.history-controls select,.internet-controls select,.provider-app label,.platform-app label,.equipment-app label){color:#242424}
:is(.equipment-entry:hover,.equipment-entry.active,.sec-entity-event-list li button:hover,.sec-entity-event-list li button:focus-visible){background:#f5f5f5;border-color:#888}
.operation-icon,.service-tile-title{color:#444444!important}
.service-tile-latency-label{color:#737373!important}
:is(.head-intro>p,.panel-head p,.tools-heading>div>p:not(.eyebrow),.page-head>div>p,.intro,.field-help,.auth-footer,.tool-description small,.form-fields label,.form-identity p,.title>div>p,.auth-layout label){color:#696969!important}

/* Smaller, centered product mark. */
:is(.app-sidebar,.sidebar) .pulse-brand{width:144px;max-width:calc(100% - 32px);flex:0 0 auto;padding:0!important;margin:12px auto 28px!important}
.auth-layout>.pulse-brand{width:min(100%,220px)}
.platform-header .pulse-brand{width:140px;flex-basis:140px}

/* Neutral tool controls; each diagnostic keeps its colored icon. */
.tools-app .tone-ping{--light:#0c8cff;--dark:#0051ec}
.tools-app button.primary{background:#242424!important;border-color:#242424!important;color:#fff!important;box-shadow:none}
.tools-app button.primary:hover:not(:disabled){background:#3b3b3b!important;border-color:#3b3b3b!important}
.tools-app :is(.tool-choice,.panel,.origin-bar),.tools-app .form-fields :is(input,select){border-color:var(--pulse-ui-line)}
.tools-app .origin-status{border-color:var(--pulse-ui-line)}
.tools-app .form-fields :is(input,select):focus{border-color:#777;box-shadow:0 0 0 3px #2424240d}
.tools-app .tool-choice:hover{border-color:#aaa;box-shadow:0 4px 15px #24242409}
.tools-app .tool-choice.selected{border-color:#888;box-shadow:0 0 0 1px #24242430;background:#f5f5f5}
.tools-app .tool-arrow{color:#666!important;border-color:var(--pulse-ui-line);background:#f5f5f5}
.tools-app .selected .tool-arrow{color:#fff!important;background:#3b3b3b;border-color:#3b3b3b}
.tools-app .tool-arrow svg{color:inherit}

/* Neutral cards; warning and severity colors remain semantic. */
.sec-overview{background:#f2f2f2;border-color:#dedede}
.sec-quick-card,.sec-quick-attention{background:#fafafa;border-color:#e1e1e1}
.sec-quick-navigate:hover,.sec-quick-navigate[aria-expanded="true"]{background:#f6f6f6;border-color:#bdbdbd;box-shadow:0 0 0 1px #e5e5e5}
.sec-quick-navigate::after{border-color:#333}
.sec-quick-results-slot{border-color:#dedede}
.sec-overview .sec-quick-results-slot>.sec-panel{background:#f7f7f7;border-color:#dedede}
.sec-events-table .sec-sort-head th{background:#f7f7f7;border-color:#dedede}
.sec-events-table .sec-sort-button.selected{box-shadow:inset 0 -2px 0 #333}
.sec-events-table .sec-sort-button span{color:inherit}
.sec-quick-icon:not(.sec-quick-severity):not(.sec-quick-coverage){background:#ededed;color:#333}

/* Compact view shows the mark and a three-line menu button only. */
.pulse-menu-toggle{display:none}
@media(max-width:1020px){
 :is(.app-sidebar,.sidebar).has-navigation-toggle{position:sticky;top:0;inset:auto;z-index:30;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0;width:100%;height:auto;min-height:66px;padding:10px 18px;overflow:visible}
 :is(.app-sidebar,.sidebar).has-navigation-toggle .pulse-brand{width:132px;max-width:132px;flex:0 0 132px;padding:0!important;margin:0!important}
 :is(.app-sidebar,.sidebar).has-navigation-toggle .pulse-menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:42px;height:42px;min-height:42px;margin-left:auto;padding:9px;border:1px solid #333;border-radius:7px;background:#242424;color:#fff;box-shadow:none}
 .pulse-menu-toggle span{display:block;width:20px;height:2px;background:currentColor;border-radius:2px}
 :is(.app-sidebar,.sidebar).has-navigation-toggle .pulse-menu-toggle:hover{background:#303030}
 :is(.app-sidebar,.sidebar).has-navigation-toggle nav{display:none!important}
 :is(.app-sidebar,.sidebar).has-navigation-toggle :is(.sidebar-foot,.app-sidebar-foot){display:none!important}
 :is(.app-sidebar,.sidebar).has-navigation-toggle.is-navigation-open nav{display:flex!important;flex:1 0 100%;flex-direction:column;align-items:stretch;width:100%;max-height:calc(100dvh - 86px);overflow-y:auto;overflow-x:hidden;gap:0;margin-top:12px;padding-top:8px;border-top:1px solid #484848}
 :is(.app-sidebar,.sidebar).has-navigation-toggle.is-navigation-open :is(.sidebar-primary,.sidebar-secondary){display:flex;flex-direction:column;align-items:stretch;gap:4px;width:100%}
 :is(.app-sidebar,.sidebar).has-navigation-toggle.is-navigation-open .sidebar-secondary{margin-top:12px;padding-top:10px;border-top:1px solid #484848}
 :is(.app-sidebar,.sidebar).has-navigation-toggle.is-navigation-open nav a{display:flex;min-height:42px;width:100%;padding:10px 12px;gap:12px;font-size:13px;white-space:normal}
 :is(.app-sidebar,.sidebar).has-navigation-toggle.is-navigation-open .sidebar-group{display:block;width:100%;margin:0}
 :is(.app-sidebar,.sidebar).has-navigation-toggle.is-navigation-open .sidebar-group-label{display:flex;width:100%;min-height:42px;padding:10px 12px;font-size:12px;gap:12px}
 :is(.app-sidebar,.sidebar).has-navigation-toggle.is-navigation-open .sidebar-group-items{display:grid;width:100%;gap:3px}
 :is(.app-sidebar,.sidebar).has-navigation-toggle.is-navigation-open .sidebar-group:not([open]) .sidebar-group-items{display:none}
 :is(.app-sidebar,.sidebar).has-navigation-toggle.is-navigation-open .sidebar-group-items a{padding-left:24px}
 :is(.app-sidebar,.sidebar).has-navigation-toggle.is-navigation-open .icon{display:block;width:17px;height:17px;flex:none}
 :is(.app-sidebar,.sidebar).has-navigation-toggle nav button{width:100%;justify-content:flex-start}
 .sec-events-table thead tr.sec-sort-head{background:#f7f7f7;border-color:#dedede}
}

/* Match the BGP submenu indentation on desktop and mobile. */
@media(min-width:1021px){
 :is(.app-sidebar,.sidebar) .sidebar-group-items a{padding-left:24px}
}

/* Long labels fit the existing sidebar width without changing its typography. */
:is(.app-sidebar,.sidebar) .sidebar-group[data-nav-group],
:is(.app-sidebar,.sidebar) .sidebar-group[data-nav-group] .sidebar-group-items{min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr)}
:is(.app-sidebar,.sidebar) .sidebar-group[data-nav-group] .sidebar-group-items a{min-width:0;white-space:normal;overflow-wrap:break-word}

/* The active company stays alongside the shared navigation on every operational page. */
:is(.app-sidebar,.sidebar) .pulse-company-switch{display:grid;gap:6px;flex:none;min-width:0;margin:0 6px 14px;padding:0 0 14px;border-bottom:1px solid #484848;text-align:left}
:is(.app-sidebar,.sidebar) .pulse-company-switch label{margin:0;color:#aaa!important;font-family:inherit;font-weight:600;font-size:10px;line-height:1.3;letter-spacing:.06em;text-transform:uppercase}
:is(.app-sidebar,.sidebar) .pulse-company-switch select{box-sizing:border-box;width:100%;min-width:0;height:38px;margin:0;padding:7px 9px;border:1px solid #555!important;border-radius:7px;background:#303030!important;color:#fff!important;color-scheme:dark;font-family:inherit;font-size:12px;font-weight:600;line-height:1.4;cursor:pointer;box-shadow:none}
:is(.app-sidebar,.sidebar) .pulse-company-switch select:focus-visible{outline:2px solid #85b9ff;outline-offset:2px}
:is(.app-sidebar,.sidebar) .pulse-company-switch select:disabled{opacity:.65;cursor:wait}
:is(.app-sidebar,.sidebar) .pulse-company-status{margin:0;color:#ddd!important;font-size:11px;line-height:1.4;overflow-wrap:anywhere}
:is(.app-sidebar,.sidebar) .pulse-company-status[hidden]{display:none}
@media(max-width:1020px){:is(.app-sidebar,.sidebar) .pulse-company-switch{margin:0 0 10px;padding:0 0 12px}:is(.app-sidebar,.sidebar) .pulse-company-switch select{height:42px;font-size:14px}}
