:root{--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-display:"Space Grotesk", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--text-4xl:3rem;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.25rem;--s-6:1.5rem;--s-8:2rem;--s-10:2.5rem;--s-12:3rem;--s-16:4rem;--s-20:5rem;--r-xs:4px;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-2xl:24px;--r-full:999px;--ease:cubic-bezier(.4, 0, .2, 1);--dur-fast:.12s;--dur:.2s;--dur-slow:.36s;--brand-navy:#1f3d6b;--brand-navy-deep:#17304f;--brand-coral:#ff7a59;--brand-coral-deep:#f2603c;--brand-steel:#8ea3c4;--brand-mist:#c8d0e0;--bg:#f4f6fb;--bg-subtle:#eaeef6;--surface:#fff;--surface-2:#f7f9fc;--surface-inset:#eef2f8;--border:#e2e7f0;--border-strong:#cfd7e5;--text:#16233a;--text-muted:#566178;--text-subtle:#8592aa;--text-invert:#fff;--primary:#1f3d6b;--primary-hover:#17304f;--primary-contrast:#fff;--primary-soft:#e5ecf6;--primary-border:#c6d5ea;--accent:#ff7a59;--accent-hover:#f2603c;--accent-contrast:#4a1e10;--accent-soft:#ffe9e2;--accent-border:#ffcbba;--accent-grad:linear-gradient(135deg, #1f3d6b 0%, #345a8f 100%);--success:#0ca66f;--success-soft:#dcfce7;--success-text:#047a4e;--warning:#d9820b;--warning-soft:#fef3c7;--warning-text:#92610a;--danger:#dc2f3a;--danger-hover:#c11f2a;--danger-soft:#fde4e6;--danger-text:#b3232d;--focus-ring:#1f3d6b4d;--cell-pending:#dde3ee;--cell-active:#ff7a59;--cell-done:#10b981;--cell-failed:#ef4444;--cell-skipped:#c8d0e0;--mark-shield:#1f3d6b;--mark-bar-1:#ff7a59;--mark-bar-2:#8ea3c4;--mark-bar-3:#c8d0e0;--shadow-xs:0 1px 2px #1418280f;--shadow-sm:0 1px 3px #14182814, 0 1px 2px #1418280a;--shadow-md:0 4px 12px #1418281a, 0 2px 4px #1418280d;--shadow-lg:0 12px 32px #14182824, 0 4px 8px #1418280f;--shadow-focus:0 0 0 3px var(--focus-ring);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#090f1a;--bg-subtle:#0d1526;--surface:#152238;--surface-2:#1e2d45;--surface-inset:#1c2b46;--border:#294061;--border-strong:#3b5479;--text:#edf2fa;--text-muted:#a4b4cd;--text-subtle:#7183a0;--text-invert:#090f1a;--primary:#5c8ad4;--primary-hover:#74a0e0;--primary-contrast:#071120;--primary-soft:#16294a;--primary-border:#2c4a76;--accent:#ff7a59;--accent-hover:#f2603c;--accent-contrast:#3a1508;--accent-soft:#35211b;--accent-border:#6b3a2c;--accent-grad:linear-gradient(135deg, #ff7a59 0%, #f2603c 100%);--success:#2dd48f;--success-soft:#0d2a20;--success-text:#57e0a4;--warning:#f0a83a;--warning-soft:#2c2110;--warning-text:#f5c56b;--danger:#f2555f;--danger-hover:#f6737b;--danger-soft:#2a1418;--danger-text:#f98a91;--focus-ring:#5c8ad480;--cell-pending:#1f375a;--cell-active:#ff7a59;--cell-done:#14c98a;--cell-failed:#f2555f;--cell-skipped:#2b466e;--mark-shield:#ff7a59;--mark-bar-1:#fff;--mark-bar-2:#fff;--mark-bar-3:#1f3d6b;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 1px 3px #00000080, 0 1px 2px #0000004d;--shadow-md:0 6px 16px #00000080, 0 2px 6px #00000059;--shadow-lg:0 16px 40px #0009, 0 6px 12px #0006;--shadow-focus:0 0 0 3px var(--focus-ring);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100vh;font-family:var(--font-sans);font-size:var(--text-base);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);margin:0;line-height:1.55}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:var(--weight-semibold);letter-spacing:-.01em;color:var(--text);margin:0;line-height:1.2}.tnum,.stat-num,.bjl-stat-num,.bjl-elapsed,.data-table .num,.audit-row{font-family:var(--font-mono)}p{margin:0}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--primary-soft);color:var(--text)}.tnum{font-variant-numeric:tabular-nums;white-space:nowrap}.data-table td.num,.stat-num{white-space:nowrap}.muted{color:var(--text-muted)}.subtle{color:var(--text-subtle)}.mono{font-family:var(--font-mono)}.stack{flex-direction:column;display:flex}.row{align-items:center;display:flex}.gap-1{gap:var(--s-1)}.gap-2{gap:var(--s-2)}.gap-3{gap:var(--s-3)}.gap-4{gap:var(--s-4)}.grow{flex:1}.center{justify-content:center;align-items:center;display:flex}.wrap{flex-wrap:wrap}.loading{padding:var(--s-16);text-align:center;color:var(--text-muted)}button,.btn{--btn-bg:var(--primary);--btn-fg:var(--primary-contrast);--btn-bg-hover:var(--primary-hover);justify-content:center;align-items:center;gap:var(--s-2);border-radius:var(--r-sm);background:var(--btn-bg);color:var(--btn-fg);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);border:1px solid #0000;padding:.5rem .9rem;line-height:1.2;display:inline-flex}button:hover:not(:disabled),.btn:hover:not(:disabled){background:var(--btn-bg-hover);text-decoration:none}button:active:not(:disabled),.btn:active:not(:disabled){transform:translateY(.5px)}button:focus-visible,.btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}button:disabled,.btn:disabled{opacity:.55;cursor:not-allowed}.btn-secondary,button.secondary{--btn-bg:var(--surface);--btn-fg:var(--text);--btn-bg-hover:var(--surface-inset);border-color:var(--border-strong)}.btn-ghost{--btn-bg:transparent;--btn-fg:var(--text-muted);--btn-bg-hover:var(--surface-inset)}.btn-danger,button.danger-btn{--btn-bg:transparent;--btn-fg:var(--danger-text);--btn-bg-hover:var(--danger-soft);border-color:var(--danger-soft)}.btn-danger-solid{--btn-bg:var(--danger);--btn-fg:#fff;--btn-bg-hover:var(--danger-hover)}.btn-sm{font-size:var(--text-xs);padding:.35rem .65rem}.btn-lg{font-size:var(--text-md);padding:.7rem 1.3rem}.btn-block{width:100%}.link-btn{--btn-bg:transparent;--btn-fg:var(--primary);--btn-bg-hover:transparent;font-size:var(--text-sm);font-weight:var(--weight-medium);border:none;padding:0}.link-btn:hover:not(:disabled){background:0 0;text-decoration:underline}.button-row{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],select,textarea{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);width:100%;color:var(--text);font-family:inherit;font-size:var(--text-base);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);padding:.55rem .7rem}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:var(--shadow-focus);outline:none}select{cursor:pointer}label{font-size:var(--text-sm);color:var(--text-muted)}input[type=checkbox]{accent-color:var(--primary);width:15px;height:15px}.card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card{padding:var(--s-6)}.card-pad-lg{padding:var(--s-8)}.section-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:var(--weight-semibold);color:var(--text-subtle)}.badge{border-radius:var(--r-full);background:var(--surface-inset);border:1px solid var(--border);color:var(--text-muted);font-size:.68rem;font-weight:var(--weight-semibold);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:.3em;padding:.15rem .5rem;display:inline-flex}.badge-primary{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary)}.badge-success{background:var(--success-soft);color:var(--success-text);border-color:#0000}.badge-warning{background:var(--warning-soft);color:var(--warning-text);border-color:#0000}.badge-deleted,.badge-danger{background:var(--danger-soft);color:var(--danger-text);border-color:#0000}.dot{border-radius:var(--r-full);background:var(--text-subtle);flex:none;width:8px;height:8px}.dot-success{background:var(--success)}.dot-warning{background:var(--warning)}.dot-danger{background:var(--danger)}.dot-live{background:var(--primary);box-shadow:0 0 0 0 var(--focus-ring);animation:pulse-ring 1.6s var(--ease) infinite}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 var(--focus-ring)}70%{box-shadow:0 0 0 7px #0000}to{box-shadow:0 0 #0000}}.banner{align-items:center;gap:var(--s-3);border-radius:var(--r-md);font-size:var(--text-sm);border:1px solid #0000;padding:.75rem 1rem;display:flex}.success-banner,.banner-success{background:var(--success-soft);color:var(--success-text);border-color:#0000}.error-banner,.banner-error{background:var(--danger-soft);color:var(--danger-text);border-color:#0000}.banner-warning{background:var(--warning-soft);color:var(--warning-text);border-color:#0000}.error{color:var(--danger-text);font-size:var(--text-sm)}.app-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{align-self:start;gap:var(--s-2);height:100vh;padding:var(--s-5) var(--s-4);background:var(--bg-subtle);border-right:1px solid var(--border);flex-direction:column;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-2) var(--s-4);display:flex}.brand-mark{border-radius:var(--r-md);background:var(--accent-grad);color:#fff;width:32px;height:32px;font-weight:var(--weight-bold);box-shadow:var(--shadow-sm);flex:none;place-items:center;display:grid}.brand-name{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-base);letter-spacing:-.01em;line-height:1.1}.brand-sub{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);font-size:.62rem}.brand-lockup{align-items:center;gap:var(--s-3);display:inline-flex}.brand-wordmark{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-xl);letter-spacing:-.02em;color:var(--primary);line-height:1}[data-theme=dark] .brand-wordmark{color:var(--text)}.brand-wordmark-accent{color:var(--accent);font-weight:var(--weight-medium)}.nav{flex-direction:column;gap:2px;display:flex}.nav-link{align-items:center;gap:var(--s-3);border-radius:var(--r-sm);color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);padding:.5rem .7rem;display:flex}.nav-link:hover{background:var(--surface-inset);color:var(--text);text-decoration:none}.nav-link.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-xs)}.nav-icon{width:18px;height:18px;color:var(--text-subtle);flex:none}.nav-section{margin-top:var(--s-4);padding:0 .7rem var(--s-1)}.sidebar-foot{gap:var(--s-2);flex-direction:column;margin-top:auto;display:flex}.org-switcher-wrap{margin-bottom:var(--s-3);position:relative}.org-switcher-connect{margin-bottom:var(--s-3);justify-content:flex-start}.org-switcher{--btn-bg:var(--surface);--btn-fg:var(--text);--btn-bg-hover:var(--surface);align-items:center;gap:var(--s-2);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);width:100%;box-shadow:var(--shadow-xs);cursor:pointer;text-align:left;transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);padding:.5rem .6rem;display:flex}.org-switcher:hover{border-color:var(--accent-border);box-shadow:var(--shadow-sm)}.org-switcher[aria-expanded=true]{border-color:var(--accent);box-shadow:var(--shadow-focus)}.org-switcher.single{align-items:center;gap:var(--s-2);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);width:100%;box-shadow:var(--shadow-xs);margin-bottom:var(--s-3);padding:.5rem .6rem;display:flex}.org-switcher-dot{border-radius:var(--r-full);background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 3px var(--accent-soft);flex:none}.org-switcher-name{min-width:0;font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.org-switcher-caret{color:var(--text-subtle);transition:transform var(--dur) var(--ease);flex:none}.org-switcher[aria-expanded=true] .org-switcher-caret{transform:rotate(180deg)}.org-menu{z-index:50;padding:var(--s-2);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-lg);animation:org-menu-in var(--dur-fast) var(--ease);flex-direction:column;gap:2px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0}@keyframes org-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.org-menu-item{--btn-bg:transparent;--btn-fg:var(--text);--btn-bg-hover:var(--surface-inset);align-items:center;gap:var(--s-2);border-radius:var(--r-sm);width:100%;font-size:var(--text-sm);font-weight:var(--weight-medium);justify-content:flex-start;padding:.45rem .55rem;display:flex}.org-menu-item.active{background:var(--accent-soft);color:var(--accent-hover)}.org-menu-item.active .org-switcher-dot{box-shadow:none}.org-menu-check{color:var(--accent);font-weight:var(--weight-bold)}.org-menu-sep{background:var(--border);height:1px;margin:var(--s-1) 0}.btn-accent{--btn-bg:var(--accent-hover);--btn-fg:#fff;--btn-bg-hover:var(--accent);font-weight:var(--weight-semibold);box-shadow:0 1px 2px #f2603c59}.badge-accent{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-hover)}.dot-live,.bjl-pulse-dot,[data-theme=dark] .dot-live,[data-theme=dark] .bjl-pulse-dot{background:var(--accent)}.topbar{z-index:10;align-items:center;gap:var(--s-4);height:60px;padding:0 var(--s-8);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(140%)blur(10px);backdrop-filter:saturate(140%)blur(10px);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0}.topbar h1{font-size:var(--text-lg)}.topbar-right{align-items:center;gap:var(--s-3);margin-left:auto;display:flex}.user-chip{align-items:center;gap:var(--s-2);font-size:var(--text-sm);color:var(--text-muted);display:flex}.avatar{border-radius:var(--r-full);background:var(--accent-grad);color:#fff;width:30px;height:30px;font-size:var(--text-xs);font-weight:var(--weight-bold);flex:none;place-items:center;display:grid}.theme-toggle{--btn-bg:transparent;--btn-fg:var(--text-muted);--btn-bg-hover:var(--surface-inset);border:1px solid var(--border);border-radius:var(--r-sm);width:34px;height:34px;padding:0}.theme-toggle svg{width:17px;height:17px}.app-main{flex-direction:column;min-width:0;display:flex}.page{width:100%;max-width:1120px;padding:var(--s-8);gap:var(--s-6);flex-direction:column;margin:0 auto;display:flex}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--s-4);flex-wrap:wrap;display:flex}.page-head h1{font-size:var(--text-2xl)}.page-head p{color:var(--text-muted);margin-top:var(--s-1)}.empty{padding:var(--s-12);text-align:center;color:var(--text-muted);border:1px dashed var(--border-strong);border-radius:var(--r-lg);background:var(--surface-2)}.org-grid{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin:0;padding:0;list-style:none;display:grid}.org-card{gap:var(--s-3);padding:var(--s-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur) var(--ease);flex-direction:column;display:flex}.org-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong)}.org-card-head{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.org-card-head strong{font-size:var(--text-md)}.org-meta{font-size:var(--text-xs);color:var(--text-subtle);word-break:break-all}.conn-line{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.stat-row{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.stat{padding:var(--s-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md)}.stat-num{font-size:var(--text-2xl);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;line-height:1}.stat-lbl{margin-top:var(--s-2);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle)}.member-list{gap:var(--s-1);padding-top:var(--s-2);border-top:1px solid var(--border);flex-direction:column;display:flex}.member-row{justify-content:space-between;align-items:center;gap:var(--s-2);font-size:var(--text-sm);padding:.2rem 0;display:flex}.list-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle);margin-bottom:var(--s-1)}.status-success{color:var(--success-text);font-weight:var(--weight-semibold)}.status-partial{color:var(--warning-text);font-weight:var(--weight-semibold)}.status-failed,.status-abandoned,.status-aborted{color:var(--danger-text);font-weight:var(--weight-semibold)}.status-running,.status-queued{color:var(--primary);font-weight:var(--weight-semibold)}.job-errors{margin:var(--s-1) 0 var(--s-2);padding-left:var(--s-2)}.job-error{font-size:var(--text-xs);color:var(--danger-text)}.schedule-row{gap:var(--s-3);padding-top:var(--s-3);border-top:1px solid var(--border);flex-direction:column;display:flex}.sched-enable{align-items:center;gap:var(--s-2);color:var(--text);font-weight:var(--weight-medium);font-size:var(--text-sm);display:flex}.sched-detail{gap:var(--s-3);flex-direction:column;display:flex}.day-grid{gap:var(--s-1);flex-wrap:wrap;display:flex}.day-chip{border:1px solid var(--border-strong);border-radius:var(--r-sm);font-size:var(--text-xs);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-muted);align-items:center;padding:.3rem .55rem;display:inline-flex}.day-chip input{display:none}.day-chip.on{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary);font-weight:var(--weight-semibold)}.sched-time{align-items:center;gap:var(--s-2);font-size:var(--text-sm);color:var(--text-muted);display:flex}.sched-time select{width:auto}.analyze-result{padding:var(--s-3) var(--s-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);font-size:var(--text-sm);color:var(--text-muted)}.audit-log{padding-top:var(--s-2);flex-direction:column;gap:2px;display:flex}.audit-row{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.danger-zone{margin-top:var(--s-2);padding-top:var(--s-3);border-top:1px solid var(--border)}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.data-table th{text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle);font-weight:var(--weight-semibold);border-bottom:1px solid var(--border);background:var(--surface-2);padding:.6rem 1rem}.data-table td{border-bottom:1px solid var(--border);padding:.7rem 1rem}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--surface-2)}.data-table .num{text-align:right}.segmented{background:var(--surface-inset);border:1px solid var(--border);border-radius:var(--r-md);gap:2px;padding:3px;display:inline-flex}.seg{--btn-bg:transparent;--btn-fg:var(--text-muted);--btn-bg-hover:transparent;border-radius:var(--r-sm);font-size:var(--text-sm);padding:.3rem .8rem}.seg.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-xs)}.auth-wrap{min-height:100vh;padding:var(--s-6);background:radial-gradient(1200px 500px at 50% -10%, var(--primary-soft), transparent 60%), var(--bg);place-items:center;display:grid}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);width:100%;max-width:400px;padding:var(--s-8);box-shadow:var(--shadow-lg)}.auth-brand{align-items:center;gap:var(--s-3);margin-bottom:var(--s-6);justify-content:center;display:flex}.auth-card h1{font-size:var(--text-xl);text-align:center;margin-bottom:var(--s-2)}.auth-card>p{text-align:center;color:var(--text-muted);font-size:var(--text-sm);margin-bottom:var(--s-5)}.auth-card form{gap:var(--s-4);flex-direction:column;display:flex}.auth-card label{gap:var(--s-2);flex-direction:column;display:flex}.auth-card button[type=submit]{width:100%;font-size:var(--text-base);padding:.65rem 1rem}.auth-card .google-btn{--btn-bg:var(--surface);--btn-fg:var(--text);--btn-bg-hover:var(--surface-inset);border-color:var(--border-strong);width:100%}.auth-card .divider{align-items:center;gap:var(--s-3);color:var(--text-subtle);font-size:var(--text-xs);margin:var(--s-5) 0;text-transform:uppercase;letter-spacing:.08em;display:flex}.auth-card .divider:before,.auth-card .divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-card .muted{text-align:center;margin-top:var(--s-5);font-size:var(--text-sm)}.mfa-nag{align-items:center;gap:var(--s-3);background:var(--warning-soft);color:var(--warning-text);border-bottom:1px solid var(--border);font-size:var(--text-sm);padding:.7rem 1rem;display:flex}.bjl{gap:var(--s-4);padding:var(--s-5);border-radius:var(--r-lg);border:1px solid var(--border);background:radial-gradient(600px 200px at 0% 0%, var(--primary-soft), transparent 70%), var(--surface);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.bjl-running{border-color:var(--primary-border)}.bjl-done{background:var(--surface)}.bjl-head{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.bjl-headline{align-items:center;gap:var(--s-2);font-size:var(--text-md);display:flex}.bjl-elapsed{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:var(--text-sm)}.bjl-chip{border-radius:var(--r-full);background:var(--primary-soft);color:var(--primary);border:1px solid var(--primary-border);font-size:var(--text-xs);font-weight:var(--weight-semibold);align-items:center;gap:.3em;padding:.1rem .5rem;display:inline-flex}.bjl-pulse-dot{border-radius:var(--r-full);background:var(--primary);width:9px;height:9px;box-shadow:0 0 0 0 var(--focus-ring);animation:pulse-ring 1.5s var(--ease) infinite}.bjl-stats{gap:var(--s-3);grid-template-columns:repeat(4,1fr);display:grid}.bjl-stats>div{gap:var(--s-1);flex-direction:column;display:flex}.bjl-stat-num{font-size:var(--text-xl);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;line-height:1.1}.bjl-stat-sub{font-size:var(--text-base);font-weight:var(--weight-normal);color:var(--text-muted)}.bjl-stat-lbl{text-transform:uppercase;letter-spacing:.05em;color:var(--text-subtle);font-size:.66rem}.bjl-fail{color:var(--danger-text)}.bjl-bar{background:var(--surface-inset);border-radius:var(--r-full);height:7px;overflow:hidden}.bjl-bar-fill{border-radius:var(--r-full);background:linear-gradient(90deg, var(--primary), var(--cell-done));height:100%;transition:width var(--dur-slow) var(--ease)}.bjl-active{gap:var(--s-2);flex-wrap:wrap;display:flex}.bjl-active-item{align-items:center;gap:var(--s-2);border-radius:var(--r-full);background:var(--surface-inset);border:1px solid var(--border);font-size:var(--text-xs);color:var(--text);padding:.2rem .55rem;display:inline-flex}.bjl-active-state{color:var(--text-subtle);font-size:.66rem}.bjl-spin{border-radius:var(--r-full);border:2px solid var(--primary);border-right-color:#0000;width:10px;height:10px;animation:.7s linear infinite bjl-spin}@keyframes bjl-spin{to{transform:rotate(360deg)}}.bjl-grid{grid-template-columns:repeat(auto-fill,minmax(13px,1fr));gap:4px;display:grid}.bjl-cell{aspect-ratio:1;background:var(--cell-pending);width:100%;transition:background var(--dur) var(--ease), transform var(--dur-fast) var(--ease);border-radius:3px}.bjl-cell:hover{box-shadow:var(--shadow-sm);transform:scale(1.35)}.bjl-cell.bjl-skipped{background:var(--cell-skipped)}.bjl-cell.bjl-submitted,.bjl-cell.bjl-collecting{background:var(--cell-active);animation:1.2s ease-in-out infinite bjl-cellpulse}.bjl-cell.bjl-done{background:var(--cell-done)}.bjl-cell.bjl-failed{background:var(--cell-failed)}@keyframes bjl-cellpulse{0%,to{opacity:1}50%{opacity:.4}}.bjl-foot{font-size:var(--text-sm)}.activity-grid{gap:var(--s-8);grid-template-columns:auto 1fr;align-items:start;display:grid}@media (width<=640px){.activity-grid{gap:var(--s-5);grid-template-columns:1fr}}.cal{gap:var(--s-2);flex-direction:column;display:flex}.cal-dow,.cal-grid{grid-template-columns:repeat(7,20px);gap:4px;width:max-content;display:grid}.cal-dow span{text-align:center;font-family:var(--font-mono);color:var(--text-subtle);font-size:.6rem}.cal-cell{background:var(--surface-inset);vertical-align:middle;width:20px;height:20px;transition:transform var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border-radius:4px;display:inline-block}.cal-grid .cal-cell:hover{box-shadow:var(--shadow-sm);transform:scale(1.3)}.cal-none{background:var(--surface-inset)}.cal-success{background:var(--cell-done)}.cal-partial{background:var(--warning)}.cal-failed{background:var(--cell-failed)}.cal-future{border:1px dashed var(--border);background:0 0}.cal-legend{align-items:center;gap:var(--s-4);font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--s-2);flex-wrap:wrap;display:flex}.cal-legend span{align-items:center;gap:6px;display:inline-flex}.cal-legend .cal-cell{width:12px;height:12px}.spark{width:100%;height:56px;display:block}.spark-empty{height:56px;font-size:var(--text-sm);align-items:center;display:flex}.viz-top{gap:var(--s-4);grid-template-columns:1.5fr 1fr 1fr;display:grid}.viz-two{gap:var(--s-4);grid-template-columns:1fr 1fr;align-items:stretch;display:grid}@media (width<=900px){.viz-top,.viz-two{grid-template-columns:1fr}}.gauge{flex:none;place-items:center;display:grid;position:relative}.gauge-center{flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;inset:0}.gauge-big{font-family:var(--font-mono);font-size:var(--text-3xl);font-weight:var(--weight-bold);line-height:1}.gauge-label{font-size:var(--text-xs);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.05em}.donut{flex:none;place-items:center;display:grid;position:relative}.donut-top{font-family:var(--font-mono);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--text);line-height:1}.protection-card{display:flex}.protection-main{align-items:center;gap:var(--s-6);width:100%;display:flex}.protection-copy{gap:var(--s-2);flex-direction:column;min-width:0;display:flex}.protection-verdict{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold)}.pips{gap:var(--s-4);margin-top:var(--s-1);flex-wrap:wrap;display:flex}.pip{align-items:center;gap:var(--s-2);display:flex}.pip-dot{border-radius:var(--r-full);flex:none;width:8px;height:8px}.pip-val{font-family:var(--font-mono);font-weight:var(--weight-bold);font-size:var(--text-md)}.pip-lbl{font-size:var(--text-xs);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.04em}.swatch{vertical-align:-1px;border-radius:3px;width:11px;height:11px;margin-right:6px;display:inline-block}.rail{height:40px;margin:var(--s-2) 0;position:relative}.rail-line{border-radius:var(--r-full);background:linear-gradient(90deg, var(--surface-inset), var(--accent-soft));height:3px;position:absolute;top:50%;left:0;right:0}.rail-pt{border-radius:var(--r-full);background:var(--success);border:2px solid var(--surface);width:11px;height:11px;box-shadow:var(--shadow-xs);transition:transform var(--dur-fast) var(--ease);margin:-5px 0 0 -5px;position:absolute;top:50%}.rail-pt:hover{z-index:2;transform:scale(1.5)}.rail-labels{font-size:var(--text-xs);justify-content:space-between;display:flex}.attestation{flex-direction:column;display:flex}.att-head{margin-bottom:var(--s-4);justify-content:space-between;align-items:center;display:flex}.att-grid{gap:var(--s-1) var(--s-6);grid-template-columns:1fr 1fr;display:grid}.att-row{justify-content:space-between;align-items:baseline;gap:var(--s-3);border-bottom:1px dotted var(--border);font-size:var(--text-sm);padding:.3rem 0;display:flex}.att-val{font-weight:var(--weight-semibold);text-align:right}.att-foot{font-size:var(--text-xs);margin-top:var(--s-4)}@media (width<=520px){.att-grid{grid-template-columns:1fr}}.treemap{border-radius:var(--r-md);background:var(--surface-inset);width:100%;height:260px;position:relative;overflow:hidden}.treemap-skel{border-radius:var(--r-md);background:var(--surface-inset);width:100%;height:260px;animation:1.4s ease-in-out infinite skel}.skel{background:var(--surface-inset);border-radius:var(--r-sm);width:100%;animation:1.4s ease-in-out infinite skel}@keyframes skel{0%,to{opacity:1}50%{opacity:.5}}.tm-tile{border:2px solid var(--surface);background:var(--primary);color:var(--primary-contrast);transition:filter var(--dur-fast) var(--ease);align-items:flex-start;display:flex;position:absolute;overflow:hidden}.tm-tile:hover{filter:brightness(1.12);z-index:2}.tm-tile.tm-click{cursor:pointer}.tm-tile.tm-muted{color:var(--text-muted);background-image:repeating-linear-gradient(45deg,#0000,#0000 5px,#0000000f 5px 10px)}.tm-failed{background:var(--danger)}.tm-label{padding:4px 6px;line-height:1.15;overflow:hidden}.tm-name{font-size:.68rem;font-weight:var(--weight-semibold);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.tm-val{font-family:var(--font-mono);opacity:.8;font-size:.6rem;display:block}.nav-link.active{position:relative}.nav-link.active:before{content:"";border-radius:var(--r-full);background:var(--accent);width:3px;position:absolute;top:20%;bottom:20%;left:-4px}.nav-link.active .nav-icon{color:var(--accent)}.bjl-bar-fill{background:linear-gradient(90deg, var(--accent), var(--cell-done))}a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.modal-overlay{z-index:100;padding:var(--s-4);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:modal-fade var(--dur-fast) var(--ease);background:#090f1a8c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);width:100%;box-shadow:var(--shadow-lg);animation:modal-pop var(--dur) var(--ease);overflow:hidden}.modal-head{padding:var(--s-5) var(--s-6) 0}.modal-head h2{font-size:var(--text-lg)}.modal-body{padding:var(--s-4) var(--s-6)}.modal-message{color:var(--text-muted);font-size:var(--text-sm);white-space:pre-line;line-height:1.55}.modal-foot{justify-content:flex-end;gap:var(--s-2);padding:var(--s-4) var(--s-6) var(--s-6);display:flex}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.error-fallback{align-items:center;gap:var(--s-4);padding:var(--s-6);border:1px solid var(--danger-soft);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-sm);display:flex}.error-fallback.compact{padding:var(--s-4)}.error-fallback-mark{border-radius:var(--r-full);background:var(--danger-soft);width:36px;height:36px;color:var(--danger-text);font-weight:var(--weight-bold);font-size:var(--text-lg);flex:none;place-items:center;display:grid}.error-fallback .stack{flex:1;min-width:0}.error-fallback button{flex:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.mobile-menu-btn{display:none}@media (width<=860px){.app-shell{grid-template-columns:1fr}.mobile-menu-btn{display:inline-flex}.sidebar{z-index:40;width:248px;transition:transform var(--dur) var(--ease);position:fixed;transform:translate(-100%)}.sidebar.open{box-shadow:var(--shadow-lg);transform:translate(0)}.topbar{padding:0 var(--s-4)}.page{padding:var(--s-4)}.bjl-stats{grid-template-columns:repeat(2,1fr)}}
