:root{color-scheme:dark;--bg: #0b0d12;--bg-elev: #151821;--bg-elev-2: #1d212d;--border: #262b38;--text: #e6e9ef;--text-dim: #8f97a8;--accent: #00ff88;--danger: #ff5566;--warn: #ffb347;--radius: 8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Helvetica Neue,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-size:14px;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}input,select,textarea,button{font:inherit;color:inherit;border:1px solid var(--border);background:var(--bg-elev);border-radius:var(--radius);padding:8px 10px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}button{cursor:pointer;background:var(--bg-elev-2);transition:background .1s ease}button:hover{background:#262c3a}button:disabled{opacity:.4;cursor:not-allowed}button.primary{background:var(--accent);color:#001810;border-color:var(--accent);font-weight:600}button.primary:hover{background:#26ff99}button.danger{background:var(--danger);color:#fff;border-color:var(--danger)}button.ghost{background:transparent}.shell{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;padding:10px 20px;background:var(--bg-elev);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:200}.topbar-brand{flex-shrink:0;font-weight:700;color:var(--accent);letter-spacing:.5px;text-decoration:none!important;padding:6px 0}.topbar-brand:hover{color:#4dffb3}.topbar-nav{display:flex;flex-wrap:wrap;align-items:center;gap:2px;flex:1;min-width:0}.topbar-user{display:flex;align-items:center;gap:12px;margin-left:auto;flex-shrink:0}.topbar-dropdown{position:relative}.topbar-dropdown-trigger{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid transparent;background:transparent;border-radius:var(--radius);color:var(--text-dim);font-weight:500;cursor:pointer;font-size:13px}.topbar-dropdown-trigger:hover,.topbar-dropdown-trigger.open{background:var(--bg-elev-2);color:var(--text);border-color:var(--border)}.topbar-caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.75}.topbar-dropdown-panel{position:absolute;top:calc(100% + 4px);left:0;min-width:220px;max-height:min(70vh,420px);overflow-y:auto;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 12px 40px #00000059;padding:6px;z-index:300}.topbar-dropdown-item{display:block;padding:10px 12px;border-radius:6px;color:var(--text-dim);font-weight:500;text-decoration:none!important;font-size:13px}.topbar-dropdown-item:hover{background:var(--bg-elev);color:var(--text)}.topbar-dropdown-item.active{background:#00ff881f;color:var(--accent)}.topbar-role{font-size:12px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-signout{padding:6px 12px;font-size:13px}.main{flex:1;overflow-y:auto;padding:24px 32px}.row{display:flex;gap:12px;align-items:center}.col{display:flex;flex-direction:column;gap:8px}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.section-title{font-size:18px;font-weight:700;margin:0 0 16px}.label{font-size:12px;color:var(--text-dim);margin-bottom:4px;display:block}.pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase}.pill-low,.pill-normal{background:#263044;color:#9cb4e8}.pill-medium{background:#3d3422;color:#ffc97a}.pill-high{background:#3e2026;color:#ff889a}.pill-critical{background:var(--danger);color:#fff}.pill-ok{background:#153d27;color:#62d78c}table{width:100%;border-collapse:collapse}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);font-size:13px}th{color:var(--text-dim);font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.5px}tr{cursor:pointer}tr:hover td{background:var(--bg-elev-2)}tr.selected td{background:#1a3d28}.empty{padding:40px;text-align:center;color:var(--text-dim)}.toast{position:fixed;bottom:24px;right:24px;background:var(--bg-elev-2);border:1px solid var(--border);border-left:4px solid var(--accent);padding:12px 16px;border-radius:var(--radius);max-width:360px;box-shadow:0 8px 24px #0000004d;z-index:1000}.toast.error{border-left-color:var(--danger)}.login-shell{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--bg)}.login-card{background:var(--bg-elev);border:1px solid var(--border);padding:32px;border-radius:12px;width:360px;max-width:90vw}.muted{color:var(--text-dim);font-size:12px}.mono{font-family:SF Mono,Menlo,Consolas,monospace;font-size:12px}.grid-2{display:grid;grid-template-columns:2fr 1fr;gap:16px}.chip{display:inline-flex;gap:4px;align-items:center;padding:2px 8px;background:var(--bg-elev-2);border-radius:4px;font-size:11px;margin-right:4px;margin-bottom:4px}.chip.danger{background:#3e2026;color:#ff889a}.chip.warn{background:#3d3422;color:#ffc97a}.chip.good{background:#153d27;color:#62d78c}hr{border:0;border-top:1px solid var(--border);margin:16px 0}.spacer-8{height:8px}.spacer-16{height:16px}.social-ops{max-width:1280px;margin:0 auto}.social-ops-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:24px;border:1px solid #294437;border-radius:14px;background:linear-gradient(135deg,#111b18,var(--bg-elev))}.social-ops-hero p{margin:0 0 8px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.12em}.social-ops-hero h1{margin:0 0 8px;font-size:clamp(24px,4vw,36px)}.social-ops-hero span{color:var(--text-dim);line-height:1.55}.social-ops-hero b{flex:0 0 auto;padding:8px 12px;border:1px solid #315944;border-radius:999px;color:#8fffc1;background:#112b1e;font-size:12px}.social-ops-tabs{display:flex;gap:8px;margin:18px 0 24px;overflow-x:auto;scrollbar-width:thin}.social-ops-tabs button{min-height:44px;white-space:nowrap;text-transform:capitalize}.social-ops-tabs button[aria-current=page]{border-color:var(--accent);color:var(--accent);background:#123023}.social-ops-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}.social-ops-heading h2{margin:0 0 4px;font-size:20px}.social-ops-heading p{margin:0;color:var(--text-dim);line-height:1.5}.social-ops-heading label{display:grid;gap:5px;color:var(--text-dim);font-size:12px}.social-ops-card,.social-ops-table-card{padding:18px;border:1px solid var(--border);border-radius:12px;background:var(--bg-elev)}.social-ops-card h3,.social-ops-table-card h3{margin:0 0 14px}.social-ops-card header{display:flex;align-items:center;justify-content:space-between;gap:10px}.social-ops-card header h3{margin:0;text-transform:capitalize}.social-ops-card i,.social-ops-list i{padding:4px 8px;border-radius:999px;background:#263044;color:#aebce0;font-size:10px;font-style:normal;font-weight:700;text-transform:uppercase}.social-ops-card i.ok{background:#153d27;color:#62d78c}.social-ops-card i.warn,.social-ops-list i.warn{background:#3d3422;color:#ffc97a}.social-ops-card dl{display:grid;gap:10px;margin:16px 0}.social-ops-card dl div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding-bottom:8px}.social-ops-card dt{color:var(--text-dim)}.social-ops-card dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere}.social-ops-card small{color:var(--text-dim)}.social-ops-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.social-ops-user-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.social-ops-search{max-width:720px;display:grid;gap:6px;margin-bottom:16px}.social-ops-search>div{display:grid;grid-template-columns:1fr auto;gap:8px}.social-ops-search input,.social-ops-search button{min-height:44px}.social-ops-table-card{margin-top:16px;padding:0;overflow:hidden}.social-ops-table-card h3{padding:18px 18px 0}.social-ops-table-scroll{max-width:100%;overflow-x:auto}.social-ops-table-scroll table{min-width:760px}.social-ops-table-scroll tr{cursor:default}.social-ops-state,.social-ops-empty{padding:32px;text-align:center;color:var(--text-dim);border:1px dashed var(--border);border-radius:12px}.social-ops-alert{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:12px 14px;border:1px solid #315944;border-left:4px solid var(--accent);border-radius:8px;background:#112b1e}.social-ops-alert--error{border-color:#6f3039;border-left-color:var(--danger);background:#2d171c}.social-ops-support-grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.4fr);gap:14px}.social-ops-list{display:grid;align-content:start;gap:8px}.social-ops-list>button{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:64px;text-align:left}.social-ops-list>button[aria-pressed=true]{border-color:var(--accent);background:#123023}.social-ops-list span{display:grid;min-width:0}.social-ops-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.social-ops-list small{margin-top:4px;color:var(--text-dim)}.social-ops-support-detail form,.social-ops-control-form{display:grid;gap:14px;margin-top:18px}.social-ops-support-detail label,.social-ops-control-form label{display:grid;gap:6px}.social-ops-support-detail textarea,.social-ops-control-form textarea{resize:vertical}.social-ops-segmented{display:flex;gap:4px}.social-ops-segmented button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.social-ops-control-form{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}.social-ops-control-form input,.social-ops-control-form select,.social-ops-control-form button{min-height:44px}.social-ops-wide{grid-column:1 / -1}.social-ops-check{display:flex!important;align-items:center;gap:10px!important;min-height:44px}.social-ops-check input{min-height:0;width:18px;height:18px}.social-ops-danger-note{display:grid;align-content:center;color:var(--warn)}.social-ops-danger-note span{color:var(--text-dim);font-size:12px}@media(max-width:900px){.main{padding:18px}.social-ops-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-ops-support-grid{grid-template-columns:1fr}}@media(max-width:620px){.topbar{padding:10px 12px}.topbar-nav{flex-basis:100%;order:3;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.topbar-dropdown{flex:0 0 auto}.topbar-dropdown-panel{position:fixed;top:auto;left:12px;right:12px;width:auto;max-height:55vh}.topbar-role{display:none}.main{padding:14px 12px 28px}.social-ops-hero{padding:18px;flex-direction:column}.social-ops-heading{align-items:stretch;flex-direction:column}.social-ops-health-grid,.social-ops-user-grid,.social-ops-control-form{grid-template-columns:1fr}.social-ops-wide{grid-column:auto}.social-ops-search>div{grid-template-columns:1fr}.social-ops-tabs button,.social-ops-heading button,.social-ops-heading select{min-height:44px}.social-ops-segmented{width:100%}.social-ops-segmented button{flex:1}.topbar button,.social-ops button{min-height:44px}}@media(prefers-reduced-motion:reduce){.social-ops *,.topbar *{scroll-behavior:auto!important;transition:none!important}}.app-topbar{gap:14px}.topbar-brand span{color:var(--text-dim);font-weight:500}.app-switcher{position:relative;flex:0 0 auto}.app-switcher .topbar-dropdown-panel{min-width:250px}.app-switcher .topbar-dropdown-item{width:100%;display:grid;gap:3px;text-align:left}.app-switcher .topbar-dropdown-item small{color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-switcher-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent)}.app-page-nav{display:flex;flex:1;gap:4px;overflow-x:auto}.app-page-nav a,.topbar-admin-link{padding:8px 10px;border-radius:7px;color:var(--text-dim);text-decoration:none;white-space:nowrap;font-size:13px}.app-page-nav a:hover,.app-page-nav a.active,.topbar-admin-link:hover,.topbar-admin-link.active{color:var(--text);background:var(--bg-elev-2)}.app-console{max-width:1320px;margin:0 auto}.app-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 20px}.app-heading p{margin:0 0 5px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.12em}.app-heading h1{margin:0 0 7px;font-size:clamp(24px,4vw,34px)}.app-heading span{color:var(--text-dim);line-height:1.5}.app-heading label{display:grid;gap:5px;min-width:170px;color:var(--text-dim);font-size:12px}.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border-radius:8px;text-decoration:none;white-space:nowrap}.app-state{padding:30px;text-align:center;color:var(--text-dim)}.app-state--error{color:#ff9aaa;border-color:#6f3039}.app-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.app-stat-grid article{display:grid;gap:12px;min-height:120px}.app-stat-grid span{color:var(--text-dim)}.app-stat-grid strong{font-size:30px}.table-scroll{padding:0;overflow-x:auto}.table-scroll table{min-width:780px}.table-scroll td,.table-scroll th{vertical-align:middle}.app-case-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);gap:16px;align-items:start}.app-case-grid h2{margin:0 0 14px;font-size:17px}.app-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 0 28px;background:var(--border)}.app-facts div{padding:12px;background:var(--bg-elev)}.app-facts dt{color:var(--text-dim);font-size:11px}.app-facts dd{margin:4px 0 0;overflow-wrap:anywhere}.app-timeline{display:grid;gap:8px}.app-timeline>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.app-timeline span{color:var(--text-dim);font-size:12px}.app-actions{position:sticky;top:82px;display:grid;gap:14px}.app-actions label{display:grid;gap:6px;color:var(--text-dim);font-size:12px}.app-actions fieldset{display:grid;gap:9px;border:1px solid var(--border);border-radius:8px}.app-actions fieldset label{display:flex;align-items:flex-start;gap:8px;color:var(--text)}.app-actions input[type=radio]{width:auto}.app-action-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rbac-layout,.staff-layout{display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,1.6fr);gap:16px;align-items:start}.rbac-role-list,.staff-directory{display:grid;gap:8px}.rbac-role-list>button,.staff-directory>button{display:grid;gap:4px;min-height:58px;text-align:left}.rbac-role-list>button[aria-pressed=true],.staff-directory>button[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-elev))}.rbac-role-list span,.rbac-role-list small,.staff-directory span,.staff-directory small{color:var(--text-dim);font-size:11px}.rbac-editor{display:grid;gap:14px}.rbac-editor>label,.scoped-invite>label,.invite-app-grid label{display:grid;gap:6px;color:var(--text-dim);font-size:12px}.rbac-editor h2{margin:10px 0 0;font-size:16px}.rbac-editor fieldset{border:1px solid var(--border);border-radius:8px}.rbac-editor legend{padding:0 8px;color:var(--text-dim);text-transform:capitalize}.rbac-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.rbac-check-grid label{display:flex;align-items:flex-start;gap:8px;min-width:0;padding:9px;border:1px solid var(--border);border-radius:7px}.rbac-check-grid input{flex:0 0 auto;width:16px;height:16px}.rbac-check-grid label>span{display:grid;gap:3px;min-width:0;flex:1}.rbac-check-grid small{color:var(--text-dim);overflow-wrap:anywhere}.assignment-matrix{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(190px,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:8px;overflow:hidden}.assignment-matrix>*{min-width:0;padding:11px;background:var(--bg-elev)}.assignment-matrix>div{display:grid;gap:4px}.assignment-matrix small{color:var(--text-dim)}.assignment-matrix-head{color:var(--text-dim);font-size:11px;font-weight:700;text-transform:uppercase}.effective-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.effective-preview article{display:grid;gap:5px;padding:10px;border:1px solid var(--border);border-radius:8px}.effective-preview span{font-size:12px}.scoped-invite{display:grid;gap:14px;margin-top:16px}.scoped-invite h2{margin:0}.invite-app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.publication-filters{display:flex;align-items:end;gap:12px;margin-bottom:16px;padding:14px}.publication-filters label{display:grid;gap:5px;min-width:170px;color:var(--text-dim);font-size:12px}.publication-filters>span{margin-left:auto;color:var(--text-dim)}.publication-layout{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:16px;align-items:start}.publication-list{display:grid;gap:7px;max-height:70vh;overflow-y:auto}.publication-list>button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:64px;text-align:left}.publication-list>button[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-elev))}.publication-list>button span{display:grid;gap:4px;min-width:0}.publication-list>button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.publication-list>button small{color:var(--text-dim)}.publication-state{display:inline-flex;width:-moz-fit-content;width:fit-content;padding:4px 7px;border:1px solid var(--border);border-radius:999px;color:var(--text-dim);font-size:10px;font-style:normal;text-transform:uppercase}.publication-state--approved{color:#8ee8ba;border-color:#246447}.publication-state--rejected{color:#ff9aaa;border-color:#6f3039}.publication-state--pending{color:#ffd58a;border-color:#785c29}.publication-detail{display:grid;gap:18px}.publication-detail>header{display:flex;justify-content:space-between;align-items:start;gap:12px}.publication-detail h2{margin:5px 0 0}.publication-description{margin:0;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.publication-reasons{display:grid;gap:5px;padding:12px;border:1px solid var(--border);border-radius:8px}.publication-reasons span{color:var(--text-dim);overflow-wrap:anywhere}.publication-decision{display:grid;gap:12px;padding-top:14px;border-top:1px solid var(--border)}.publication-decision label{display:grid;gap:6px;color:var(--text-dim);font-size:12px}.publication-decision>div{display:flex;flex-wrap:wrap;gap:8px}.publication-notice{color:#8ee8ba;border-color:#246447;margin-bottom:16px}@media(max-width:980px){.app-topbar{flex-wrap:wrap}.app-page-nav{order:3;flex-basis:100%}.app-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-case-grid,.rbac-layout,.staff-layout,.publication-layout{grid-template-columns:1fr}.app-actions{position:static}}@media(max-width:620px){.app-switcher{flex:1}.app-switcher>button{width:100%;justify-content:space-between}.app-topbar .topbar-user .topbar-admin-link{display:none}.app-heading{align-items:stretch;flex-direction:column}.app-heading select,.app-heading .button-link{min-height:44px}.app-stat-grid{grid-template-columns:1fr 1fr}.app-facts,.app-action-buttons,.rbac-check-grid,.invite-app-grid{grid-template-columns:1fr}.effective-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.publication-filters{align-items:stretch;flex-direction:column}.publication-filters label{min-width:0}.publication-filters>span{margin-left:0}.app-action-buttons button{min-height:44px}}
