@charset "UTF-8";:root{--ff-color-primary: #1c6e45;--ff-color-primary-hover: #175c39;--ff-color-primary-active: #114b2f;--ff-color-primary-contrast: #ffffff;--ff-color-primary-bg: #e9f3ed;--ff-color-primary-bg-hover: #dcebe2;--ff-color-primary-border: #bedccb;--ff-color-primary-text: #13573a;--ff-color-canvas: #f4f5f7;--ff-color-surface: #ffffff;--ff-color-surface-2: #fafbfc;--ff-color-surface-sunken: #eef0f3;--ff-color-border: #e6e8ec;--ff-color-border-strong: #d3d7dd;--ff-color-overlay: rgba(18, 21, 26, .42);--ff-color-text: #181b21;--ff-color-text-secondary: #586069;--ff-color-text-muted: #868e98;--ff-color-text-inverse: #ffffff;--ff-color-success: #1a7f4b;--ff-color-success-bg: #e4f4ea;--ff-color-success-border: #bde3cc;--ff-color-warning: #9a6a12;--ff-color-warning-icon: #cf960c;--ff-color-warning-bg: #fcefcf;--ff-color-warning-border: #f0dba6;--ff-color-danger: #b42318;--ff-color-danger-bg: #fcebe8;--ff-color-danger-border: #f3c9c2;--ff-color-danger-hover: #94170f;--ff-color-info: #2563c9;--ff-color-info-bg: #e9f0fd;--ff-color-info-border: #c6daf8;--ff-color-neutral: #5f6772;--ff-color-neutral-bg: #eef0f3;--ff-color-neutral-border: #dde1e6;--ff-font-ui: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--ff-font-mono: "JetBrains Mono", ui-monospace, "SF Mono", "Menlo", "Consolas", monospace;--ff-text-xs: 12px;--ff-text-sm: 13px;--ff-text-base: 14px;--ff-text-md: 15px;--ff-text-lg: 16px;--ff-text-xl: 19px;--ff-text-2xl: 23px;--ff-text-3xl: 28px;--ff-text-display: 38px;--ff-leading-tight: 1.15;--ff-leading-snug: 1.35;--ff-leading-normal: 1.5;--ff-weight-regular: 400;--ff-weight-medium: 500;--ff-weight-semibold: 600;--ff-weight-bold: 700;--ff-tracking-caps: .06em;--ff-space-0: 0;--ff-space-1: 4px;--ff-space-2: 8px;--ff-space-3: 12px;--ff-space-4: 16px;--ff-space-5: 20px;--ff-space-6: 24px;--ff-space-7: 32px;--ff-space-8: 40px;--ff-space-9: 48px;--ff-space-10: 64px;--ff-radius-sm: 6px;--ff-radius-md: 8px;--ff-radius-lg: 12px;--ff-radius-xl: 16px;--ff-radius-pill: 999px;--ff-shadow-sm: 0 1px 2px rgba(18, 21, 26, .05), 0 1px 1px rgba(18, 21, 26, .03);--ff-shadow-md: 0 1px 3px rgba(18, 21, 26, .06), 0 6px 16px rgba(18, 21, 26, .06);--ff-shadow-lg: 0 12px 34px rgba(18, 21, 26, .13);--ff-focus-ring: 0 0 0 3px rgba(28, 110, 69, .32);--ff-focus-ring-danger: 0 0 0 3px rgba(180, 35, 24, .28);--ff-header-h: 56px;--ff-rail-w: 260px;--ff-rail-w-collapsed: 64px;--ff-control-h: 36px;--ff-control-h-sm: 30px;--ff-row-h: 48px;--ff-content-max: 1320px;--ff-transition: .14s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--ff-font-ui);font-size:var(--ff-text-base);line-height:var(--ff-leading-normal);color:var(--ff-color-text);background:var(--ff-color-canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"cv01","ss01"}h1,h2,h3,h4,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}::selection{background:var(--ff-color-primary-bg);color:var(--ff-color-primary-text)}.ops-tnum{font-variant-numeric:tabular-nums}.ops-mono{font-family:var(--ff-font-mono);font-feature-settings:normal}.ops-eyebrow{font-size:var(--ff-text-xs);font-weight:var(--ff-weight-semibold);letter-spacing:var(--ff-tracking-caps);text-transform:uppercase;color:var(--ff-color-text-muted)}.ops-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:focus{outline:none}:focus-visible{outline:none;box-shadow:var(--ff-focus-ring);border-radius:var(--ff-radius-sm)}*{scrollbar-width:thin;scrollbar-color:#cdd2d8 transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:#cdd2d8;border-radius:999px;border:3px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#b6bcc4;background-clip:padding-box}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.ops-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--ff-space-2);height:var(--ff-control-h);padding:0 var(--ff-space-4);border-radius:var(--ff-radius-md);border:1px solid transparent;font-size:var(--ff-text-base);font-weight:var(--ff-weight-medium);white-space:nowrap;cursor:pointer;transition:background var(--ff-transition),border-color var(--ff-transition),color var(--ff-transition),box-shadow var(--ff-transition);-webkit-user-select:none;user-select:none}.ops-btn:focus-visible{box-shadow:var(--ff-focus-ring)}.ops-btn svg{width:16px;height:16px;flex:none}.ops-btn--sm{height:var(--ff-control-h-sm);padding:0 var(--ff-space-3);font-size:var(--ff-text-sm)}.ops-btn--block{width:100%}.ops-btn--primary{background:var(--ff-color-primary);color:var(--ff-color-primary-contrast)}.ops-btn--primary:hover{background:var(--ff-color-primary-hover)}.ops-btn--primary:active{background:var(--ff-color-primary-active)}.ops-btn--secondary{background:var(--ff-color-surface);color:var(--ff-color-text);border-color:var(--ff-color-border-strong)}.ops-btn--secondary:hover{background:var(--ff-color-surface-2);border-color:#c4c9d0}.ops-btn--secondary:active{background:var(--ff-color-surface-sunken)}.ops-btn--ghost{background:transparent;color:var(--ff-color-text-secondary)}.ops-btn--ghost:hover{background:var(--ff-color-surface-sunken);color:var(--ff-color-text)}.ops-btn--danger{background:var(--ff-color-surface);color:var(--ff-color-danger);border-color:var(--ff-color-danger-border)}.ops-btn--danger:hover{background:var(--ff-color-danger-bg)}.ops-btn--danger:focus-visible{box-shadow:var(--ff-focus-ring-danger)}.ops-btn:disabled,.ops-btn[aria-disabled=true]{opacity:.5;pointer-events:none}.ops-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:var(--ff-control-h);height:var(--ff-control-h);border-radius:var(--ff-radius-md);border:1px solid transparent;background:transparent;color:var(--ff-color-text-secondary);cursor:pointer;transition:background var(--ff-transition),color var(--ff-transition)}.ops-iconbtn:hover{background:var(--ff-color-surface-sunken);color:var(--ff-color-text)}.ops-iconbtn:focus-visible{box-shadow:var(--ff-focus-ring)}.ops-iconbtn svg{width:18px;height:18px}.ops-pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:var(--ff-radius-pill);border:1px solid transparent;font-size:var(--ff-text-xs);font-weight:var(--ff-weight-semibold);white-space:nowrap;line-height:1}.ops-pill svg{width:13px;height:13px}.ops-pill .ops-dot{width:7px;height:7px;border-radius:50%;flex:none;background:currentColor}.ops-pill--success{background:var(--ff-color-success-bg);color:var(--ff-color-success);border-color:var(--ff-color-success-border)}.ops-pill--warning{background:var(--ff-color-warning-bg);color:var(--ff-color-warning);border-color:var(--ff-color-warning-border)}.ops-pill--danger{background:var(--ff-color-danger-bg);color:var(--ff-color-danger);border-color:var(--ff-color-danger-border)}.ops-pill--info{background:var(--ff-color-info-bg);color:var(--ff-color-info);border-color:var(--ff-color-info-border)}.ops-pill--neutral{background:var(--ff-color-neutral-bg);color:var(--ff-color-neutral);border-color:var(--ff-color-neutral-border)}.ops-pill--primary{background:var(--ff-color-primary-bg);color:var(--ff-color-primary-text);border-color:var(--ff-color-primary-border)}.ops-code{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--ff-radius-sm);background:var(--ff-color-surface-sunken);border:1px solid var(--ff-color-border);font-family:var(--ff-font-mono);font-size:var(--ff-text-xs);color:var(--ff-color-text-secondary);letter-spacing:.01em;white-space:nowrap}.ops-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--ff-radius-pill);background:var(--ff-color-surface-sunken);color:var(--ff-color-text-secondary);font-size:var(--ff-text-xs);font-weight:var(--ff-weight-semibold);font-variant-numeric:tabular-nums}.ops-count--accent{background:var(--ff-color-primary);color:#fff}.ops-count--warning{background:var(--ff-color-warning-bg);color:var(--ff-color-warning)}.ops-card{background:var(--ff-color-surface);border:1px solid var(--ff-color-border);border-radius:var(--ff-radius-lg);box-shadow:var(--ff-shadow-sm)}.ops-card__head{display:flex;align-items:center;gap:var(--ff-space-3);padding:var(--ff-space-4) var(--ff-space-5);border-bottom:1px solid var(--ff-color-border)}.ops-card__title{font-size:var(--ff-text-md);font-weight:var(--ff-weight-semibold)}.ops-card__meta{color:var(--ff-color-text-muted);font-size:var(--ff-text-sm)}.ops-card__head-text{flex:1;min-width:0}.ops-card__body{padding:var(--ff-space-5)}.ops-kpi{padding:var(--ff-space-5);display:flex;flex-direction:column;gap:var(--ff-space-3)}.ops-kpi__top{display:flex;align-items:center;gap:var(--ff-space-2);color:var(--ff-color-text-secondary);font-size:var(--ff-text-sm)}.ops-kpi__top svg{width:16px;height:16px;color:var(--ff-color-text-muted)}.ops-kpi__value{font-size:var(--ff-text-display);font-weight:var(--ff-weight-bold);line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.ops-kpi__value small{font-size:var(--ff-text-xl);color:var(--ff-color-text-muted);font-weight:var(--ff-weight-medium)}.ops-kpi__foot{font-size:var(--ff-text-sm);color:var(--ff-color-text-muted)}.ops-kpi--link{cursor:pointer;transition:box-shadow var(--ff-transition),border-color var(--ff-transition);text-align:left;width:100%}.ops-kpi--link:hover{box-shadow:var(--ff-shadow-md);border-color:var(--ff-color-border-strong)}.ops-kpi--link:focus-visible{box-shadow:var(--ff-focus-ring)}.ops-tile{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;border-radius:var(--ff-radius-md);background:var(--ff-color-surface-sunken);color:var(--ff-color-text-secondary)}.ops-tile svg{width:18px;height:18px}.ops-tile--primary{background:var(--ff-color-primary-bg);color:var(--ff-color-primary)}.ops-tile--info{background:var(--ff-color-info-bg);color:var(--ff-color-info)}.ops-table-wrap{width:100%;overflow:visible}@media(max-width:920px){.ops-table-wrap{overflow-x:auto}}.ops-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--ff-text-base)}.ops-table thead th{position:sticky;top:0;z-index:1;text-align:left;font-size:var(--ff-text-xs);font-weight:var(--ff-weight-semibold);letter-spacing:var(--ff-tracking-caps);text-transform:uppercase;color:var(--ff-color-text-muted);background:var(--ff-color-surface-2);padding:var(--ff-space-3) var(--ff-space-4);border-bottom:1px solid var(--ff-color-border);white-space:nowrap}.ops-table tbody td{padding:0 var(--ff-space-4);height:var(--ff-row-h);border-bottom:1px solid var(--ff-color-border);vertical-align:middle;color:var(--ff-color-text)}.ops-table tbody tr{transition:background var(--ff-transition)}.ops-table tbody tr:hover{background:var(--ff-color-surface-2)}.ops-table tbody tr[aria-current=true]{background:var(--ff-color-primary-bg)}.ops-table tbody tr[aria-current=true]:hover{background:var(--ff-color-primary-bg-hover)}.ops-table tbody tr:last-child td{border-bottom:none}.ops-table .ops-td-strong{font-weight:var(--ff-weight-semibold)}.ops-table .ops-td-muted{color:var(--ff-color-text-muted)}.ops-table .ops-td-danger{color:var(--ff-color-danger);font-weight:var(--ff-weight-semibold)}.ops-table .ops-col-actions{text-align:right;width:1%;white-space:nowrap}.ops-table th.ops-col-actions{text-align:right}.ops-th-sort{cursor:pointer;-webkit-user-select:none;user-select:none}.ops-th-sort:hover{color:var(--ff-color-text-secondary)}.ops-th-sort .ops-sort-ind{opacity:.55;margin-left:4px}.ops-person{display:flex;align-items:center;gap:var(--ff-space-3);min-width:0}.ops-person__name{font-weight:var(--ff-weight-semibold)}.ops-person__sub{color:var(--ff-color-text-muted);font-size:var(--ff-text-sm)}.ops-avatar{display:inline-flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;border-radius:var(--ff-radius-md);background:var(--ff-color-primary-bg);color:var(--ff-color-primary-text);font-size:var(--ff-text-xs);font-weight:var(--ff-weight-bold);letter-spacing:.02em}.ops-avatar--lg{width:40px;height:40px;font-size:var(--ff-text-base);border-radius:var(--ff-radius-lg)}.ops-avatar--sm{width:26px;height:26px;border-radius:var(--ff-radius-sm)}.ops-field{display:flex;flex-direction:column;gap:6px}.ops-label{font-size:var(--ff-text-sm);font-weight:var(--ff-weight-medium);color:var(--ff-color-text-secondary)}.ops-input,.ops-select{height:var(--ff-control-h);padding:0 var(--ff-space-3);border-radius:var(--ff-radius-md);border:1px solid var(--ff-color-border-strong);background:var(--ff-color-surface);font-size:var(--ff-text-base);transition:border-color var(--ff-transition),box-shadow var(--ff-transition);width:100%}.ops-input::placeholder{color:var(--ff-color-text-muted)}.ops-input:hover,.ops-select:hover{border-color:#c4c9d0}.ops-input:focus,.ops-select:focus{border-color:var(--ff-color-primary);box-shadow:var(--ff-focus-ring);outline:none}.ops-search{position:relative;display:flex;align-items:center}.ops-search svg{position:absolute;left:10px;width:16px;height:16px;color:var(--ff-color-text-muted);pointer-events:none}.ops-search .ops-input{padding-left:32px}.ops-segment{display:inline-flex;padding:3px;gap:2px;background:var(--ff-color-surface-sunken);border-radius:var(--ff-radius-md);border:1px solid var(--ff-color-border)}.ops-segment a{display:inline-flex;align-items:center;padding:0 10px;height:26px;border-radius:6px;font-size:var(--ff-text-xs);font-weight:var(--ff-weight-semibold);color:var(--ff-color-text-muted);text-decoration:none;transition:all var(--ff-transition)}.ops-segment a:hover{color:var(--ff-color-text)}.ops-segment a[aria-current=true]{background:var(--ff-color-surface);color:var(--ff-color-text);box-shadow:var(--ff-shadow-sm)}.ops-segment a:focus-visible{box-shadow:var(--ff-focus-ring)}.ops-menu{position:absolute;z-index:60;min-width:220px;padding:6px;background:var(--ff-color-surface);border:1px solid var(--ff-color-border);border-radius:var(--ff-radius-lg);box-shadow:var(--ff-shadow-lg);animation:ops-pop var(--ff-transition)}@keyframes ops-pop{0%{opacity:0;transform:translateY(-4px) scale(.99)}to{opacity:1;transform:none}}.ops-menu__label{padding:6px 10px 4px}.ops-menu__item{display:flex;align-items:center;gap:var(--ff-space-3);width:100%;padding:8px 10px;border-radius:var(--ff-radius-md);background:transparent;border:none;cursor:pointer;text-align:left;font-size:var(--ff-text-base);color:var(--ff-color-text);transition:background var(--ff-transition)}.ops-menu__item:hover{background:var(--ff-color-surface-sunken)}.ops-menu__item:focus-visible{box-shadow:var(--ff-focus-ring)}.ops-menu__item svg{width:16px;height:16px;color:var(--ff-color-text-muted);flex:none}.ops-menu__item--danger{color:var(--ff-color-danger)}.ops-menu__item--danger svg{color:var(--ff-color-danger)}.ops-menu__sep{height:1px;background:var(--ff-color-border);margin:6px 4px}.ops-divider{height:1px;background:var(--ff-color-border);border:none;margin:0}.ops-banner{display:flex;align-items:center;gap:var(--ff-space-3);padding:var(--ff-space-3) var(--ff-space-4);border-radius:var(--ff-radius-md);font-size:var(--ff-text-sm);font-weight:var(--ff-weight-medium)}.ops-banner svg{width:18px;height:18px;flex:none}.ops-banner--warning{background:var(--ff-color-warning-bg);color:var(--ff-color-warning);border:1px solid var(--ff-color-warning-border)}.ops-banner--info{background:var(--ff-color-info-bg);color:var(--ff-color-info);border:1px solid var(--ff-color-info-border)}.ops-explainer{display:flex;gap:var(--ff-space-3);padding:var(--ff-space-4);margin-bottom:var(--ff-space-5);background:var(--ff-color-primary-bg);border:1px solid var(--ff-color-primary-border);border-radius:var(--ff-radius-lg);font-size:var(--ff-text-sm);color:var(--ff-color-primary-text);line-height:1.5}.ops-explainer svg{flex:none;width:18px;height:18px;margin-top:1px;color:var(--ff-color-primary)}.ops-attention{display:flex;align-items:center;gap:var(--ff-space-3);padding:var(--ff-space-4);margin-bottom:var(--ff-space-6);background:var(--ff-color-warning-bg);border:1px solid var(--ff-color-warning-border);border-radius:var(--ff-radius-lg)}.ops-attention__body{flex:1;min-width:0}.ops-attention__title{font-weight:var(--ff-weight-semibold);color:var(--ff-color-warning)}.ops-attention__sub{font-size:var(--ff-text-sm);color:var(--ff-color-warning);margin-top:1px}.ops-toast-stack{position:fixed;bottom:20px;right:20px;z-index:200;display:flex;flex-direction:column;gap:10px}.ops-toast{display:flex;align-items:center;gap:var(--ff-space-3);padding:12px 16px;min-width:280px;background:#1d2227;color:#fff;border-radius:var(--ff-radius-md);box-shadow:var(--ff-shadow-lg);font-size:var(--ff-text-base);animation:ops-toast-in .22s cubic-bezier(.2,.8,.2,1)}.ops-toast svg{width:18px;height:18px;flex:none;color:#5fd596}@keyframes ops-toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.ops-placeholder{border:1px dashed var(--ff-color-border-strong);border-radius:var(--ff-radius-lg);background-color:var(--ff-color-surface);background-image:repeating-linear-gradient(135deg,transparent,transparent 11px,rgba(24,27,33,.025) 11px,rgba(24,27,33,.025) 22px);color:var(--ff-color-text-muted)}.ops-placeholder__mono{font-family:var(--ff-font-mono);font-size:var(--ff-text-xs);letter-spacing:.02em}.ops-app{min-height:100vh;display:flex;flex-direction:column}.ops-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:var(--ff-space-4);height:var(--ff-header-h);padding:0 var(--ff-space-4) 0 var(--ff-space-5);background:var(--ff-color-surface);border-bottom:1px solid var(--ff-color-border)}.ops-brand{display:flex;align-items:center;gap:var(--ff-space-3);flex:none}.ops-brand__mark{width:34px;height:34px;border-radius:9px;flex:none}.ops-brand__text{display:flex;flex-direction:column;line-height:1.05}.ops-brand__name{font-size:var(--ff-text-md);font-weight:var(--ff-weight-bold);letter-spacing:-.01em}.ops-brand__sub{font-size:10px;font-weight:var(--ff-weight-semibold);letter-spacing:var(--ff-tracking-caps);text-transform:uppercase;color:var(--ff-color-text-muted)}.ops-header__rule{width:1px;height:28px;background:var(--ff-color-border);flex:none}.ops-header__spacer{flex:1}.ops-header__right{display:flex;align-items:center;gap:var(--ff-space-3);flex:none}.ops-tenant__dot{width:9px;height:9px;border-radius:50%;background:var(--ff-color-primary);flex:none;box-shadow:0 0 0 3px var(--ff-color-primary-bg)}.ops-tenant__txt{display:flex;flex-direction:column;line-height:1.1;min-width:0;text-align:left}.ops-tenant__eyebrow{font-size:9.5px;font-weight:var(--ff-weight-semibold);letter-spacing:var(--ff-tracking-caps);text-transform:uppercase;color:var(--ff-color-text-muted)}.ops-tenant__name{font-size:var(--ff-text-base);font-weight:var(--ff-weight-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-org{display:flex;align-items:center;gap:var(--ff-space-3);flex:none;height:40px;padding:0 12px;border-radius:var(--ff-radius-md);background:var(--ff-color-surface-2);border:1px solid var(--ff-color-border);max-width:360px}.ops-userchip{display:flex;align-items:center;gap:var(--ff-space-2);height:40px;padding:0 8px 0 6px;border-radius:var(--ff-radius-md);border:1px solid transparent;background:transparent;cursor:pointer;transition:background var(--ff-transition);flex:none}.ops-userchip:hover{background:var(--ff-color-surface-sunken)}.ops-userchip:focus-visible{box-shadow:var(--ff-focus-ring)}.ops-userchip[aria-expanded=true]{background:var(--ff-color-surface-sunken)}.ops-userchip__txt{display:flex;flex-direction:column;line-height:1.15;text-align:left}.ops-userchip__name{font-size:var(--ff-text-sm);font-weight:var(--ff-weight-semibold);white-space:nowrap}.ops-userchip__role{font-size:var(--ff-text-xs);color:var(--ff-color-text-muted);white-space:nowrap}.ops-body{display:flex;flex:1;min-height:0}.ops-rail{width:var(--ff-rail-w);flex:none;background:var(--ff-color-surface);border-right:1px solid var(--ff-color-border);display:flex;flex-direction:column;padding:var(--ff-space-4) var(--ff-space-3) var(--ff-space-3);gap:var(--ff-space-2);position:sticky;top:var(--ff-header-h);height:calc(100vh - var(--ff-header-h));transition:width var(--ff-transition)}.ops-rail.is-collapsed{width:var(--ff-rail-w-collapsed);padding-left:var(--ff-space-2);padding-right:var(--ff-space-2)}.ops-rail__section{padding:var(--ff-space-3) var(--ff-space-3) var(--ff-space-1)}.ops-rail.is-collapsed .ops-rail__section{opacity:0;height:8px;padding:0;overflow:hidden}.ops-rail__items{display:flex;flex-direction:column;gap:2px}.ops-navitem{display:flex;align-items:center;gap:10px;height:38px;padding:0 9px;border-radius:var(--ff-radius-md);background:transparent;border:none;cursor:pointer;width:100%;text-align:left;font-size:var(--ff-text-base);font-weight:var(--ff-weight-medium);color:var(--ff-color-text-secondary);transition:background var(--ff-transition),color var(--ff-transition)}.ops-navitem:hover{background:var(--ff-color-surface-sunken);color:var(--ff-color-text)}.ops-navitem:focus-visible{box-shadow:var(--ff-focus-ring)}.ops-navitem svg{width:18px;height:18px;flex:none;color:var(--ff-color-text-muted);transition:color var(--ff-transition)}.ops-navitem__label{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-navitem.is-active{background:var(--ff-color-primary-bg);color:var(--ff-color-primary-text);font-weight:var(--ff-weight-semibold)}.ops-navitem.is-active svg{color:var(--ff-color-primary)}.ops-navitem.is-disabled{color:var(--ff-color-text-muted);cursor:default}.ops-navitem.is-disabled:hover{background:transparent;color:var(--ff-color-text-muted)}.ops-rail.is-collapsed .ops-navitem{justify-content:center;padding:0}.ops-rail.is-collapsed .ops-navitem__label,.ops-rail.is-collapsed .ops-navitem .ops-count,.ops-rail.is-collapsed .ops-soon{display:none}.ops-soon{flex:none;font-size:8.5px;font-weight:var(--ff-weight-bold);letter-spacing:.02em;text-transform:uppercase;color:var(--ff-color-text-muted);background:var(--ff-color-surface-sunken);border:1px solid var(--ff-color-border);padding:1px 5px;border-radius:var(--ff-radius-pill)}.ops-rail__spacer{flex:1}.ops-rail__foot{padding:var(--ff-space-3);border:1px solid var(--ff-color-border);border-radius:var(--ff-radius-md);background:var(--ff-color-surface-2)}.ops-rail.is-collapsed .ops-rail__foot{display:none}.ops-rail__foot-row{display:flex;align-items:center;gap:var(--ff-space-2);font-size:var(--ff-text-xs);color:var(--ff-color-text-secondary)}.ops-rail__foot-row svg{width:14px;height:14px;color:var(--ff-color-text-muted)}.ops-rail__foot-mono{font-family:var(--ff-font-mono);font-size:11px;color:var(--ff-color-text-muted);margin-top:6px;line-height:1.5}.ops-rail__collapse{margin-top:4px}.ops-main{flex:1;min-width:0;display:flex;flex-direction:column}.ops-crumbs{display:flex;align-items:center;gap:6px;padding:var(--ff-space-3) var(--ff-space-8);font-size:var(--ff-text-sm);color:var(--ff-color-text-muted);border-bottom:1px solid var(--ff-color-border);background:var(--ff-color-surface)}.ops-crumbs a{color:var(--ff-color-text-secondary)}.ops-crumbs a:hover{color:var(--ff-color-text);text-decoration:underline}.ops-crumbs__sep{color:var(--ff-color-border-strong)}.ops-crumbs__current{color:var(--ff-color-text);font-weight:var(--ff-weight-medium)}.ops-content{padding:var(--ff-space-7) var(--ff-space-8) var(--ff-space-9);max-width:var(--ff-content-max);width:100%;margin:0 auto}.ops-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ff-space-5);margin-bottom:var(--ff-space-6)}.ops-page-title{font-size:var(--ff-text-3xl);font-weight:var(--ff-weight-bold);letter-spacing:-.02em}.ops-page-sub{color:var(--ff-color-text-secondary);margin-top:4px;font-size:var(--ff-text-md)}.ops-page-actions{display:flex;align-items:center;gap:var(--ff-space-3);flex:none}.ops-grid-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--ff-space-4);margin-bottom:var(--ff-space-4)}.ops-grid-2{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--ff-space-4);align-items:start}@media(max-width:1180px){.ops-grid-kpi{grid-template-columns:repeat(2,1fr)}.ops-grid-2{grid-template-columns:1fr}}.ops-toolbar{display:flex;align-items:center;gap:var(--ff-space-3);margin-bottom:var(--ff-space-4)}.ops-toolbar__spacer{flex:1}.ops-activity{display:flex;flex-direction:column}.ops-activity__row{display:flex;align-items:center;gap:var(--ff-space-3);padding:11px var(--ff-space-5);border-bottom:1px solid var(--ff-color-border)}.ops-activity__row:last-child{border-bottom:none}.ops-activity__ico{width:26px;height:26px;border-radius:var(--ff-radius-sm);display:inline-flex;align-items:center;justify-content:center;flex:none}.ops-activity__ico svg{width:15px;height:15px}.ops-activity__text{flex:1;font-size:var(--ff-text-sm);line-height:1.4}.ops-activity__text b{font-weight:var(--ff-weight-semibold)}.ops-activity__by{font-size:var(--ff-text-xs);color:var(--ff-color-text-muted);margin-top:1px}.ops-activity__time{font-family:var(--ff-font-mono);font-size:var(--ff-text-xs);color:var(--ff-color-text-muted);flex:none}.ops-listrow{display:flex;align-items:center;gap:var(--ff-space-3);padding:12px var(--ff-space-5);border-bottom:1px solid var(--ff-color-border)}.ops-listrow:last-child{border-bottom:none}.ops-listrow__body{flex:1;min-width:0;display:flex;flex-direction:column}.ops-listrow__title{font-weight:var(--ff-weight-semibold);font-size:var(--ff-text-base)}.ops-listrow__sub{font-size:var(--ff-text-sm);color:var(--ff-color-text-muted)}.ops-listrow__meta{font-family:var(--ff-font-mono);font-size:var(--ff-text-sm);color:var(--ff-color-text-secondary)}.ops-signin{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}@media(max-width:900px){.ops-signin{grid-template-columns:1fr}.ops-signin__aside{display:none}}.ops-signin__main{display:flex;flex-direction:column;padding:var(--ff-space-7);background:var(--ff-color-surface)}.ops-signin__center{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center}.ops-signin__card{width:100%;max-width:380px}.ops-signin__brand{display:flex;align-items:center;gap:var(--ff-space-3)}.ops-signin h1{font-size:var(--ff-text-2xl);font-weight:var(--ff-weight-bold);letter-spacing:-.02em;margin-top:var(--ff-space-7)}.ops-signin__lede{color:var(--ff-color-text-secondary);margin-top:8px;font-size:var(--ff-text-md)}.ops-signin__tenant{display:flex;align-items:center;gap:var(--ff-space-3);margin-top:var(--ff-space-6);padding:var(--ff-space-3) var(--ff-space-4);border:1px solid var(--ff-color-border);border-radius:var(--ff-radius-md);background:var(--ff-color-surface-2)}.ops-signin__tenant .ops-tenant__dot{box-shadow:0 0 0 3px #fff}.ops-signin__foot{display:flex;align-items:center;justify-content:space-between;color:var(--ff-color-text-muted);font-size:var(--ff-text-xs)}.ops-signin__legal{font-size:var(--ff-text-xs);color:var(--ff-color-text-muted);text-align:center;line-height:1.5}.ops-signin__legal a{color:var(--ff-color-text-secondary);text-decoration:underline}.ops-signin__aside{position:relative;overflow:hidden;background:radial-gradient(120% 120% at 70% 20%,#14342a,#0c211b 45%,#070f0c);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:var(--ff-space-9)}.ops-signin__orb{position:absolute;width:560px;height:560px;right:-120px;top:50%;transform:translateY(-50%);border-radius:50%;background:conic-gradient(from 210deg,#5fd59600,#5fd5968c,#2563c973,#5fd59600);filter:blur(36px);opacity:.55}.ops-signin__aside-inner{position:relative;z-index:1}.ops-signin__aside h2{font-size:var(--ff-text-2xl);font-weight:var(--ff-weight-bold);line-height:1.2;max-width:13ch;letter-spacing:-.01em}.ops-signin__aside p{color:#ffffffa8;margin-top:var(--ff-space-4);max-width:34ch;line-height:1.6}.ops-signin__aside-foot{position:relative;z-index:1;display:flex;align-items:center;gap:var(--ff-space-3);color:#ffffff80;font-size:var(--ff-text-xs)}.ops-signin__feat{display:flex;align-items:center;gap:10px;color:#ffffffd1;font-size:var(--ff-text-sm);padding:7px 0}.ops-signin__feat svg{width:17px;height:17px;color:#6fdca0;flex:none}@media(max-width:1180px){:root{--ff-rail-w: 244px}}.ops-omnibox{display:flex;align-items:center;gap:var(--ff-space-2);height:var(--ff-control-h);width:280px;max-width:30vw;padding:0 12px;border-radius:var(--ff-radius-md);border:1px solid var(--ff-color-border-strong);background:var(--ff-color-surface);color:var(--ff-color-text-muted);cursor:pointer;transition:border-color var(--ff-transition),background var(--ff-transition)}.ops-omnibox:hover{border-color:#c4c9d0}.ops-omnibox:focus-visible{box-shadow:var(--ff-focus-ring)}.ops-omnibox svg{flex:none;color:var(--ff-color-text-muted)}.ops-omnibox__text{flex:1;text-align:left;font-size:var(--ff-text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-omnibox__kbd{flex:none;font-family:var(--ff-font-mono);font-size:11px;color:var(--ff-color-text-muted);border:1px solid var(--ff-color-border);border-radius:var(--ff-radius-sm);padding:1px 6px}@media(max-width:1100px){.ops-omnibox{width:auto}.ops-omnibox__text,.ops-omnibox__kbd{display:none}}.ops-notify{position:relative;overflow:visible}.ops-notify__badge{position:absolute;top:-4px;right:-4px;min-width:17px;height:17px;padding:0 4px;border-radius:var(--ff-radius-pill);background:var(--ff-color-danger);color:#fff;font-size:10px;font-weight:var(--ff-weight-bold);line-height:17px;text-align:center;border:2px solid var(--ff-color-surface)}.ops-tabs{display:flex;flex-wrap:wrap;gap:var(--ff-space-2);margin-bottom:var(--ff-space-4)}.ops-tab{display:inline-flex;align-items:center;gap:var(--ff-space-2);height:var(--ff-control-h-sm);padding:0 var(--ff-space-3);border-radius:var(--ff-radius-md);border:1px solid var(--ff-color-border);background:var(--ff-color-surface);color:var(--ff-color-text-secondary);font-size:var(--ff-text-sm);font-weight:var(--ff-weight-medium);cursor:pointer;transition:background var(--ff-transition),border-color var(--ff-transition),color var(--ff-transition)}.ops-tab:hover{background:var(--ff-color-surface-2);border-color:var(--ff-color-border-strong)}.ops-tab:focus-visible{box-shadow:var(--ff-focus-ring)}.ops-tab.is-active{background:var(--ff-color-primary);border-color:var(--ff-color-primary);color:var(--ff-color-primary-contrast)}.ops-tab.is-active .ops-count{background:#ffffff38;color:#fff}.ops-tint--success{background:var(--ff-color-success-bg);color:var(--ff-color-success)}.ops-tint--info{background:var(--ff-color-info-bg);color:var(--ff-color-info)}.ops-tint--warning{background:var(--ff-color-warning-bg);color:var(--ff-color-warning)}.ops-tint--danger{background:var(--ff-color-danger-bg);color:var(--ff-color-danger)}.ops-tint--neutral{background:var(--ff-color-neutral-bg);color:var(--ff-color-neutral)}.ops-tint--primary{background:var(--ff-color-primary-bg);color:var(--ff-color-primary)}.ops-back{display:inline-flex;align-items:center;gap:4px;margin-bottom:var(--ff-space-4);color:var(--ff-color-text-secondary);font-size:var(--ff-text-sm);font-weight:var(--ff-weight-medium)}.ops-back:hover{color:var(--ff-color-text)}.ops-back:focus-visible{box-shadow:var(--ff-focus-ring);border-radius:var(--ff-radius-sm)}.ops-stack{display:flex;flex-direction:column;gap:var(--ff-space-4)}.ops-banner--danger{background:var(--ff-color-danger-bg);color:var(--ff-color-danger);border:1px solid var(--ff-color-danger-border)}.ops-deflist{margin:0;padding:0 var(--ff-space-5) var(--ff-space-2)}.ops-deflist__row{display:flex;align-items:center;justify-content:space-between;gap:var(--ff-space-4);padding:var(--ff-space-3) 0;border-bottom:1px solid var(--ff-color-border)}.ops-deflist__row:last-child{border-bottom:none}.ops-deflist__key{color:var(--ff-color-text-secondary);font-size:var(--ff-text-sm)}.ops-deflist__val{font-weight:var(--ff-weight-medium);text-align:right}.ops-copy{display:inline-flex;align-items:center;gap:var(--ff-space-2)}.ops-copy button{display:inline-flex;background:none;border:none;padding:0;color:var(--ff-color-text-muted);cursor:pointer}.ops-copy button:hover{color:var(--ff-color-text)}.ops-callout{border-radius:var(--ff-radius-lg);padding:var(--ff-space-4);border:1px solid var(--ff-color-border)}.ops-callout--success{background:var(--ff-color-success-bg);border-color:var(--ff-color-success-border)}.ops-callout--warning{background:var(--ff-color-warning-bg);border-color:var(--ff-color-warning-border)}.ops-callout__head{display:flex;align-items:center;gap:6px;font-weight:var(--ff-weight-semibold);font-size:var(--ff-text-sm);margin-bottom:var(--ff-space-3)}.ops-callout--success .ops-callout__head{color:var(--ff-color-success)}.ops-callout__row{display:flex;align-items:center;justify-content:space-between;gap:var(--ff-space-3);padding:6px 0}.ops-callout__row span:first-child{color:var(--ff-color-text-secondary);font-size:var(--ff-text-sm)}.ops-callout--warning .ops-callout__body{display:flex;gap:var(--ff-space-3);color:var(--ff-color-warning);font-size:var(--ff-text-sm);line-height:1.45}.ops-pem{margin:0;background:#10231a;color:#9fe3bc;border-radius:var(--ff-radius-md);padding:var(--ff-space-4);font-family:var(--ff-font-mono);font-size:var(--ff-text-xs);line-height:1.7;overflow:auto;white-space:pre-wrap;word-break:break-all}.ops-chips{display:flex;flex-wrap:wrap;gap:var(--ff-space-2);align-items:center}.ops-chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 11px;border-radius:var(--ff-radius-md);background:var(--ff-color-primary-bg);border:1px solid var(--ff-color-primary-border);font-size:var(--ff-text-sm);color:var(--ff-color-primary-text);font-weight:var(--ff-weight-medium)}.ops-chip svg{width:13px;height:13px;color:var(--ff-color-primary)}.ops-chip__remove{display:inline-flex;background:none;border:none;padding:0;color:var(--ff-color-text-muted);cursor:pointer}.ops-chip__remove:hover{color:var(--ff-color-danger)}.ops-chip--add{background:var(--ff-color-surface);border:1px dashed var(--ff-color-border-strong);color:var(--ff-color-text-secondary);cursor:pointer}.ops-chip--add:hover{border-color:var(--ff-color-primary);color:var(--ff-color-primary)}.ops-chip--add:focus-visible{box-shadow:var(--ff-focus-ring)}.ops-chip-input{width:auto;max-width:220px;height:28px;font-size:var(--ff-text-sm)}.ops-detail-head{display:flex;align-items:center;gap:var(--ff-space-4);padding:var(--ff-space-5) var(--ff-space-6)}.ops-detail-head__body{flex:1;min-width:0}.ops-detail-head__title{display:flex;align-items:center;gap:var(--ff-space-3)}.ops-detail-head__title h1{font-size:var(--ff-text-2xl);font-weight:var(--ff-weight-bold);letter-spacing:-.01em}.ops-detail-head__meta{display:flex;align-items:center;gap:var(--ff-space-4);margin-top:6px;font-size:var(--ff-text-sm);color:var(--ff-color-text-muted)}.ops-avatar--xl{width:56px;height:56px;border-radius:var(--ff-radius-lg);font-size:var(--ff-text-lg)}.ops-statstrip{display:flex;align-items:center;gap:var(--ff-space-6);padding:var(--ff-space-4) var(--ff-space-6)}.ops-stat{display:flex;align-items:center;gap:var(--ff-space-3)}.ops-stat svg{width:18px;height:18px;color:var(--ff-color-text-muted)}.ops-stat__value{font-size:var(--ff-text-xl);font-weight:var(--ff-weight-bold);line-height:1}.ops-stat__value--online{color:var(--ff-color-success)}.ops-stat__label{font-size:var(--ff-text-xs);color:var(--ff-color-text-muted)}.ops-statstrip__divider{width:1px;height:34px;background:var(--ff-color-border);flex:none}.ops-statstrip__spacer{flex:1}.ops-contact{text-align:right}.ops-contact__name{font-size:var(--ff-text-sm);font-weight:var(--ff-weight-semibold)}.ops-contact__email{font-size:var(--ff-text-xs);color:var(--ff-color-text-muted)}.ops-loc__head{display:flex;align-items:flex-start;gap:var(--ff-space-3)}.ops-loc__body{flex:1;min-width:0}.ops-loc__name{font-weight:var(--ff-weight-semibold);font-size:var(--ff-text-md)}.ops-loc__addr{font-size:var(--ff-text-sm);color:var(--ff-color-text-muted)}.ops-loc__station{display:flex;align-items:center;gap:var(--ff-space-3);flex:none}.ops-loc__station-id{font-family:var(--ff-font-mono);font-size:var(--ff-text-sm);font-weight:var(--ff-weight-semibold);text-align:right}.ops-loc__station-meta{font-size:var(--ff-text-xs);color:var(--ff-color-text-muted);text-align:right}.ops-loc__ghs{margin-top:var(--ff-space-4);padding-top:var(--ff-space-3);border-top:1px solid var(--ff-color-border)}.ops-loc__ghs-label{margin-bottom:var(--ff-space-2)}.ops-card__section{padding:var(--ff-space-5) var(--ff-space-6);border-bottom:1px solid var(--ff-color-border)}.ops-card__section-title{font-size:var(--ff-text-md);font-weight:var(--ff-weight-semibold)}.ops-card__section-sub{font-size:var(--ff-text-sm);color:var(--ff-color-text-muted);margin-top:2px;margin-bottom:var(--ff-space-4)}.ops-card__foot{display:flex;justify-content:flex-end;gap:var(--ff-space-3);padding:var(--ff-space-4) var(--ff-space-6);background:var(--ff-color-surface-2)}.ops-formcard{max-width:780px;overflow:hidden}.ops-formgrid{display:grid;grid-template-columns:1fr 1fr;gap:var(--ff-space-4)}.ops-formgrid--single{grid-template-columns:1fr}@media(max-width:720px){.ops-formgrid{grid-template-columns:1fr}}.ops-readonly{display:flex;align-items:center;height:var(--ff-control-h);padding:0 var(--ff-space-3);border-radius:var(--ff-radius-md);border:1px dashed var(--ff-color-border-strong);background:var(--ff-color-surface-2);font-family:var(--ff-font-mono);font-size:var(--ff-text-sm);color:var(--ff-color-text-muted)}.ops-rowcta{display:inline-flex;align-items:center;gap:2px;color:var(--ff-color-primary-text);font-size:var(--ff-text-sm);font-weight:var(--ff-weight-semibold)}.ops-rowcta:hover{color:var(--ff-color-primary)}.ops-rowcta:focus-visible{box-shadow:var(--ff-focus-ring);border-radius:var(--ff-radius-sm)}.ops-rowcta svg{width:15px;height:15px}.ops-feedback{padding:var(--ff-space-8);text-align:center;color:var(--ff-color-text-muted)}.ops-spinner{width:20px;height:20px;border-radius:50%;border:2px solid var(--ff-color-border-strong);border-top-color:var(--ff-color-primary);animation:ops-spin .7s linear infinite;display:inline-block;vertical-align:middle}@keyframes ops-spin{to{transform:rotate(360deg)}}
