/* Oscar Liquid Glass — shared material, typography and interaction tokens. */
:root {
  color-scheme: light;
  --bg: #edf0f5; --ink: #242936; --muted: #606b7c;
  --red: #a13732; --red-dark: #822722; --red-soft: #f3e3e2;
  --green: #29694f; --blue: #326585; --amber: #805915;
  --line: rgba(81, 98, 123, .16); --soft: rgba(238, 241, 247, .68);
  --surface: rgba(255,255,255,.72);
  --glass: linear-gradient(135deg,rgba(255,255,255,.88),rgba(255,255,255,.52));
  --glass-shadow: 0 8px 32px -16px rgba(43,56,87,.22), inset 0 1px 0 rgba(255,255,255,.98);
  --radius: 22px; --control-radius: 12px;
  --ease: cubic-bezier(.2,.8,.2,1); --speed: 180ms;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  -webkit-font-smoothing: antialiased;
}
body { background: var(--bg); line-height: 1.5; letter-spacing: -.015em; }
body::before { content:''; position:fixed; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(ellipse at 85% 8%,#d9e1f2 0,transparent 48%),radial-gradient(ellipse at 10% 55%,#eddbdc 0,transparent 48%),radial-gradient(ellipse at 80% 95%,#d7e8e7 0,transparent 50%),#eef1f6; }
::selection { background:#a1373229; color:var(--ink); }
* { scrollbar-width:thin; scrollbar-color:#9eaabb66 transparent; }
button, a, summary, [role=button], input, select, textarea { -webkit-tap-highlight-color:transparent; touch-action:manipulation; }
button, a, summary, [role=button] { transition:background var(--speed) var(--ease),color var(--speed) var(--ease),border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease),transform var(--speed) var(--ease); }
button { cursor:pointer; }
button:disabled { opacity:.48; cursor:not-allowed; box-shadow:none!important; transform:none!important; }
:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible { outline:3px solid #9e4640; outline-offset:3px; }
input:focus,select:focus,textarea:focus { border-color:#af635d; box-shadow:0 0 0 4px #a1373212; }
.icon { width:20px; height:20px; flex-shrink:0; stroke-width:1.7; }
.sidebar { inset:16px auto 16px 16px; width:244px; padding:24px 14px 12px; border:1px solid #ffffffaa; border-radius:26px; background:linear-gradient(155deg,#ffffffb8,#ffffff68); color:var(--ink); backdrop-filter:blur(28px) saturate(135%); -webkit-backdrop-filter:blur(28px) saturate(135%); box-shadow:var(--glass-shadow); overflow-y:auto; }
.brand { padding:0 10px 22px; gap:12px; }.brand strong { font:700 17px/1.3 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; letter-spacing:-.04em; }.brand small { color:var(--muted); font-size:10px; letter-spacing:.06em; }
.brand-mark { height:42px; width:42px; border:1px solid #ffffff70; border-radius:15px; background:linear-gradient(145deg,#c7655b,#8e2b27); color:white; box-shadow:0 6px 16px #92342d28,inset 0 1px 0 #ffffff70; font:600 25px/1 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
.main-nav p { color:var(--muted); font:650 10px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; letter-spacing:.12em; padding:18px 12px 7px; }
.main-nav a { color:#596475; min-height:46px; margin:4px 0; border:1px solid transparent; border-radius:13px; font-size:13px; font-weight:550; }
.main-nav a>span { width:20px; }.main-nav a:hover { background:#ffffff8c; color:var(--ink); transform:none; }
.main-nav a.active { background:linear-gradient(135deg,#fff,#f3e5e5b8); color:var(--red); border-color:#fff; box-shadow:0 4px 14px #8447400b,inset 0 1px 0 white; }.main-nav a.active::before { display:none; }
kbd { border:1px solid var(--line); background:#ffffff70; color:var(--muted); border-radius:6px; font-size:9px; }
.sidebar-bottom { border-color:var(--line); margin-top:20px; padding-top:12px; }.system-card { border-color:#ffffffb0; border-radius:14px; background:#ffffff60; padding:12px; }.system-card small,.profile small { font-size:10px; color:var(--muted); }.system-card strong,.profile strong { font-size:12px; }.profile { padding:16px 6px 4px; }.profile>span,.avatar { background:linear-gradient(135deg,#fff,#efd2cf); border:1px solid #fff; box-shadow:0 3px 8px #9e2a2010; color:var(--red); }.profile button { color:var(--muted); }
.app-shell { margin-left:276px; }.topbar { margin:16px 24px 0 0; padding:0 24px; height:64px; top:16px; border:1px solid #ffffffc9; border-radius:20px; background:#ffffffa8; backdrop-filter:blur(24px) saturate(130%); -webkit-backdrop-filter:blur(24px) saturate(130%); box-shadow:var(--glass-shadow); }
.topbar #breadcrumbs { font-size:12px; align-items:center; min-width:0; }.topbar #breadcrumbs strong { font-weight:600; }.topbar #breadcrumbs b { font-weight:400; color:#9ba5b2; }.top-actions>span { font-size:12px; }.top-actions button { min-height:40px; border-radius:12px; display:flex; align-items:center; justify-content:center; }
main { max-width:1640px; padding:38px 24px 48px 0; }.view { min-width:0; }.active-view { animation:glass-enter 360ms var(--ease) both; }
.page-heading,.crawler-heading,.section-page-head { gap:24px; align-items:center; margin-bottom:30px; }
.page-heading h1,.crawler-heading h1,.section-page-head h1 { font:650 clamp(30px,3vw,44px)/1.13 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; letter-spacing:-.055em; margin:0 0 12px; text-wrap:balance; }
.page-heading>div>p:last-child,.crawler-heading>div>p:last-child,.section-page-head>div>p:last-child { font-size:14px; line-height:1.65; max-width:660px; }
.eyebrow { font:700 10px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; letter-spacing:.16em; margin-bottom:10px; }.back-link { font-size:12px; display:inline-flex; align-items:center; gap:7px; margin-bottom:18px; min-height:32px; }
.card,.stats-grid :is(article,a.dashboard-tile),.mini-stats,.crawler-state,.date-chip { background:var(--glass); border:1px solid #ffffffd9; border-radius:var(--radius); box-shadow:var(--glass-shadow); }
/* Large surfaces refract the backdrop; nested surfaces use tint to avoid stacked blur. */
.card,.stats-grid :is(article,a.dashboard-tile),.mini-stats { backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); }
.card .card { backdrop-filter:none; -webkit-backdrop-filter:none; }
.date-chip { padding:12px 18px; min-width:162px; border-radius:17px; gap:0 10px; }.date-chip strong { font:600 34px/1.3 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }.date-chip span { max-width:80px; font-size:12px; }
.stats-grid { gap:16px; margin-bottom:20px; }.stats-grid :is(article,a.dashboard-tile) { padding:22px 20px; gap:14px; min-height:126px; }.stats-grid strong,.mini-stats strong,.offer-kpis strong,.metrics strong,.ring strong { font-family:inherit; font-weight:600; letter-spacing:-.045em; font-variant-numeric:tabular-nums; }.stats-grid strong { font-size:32px; line-height:1.2; margin:7px 0; }.stats-grid small,.mini-stats small,.offer-kpis small { font:650 10px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; letter-spacing:.07em; }.stats-grid p,.mini-stats span,.offer-kpis span { font-size:11px; }
.stat-icon { width:46px; height:46px; flex-shrink:0; border:1px solid #ffffffb3; border-radius:16px; box-shadow:inset 0 1px 0 #fff9,0 4px 10px #29314208; }.stat-icon .icon { width:23px; height:23px; }.red { background:#f2dcdab3; }.blue { background:#dce8f2bd; }.green { background:#dcece4bd; }.amber { background:#f1e6cfbd; }
.dashboard-grid,.workshop-grid,.customer-layout,.document-grid,.crawler-layout,.settings-layout { gap:20px; }.dashboard-grid { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); margin-bottom:20px; }.workshop-grid { grid-template-columns:minmax(0,1fr) 310px; }.customer-layout { grid-template-columns:minmax(0,1fr) 250px; }.document-grid { grid-template-columns:190px minmax(0,1fr); }.crawler-layout { grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr); }.settings-layout { grid-template-columns:230px minmax(0,1fr); }
.quick-actions,.activity-card,.module-card,.schedule-card,.task-card,.data-card,.customer-side,.search-summary,.monitor-panel,.offer-cockpit { padding:24px; }.filter-panel,.config-form { padding:28px; }
.card-head h2,.section-title h2,.search-summary h2,.monitor-head h2,.cockpit-head h2,.list-toolbar h2,.customer-side h2,.modal-head h2,.offer-empty h3 { font:650 19px/1.35 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; letter-spacing:-.035em; }
.card-head { gap:12px; margin-bottom:22px; }.card-head button { font-size:12px; min-height:36px; padding:6px 10px; border-radius:10px; white-space:nowrap; }
.action-grid { border:0; gap:10px; border-radius:0; overflow:visible; }.action-grid button:nth-child(n) { background:#ffffff70; border:1px solid #ffffffde; border-radius:16px; padding:16px 12px; gap:5px 10px; grid-template-columns:34px minmax(0,1fr) 16px; min-height:108px; }.action-grid button>span { width:34px; height:38px; border-radius:12px; background:#f3e2e2b3; }.action-grid strong { font-size:12px; }.action-grid small { font-size:11px; line-height:1.5; }.action-grid i .icon { width:16px; }
.activity-list>:is(div,a.dashboard-tile) { grid-template-columns:34px minmax(0,1fr) auto; padding:14px 0; border-color:var(--line); }.activity-dot { width:32px; height:32px; border:1px solid #ffffffb3; }.activity-dot .icon { width:16px; height:16px; }.activity-list strong { font-size:12px; }.activity-list small,.activity-list time { font-size:11px; }.activity-list time { white-space:nowrap; }
.module-grid { gap:12px; }.module-grid :is(article,a.dashboard-tile),.module-grid .available { padding:16px; border:1px solid #ffffffdc; border-radius:16px; background:#ffffff60; }.module-grid :is(article,a.dashboard-tile)>span { border-radius:11px; background:#f3e2e2a3; }.module-grid strong { font-size:12px; }.module-grid small { font-size:11px; line-height:1.5; }.module-grid i { font-size:9px; }
button:not(.menu-toggle),.secondary-action,.open-offer,.exports a { border-radius:var(--control-radius); }
.page-primary,.secondary-action,.config-actions button,.customer-side>button,.todo-form button,.cockpit-actions>button,.offer-empty button { min-height:42px; font-size:12px; font-weight:600; padding:10px 16px; line-height:1.4; }
.page-primary,.top-actions .primary-action,.start-crawl,.config-actions .save-config,.todo-form button,.cockpit-actions>button { background:linear-gradient(145deg,#b74e44,#92322d); border:1px solid #983a32; color:white; box-shadow:0 5px 14px #983a3220,inset 0 1px 0 #ffffff40; }
.top-actions .primary-action { font-size:12px; }.secondary-action,.config-actions button,.customer-side>button,.offer-empty button { background:#ffffffa1; border:1px solid #ffffff; box-shadow:0 2px 5px #34456308; }
.start-crawl { border-radius:14px; font-size:12px; text-transform:none; letter-spacing:0; min-height:48px; }
.row-menu,.profile button,.open-offer { width:36px; height:36px; min-height:36px; min-width:36px; padding:7px; color:var(--muted); }.row-menu .icon,.open-offer .icon { width:18px; height:18px; }
input,select,textarea { font-size:13px; line-height:1.5; padding:11px 12px; min-height:44px; background:#ffffffac; border:1px solid #bfc8d68c; border-radius:var(--control-radius); transition:border-color var(--speed),box-shadow var(--speed),background var(--speed); }
input::placeholder,textarea::placeholder { color:#778192; opacity:1; }label,.field-label,.paired legend { font:600 11px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; color:#4c586a; letter-spacing:.035em; text-transform:none; }label span { float:none; }.fields { gap:16px; }.section-title { gap:14px; }.section-title>span,.technical summary>span { min-width:28px; height:28px; border-radius:9px; background:#f0dfde; display:grid; place-items:center; padding:0; font:600 11px/1 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }.section-title p,.config-fields label>small,.technical summary small,.legal-note,.safe-note,.crawl-warning,.error { font-size:11px; line-height:1.65; }.section-title p { margin-top:6px; }.field-label { margin-top:24px; }
.mission-box,.technical,.offer-filter-panel { border:1px solid #ffffffd4; border-radius:16px; background:#ffffff58; }.technical { overflow:hidden; }.technical-body { background:#eef0f460; }.technical summary strong { font:600 14px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }.divider { margin:26px 0; }
.body-types { padding:5px; gap:5px; border:1px solid #ffffffa6; border-radius:16px; background:#e7eaf26b; }.body-types button:nth-child(n) { border:1px solid transparent; border-radius:11px; background:transparent; padding:12px 6px; font-size:11px; }.body-types button.selected { background:#fffc; border-color:white; color:var(--red); box-shadow:0 3px 10px #442b3210; }.body-types button span { color:inherit; }
.mini-stats,.offer-kpis { margin-bottom:20px; border-radius:18px; overflow:hidden; }.mini-stats article,.offer-kpis article { padding:20px; }.mini-stats strong,.offer-kpis strong { font-size:28px; }.offer-kpis,.metrics { background:#ffffff60; border:1px solid #ffffffbc; }.metrics { border-radius:12px; overflow:hidden; }.metrics small,.meter-header,.summary-chip,.search-summary #filter-summary p,.empty-monitor small { font-size:11px; }.summary-chip { padding:7px 0; }.empty-monitor strong { font-size:13px; }.empty-monitor>span { color:#78879a; }.meter,.score>span { border-radius:20px; overflow:hidden; background:#dbe0e9; }.meter { height:6px; }.meter span,.score i { background:linear-gradient(90deg,#c8786e,#9f3730); }
.status,.pill { font:600 10px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; text-transform:none; border-radius:20px; padding:5px 9px; white-space:nowrap; }.status { background:#ffffff8c; }.crawler-state { min-width:200px; }.crawler-state small { font-size:10px; }.crawler-state strong { font-size:12px; }
.list-toolbar { flex-wrap:wrap; gap:14px; }.list-toolbar>span { font-size:12px; }.segmented,.filter-buttons { background:#dfe4ed7a; border:1px solid #ffffff9c; border-radius:13px; padding:4px; gap:3px; flex-wrap:wrap; }.segmented button,.filter-buttons button { background:transparent; border:0; border-radius:9px; font-size:11px; min-height:34px; padding:6px 12px; }.segmented button.active,.filter-buttons button.active { background:#ffffffed; color:var(--red); box-shadow:0 2px 6px #38476215; }
.search-field { min-height:44px; height:auto; background:#ffffffa3; border:1px solid #c5cedc99; border-radius:12px; flex:1; min-width:200px; }.search-field input { background:transparent; min-width:0; }.search-field:focus-within { outline:3px solid #a1373226; border-color:#ac6159; }.search-field input:focus-visible { outline:none; }.search-field .icon { width:18px; }
.table-wrap { border-radius:14px; border:1px solid #ffffffaa; background:#ffffff35; overscroll-behavior-x:contain; scrollbar-gutter:stable; }table { min-width:760px; }th { font:650 10px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; background:#e9edf3c9; letter-spacing:.06em; padding:13px 12px; }td { font-size:12px; padding:17px 12px; border-color:var(--line); }td strong { font-weight:600; }td small { font-size:11px; }tbody tr { transition:background var(--speed); }tbody tr:last-child td { border-bottom:0; }
.offer-filter-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }.offer-filter-grid label { font:600 11px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; text-transform:none; letter-spacing:0; }.offer-filter-grid input,.offer-filter-grid select { font:12px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; min-height:42px; height:auto; background:#ffffffa8; padding:8px 10px; }.offer-filter-actions { align-items:flex-start; }.offer-filter-actions span,.offer-filter-actions button,.cockpit-head>div>p:last-child,.email-status,.last-checked { font-size:12px; }.offer-filter-actions button { min-height:32px; }.offer-status { min-width:125px; font-size:11px; }.offer-empty { padding:48px 20px; }.offer-empty p { font-size:13px; }.offer-reasons { border-radius:12px; background:#303846f5; box-shadow:0 8px 24px #26334929; padding:12px; }.offer-reasons span { font-size:11px; }.score:focus~.offer-reasons,.score:hover~.offer-reasons { display:block; }.score { min-height:28px; }#offer-table td:nth-child(8) { position:relative; }.exports a { padding:8px 10px; border:1px solid #ffffffd4; background:#ffffff85; font-size:11px; }
.time-row { grid-template-columns:44px repeat(2,minmax(0,1fr)); }.time-row article { border:1px solid #ffffff; border-left:3px solid #b7665e; border-radius:12px; background:#ffffff6b; padding:14px 12px; }.time-row article b { font-size:10px; }.time-row article strong { font-size:12px; margin-top:9px; }.time-row article small { font-size:11px; }.time-row .pill { position:static; margin-top:10px; }.time-row time { font-size:11px; padding-top:12px; }
.check-row strong,.toggle-row strong { font:600 13px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; color:var(--ink); }.check-row small,.toggle-row small { font:11px/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }.check-row span { float:none; }.check-row input,input[type=checkbox] { width:18px; height:18px; min-height:18px; margin:3px 0 0; padding:0; accent-color:var(--red); flex-shrink:0; }.check-row:has(input:checked) span { text-decoration:line-through; opacity:.6; }.check-row.todo-custom { padding-right:38px; }.todo-delete { min-width:32px; min-height:32px; }
.toggle-row { gap:24px; }.toggle-row input { appearance:none; -webkit-appearance:none; width:44px; height:26px; min-height:26px; border-radius:20px; background:#bac3d0; border:1px solid #8c99ac45; position:relative; cursor:pointer; transition:background var(--speed); }.toggle-row input::before { content:''; position:absolute; width:20px; height:20px; top:2px; left:2px; border-radius:50%; background:linear-gradient(#fff,#f0f2f7); box-shadow:0 2px 4px #27364d30; transition:transform var(--speed) var(--ease); }.toggle-row input:checked { background:var(--red); border-color:var(--red); }.toggle-row input:checked::before { transform:translateX(18px); }
.settings-nav { padding:10px; position:sticky; top:100px; }.settings-nav a { padding:12px 10px; border:1px solid transparent; border-radius:13px; gap:10px; }.settings-nav a.active { background:#ffffffbb; border-color:#fff; box-shadow:0 3px 8px #313c5508; }.settings-nav a>span { width:34px; height:34px; border-radius:11px; }.settings-nav strong { font-size:12px; }.settings-nav small { font-size:10px; }.settings-nav>p { font-size:10px; }.user-list article { grid-template-columns:38px minmax(0,1fr) 112px 70px 36px; gap:10px; }.user-list strong,.user-list b { font-size:12px; }.user-list small { font-size:11px; overflow-wrap:anywhere; }.user-list b { font-weight:500; }.avatar { width:36px; height:36px; font-size:11px; }
.folder { background:var(--glass); padding:17px 14px; border-radius:16px; }.folder strong { font-size:12px; }.folder small { font-size:11px; }.folder.active { background:linear-gradient(135deg,#fff,#eedadab8); border-color:#fff; }.folder>span { border-radius:9px; }.customer-side dl div { font-size:12px; }.ring { border-color:#e8d6d6; border-top-color:var(--red); }.ring span { font-size:11px; }
.validation-rule>strong,.validation-rule>span,.pending-offers>summary strong { font-size:13px; }.validation-rule p,.validation-rule .validation-required,.pending-explanation,.pending-offers>summary small { font-size:12px; }.pending-offers>summary { background:#f5e8cf7a; }.pending-offers>summary>b { background:#ffffff9e; }.email-status-bar { padding:12px 16px; background:#ffffff70; border:1px solid #ffffffbc; border-radius:14px; }.email-configure { font-size:12px; }
.overlay { background:#29344842; backdrop-filter:blur(12px) saturate(90%); -webkit-backdrop-filter:blur(12px) saturate(90%); padding:8vh 16px 24px; overflow-y:auto; overscroll-behavior:contain; }.global-search,.record-modal { width:min(620px,100%); background:linear-gradient(140deg,#fffffff2,#f2f3f8ef); border:1px solid #fff; border-radius:26px; box-shadow:0 32px 100px #283a5845,inset 0 1px 0 #fff; animation:glass-enter 220ms var(--ease); }.global-search { padding:14px; }.global-search>button { background:transparent; padding:14px; border-radius:13px; }.global-search>button strong { font-size:13px; }.global-search>button small { font-size:12px; }.global-search>p { font-size:10px; padding:18px 12px 8px; }.global-search>div:first-child { gap:6px; }.global-search input { background:transparent; font-size:14px; }.global-search>div>button { min-width:36px; min-height:36px; border-radius:9px; }.record-modal { padding:28px; }.modal-head>button { display:grid; place-items:center; width:36px; height:36px; background:#e5e9f2aa; }.config-actions { flex-wrap:wrap; gap:10px; }.modal-head h2 { font-size:23px; }
#toast { z-index:70; max-width:min(420px,calc(100vw - 32px)); background:#303947ee; border:1px solid #ffffff40; backdrop-filter:blur(18px); border-radius:16px; padding:15px 20px; font-size:13px; line-height:1.5; box-shadow:0 12px 38px #29344833; right:24px; bottom:24px; }
.skip-link { position:fixed; left:20px; top:-80px; z-index:100; background:#fff; color:var(--red); padding:12px 20px; border-radius:12px; }.skip-link:focus { top:20px; }.nav-backdrop { display:none; }.overlay-open { overflow:hidden; }
@keyframes glass-enter { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes glass-spin { to { transform:rotate(360deg); } }
button[aria-busy=true]::before { content:''; display:inline-block; width:12px; height:12px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; margin-right:8px; vertical-align:middle; animation:glass-spin 900ms linear infinite; }
@media(hover:hover) and (pointer:fine) {
  .action-grid button:hover,.module-grid :is(article,a.dashboard-tile)[data-route]:hover,.folder:hover { background:#ffffffe0; transform:translateY(-2px); box-shadow:0 8px 20px #3a466515,inset 0 1px 0 #fff; }
  .action-grid button:hover i { transform:translateX(3px); }.action-grid i { transition:transform var(--speed); }
  .page-primary:hover,.top-actions .primary-action:hover,.start-crawl:hover,.config-actions .save-config:hover,.todo-form button:hover,.cockpit-actions>button:hover { background:linear-gradient(145deg,#ab4239,#7e2824); box-shadow:0 7px 18px #983a3236,inset 0 1px 0 #ffffff40; transform:translateY(-1px); }
  .secondary-action:hover,.config-actions button:hover,.card-head button:hover,.row-menu:hover,.profile button:hover,.open-offer:hover,.exports a:hover,.global-search>button:hover,.settings-nav a:hover { background:#fff; color:var(--red); box-shadow:0 3px 12px #38466410; }
  tbody tr:hover { background:#ffffffa6; }.body-types button:hover { background:#ffffff9c; }.filter-buttons button:hover,.segmented button:hover { background:#ffffff9c; color:var(--red); }
}
button:not(:disabled):active,[role=button]:active { transform:translateY(1px); box-shadow:none; }
@media(min-width:1500px) { main { padding-top:46px; }.stats-grid :is(article,a.dashboard-tile) { padding:24px; }.module-grid :is(article,a.dashboard-tile) { padding:20px; } }
@media(max-width:1250px) { .stats-grid,.mini-stats,.offer-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }.dashboard-grid,.workshop-grid,.customer-layout { grid-template-columns:minmax(0,1fr); }.module-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.crawler-layout { grid-template-columns:minmax(0,1fr); }.crawl-sidebar { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); }.settings-layout { grid-template-columns:minmax(0,1fr); }.settings-nav { position:static; display:flex; overflow:auto; }.settings-nav>p { display:none; }.settings-nav a { flex:1; min-width:180px; }.mini-stats article:nth-child(2),.offer-kpis article:nth-child(2) { border-right:0; }.mini-stats article:nth-child(-n+2),.offer-kpis article:nth-child(-n+2) { border-bottom:1px solid var(--line); } }
@media(max-width:1000px) { .top-actions>span { display:none; }.document-grid { grid-template-columns:minmax(0,1fr); }.doc-folders { grid-template-columns:repeat(4,minmax(0,1fr)); }.folder { grid-template-columns:1fr; gap:4px; }.folder>span { grid-row:auto; }.topbar #breadcrumbs>span,.topbar #breadcrumbs>b { display:none; }.page-heading,.crawler-heading,.section-page-head { flex-wrap:wrap; }.date-chip { display:none; }.head-actions { flex-wrap:wrap; }.offer-filter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
  .sidebar { inset:10px auto 10px 10px; width:260px; transform:translateX(calc(-100% - 20px)); z-index:40; background:linear-gradient(145deg,#f8f9fbea,#e8eaf2f2); transition:transform 260ms var(--ease); }.sidebar.open { transform:translateX(0); }
  .nav-backdrop { position:fixed; inset:0; border:0; border-radius:0; background:#29344840; backdrop-filter:blur(5px); z-index:30; }.sidebar.open~.nav-backdrop { display:block; }
  .app-shell { margin-left:0; }.topbar { margin:10px 12px 0; top:10px; padding:0 12px; gap:12px; height:60px; border-radius:18px; }.menu-toggle { display:grid; place-items:center; border:0; background:transparent; width:40px; height:40px; flex-shrink:0; padding:8px; border-radius:10px; }.topbar #breadcrumbs { flex:1; font-size:12px; }.top-actions { gap:0; }.top-actions .primary-action { width:40px; height:40px; padding:10px; font-size:0; gap:0; }.top-actions .primary-action .icon { width:20px; height:20px; }
  main { padding:28px 16px 36px; }.page-heading h1,.crawler-heading h1,.section-page-head h1 { font-size:34px; }.page-heading,.crawler-heading,.section-page-head { gap:18px; margin-bottom:24px; }.page-heading>div>p:last-child,.crawler-heading>div>p:last-child,.section-page-head>div>p:last-child { font-size:13px; }.stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.stats-grid :is(article,a.dashboard-tile) { padding:16px; align-items:flex-start; flex-direction:column; gap:10px; }.stats-grid small { font-size:9px; }.stats-grid strong { font-size:30px; }.stat-icon { width:38px; height:38px; border-radius:13px; }
  .mini-stats,.offer-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }.mini-stats article,.offer-kpis article { padding:16px; }.mini-stats strong,.offer-kpis strong { font-size:26px; }.action-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.action-grid button:nth-child(n) { grid-template-columns:minmax(0,1fr) 16px; gap:7px; padding:14px; }.action-grid button>span { grid-column:1; grid-row:1; }.action-grid strong,.action-grid small { grid-column:1/3; }.action-grid i { grid-column:2; grid-row:1; }
  .quick-actions,.activity-card,.module-card,.schedule-card,.task-card,.data-card,.customer-side,.search-summary,.monitor-panel,.offer-cockpit { padding:18px; }.card { border-radius:20px; }.filter-panel,.config-form { padding:20px; }.card-head { align-items:flex-start; }.card-head h2,.section-title h2,.list-toolbar h2 { font-size:18px; }.activity-list>:is(div,a.dashboard-tile) { grid-template-columns:32px minmax(0,1fr); gap:6px 10px; }.activity-list time { grid-column:2; margin-top:0; }.module-grid { grid-template-columns:minmax(0,1fr); }.module-grid :is(article,a.dashboard-tile) { grid-template-columns:34px minmax(0,1fr) auto; align-items:center; }.module-grid i { grid-column:3; grid-row:1; }.module-grid small { font-size:11px; }
  .crawl-sidebar { grid-template-columns:minmax(0,1fr); }.two-col,.three-col,.four-col,.location-row { grid-template-columns:minmax(0,1fr); }.paired fieldset { min-width:0; }.paired input,.paired select { min-width:0; }.doc-folders { grid-template-columns:repeat(2,minmax(0,1fr)); }.folder { grid-template-columns:30px minmax(0,1fr); }.folder>span { grid-row:1/3; }.list-toolbar { align-items:stretch; }.search-field { min-width:0; width:100%; }.head-actions { flex-direction:row; }.time-row { grid-template-columns:40px minmax(0,1fr); }.time-row article:nth-of-type(2) { grid-column:2; }.user-list article { grid-template-columns:38px minmax(0,1fr) auto; }.user-list article>b { grid-column:2; }.user-list article>.pill { grid-column:3; grid-row:1; }.user-list article>button { grid-column:3; grid-row:2; }.user-list small { font-size:10px; }
  input,select,textarea,.offer-filter-grid input,.offer-filter-grid select,.global-search input { font-size:16px; }.offer-status { font-size:16px; min-width:150px; }.table-wrap { max-width:100%; }.cockpit-actions { flex-wrap:wrap; }.config-actions { justify-content:stretch; }.config-actions button { flex:1; }.toggle-row { gap:16px; }.record-modal { padding:22px; }.overlay { padding-top:5vh; }.global-search>div>span { display:none; }#toast { right:16px; bottom:16px; }.last-checked { white-space:normal; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }.stats-grid :is(article,a.dashboard-tile):hover,.module-grid :is(article,a.dashboard-tile):hover,.action-grid button:hover { transform:none; } }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) { .sidebar,.topbar,.card,.stats-grid :is(article,a.dashboard-tile),.mini-stats,.global-search,.record-modal { background:#f9fafc; }.overlay { background:#29344899; } }
@media(prefers-contrast:more) { :root { --muted:#424b59; --line:#798393; --glass:#fff; }.sidebar,.topbar { background:#fff; }.card,.stats-grid :is(article,a.dashboard-tile),.mini-stats { border-color:#798393; } }
@media(forced-colors:active) { .toggle-row input { appearance:auto; }.toggle-row input::before { display:none; }.card,.sidebar,.topbar,button,input,select,textarea { border:1px solid CanvasText; } }
.with-icon { display:inline-flex; align-items:center; justify-content:center; gap:8px; }.with-icon .icon { width:17px; height:17px; }
h1[tabindex="-1"]:focus { outline:none; }
/* Final detail pass: hidden controls, empty states and compact settings navigation. */
[hidden] { display:none!important; }
input,select,textarea { font-weight:400; letter-spacing:0; }
.config-fields label>small { font-weight:400; }
.offer-empty>span,.empty-monitor>span { display:grid; place-items:center; width:56px; height:56px; margin:0 auto 14px; border:1px solid #ffffffde; border-radius:18px; background:#e4e9f380; color:#64758d; }
.offer-empty>span .icon,.empty-monitor>span .icon { width:26px; height:26px; }
.empty-monitor { padding:24px 0; }
.body-types button span .icon { width:30px; height:24px; }
@media(max-width:760px) {
  .settings-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; overflow:visible; padding:7px; }
  .settings-nav a { min-width:0; flex-direction:column; align-items:center; text-align:center; padding:10px 3px; gap:8px; }
  .settings-nav a>div { min-width:0; width:100%; }
  .settings-nav strong { font-size:10px; overflow-wrap:anywhere; letter-spacing:-.015em; }
  .settings-nav small { display:none; }
}
/* Keep offer explanations inside the scrollable table instead of clipping a popover. */
.offer-reasons { position:static; margin-top:8px; max-width:240px; white-space:normal; }
/* Listing enrichment and first vehicle photo, shared by admitted/pending offers. */
.detail-progress { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 22px; margin:16px 0; }
.detail-progress .eyebrow { margin-bottom:6px; }
.detail-progress p:not(.eyebrow) { font-size:13px; font-weight:600; margin:0 0 5px; }
.detail-progress small { color:var(--muted); font-size:11px; line-height:1.6; }
.detail-progress button { flex-shrink:0; }
.vehicle-summary { display:flex; align-items:flex-start; gap:14px; min-width:285px; max-width:395px; white-space:normal; }
.vehicle-copy { min-width:0; flex:1; }
.vehicle-copy>strong { font-size:12px; line-height:1.5; }
.offer-photo { width:112px; height:84px; flex:0 0 112px; display:block; position:relative; overflow:hidden; border:1px solid #ffffffd9; border-radius:13px; background:linear-gradient(135deg,#e7edf5,#f9fafc); box-shadow:inset 0 1px 0 #fff; color:var(--muted); text-decoration:none; }
.offer-photo img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 200ms var(--ease); }
.photo-origin { position:absolute; bottom:4px; left:4px; border:1px solid #ffffffa1; border-radius:5px; padding:1px 5px; font-size:9px; color:#384455; background:#ffffffdb; }
.photo-placeholder { display:flex; flex-direction:column; gap:6px; align-items:center; justify-content:center; height:100%; padding:8px; text-align:center; }
.photo-placeholder .icon { width:25px; height:25px; }
.photo-placeholder small { font-size:10px; line-height:1.25; margin:0; }
.offer-detail-note { margin-top:8px; font-size:10px; line-height:1.5; color:var(--muted); }
.offer-detail-note summary { cursor:pointer; width:fit-content; padding:3px 0; font-weight:600; }
.offer-detail-note.blocked summary,.offer-detail-note.unavailable summary { color:var(--amber); }
.offer-detail-note.complete summary { color:var(--green); }
.offer-detail-note p { margin:5px 0; padding:8px; background:#ffffff95; border:1px solid var(--line); border-radius:8px; max-width:260px; font-size:11px; color:var(--muted); }
.offer-detail-note small { font-size:10px; }
.pending-offers td:first-child { max-width:430px; }
@media(hover:hover) and (pointer:fine) { .offer-photo:hover img { transform:scale(1.05); } }
@media(max-width:760px) { .detail-progress { align-items:stretch; flex-direction:column; padding:18px; gap:14px; }.vehicle-summary { min-width:265px; gap:10px; }.offer-photo { width:96px; height:76px; flex-basis:96px; }.offer-detail-note summary { min-height:32px; } }
@media(max-width:760px) { .offer-toolbar { flex-direction:column; align-items:stretch; }.offer-toolbar .search-field { flex:auto; width:100%; min-height:44px; }.offer-toolbar .filter-buttons { width:100%; } }

/* Persistent, draggable global search launcher. */
.search-widget { position:fixed; z-index:45; right:24px; top:calc(50% - 29px); width:58px; height:58px; padding:0; display:grid; place-items:center; border:1px solid #ffffff80; border-radius:50%; background:linear-gradient(145deg,var(--red),#a92336); color:#fff; box-shadow:0 8px 28px #a9233640,inset 0 1px 0 #ffffff50; cursor:grab; touch-action:none; user-select:none; -webkit-user-select:none; transition:box-shadow 160ms ease; }
.search-widget .icon { width:25px; height:25px; pointer-events:none; }
.search-widget>span { display:grid; place-items:center; pointer-events:none; }
.search-widget:hover { box-shadow:0 10px 32px #a9233660,inset 0 1px 0 #ffffff50; }
.search-widget:focus-visible { outline:3px solid var(--red); outline-offset:4px; }
.search-widget.is-dragging { cursor:grabbing; box-shadow:0 14px 36px #a9233660; }
@media(prefers-reduced-motion:reduce) { .search-widget { transition:none; } }

/* Personal accounts */
[hidden], body.auth-loading { display: none !important; }
body.login-page { display: grid; place-items: center; min-height: 100vh; padding: 24px; }
.login-card { width: min(100%, 440px); padding: 36px; }
.login-card h1 { font-size: 30px; margin: 12px 0; }
.login-card form { display: grid; gap: 20px; margin-top: 28px; }
.login-card label { display: grid; gap: 8px; }
.login-card input { width: 100%; padding: 12px; border: 1px solid #d4dbe5; border-radius: 10px; }
#login-error, #user-error { color: #b42318; }
.role-help { padding: 16px 22px; font-size: 13px; line-height: 1.6; color: #526075; }
#modal-fields .role-help, #user-error { grid-column: 1 / -1; padding: 0; }
.logout-button { width: 100%; margin-top: 10px; padding: 10px; border-radius: 10px; }
.user-list article { flex-wrap: wrap; gap: 12px; }
.user-list small { overflow-wrap: anywhere; }
.user-list button { padding: 8px 12px; border-radius: 8px; }

/* Theme overrides share the existing layout and cover dynamically rendered records. */
#theme-toggle { gap:7px; font-size:12px; flex-shrink:0; }
#theme-toggle[aria-pressed="true"] { color:var(--red); border-color:var(--red); }
@media(max-width:1000px) { #theme-toggle>span { display:none; } }
:root[data-theme="dark"] {
  color-scheme:dark;
  --bg:#141820; --ink:#edf0f6; --muted:#a9b4c6;
  --red:#f29b91; --red-dark:#c7665b; --red-soft:#402a2e;
  --green:#8bd6af; --blue:#93c9ed; --amber:#edc57b;
  --line:rgba(176,193,218,.22); --soft:#272f3d;
  --surface:#222a37; --glass:linear-gradient(135deg,#252e3bed,#1e2531ed);
  --glass-shadow:0 8px 32px -16px #0009,inset 0 1px 0 #ffffff0a;
}
[data-theme="dark"] body::before { background:radial-gradient(ellipse at 85% 8%,#25334b 0,transparent 48%),radial-gradient(ellipse at 10% 55%,#30232d 0,transparent 48%),#141820; }
[data-theme="dark"] :is(.sidebar,.topbar,.global-search,.record-modal) { background:var(--glass); border-color:var(--line); box-shadow:var(--glass-shadow); }
[data-theme="dark"] :is(.card,.stats-grid :is(article,a.dashboard-tile),.mini-stats,.crawler-state,.date-chip,.stat-icon,.activity-dot,.table-wrap) { border-color:var(--line); }
[data-theme="dark"] :is(.main-nav a,label,.field-label,.paired legend,.body-types button) { color:var(--muted); }
[data-theme="dark"] :is(.main-nav a.active,.settings-nav a.active,.folder.active,.body-types button.selected,.segmented button.active,.filter-buttons button.active) { background:var(--red-soft); color:var(--red); border-color:var(--line); box-shadow:none; }
[data-theme="dark"] :is(.system-card,kbd,.module-grid :is(article,a.dashboard-tile),.module-grid .available,.mission-box,.technical,.offer-filter-panel,.offer-kpis,.metrics,.email-status-bar,.time-row article,.offer-detail-note p,.pending-offers>summary>b,.offer-photo,.photo-origin) { background:var(--surface); border-color:var(--line); box-shadow:none; }
[data-theme="dark"] .action-grid button:nth-child(n) { background:var(--surface); border-color:var(--line); }
[data-theme="dark"] :is(.action-grid button>span,.module-grid :is(article,a.dashboard-tile)>span,.section-title>span,.technical summary>span,.profile>span,.avatar) { background:var(--red-soft); color:var(--red); border-color:var(--line); box-shadow:none; }
[data-theme="dark"] :is(.secondary-action,.config-actions button:not(.save-config),.customer-side>button,.offer-empty button,.exports a,.top-actions button:not(.primary-action),.global-search>div>button) { background:var(--surface); border-color:var(--line); box-shadow:none; }
[data-theme="dark"] :is(input,select,textarea,.offer-filter-grid input,.offer-filter-grid select,.search-field) { background:#19212c; border-color:var(--line); color:var(--ink); }
[data-theme="dark"] .search-field input { background:transparent; }
[data-theme="dark"] :is(input,textarea)::placeholder { color:#95a2b7; }
[data-theme="dark"] :is(.technical-body,.body-types,.segmented,.filter-buttons,th) { background:#19212c; border-color:var(--line); }
[data-theme="dark"] :is(.meter,.score>span,.folder>span,.offer-empty>span,.empty-monitor>span) { background:#323e50; color:var(--muted); border-color:var(--line); }
[data-theme="dark"] .table-wrap { background:#19212c40; }
[data-theme="dark"] :is(.global-search>button,.status) { background:var(--surface); }
[data-theme="dark"] :is(.main-nav a:hover,.action-grid button:hover,.global-search>button:hover,tbody tr:hover,.row-menu:hover,.profile button:hover) { background:var(--soft); color:var(--ink); }
[data-theme="dark"] :is(.red,.pill.failed) { background:var(--red-soft); }
[data-theme="dark"] :is(.blue,.pill.planned) { background:#263d50; }
[data-theme="dark"] :is(.green,.pill.online) { background:#263f36; }
[data-theme="dark"] :is(.amber,.pill.inwork,.pill.reserved,.pending-offers>summary) { background:#403728; }
[data-theme="dark"] .pill.wait { background:#353d4a; color:#c7ceda; }
[data-theme="dark"] :is(.pending-offers>summary strong,.pending-offers>summary small,.pending-offers>summary>b,.pending-offers td ul) { color:var(--amber); }
[data-theme="dark"] .status.running { background:#873b35; color:#fff; }
[data-theme="dark"] .status.complete { background:#286348; color:#fff; }
[data-theme="dark"] .status.failed { background:#873b35; color:#fff; }
[data-theme="dark"] .photo-origin { color:var(--ink); }
[data-theme="dark"] .ring { border-color:#493239; border-top-color:var(--red); }
[data-theme="dark"] :is(.overlay,.nav-backdrop) { background:#080d17a8; }
[data-theme="dark"] :where(button,a,input,select,textarea,summary,[tabindex]):focus-visible { outline-color:var(--red); }
[data-theme="dark"] :is(input,select,textarea):focus { border-color:var(--red); box-shadow:0 0 0 4px #f29b9120; }
@media(max-width:760px) { [data-theme="dark"] .sidebar { background:#1e2633; } }
@media(prefers-contrast:more) { :root[data-theme="dark"] { --muted:#d0d9e7; --line:#8291a7; --glass:#19212c; } }
@media(forced-colors:active) { #theme-toggle[aria-pressed="true"] { border-color:Highlight; } }
[data-theme="dark"] .modal-head>button { background:var(--soft); }
@media(hover:hover) and (pointer:fine) {
  [data-theme="dark"] :is(.module-grid :is(article,a.dashboard-tile)[data-route]:hover,.folder:hover,.secondary-action:hover,.config-actions button:not(.save-config):hover,.card-head button:hover,.open-offer:hover,.exports a:hover,.settings-nav a:hover,.body-types button:hover,.filter-buttons button:hover,.segmented button:hover) { background:var(--soft); color:var(--red); box-shadow:none; }
}
.user-list article { grid-template-columns: 38px minmax(0,1fr) 112px 80px auto; }
.user-list button { min-width: 92px; font: 600 12px/1.4 inherit; border: 1px solid var(--line); background: var(--surface); color: var(--ink); }
.role-help { color: var(--muted); }
@media(max-width:760px) { .user-list article { grid-template-columns: 38px minmax(0,1fr) auto; } }

/* Full-card links on the overview retain native keyboard and new-tab behavior. */
.dashboard-tile { color:inherit; text-decoration:none; cursor:pointer; }
.dashboard-tile:focus-visible { outline:3px solid var(--red); outline-offset:3px; }
@media(hover:hover) { #home-view .dashboard-tile:hover { background:var(--soft); box-shadow:inset 0 0 0 1px var(--red); } }
