
/* GHFF Operations v8 */
.ops-subnav{position:sticky;top:58px;z-index:86;display:flex;gap:4px;overflow:auto;padding:8px 12px;border-bottom:1px solid var(--line);background:rgba(239,237,230,.96);backdrop-filter:blur(16px)}.ops-subnav a{white-space:nowrap;border:1px solid transparent;border-radius:999px;padding:7px 10px;font-size:8px;letter-spacing:.13em;text-transform:uppercase}.ops-subnav a:hover,.ops-subnav a.active{border-color:var(--ink);background:var(--ink);color:#fff}
.ops-hero{min-height:72svh;background:#050505;color:#fff;padding:clamp(120px,15vw,190px) var(--pad) 45px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.ops-hero:after{content:"OPS";position:absolute;right:-3vw;top:18%;font-size:clamp(150px,29vw,430px);font-weight:900;letter-spacing:-.09em;color:rgba(255,255,255,.035)}.ops-hero h1{position:relative;z-index:1;margin:0;font-size:clamp(70px,15vw,205px);line-height:.73;letter-spacing:-.085em;text-transform:uppercase}.ops-hero h1 span{color:#777}.ops-hero-foot{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end}.ops-hero-foot p{font-size:clamp(18px,2vw,28px);line-height:1.12;max-width:720px;margin:0}.ops-live{border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:9px 12px;font-size:9px;text-transform:uppercase;letter-spacing:.14em}.ops-live i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#fff;margin-right:7px;animation:opsPulse 1.8s infinite}@keyframes opsPulse{50%{opacity:.25}}
.ops-metrics{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.ops-metric{min-height:150px;padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.ops-metric strong{font-size:clamp(38px,5vw,76px);letter-spacing:-.07em;line-height:.8}.ops-metric span{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}
.ops-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.ops-card{min-height:270px;padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;transition:.2s}.ops-card:hover{background:var(--ink);color:#fff}.ops-card small{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.ops-card:hover small{color:#aaa}.ops-card b{font-size:clamp(28px,3.4vw,52px);letter-spacing:-.055em;line-height:.9;text-transform:uppercase}.ops-card p{font-size:13px;line-height:1.5;max-width:360px;margin:0}
.ops-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.ops-search{border:0;border-bottom:1px solid var(--ink);background:transparent;min-width:min(350px,100%);padding:9px 2px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;outline:0}.ops-table{width:100%;border-collapse:collapse;border-top:1px solid var(--line)}.ops-table th,.ops-table td{text-align:left;border-bottom:1px solid var(--line);padding:13px 10px;font-size:11px;vertical-align:top}.ops-table th{font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:500}.status-pill{display:inline-flex;border:1px solid currentColor;border-radius:999px;padding:4px 7px;font-size:8px;text-transform:uppercase;letter-spacing:.12em}.status-approved,.status-synced,.status-resolved{background:#050505;color:#fff}.status-pending,.status-open,.status-review{background:transparent;color:#050505}
.ops-panel{border:1px solid var(--line);padding:22px}.ops-panel h2{font-size:clamp(28px,3.5vw,52px);letter-spacing:-.055em;text-transform:uppercase;margin:0 0 18px}.ops-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ops-three{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ops-note{font-size:11px;color:var(--muted);line-height:1.55}.ops-actions{display:flex;gap:7px;flex-wrap:wrap}
.inbox-layout{display:grid;grid-template-columns:minmax(270px,.38fr) 1fr;border:1px solid var(--line);min-height:620px}.thread-list{border-right:1px solid var(--line);overflow:auto}.thread-item{width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;padding:17px;display:block}.thread-item.active,.thread-item:hover{background:var(--ink);color:#fff}.thread-item b{display:block;font-size:16px}.thread-item small{font-size:9px;text-transform:uppercase;letter-spacing:.1em}.thread-pane{display:flex;flex-direction:column;min-width:0}.message-stream{flex:1;padding:22px;overflow:auto;display:flex;flex-direction:column;gap:12px}.message{max-width:72%;padding:12px 14px;border:1px solid var(--line);font-size:13px;line-height:1.45}.message.mine{align-self:flex-end;background:var(--ink);color:#fff}.message time{display:block;margin-top:7px;font-size:8px;opacity:.55;text-transform:uppercase}.composer{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border-top:1px solid var(--line)}.composer textarea{resize:none;min-height:48px;border:1px solid var(--line);background:transparent;padding:10px}
.notification-list{border-top:1px solid var(--line)}.notification{display:grid;grid-template-columns:100px 1fr auto;gap:16px;padding:17px 0;border-bottom:1px solid var(--line);align-items:start}.notification.unread{font-weight:700}.notification-type{font-size:8px;text-transform:uppercase;letter-spacing:.13em}.notification h3{margin:0 0 5px;font-size:20px;letter-spacing:-.03em}.notification p{margin:0;font-size:12px;color:var(--muted)}
.badge-pass{max-width:430px;min-height:250px;border:1px solid var(--ink);padding:22px;display:flex;flex-direction:column;justify-content:space-between;background:#fff}.badge-pass strong{font-size:42px;line-height:.85;letter-spacing:-.06em;text-transform:uppercase}.badge-code{font-family:ui-monospace,monospace;font-size:12px;letter-spacing:.12em}
.scanner{border:1px solid var(--ink);min-height:360px;display:grid;place-items:center;position:relative;overflow:hidden;background:#111;color:#fff}.scanner video{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.scanner-frame{width:min(70%,280px);aspect-ratio:1;border:2px solid #fff;position:relative;z-index:2}.scanner-frame:before,.scanner-frame:after{content:"";position:absolute;left:10%;right:10%;height:1px;background:#fff}.scanner-frame:before{top:50%}.scanner-frame:after{top:52%;opacity:.25}.offline-queue{border:1px solid var(--line);padding:14px;font-size:11px}
.analytics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.chart-card{border:1px solid var(--line);padding:20px;min-height:300px}.chart-card h3{margin:0 0 24px;font-size:20px;text-transform:uppercase}.bar-row{display:grid;grid-template-columns:140px 1fr 50px;gap:10px;align-items:center;margin:12px 0;font-size:10px}.bar-track{height:10px;background:var(--paper-2);overflow:hidden}.bar-fill{height:100%;background:var(--ink)}
.admin-gate{max-width:680px;margin:auto;border:1px solid var(--ink);padding:26px}.admin-gate h2{font-size:clamp(38px,6vw,72px);letter-spacing:-.065em;text-transform:uppercase;margin:0 0 18px}.admin-status{display:flex;gap:8px;align-items:center;font-size:9px;text-transform:uppercase;letter-spacing:.13em}.admin-status i{width:8px;height:8px;border-radius:50%;background:#999}.admin-status.ok i{background:#050505}
.audit-row{display:grid;grid-template-columns:150px 170px 1fr 180px;gap:12px;border-bottom:1px solid var(--line);padding:12px 0;font-size:10px}.audit-row code{font-size:9px;word-break:break-all}.audit-head{font-size:8px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}
@media(max-width:900px){.ops-metrics{grid-template-columns:repeat(2,1fr)}.ops-grid{grid-template-columns:1fr 1fr}.ops-two,.analytics-grid{grid-template-columns:1fr}.ops-three{grid-template-columns:1fr}.inbox-layout{grid-template-columns:1fr}.thread-list{border-right:0;border-bottom:1px solid var(--line);max-height:260px}.notification{grid-template-columns:1fr}.audit-row{grid-template-columns:1fr 1fr}.audit-row>*:nth-child(n+3){grid-column:1/-1}.ops-hero-foot{grid-template-columns:1fr}}
@media(max-width:560px){.ops-grid,.ops-metrics{grid-template-columns:1fr}.ops-table{display:block;overflow:auto}.message{max-width:88%}}
