/* Console theme tokens and source-owned component overrides; no inversion or image filters. */
.console-preferences{display:flex;align-items:center;gap:8px;flex-shrink:0}.console-pref{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted)}.console-pref select{height:30px;border:1px solid var(--line-2);border-radius:7px;padding:0 6px;color:var(--ink);background:var(--card);font:inherit;max-width:116px;cursor:pointer}.console-pref select:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.topbar{height:auto!important;min-height:60px;flex-wrap:wrap;padding-top:10px!important;padding-bottom:10px!important}.topbar .who{flex-wrap:wrap;justify-content:flex-end;min-width:0}.side nav a{min-height:34px;height:auto!important;padding-top:7px!important;padding-bottom:7px!important;gap:5px}.side nav a>span:first-child{min-width:0;line-height:1.45}.side .logo-text{min-width:0}.side .logo-text b{white-space:nowrap}.side .logo-text>span{overflow-wrap:anywhere}.main .content{min-width:0}.console [role=dialog]{max-height:90vh;overflow-y:auto}.console .btn{max-width:100%}.console .card-head{flex-wrap:wrap}html[data-console-language=en] .console .check{line-height:1.5}html[data-console-language=en] .console .card-head h3{line-height:1.4}html[data-console-language=en] .console .hint{line-height:1.6}
html[data-theme=dark]{--ink:#e8eef8;--ink-2:#cbd5e6;--muted:#a0aec4;--line:#2d3b50;--line-2:#43536c;--bg:#0c1422;--card:#131e30;--brand:#82aaff;--brand-2:#a5c1ff;--brand-soft:#213657;--ok:#72ddb0;--ok-soft:#153b30;--warn:#f5c06c;--warn-soft:#3d301b;--bad:#ff9ba8;--bad-soft:#41262f;--shadow:0 1px 2px rgba(0,0,0,.18),0 4px 16px rgba(0,0,0,.2);color-scheme:dark;background:var(--bg);color:var(--ink)}
html[data-theme=dark] body{background:var(--bg);color:var(--ink)}html[data-theme=dark] .side,html[data-theme=dark] .topbar,html[data-theme=dark] .card,html[data-theme=dark] .modal,html[data-theme=dark] .plan,html[data-theme=dark] .btn:not(.btn-primary):not(.btn-accent),html[data-theme=dark] .input,html[data-theme=dark] .geo input,html[data-theme=dark] .geo select,html[data-theme=dark] .geo textarea{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line-2)!important}html[data-theme=dark] .btn-primary{background:#376dd7!important;border-color:#376dd7!important;color:#fff!important}html[data-theme=dark] .btn-primary:hover{background:#4b7ee7!important}html[data-theme=dark] .btn-danger{color:var(--bad)!important}html[data-theme=dark] .side nav a:hover,html[data-theme=dark] .table th,html[data-theme=dark] .seg,html[data-theme=dark] .side-stats,html[data-theme=dark] .side-stats .s,html[data-theme=dark] .progress,html[data-theme=dark] .health-metric,html[data-theme=dark] .health-option:has(input:disabled),html[data-theme=dark] .mh-stat,html[data-theme=dark] .mh-gmail,html[data-theme=dark] .mh-limitations,html[data-theme=dark] .mh-check>summary,html[data-theme=dark] .geo-stat,html[data-theme=dark] .geo-tip,html[data-theme=dark] .geo-schedule,html[data-theme=dark] .geo-question textarea,html[data-theme=dark] .geo-answer pre,html[data-theme=dark] .geo-source pre,html[data-theme=dark] .geo-loading,html[data-theme=dark] .sd-module,html[data-theme=dark] .sd-priority,html[data-theme=dark] .sd-workflow{background:#19263a!important;color:var(--ink-2)!important;border-color:var(--line)!important}html[data-theme=dark] .seg button.on,html[data-theme=dark] .side nav a.on,html[data-theme=dark] .health-job-selected,html[data-theme=dark] .geo-brand-card.on,html[data-theme=dark] .sd-record.on,html[data-theme=dark] .health-tab.on{background:var(--brand-soft)!important;color:var(--brand)!important;border-color:var(--brand)!important}html[data-theme=dark] .geo-brand-card{background:var(--card)!important;color:var(--ink)!important;border-color:var(--line)!important}html[data-theme=dark] .geo-overview,html[data-theme=dark] .geo-stat b{color:var(--ink)!important}html[data-theme=dark] .geo-boundary,html[data-theme=dark] .geo-signal{background:var(--warn-soft)!important;color:var(--warn)!important;border-color:#6a542d!important}html[data-theme=dark] .geo-signal p,html[data-theme=dark] .geo-signal blockquote{color:var(--warn)!important}html[data-theme=dark] .geo-trend{background:var(--brand-soft)!important;color:var(--brand)!important}html[data-theme=dark] .geo-badge,html[data-theme=dark] .mh-badge,html[data-theme=dark] .badge:not(.pro),html[data-theme=dark] .discover-scope span{background:#26374f;color:var(--ink-2)}html[data-theme=dark] .badge.ok,html[data-theme=dark] .geo-badge.ok,html[data-theme=dark] .mh-badge.pass,html[data-theme=dark] .mh-badge.SENT{background:var(--ok-soft);color:var(--ok)}html[data-theme=dark] .badge.warn,html[data-theme=dark] .geo-badge.warn,html[data-theme=dark] .mh-badge.warn,html[data-theme=dark] .mh-badge.QUEUED,html[data-theme=dark] .mh-badge.RUNNING{background:var(--warn-soft);color:var(--warn)}html[data-theme=dark] .badge.bad,html[data-theme=dark] .geo-badge.bad,html[data-theme=dark] .mh-badge.fail,html[data-theme=dark] .mh-badge.FAILED{background:var(--bad-soft);color:var(--bad)}html[data-theme=dark] .notice{background:#19263a;color:var(--ink-2);border-color:var(--line)}html[data-theme=dark] .notice.ok{background:var(--ok-soft);color:var(--ok);border-color:#285946}html[data-theme=dark] .notice.warn{background:var(--warn-soft);color:var(--warn);border-color:#6a542d}html[data-theme=dark] .notice.bad{background:var(--bad-soft);color:var(--bad);border-color:#724150}html[data-theme=dark] .mh-check-body pre,html[data-theme=dark] .console pre,html[data-theme=dark] .console code{background:#0d1727!important;color:#d7e3f7!important;border-color:var(--line)!important}html[data-theme=dark] .console .muted,html[data-theme=dark] .geo .hint,html[data-theme=dark] .geo .field small,html[data-theme=dark] .geo-method p,html[data-theme=dark] .geo-brand-card small,html[data-theme=dark] .geo-actions>span,html[data-theme=dark] .geo-empty,html[data-theme=dark] .geo-question label,html[data-theme=dark] .geo-panel summary span,html[data-theme=dark] .mh-intro p,html[data-theme=dark] .mh-stat span,html[data-theme=dark] .mh-empty,html[data-theme=dark] .mh-report-time,html[data-theme=dark] .discover-image-evidence small{color:var(--muted)!important}html[data-theme=dark] .console .modal-mask{background:rgba(0,0,0,.65)}html[data-theme=dark] .console .toast{background:var(--card);color:var(--ink);border:1px solid var(--line)}html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#97a7c0;opacity:1}html[data-theme=dark] :is(.mh-check,.mh-channels,.mh-gmail,.mh-notices,.mh-notice-row,.mh-empty,.discover-image-evidence,.geo-panel,.geo-answer,.geo-source,.geo-history td,.geo-history th,.geo-notice,.geo-actions,.geo-channels,.geo-schedule){border-color:var(--line)!important}
@media(max-width:1100px){.topbar>div:first-child{max-width:100%}.topbar .who{width:100%;justify-content:flex-start}.topbar h1{overflow-wrap:anywhere}.console-pref-label{display:none}}@media(max-width:820px){.topbar{gap:8px!important}.topbar .who .email{display:none}.console-preferences{order:-1;flex-shrink:0}.topbar .who{gap:7px!important}.topbar .who>[data-logout-all]{font-size:11px;padding:0 5px}.console .row{flex-wrap:wrap}.console .row>*{flex-basis:220px}.console .grid-2,.console .grid-4{grid-template-columns:1fr!important}.console .page-intro{flex-wrap:wrap}.console .content{padding:16px!important}.console .card-pad,.console .card-head{padding:16px!important}.console .card-head .btn{white-space:normal;height:auto;min-height:30px}}@media(max-width:440px){.topbar .who>.avatar{display:none}.topbar .who>span:not(.avatar){max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-pref select{max-width:108px;font-size:11px}}

@media(max-width:820px){.console .row>*{flex-basis:auto!important}.console .grid[style*="grid-template-columns"]{grid-template-columns:1fr!important}.console .seg{min-width:0!important;flex-wrap:wrap}.console .btn{white-space:normal;height:auto;min-height:30px;overflow-wrap:anywhere}.console .page-intro .input-group{width:100%}.console .input-group{flex-wrap:wrap}.console .input-group .input{min-width:0}.console .modal{width:calc(100vw - 24px)!important}}

.auth .console-preferences{justify-content:flex-end;margin-bottom:22px}.auth .auth-box .console-pref-label{display:none}html[data-theme=dark] .auth-form{background:var(--bg)!important}html[data-theme=dark] .auth-box .sub{color:var(--muted)}html[data-theme=dark] .auth-box .choose button{background:var(--card);color:var(--ink);border-color:var(--line)}html[data-theme=dark] .auth input{background:var(--card);color:var(--ink);border-color:var(--line-2)}html[data-theme=dark] .auth .seg button{color:var(--ink-2)}html[data-theme=dark] .auth .seg button.on{background:var(--brand-soft);color:var(--brand)}

html[data-theme=dark] .modal-foot{background:#19263a;color:var(--ink);border-color:var(--line)}html[data-theme=dark] .modal-mask{background:rgba(0,0,0,.65)}html[data-theme=dark] #xl-toast .toast{background:var(--card);color:var(--ink);border:1px solid var(--line)}html[data-theme=dark] #xl-toast .toast.ok{background:var(--ok-soft);color:var(--ok)}html[data-theme=dark] #xl-toast .toast.bad{background:var(--bad-soft);color:var(--bad)}

html[data-theme=dark] .side .plan-box{background:var(--brand-soft)!important;color:var(--ink-2);border-color:var(--line)}html[data-theme=dark] .side .lock{color:#c5a8ff}html[data-theme=dark] .side .plan-box b{color:var(--ink)}
.logo-text b>[data-console-i18n]{display:inline;font:inherit;color:inherit;letter-spacing:inherit}

/* English helper links need a visible word boundary after the preceding sentence. */
html[data-console-language=en] .auth-box .sub>a,html[data-console-language=en] .auth-box>p.small.muted>a{margin-inline-start:.35em}

/* Reading scale is scoped to the console and its auth shell, not the marketing site. */
.console,.auth[data-console-shell]{font-size:16px;line-height:1.65}
.console :is(.small,.hint,small,.grp,.plan-box,.soon,.lock,.stat .k,.stat .v small,.steps .d,.scope-list .ds,.perm-group h5,.table td .sub),.auth[data-console-shell] :is(.small,.sub,.hint){font-size:14px;line-height:1.65}
.console :is(.field>label,.health-option b,.geo .field>span,.kv){font-size:15px;line-height:1.6}
.console :is(.input,select.input,textarea.input,.geo .field input,.geo .field select,.geo .field textarea,.geo-question textarea),.auth[data-console-shell] :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px!important;line-height:1.5;min-height:44px;max-width:100%}
.console :is(textarea.input,.geo .field textarea,.geo-question textarea){padding-top:10px;padding-bottom:10px}
.console :is(pre,code){font-size:14px;line-height:1.65;max-width:100%}
.console textarea.input.mono[readonly]{font-size:14px!important}
.console :is(.card-head h3,.geo-workspace h3,.health-method summary,.mh-limitations h5){font-size:17px;line-height:1.5}
.console :is(.btn,.seg button,.health-tab,.health-task-title,.menu-btn),.auth[data-console-shell] .btn{font-size:15px;line-height:1.5;min-height:44px;height:auto;padding-top:9px;padding-bottom:9px}
.console :is(.check,.health-filter,.sd-option,.geo-schedule .check){font-size:14px;min-height:44px;line-height:1.6}
.console :is(.check input,.health-option input){flex-shrink:0;width:20px;height:20px}
.console .side nav a{font-size:15px;min-height:44px}
.console .logo-text>span,.console .topbar .who,.console-pref{font-size:14px}
.console-preferences{flex-wrap:wrap;min-width:0}
.console .console-pref select,.auth[data-console-shell] .console-pref select{font-size:16px;min-height:44px;height:auto;max-width:132px;padding:7px 8px}
.console .topbar .who>[data-logout-all]{font-size:14px;min-height:44px}
.console .badge{font-size:14px;height:auto;min-height:26px;line-height:1.5;white-space:normal;padding-top:2px;padding-bottom:2px}
.console :is(.table th,.health-result-table td,.geo-history table){font-size:14px;line-height:1.6}
.console .table td{font-size:15px;line-height:1.65}
.console :is(.table-wrap,.geo-history){max-width:100%;overscroll-behavior-x:contain;scrollbar-gutter:stable}
.console :is(.grid>*,.geo-layout>*,.geo-columns>*,.sd-modules>*,.sd-workflows>*,.mh-stats>*){min-width:0}
.console :is(.kv dd,.notice,.card-head,.page-intro,.mh-header p){overflow-wrap:anywhere}
.console :is(.sd-check p,.geo-overview,.geo-answer pre,.geo-source pre,.mh-check-body,.mh-intro p,.geo-hero p){font-size:16px;line-height:1.8}
.console :is(.sd-eyebrow,.sd-coverage,.sd-module p,.sd-module a,.sd-toolbar label,.sd-check details,.sd-check a,.sd-method p,.sd-workflow span,.health-eyebrow,.health-options legend,.health-help,.health-pager,.health-progress-note,.health-metric span,.health-metric small,.health-filter,.health-inline-label,.health-raw-evidence summary,.health-method,.health-loading,.mh-eyebrow,.mh-boundary,.mh-channels legend,.mh-stat span,.mh-limitations,.mh-sources,.mh-notices,.mh-report-time,.mh-badge,.geo-eyebrow,.geo-hero-meta span,.geo-hero-meta a,.geo-tip,.geo-panel summary,.geo-panel summary span,.geo-question label,.geo-schedule small,.geo-actions>span,.geo-stat span,.geo-stat small,.geo-boundary,.geo-columns ul,.geo-answer summary,.geo-source summary,.geo-answer .geo-meta,.geo-source .geo-meta,.geo-badge,.geo-signal blockquote,.geo-signal p,.geo-sources-list a,.geo-notice,.geo-method,.geo-empty,.geo-trend,.geo-loading,.discover-scope span){font-size:14px;line-height:1.7}
.console .geo .field small,.console .geo .hint{font-size:14px;line-height:1.7}
.console :is(.health-method summary,.health-raw-evidence summary,.sd-method summary,.sd-observations summary,.geo-panel summary,.geo-answer summary,.geo-source summary,.geo-method summary,.mh-notices summary){min-height:44px;padding-top:10px;padding-bottom:10px}
html[data-console-language] :is(.modal,.toast){font-size:16px;line-height:1.65}
html[data-console-language] .modal :is(.small,.hint,small){font-size:14px}
html[data-console-language] .modal :is(.input,select,textarea){font-size:16px!important;min-height:44px}
html[data-console-language] .modal .btn{font-size:15px;min-height:44px;height:auto}
html[data-theme=dark] .console .sd-check .sd-advice{background:#19263a;color:var(--ink-2)}
html[data-theme=dark] .console :is(.sd-level-ERROR,.sd-level-P1){background:var(--bad-soft);color:var(--bad)}
html[data-theme=dark] .console :is(.sd-level-WARNING,.sd-level-P2){background:var(--warn-soft);color:var(--warn)}
html[data-theme=dark] .console :is(.sd-level-PASS,.mh-stat.pass b){color:var(--ok)}
html[data-theme=dark] .console .sd-level-PASS{background:var(--ok-soft)}
html[data-theme=dark] .console :is(.sd-level-INFO,.sd-level-P3){background:var(--brand-soft);color:var(--brand)}
html[data-theme=dark] .console :is(.sd-level-UNKNOWN,.sd-level-VERIFY){background:#26374f;color:var(--ink-2)}
html[data-theme=dark] .console .mh-stat.fail b{color:var(--bad)}
html[data-theme=dark] .console .mh-stat.warn b{color:var(--warn)}
@media(max-width:820px){.console .grid-3{grid-template-columns:1fr}.console .content{padding-inline:16px!important}.console .kv{grid-template-columns:minmax(0,1fr)}.console .kv dd{margin-bottom:8px}.console .topbar{padding-inline:16px!important}.console .console-pref select{max-width:124px}.console textarea.input.mono[readonly]{font-size:16px!important}.console .health-option{flex-wrap:wrap}.console .health-option>span:nth-child(2){flex:1;min-width:130px}.console .health-option .badge{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html[data-console-language] :is(.btn,.input,.toast){transition:none;animation:none;scroll-behavior:auto}}
/* Existing server/automation evidence uses inline monospace sizes; keep it readable without changing its content. */
html[data-console-language] .console pre.mono{font-size:14px!important;line-height:1.7}
.console [style*="font-size:12.5px"]:not(pre):not(code):not(textarea){font-size:14px!important}
html[data-theme=dark] .btn-primary:hover{background:#2f63ce!important;border-color:#2f63ce!important}
/* Page-specific mobile toolbars must retain the same touch target as the rest of the console. */
html[data-console-language] .console .btn{min-height:44px}

/* Shell motion is limited to navigation and controls; reports and editors stay still. */
.console .side nav a{transition:background-color 140ms ease,color 140ms ease,transform 140ms ease}
.console .btn{transition:background-color 140ms ease,border-color 140ms ease,color 140ms ease,transform 140ms ease,box-shadow 140ms ease}
.console :is(.btn,.side nav a):focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.xl-console-enter{animation:xl-console-enter 240ms cubic-bezier(.2,.8,.2,1) both}
@keyframes xl-console-enter{from{transform:translateY(5px)}to{transform:translateY(0)}}
.btn.xl-button-busy{position:relative;justify-content:center}
.btn.xl-button-busy::before{content:"";width:14px;height:14px;flex:0 0 14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:xl-console-spin 750ms linear infinite}
@keyframes xl-console-spin{to{transform:rotate(360deg)}}
.xl-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#xl-route-progress{position:fixed;inset:0 0 auto;height:3px;overflow:hidden;z-index:1100;background:var(--brand-soft,#eaf0ff);pointer-events:none}
#xl-route-progress::after{content:"";display:block;width:34%;height:100%;background:var(--brand,#2f6bff);animation:xl-console-route 1.1s ease-in-out infinite}
@keyframes xl-console-route{from{transform:translateX(-110%)}to{transform:translateX(400%)}}
.xl-console-menu-shade[hidden]{display:none!important}
.xl-console-menu-close{display:none}
.xl-console-menu-shade{position:fixed;inset:0;z-index:190;border:0;border-radius:0;background:rgba(15,23,42,.42);cursor:pointer;animation:xl-console-shade 150ms ease}
@keyframes xl-console-shade{from{opacity:0}to{opacity:1}}
@media(hover:hover) and (pointer:fine){.console .side nav a:hover{transform:translateX(2px)}.console .btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 3px 8px rgba(15,23,42,.08)}}
.console .btn:not(:disabled):active{transform:translateY(0)}
@media(max-width:820px){.console .side{left:0;transform:translateX(-110%);transition:transform 180ms cubic-bezier(.2,.8,.2,1)}.console .side.open{transform:translateX(0)}.xl-console-menu-close{display:flex;flex:0 0 auto;align-self:stretch;justify-content:space-between;margin:0 14px 8px}html.xl-console-menu-open{overflow:hidden}}
@media(prefers-reduced-motion:reduce){.xl-console-enter,.xl-console-menu-shade,.btn.xl-button-busy::before,#xl-route-progress::after{animation:none!important}.console :is(.btn,.side,.side nav a){transition:none!important}.console .side nav a:hover,.console .btn:not(:disabled):hover{transform:none}.console .toast{animation:none!important}}
