@font-face{font-family:Mulish;src:url('/assets/fonts/Mulish.ttf') format('truetype');font-weight:200 1000;font-display:swap}
@font-face{font-family:Orbitron;src:url('/assets/fonts/Orbitron.ttf') format('truetype');font-weight:400 900;font-display:swap}
:root,:root[data-theme=light]{--ink:#202d40;--muted:#69758a;--line:#e1e7ef;--canvas:#f8fafc;--panel:#fff;--sidebar:#f0f4f9;--accent:#2864e8;--accent-strong:#1e51c3;--accent-soft:#eaf1ff;--teal:#218a70;--danger:#c2404b;--shadow:0 20px 60px #14264c12;color-scheme:light;font-family:Mulish,Arial,sans-serif}
:root[data-theme=dark]{--ink:#e6ecf6;--muted:#9baac0;--line:#253248;--canvas:#0c1423;--panel:#121e30;--sidebar:#0e192a;--accent:#73a0ff;--accent-strong:#94b6ff;--accent-soft:#1b3152;--teal:#56d8b5;--danger:#ff939b;--shadow:0 20px 60px #0005;color-scheme:dark}
html,body,button,input,textarea,select{font-family:Mulish,Arial,sans-serif}body{background:var(--canvas);color:var(--ink)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}h1,h2,h3{font-weight:600}h1,h2,.section-heading h2,.admin-title-block h1{font-family:Orbitron,Mulish,sans-serif}input,textarea,select{color:var(--ink);background:var(--panel);border-color:var(--line)}
.brand,.mobile-brand{display:block;position:relative;width:182px;flex:0 0 auto;gap:0;line-height:1}.brand .brand-wordmark,.mobile-brand .brand-wordmark{width:100%;height:auto;filter:none!important;opacity:1!important}.brand .brand-ai-tag,.mobile-brand .brand-ai-tag{display:block;width:auto;min-width:0;height:auto;margin:3px 0 0 23.6%;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:var(--ink);font-family:Orbitron,sans-serif;font-size:11px;line-height:1.5;letter-spacing:.36em;font-weight:500;text-align:left}
[data-theme=dark] .brand-wordmark,.brand-on-dark .brand-wordmark{content:url('/assets/bahrtec-wordmark-white.svg')}.brand-on-dark .brand-ai-tag{color:#e7efff}.brand-symbol-card{background:none!important;box-shadow:none!important;border:0!important;border-radius:0!important}.brand-symbol-card img{width:30px;height:34px}
.auth-view,.admin-auth-view{min-height:100dvh;grid-template-columns:minmax(0,1.3fr) minmax(420px,.8fr);background:#080f1c}.auth-story,.admin-story{min-height:100dvh;padding:48px clamp(32px,5vw,90px);background:linear-gradient(90deg,#070e1cdc,#07112422),url('/assets/nexus-hero.webp?v=4.6.2') center/cover no-repeat;color:#f4f7ff;justify-content:flex-start}.auth-story::after,.story-orbit{display:none!important}.auth-story .brand{width:220px}.auth-story-copy{position:relative;z-index:1;margin:auto 0;max-width:650px;padding:72px 0}.auth-story-copy .eyebrow{color:#9fbef4;font-size:11px;letter-spacing:.2em}.auth-story h1{font-family:Orbitron,sans-serif;font-size:clamp(30px,3.4vw,56px);line-height:1.32;letter-spacing:-.03em;max-width:690px;color:#fff;font-weight:500}.auth-story-copy>p:not(.eyebrow){color:#c0cce0;max-width:470px;font-size:16px;line-height:1.85}.trust-row{margin-top:35px;flex-wrap:wrap;gap:18px}.trust-row span{color:#b3c3d9;font-size:11px}.trust-row i{background:#409bfa}.auth-panel{background:#0c1524!important;color:#e6ecf6;padding:80px 40px;border-left:1px solid #27334a}.auth-card{max-width:395px;width:100%}.auth-panel .eyebrow,.auth-panel .ink{color:#89acf0}.auth-panel h2{font-size:21px;line-height:1.5;color:#f1f5ff}.auth-panel label{color:#c8d3e5}.auth-panel input{background:#111f32!important;border:1px solid #2a3b54!important;color:#edf3ff!important}.auth-panel input::placeholder{color:#8192aa}.auth-panel .form-hint,.auth-panel small,.auth-panel .microsoft-note{color:#9daec7}.auth-tabs{border-color:#29374e;background:#101c2f}.auth-tab{color:#a7b7ce}.auth-tab.active{background:#223650;color:#fff;box-shadow:none}.auth-panel .microsoft-button{background:#15243a;color:#e8efff;border-color:#344766}.auth-panel .auth-divider span{background:#0c1524;color:#9aaec9}.auth-theme-toggle{display:none!important}.auth-panel .primary-button{color:white;background:#2864e8;border-color:#2864e8}.auth-panel .mobile-brand .brand-wordmark{content:url('/assets/bahrtec-wordmark-white.svg')}.auth-panel .mobile-brand .brand-ai-tag{color:#e7efff}
.app-view{grid-template-columns:240px minmax(0,1fr);background:var(--canvas);height:100dvh}.app-view .sidebar,.admin-sidebar{background:var(--sidebar)!important;border-color:var(--line)!important;color:var(--ink);padding:22px 14px 12px}.app-view .sidebar-top{padding:2px 6px 22px;gap:4px}.app-view .app-brand{width:173px}.app-view .sidebar-top .desktop-only{width:24px;flex:0 0 24px}.app-view .sidebar-footer{border-color:var(--line);margin-top:auto}.nexus-sidebar-note{font-size:10px;letter-spacing:.04em;color:var(--muted);text-align:center}.nexus-nav{display:grid;gap:4px;padding:8px 0 20px}.nexus-nav button{display:flex;align-items:center;gap:14px;min-height:43px;padding:10px 15px;border:1px solid transparent;border-radius:8px;background:transparent;text-align:left;font-size:14px;font-weight:600;color:var(--muted)}.nexus-nav button>span{font-size:20px;width:20px;font-family:Arial,sans-serif;line-height:1}.nexus-nav button:hover{background:var(--panel);color:var(--ink)}.nexus-nav button.active{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 15%,transparent)}.nexus-nav-caption{font-size:9px;letter-spacing:.16em;margin:0 12px 10px;color:var(--muted)}.app-view .new-chat-button{border:1px solid var(--line);background:var(--panel);color:var(--ink);margin-bottom:8px}.app-view .chat-search{background:transparent;border:1px solid var(--line)}.app-view .chat-search input{color:var(--ink)}.app-view .conversation-title-button{color:var(--muted)}.app-view .conversation-item.active,.app-view .conversation-item:hover{background:var(--accent-soft)}.app-view .conversation-item.active .conversation-title-button{color:var(--accent)}.app-view .conversation-options{color:var(--muted)}
.chat-shell{background:var(--canvas)!important;position:relative;grid-template-rows:70px minmax(0,1fr) auto}.app-view .chat-header{height:70px;padding:0 30px;background:var(--canvas)!important;border-bottom:1px solid var(--line);gap:16px;z-index:30}.chat-heading{min-width:0}.chat-heading strong{font-size:13px;font-weight:700;color:var(--ink)}.chat-heading>span{font-size:10px;color:var(--muted)}.nexus-header-actions{display:flex;align-items:center;gap:20px;margin-left:auto;flex:0 0 auto}.nexus-theme{display:inline-flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:7px;background:var(--sidebar)}.nexus-theme button{background:none;border:0;border-radius:4px;padding:5px 9px;color:var(--muted);font-size:11px;white-space:nowrap}.nexus-theme button[aria-pressed=true]{background:var(--panel);color:var(--ink);box-shadow:0 1px 5px #0000000a}.nexus-account{position:relative}.nexus-account .sidebar-account-button{width:36px;min-height:36px;padding:0;background:none;border:0}.nexus-account .sidebar-account-copy,.nexus-account .sidebar-account-chevron{display:none}.avatar{width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent);border:1px solid var(--line);font-size:12px;display:grid;place-items:center}.nexus-account .account-menu,.nexus-admin-account .account-menu{position:absolute;top:calc(100% + 14px);bottom:auto;right:0;left:auto;width:280px;max-width:calc(100vw - 24px);background:var(--panel);color:var(--ink);border:1px solid var(--line);z-index:100;box-shadow:var(--shadow)}.account-menu-item:hover{background:var(--accent-soft)}.account-menu-identity strong,.account-menu-identity span{color:var(--ink)}.account-menu-identity small{color:var(--muted)}.app-view .sidebar-open-button{color:var(--muted);border:0;background:transparent}.app-view.sidebar-collapsed .sidebar{display:none}.app-view.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}
#nexus-pages{min-height:0;overflow:auto;grid-row:2/4}.nexus-page{width:min(1100px,100%);margin:0 auto;padding:48px 48px 32px}.nexus-page h1{font-size:24px;line-height:1.5;margin:0 0 9px;letter-spacing:-.025em;font-weight:500}.nexus-page h2,.nexus-card h2{font-family:Mulish,sans-serif;font-size:15px;line-height:1.5;margin:0;font-weight:750}.nexus-kicker{font-size:9px;font-weight:700;letter-spacing:.18em;color:var(--muted);margin:0 0 13px}.nexus-subtitle,.nexus-page-heading p,.nexus-connection p{font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 25px}.nexus-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:22px}.nexus-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 17px}.nexus-card-heading button{padding:4px 0;border:0;background:none;color:var(--muted);font-size:11px}.nexus-card-heading button:hover{color:var(--accent)}.nexus-home-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;margin-top:34px}.nexus-sources-card{margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(120deg,var(--panel),var(--accent-soft))}.nexus-sources-card .nexus-kicker{font-size:8px;margin-bottom:7px}.nexus-sources-card p:not(.nexus-kicker){font-size:12px;color:var(--muted);line-height:1.65;margin:6px 0 0}.nexus-sources-card button{white-space:nowrap;font-size:11px}.nexus-quick-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.nexus-quick-actions button{padding:9px 13px;background:var(--panel);border:1px solid var(--line);border-radius:6px;font-size:11px;color:var(--muted)}.nexus-quick-actions button:hover{border-color:var(--accent);color:var(--accent)}
.app-view .composer{background:var(--panel);border:1px solid var(--line);box-shadow:0 4px 20px #001b4b08}.app-view .composer textarea{background:transparent;color:var(--ink);font-size:14px}.app-view .composer-wrap{background:var(--canvas)}.app-view .send-button,.primary-button{background:#2864e8;color:#fff;border-color:#2864e8}.primary-button:hover{background:#1e51c3}.secondary-button{background:var(--panel);color:var(--ink);border:1px solid var(--line)}.welcome-state h1{font-family:Orbitron,sans-serif;font-size:24px;font-weight:500}.welcome-state .welcome-logo{display:none}.app-view .message-content{font-size:14px;line-height:1.85}.app-view .message-label{font-size:11px;color:var(--muted)}.app-view .message.user .message-content{background:var(--accent-soft);color:var(--ink);border-color:var(--line)}.message-avatar.assistant-avatar{background:none!important;border:0!important;box-shadow:none!important}.message-avatar-logo{width:22px;height:26px}.nexus-message-sources{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.nexus-source-chip{font-size:10px;border:1px solid var(--line);background:var(--panel);color:var(--muted);padding:5px 9px;border-radius:5px;text-decoration:none;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nexus-source-chip:hover{color:var(--accent);border-color:var(--accent)}.nexus-source-note{width:100%;font-size:9px;color:var(--muted)}
.nexus-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.nexus-page-heading .primary-button{font-size:12px;white-space:nowrap}.nexus-search{display:grid;gap:7px;color:var(--muted);font-size:11px;margin-bottom:20px}.nexus-search input{width:100%;height:44px;border:1px solid var(--line);border-radius:7px;padding:10px 14px;font-size:13px;outline-offset:0}.nexus-search-row{display:flex;gap:12px;align-items:flex-end;margin:26px 0}.nexus-search-row .nexus-search{flex:1;margin:0}.nexus-search-row>button{height:44px;font-size:12px}.nexus-connection{display:flex;align-items:center;justify-content:space-between;gap:20px}.nexus-connection p{margin:6px 0 0}.nexus-connection button{font-size:11px;white-space:nowrap}.nexus-row{display:flex;align-items:center;gap:13px;min-width:0;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.nexus-row:last-child{border:0}.nexus-row-copy{display:grid;gap:5px;flex:1;min-width:0}.nexus-row-title{font-size:12px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:none;border:0;text-align:left;padding:0;color:var(--ink);display:block}.nexus-row-title:hover{color:var(--accent)}.nexus-row small{font-size:10px;color:var(--muted);line-height:1.5}.nexus-row-icon{width:32px;height:34px;border-radius:6px;display:grid;place-items:center;color:var(--accent);background:var(--accent-soft);font-size:17px;flex:0 0 auto}.nexus-row-actions{display:flex;gap:6px;flex:0 0 auto}.nexus-row-actions button,.nexus-row-actions a{font-size:10px;padding:7px 9px;border:1px solid var(--line);border-radius:5px;background:var(--panel);color:var(--ink);text-decoration:none}.nexus-empty{padding:25px 0;color:var(--muted);font-size:12px;line-height:1.7;text-align:center}.nexus-status{font-size:12px;color:var(--muted);margin-top:10px}.nexus-footnote{color:var(--muted);font-size:11px;line-height:1.75;margin:18px 0 0}.nexus-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:32px}.nexus-template{border:1px solid var(--line);border-radius:9px;background:var(--panel);padding:20px;min-height:175px;text-align:left;display:flex;flex-direction:column;gap:12px}.nexus-template>span{color:var(--accent);font-size:23px}.nexus-template strong{font-size:13px;line-height:1.6}.nexus-template small{color:var(--muted);font-size:11px;line-height:1.7}.nexus-template:hover{border-color:var(--accent);background:var(--accent-soft)}.nexus-badge{font-size:9px;white-space:nowrap;background:var(--accent-soft);color:var(--accent);padding:5px 8px;border-radius:5px}.nexus-badge.completed{color:var(--teal);background:color-mix(in srgb,var(--teal) 12%,transparent)}.nexus-badge.failed{color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent)}
dialog.nexus-dialog{background:var(--panel);color:var(--ink);width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 40px);border:1px solid var(--line);border-radius:13px;padding:28px;box-shadow:var(--shadow)}dialog::backdrop{background:#040a177a;backdrop-filter:blur(3px)}.nexus-dialog h2{font-family:Mulish,sans-serif;font-size:21px;line-height:1.4;margin:0}.nexus-document-text{font-family:Mulish,sans-serif;font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;max-height:60vh;overflow:auto;background:var(--canvas);border:1px solid var(--line);padding:20px;border-radius:6px}.nexus-flow-draft{border:1px solid var(--line);border-radius:7px;padding:20px;min-height:120px;font-size:14px;line-height:1.8;max-height:50vh;overflow:auto}.nexus-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.nexus-dialog-actions button{font-size:12px}.nexus-profile-details{display:grid;grid-template-columns:130px 1fr;gap:17px;font-size:13px;overflow-wrap:anywhere}.nexus-profile-details dt{color:var(--muted)}.nexus-profile-details dd{margin:0}
.admin-app{background:var(--canvas);grid-template-columns:250px minmax(0,1fr)}.admin-sidebar .brand{width:185px}.admin-sidebar .sidebar-top{padding:8px 8px 20px}.admin-main,.admin-content{background:var(--canvas)}.admin-header{background:var(--canvas)!important;border-color:var(--line);padding:23px 34px}.admin-header h1{font-size:22px;letter-spacing:-.02em}.glass-breadcrumb{font-size:10px;background:none;border:0;box-shadow:none;padding:0;margin-bottom:7px}.admin-header-actions{display:flex;gap:17px;align-items:center}.nexus-admin-account{position:relative}.admin-nav-item{color:var(--muted)}.admin-nav-item.active{background:var(--accent-soft);color:var(--accent);border-color:var(--line);box-shadow:none}.admin-badge{font-size:9px;background:transparent;color:var(--muted);border-color:var(--line)}.admin-card,.metric-card,.organization-card,.customer-summary-card,.dialog-panel,.admin-dialog{background:var(--panel);color:var(--ink);border-color:var(--line);box-shadow:0 3px 16px #00000003}.section-heading h2{font-size:21px}.section-heading p,.admin-card p{color:var(--muted);font-size:13px;line-height:1.75}.nexus-admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.nexus-admin-metric{padding:22px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.nexus-admin-metric strong{font-family:Orbitron,sans-serif;display:block;font-size:27px;font-weight:500;margin-bottom:8px}.nexus-admin-metric span{font-size:11px;color:var(--muted)}.nexus-table-scroll{overflow:auto}.nexus-table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}.nexus-table th{font-size:10px;font-weight:600;color:var(--muted);white-space:nowrap;padding:13px 10px;border-bottom:1px solid var(--line)}.nexus-table td{padding:15px 10px;border-bottom:1px solid var(--line)}.nexus-table button{background:none;border:0;color:var(--accent);text-align:left;padding:0;font-size:12px}.nexus-table td small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.nexus-admin-org-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.nexus-admin-org-stats span{padding:9px 12px;background:var(--canvas);border:1px solid var(--line);border-radius:6px;font-size:11px}
@media(min-width:1500px){.nexus-page{padding-top:66px}.nexus-home-grid{margin-top:42px}}
@media(max-width:1100px){.nexus-page{padding:35px 30px}.nexus-home-grid{gap:14px}.app-view .chat-header{padding:0 20px}.nexus-template-grid{gap:10px}.nexus-template{padding:16px}.admin-header .vpn-pill{display:none}.nexus-admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.auth-view,.admin-auth-view{display:block}.auth-story,.admin-story{min-height:380px;padding:28px}.auth-story .brand{width:182px}.auth-story-copy{padding:42px 0 5px}.auth-story h1{font-size:32px}.auth-story-copy>p:not(.eyebrow){font-size:13px;line-height:1.7}.trust-row{margin-top:18px}.auth-panel{padding:32px 24px;min-height:520px;border:0}.auth-panel .mobile-brand{display:none}.app-view,.app-view.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.app-view .sidebar,.app-view.sidebar-collapsed .sidebar{display:flex;width:250px}.app-view .chat-header{height:62px;padding:0 16px;gap:10px}.chat-shell{grid-template-rows:62px minmax(0,1fr) auto}.nexus-header-actions{gap:12px}.nexus-theme button{padding:5px 7px;font-size:10px}.chat-heading{max-width:calc(100vw - 250px)}.nexus-page{padding:30px 22px}.nexus-page h1{font-size:22px}.nexus-home-grid{grid-template-columns:1fr}.nexus-template-grid{grid-template-columns:1fr}.nexus-template{min-height:130px}.nexus-sources-card{align-items:flex-start;flex-direction:column;gap:14px}.nexus-page-heading{align-items:flex-start;flex-direction:column;margin-bottom:20px}.nexus-page-heading p{margin-bottom:0}.nexus-connection{align-items:flex-start;flex-direction:column;gap:12px}.nexus-search-row{gap:8px}.nexus-row{flex-wrap:wrap;gap:10px}.nexus-row-actions{margin-left:auto}.nexus-quick-actions{gap:6px}.nexus-quick-actions button{font-size:10px;padding:9px}.nexus-card{padding:18px}.nexus-source-dialog{padding:20px}.admin-header{padding:20px}.admin-header h1{font-size:17px}.admin-header-actions{gap:10px}.admin-content{padding:22px 16px}.nexus-admin-metrics{gap:10px}.nexus-admin-metric{padding:17px}.nexus-admin-metric strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Override legacy theme selectors shared with the original chat components. */
html[data-theme] .brand .brand-ai-tag,html[data-theme] .mobile-brand .brand-ai-tag{background:none;color:var(--ink);border:0;box-shadow:none}
html[data-theme] .brand-on-dark .brand-ai-tag,html[data-theme] .auth-panel .mobile-brand .brand-ai-tag{color:#e7efff}
.app-view .sidebar{width:240px}
.admin-sidebar{width:250px}



html[data-theme=dark] .app-view .composer{background:var(--panel);border-color:var(--line)}
html[data-theme=dark] .app-view .send-button{background:#2864e8;color:#fff}
html[data-theme=dark] .app-view .sidebar-open-button{background:transparent;color:var(--muted);border:0}
html[data-theme=dark] .app-view .new-chat-button{background:var(--panel);border-color:var(--line);color:var(--ink)}
html[data-theme=dark] .app-view .message.user .message-content{background:var(--accent-soft);color:var(--ink)}
html[data-theme] .avatar{background:var(--accent-soft);color:var(--accent);border-radius:50%;border-color:var(--line)}
html[data-theme] .brand-symbol-card img{filter:none}
html[data-theme] .auth-story,html[data-theme] .admin-story{background:linear-gradient(90deg,#070e1cdc,#07112422),url('/assets/nexus-hero.webp?v=4.6.2') center/cover no-repeat!important}
.auth-panel .mobile-brand{display:none!important}
.chat-shell:has(#nexus-pages:not(.hidden)) #header-job-status{display:none}
html[data-theme] .auth-panel .auth-tab.active{background:#223650;color:#fff;box-shadow:none}
html[data-theme] .auth-panel .microsoft-button{background:#15243a;color:#e8efff;border-color:#344766}
@media(max-width:800px){.app-view .sidebar{width:250px}}

/* Nexus 3.0.1: continuous entry background and matching glass controls. */
/* Nexus 3.0.2: the account trigger and its visible avatar share one circle. */
/* Nexus 3.0.3: appearance controls live in the account menus on every screen size. */
/* Nexus 3.0.6: calm composer, vector controls and reviewable dictation. */
html[data-theme] #composer{border-radius:24px;padding:14px 16px 11px;background:var(--panel);border:1px solid var(--line);box-shadow:0 3px 16px #102e6706}

html[data-theme] #composer:focus-within{border-color:var(--line);box-shadow:0 3px 16px #102e6706;outline:none}
html[data-theme] #composer #message-input,html[data-theme] #composer #message-input:focus,html[data-theme] #composer #message-input:focus-visible{border:0;outline:none;box-shadow:none;background:transparent;border-radius:0;padding:5px 4px 13px;line-height:1.6;font-size:15px}
#composer .composer-bottom{align-items:center;gap:12px}
#composer .composer-actions,#composer .composer-submit{gap:7px;align-items:center}
html[data-theme] #composer .composer-tool-button{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:7px;border:0;border-radius:50%;background:transparent;color:var(--ink);animation:none;line-height:1}
html[data-theme] #composer .composer-tool-button:hover,html[data-theme] #composer .composer-tool-button[aria-expanded=true]{background:var(--accent-soft)}
#composer .composer-tool-button svg,#composer .send-button svg,#composer .nexus-recording-done svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html[data-theme] #composer #send-button,html[data-theme] #composer .nexus-recording-done{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:7px;border:0;border-radius:50%;background:var(--ink);color:var(--panel);cursor:pointer;box-shadow:none}
#composer #send-button svg{stroke-width:2.3}
html[data-theme] #composer #send-button:hover,html[data-theme] #composer .nexus-recording-done:hover{background:var(--muted)}
html[data-theme] #composer #send-button:disabled,html[data-theme] #composer .nexus-recording-done:disabled{background:var(--line);color:var(--muted);opacity:.75;cursor:default}
.nexus-recording-bar{display:flex;align-items:center;gap:12px;width:100%;min-height:76px}
.nexus-recording-meter{flex:1;min-width:0;display:flex;align-items:center;gap:14px}
.nexus-recording-meter #recording-status{font-size:11px;color:var(--muted);flex:0 1 auto;line-height:1.4}
#nexus-recording-wave{display:block;width:min(100%,256px);height:36px;flex:1;min-width:30px}
#nexus-recording-time{font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted)}
#composer.nexus-capturing>#message-input,#composer.nexus-capturing>.composer-bottom,#composer.nexus-capturing>#attachment-list{display:none!important}
.nexus-transcribing #nexus-recording-wave,.nexus-transcribing #nexus-recording-time{display:none}
.nexus-transcribing .nexus-recording-meter{min-height:36px}
@media(max-width:600px){.nexus-recording-bar{gap:7px}.nexus-recording-meter{flex-direction:column;align-items:stretch;gap:3px}.nexus-recording-meter #recording-status{font-size:10px}#nexus-recording-wave{width:100%;height:30px}html[data-theme] #composer{padding:12px 12px 9px}}
.nexus-menu-appearance{display:grid;gap:9px;padding:12px 10px}
.nexus-menu-label{color:var(--muted);font-size:11px;font-weight:600}
.nexus-menu-appearance .nexus-theme{display:flex;width:100%;gap:3px}
.nexus-menu-appearance .nexus-theme button{flex:1;min-height:34px;padding:7px 6px;font-size:11px;text-align:center}
.nexus-account .account-menu,.nexus-admin-account .account-menu{max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain}
.nexus-account{display:flex;align-items:center;width:34px;height:34px}
#account-menu-button{display:grid;grid-template-columns:1fr;place-items:center;gap:0;width:34px;height:34px;min-width:34px;min-height:34px;padding:0;border:0;border-radius:50%;overflow:hidden;background:transparent}
#account-menu-button .avatar{width:100%;height:100%;border-radius:inherit;margin:0;transition:background .15s ease,color .15s ease,border-color .15s ease}
#account-menu-button:hover,#account-menu-button[aria-expanded=true]{background:transparent}
#account-menu-button:hover .avatar,#account-menu-button[aria-expanded=true] .avatar{background:var(--accent);border-color:var(--accent);color:var(--panel)}
html[data-theme] .auth-view,html[data-theme] .admin-auth-view{background:linear-gradient(90deg,#050b18ed 0%,#07122488 43%,#07142638 72%,#070f205e 100%),url('/assets/nexus-hero.webp?v=4.6.2') center/cover no-repeat #070f1e}
html[data-theme] .auth-story,html[data-theme] .admin-story{background:transparent!important}
html[data-theme] .auth-panel{background:transparent!important;border:0;padding:64px 36px;color:#e6ecf6}
html[data-theme] .auth-card{max-width:440px;padding:30px;border:1px solid #aacbff24;border-radius:22px;background:linear-gradient(145deg,#11243a99,#071326b3);box-shadow:0 24px 70px #02091645,inset 0 1px 0 #d0e5ff0d;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
html[data-theme] .auth-panel input{background:#09182ca6!important;border-color:#a2c4ff29!important}
html[data-theme] .auth-panel .auth-tabs,html[data-theme] .auth-panel .register-method-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid #91b8f31c;border-radius:10px;background:#0a182ca6}
html[data-theme] .auth-panel .auth-tab,html[data-theme] .auth-panel .register-method{min-height:38px;border:1px solid transparent;border-radius:7px;padding:8px 12px;color:#a5b9d4;background:transparent;box-shadow:none;font-size:12px;font-weight:650;transition:background .15s ease,color .15s ease,border-color .15s ease}
html[data-theme] .auth-panel .auth-tab.active,html[data-theme] .auth-panel .register-method.active{color:#f1f6ff;background:#24467399;border-color:#82b0ff38;box-shadow:0 1px 5px #00000012}
html[data-theme] .auth-panel .auth-tab:hover,html[data-theme] .auth-panel .register-method:hover{color:#fff;background:#24467366}
html[data-theme] .auth-panel .register-method-panel .microsoft-note{background:#10233a80;border-color:#8ab3ef2b;color:#b8c9e1}
html[data-theme] .auth-panel .auth-divider{display:flex;align-items:center;gap:12px;background:none;border:0;color:#92a9c6}
html[data-theme] .auth-panel .auth-divider::before,html[data-theme] .auth-panel .auth-divider::after{position:static;content:"";height:1px;flex:1;background:#a2c4ff25}
html[data-theme] .auth-panel .auth-divider span{padding:0;background:none;color:#92a9c6}
.brand .brand-ai-tag,.mobile-brand .brand-ai-tag{margin-top:-6px;line-height:1.2}
.auth-story .brand-ai-tag{margin-top:-8px}
.nexus-nav button .nexus-nav-label{font:inherit;width:auto;font-size:14px;line-height:1.4}

/* Keep primary destinations available as an icon rail when collapsed. */
@media(min-width:901px){
  .app-view.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}
  .app-view.sidebar-collapsed .sidebar{display:flex;visibility:visible;transform:none;width:72px;padding:22px 10px 12px;overflow:visible;border-right:1px solid var(--line)}
  .app-view.sidebar-collapsed .sidebar-top{height:auto;min-height:46px;padding:0 0 14px;display:flex;flex-direction:column;gap:13px;align-items:center}
  .app-view.sidebar-collapsed .app-brand{display:block;flex:none;width:30px;height:34px;background:url('/assets/bahrtec-ai-logo.svg') center/contain no-repeat}
  .app-view.sidebar-collapsed .app-brand>*{display:none}
  .app-view.sidebar-collapsed .nexus-nav{padding:8px 0 18px;gap:7px}
  .app-view.sidebar-collapsed .nexus-nav button{position:relative;justify-content:center;width:50px;height:44px;padding:10px;gap:0}
  .app-view.sidebar-collapsed .nexus-nav-label,.app-view.sidebar-collapsed .nexus-nav-caption,.app-view.sidebar-collapsed .chat-search,.app-view.sidebar-collapsed .conversation-scroll,.app-view.sidebar-collapsed .sidebar-footer,.app-view.sidebar-collapsed #new-chat>span{display:none}
  .app-view.sidebar-collapsed #new-chat{width:44px;min-height:42px;margin:0 auto;padding:10px;justify-content:center}
  .app-view.sidebar-collapsed .nexus-nav button::after{content:attr(aria-label);display:none;position:absolute;left:calc(100% + 16px);top:50%;transform:translateY(-50%);z-index:400;white-space:nowrap;padding:8px 12px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);box-shadow:var(--shadow);font-size:12px;pointer-events:none}
  .app-view.sidebar-collapsed .nexus-nav button:hover::after,.app-view.sidebar-collapsed .nexus-nav button:focus-visible::after{display:block}
}
@media(max-width:900px){
  .app-view,.app-view.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}
  .app-view .sidebar,.app-view.sidebar-collapsed .sidebar{display:flex;width:250px;position:fixed;inset:0 auto 0 0;visibility:visible;transform:translateX(-105%)}
  .app-view .sidebar.open,.app-view.sidebar-collapsed .sidebar.open{transform:translateX(0)}
}
@media(max-width:800px){
  html[data-theme] .auth-view{background-position:62% top}
  html[data-theme] .auth-panel{padding:12px 22px 38px;min-height:0}
  html[data-theme] .auth-card{max-width:520px;padding:24px;border-radius:18px}
  .auth-story,.admin-story{min-height:330px}
  .auth-story .brand-ai-tag{margin-top:-6px}
  html[data-theme] .auth-story{display:flex;min-height:0;padding:26px 26px 18px}
  .auth-story-copy{display:none}
}

/* Nexus 3.0.7: account appearance follows the login segmented control. */
.nexus-menu-appearance{gap:9px}
.nexus-menu-appearance .nexus-menu-label{font-size:12px;font-weight:650}
.nexus-menu-appearance .nexus-theme{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--canvas)}
.nexus-menu-appearance .nexus-theme button{display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:36px;padding:7px 4px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);box-shadow:none;font-size:11px;font-weight:650;line-height:20px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}
.nexus-menu-appearance .nexus-theme button>svg{display:block;width:18px;height:18px;flex:0 0 18px}
.nexus-menu-appearance .nexus-theme button:hover{background:var(--accent-soft);color:var(--ink)}
.nexus-menu-appearance .nexus-theme button[aria-pressed=true]{color:#204b8a;background:#e2edff;border-color:#9cbbeb;box-shadow:0 1px 5px #00000012}
.nexus-menu-appearance button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
html[data-theme=dark] .nexus-menu-appearance .nexus-theme{border-color:#91b8f31c;background:#0a182ca6}
html[data-theme=dark] .nexus-menu-appearance .nexus-theme button{color:#a5b9d4}
html[data-theme=dark] .nexus-menu-appearance .nexus-theme button:hover{color:#fff;background:#24467366}
html[data-theme=dark] .nexus-menu-appearance .nexus-theme button[aria-pressed=true]{color:#f1f6ff;background:#24467399;border-color:#82b0ff38}
.nexus-admin-account .account-menu{padding:6px;border-radius:14px}
.nexus-admin-account .account-menu-identity{display:flex;min-width:0;padding:10px 9px 13px;margin-bottom:4px;border-bottom:1px solid var(--line)}
.nexus-admin-account .account-menu-identity>div{display:grid;gap:3px;min-width:0}
.nexus-admin-account .account-menu-identity strong,.nexus-admin-account .account-menu-identity span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nexus-admin-account .account-menu-identity strong{font-size:13px}
.nexus-admin-account .account-menu-identity span{font-size:11px;color:var(--muted)}
.nexus-admin-account .account-menu-item{display:flex;align-items:center;width:100%;min-height:38px;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:var(--ink);font:inherit;font-size:12px;text-align:left;cursor:pointer}
.nexus-admin-account .account-menu-item:hover{background:var(--accent-soft)}
.nexus-admin-account .danger-menu-item{color:var(--danger,#d66d79)}
.nexus-admin-account .nexus-menu-appearance{margin-bottom:4px;border-bottom:1px solid var(--line)}
/* Nexus 3.0.8: retain the full viewport width when the admin sidebar is off canvas. */
@media(max-width:820px){.admin-app{grid-template-columns:minmax(0,1fr)}}
/* Nexus 3.1.0: personal Outlook workspace. */
.outlook-home-card{margin:22px 0}.outlook-home-card .nexus-card-heading{align-items:flex-start}.outlook-home-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.outlook-preview-column{min-width:0}.outlook-preview-column>.nexus-row-title{font-weight:700;margin-bottom:12px}
.outlook-preview-item{display:grid;gap:5px;padding:12px 0;border:0;border-top:1px solid var(--line);background:none;color:var(--ink);width:100%;text-align:left;cursor:pointer}
.outlook-preview-item strong,.outlook-preview-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.outlook-preview-item strong{font-size:12px;font-weight:650}.outlook-preview-item small{font-size:10px;color:var(--muted)}.outlook-preview-item:hover strong{color:var(--accent)}
.outlook-connection h2{font-family:Mulish,sans-serif;font-size:17px}.outlook-connection p{font-size:13px;line-height:1.7;color:var(--muted)}.outlook-connection .nexus-footnote{font-size:11px;max-width:760px}
.outlook-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:18px}.outlook-actions a{text-decoration:none}.outlook-actions>small{flex-basis:100%}
.outlook-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:460px;gap:4px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--panel);margin:26px 0 18px}
.outlook-tabs button{min-height:40px;padding:8px 12px;border:1px solid transparent;border-radius:7px;color:var(--muted);background:transparent;font:inherit;font-size:12px;font-weight:650;cursor:pointer}
.outlook-tabs button[aria-pressed=true]{color:var(--accent);background:var(--accent-soft);border-color:var(--line)}.outlook-tabs button:hover{color:var(--ink);background:var(--accent-soft)}
.outlook-search{display:flex;align-items:flex-end;gap:10px;max-width:640px}.outlook-search label{display:grid;gap:6px;flex:1;color:var(--muted);font-size:12px}
.outlook-search input{width:100%;min-width:0;height:42px;padding:10px 13px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);font:inherit;font-size:13px}
.outlook-list{display:grid;gap:8px;margin:15px 0}.outlook-list-item{display:flex;align-items:flex-start;gap:14px;width:100%;padding:17px 19px;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:10px;text-align:left;cursor:pointer}
.outlook-list-item:hover{border-color:var(--accent);background:var(--accent-soft)}.outlook-item-copy{display:grid;gap:6px;min-width:0;flex:1}.outlook-item-copy strong{font-family:Mulish,sans-serif;font-size:14px;font-weight:650}.outlook-item-copy small{font-size:11px;color:var(--muted)}.outlook-preview-text{font-size:12px;color:var(--muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.outlook-detail-dialog{width:min(820px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto}.nexus-dialog-heading{display:flex;gap:15px;align-items:flex-start;justify-content:space-between}.nexus-dialog-heading h2{min-width:0;overflow-wrap:anywhere}.nexus-dialog-heading button{flex-shrink:0}
.outlook-detail-text{white-space:pre-wrap;overflow-wrap:anywhere;font-family:Mulish,sans-serif;font-size:13px;line-height:1.8;color:var(--ink);max-height:48dvh;overflow:auto;background:var(--canvas);border:1px solid var(--line);border-radius:9px;padding:18px}
.outlook-tabs button:focus-visible,.outlook-list-item:focus-visible,.outlook-preview-item:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
#nexus-outlook .secondary-button,#nexus-outlook .primary-button,.outlook-actions .secondary-button,.outlook-actions .primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 14px;border:1px solid var(--line);border-radius:8px;font-family:Mulish,sans-serif;font-size:12px;font-weight:650;line-height:1.4;cursor:pointer}
#nexus-outlook .secondary-button,.outlook-actions .secondary-button{background:var(--panel);color:var(--ink)}
#nexus-outlook .primary-button,.outlook-actions .primary-button{background:#2864e8;color:#fff}
#nexus-outlook .secondary-button:hover,.outlook-actions .secondary-button:hover{background:var(--accent-soft)}
@media(max-width:800px){.outlook-home-preview{grid-template-columns:minmax(0,1fr);gap:16px}.outlook-home-card .nexus-card-heading{flex-wrap:wrap;gap:12px}.outlook-list-item{padding:14px;gap:8px}.outlook-list-item>.nexus-badge{font-size:9px}.outlook-detail-dialog{padding:20px}.outlook-actions{align-items:stretch}.outlook-actions button{flex:1 1 160px}}

/* Nexus 3.1.1: one composer appearance in Workspace and Chat. */
#nexus-home-composer{position:relative;left:50%;transform:translateX(-50%);margin-top:27px}
#nexus-pages:has(#nexus-workspace:not(.hidden)){overflow-x:hidden}
/* Nexus 3.2.0: shared cards and operational status in both portal surfaces. */
html[data-theme] :is(.nexus-card,.admin-card,.metric-card,.nexus-admin-metric){border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);box-shadow:0 3px 16px #00000003}
.admin-body{--admin-panel:var(--panel);--admin-text:var(--ink);--admin-muted:var(--muted);--admin-accent:var(--accent);--admin-accent-soft:var(--accent-soft)}
.admin-body :is(.metric-card,.admin-card){padding:22px}.admin-body .metric-value,.nexus-stat-value{display:block;font-family:Mulish,sans-serif;font-size:28px;font-weight:700;letter-spacing:-.025em;line-height:1.3;color:var(--ink);margin:10px 0}
.admin-body .metric-card-top{font-size:12px;color:var(--muted)}.admin-body .metric-note,.nexus-stat-note{display:block;font-size:11px;line-height:1.6;color:var(--muted)}
.admin-body .metric-icon,.admin-body .card-icon{background:transparent;box-shadow:none;border:0;color:var(--muted)}
.admin-body :is(.admin-card h3,.nexus-service-card h3){font-family:Mulish,sans-serif;font-size:15px;font-weight:750;color:var(--ink)}
.admin-body .secondary-button{min-height:38px;padding:9px 13px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);font-family:Mulish,sans-serif;font-size:12px;cursor:pointer}.admin-body .secondary-button:hover{background:var(--accent-soft)}
.nexus-ops-summary{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:17px 20px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.nexus-ops-summary>button{margin-left:auto}.nexus-ops-state{display:flex;align-items:center;gap:9px;font-size:12px}.nexus-ops-state>span:last-child{color:var(--muted);font-size:11px}.nexus-ops-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.nexus-ops-state.ok{color:var(--ink)}.nexus-ops-state.ok .nexus-ops-dot{color:#399873}.nexus-ops-state.attention{color:#b77624}
.admin-body .system-cards,.nexus-ops-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.nexus-service-card{min-width:0}.nexus-service-card .nexus-card-heading{align-items:flex-start;flex-wrap:wrap;gap:8px}.nexus-service-card .nexus-stat-value{font-size:24px}.nexus-health-badge{font-size:10px;padding:4px 7px;border-radius:5px;background:var(--accent-soft);color:var(--ink)}.nexus-health-badge.ok{color:#21694f;background:#39987318}.nexus-health-badge.attention{color:#975518;background:#df923b1a}html[data-theme=dark] .nexus-health-badge.ok{color:#8cd6b5}html[data-theme=dark] .nexus-health-badge.attention{color:#edbf81}
.nexus-stat-label{font-size:12px;color:var(--muted)}.nexus-ops-facts{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px;margin:22px 0 0;font-size:12px}.nexus-ops-facts dt{color:var(--muted)}.nexus-ops-facts dd{margin:0;font-weight:650;color:var(--ink)}.nexus-access-card{display:flex;align-items:flex-start;gap:18px;justify-content:space-between}.nexus-access-card p{max-width:800px}.nexus-ops-summary .nexus-footnote{margin:0}
@media(max-width:1100px){.admin-body .system-cards,.nexus-ops-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.admin-body .system-cards,.nexus-ops-metrics{grid-template-columns:minmax(0,1fr)}.nexus-ops-summary>button{margin-left:0;width:100%}.nexus-ops-state{flex-wrap:wrap}.admin-body :is(.metric-card,.admin-card){padding:18px}}

.admin-body .metric-card::after{content:none}
/* Nexus 3.2.1: one vector icon family for navigation and workspace actions. */
.nexus-icon{display:block;width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nexus-nav button>.nexus-nav-symbol,.admin-nav-item>.nexus-nav-symbol{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;line-height:1}
.nexus-nav-symbol .nexus-icon{width:22px;height:22px}
.nexus-nav button.active .nexus-icon,.admin-nav-item.active .nexus-icon{stroke-width:1.85}
.nexus-quick-actions button{display:inline-flex;align-items:center;gap:8px}.nexus-quick-actions .nexus-icon{width:17px;height:17px;flex-basis:17px}
.nexus-row-icon{display:grid;place-items:center}.nexus-row-icon .nexus-icon{width:19px;height:19px;flex-basis:19px;color:var(--muted)}
.nexus-template>.nexus-icon{width:25px;height:25px;color:var(--accent);margin-bottom:4px}
.admin-body .metric-icon .nexus-icon{width:21px;height:21px}
/* Nexus 3.2.2: password change uses the same visual language as sign-in. */
.nexus-admin-account #change-password-button{gap:9px;min-height:40px;margin:8px 0 4px;padding:9px 10px;border:1px solid #9cbbeb;border-radius:7px;background:#e2edff;color:#204b8a;font-size:12px;font-weight:650}
.nexus-admin-account #change-password-button:hover{background:#d3e3fc}.nexus-admin-account #change-password-button .nexus-icon{width:18px;height:18px;flex-basis:18px}
html[data-theme=dark] .nexus-admin-account #change-password-button{color:#f1f6ff;background:#24467399;border-color:#82b0ff38}html[data-theme=dark] .nexus-admin-account #change-password-button:hover{background:#2c5085b3}
html[data-theme] dialog.nexus-auth-dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:30px;border:1px solid #aacbff24;border-radius:22px;color:#edf3ff;background:linear-gradient(145deg,#11243ae6,#071326f2);box-shadow:0 24px 70px #02091645,inset 0 1px 0 #d0e5ff0d;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);color-scheme:dark}
html[data-theme] dialog.nexus-auth-dialog::backdrop{background:#040d1b94;backdrop-filter:blur(7px)}
html[data-theme] .nexus-auth-dialog .dialog-header{position:static;margin:0;padding:0 0 12px;gap:12px;background:transparent}
html[data-theme] .nexus-auth-dialog .eyebrow{margin:0 0 9px;color:#89acf0;font-size:10px;font-weight:700;letter-spacing:.15em}
html[data-theme] .nexus-auth-dialog h2{font-family:Orbitron,sans-serif;font-size:21px;line-height:1.5;font-weight:500;letter-spacing:-.025em;color:#f1f5ff}
html[data-theme] .nexus-auth-dialog .form-hint{margin:0 0 25px;font-size:12px;line-height:1.7;color:#9daec7}
html[data-theme] .nexus-auth-dialog .auth-form{display:grid;gap:18px}
html[data-theme] .nexus-auth-dialog .auth-form label{display:grid;gap:8px;color:#c8d3e5;font-size:12px;font-weight:650}
html[data-theme] .nexus-auth-dialog .auth-form input{height:48px;width:100%;min-width:0;border:1px solid #a2c4ff29;border-radius:10px;padding:12px 14px;background:#09182ca6;color:#edf3ff;font-family:Mulish,sans-serif;font-size:13px;box-shadow:none}
html[data-theme] .nexus-auth-dialog .auth-form input::placeholder{color:#8192aa}
html[data-theme] .nexus-auth-dialog .auth-form input:focus{border-color:#82b0ff80;outline:none;box-shadow:0 0 0 3px #628cdd17}
html[data-theme] .nexus-auth-dialog .auth-form .primary-button{min-height:48px;width:100%;margin-top:5px;padding:12px 16px;border:1px solid #2864e8;border-radius:12px;background:#2864e8;color:#fff;font-family:Mulish,sans-serif;font-size:13px;font-weight:720;box-shadow:0 8px 20px #06225c30}
html[data-theme] .nexus-auth-dialog .auth-form .primary-button:hover{background:#1e51c3;border-color:#1e51c3}
html[data-theme] .nexus-auth-dialog .dialog-header .icon-button{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;min-height:30px;padding:0;border:1px solid #91b8f31c;border-radius:50%;background:#0a182ca6;color:#a5b9d4;font-size:22px;line-height:1;cursor:pointer}
html[data-theme] .nexus-auth-dialog .dialog-header .icon-button:hover{background:#24467399;color:#fff}
html[data-theme] .nexus-auth-dialog .form-error{color:#ffb5b9;font-size:12px;line-height:1.6;margin:14px 0 0}.nexus-auth-dialog .form-error:empty{display:none}
.nexus-account-security:focus-visible,.nexus-auth-dialog button:focus-visible{outline:2px solid #82b0ff;outline-offset:3px}
@media(max-width:600px){html[data-theme] dialog.nexus-auth-dialog{position:fixed;inset:0;margin:auto;height:fit-content;min-height:0;padding:24px;border-radius:18px}html[data-theme] .nexus-auth-dialog h2{font-size:19px}}

/* Nexus 3.3.0 organization feature controls */
html[data-feature-chat="off"] [data-requires-feature="chat"]{display:none!important}
html[data-feature-knowledge="off"] [data-requires-feature="knowledge"]{display:none!important}
html[data-feature-files="off"] [data-requires-feature="files"]{display:none!important}
html[data-feature-flows="off"] [data-requires-feature="flows"]{display:none!important}
html[data-feature-outlook="off"] [data-requires-feature="outlook"]{display:none!important}
html[data-feature-audio="off"] [data-requires-feature="audio"]{display:none!important}
html[data-feature-chat="off"] :is(.nexus-needs-chat,#nexus-source-chat,.composer-wrap){display:none!important}
.nexus-feature-panel{margin-bottom:22px}.nexus-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.nexus-feature-row{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);background:var(--canvas);padding:16px;border-radius:12px;cursor:pointer}
.nexus-feature-row strong{display:block;font-size:14px;color:var(--ink)}.nexus-feature-row small{display:block;margin-top:5px;font-size:12px;line-height:1.5;color:var(--muted)}.nexus-feature-row .attention{color:var(--accent)}
.nexus-feature-row input[role=switch]{appearance:none;flex:0 0 42px;width:42px;height:24px;margin:0;padding:3px;border:1px solid var(--line);border-radius:20px;background:var(--muted);cursor:pointer}
.nexus-feature-row input[role=switch]::before{content:"";display:block;width:16px;height:16px;border-radius:50%;background:white;transition:transform .15s}
.nexus-feature-row input[role=switch]:checked{background:var(--accent);border-color:var(--accent)}.nexus-feature-row input[role=switch]:checked::before{transform:translateX(18px)}
.nexus-feature-row input[role=switch]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.nexus-feature-row input:disabled{opacity:.5}
@media(max-width:700px){.nexus-feature-grid{grid-template-columns:minmax(0,1fr)}}

/* Nexus 3.3.1: single sidebar toggle in the header. */

/* Nexus 3.3.2: search without platform shortcut badge. */
.app-view .chat-search{grid-template-columns:auto minmax(0,1fr)}

/* Nexus 4.1.1: transparent field interiors and aligned content gutters. */
html[data-theme] .app-view .chat-search input,
html[data-theme] .app-view .chat-search input:focus,
html[data-theme] .app-view .chat-search input:focus-visible{
  appearance:none;background:transparent;border:0;outline:none;box-shadow:none;
}
html[data-theme] .app-view .chat-search:focus-within{
  background:transparent;border-color:var(--accent);box-shadow:none;
}
html[data-theme] .app-view .composer-wrap{
  width:min(1100px,100%);min-width:0;margin-inline:auto;padding-inline:48px;background:transparent;
}
html[data-theme] .app-view #composer{width:100%;max-width:none;box-shadow:none}
#nexus-home-composer{width:100%;left:auto;transform:none}
html[data-theme] #nexus-home-composer .composer-wrap{width:100%;padding:0}
@media(max-width:1100px){html[data-theme] .app-view .composer-wrap{padding-inline:30px}}
@media(max-width:800px){html[data-theme] .app-view .composer-wrap{padding-inline:22px}}

/* Personal company knowledge, shared Nexus typography and theme variables. */
.nexus-company{display:grid;gap:18px;margin:28px 0}
.nexus-company .nexus-card{min-width:0;margin:0}
.nexus-company-identity{background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 12%,var(--panel)),var(--panel))}
.nexus-company-identity h2{font-size:clamp(24px,3vw,34px);letter-spacing:-.035em;margin:14px 0 8px}
.nexus-company-scope{font-size:13px;line-height:1.7;color:var(--muted)}
.nexus-company-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.nexus-company-metrics strong{font-size:32px;color:var(--accent);font-weight:650}
.nexus-company-metrics h3{font-size:14px;margin:6px 0 12px}
.nexus-company-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.nexus-company h2{line-height:1.3}.nexus-company-columns h2{font-size:17px;margin:0 0 18px}
.nexus-company-entry{padding:14px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}
.nexus-company-entry>strong,.nexus-company-entry>small{display:block}
.nexus-company-entry>small{font-size:12px;color:var(--muted);margin:5px 0}
.nexus-company-evidence{margin-top:9px;font-size:12px}
.nexus-company-evidence summary{cursor:pointer;color:var(--accent);padding:4px 0}
.nexus-company-source{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}
.nexus-company-source>span{flex-basis:100%;line-height:1.6}
.nexus-company-source button{font-size:12px;padding:6px 10px}
.nexus-company .form-hint{line-height:1.6}
.nexus-guidance-check{display:flex;align-items:center;gap:10px;padding:10px 0;cursor:pointer;font-size:13px;line-height:1.5}
label.nexus-guidance-check input[type=checkbox]{appearance:auto;width:18px;height:18px;flex:0 0 18px;margin:0;accent-color:var(--accent);cursor:pointer}
.nexus-guidance-check span{min-width:0;overflow-wrap:anywhere}
.nexus-guidance-check small{margin-left:auto}
.nexus-guidance-child{padding-left:24px}
.nexus-security-dialog label.nexus-guidance-check{display:flex;align-items:center}
.nexus-guidance-settings{padding:12px 0 20px;margin-bottom:18px;border-bottom:1px solid var(--line)}
.nexus-guidance-settings h3{margin:0}
.nexus-onboarding-steps .nexus-guidance-check{width:100%;border-bottom:1px solid var(--line)}
.nexus-example-grid .nexus-guidance-check{margin-top:12px}

/* Answer actions: fixed sizes apply only to icons, never to text labels. */
.app-view .message-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:4px;margin-top:14px;min-height:36px;opacity:1}
.app-view .message-action{display:inline-flex;align-items:center;justify-content:center;width:auto;max-width:100%;height:auto;min-height:36px;padding:7px 11px;font:500 12px/1.5 Mulish,sans-serif;white-space:normal;color:var(--muted);border-radius:9px}
.app-view .message-action.icon-message-action{width:36px;height:36px;min-width:36px;flex:0 0 36px;padding:9px}
.app-view .message-action:hover{color:var(--ink);background:var(--accent-soft)}
.app-view .nexus-retry-status{display:block;margin-top:6px;font-size:12px;line-height:1.5;color:var(--muted)}
.app-view .nexus-retry-status:empty{display:none}
.app-view .message-action:focus-visible,.nexus-message-more>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.app-view .nexus-feedback{display:inline-flex;align-items:center;gap:4px;min-height:36px;font-size:12px;line-height:1.5;color:var(--muted);max-width:100%}
.nexus-message-more{max-width:100%;min-width:0;color:var(--muted);font-size:12px}
.nexus-message-more>summary{display:flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:7px 11px;border-radius:9px;cursor:pointer;list-style:none;box-sizing:border-box}
.nexus-message-more>summary::-webkit-details-marker{display:none}
.nexus-message-more>summary::after{content:'⌄';font-size:14px;line-height:1}
.nexus-message-more[open]>summary{color:var(--ink);background:var(--accent-soft)}
.nexus-message-more-list{display:grid;gap:2px;width:220px;max-width:100%;padding:5px;margin-top:6px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-sizing:border-box}
.app-view .nexus-message-more-list .message-action{width:100%;justify-content:flex-start;text-align:left;padding:9px 12px}
.app-view .nexus-message-sources{margin-top:10px;padding-top:0;border-top:0}
.app-view .nexus-message-sources:has(.nexus-source-detail){padding-top:12px;border-top:1px solid var(--line)}
.app-view .nexus-source-chip{font-size:11px;line-height:1.5;min-height:30px;padding:6px 10px;border-radius:8px}
.app-view .nexus-nav{max-height:min(48vh,470px);flex:0 1 auto;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;overscroll-behavior:contain}
.app-view .nexus-nav{gap:3px;padding-block:4px 12px}
.app-view .nexus-nav button{flex-shrink:0;min-height:38px;padding-block:7px}
.app-view .conversation-scroll{min-height:72px}
.cloud-list{display:grid;gap:10px;margin:20px 0}
.flow-definition-list{display:grid;gap:14px;margin:18px 0 36px}
.flow-definition{display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0}
.flow-definition-copy{min-width:0;overflow-wrap:anywhere}.flow-definition h3{font:700 15px/1.6 Mulish,sans-serif;margin:0 0 8px}
.flow-definition .form-hint{margin:0}.flow-template-heading{margin:28px 0 18px!important}
.flow-definition button,#nexus-create-custom-flow,.nexus-flow-editor button{min-height:40px;padding:9px 13px;border-radius:10px;font:600 12px/1.5 Mulish,sans-serif}
#nexus-create-custom-flow{background:var(--accent);color:white;border:0}
.nexus-security-dialog.nexus-flow-editor{width:min(820px,calc(100vw - 28px));font:400 13px/1.6 Mulish,sans-serif}
.flow-editor-section{border-top:1px solid var(--line);padding-top:20px;min-width:0}
.flow-editor-section h3{font:700 15px/1.6 Mulish,sans-serif;margin:0 0 16px}
.flow-sources,.flow-steps{display:grid;gap:12px;margin-bottom:12px}
.flow-source{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--accent-soft)}
.flow-source>label{min-width:0}.flow-query{grid-column:1/-1}.flow-source>button{justify-self:start}
.flow-step{padding:16px;border:1px solid var(--line);border-radius:14px}.flow-step-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.nexus-flow-editor textarea{resize:vertical;min-height:88px}.nexus-flow-editor input,.nexus-flow-editor textarea,.nexus-flow-editor select{background:transparent!important}
.nexus-flow-editor select option{background:var(--panel);color:var(--ink)}
.flow-test-result{overflow-wrap:anywhere;margin-top:12px}.flow-test-item{border-bottom:1px solid var(--line);padding:8px 0;margin:0}
.flow-run-steps{padding-left:22px;overflow-wrap:anywhere}.flow-run-steps li{padding:7px}
@media(max-width:800px){.flow-definition{align-items:flex-start;flex-direction:column}.flow-source{grid-template-columns:minmax(0,1fr)}.nexus-flow-editor{padding:18px}.nexus-flow-editor .dialog-header{align-items:flex-start;gap:12px}#nexus-flows>.nexus-card-heading{align-items:flex-start;gap:12px;flex-wrap:wrap}}
.cloud-item{display:flex;align-items:center;gap:16px;justify-content:space-between;margin:0;min-width:0}
.cloud-item-copy{display:grid;gap:5px;min-width:0;overflow-wrap:anywhere}
.cloud-item-copy .nexus-row-title{text-align:left;white-space:normal;overflow-wrap:anywhere}
.cloud-path{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0}
.cloud-path button{font-size:12px;padding:6px 9px;max-width:100%;overflow-wrap:anywhere}
#nexus-cloud .nexus-connection p{max-width:600px}
html[data-theme] #cloud-query{appearance:none;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:10px;box-shadow:none}
html[data-theme] #cloud-query:focus{outline:none;border-color:var(--accent);box-shadow:none}
#nexus-cloud .secondary-button,#cloud-search>button{min-height:40px;padding:10px 14px;border-radius:10px;font:600 12px/1.5 Mulish,sans-serif}
@media(max-width:800px){.cloud-item{align-items:flex-start;flex-direction:column}.app-view .nexus-nav{max-height:45dvh}}
@media(max-width:800px){.app-view .message-action.icon-message-action{width:40px;height:40px;min-width:40px;flex-basis:40px}.app-view .nexus-feedback,.nexus-message-more>summary{min-height:40px}}
@media(max-width:800px){.nexus-company-metrics,.nexus-company-columns{grid-template-columns:1fr}.nexus-company .nexus-card-heading{align-items:flex-start;gap:12px;flex-wrap:wrap}}

.nexus-memory-body{font-size:14px;line-height:1.7;overflow-wrap:anywhere}.nexus-memory-status{color:var(--ink);font-weight:700}.nexus-memory-body .nexus-profile-details{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 22px;padding:20px 0;border-block:1px solid var(--line)}.nexus-memory-references{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.nexus-memory-references button{font-size:11px;padding:6px 10px}.nexus-memory-dialog .dialog-header{gap:16px}.nexus-memory-dialog .dialog-header .icon-button{flex-shrink:0}

.nexus-memory-citation{display:inline-flex;vertical-align:baseline;align-items:center;font:inherit;font-size:11px;line-height:1.6;padding:1px 7px;margin:0 3px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--ink);cursor:pointer}.nexus-memory-citation:hover{background:var(--canvas)}.nexus-memory-citation:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

/* Keep the reply mark subtle beside the first text line, in both themes. */
.app-view .message.assistant .message-avatar-logo{width:18px;height:18px;object-fit:contain}

/* Low-cost blue fallback is visible while the shared login image loads. */
html[data-theme] .auth-view{background-color:#070f1e}html[data-theme] .auth-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
