/* Integration of the original wordmarks and the multimodal demo. */
:root { --elb-text-stroke:.85px; --elb-text-stroke-small:.7px; }
body { font-weight:550; }
.journey-greeting-row { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:1rem; }
[data-journey-clock] { display:flex; flex-direction:column; text-align:end; gap:.2rem; flex:0 0 auto; }
.journey-time { font-size:2rem; font-weight:650; font-variant-numeric:tabular-nums; }
[data-journey-clock] small { font-size:.8rem; }
.hub-hero:has([data-journey-clock]) { display:block; }
.hub-hero:has([data-journey-clock]) .hub-hero-emblem { display:none; }
@media(min-width:1001px) {
  .hub-hero:has([data-journey-clock])>div:first-child { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,380px); column-gap:2rem; align-items:start; }
  .hub-hero>div>.eyebrow,.hub-hero .journey-greeting-row { grid-column:1/-1; }
  .hub-hero [data-journey-weather] { grid-column:2; grid-row:3 / span 4; justify-self:end; }
  .hub-hero>div>.hub-hero-subtitle,.hub-hero>div>p:not(.eyebrow),.hub-hero>div>.hub-label { grid-column:1; }
  .hub-hero>div>.hub-label { justify-self:start; }
}
@media(max-width:500px) { .journey-greeting-row { align-items:flex-start; } [data-journey-clock] { text-align:start; } }
h1:focus { outline:none; }
h1,h2 { -webkit-text-stroke-width:1.1px; }
.brand-wordmark { width:100%; margin:0 0 25px; }
.brand-wordmark .nl-logo { width:100%; }
.sidebar { overflow-y:auto; }
.sidebar-extras { margin-top:24px; padding:18px 13px 0; border-top:1px solid var(--elb-gold-line); }
.sidebar-extras .data-button { font-size:.875rem; padding:9px 0; }
.sidebar-bottom { padding-top:22px; }
.sidebar-version { font-size:.875rem; -webkit-text-stroke-width:var(--elb-text-stroke-small); }
.topbar-wordmark { display:block;width:250px;flex-shrink:0; }
.brand-wordmark .nl-letters,.topbar-wordmark .nl-letters { stroke-width:4; }
.topbar-actions { display:flex;align-items:center;gap:15px; }
.notification-control { position:relative; }
.notification-dot { position:absolute;right:6px;top:6px;width:7px;height:7px;border:2px solid var(--elb-gold-ink);background:white;border-radius:50%; }
.page-footer button { background:white;text-decoration:underline;text-underline-offset:4px;font-size:inherit; }
.nl-gallery :is(p,span,h3,a,button,figcaption) { color:white; -webkit-text-fill-color:white; }
.nl-gallery-intro p:last-child,.nl-logo-figure figcaption,.nl-logo-status,.nl-logo-number,.nl-logo-download { font-size:.875rem; }
.nl-logo-figure figcaption,.nl-logo-status,.nl-logo-number,.nl-logo-download,.profile-name,.community-sub { -webkit-text-stroke-width:var(--elb-text-stroke-small); }
.nl-logo { -webkit-text-stroke:0; }
.logo-preview { padding:35px 0; }
.hub-export { width:100%;padding:16px;border:1px solid var(--elb-gold);border-radius:12px;margin-bottom:20px; }
/* Chromium/WebView2 custom picker keeps the same white fill and gold stroke. */
select,select::picker(select) { appearance:base-select; }
select::picker(select) { background:#fff;border:1px solid var(--elb-gold);border-radius:10px;color:#fff;-webkit-text-fill-color:#fff;-webkit-text-stroke:var(--elb-text-stroke) var(--elb-text-outline);paint-order:stroke fill;padding:6px;box-shadow:none; }
option { padding:8px 12px;background:#fff;color:#fff;-webkit-text-fill-color:#fff;-webkit-text-stroke:var(--elb-text-stroke) var(--elb-text-outline);paint-order:stroke fill; }
option:checked,option:hover,option:focus-visible { background:#fff;outline:1px solid var(--elb-gold);outline-offset:-1px;border-radius:5px; }
select::picker-icon,option::checkmark { color:var(--elb-gold-ink); }
.hub { --hub-line:var(--elb-gold-line); background:var(--elb-white); -webkit-text-stroke:var(--elb-text-stroke) var(--elb-text-outline); }
.hub :is(button,input,textarea,select,a,.eyebrow) { -webkit-text-stroke:var(--elb-text-stroke) var(--elb-text-outline); }
.hub :is(input,textarea)::placeholder { -webkit-text-stroke:var(--elb-text-stroke) var(--elb-text-outline); }
.hub h1,.hub h2,.hub h3 { -webkit-text-stroke:1.1px var(--elb-text-outline); }
.hub-mode-icon { fill:none;stroke:var(--elb-gold-ink); }
.hub :is(small,figcaption,.hub-label,.hub-small,.hub-map-label,.hub-map-footer,.hub-hero-emblem span) { font-size:.875rem!important; -webkit-text-stroke-width:var(--elb-text-stroke-small); }
.hub-mode small { font-size:.875rem!important; }
.hub-profile-heading p:not(.eyebrow),.hub-field,.hub-vehicle p,.hub-checkbox { font-size:.875rem; }
.hub-profile-heading,.hub-profile-grid,.hub-card,.hub-avatar { background:var(--elb-white); box-shadow:none; }
.modal:has([data-hub-form]),.modal:has([data-hub-action]),.modal .hub-field :is(input,textarea,select),.modal .hub-button { -webkit-text-stroke:var(--elb-text-stroke) var(--elb-text-outline); }
.hub-hero-emblem { display:none; }
.hub-search-title>span { font-size:.9rem; }
.hub-map text { stroke:var(--elb-text-outline); }
.hub-map .hub-island-name { font-size:12px; }
.startup { position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;background:#fff;padding:30px;border:0;max-width:none;max-height:none;width:100%;height:100%;margin:0; }
.startup::backdrop { background:var(--elb-white); }
.startup-art { width:min(800px,100%);text-align:center; }
.startup-languages { position:absolute; top:24px; inset-inline-end:24px; display:flex; align-items:center; gap:.55rem; max-width:calc(100% - 48px); }
.startup-languages button,.startup-languages select { border:1px solid var(--elb-gold); border-radius:9px; background:#fff; min-height:44px; padding:.4rem .7rem; font-size:.95rem; min-width:0; }
.startup-languages button[aria-pressed="true"] { outline:1px solid var(--elb-gold-ink); outline-offset:2px; }
.startup-art p { margin:28px 0;font-size:clamp(1.1rem,2.5vw,1.55rem);letter-spacing:.08em; }
/* 2.4 s drawing, a quiet hold, then a slow return; no timer navigates away. */
.startup .nl-logo.is-animated :is(.nl-route,.nl-letter,.nl-letter-dot) { animation:nl-startup-trace 6.4s ease-in-out infinite; }
.startup .nl-logo.is-animated .nl-signature { animation:nl-startup-signature 6.4s ease-in-out infinite; }
@keyframes nl-startup-trace { 0%,100% { stroke-dashoffset:1; } 37.5%,70% { stroke-dashoffset:0; } }
@keyframes nl-startup-signature { 0%,37.5%,100% { opacity:0; } 43%,70% { opacity:1; } }
@media(max-width:1050px) { .topbar-actions .community-sub,.profile-name { display:none; } .topbar-wordmark { width:210px; } }
@media(max-width:760px) {
  .sidebar-extras { display:none; }
  .sidebar { overflow:visible; }
  .topbar { padding:0 18px;height:77px; }
  .topbar-wordmark { width:185px; }
  .topbar-actions { gap:5px; }
  .topbar-actions .profile { display:none; }
  .hub-hero { padding:0 0 23px; }
  .hub-hero h1 { font-size:2.1rem; }
  .hub-mode-selector { grid-template-columns:repeat(5,110px);overflow-x:auto;padding:6px 4px 10px; }
  .hub-mode { min-height:113px; }
  .hub-mode strong { font-size:.875rem; }
  .hub-map-label,.hub-map-footer { flex-wrap:wrap; }
  .page-footer { flex-wrap:wrap;gap:15px; }
  .nl-logo-actions .button { font-size:.875rem; }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none!important;transition:none!important; }
  .startup .nl-logo.is-animated :is(.nl-route,.nl-letter,.nl-letter-dot) { stroke-dasharray:none;stroke-dashoffset:0; }
  .startup .nl-logo.is-animated .nl-signature { opacity:1; }
}

@media(max-width:760px) { .nav-item span { overflow-wrap:normal;word-break:normal; } }
:root { --nuru-pure-white: #fff; }
.hub-pilot-entry { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; background:#fff; border:1px solid var(--elb-gold, #b38a39); border-radius:1.3rem; padding:1.3rem; margin:1.5rem 0; }
.hub-pilot-entry h2 { margin:.2rem 0; }
.hub-pilot-entry p { margin:.45rem 0; }
.geo-destination-actions { padding:1rem; display:flex; gap:.7rem; flex-wrap:wrap; }
.geo-destination-actions[hidden] { display:none; }
.geo-destination-actions p { width:100%; margin:0; }
.geo-destination-actions button { padding:.7rem; border:1px solid #b38a39; background:#fff; border-radius:.6rem; cursor:pointer; }
.pilot-map { margin:1.5rem 0; }
.pilot-map summary { padding:1rem; cursor:pointer; border:1px solid #b38a39; border-radius:.7rem; }
