@font-face{font-family:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-cyrillic-ext-wght-normal.CVcCQn0y.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-cyrillic-wght-normal.BJ-nQEdz.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-greek-wght-normal.DeN4rzfy.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-vietnamese-wght-normal.AVFfiTln.woff2)format("woff2-variations");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:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-latin-ext-wght-normal.gysdOMcS.woff2)format("woff2-variations");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:Roboto Flex Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/roboto-flex-latin-wght-normal.n-dP9qr2.woff2)format("woff2-variations");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:Material Symbols Outlined;font-style:normal;font-weight:100 700;font-display:block;src:url(/_astro/material-symbols-outlined.D_27-b_z.woff2)format("woff2")}.material-symbols-outlined{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"liga";direction:ltr;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}:root{color-scheme:dark;--md-sys-color-background:#1b101a;--md-sys-color-on-background:#f1ddec;--md-sys-color-surface:#1b101a;--md-sys-color-surface-dim:#1b101a;--md-sys-color-surface-bright:#423541;--md-sys-color-surface-container-lowest:#150b15;--md-sys-color-surface-container-low:#231823;--md-sys-color-surface-container:#281c27;--md-sys-color-surface-container-high:#332631;--md-sys-color-surface-container-highest:#3e313c;--md-sys-color-on-surface:#f1ddec;--md-sys-color-surface-variant:#544152;--md-sys-color-on-surface-variant:#d9bfd4;--md-sys-color-inverse-surface:#f1ddec;--md-sys-color-inverse-on-surface:#392c38;--md-sys-color-outline:#a18a9d;--md-sys-color-outline-variant:#544152;--md-sys-color-shadow:#000;--md-sys-color-scrim:#000;--md-sys-color-surface-tint:#ffa9fd;--md-sys-color-primary:#ffa9fd;--md-sys-color-on-primary:#590061;--md-sys-color-primary-container:#ef36fe;--md-sys-color-on-primary-container:#39003e;--md-sys-color-inverse-primary:#a500b2;--md-sys-color-secondary:#ffa9fd;--md-sys-color-on-secondary:#590061;--md-sys-color-secondary-container:#7a1382;--md-sys-color-on-secondary-container:#fa8cfb;--md-sys-color-tertiary:#ffb1c3;--md-sys-color-on-tertiary:#66002d;--md-sys-color-tertiary-container:#ff4b89;--md-sys-color-on-tertiary-container:#41001a;--md-sys-color-error:#ffb4ab;--md-sys-color-on-error:#690005;--md-sys-color-error-container:#93000a;--md-sys-color-on-error-container:#ffdad6;--md-sys-color-primary-fixed:#ffd6f9;--md-sys-color-primary-fixed-dim:#ffa9fd;--md-sys-color-on-primary-fixed:#37003c;--md-sys-color-on-primary-fixed-variant:#7e0088;--md-sys-color-secondary-fixed:#ffd6f9;--md-sys-color-secondary-fixed-dim:#ffa9fd;--md-sys-color-on-secondary-fixed:#37003c;--md-sys-color-on-secondary-fixed-variant:#7a1382;--md-sys-color-tertiary-fixed:#ffd9e0;--md-sys-color-tertiary-fixed-dim:#ffb1c3;--md-sys-color-on-tertiary-fixed:#3f0019;--md-sys-color-on-tertiary-fixed-variant:#8f0041;--md-ref-typeface-brand:"Roboto Flex Variable", system-ui, sans-serif;--md-ref-typeface-plain:"Roboto Flex Variable", system-ui, sans-serif;--md-icon-font:"Material Symbols Outlined";--good:#8bd88f;--on-good:#00390b;--good-container:#1f4d24;--warn:#f2c26b;--warn-container:#5a4300;--shape-xs:4px;--shape-s:8px;--shape-m:12px;--shape-l:16px;--shape-xl:28px;--rail:88px}*{box-sizing:border-box}html,body{margin:0}body{background:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-ref-typeface-plain);letter-spacing:.0179em;-webkit-font-smoothing:antialiased;font-size:.875rem;line-height:1.25rem}a{color:var(--md-sys-color-primary)}.display-s{font:400 2.25rem/2.75rem var(--md-ref-typeface-brand);margin:0}.headline-m{font:400 1.75rem/2.25rem var(--md-ref-typeface-brand);margin:0}.headline-s{font:400 1.5rem/2rem var(--md-ref-typeface-brand);margin:0}.title-l{font:400 1.375rem/1.75rem var(--md-ref-typeface-brand);margin:0}.title-m{font:500 1rem/1.5rem var(--md-ref-typeface-plain);letter-spacing:.009em;margin:0}.title-s{font:500 .875rem/1.25rem var(--md-ref-typeface-plain);letter-spacing:.007em;margin:0}.body-l{font:400 1rem/1.5rem var(--md-ref-typeface-plain);letter-spacing:.031em}.body-m{font:400 .875rem/1.25rem var(--md-ref-typeface-plain)}.body-s{font:400 .75rem/1rem var(--md-ref-typeface-plain);letter-spacing:.033em}.label-l{font:500 .875rem/1.25rem var(--md-ref-typeface-plain);letter-spacing:.007em}.label-m{font:500 .75rem/1rem var(--md-ref-typeface-plain);letter-spacing:.042em}.muted{color:var(--md-sys-color-on-surface-variant)}.mono{word-break:break-all;font-family:ui-monospace,JetBrains Mono,monospace;font-size:.8125rem}.shell{min-height:100vh;display:flex}.rail{width:var(--rail);background:var(--md-sys-color-surface);z-index:2;flex-direction:column;align-items:center;gap:12px;padding:44px 0 16px;display:flex;position:fixed;inset:0 auto 0 0}.rail .logo{width:40px;height:40px;margin-bottom:28px}.nav-item{color:var(--md-sys-color-on-surface-variant);outline:none;flex-direction:column;align-items:center;gap:4px;width:80px;text-decoration:none;display:flex;position:relative}.nav-item .pill{--md-ripple-hover-color:var(--md-sys-color-on-surface);--md-ripple-pressed-color:var(--md-sys-color-on-surface);border-radius:16px;place-items:center;width:56px;height:32px;display:grid;position:relative}.nav-item md-focus-ring{--md-focus-ring-shape:16px}.nav-item[aria-current=page]{color:var(--md-sys-color-on-surface)}.nav-item[aria-current=page] .pill{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.nav-item[aria-current=page] md-icon{font-variation-settings:"FILL" 1}.rail .spacer{flex:1}.main{margin-left:var(--rail);flex:1;min-width:0}.topbar{z-index:1;background:var(--md-sys-color-surface);align-items:center;gap:12px;height:64px;padding:0 16px 0 24px;transition:background .2s;display:flex;position:sticky;top:0}.topbar.scrolled{background:var(--md-sys-color-surface-container)}.topbar .title-l{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.user{align-items:center;gap:8px;display:flex}.avatar{background:var(--md-sys-color-primary-container);width:32px;height:32px;color:var(--md-sys-color-on-primary-container);font:500 .875rem/1 var(--md-ref-typeface-plain);text-transform:uppercase;border-radius:50%;place-items:center;display:grid}.content{max-width:1280px;padding:8px 24px 48px}.navbar{display:none}@media (width<=600px){.rail{display:none}.main{margin-left:0;padding-bottom:80px}.content{padding:8px 16px 32px}.topbar{padding:0 8px 0 16px}.user .name{display:none}.navbar{z-index:2;background:var(--md-sys-color-surface-container);justify-content:space-around;align-items:center;height:80px;display:flex;position:fixed;inset:auto 0 0}.navbar .nav-item{flex:1;width:auto}}.grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.grid.wide{grid-template-columns:repeat(auto-fill,minmax(420px,1fr))}@media (width<=600px){.grid,.grid.wide{grid-template-columns:1fr}}.stack{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.row.between{justify-content:space-between}.spread{flex:1}.card{border-radius:var(--shape-m);background:var(--md-sys-color-surface-container-low);flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex;position:relative}.card.filled{background:var(--md-sys-color-surface-container-highest)}.card.outlined{background:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant)}.card md-elevation{--md-elevation-level:1}.card-head{align-items:center;gap:12px;display:flex}.card-head md-icon{color:var(--md-sys-color-primary)}.card-head .title-m{flex:1}a.card{color:inherit;outline:none;text-decoration:none}a.card md-focus-ring{--md-focus-ring-shape:var(--shape-m)}.hero{border-radius:var(--shape-xl);background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);flex-wrap:wrap;align-items:center;gap:24px;margin:8px 0 24px;padding:24px;display:flex}.hero .big{font:400 3.5rem/4rem var(--md-ref-typeface-brand);letter-spacing:-.016em}.hero md-icon{--md-icon-size:48px}.section-title{margin:32px 0 12px}.kv{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;display:grid}.kv dt{color:var(--md-sys-color-on-surface-variant)}.kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.chip{border-radius:var(--shape-s);height:28px;font:500 .75rem/1 var(--md-ref-typeface-plain);letter-spacing:.04em;white-space:nowrap;background:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface-variant);align-items:center;gap:6px;padding:0 12px 0 8px;display:inline-flex}.chip md-icon{--md-icon-size:18px}.chip.good{background:var(--good-container);color:var(--good)}.chip.warn{background:var(--warn-container);color:var(--warn)}.chip.bad{background:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.meter{background:var(--md-sys-color-surface-container-highest);border-radius:6px;height:12px;overflow:hidden}.meter>span{background:var(--md-sys-color-primary);border-radius:6px;height:100%;display:block}.meter.warn>span{background:var(--warn)}.meter.bad>span{background:var(--md-sys-color-error)}.table-wrap{border-radius:var(--shape-m);background:var(--md-sys-color-surface-container-low);overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;white-space:nowrap;padding:12px 16px}th{font:500 .75rem/1rem var(--md-ref-typeface-plain);letter-spacing:.042em;color:var(--md-sys-color-on-surface-variant)}tbody tr{border-top:1px solid var(--md-sys-color-outline-variant)}tbody tr:hover{background:color-mix(in srgb, var(--md-sys-color-on-surface) 8%, transparent)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td a{text-decoration:none}td a:hover{text-decoration:underline}td.icon{width:40px;padding-right:0}td.icon md-icon{color:var(--md-sys-color-on-surface-variant)}td.wrap{white-space:normal}.crumbs{flex-wrap:wrap;align-items:center;gap:4px;margin:0 0 16px;display:flex}.crumbs a,.crumbs span{border-radius:var(--shape-s);padding:6px 8px;text-decoration:none}.crumbs a{color:var(--md-sys-color-primary)}.crumbs a:hover{background:color-mix(in srgb, var(--md-sys-color-primary) 8%, transparent)}.crumbs md-icon{--md-icon-size:18px;color:var(--md-sys-color-on-surface-variant)}form.inline{flex-wrap:wrap;align-items:center;gap:12px;margin:0;display:flex}form.plain{margin:0;display:inline}md-outlined-text-field{min-width:240px}label.check{cursor:pointer;align-items:center;gap:4px;display:inline-flex}.banner{border-radius:var(--shape-m);background:var(--md-sys-color-surface-container-high);align-items:center;gap:16px;margin:0 0 16px;padding:12px 16px;display:flex}.banner.bad{background:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.banner.warn{background:var(--warn-container);color:var(--warn)}.banner.secret{background:var(--md-sys-color-tertiary-container);color:var(--md-sys-color-on-tertiary-container);flex-direction:column;align-items:stretch}.snackbar{z-index:10;border-radius:var(--shape-xs);background:var(--md-sys-color-inverse-surface);min-height:48px;color:var(--md-sys-color-inverse-on-surface);align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:4px 8px 4px 16px;transition:opacity .3s,transform .3s;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 3px 5px -1px #0000004d,0 6px 10px #0003}.snackbar.bad{background:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.snackbar.gone{opacity:0;pointer-events:none;transform:translate(-50%,16px)}@media (width<=600px){.snackbar{bottom:96px}}.empty{text-align:center;color:var(--md-sys-color-on-surface-variant);padding:32px 16px}.empty md-icon{--md-icon-size:40px;margin:0 auto 8px;display:block}md-dialog{--md-dialog-container-color:var(--md-sys-color-surface-container-high);max-width:420px}.login{background:radial-gradient(1200px 600px at 20% -10%, color-mix(in srgb, var(--md-sys-color-primary-container) 35%, transparent), transparent), var(--md-sys-color-surface);place-items:center;min-height:100vh;padding:24px;display:grid}.login .card{border-radius:var(--shape-xl);background:var(--md-sys-color-surface-container);text-align:center;align-items:center;gap:16px;width:min(400px,100%);padding:32px 24px 24px}.login .logo{width:64px;height:64px}.login md-filled-button{--md-filled-button-container-height:48px;width:100%}
