:root {
    --ink: #06100f;
    --ink-2: #0a1715;
    --ink-3: #10211f;
    --panel: rgba(13, 29, 27, .78);
    --line: rgba(203, 236, 226, .13);
    --line-bright: rgba(203, 236, 226, .24);
    --text: #edf7f2;
    --muted: #849e97;
    --acid: #d5ff57;
    --mint: #61efca;
    --orange: #ff9866;
    --danger: #ff6e79;
    --sidebar: 268px;
    --radius: 5px;
    --font: Inter, "Segoe UI", Arial, sans-serif;
    --mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

* { box-sizing: border-box; }

html { min-height: 100%; background: var(--ink); }

body {
    min-height: 100vh;
    margin: 0;
    color: var(--text);
    background: var(--ink);
    font-family: var(--font);
    -webkit-font-smoothing: antialiased;
}

a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
button { color: inherit; }

::selection { color: var(--ink); background: var(--acid); }

::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: var(--ink); }
::-webkit-scrollbar-thumb { border: 2px solid var(--ink); background: #29443f; }

/* Authentication surface */
.login-shell { overflow-x: hidden; background: #050c0b; }
.login-noise,
.login-grid,
.orbital { position: fixed; pointer-events: none; }
.login-noise {
    inset: 0;
    z-index: 5;
    opacity: .05;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}
.login-grid {
    inset: 0;
    opacity: .08;
    background-image: linear-gradient(rgba(121, 255, 216, .3) 1px, transparent 1px), linear-gradient(90deg, rgba(121, 255, 216, .3) 1px, transparent 1px);
    background-size: 68px 68px;
    mask-image: linear-gradient(90deg, #000, transparent 70%);
}
.orbital { border: 1px solid rgba(136, 255, 220, .1); border-radius: 50%; }
.orbital-a { width: 55vw; height: 55vw; left: -20vw; top: -28vw; }
.orbital-b { width: 38vw; height: 38vw; left: 24vw; bottom: -28vw; }
.login-layout { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(410px, .75fr); min-height: 100vh; }
.login-visual { position: relative; min-height: 720px; overflow: hidden; border-right: 1px solid var(--line); }
.visual-index,
.visual-coordinates {
    position: absolute;
    z-index: 3;
    color: #75928a;
    font: 10px/1 var(--mono);
    letter-spacing: .18em;
}
.visual-index { top: 38px; left: 42px; }
.visual-coordinates { right: 40px; bottom: 34px; }
.visual-copy { position: absolute; z-index: 3; left: clamp(40px, 7vw, 120px); bottom: clamp(75px, 12vh, 130px); }
.visual-copy > span,
.access-label {
    color: var(--mint);
    font: 10px/1.2 var(--mono);
    letter-spacing: .18em;
    text-transform: uppercase;
}
.visual-copy h1 { margin: 24px 0 18px; font-size: clamp(58px, 6.2vw, 106px); font-weight: 300; line-height: .89; letter-spacing: -.07em; }
.visual-copy h1 em { color: var(--acid); font-family: Georgia, serif; font-weight: 400; }
.visual-copy p { margin: 0; color: var(--muted); font-size: 14px; }
.signal-sphere { position: absolute; width: min(54vw, 770px); aspect-ratio: 1; left: 9%; top: 5%; filter: drop-shadow(0 0 80px rgba(41, 244, 186, .11)); animation: sphereFloat 8s ease-in-out infinite; }
.sphere-core {
    position: absolute;
    inset: 19%;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 28%, rgba(213, 255, 87, .2), transparent 10%), radial-gradient(circle at 55% 60%, rgba(46, 236, 191, .18), transparent 35%), radial-gradient(circle at 45% 50%, #102824 0, #07110f 63%, #040908 100%);
    box-shadow: inset -40px -35px 80px rgba(0, 0, 0, .8), inset 18px 12px 40px rgba(117, 255, 211, .08), 0 0 0 1px rgba(114, 237, 200, .12);
}
.sphere-core::before,
.sphere-core::after { content: ""; position: absolute; inset: 0; border-radius: 50%; }
.sphere-core::before { opacity: .2; background: repeating-radial-gradient(ellipse at 30% 40%, transparent 0 17px, rgba(125, 255, 218, .28) 18px 19px); transform: rotate(-28deg); }
.sphere-core::after { background: linear-gradient(98deg, transparent 43%, rgba(213, 255, 87, .3) 49%, transparent 51%); filter: blur(1px); animation: coreScan 5s linear infinite; }
.sphere-ring { position: absolute; border: 1px solid rgba(110, 255, 214, .23); border-radius: 50%; }
.ring-a { inset: 8%; transform: rotateX(65deg) rotateZ(-10deg); animation: ringSpin 16s linear infinite; }
.ring-b { inset: 13%; transform: rotateY(62deg) rotateZ(18deg); animation: ringSpin 13s linear infinite reverse; }
.ring-c { inset: 2%; border-style: dashed; opacity: .45; animation: ringSpin 24s linear infinite; }
.signal-point { position: absolute; z-index: 4; width: 7px; height: 7px; border-radius: 50%; background: var(--acid); box-shadow: 0 0 20px var(--acid); }
.p1 { left: 22%; top: 35%; }.p2 { right: 14%; top: 51%; animation-delay: -2s; }.p3 { left: 49%; bottom: 9%; animation-delay: -4s; }
.signal-point::after { content: ""; position: absolute; inset: -8px; border: 1px solid rgba(213,255,87,.45); border-radius: 50%; animation: pointPulse 2s ease-out infinite; }

.login-panel { display: grid; align-items: center; padding: 50px clamp(34px, 4vw, 64px); background: linear-gradient(135deg, rgba(13, 30, 27, .44), rgba(5, 12, 11, .75)); backdrop-filter: blur(25px); }
.login-panel-inner { width: min(100%, 445px); margin: auto; }
.login-brand,
.brand-lockup { display: flex; align-items: center; gap: 15px; }
.login-brand { margin-bottom: clamp(70px, 10vh, 120px); }
.brand-symbol { position: relative; display: flex; align-items: flex-end; gap: 3px; width: 35px; height: 32px; transform: skew(-18deg); }
.brand-symbol span { width: 8px; background: var(--acid); box-shadow: 0 0 17px rgba(213,255,87,.22); }
.brand-symbol span:nth-child(1) { height: 14px; }.brand-symbol span:nth-child(2) { height: 24px; }.brand-symbol span:nth-child(3) { height: 31px; }
.brand-name { color: var(--text); font-size: 23px; font-weight: 750; letter-spacing: .16em; }
.brand-name span { color: var(--acid); }
.access-label { display: flex; align-items: center; gap: 10px; }
.access-label i { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--acid); box-shadow: 0 0 13px var(--acid); }
.login-panel h2 { margin: 22px 0 18px; font-size: clamp(42px, 3.45vw, 54px); font-weight: 350; line-height: .96; letter-spacing: -.055em; }
.login-intro { max-width: 330px; margin: 0 0 40px; color: var(--muted); font-size: 14px; line-height: 1.65; }
.login-error { display: flex; align-items: center; gap: 11px; margin: -19px 0 25px; padding: 11px 14px; border: 1px solid rgba(255, 110, 121, .28); color: #ffabb2; background: rgba(255, 110, 121, .06); font-size: 12px; }
.login-error span { display: grid; place-items: center; width: 19px; height: 19px; border: 1px solid currentColor; border-radius: 50%; font: 11px var(--mono); }
.login-form { display: grid; gap: 22px; }
.axis-field { position: relative; display: block; margin: 0; }
.axis-field > span { position: absolute; z-index: 1; left: 0; top: -1px; color: var(--muted); font: 9px/1 var(--mono); letter-spacing: .14em; text-transform: uppercase; transition: color .2s; }
.axis-field input { width: 100%; height: 65px; padding: 19px 45px 0 0; border: 0; border-bottom: 1px solid var(--line-bright); border-radius: 0; outline: 0; color: var(--text); background: transparent; font-size: 15px; }
.axis-field input::placeholder { color: #46615a; }
.axis-field > i { position: absolute; right: 0; bottom: 19px; color: #4e6c64; font: 9px var(--mono); }
.axis-field:focus-within > span { color: var(--acid); }
.axis-field:focus-within input { border-color: var(--acid); }
.password-toggle { position: absolute; right: 0; bottom: 13px; display: grid; place-items: center; width: 36px; height: 36px; padding: 0; border: 0; color: var(--muted); background: transparent; }
.password-toggle:hover { color: var(--acid); }
.password-toggle svg { width: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.access-button,
.scan-button,
.export-button,
.outline-action {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 57px;
    padding: 0 20px;
    border: 1px solid var(--acid);
    border-radius: 1px;
    color: var(--ink);
    background: var(--acid);
    font-size: 12px;
    font-weight: 750;
    letter-spacing: .04em;
    transition: transform .2s, box-shadow .2s, background .2s;
}
.access-button { width: 100%; margin-top: 17px; }
.access-button:hover,
.scan-button:hover,
.export-button:hover { color: var(--ink); background: #e2ff87; box-shadow: 0 12px 36px rgba(213,255,87,.12); transform: translateY(-2px); }
.access-button svg,
.scan-button svg,
.outline-action svg { width: 21px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.login-footer { display: flex; align-items: center; gap: 10px; margin-top: 52px; color: #58716b; font: 8px var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.login-footer i { height: 1px; flex: 1; background: var(--line); }

/* Application layout */
.app-shell { overflow-x: hidden; background: radial-gradient(circle at 72% -12%, #17312c 0, transparent 33%), var(--ink); }
.ambient,
.grid-plane { position: fixed; z-index: 0; pointer-events: none; }
.ambient { border-radius: 50%; filter: blur(110px); opacity: .11; }
.ambient-one { width: 440px; height: 440px; left: 41%; top: -280px; background: var(--acid); }
.ambient-two { width: 460px; height: 460px; right: -340px; top: 45%; background: var(--mint); }
.grid-plane { inset: 0 0 0 var(--sidebar); opacity: .035; background-image: linear-gradient(rgba(225,255,247,.5) 1px, transparent 1px), linear-gradient(90deg, rgba(225,255,247,.5) 1px, transparent 1px); background-size: 80px 80px; mask-image: linear-gradient(#000, transparent 82%); }
.sidebar { position: fixed; z-index: 20; inset: 0 auto 0 0; display: flex; flex-direction: column; width: var(--sidebar); padding: 32px 24px 24px; border-right: 1px solid var(--line); background: rgba(5, 14, 13, .82); backdrop-filter: blur(24px); }
.brand-lockup { padding: 0 8px; }
.brand-caption { margin-top: 3px; color: #58736b; font: 8px var(--mono); letter-spacing: .17em; text-transform: uppercase; }
.side-nav { display: grid; gap: 5px; margin-top: 85px; }
.nav-item { position: relative; display: grid; grid-template-columns: 22px 1fr auto; align-items: center; gap: 14px; min-height: 52px; padding: 0 13px; border: 1px solid transparent; color: #769089; font-size: 12px; transition: .2s ease; }
.nav-item::before { content: ""; position: absolute; left: -25px; width: 2px; height: 0; background: var(--acid); box-shadow: 0 0 13px var(--acid); transition: height .2s; }
.nav-item svg { width: 19px; fill: none; stroke: currentColor; stroke-width: 1.3; stroke-linecap: round; stroke-linejoin: round; }
.nav-item:first-child svg { fill: currentColor; stroke: none; }
.nav-item i { color: #405a54; font: 8px var(--mono); font-style: normal; }
.nav-item:hover { color: var(--text); background: rgba(255,255,255,.025); }
.nav-item.active { border-color: rgba(213,255,87,.14); color: var(--acid); background: linear-gradient(90deg, rgba(213,255,87,.09), transparent); }
.nav-item.active::before { height: 23px; }
.sidebar-footer { display: grid; gap: 18px; margin-top: auto; }
.system-chip { display: flex; align-items: center; gap: 11px; padding: 14px; border: 1px solid var(--line); background: rgba(255,255,255,.015); }
.system-chip div { display: grid; gap: 3px; }
.system-chip small { color: #5f7972; font: 8px var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.system-chip strong { color: #b6cbc5; font-size: 10px; font-weight: 550; }
.pulse-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 12px rgba(97,239,202,.7); animation: pulse 2.2s ease-in-out infinite; }
.pulse-dot.warning { background: var(--orange); box-shadow: 0 0 12px rgba(255,152,102,.7); }
.logout-button { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 8px 13px; border: 0; color: #59746c; background: transparent; font-size: 10px; text-align: left; transition: color .2s; }
.logout-button:hover { color: var(--text); }
.logout-button svg { width: 16px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.mobile-bar { display: none; }
.main-stage { position: relative; z-index: 2; width: calc(100% - var(--sidebar)); min-height: 100vh; margin-left: var(--sidebar); padding: 0 clamp(28px, 4.5vw, 78px); }
.topline { display: flex; align-items: center; justify-content: space-between; min-height: 86px; border-bottom: 1px solid var(--line); }
.breadcrumb-line { display: flex; align-items: center; gap: 11px; color: #6e8982; font: 9px var(--mono); letter-spacing: .13em; }
.breadcrumb-line span { color: var(--mint); }.breadcrumb-line i { color: #38514b; font-style: normal; }
.topline-meta { display: flex; align-items: center; gap: 21px; color: #739088; font: 9px var(--mono); letter-spacing: .1em; }
.live-indicator { display: flex; align-items: center; gap: 7px; }.live-indicator i { width: 5px; height: 5px; border-radius: 50%; background: var(--acid); box-shadow: 0 0 9px var(--acid); }
.app-footer { display: flex; justify-content: space-between; margin-top: 75px; padding: 24px 0 28px; border-top: 1px solid var(--line); color: #405c55; font: 8px var(--mono); letter-spacing: .12em; }

/* Dashboard */
.reveal { animation: reveal .65s both; }
.hero-section { padding: clamp(58px, 8vw, 116px) 0 48px; }
.hero-kicker { display: flex; align-items: center; gap: 13px; margin-bottom: 28px; color: var(--mint); font: 9px var(--mono); letter-spacing: .16em; }
.hero-kicker span { display: grid; place-items: center; min-width: 26px; height: 20px; padding: 0 5px; border: 1px solid rgba(97,239,202,.25); font-size: 8px; }
.display-title { margin: 0; font-size: clamp(50px, 6.2vw, 99px); font-weight: 320; line-height: .91; letter-spacing: -.068em; }
.display-title em { color: var(--acid); font-family: Georgia, serif; font-weight: 400; }
.hero-description { max-width: 380px; margin: 0 0 6px auto; color: var(--muted); font-size: 13px; line-height: 1.75; }
.setup-banner { display: flex; align-items: center; gap: 14px; margin: 0 0 19px; padding: 13px 16px; border: 1px solid rgba(255,152,102,.25); color: #f9d0bc; background: linear-gradient(90deg, rgba(255,152,102,.1), rgba(255,152,102,.025)); }
.setup-banner:hover { color: #fff; border-color: rgba(255,152,102,.45); }
.setup-banner .setup-icon { display: grid; place-items: center; width: 27px; height: 27px; border: 1px solid rgba(255,152,102,.5); border-radius: 50%; font: 11px var(--mono); }
.setup-banner div { display: grid; gap: 3px; }.setup-banner strong { font-size: 11px; }.setup-banner small { color: #ad8e7e; font-size: 10px; }
.setup-action { margin-left: auto; font: 9px var(--mono); letter-spacing: .08em; text-transform: uppercase; }.setup-action b { color: var(--orange); }
.search-console { border: 1px solid var(--line-bright); background: linear-gradient(130deg, rgba(21,44,40,.78), rgba(7,18,16,.83)); box-shadow: 0 22px 80px rgba(0,0,0,.18); }
.console-head,
.console-foot { display: flex; justify-content: space-between; align-items: center; color: #617c74; font: 8px var(--mono); letter-spacing: .13em; text-transform: uppercase; }
.console-head { padding: 14px 18px; border-bottom: 1px solid var(--line); }.console-head div { display: flex; align-items: center; gap: 9px; }
.console-foot { padding: 12px 18px; border-top: 1px solid var(--line); }.console-foot span:first-child { display: flex; align-items: center; gap: 8px; }.console-foot i { display: block; width: 5px; height: 5px; border: 1px solid var(--muted); transform: rotate(45deg); }
.search-form { display: grid; grid-template-columns: 1fr 140px 190px; gap: 0; padding: 15px; }
.query-field { position: relative; min-width: 0; }.query-field svg { position: absolute; left: 22px; top: 50%; width: 22px; transform: translateY(-50%); fill: none; stroke: var(--acid); stroke-width: 1.4; }
.query-field input { width: 100%; height: 67px; padding: 0 80px 0 62px; border: 1px solid var(--line); border-radius: 0; outline: 0; color: var(--text); background: rgba(3,10,9,.48); font-size: 15px; transition: border .2s, background .2s; }
.query-field input:focus { border-color: rgba(213,255,87,.58); background: rgba(3,10,9,.7); box-shadow: none; }.query-field input::placeholder { color: #547069; }
.query-field > span { position: absolute; right: 18px; top: 50%; color: #3f5d55; font: 8px var(--mono); letter-spacing: .12em; transform: translateY(-50%); }
.limit-field { position: relative; display: grid; align-content: center; padding: 0 18px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(3,10,9,.48); }
.limit-field > span { color: #58736c; font: 8px var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.limit-field select { width: 100%; padding: 4px 0; border: 0; outline: 0; color: var(--text); background: transparent; font-size: 12px; cursor: pointer; }.limit-field select option { color: var(--text); background: var(--ink-3); }
.scan-button { height: 67px; border: 0; padding-inline: 25px; }.scan-button:disabled { cursor: not-allowed; opacity: .35; transform: none; }
.stats-grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 14px; margin-top: 16px; }
.stat-card { position: relative; min-height: 190px; padding: 25px; overflow: hidden; border: 1px solid var(--line); background: rgba(10,24,22,.58); }
.stat-primary { color: var(--ink); background: var(--acid); border-color: var(--acid); }.stat-index { position: absolute; right: 19px; top: 16px; font: 8px var(--mono); opacity: .42; }
.stat-value { margin-top: 25px; font-size: clamp(38px, 4vw, 58px); font-weight: 400; line-height: 1; letter-spacing: -.055em; }.stat-label { margin-top: 10px; color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }.stat-primary .stat-label { color: rgba(6,16,15,.6); }
.stat-graph { position: absolute; right: 19px; bottom: 18px; display: flex; align-items: flex-end; gap: 3px; height: 42px; }.stat-graph i { display: block; width: 4px; background: rgba(6,16,15,.32); }.stat-graph i:nth-child(1){height:25%}.stat-graph i:nth-child(2){height:55%}.stat-graph i:nth-child(3){height:40%}.stat-graph i:nth-child(4){height:75%}.stat-graph i:nth-child(5){height:62%}.stat-graph i:nth-child(6){height:88%}.stat-graph i:nth-child(7){height:100%}
.stat-orbit { position: absolute; width: 92px; height: 92px; right: -19px; bottom: -25px; border: 1px solid rgba(97,239,202,.17); border-radius: 50%; }.stat-orbit::before { content:""; position:absolute; inset:18px; border:1px dashed rgba(97,239,202,.17); border-radius:50%; }.stat-orbit i { position:absolute; width:5px; height:5px; left:9px; top:17px; border-radius:50%; background:var(--mint); box-shadow:0 0 8px var(--mint); }
.stat-bars { position:absolute; right:23px; bottom:21px; display:flex; gap:6px; transform:skew(-18deg); }.stat-bars i { width:7px; height:36px; background:#24423b; }.stat-bars i:nth-child(2){height:26px;margin-top:10px}.stat-bars i:nth-child(3){height:16px;margin-top:20px}.stat-bars i:nth-child(4){height:7px;margin-top:29px;background:var(--acid)}
.dashboard-lower { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(270px, .65fr); gap: 15px; margin-top: 16px; }
.recent-panel,
.protocol-panel,
.archive-panel,
.settings-card,
.settings-info { border: 1px solid var(--line); background: rgba(9,23,21,.64); }
.recent-panel { padding: 29px; }.section-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:22px; }.section-head > div { display:flex; align-items:center; gap:13px; }.section-head div > span { color:var(--mint); font:8px var(--mono); }.section-head h2 { margin:0; font-size:16px; font-weight:500; }.section-head > a { color:#6f8a82; font:8px var(--mono); letter-spacing:.09em; text-transform:uppercase; }.section-head > a:hover { color:var(--acid); }.section-head b { color:var(--acid); }
.runs-list { display:grid; }.run-row { display:grid; grid-template-columns:35px 1fr 80px 72px 18px; align-items:center; gap:12px; min-height:66px; border-top:1px solid var(--line); transition:background .2s, padding .2s; }.run-row:hover { padding-inline:9px; background:rgba(255,255,255,.02); }.run-number { color:#49635d; font:8px var(--mono); }.run-query { display:grid; gap:5px; min-width:0; }.run-query strong { overflow:hidden; color:#c8d9d4; font-size:11px; font-weight:550; text-overflow:ellipsis; white-space:nowrap; }.run-query small,.run-count small { color:#577069; font:8px var(--mono); }.run-count { display:grid; gap:4px; }.run-count strong { font-size:14px; font-weight:500; }.run-arrow { color:var(--acid); font-size:13px; }
.status-pill { display:inline-flex; justify-content:center; padding:5px 7px; border:1px solid rgba(97,239,202,.2); color:var(--mint); background:rgba(97,239,202,.04); font:7px var(--mono); letter-spacing:.08em; text-transform:uppercase; }.status-failed { border-color:rgba(255,110,121,.25)!important; color:#ff8e97!important; background:rgba(255,110,121,.04)!important; }.status-running,.status-pending { border-color:rgba(255,152,102,.25)!important; color:var(--orange)!important; }
.protocol-panel { position:relative; min-height:355px; padding:27px; overflow:hidden; background:linear-gradient(150deg,#132a26,#091512); }.protocol-code { color:#57726b; font:8px var(--mono); letter-spacing:.12em; }.protocol-visual { position:relative; width:145px; height:100px; margin:22px auto 5px; }.protocol-visual span,.protocol-visual i,.protocol-visual b { position:absolute; left:50%; top:50%; border:1px solid rgba(97,239,202,.2); border-radius:50%; transform:translate(-50%,-50%); }.protocol-visual span { width:95px;height:95px; }.protocol-visual i { width:61px;height:61px; }.protocol-visual b { width:25px;height:25px;background:radial-gradient(circle,var(--acid),rgba(213,255,87,.05));box-shadow:0 0 32px rgba(213,255,87,.2); }.protocol-panel h3 { margin:10px 0 13px; font-size:31px; font-weight:350; line-height:.96; letter-spacing:-.045em; }.protocol-panel p { margin:0;color:var(--muted);font-size:10px;line-height:1.65; }.protocol-footer { display:flex;justify-content:space-between;margin-top:22px;padding-top:14px;border-top:1px solid var(--line);color:#668179;font:7px var(--mono);letter-spacing:.1em; }.protocol-footer strong { color:var(--acid);font-weight:500; }

/* Shared secondary pages */
.page-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; padding:73px 0 46px; }.page-heading .hero-kicker { margin-bottom:21px; }.page-heading h1,.run-heading h1 { margin:0; font-size:clamp(44px,5vw,76px);font-weight:350;letter-spacing:-.06em;line-height:.96; }.page-heading p { max-width:520px;margin:17px 0 0;color:var(--muted);font-size:12px;line-height:1.6; }
.outline-action { color:var(--text);background:transparent;border-color:var(--line-bright);white-space:nowrap; }.outline-action:hover { color:var(--ink);background:var(--acid);border-color:var(--acid); }.archive-head { display:flex;justify-content:space-between;padding:15px 20px;border-bottom:1px solid var(--line);color:#537068;font:8px var(--mono);letter-spacing:.12em; }.archive-list { padding:0 20px; }.archive-row { display:grid;grid-template-columns:70px minmax(220px,1fr) 100px 100px 80px 20px;align-items:center;gap:18px;min-height:88px;border-bottom:1px solid var(--line);transition:padding .2s,background .2s; }.archive-row:last-child{border-bottom:0}.archive-row:hover{padding-inline:12px;background:rgba(255,255,255,.018)}.archive-id{color:var(--mint);font:9px var(--mono)}.archive-main{display:grid;gap:6px;min-width:0}.archive-main strong{overflow:hidden;font-size:13px;font-weight:550;text-overflow:ellipsis;white-space:nowrap}.archive-main span,.archive-metric small{color:#5a746d;font:8px var(--mono)}.archive-metric{display:grid;gap:6px}.archive-metric strong{font-size:17px;font-weight:400}.empty-state{display:grid;place-items:center;min-height:350px;padding:50px;text-align:center}.empty-state>span{display:grid;place-items:center;width:63px;height:63px;border:1px solid var(--line-bright);border-radius:50%;color:var(--acid);font:19px var(--mono)}.empty-state h3{margin:18px 0 4px;font-size:19px;font-weight:450}.empty-state p{margin:0;color:var(--muted);font-size:11px}.empty-state a{margin-top:18px;color:var(--acid);font:9px var(--mono)}.empty-state.compact{min-height:240px}.empty-state.compact p{margin-top:14px}.pagination-axis{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:27px}.pagination-axis a{display:grid;place-items:center;width:39px;height:39px;border:1px solid var(--line-bright);color:var(--acid);transition:.2s}.pagination-axis a:hover{border-color:var(--acid);background:rgba(213,255,87,.06)}.pagination-axis span{color:#7e9991;font:9px var(--mono);letter-spacing:.1em}.pagination-axis i{margin:0 7px;color:#405c55;font-style:normal}

/* Results */
.run-heading { padding:48px 0 42px; }.back-link{display:inline-block;margin-bottom:37px;color:#66827a;font:8px var(--mono);letter-spacing:.1em;text-transform:uppercase}.back-link:hover{color:var(--acid)}.run-heading-grid{display:grid;grid-template-columns:1fr 145px;align-items:end;gap:30px}.run-heading h1{max-width:920px;overflow-wrap:anywhere}.run-meta{display:flex;align-items:center;gap:11px;margin-top:21px;color:#637e76;font:8px var(--mono);letter-spacing:.08em;text-transform:uppercase}.run-meta i{width:3px;height:3px;border-radius:50%;background:#39534c}.result-ring{position:relative;width:130px;height:130px;margin-left:auto;display:grid;place-items:center}.result-ring>div{display:grid;position:absolute;text-align:center}.result-ring strong{font-size:26px;font-weight:400}.result-ring span{color:#5b766e;font:7px var(--mono);letter-spacing:.09em;text-transform:uppercase}.result-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.result-ring circle{fill:none;stroke:var(--line);stroke-width:1}.result-ring .ring-progress{stroke:var(--acid);stroke-width:2;stroke-dasharray:220 278;filter:drop-shadow(0 0 4px rgba(213,255,87,.5))}.result-ring.status-failed .ring-progress{stroke:var(--danger);stroke-dasharray:55 278}.error-banner{display:flex;align-items:center;gap:16px;padding:17px 19px;border:1px solid rgba(255,110,121,.26);background:rgba(255,110,121,.05)}.error-banner>span{display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(255,110,121,.45);border-radius:50%;color:var(--danger)}.error-banner div{display:grid;gap:3px}.error-banner strong{font-size:12px}.error-banner p{margin:0;color:#ac7479;font-size:10px}.error-banner a{margin-left:auto;color:#ffabb1;font:8px var(--mono);text-transform:uppercase}.results-toolbar{display:flex;align-items:flex-end;justify-content:space-between;margin-top:36px;padding-bottom:20px;border-bottom:1px solid var(--line)}.eyebrow{color:var(--mint);font:8px var(--mono);letter-spacing:.14em}.results-toolbar h2{margin:8px 0 0;font-size:29px;font-weight:400}.results-toolbar h2 small{color:#5e7871;font-size:10px;font-weight:400}.export-button{min-height:44px;color:var(--text);background:transparent;border-color:var(--line-bright);font-size:9px}.export-button svg{width:16px;fill:none;stroke:currentColor;stroke-width:1.5}.export-button:hover{color:var(--ink);background:var(--acid)}.organization-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:15px}.organization-card{position:relative;display:flex;flex-direction:column;min-height:340px;padding:20px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(16,34,31,.72),rgba(7,17,15,.8));transition:transform .25s,border-color .25s}.organization-card:hover{transform:translateY(-4px);border-color:rgba(213,255,87,.3)}.org-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.org-position{color:#48635c;font:8px var(--mono)}.org-category{max-width:66%;overflow:hidden;padding:5px 7px;border:1px solid rgba(97,239,202,.17);color:var(--mint);font:7px var(--mono);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.organization-card h3{margin:23px 0 11px;font-size:19px;font-weight:450;line-height:1.15;letter-spacing:-.025em}.org-address{display:flex;align-items:flex-start;gap:8px;min-height:37px;margin:0;color:#718b84;font-size:10px;line-height:1.5}.org-address svg{flex:none;width:13px;margin-top:1px;fill:none;stroke:#547168;stroke-width:1.4}.org-contacts{display:grid;margin-top:19px;border-top:1px solid var(--line)}.org-contacts>a,.no-contact{display:grid;grid-template-columns:23px 1fr auto;align-items:center;gap:8px;min-height:39px;border-bottom:1px solid var(--line);color:#a9beb8;font-size:10px}.org-contacts>a:hover{color:var(--acid)}.org-contacts>a>span,.no-contact>span{color:#56736b;font:8px var(--mono)}.org-contacts strong{overflow:hidden;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.org-contacts i{color:var(--acid);font-style:normal}.no-contact{color:#516a64}.org-hours{display:flex;align-items:flex-start;gap:8px;margin-top:14px;color:#647f77;font-size:9px;line-height:1.4}.org-hours .pulse-dot{flex:none;width:5px;height:5px;margin-top:4px}.org-card-footer{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding-top:18px;color:#405c55;font:7px var(--mono);letter-spacing:.04em}.org-card-footer a{color:#6d8981}.org-card-footer a:hover{color:var(--acid)}

/* Configuration */
.config-state{display:flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid rgba(255,152,102,.23);color:var(--orange);font:8px var(--mono);letter-spacing:.08em;text-transform:uppercase}.config-state.online{border-color:rgba(97,239,202,.2);color:var(--mint)}.settings-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:15px}.settings-card{padding:31px}.settings-card-head{display:flex;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid var(--line);color:#58746c;font:8px var(--mono);letter-spacing:.1em}.settings-card-head i{color:var(--mint);font-style:normal}.settings-card h2{margin:40px 0 14px;font-size:30px;font-weight:400}.settings-card>p{max-width:610px;margin:0;color:var(--muted);font-size:11px;line-height:1.65}.settings-form{max-width:610px;margin-top:42px}.settings-form .access-button{max-width:280px;margin-top:34px}.environment-note{display:flex;align-items:center;gap:14px;margin-top:35px;padding:17px;border:1px solid rgba(97,239,202,.18);background:rgba(97,239,202,.035)}.environment-note>span{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(97,239,202,.35);border-radius:50%;color:var(--mint);font:10px var(--mono)}.environment-note div{display:grid;gap:3px}.environment-note strong{font-size:11px}.environment-note small{color:var(--muted);font-size:9px}.settings-info{padding:31px;background:linear-gradient(150deg,rgba(18,40,36,.8),rgba(7,17,15,.82))}.info-orbit{position:relative;width:100px;height:100px;margin:0 0 22px}.info-orbit span,.info-orbit i,.info-orbit b{position:absolute;left:50%;top:50%;border:1px solid rgba(97,239,202,.2);border-radius:50%;transform:translate(-50%,-50%)}.info-orbit span{width:100px;height:100px;border-style:dashed}.info-orbit i{width:67px;height:67px}.info-orbit b{width:12px;height:12px;border:0;background:var(--acid);box-shadow:0 0 22px var(--acid)}.settings-info h3{margin:0 0 21px;font-size:22px;font-weight:400}.settings-info ol{display:grid;gap:0;margin:0;padding:0;list-style:none}.settings-info li{display:grid;grid-template-columns:28px 1fr;gap:13px;padding:15px 0;border-top:1px solid var(--line)}.settings-info li>span{color:var(--mint);font:8px var(--mono)}.settings-info li div{display:grid;gap:5px}.settings-info strong{font-size:10px}.settings-info p{margin:0;color:#637e76;font-size:9px;line-height:1.5}

/* Transient UI */
.toast-alert{position:relative;display:flex;align-items:center;gap:12px;margin:18px 0 -20px;padding:13px 43px 13px 15px;border-radius:0;color:#c4d6d0;background:rgba(15,34,31,.95);border:1px solid var(--line-bright);font-size:10px}.toast-alert.alert-success{border-color:rgba(97,239,202,.28)}.toast-alert.alert-danger{border-color:rgba(255,110,121,.3);color:#ffb3b9}.toast-alert.alert-warning{border-color:rgba(255,152,102,.3);color:#ffd0b8}.alert-orb{flex:none;width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 11px var(--mint)}.alert-danger .alert-orb{background:var(--danger);box-shadow:0 0 11px var(--danger)}.alert-warning .alert-orb{background:var(--orange);box-shadow:0 0 11px var(--orange)}.alert-close{position:absolute;right:8px;top:50%;width:28px;height:28px;border:0;color:#67827a;background:transparent;font-size:18px;transform:translateY(-50%)}.processing-screen{position:fixed;z-index:100;inset:0;display:grid;place-content:center;place-items:center;gap:13px;visibility:hidden;opacity:0;background:rgba(3,9,8,.92);backdrop-filter:blur(18px);transition:.25s}.processing-screen.active{visibility:visible;opacity:1}.processing-core{position:relative;width:105px;height:105px;margin-bottom:15px}.processing-core span{position:absolute;inset:0;border:1px solid rgba(97,239,202,.25);border-radius:50%;animation:loaderSpin 3s linear infinite}.processing-core span:nth-child(2){inset:14px;border-style:dashed;animation-direction:reverse;animation-duration:5s}.processing-core span:nth-child(3){inset:39px;border:0;background:var(--acid);box-shadow:0 0 35px rgba(213,255,87,.6)}.processing-screen strong{font-size:15px;font-weight:450}.processing-screen small{color:var(--muted);font-size:10px}.processing-line{width:230px;height:1px;margin-top:13px;overflow:hidden;background:var(--line)}.processing-line i{display:block;width:45%;height:100%;background:var(--acid);animation:loadingLine 1.6s ease-in-out infinite}.error-page{display:grid;grid-template-columns:minmax(230px,.7fr) 1fr;align-items:center;min-height:70vh;gap:60px}.error-code,.fatal-code{color:transparent;font-size:clamp(130px,18vw,270px);font-weight:800;line-height:1;-webkit-text-stroke:1px rgba(213,255,87,.24)}.error-page>div:last-child>span,.fatal-shell main>span{color:var(--mint);font:9px var(--mono);letter-spacing:.15em}.error-page h1{max-width:600px;margin:20px 0 12px;font-size:42px;font-weight:350}.error-page p{margin:0 0 27px;color:var(--muted)}.error-page .access-button{width:230px}.fatal-shell{display:grid;place-items:center;padding:25px;background:radial-gradient(circle at center,#102520,var(--ink) 65%)}.fatal-shell main{text-align:center}.fatal-code{font-size:clamp(100px,25vw,260px)}.fatal-shell h1{margin:-20px 0 12px;font-size:clamp(28px,5vw,48px);font-weight:350}.fatal-shell p{color:var(--muted);font-size:12px}.fatal-shell a{display:inline-block;margin-top:20px;color:var(--acid);font:9px var(--mono);letter-spacing:.09em;text-transform:uppercase}

@keyframes sphereFloat { 0%,100%{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(0,-13px,0) rotate(2deg)} }
@keyframes ringSpin { to{transform:rotate(360deg)} }
@keyframes coreScan { 0%{transform:rotate(-8deg) translateX(-20%)}100%{transform:rotate(-8deg) translateX(20%)} }
@keyframes pointPulse { from{transform:scale(.2);opacity:1}to{transform:scale(2.1);opacity:0} }
@keyframes pulse { 0%,100%{opacity:1}50%{opacity:.35} }
@keyframes reveal { from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none} }
@keyframes loaderSpin { to{transform:rotate(360deg)} }
@keyframes loadingLine { 0%{transform:translateX(-110%)}100%{transform:translateX(340%)} }

@media (max-width: 1180px) {
    :root{--sidebar:230px}.organization-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-row{grid-template-columns:60px minmax(170px,1fr) 80px 80px 70px 15px}.stats-grid{grid-template-columns:1.2fr 1fr 1fr}.login-layout{grid-template-columns:1fr 440px}.signal-sphere{left:1%}
}

@media (max-width: 900px) {
    :root{--sidebar:270px}.sidebar{left:calc(-1 * var(--sidebar));transition:left .3s}.sidebar.open{left:0;box-shadow:25px 0 70px rgba(0,0,0,.45)}.mobile-bar{position:fixed;z-index:21;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;height:66px;padding:0 23px;border-bottom:1px solid var(--line);background:rgba(5,14,13,.88);backdrop-filter:blur(20px)}.mobile-bar .brand-name{font-size:17px}.menu-toggle{display:grid;gap:6px;padding:10px;border:0;background:transparent}.menu-toggle span{display:block;width:23px;height:1px;background:var(--text)}.main-stage{width:100%;margin-left:0;padding:66px 24px 0}.grid-plane{left:0}.topline{min-height:64px}.login-layout{grid-template-columns:1fr}.login-visual{display:none}.login-panel{min-height:100vh;padding:40px 28px}.login-panel-inner{width:min(100%,480px)}.login-brand{margin-bottom:70px}.dashboard-lower{grid-template-columns:1fr}.protocol-panel{min-height:auto}.stats-grid{grid-template-columns:1fr 1fr}.stat-primary{grid-column:span 2}.archive-row{grid-template-columns:55px 1fr 85px 72px 17px}.archive-row .archive-metric:first-of-type{display:none}.settings-layout{grid-template-columns:1fr}.error-page{grid-template-columns:1fr;gap:0}.error-code{font-size:150px}
}

@media (max-width: 640px) {
    .main-stage{padding-inline:16px}.topline-meta .live-indicator{display:none}.breadcrumb-line{font-size:7px}.hero-section{padding:48px 0 35px}.display-title{font-size:46px}.hero-description{margin-top:24px}.search-form{grid-template-columns:1fr;padding:10px}.query-field input{height:62px;padding-right:25px}.query-field>span{display:none}.limit-field{height:53px;border:1px solid var(--line);border-top:0}.scan-button{height:58px}.console-foot{gap:10px}.console-foot span:last-child{display:none}.stats-grid{grid-template-columns:1fr}.stat-primary{grid-column:auto}.stat-card{min-height:150px}.dashboard-lower{margin-top:12px}.recent-panel{padding:20px 14px}.run-row{grid-template-columns:25px 1fr 62px 16px}.run-row .status-pill{display:none}.protocol-panel{padding:22px}.page-heading{align-items:flex-start;flex-direction:column;padding:53px 0 35px}.page-heading h1,.run-heading h1{font-size:43px}.outline-action{min-height:48px}.archive-list{padding:0 13px}.archive-head span:last-child{display:none}.archive-row{grid-template-columns:1fr 66px 16px;min-height:82px;gap:10px}.archive-id,.archive-row .archive-metric,.archive-row .status-pill{display:none}.run-heading-grid{grid-template-columns:1fr}.result-ring{display:none}.run-meta{flex-wrap:wrap}.organization-grid{grid-template-columns:1fr}.organization-card{min-height:320px}.results-toolbar{align-items:flex-start;flex-direction:column;gap:17px}.settings-card,.settings-info{padding:22px}.settings-card h2{margin-top:28px}.settings-form .access-button{max-width:none}.setup-banner{align-items:flex-start}.setup-action{display:none}.error-banner{align-items:flex-start;flex-wrap:wrap}.error-banner a{width:100%;margin-left:48px}.app-footer{gap:15px}.app-footer span:last-child{text-align:right}.login-panel{padding:29px 24px}.login-brand{margin-bottom:60px}.login-panel h2{font-size:44px}.login-footer{margin-top:40px}.toast-alert{margin-top:12px}
}

@media (prefers-reduced-motion: reduce) {
    *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
