/* FEZR brand layer. Structural layout remains in style.css; tokens own the theme.
   Reference: https://fezr.com.br/ inspected 2026-11-03. Fonts served locally. */
@font-face{font-family:Inter;font-style:normal;font-weight:300 800;font-display:swap;src:url('/static/brand/inter-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:300 800;font-display:swap;src:url('/static/brand/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Outfit;font-style:normal;font-weight:400 800;font-display:swap;src:url('/static/brand/outfit-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Outfit;font-style:normal;font-weight:400 800;font-display:swap;src:url('/static/brand/outfit-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root {
  color-scheme: dark;
  --font-body: Inter, ui-sans-serif, system-ui, sans-serif;
  --font-title: Outfit, ui-sans-serif, system-ui, sans-serif;
  --fezr-black: #09090b;
  --fezr-panel: #111115;
  --fezr-raised: #18181f;
  --fezr-hover: #20202a;
  --fezr-text: #f4f4f5;
  --fezr-secondary: #b9b9c5;
  --fezr-muted: #a1a1b0;
  --fezr-line: #2b2b35;
  --fezr-indigo: #a5b4fc;
  --fezr-indigo-strong: #6366f1;
  --fezr-emerald: #6ee7b7;
  --fezr-warning: #fcd68a;
  --fezr-danger: #fda4af;
  --fezr-glass: rgba(17,17,21,.92);
  --fezr-gradient: linear-gradient(135deg,#fafafa 5%,#d4d4d8 55%,#a1a1aa 100%);
  --ink: var(--fezr-text);
  --muted: var(--fezr-muted);
  --paper: var(--fezr-black);
  --line: var(--fezr-line);
  --mint: var(--fezr-emerald);
  --dark: var(--fezr-black);
  --accent: var(--fezr-indigo);
  font-family: var(--font-body);
  -webkit-font-smoothing: antialiased;
}
body { background:var(--fezr-black); color:var(--fezr-text); }
::selection { background:var(--fezr-indigo); color:var(--fezr-black); }
button,a,input,textarea,select { touch-action:manipulation; }
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:2px solid var(--fezr-indigo); outline-offset:4px; }
input:focus,textarea:focus,select:focus { outline-color:var(--fezr-indigo); }
button:disabled { cursor:not-allowed; opacity:.55; }
.brand { text-decoration:none; color:var(--fezr-text); gap:12px; letter-spacing:0; }
.fezr-logo { display:block; width:80px; height:42px; object-fit:contain; filter:brightness(1.2) drop-shadow(0 0 1px #ffffff66); flex:none; }
.brand-product { border-left:1px solid var(--fezr-line); padding-left:12px; }
.brand-product strong { display:block; font-family:var(--font-title); font-size:26px; font-weight:700; letter-spacing:-.8px; line-height:1; }
.brand-product small { display:block; font-size:6.5px; font-weight:500; color:var(--fezr-muted); letter-spacing:1.1px; margin-top:6px; white-space:nowrap; }
.sidebar { background:var(--fezr-glass); border-right:1px solid var(--fezr-line); }
.sidebar .brand { padding-left:0; }
.new-chat,.primary { background:var(--fezr-text); color:var(--fezr-black); font-weight:650; border:1px solid transparent; box-shadow:0 4px 18px #0003; }
.new-chat:hover,.primary:hover { background:#dedee8; border-color:var(--fezr-indigo); }
.primary>span { color:var(--fezr-black); }
.new-chat { margin-top:32px; min-height:46px; }
.sidebar-heading,.sidebar-empty,.engine-badge small,.version { color:var(--fezr-muted); }
.sidebar-heading { font-size:10px; letter-spacing:1.7px; }
.conversation-button { color:var(--fezr-secondary); min-height:44px; border:1px solid transparent; }
.conversation-button:hover,.conversation-button.selected { background:var(--fezr-raised); color:var(--fezr-text); border-color:var(--fezr-line); }
.conversation-button.selected { border-left-color:var(--fezr-indigo); }
.engine-badge { background:var(--fezr-raised); border-color:var(--fezr-line); color:var(--fezr-secondary); }
.sidebar-button { color:var(--fezr-secondary); min-height:44px; }
.sidebar-button:hover { color:var(--fezr-text); background:var(--fezr-raised); }
.status-dot { background:var(--fezr-emerald); box-shadow:0 0 8px #6ee7b726; }
.main { position:relative; isolation:isolate; background:var(--fezr-black); }
.main::before { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(ellipse at 15% 10%,#6366f110,transparent 55%),radial-gradient(ellipse at 95% 90%,#10b98108,transparent 50%),linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px); background-size:auto,auto,40px 40px,40px 40px; }
.topbar { background:rgba(9,9,11,.78); border-color:var(--fezr-line); }
.topbar>div { min-width:0; flex:1; }
.topbar h2 { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.topbar>.activity-toggle { flex:none; }
.eyebrow,.topbar .eyebrow { color:var(--fezr-muted); font-size:9px; }
.topbar h2 { color:var(--fezr-secondary); font-size:12px; }
.activity-toggle { color:var(--fezr-secondary); background:var(--fezr-raised); border-color:var(--fezr-line); min-height:38px; }
.activity-toggle:hover { background:var(--fezr-hover); color:var(--fezr-text); }
.activity-toggle #active-count { background:var(--fezr-hover); color:var(--fezr-text); }
.icon-button { color:var(--fezr-secondary); min-width:40px; min-height:40px; border-radius:8px; }
.icon-button:hover { color:var(--fezr-text); background:var(--fezr-hover); }
.config-banner { color:var(--fezr-secondary); background:var(--fezr-raised); border-color:var(--fezr-line); }
.config-banner button { color:var(--fezr-indigo); }
.welcome { margin-top:55px; }
.welcome-marker { width:48px; height:48px; color:var(--fezr-indigo); background:#6366f112; border:1px solid #6366f140; border-radius:14px; box-shadow:0 0 30px #6366f10b; margin-bottom:26px; }
.welcome-marker svg { width:25px; height:25px; }
.welcome>.eyebrow { color:var(--fezr-muted); font-size:9px; letter-spacing:1.5px; }
.welcome h1 { font-family:var(--font-title); font-weight:700; font-size:clamp(36px,3.7vw,55px); letter-spacing:-1.8px; line-height:1.08; color:var(--fezr-text); margin-top:19px; }
.welcome h1 span { background:var(--fezr-gradient); color:transparent; background-clip:text; -webkit-background-clip:text; }
.welcome-description { color:var(--fezr-secondary); font-size:13px; line-height:1.9; margin-bottom:30px; }
.suggestions { gap:10px; }
.suggestions button { background:rgba(24,24,31,.8); border-color:var(--fezr-line); border-radius:12px; padding:19px 14px; min-height:135px; }
.suggestions button:hover { background:var(--fezr-hover); border-color:#6366f180; transform:translateY(-2px); box-shadow:0 8px 24px #0003; }
.suggestions button>span { color:var(--fezr-indigo); margin-bottom:20px; }
.suggestions strong { font-family:var(--font-title); font-size:13px; font-weight:600; color:var(--fezr-text); }
.suggestions small { color:var(--fezr-secondary); font-size:10px; }
.composer { background:var(--fezr-panel); border-color:#3b3b4a; border-radius:14px; box-shadow:0 8px 30px #0003; }
.composer:focus-within { border-color:var(--fezr-indigo-strong); box-shadow:0 0 0 3px #6366f11a; }
.composer textarea { color:var(--fezr-text); font-size:13px; }
.composer textarea::placeholder { color:var(--fezr-muted); }
.composer-bottom>span { color:var(--fezr-muted); font-size:10px; max-width:calc(100% - 60px); line-height:1.6; }
.send-button { color:var(--fezr-black); background:var(--fezr-text); width:40px; height:40px; flex:none; }
.send-button:hover { background:var(--fezr-indigo); }
.composer-note { color:var(--fezr-muted); font-size:10px; }
.message-label { color:var(--fezr-indigo); font-size:10px; }
.message.user .message-label { color:var(--fezr-secondary); }
.message.user .message-text { background:var(--fezr-raised); border:1px solid var(--fezr-line); color:var(--fezr-text); }
.message-text { color:var(--fezr-secondary); font-size:13px; }
.working { color:var(--fezr-secondary); }
.spinner { border-color:var(--fezr-line); border-top-color:var(--fezr-indigo); }
.activity-panel { background:var(--fezr-panel); border-color:var(--fezr-line); }
.activity-heading h2 { font-family:var(--font-title); font-size:17px; font-weight:500; }
.activity-heading .eyebrow { color:var(--fezr-muted); }
.activity-tabs button { color:var(--fezr-muted); font-size:12px; min-height:48px; }
.activity-tabs button[aria-selected=true] { color:var(--fezr-text); border-bottom-color:var(--fezr-indigo); }
.activity-tabs span { color:var(--fezr-indigo); background:#6366f11f; }
.empty-state { color:var(--fezr-muted); }
.empty-state>span { color:var(--fezr-indigo); border-color:var(--fezr-line); background:var(--fezr-raised); }
.empty-state h3 { color:var(--fezr-secondary); font-family:var(--font-title); font-size:15px; }
.empty-state p { font-size:12px; }
.job-meta { color:var(--fezr-muted); font-size:10px; }
.job-status { background:#10b98116; color:var(--fezr-emerald); }
.job-status.failed,.job-status.cancelled { background:#fb71851a; color:var(--fezr-danger); }
.job-status.partial,.job-status.interrupted { background:#fbbf241a; color:var(--fezr-warning); }
.job-title { color:var(--fezr-secondary); }
.file-card { border-color:var(--fezr-line); background:var(--fezr-raised); }
.file-card:hover { background:var(--fezr-hover); border-color:var(--fezr-indigo); }
.file-icon { color:var(--fezr-indigo); background:#6366f11a; }
.file-info strong { color:var(--fezr-text); font-size:12px; }
.file-info small,.record-count { color:var(--fezr-muted); font-size:10px; }
.file-arrow { color:var(--fezr-indigo); }
.cancel-button { background:var(--fezr-raised); color:var(--fezr-danger); border-color:var(--fezr-line); min-height:40px; }
.log-event { border-color:var(--fezr-line); }
.log-event::before { background:var(--fezr-emerald); }
.log-event.warning::before { background:var(--fezr-warning); }
.log-event.error::before { background:var(--fezr-danger); }
.log-event time { color:var(--fezr-muted); font-size:10px; }
.log-event p { color:var(--fezr-secondary); font-size:12px; }
.log-event.error p { color:var(--fezr-danger); }
.log-event.warning p { color:var(--fezr-warning); }
.preview-wrap td { color:var(--fezr-secondary); }
.preview-wrap th { color:var(--fezr-text); }
.preview-wrap table { font-size:11px; }
.auth-screen { background:var(--fezr-black); }
.auth-card { max-width:490px; }
.auth-card>.brand { margin-bottom:70px; }
.auth-card>.eyebrow { color:var(--fezr-indigo); font-size:10px; }
.auth-card h1 { font-family:var(--font-title); font-size:38px; font-weight:600; letter-spacing:-1.2px; }
.auth-card>p:not(.auth-foot) { color:var(--fezr-secondary); }
.auth-foot { color:var(--fezr-muted); }
.auth-screen label,.settings-dialog label { color:var(--fezr-text); font-size:12px; }
.auth-screen input,.settings-dialog input,.settings-dialog select { color:var(--fezr-text); background:var(--fezr-raised); border-color:#444450; font-size:13px; min-height:44px; }
.settings-dialog input::placeholder { color:var(--fezr-muted); }
.auth-art { background:radial-gradient(ellipse at 0 10%,#6366f130,transparent 65%),radial-gradient(ellipse at 100% 90%,#10b98120,transparent 65%),linear-gradient(#ffffff07 1px,transparent 1px),linear-gradient(90deg,#ffffff07 1px,transparent 1px),var(--fezr-black); background-size:auto,auto,36px 36px,36px 36px,auto; border:1px solid var(--fezr-line); padding:42px; border-radius:20px; }
.auth-art .orb { display:none; }
.art-tag { color:var(--fezr-secondary); display:flex; align-items:center; gap:10px; font-size:10px; letter-spacing:1.7px; }
.art-copy { color:var(--fezr-text); font-family:var(--font-title); font-weight:600; font-size:clamp(34px,4.2vw,64px); line-height:1.13; letter-spacing:-2px; }
.art-copy em { font-family:var(--font-title); font-style:normal; background:var(--fezr-gradient); color:transparent; background-clip:text; -webkit-background-clip:text; font-weight:600; }
.art-description { font-family:var(--font-body); font-size:13px; font-weight:400; line-height:1.9; letter-spacing:0; margin-top:28px; color:var(--fezr-secondary); }
.art-bottom { color:var(--fezr-muted); font-size:9px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; letter-spacing:1px; }
.art-bottom span { letter-spacing:0; }
.settings-dialog { color:var(--fezr-text); background:var(--fezr-panel); border-color:#444450; max-width:500px; box-shadow:0 25px 100px #0008; }
.settings-dialog::backdrop { background:#0009; }
.dialog-header .eyebrow { color:var(--fezr-indigo); }
.dialog-header h2 { font-family:var(--font-title); font-weight:500; font-size:25px; }
.muted,.settings-dialog small { color:var(--fezr-secondary); }
.settings-dialog small { font-size:11px; }
.settings-dialog label>span { color:var(--fezr-emerald); font-size:10px; }
.settings-success { color:var(--fezr-emerald); background:#10b98112; border-color:#10b98150; }
.settings-done { color:var(--fezr-text); background:var(--fezr-raised); border-color:#444450; min-height:44px; }
.settings-done:hover { background:var(--fezr-hover); }
.form-error { color:var(--fezr-danger); font-size:12px; }
.toast { background:var(--fezr-raised); border:1px solid #444450; color:var(--fezr-text); box-shadow:0 10px 40px #0006; }
* { scrollbar-width:thin; scrollbar-color:#444450 var(--fezr-panel); }
@media(min-width:1450px){.welcome{margin-top:70px}.welcome h1{font-size:58px}}
@media(max-width:1150px){.sidebar{padding-left:14px;padding-right:14px}.fezr-logo{width:66px;height:38px}.brand-product{padding-left:10px}.brand{gap:9px}.brand-product strong{font-size:24px}.brand-product small{font-size:6px;letter-spacing:.7px}.welcome{margin-top:48px}.activity-panel{box-shadow:-20px 0 60px #0008}}
@media(max-width:700px){.sidebar{padding-left:19px;padding-right:19px}.fezr-logo{width:76px;height:40px}.welcome{margin-top:30px}.welcome h1{font-size:40px;letter-spacing:-1.3px}.welcome>.eyebrow{font-size:8px;letter-spacing:1px}.welcome-marker{width:42px;height:42px;margin-bottom:23px}.suggestions button{min-height:69px;padding:14px}.suggestions button>span{margin-bottom:0}.suggestions strong{font-size:13px}.suggestions small{font-size:10px}.composer textarea{font-size:16px}.composer-note{font-size:9px}.composer-bottom>span{font-size:9px}.auth-card{padding:40px 27px}.auth-card h1{font-size:34px}.settings-dialog{padding:24px}.settings-dialog input,.settings-dialog select,.auth-screen input{font-size:16px}.settings-dialog small{font-size:11px}.topbar h2{font-size:11px}.activity-tabs button{font-size:12px}.message-text{font-size:13px}}
