@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-cyrillic-ext-400-normal.39u3dp1q8vt28.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-ext-400-normal.3-2s2qyqt5syo.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-cyrillic-400-normal.1ob51yn_zh4f3.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-400-normal.2c9g56gofrre8.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-greek-400-normal.20ztly1_og8qv.woff2)format("woff2"),url(../media/ibm-plex-sans-greek-400-normal.1d6bt9ufqnym6.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-vietnamese-400-normal.41bcgzntq2c9e.woff2)format("woff2"),url(../media/ibm-plex-sans-vietnamese-400-normal.3nx5do2g1gg_d.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-latin-ext-400-normal.2wkl6p2bjtdkj.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-ext-400-normal.1d956-ol9h5w9.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-latin-400-normal.1xf5nwxyfigak.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-400-normal.19i24--p24z3r.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-cyrillic-ext-500-normal.37y6j4asgn87a.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-ext-500-normal.42ydqmu-69p6e.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-cyrillic-500-normal.3j8b5jptl4nhr.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-500-normal.2r3_h99a4p2o6.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-greek-500-normal.0k99vu2yejv84.woff2)format("woff2"),url(../media/ibm-plex-sans-greek-500-normal.2kq1zw7ns-90j.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-vietnamese-500-normal.38exv3t7tju-g.woff2)format("woff2"),url(../media/ibm-plex-sans-vietnamese-500-normal.14rtxflq2gk6f.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-latin-ext-500-normal.1h2_ral94l6aj.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-ext-500-normal.1zyjrbr0w_u4w.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-latin-500-normal.2i4a1iuj6lbvw.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-500-normal.14sc3d7sk_zzh.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-cyrillic-ext-600-normal.0hanpnpn3ki-v.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-ext-600-normal.33q0gwxfwkcq9.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-cyrillic-600-normal.1bd0br_i69opa.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-600-normal.0h3aaz4315ad-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-greek-600-normal.17-3491c_tfac.woff2)format("woff2"),url(../media/ibm-plex-sans-greek-600-normal.1mkps5wbbyo2a.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-vietnamese-600-normal.3hxpyk-en1__5.woff2)format("woff2"),url(../media/ibm-plex-sans-vietnamese-600-normal.3i-6fz_bx7yta.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-latin-ext-600-normal.0a5-aslyj_wbq.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-ext-600-normal.00ca59z0uilzq.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-latin-600-normal.2ovda_azncp9b.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-600-normal.2wn5p1s7u3utm.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-cyrillic-ext-400-normal.09jq5v9-1wf71.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-ext-400-normal.2iaubq2jy0rx3.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-cyrillic-400-normal.0m1ahpdxrpokj.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-400-normal.2-z93d2j9-3s0.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-vietnamese-400-normal.3a7fs2yw914a9.woff2)format("woff2"),url(../media/ibm-plex-mono-vietnamese-400-normal.2kzc8ichkozg5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-latin-ext-400-normal.1hjaitcyq2e2r.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-ext-400-normal.0nrwft7nlo5oa.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-latin-400-normal.3xdfs0-p_zi4c.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-400-normal.2lhng2ntocry9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-mono-cyrillic-ext-600-normal.0lqep3bw7v3wl.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-ext-600-normal.18owfse_hsbuz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-mono-cyrillic-600-normal.0qipn60581k5b.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-600-normal.2so0eecqstp1p.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-mono-vietnamese-600-normal.1xowhcc_d3c84.woff2)format("woff2"),url(../media/ibm-plex-mono-vietnamese-600-normal.3o6zfpml9w8yy.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-mono-latin-ext-600-normal.1h4gkbs1bbtv3.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-ext-600-normal.2j6z_fq1740ug.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-mono-latin-600-normal.30e0eqd5fxn92.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-600-normal.0d95tbzh5g6jj.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1013;--surface:#15181c;--surface-2:#1c2025;--surface-3:#252a30;--line:#262b31;--line-strong:#353b43;--ink:#e9ebee;--ink-2:#b4bac2;--ink-3:#7f8791;--ink-inverse:#0e1013;--focus:#e9ebee;--overlay:#08090bb8;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--good:#22b14c;--warning:#f0a81a;--serious:#ec835a;--critical:#e5484d;--neutral-mark:#7f8791;--discord:#5865f2;--radius:6px;--radius-sm:4px;--shadow-pop:0 8px 28px #00000073;--rail:232px;--font:"IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 0;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px}a:hover{text-decoration-color:currentColor}h1,h2,h3{letter-spacing:-.01em;margin:0}h1{font-size:20px;font-weight:600;line-height:1.3}h2{font-size:14px;font-weight:600}h3{color:var(--ink-3);font-size:12px;font-weight:600}p{margin:0}code,.mono{font-family:var(--mono);font-size:12.5px}.num,.tabular{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:color-mix(in srgb, var(--series-1) 35%, transparent)}.muted{color:var(--ink-3)}.secondary{color:var(--ink-2)}.small{font-size:12px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.stack{flex-direction:column;gap:16px;display:flex}.row{align-items:center;gap:8px;min-width:0;display:flex}.spacer{flex:1}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.btn{border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface-2);height:32px;color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-3);text-decoration:none}.btn:disabled{opacity:.45;cursor:not-allowed}.btn svg{flex:none}.btn-primary{background:var(--ink);border-color:var(--ink);color:var(--ink-inverse)}.btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--ink) 86%, var(--bg))}.btn-danger{color:var(--critical);border-color:color-mix(in srgb, var(--critical) 45%, var(--line-strong));background:0 0}.btn-danger:hover:not(:disabled){background:color-mix(in srgb, var(--critical) 12%, transparent)}.btn-ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.btn-sm{height:26px;padding:0 9px;font-size:12.5px}.btn-icon{width:32px;padding:0}.btn-icon.btn-sm{width:26px}.btn-block{width:100%}.btn-discord{background:var(--discord);border-color:var(--discord);color:#fff}.btn-discord:hover:not(:disabled){background:color-mix(in srgb, var(--discord) 88%, #000)}.btn-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.input,select.input,textarea.input{border-radius:var(--radius);background:var(--bg);width:100%;height:32px;color:var(--ink);border:1px solid var(--line-strong);font:inherit;padding:0 10px;font-size:13px}select.input{padding-right:28px}textarea.input{height:auto;min-height:140px;font-family:var(--mono);padding:8px 10px;font-size:12.5px}.input:hover{border-color:color-mix(in srgb, var(--ink-3) 60%, var(--line-strong))}.input:focus{outline:2px solid var(--focus);outline-offset:-1px;border-color:#0000}.input[type=number]{font-variant-numeric:tabular-nums}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{font-size:13px;font-weight:600}.field-help{color:var(--ink-3);font-size:12px}.checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:inline-flex}.checkbox input,.role-item input{width:15px;height:15px;accent-color:var(--ink);margin:0}.badge{white-space:nowrap;height:22px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.badge-dot{background:var(--neutral-mark);border-radius:50%;flex:none;width:7px;height:7px}.badge svg{margin-left:-2px}.status-good{color:var(--ink)}.status-good .badge-dot{background:var(--good)}.status-warning .badge-dot{background:var(--warning)}.status-serious .badge-dot{background:var(--serious)}.status-critical{color:var(--critical);border-color:color-mix(in srgb, var(--critical) 40%, var(--line))}.status-critical .badge-dot{background:var(--critical)}.status-neutral .badge-dot{background:var(--neutral-mark)}.tag{border-radius:var(--radius-sm);background:var(--surface-3);height:20px;color:var(--ink);font-family:var(--mono);white-space:nowrap;align-items:center;padding:0 6px 0 8px;font-size:12px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.tag:before{content:"";background:var(--tag-colour,var(--neutral-mark));width:3px;position:absolute;top:0;bottom:0;left:0}.swatch{border-radius:2px;flex:none;width:8px;height:8px;display:inline-block}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0}.panel-head{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-height:44px;padding:10px 14px;display:flex}.panel-head h2{flex:1;min-width:0}.panel-head .count{font-family:var(--mono);color:var(--ink-3);font-size:12px}.panel-body{padding:14px}.panel-foot{border-top:1px solid var(--line);color:var(--ink-3);padding:10px 14px;font-size:12px}.empty{color:var(--ink-3);padding:18px 14px;font-size:13px}.list{margin:0;padding:0;list-style:none}.list>li{border-top:1px solid var(--line);align-items:center;gap:10px;min-width:0;padding:9px 14px;display:flex}.list>li:first-child{border-top:none}.list-plain{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.list-title{font-weight:500}.list-sub{color:var(--ink-3);font-size:12px}.table-wrap{overflow-x:auto}table.table{border-collapse:collapse;width:100%;font-size:13px}.table th{text-align:left;color:var(--ink-3);white-space:nowrap;border-bottom:1px solid var(--line);background:var(--surface);height:36px;padding:0 12px;font-size:12px;font-weight:500;position:sticky;top:0}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:8px 12px}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover td,.table tr.selected td{background:var(--surface-2)}.table .num{text-align:right}.cell-sub{color:var(--ink-3);font-family:var(--mono);font-size:11.5px;display:block}.alert{border-radius:var(--radius);background:color-mix(in srgb, var(--warning) 9%, var(--surface));color:var(--ink);border:1px solid color-mix(in srgb, var(--warning) 35%, var(--line));align-items:flex-start;gap:10px;padding:10px 12px;font-size:13px;display:flex}.alert-critical{background:color-mix(in srgb, var(--critical) 9%, var(--surface));border-color:color-mix(in srgb, var(--critical) 40%, var(--line))}.alert-good{background:color-mix(in srgb, var(--good) 9%, var(--surface));border-color:color-mix(in srgb, var(--good) 35%, var(--line))}.alert-icon{color:var(--warning);flex:none;margin-top:1px}.alert-critical .alert-icon{color:var(--critical)}.alert-good .alert-icon{color:var(--good)}.alerts{flex-direction:column;gap:8px;display:flex}.toast{z-index:60;border-radius:var(--radius);background:var(--surface-3);border:1px solid var(--line-strong);max-width:min(420px,100vw - 32px);box-shadow:var(--shadow-pop);align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex;position:fixed;bottom:20px;right:20px}.toast-error{border-color:color-mix(in srgb, var(--critical) 55%, var(--line-strong))}.toast svg{color:var(--good);flex:none}.toast-error svg{color:var(--critical)}.shell{grid-template-columns:var(--rail) minmax(0, 1fr);min-height:100vh;display:grid}.rail{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:2px;height:100vh;padding:12px 10px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.005em;height:32px;color:var(--ink);align-items:center;gap:8px;padding:0 8px;font-size:13.5px;font-weight:600;text-decoration:none;display:flex}.brand:hover{text-decoration:none}.brand-mark{flex:none}.guild-switch{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);align-items:center;gap:10px;min-width:0;margin:10px 0 14px;padding:8px;text-decoration:none;display:flex}.guild-switch:hover{background:var(--surface-2);text-decoration:none}.guild-switch-text{flex-direction:column;flex:1;min-width:0;display:flex}.guild-switch-name{font-size:13px;font-weight:600}.guild-switch-hint{color:var(--ink-3);font-size:11.5px}.nav-label{color:var(--ink-3);padding:6px 8px 4px;font-size:11.5px}.nav-link{border-radius:var(--radius);height:32px;color:var(--ink-2);align-items:center;gap:10px;padding:0 8px;font-size:13.5px;text-decoration:none;display:flex;position:relative}.nav-link:hover{background:var(--surface-2);color:var(--ink);text-decoration:none}.nav-link.active{background:var(--surface-3);color:var(--ink);font-weight:500}.nav-link svg{color:var(--ink-3);flex:none}.nav-link.active svg{color:var(--ink)}.rail-foot{border-top:1px solid var(--line);flex-direction:column;gap:2px;margin-top:auto;padding-top:10px;display:flex}.user-row{align-items:center;gap:8px;min-width:0;padding:6px 8px;display:flex}.avatar{background:var(--surface-3);width:24px;height:24px;color:var(--ink-2);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:600;display:inline-grid;overflow:hidden}.avatar img{width:100%;height:100%}.workspace{flex-direction:column;min-width:0;display:flex}.content{flex-direction:column;gap:16px;min-width:0;padding:20px 24px 48px;display:flex}.mobile-bar{display:none}.statusbar{z-index:20;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:16px;min-height:52px;padding:8px 24px;display:flex;position:sticky;top:0}.readouts{flex-wrap:wrap;flex:1;align-items:center;gap:18px;min-width:0;display:flex}.readout{color:var(--ink-2);white-space:nowrap;align-items:center;gap:7px;font-size:13px;display:inline-flex}.readout strong{color:var(--ink);font-weight:600}.live-dot{background:var(--neutral-mark);border-radius:50%;flex:none;width:8px;height:8px}.live-dot.on{background:var(--good);box-shadow:0 0 0 0 color-mix(in srgb, var(--good) 60%, transparent)}.live-dot.pulse{animation:.9s ease-out live-pulse}.live-dot.off{background:var(--critical)}@keyframes live-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--good) 65%, transparent)}to{box-shadow:0 0 0 7px #0000}}.statusbar .btn-row{flex-wrap:nowrap}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head>div:first-child{min-width:0}.page-sub{color:var(--ink-3);margin-top:2px;font-size:13px}.metrics{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-wrap:wrap;display:flex}.metric{border-left:1px solid var(--line);flex:140px;min-width:0;padding:10px 14px}.metric:first-child{border-left:none}.metric-label{color:var(--ink-3);font-size:12px}.metric-value{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:22px;font-weight:600;line-height:1.25}.metric-value small{color:var(--ink-3);letter-spacing:0;margin-left:4px;font-size:13px;font-weight:400}.split{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.side{flex-direction:column;gap:16px;min-width:0;display:flex}@media (max-width:1180px){.split{grid-template-columns:minmax(0,1fr)}}.reason-group+.reason-group{border-top:1px solid var(--line)}.reason-head{color:var(--ink-2);align-items:center;gap:8px;padding:10px 14px 4px;font-size:12.5px;display:flex}.reason-head .count{font-family:var(--mono);color:var(--ink-3);margin-left:auto;font-size:12px}.reason-help{color:var(--ink-3);padding:0 14px;font-size:12px}.chips{flex-wrap:wrap;gap:6px;padding:8px 14px 12px;display:flex}.chip{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line);align-items:center;gap:6px;max-width:100%;height:24px;padding:0 8px;font-size:12.5px;display:inline-flex}.chip .muted{font-size:11.5px}.pool{grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;padding:14px;display:grid}.pool-cell{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface-2);height:34px;font-family:var(--mono);color:var(--ink-3);flex-direction:column;justify-content:center;align-items:center;font-size:11px;line-height:1.1;display:flex;position:relative;overflow:hidden}.pool-cell.busy{color:var(--ink);background:color-mix(in srgb, var(--cell) 22%, var(--surface-2));border-color:#0000}.pool-cell.busy:before{content:"";background:var(--cell);height:3px;position:absolute;bottom:0;left:0;right:0}.pool-cell.missing{color:var(--critical);border-style:dashed}.pool-cell b{font-size:12px;font-weight:600}@media (max-width:520px){.pool{grid-template-columns:repeat(5,minmax(0,1fr))}}.channel-members{margin:0;padding:0;list-style:none}.channel-members li{border-top:1px solid var(--line);align-items:center;gap:10px;padding:7px 14px;display:flex}.channel-members li:first-child{border-top:none}.map-wrap{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface-2);touch-action:none;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.map-wrap>svg{cursor:grab;width:100%;height:100%;display:block}.map-wrap>svg.dragging{cursor:grabbing}.map-toolbar{pointer-events:none;flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex;position:absolute;top:10px;left:10px;right:10px}.map-toolbar>*{pointer-events:auto}.map-toolbar .group{border-radius:var(--radius);background:color-mix(in srgb, var(--surface) 90%, transparent);border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-wrap:wrap;gap:2px;padding:2px;display:flex;box-shadow:0 1px 3px #0003}.map-toolbar .btn{height:26px;color:var(--ink-2);background:0 0;border:none;padding:0 8px;font-size:12.5px}.map-toolbar .btn:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.map-toolbar .btn.btn-icon{width:26px;padding:0}.map-toolbar .btn.on{background:var(--surface-3);color:var(--ink)}.map-legend,.map-scale{color:var(--ink-2);background:color-mix(in srgb, var(--surface) 90%, transparent);border:1px solid var(--line-strong);border-radius:var(--radius);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:12px;position:absolute;bottom:10px}.map-legend{max-width:calc(100% - 250px);padding:6px 10px;left:10px}.map-legend summary{cursor:pointer;color:var(--ink);font-weight:500;list-style:none;display:none}.map-legend summary::-webkit-details-marker{display:none}.legend-items{flex-wrap:wrap;gap:4px 14px;display:flex}@media (max-width:640px){.map-legend{max-width:calc(100% - 20px);top:auto;bottom:auto}.map-legend summary{display:block}.map-legend[open] summary{margin-bottom:6px}.map-legend:not([open]){bottom:10px}.map-legend[open]{bottom:52px}}.legend-item{align-items:center;gap:6px;display:inline-flex}.legend-item svg{flex:none;display:block}.map-scale{text-align:right;font-family:var(--mono);padding:5px 8px;font-size:11px;right:10px}.map-scale-bar{border:1px solid var(--ink-2);border-top:none;height:4px;margin-top:3px;margin-left:auto}.map-tooltip{pointer-events:none;z-index:5;background:var(--surface-3);border:1px solid var(--line-strong);border-radius:var(--radius);min-width:210px;box-shadow:var(--shadow-pop);padding:8px 10px;font-size:12.5px;position:absolute}.map-tooltip .tip-title{align-items:center;gap:8px;margin-bottom:4px;font-weight:600;display:flex}.map-tooltip .tip-row{justify-content:space-between;gap:12px;display:flex}.map-tooltip .tip-row span:first-child{color:var(--ink-3)}.map-label{font-family:var(--font);fill:var(--ink);paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round;font-size:11.5px;font-weight:600}.map-group-label{font-family:var(--mono);fill:#fff;font-size:11px;font-weight:600}.map-wrap.on-image .map-label{fill:#111214;stroke:#ffffffeb}.kv{grid-template-columns:96px minmax(0,1fr);font-size:13px;display:grid}.kv dt{color:var(--ink-3);border-top:1px solid var(--line);padding:6px 0}.kv dd{border-top:1px solid var(--line);overflow-wrap:anywhere;min-width:0;margin:0;padding:6px 0}.kv dt:first-of-type,.kv dd:first-of-type{border-top:none}.settings-layout{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:24px;display:grid}.settings-nav{flex-direction:column;gap:2px;display:flex;position:sticky;top:72px}.settings-nav a{border-radius:var(--radius);color:var(--ink-2);padding:5px 8px;font-size:13px;text-decoration:none}.settings-nav a:hover{background:var(--surface-2);color:var(--ink)}.settings-section{scroll-margin-top:72px}.setting-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(220px,300px);align-items:start;gap:8px 24px;padding:14px;display:grid}.setting-row:first-child{border-top:none}.setting-row.changed{box-shadow:inset 3px 0 0 var(--ink)}.setting-title{flex-wrap:wrap;align-items:center;gap:6px;font-size:13.5px;font-weight:500;display:flex}.setting-title .unit{color:var(--ink-3);font-size:12.5px;font-weight:400}.setting-desc{color:var(--ink-3);margin-top:2px;font-size:12.5px}.setting-meta{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;font-size:12px;display:flex}.restart-mark{color:var(--ink-3);align-items:center;gap:4px;font-size:11.5px;font-weight:400;display:inline-flex}.save-bar{z-index:15;border-radius:var(--radius);background:var(--surface-3);border:1px solid var(--line-strong);box-shadow:var(--shadow-pop);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 10px 16px;font-size:13px;display:flex;position:sticky;bottom:16px}.danger-zone{border-color:color-mix(in srgb, var(--critical) 35%, var(--line))}@media (max-width:900px){.settings-layout{grid-template-columns:minmax(0,1fr)}.settings-nav{flex-flow:wrap;position:static}.setting-row{grid-template-columns:minmax(0,1fr)}}.role-list{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);flex-direction:column;max-height:232px;display:flex;overflow-y:auto}.role-item{border-top:1px solid var(--line);cursor:pointer;align-items:center;gap:8px;min-width:0;padding:6px 10px;font-size:13px;display:flex}.role-item:first-child{border-top:none}.role-item:hover{background:var(--surface-2)}.role-item-blocked{cursor:not-allowed}.role-item-blocked>.truncate:not(.role-item-note){color:var(--ink-3)}.role-item-note{flex-shrink:0;max-width:50%;margin-left:auto}.log{font-family:var(--mono);font-size:12px}.log-line{border-top:1px solid var(--line);grid-template-columns:76px 52px 120px minmax(0,1fr);align-items:baseline;gap:12px;padding:5px 14px;display:grid}.log-line:first-child{border-top:none}.log-line .msg{font-family:var(--font);color:var(--ink);overflow-wrap:anywhere;font-size:13px}.log-line .ctx{color:var(--ink-3);font-family:var(--mono);font-size:11.5px}.lvl{font-size:11px;font-weight:600}.lvl-error{color:var(--critical)}.lvl-warn{color:var(--warning)}.lvl-info{color:var(--ink-2)}.lvl-debug{color:var(--ink-3)}@media (max-width:760px){.log-line{grid-template-columns:70px 48px minmax(0,1fr)}.log-line .scope{display:none}}.topbar{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:12px;height:52px;padding:0 24px;display:flex}.topbar nav{align-items:center;gap:4px;min-width:0;margin-left:auto;display:flex}.page{flex-direction:column;gap:20px;width:100%;max-width:960px;margin:0 auto;padding:32px 24px 64px;display:flex}.page-narrow{flex-direction:column;gap:20px;width:100%;max-width:600px;margin:0 auto;padding:32px 24px 64px;display:flex}.landing{grid-template-columns:minmax(0,1.1fr) minmax(0,420px);align-items:center;gap:48px;max-width:1040px;min-height:calc(100vh - 52px);margin:0 auto;padding:48px 24px;display:grid}.landing-copy h1{letter-spacing:-.02em;max-width:20ch;font-size:30px;line-height:1.2}.landing-copy .lead{color:var(--ink-2);max-width:46ch;margin-top:12px;font-size:15px}.steps{border-top:1px solid var(--line);flex-direction:column;margin:28px 0 0;padding:0;list-style:none;display:flex}.steps li{border-bottom:1px solid var(--line);grid-template-columns:36px minmax(0,1fr);gap:4px 0;padding:12px 0;display:grid}.steps .step-n{font-family:var(--mono);color:var(--ink-3);padding-top:2px;font-size:12px}.steps .step-t{font-size:13.5px;font-weight:600}.steps .step-d{color:var(--ink-3);grid-column:2;font-size:13px}.login-panel{flex-direction:column;gap:14px;padding:24px;display:flex}.login-panel h2{font-size:16px}@media (max-width:860px){.landing{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:32px}}.server-list{margin:0;padding:0;list-style:none}.server-row{border-top:1px solid var(--line);align-items:center;gap:14px;min-width:0;padding:12px 14px;display:flex}.server-row:first-child{border-top:none}.server-row .grow{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.server-name{font-size:14px;font-weight:600}.guild-icon{object-fit:cover;border-radius:10px;flex:none;width:40px;height:40px}.guild-icon-fallback{background:var(--surface-3);color:var(--ink-2);place-items:center;font-size:13px;font-weight:600;display:grid}.guild-icon.sm{border-radius:7px;width:28px;height:28px;font-size:11px}.setup-steps{flex-direction:column;display:flex}.setup-step{border-top:1px solid var(--line);grid-template-columns:28px minmax(0,1fr);gap:0 12px;padding:16px 0;display:grid}.setup-step:first-child{border-top:none;padding-top:0}.step-dot{width:24px;height:24px;font-family:var(--mono);background:var(--surface-3);color:var(--ink);border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid}.verify-account{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:14px;padding:14px;display:flex}@media (max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.rail{z-index:50;width:min(300px,86vw);box-shadow:var(--shadow-pop);transition:transform .16s ease-out;position:fixed;inset:0 auto 0 0;transform:translate(-102%)}.rail.open{transform:none}.scrim{z-index:40;background:var(--overlay);position:fixed;inset:0}.mobile-bar{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:8px;height:52px;padding:0 12px;display:flex}.statusbar{gap:10px;padding:8px 16px;position:static}.statusbar .btn-row{width:100%}.statusbar .btn-row .btn:first-child{flex:1}.readouts{gap:6px 14px}.content{padding:16px 16px 40px}.topbar{padding:0 16px}.page,.page-narrow{padding:24px 16px 48px}}@media (max-width:520px){.server-row{flex-wrap:wrap}.server-row>.btn{width:100%}.topbar .hide-sm,.readout.hide-sm{display:none}.metric{border-left:none;border-top:1px solid var(--line);flex-basis:50%}.metric:nth-child(-n+2){border-top:none}.metric:nth-child(2n){border-left:1px solid var(--line)}.landing-copy h1{font-size:24px}}.brand-mark{flex:none;display:block}.legal-links{flex-wrap:wrap;justify-content:center;gap:4px 16px;padding:24px 16px 32px;font-size:12.5px;display:flex}.legal-links a{color:var(--ink-3);text-decoration:none}.legal-links a:hover{color:var(--ink);text-decoration:underline}.legal-links.compact{justify-content:flex-start;gap:2px 10px;padding:8px 8px 2px;font-size:11.5px}.login-wrap{flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 52px);padding:32px 16px 0;display:flex}.login-panel .login-logo{width:40px;height:40px}.health-icon{border-radius:50%;flex:none;place-items:center;width:22px;height:22px;margin-top:1px;display:grid}.health-ok{color:var(--good);background:color-mix(in srgb, var(--good) 14%, transparent)}.health-warn{color:var(--warning);background:color-mix(in srgb, var(--warning) 14%, transparent)}.health-error{color:var(--critical);background:color-mix(in srgb, var(--critical) 14%, transparent)}.page-wide{max-width:1240px}.tabs{border-bottom:1px solid var(--line);gap:4px;display:flex;overflow-x:auto}.tabs a{color:var(--ink-2);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:8px 12px;font-size:13.5px;text-decoration:none;display:inline-flex}.tabs a:hover{color:var(--ink)}.tabs a.active{color:var(--ink);border-bottom-color:var(--ink);font-weight:500}.tab-count{font-family:var(--mono);background:color-mix(in srgb, var(--critical) 25%, var(--surface-3));color:var(--ink);border-radius:999px;padding:0 6px;font-size:11px}.segmented{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);gap:2px;padding:2px;display:inline-flex}.segmented button{height:24px;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0 10px;font-size:12.5px}.segmented button.on{background:var(--surface-3);color:var(--ink)}.incident-list{margin:0;padding:0;list-style:none}.incident{border-top:1px solid var(--line);padding:12px 14px}.incident:first-child{border-top:none}.incident-main{align-items:flex-start;gap:12px;display:flex}.incident-msg{overflow-wrap:anywhere;font-weight:500}.incident-ctx{margin-top:6px}.incident-ctx summary{cursor:pointer;color:var(--ink-3);font-size:12px}.incident-ctx pre{border-radius:var(--radius);background:var(--bg);border:1px solid var(--line);font-family:var(--mono);color:var(--ink-2);max-height:260px;margin:6px 0 0;padding:10px;font-size:11.5px;overflow-x:auto}@media (max-width:640px){.incident-main{flex-wrap:wrap}}.loader{color:var(--ink-3);align-items:center;gap:14px;padding:28px 4px;font-size:13px;display:flex}.loader-page{flex-direction:column;justify-content:center;gap:22px;min-height:60vh;padding:0;font-size:13.5px}.loader-mark{--loader-size:44px;width:var(--loader-size);height:var(--loader-size);flex:none;place-items:center;display:grid;position:relative}.loader-page .loader-mark{--loader-size:112px}.loader-mark img{z-index:1;animation:1.8s ease-in-out infinite loader-breathe;position:relative}.loader-ring{opacity:0;background:#2fb8f20f;border:1.5px solid #2fb8f2b3;border-radius:50%;animation:2.4s cubic-bezier(.2,.6,.35,1) infinite loader-ring;position:absolute;inset:0;transform:scale(.25)}.loader-ring:nth-child(2){animation-delay:.8s}.loader-ring:nth-child(3){animation-delay:1.6s}.loader-dot{border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px;position:absolute;top:50%;left:50%}.loader-page .loader-dot{width:9px;height:9px;margin:-4.5px 0 0 -4.5px}.loader-dot-a{background:var(--series-1);animation:3.6s ease-in-out infinite loader-orbit-a}.loader-dot-b{background:var(--series-3);animation:3.6s ease-in-out infinite loader-orbit-b}.loader-label{letter-spacing:.01em}@keyframes loader-ring{0%{opacity:0;transform:scale(.25)}15%{opacity:1}to{opacity:0;transform:scale(1)}}@keyframes loader-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes loader-orbit-a{0%,to{transform:rotate(0deg) translateX(calc(var(--loader-size) * .42)) rotate(0deg)}50%{transform:rotate(160deg) translateX(calc(var(--loader-size) * .3)) rotate(-160deg)}}@keyframes loader-orbit-b{0%,to{transform:rotate(180deg) translateX(calc(var(--loader-size) * .42)) rotate(-180deg)}50%{transform:rotate(200deg) translateX(calc(var(--loader-size) * .3)) rotate(-200deg)}}@media (prefers-reduced-motion:reduce){.loader-ring,.loader-mark img,.loader-dot{animation:none}.loader-ring{opacity:.5}.loader-ring:first-child{transform:scale(.45)}.loader-ring:nth-child(2){transform:scale(.7)}.loader-ring:nth-child(3){transform:scale(.95)}.loader-dot{display:none}}.nav-section{text-transform:uppercase;letter-spacing:.06em;margin-top:14px;font-size:10.5px}.token-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.token{font-family:var(--mono);border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink-2);cursor:pointer;border-radius:999px;padding:2px 8px;font-size:12px}.token:hover{color:var(--ink);border-color:var(--ink-3)}.nick-preview{color:var(--ink-3);margin-top:8px;font-size:12.5px}.nick-preview strong{color:var(--ink);font-weight:600}.panel-preview{background:var(--surface-2);border-left:4px solid #2fb8f2;border-radius:6px;max-width:520px;padding:12px 14px}.panel-preview h3{margin:0 0 6px;font-size:14px}.panel-preview p{white-space:pre-wrap;color:var(--ink-2);margin:0;font-size:13px}.panel-preview .btn-row{margin-top:12px}.fake-btn{color:#fff;background:#4e5058;border-radius:4px;align-items:center;gap:6px;height:30px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.fake-btn-link{background:#4e5058}textarea.input{resize:vertical;min-height:110px;padding-top:8px;font-family:inherit;line-height:1.5}.panel-preview strong{color:var(--ink)}.perm-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:16px;display:grid}.perm-roles{flex-direction:column;display:flex;position:sticky;top:72px;overflow:hidden}.perm-manager{border-bottom:1px solid var(--line);background:var(--surface-2);align-items:center;gap:10px;padding:12px 14px;display:flex}.perm-manager-icon{background:var(--surface-3);width:30px;height:30px;color:var(--ink-2);border-radius:8px;flex:none;place-items:center;display:grid}.perm-roles .grow,.perm-editor .grow{flex-direction:column;flex:1;min-width:0;display:flex}.perm-role-name{color:var(--ink);font-size:13.5px;font-weight:500}.perm-role-sub{color:var(--ink-3);font-size:11.5px}.perm-count{font-family:var(--mono);color:var(--ink-3);border:1px solid var(--line-strong);border-radius:999px;flex:none;padding:1px 7px;font-size:11.5px}.perm-list-head{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);justify-content:space-between;padding:12px 14px 6px;font-size:11px;display:flex}.perm-list{flex-direction:column;gap:1px;max-height:52vh;margin:0;padding:0 6px;list-style:none;display:flex;overflow-y:auto}.perm-role{border-radius:var(--radius);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:8px;display:flex}.perm-role:hover{background:var(--surface-2)}.perm-role.active{background:var(--surface-3);box-shadow:inset 2px 0 0 var(--ink)}.perm-role:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.perm-manager-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.perm-count-text{white-space:nowrap;font-family:inherit;font-size:11px}.perm-changed{background:var(--warning);border-radius:50%;flex:none;width:6px;height:6px}.perm-empty{color:var(--ink-3);padding:4px 14px 8px;font-size:12.5px}.perm-add{border-top:1px solid var(--line);margin-top:8px;padding:10px}.role-dot{border-radius:50%;flex:none;width:10px;height:10px}.role-dot-lg{width:14px;height:14px}.perm-editor{min-width:0}.perm-editor-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:16px 18px;display:flex}.perm-editor-head h2{font-size:16px}.perm-group{padding:6px 0 4px}.perm-group+.perm-group{border-top:1px solid var(--line)}.perm-group-title{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin:0;padding:10px 18px 4px;font-size:11px;font-weight:500}.perm-row{cursor:pointer;align-items:center;gap:14px;padding:10px 18px;transition:background .12s;display:flex}.perm-row:hover{background:var(--surface-2)}.perm-row-icon{background:var(--surface-2);width:30px;height:30px;color:var(--ink-3);border-radius:8px;flex:none;place-items:center;transition:color .12s,background .12s;display:grid}.perm-row.on .perm-row-icon{background:var(--surface-3);color:var(--ink)}.perm-row-title{font-size:13.5px;font-weight:500}.perm-row-desc{color:var(--ink-3);margin-top:1px;font-size:12.5px}.perm-row-desc em{color:var(--ink-2);font-style:normal}.perm-foot{border-top:1px solid var(--line);color:var(--ink-3);align-items:center;gap:8px;margin:0;padding:12px 18px 14px;font-size:12.5px;display:flex}.perm-placeholder{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:56px 24px;display:flex}.perm-placeholder p{max-width:340px;margin:0}.switch{flex:none;width:36px;height:20px;display:inline-flex;position:relative}.switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch-track{background:var(--surface-3);border:1px solid var(--line-strong);border-radius:999px;width:100%;height:100%;transition:background .12s,border-color .12s}.switch-track:after{content:"";background:var(--ink-3);border-radius:50%;width:14px;height:14px;transition:transform .15s,background .12s;position:absolute;top:3px;left:3px}.switch input:checked+.switch-track{background:var(--ink);border-color:var(--ink)}.switch input:checked+.switch-track:after{background:var(--bg);transform:translate(16px)}.switch input:focus-visible+.switch-track{outline:2px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){.switch-track,.switch-track:after,.perm-row{transition:none}}@media (max-width:900px){.perm-layout{grid-template-columns:minmax(0,1fr)}.perm-roles{position:static}.perm-list{max-height:none}}
