@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-ext-400-normal-C_uLvvQ5.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-ext-400-normal-Bh0R7Dhr.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-vietnamese-400-normal-ByoDsISC.woff2) format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-ext-500-normal-C9ShMxGR.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-ext-500-normal-CEVyPk4Y.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2) format("woff2"),url(/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2) format("woff2"),url(/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-vietnamese-500-normal-BvH7FW2L.woff2) format("woff2"),url(/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--sp-bg: #0d1016;--sp-topbar: #0a0d12;--sp-sidebar: #0b0e13;--sp-panel: #12161d;--sp-raised: #171c25;--sp-input-bg: #0e1218;--sp-code-bg: #0a0d12;--sp-row-hover: #141922;--sp-border: #232a35;--sp-border-soft: #1a2029;--sp-overlay: rgba(4, 6, 10, .66);--sp-text: #e6e9ef;--sp-muted: #8a93a3;--sp-heading: #ffffff;--sp-code-text: #cfd6e2;--sp-code-key: #7fb0ff;--sp-link: #7fb0ff;--sp-accent: #3d7cf4;--sp-accent-fill: #2f6fe4;--sp-accent-deep: #1f4fae;--sp-brand: #144690;--sp-accent-soft: #13213a;--sp-accent-soft-text: #a9c4ff;--sp-success: #3fcf8e;--sp-success-bg: #123524;--sp-warn: #f5b84d;--sp-warn-bg: #2a2312;--sp-warn-border: #4a3c17;--sp-danger: #e48a8a;--sp-danger-bg: #2a1d1d;--sp-danger-border: #4a2a2a;--sp-draft: #9db4d8;--sp-draft-bg: #1d2633;--sp-violet: #a68bff;--sp-violet-bg: #261f4a;--sp-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--sp-font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--sp-fs-xs: 11px;--sp-fs-sm: 12px;--sp-fs-md: 13px;--sp-fs-lg: 15px;--sp-fs-xl: 18px;--sp-fs-2xl: 22px;--sp-lh: 1.45;--sp-lh-code: 1.7;--sp-fw-normal: 400;--sp-fw-medium: 500;--sp-fw-semibold: 600;--sp-fw-bold: 700;--sp-space-1: 4px;--sp-space-2: 8px;--sp-space-3: 12px;--sp-space-4: 16px;--sp-space-5: 20px;--sp-space-6: 24px;--sp-radius-sm: 8px;--sp-radius-md: 10px;--sp-radius-lg: 12px;--sp-radius-pill: 999px;--sp-focus-width: 2px;--sp-focus-offset: 2px;--sp-focus-ring: var(--sp-focus-width) solid var(--sp-accent);--sp-topbar-h: 48px;--sp-sidebar-w: 220px;--sp-content-max: 1200px;--sp-control-h: 32px;--sp-target-min: 24px;--sp-shadow-overlay: 0 12px 32px rgba(0, 0, 0, .45);--sp-motion: .12s ease}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--sp-bg);color:var(--sp-text);font-family:var(--sp-font);font-size:var(--sp-fs-md);line-height:var(--sp-lh);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{color:var(--sp-heading);line-height:1.25;font-weight:var(--sp-fw-semibold)}h1{font-size:var(--sp-fs-2xl)}h2{font-size:var(--sp-fs-xl)}h3{font-size:var(--sp-fs-lg)}a{color:var(--sp-link);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}code,kbd,pre,samp{font-family:var(--sp-font-mono);font-size:.95em}::selection{background:var(--sp-accent-deep);color:var(--sp-heading)}hr{border:0;border-top:1px solid var(--sp-border)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:var(--sp-focus-ring);outline-offset:var(--sp-focus-offset)}*{scrollbar-color:var(--sp-border) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--sp-border);border:2px solid transparent;border-radius:var(--sp-radius-pill);background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sp-app{min-height:100vh;display:flex;flex-direction:column}.sp-topbar{position:sticky;top:0;z-index:30;height:var(--sp-topbar-h);flex:none;display:flex;align-items:center;gap:var(--sp-space-3);padding:0 var(--sp-space-4);background:var(--sp-topbar);border-bottom:1px solid var(--sp-border)}.sp-brand{display:inline-flex;align-items:center;gap:var(--sp-space-3);flex:none;color:var(--sp-heading);text-decoration:none;border-radius:var(--sp-radius-sm)}.sp-brand:hover{text-decoration:none}.sp-brand img{height:20px;width:auto;display:block}.sp-brand-name{font-weight:var(--sp-fw-semibold);letter-spacing:.2px;white-space:nowrap}.sp-crumbs{min-width:0;overflow:hidden}.sp-crumbs ol{display:flex;align-items:center;margin:0;padding:0;list-style:none;color:var(--sp-muted);white-space:nowrap}.sp-crumbs li{min-width:0;overflow:hidden;text-overflow:ellipsis}.sp-crumbs li:before{content:"/";margin:0 var(--sp-space-2) 0 0;color:var(--sp-muted)}.sp-crumbs li+li:before{margin-left:var(--sp-space-2)}.sp-crumbs a{color:var(--sp-muted)}.sp-crumbs a:hover,.sp-crumbs [aria-current]{color:var(--sp-text)}.sp-cmd{margin-left:auto;display:flex;align-items:center;gap:var(--sp-space-2);width:260px;max-width:40vw;height:30px;padding:0 var(--sp-space-2) 0 var(--sp-space-3);background:var(--sp-raised);border:1px solid var(--sp-border);border-radius:var(--sp-radius-sm);color:var(--sp-muted);cursor:text;text-align:left;transition:border-color var(--sp-motion)}.sp-cmd:hover{border-color:var(--sp-muted)}.sp-cmd-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-cmd svg{flex:none}.sp-account{position:relative;flex:none}.sp-avatar{width:28px;height:28px;border-radius:50%;border:0;padding:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--sp-accent-deep),#6a4fd6);color:var(--sp-heading);font-size:var(--sp-fs-xs);font-weight:var(--sp-fw-semibold);cursor:pointer}.sp-avatar:focus-visible{border-radius:50%}.sp-body{flex:1;display:flex;min-height:0}.sp-sidebar{width:var(--sp-sidebar-w);flex:none;position:sticky;top:var(--sp-topbar-h);height:calc(100vh - var(--sp-topbar-h));overflow-y:auto;padding:var(--sp-space-3) 10px;background:var(--sp-sidebar);border-right:1px solid var(--sp-border)}.sp-nav-group+.sp-nav-group{margin-top:var(--sp-space-2)}.sp-nav-label{margin:10px var(--sp-space-2) 6px;font-size:10px;font-weight:var(--sp-fw-semibold);letter-spacing:.8px;text-transform:uppercase;color:var(--sp-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-nav-list{list-style:none;margin:0;padding:0}.sp-nav-link{display:flex;align-items:center;gap:var(--sp-space-2);min-height:30px;padding:6px var(--sp-space-2);margin:1px 0;border-radius:7px;color:var(--sp-text);opacity:.82;text-decoration:none;transition:background var(--sp-motion),opacity var(--sp-motion)}.sp-nav-link:hover{background:var(--sp-row-hover);opacity:1;text-decoration:none}.sp-nav-link.is-active{background:var(--sp-raised);opacity:1;box-shadow:inset 2px 0 0 var(--sp-accent)}.sp-nav-link span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-nav-link svg{flex:none;color:var(--sp-muted)}.sp-nav-link.is-active svg{color:var(--sp-accent)}.sp-dot{display:inline-block;vertical-align:middle;flex:none;width:8px;height:8px;border-radius:3px;background:var(--sp-accent)}.sp-main{flex:1;min-width:0;padding:18px 22px}.sp-content{width:100%;max-width:var(--sp-content-max);margin:0 auto}.sp-topbar .sp-menu-toggle,.sp-drawer-backdrop{display:none}.sp-center-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-space-3);padding:var(--sp-space-6);text-align:center;color:var(--sp-muted);background:var(--sp-bg)}.sp-center-page img{height:24px;width:auto}.sp-center-page h1{margin:0;font-size:var(--sp-fs-xl)}.sp-center-page .sp-hint{margin:0;max-width:48ch}@media (max-width: 900px){.sp-topbar .sp-menu-toggle{display:inline-flex}.sp-sidebar{position:fixed;top:var(--sp-topbar-h);bottom:0;left:0;z-index:40;height:auto;transform:translate(-100%);visibility:hidden;transition:transform .15s ease,visibility 0s linear .15s}.sp-sidebar.is-open{transform:translate(0);visibility:visible;transition:transform .15s ease}.sp-drawer-backdrop.is-open{display:block;position:fixed;inset:var(--sp-topbar-h) 0 0 0;z-index:35;background:var(--sp-overlay)}.sp-main{padding:var(--sp-space-3)}}@media (max-width: 640px){.sp-topbar{gap:var(--sp-space-2);padding:0 var(--sp-space-3)}.sp-brand-name,.sp-cmd-text,.sp-cmd .sp-kbd{display:none}.sp-cmd{width:auto;padding:0 var(--sp-space-2)}}.sp-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--sp-control-h);padding:0 var(--sp-space-3);border:1px solid var(--sp-border);border-radius:var(--sp-radius-sm);background:var(--sp-raised);color:var(--sp-text);font-weight:var(--sp-fw-medium);line-height:1.2;white-space:nowrap;cursor:pointer;text-decoration:none;transition:background var(--sp-motion),border-color var(--sp-motion),opacity var(--sp-motion)}.sp-btn:hover:not(:disabled){background:#1d2430;border-color:#2e3746;text-decoration:none}.sp-btn:disabled{opacity:.5;cursor:default}.sp-btn.is-primary{background:var(--sp-accent-fill);border-color:var(--sp-accent-fill);color:var(--sp-heading)}.sp-btn.is-primary:hover:not(:disabled){background:var(--sp-accent-deep);border-color:var(--sp-accent-deep)}.sp-btn.is-ghost{background:transparent}.sp-btn.is-ghost:hover:not(:disabled){background:var(--sp-row-hover)}.sp-btn.is-danger{color:var(--sp-danger);border-color:var(--sp-danger-border);background:transparent}.sp-btn.is-danger:hover:not(:disabled){background:var(--sp-danger-bg);border-color:var(--sp-danger-border)}.sp-btn.is-sm{min-height:26px;padding:0 var(--sp-space-2);font-size:var(--sp-fs-sm)}.sp-btn.is-icon{width:var(--sp-control-h);padding:0}.sp-pill{display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--sp-radius-pill);font-size:var(--sp-fs-xs);font-weight:var(--sp-fw-medium);line-height:1.45;white-space:nowrap;background:var(--sp-draft-bg);color:var(--sp-draft)}.sp-pill.is-draft,.sp-pill.is-neutral{background:var(--sp-draft-bg);color:var(--sp-draft)}.sp-pill.is-ready,.sp-pill.is-success{background:var(--sp-success-bg);color:var(--sp-success)}.sp-pill.is-cancelled,.sp-pill.is-danger{background:var(--sp-danger-bg);color:var(--sp-danger)}.sp-pill.is-info{background:var(--sp-accent-soft);color:var(--sp-accent-soft-text)}.sp-pill.is-warn{background:var(--sp-warn-bg);color:var(--sp-warn)}.sp-card{background:var(--sp-panel);border:1px solid var(--sp-border);border-radius:var(--sp-radius-lg);padding:var(--sp-space-4);margin-bottom:var(--sp-space-4)}.sp-card-title{margin:0 0 var(--sp-space-3);font-size:var(--sp-fs-lg);font-weight:var(--sp-fw-semibold);color:var(--sp-heading)}.sp-section-title{margin:var(--sp-space-4) 0 var(--sp-space-2);font-size:var(--sp-fs-md);font-weight:var(--sp-fw-semibold);color:var(--sp-text)}.sp-stat{background:var(--sp-panel);border:1px solid var(--sp-border);border-radius:var(--sp-radius-md);padding:var(--sp-space-3)}.sp-stat b{display:block;font-size:var(--sp-fs-2xl);font-weight:var(--sp-fw-semibold);color:var(--sp-heading);font-variant-numeric:tabular-nums}.sp-stat span{font-size:var(--sp-fs-sm);color:var(--sp-muted)}.sp-empty{padding:var(--sp-space-6) var(--sp-space-2);text-align:center;color:var(--sp-muted)}.sp-empty .sp-btn{margin-top:var(--sp-space-3)}.sp-skeleton{display:block;min-height:1em;border-radius:var(--sp-radius-sm);background:linear-gradient(90deg,var(--sp-panel) 0%,var(--sp-raised) 50%,var(--sp-panel) 100%);background-size:200% 100%;animation:sp-shimmer 1.4s linear infinite}@keyframes sp-shimmer{to{background-position:-200% 0}}.sp-banner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-space-2);padding:var(--sp-space-2) 10px;margin-bottom:var(--sp-space-3);border:1px solid var(--sp-border);border-radius:var(--sp-radius-sm);background:var(--sp-raised);font-size:var(--sp-fs-sm)}.sp-banner p{margin:0;flex:1}.sp-banner.is-warn{background:var(--sp-warn-bg);border-color:var(--sp-warn-border);color:var(--sp-warn)}.sp-banner.is-danger{background:var(--sp-danger-bg);border-color:var(--sp-danger-border);color:var(--sp-danger)}.sp-banner.is-info{background:var(--sp-accent-soft);border-color:var(--sp-accent-deep);color:var(--sp-accent-soft-text)}.sp-input,.sp-select,.sp-textarea{border:1px solid var(--sp-border);border-radius:var(--sp-radius-sm);padding:6px 9px;background:var(--sp-input-bg);color:var(--sp-text);font:inherit;line-height:var(--sp-lh);transition:border-color var(--sp-motion)}.sp-input,.sp-select{height:var(--sp-control-h)}.sp-input::placeholder,.sp-textarea::placeholder{color:var(--sp-muted);opacity:1}.sp-input:hover,.sp-select:hover,.sp-textarea:hover{border-color:#2e3746}.sp-input:focus-visible,.sp-select:focus-visible,.sp-textarea:focus-visible{border-color:var(--sp-accent);outline-offset:0}.sp-input:disabled,.sp-select:disabled,.sp-textarea:disabled,.sp-input[readonly],.sp-textarea[readonly]{color:var(--sp-muted);background:var(--sp-panel)}.sp-textarea{width:100%;min-height:6em;resize:vertical}.sp-code-area{width:100%;border:1px solid var(--sp-border);border-radius:var(--sp-radius-md);padding:var(--sp-space-3);background:var(--sp-code-bg);color:var(--sp-code-text);font-family:var(--sp-font-mono);font-size:var(--sp-fs-sm);line-height:var(--sp-lh-code);resize:vertical}.sp-label{display:block;margin-bottom:var(--sp-space-1);font-size:var(--sp-fs-xs);color:var(--sp-muted)}.sp-field{position:relative;display:flex;flex-direction:column;gap:var(--sp-space-1);min-width:0}.sp-field .sp-input,.sp-field .sp-select,.sp-field .sp-textarea{width:100%}.sp-field>.sp-label{margin:0}.sp-field-label-row{position:relative;display:flex;align-items:center;gap:var(--sp-space-1)}.sp-field-label-row .sp-label{margin:0}.sp-optional{font-weight:var(--sp-fw-normal);color:var(--sp-muted)}.sp-hint{margin:0 0 var(--sp-space-3);font-size:var(--sp-fs-sm);color:var(--sp-muted)}.sp-field>.sp-hint{margin:0}.sp-field-error{margin:0;font-size:var(--sp-fs-sm);color:var(--sp-danger)}.sp-field.is-invalid .sp-input,.sp-field.is-invalid .sp-select,.sp-field.is-invalid .sp-textarea{border-color:var(--sp-danger)}.sp-check{display:inline-flex;align-items:center;gap:var(--sp-space-2);min-height:var(--sp-target-min);font-size:var(--sp-fs-sm);color:var(--sp-text);cursor:pointer}.sp-check input[type=checkbox],.sp-check input[type=radio],.sp-table input[type=checkbox]{width:16px;height:16px;flex:none;margin:4px;accent-color:var(--sp-accent)}.sp-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--sp-space-3);row-gap:var(--sp-space-4)}.sp-field-grid>.is-wide{grid-column:1 / -1}.sp-form-actions{display:flex;flex-wrap:wrap;gap:var(--sp-space-2);margin-top:var(--sp-space-4)}.sp-error-summary{margin-bottom:var(--sp-space-4);padding:var(--sp-space-3) var(--sp-space-4);border:1px solid var(--sp-danger-border);border-left:3px solid var(--sp-danger);border-radius:var(--sp-radius-sm);background:var(--sp-danger-bg);color:var(--sp-text)}.sp-error-summary-title{margin:0 0 var(--sp-space-1);font-size:var(--sp-fs-md);font-weight:var(--sp-fw-semibold);color:var(--sp-danger)}.sp-error-summary ul{margin:0;padding-left:var(--sp-space-4)}.sp-error-summary a{color:var(--sp-danger);text-decoration:underline}.sp-table-wrap{overflow-x:auto}.sp-table{width:100%;border-collapse:collapse}.sp-table-wrap>.sp-table{min-width:560px}.sp-table th{padding:var(--sp-space-2);text-align:left;font-size:var(--sp-fs-xs);font-weight:var(--sp-fw-medium);color:var(--sp-muted);border-bottom:1px solid var(--sp-border);white-space:nowrap}.sp-table td{padding:10px var(--sp-space-2);border-bottom:1px solid var(--sp-border-soft);vertical-align:middle}.sp-table tbody tr:hover td{background:var(--sp-row-hover)}.sp-table .sp-input,.sp-table .sp-select{width:100%}.sp-table .sp-num{text-align:right;font-variant-numeric:tabular-nums}.sp-chip{display:inline-flex;align-items:center;gap:var(--sp-space-1);min-height:var(--sp-target-min);padding:2px 10px;border:1px solid var(--sp-border);border-radius:var(--sp-radius-pill);background:transparent;color:var(--sp-muted);font-size:var(--sp-fs-sm);cursor:pointer;transition:border-color var(--sp-motion),color var(--sp-motion)}.sp-chip:hover{color:var(--sp-text)}.sp-chip.is-on,.sp-chip[aria-pressed=true]{border-color:var(--sp-accent);background:var(--sp-accent-soft);color:var(--sp-heading)}.sp-tabs{display:flex;flex-wrap:wrap;gap:var(--sp-space-4);margin:var(--sp-space-3) 0 var(--sp-space-3);border-bottom:1px solid var(--sp-border)}.sp-tab{margin-bottom:-1px;padding:var(--sp-space-2) 0;border:0;background:transparent;color:var(--sp-muted);font-weight:var(--sp-fw-medium);cursor:pointer;transition:color var(--sp-motion)}.sp-tab:hover{color:var(--sp-text)}.sp-tab[aria-selected=true],.sp-tab.is-on{color:var(--sp-heading);box-shadow:inset 0 -2px 0 var(--sp-accent)}.sp-tab-panel{padding-top:var(--sp-space-2)}.sp-code{margin:0;padding:var(--sp-space-3);background:var(--sp-code-bg);border:1px solid var(--sp-border);border-radius:var(--sp-radius-md);color:var(--sp-code-text);font-family:var(--sp-font-mono);font-size:var(--sp-fs-sm);line-height:var(--sp-lh-code);white-space:pre-wrap;overflow-wrap:anywhere}.sp-code .sp-key{color:var(--sp-code-key)}.sp-loc{background:var(--sp-violet-bg);color:var(--sp-violet);border-radius:4px}.sp-kbd{display:inline-block;padding:0 5px;border:1px solid var(--sp-border);border-radius:4px;font-family:var(--sp-font);font-size:var(--sp-fs-xs);line-height:1.6;color:var(--sp-muted)}.sp-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:220px;padding:var(--sp-space-1);background:var(--sp-raised);border:1px solid var(--sp-border);border-radius:var(--sp-radius-md);box-shadow:var(--sp-shadow-overlay)}.sp-menu-head{padding:var(--sp-space-2) var(--sp-space-2) 6px;overflow-wrap:anywhere}.sp-menu-head strong{display:block;color:var(--sp-heading);font-weight:var(--sp-fw-semibold)}.sp-menu-head span{font-size:var(--sp-fs-sm);color:var(--sp-muted)}.sp-menu-sep{height:1px;margin:var(--sp-space-1) 0;background:var(--sp-border)}.sp-menu-item{display:flex;align-items:center;gap:var(--sp-space-2);width:100%;min-height:30px;padding:0 var(--sp-space-2);border:0;border-radius:6px;background:transparent;color:var(--sp-text);text-align:left;cursor:pointer}.sp-menu-item:hover,.sp-menu-item:focus-visible{background:var(--sp-row-hover);outline-offset:-2px}.sp-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:var(--sp-space-4);background:var(--sp-overlay)}.sp-dialog{width:100%;max-width:720px;max-height:86vh;overflow-y:auto;padding:var(--sp-space-5);background:var(--sp-panel);border:1px solid var(--sp-border);border-radius:var(--sp-radius-lg);box-shadow:var(--sp-shadow-overlay)}.sp-dialog .sp-card-title{margin-top:0}.sp-toast{position:fixed;right:var(--sp-space-5);bottom:var(--sp-space-5);z-index:100;max-width:min(380px,calc(100vw - 2 * var(--sp-space-5)));overflow-wrap:anywhere;padding:10px var(--sp-space-4);background:var(--sp-raised);border:1px solid var(--sp-border);border-left:3px solid var(--sp-accent);border-radius:var(--sp-radius-md);box-shadow:var(--sp-shadow-overlay);color:var(--sp-text)}.sp-toast.is-error{border-left-color:var(--sp-danger);color:var(--sp-danger)}.sp-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.sp-muted{color:var(--sp-muted)}.sp-spacer{flex:1}.sp-spinner{display:inline-block;width:18px;height:18px;border:2px solid var(--sp-border);border-top-color:var(--sp-accent);border-radius:50%;vertical-align:middle;animation:sp-spin .8s linear infinite}@keyframes sp-spin{to{transform:rotate(360deg)}}.sp-back-link{display:inline-flex;align-items:center;gap:var(--sp-space-1);margin-bottom:var(--sp-space-3);font-size:var(--sp-fs-sm);color:var(--sp-link)}.sp-palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;align-items:flex-start;justify-content:center;padding:12vh var(--sp-space-4) var(--sp-space-4);background:var(--sp-overlay);animation:sp-palette-in .12s ease-out}.sp-palette{width:100%;max-width:560px;max-height:70vh;display:flex;flex-direction:column;overflow:hidden;background:var(--sp-panel);border:1px solid var(--sp-border);border-radius:var(--sp-radius-lg);box-shadow:var(--sp-shadow-overlay)}.sp-palette-input{width:100%;height:44px;padding:0 var(--sp-space-4);background:var(--sp-input-bg);border:0;border-bottom:1px solid var(--sp-border);color:var(--sp-text);font:inherit;font-size:var(--sp-fs-lg)}.sp-palette-input::placeholder{color:var(--sp-muted)}.sp-palette-input:focus-visible{outline:var(--sp-focus-ring);outline-offset:-2px}.sp-palette-list,.sp-palette-group{list-style:none;margin:0;padding:0}.sp-palette-list{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-space-1) var(--sp-space-2)}.sp-palette-group-label{padding:var(--sp-space-2) var(--sp-space-2) 2px;color:var(--sp-muted);font-size:var(--sp-fs-xs);font-weight:var(--sp-fw-semibold);letter-spacing:.06em;text-transform:uppercase}.sp-palette-option{display:flex;align-items:baseline;gap:var(--sp-space-3);padding:7px var(--sp-space-2);border-radius:var(--sp-radius-sm);color:var(--sp-text);cursor:pointer}.sp-palette-option.is-active{background:var(--sp-accent-soft);color:var(--sp-accent-soft-text)}.sp-palette-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-palette-hint{flex:none;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sp-muted);font-size:var(--sp-fs-sm)}.sp-palette-option.is-active .sp-palette-hint{color:var(--sp-accent-soft-text)}.sp-palette-empty{margin:0;padding:var(--sp-space-5) var(--sp-space-4);color:var(--sp-muted);text-align:center}.sp-palette-foot{display:flex;gap:var(--sp-space-4);padding:var(--sp-space-2) var(--sp-space-4);border-top:1px solid var(--sp-border);color:var(--sp-muted);font-size:var(--sp-fs-xs)}@keyframes sp-palette-in{0%{opacity:0}to{opacity:1}}.sp-page-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-space-3);margin-bottom:var(--sp-space-4)}.sp-page-head h1{margin:0}.sp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--sp-space-3);margin-bottom:var(--sp-space-4)}.sp-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-space-2);margin-bottom:var(--sp-space-3)}.sp-filter-row [role=group]{display:flex;flex-wrap:wrap;gap:var(--sp-space-2)}.sp-sub{display:block;margin-top:2px;font-size:var(--sp-fs-xs);color:var(--sp-muted)}.sp-markdown{color:var(--sp-text);line-height:1.6;overflow-wrap:anywhere}.sp-markdown>:first-child{margin-top:0}.sp-markdown>:last-child{margin-bottom:0}.sp-markdown h1,.sp-markdown h2,.sp-markdown h3,.sp-markdown h4{margin:var(--sp-space-4) 0 var(--sp-space-2);color:var(--sp-heading);font-weight:var(--sp-fw-semibold);line-height:1.3}.sp-markdown h1{font-size:var(--sp-fs-xl)}.sp-markdown h2{font-size:var(--sp-fs-lg)}.sp-markdown h3,.sp-markdown h4{font-size:var(--sp-fs-md)}.sp-markdown p,.sp-markdown ul,.sp-markdown ol,.sp-markdown pre,.sp-markdown table,.sp-markdown blockquote{margin:0 0 var(--sp-space-3)}.sp-markdown ul,.sp-markdown ol{padding-left:var(--sp-space-6)}.sp-markdown a{color:var(--sp-link)}.sp-markdown code{font-family:var(--sp-font-mono);font-size:.92em;color:var(--sp-code-text);background:var(--sp-code-bg);border-radius:var(--sp-radius-sm);padding:1px 5px}.sp-markdown pre{background:var(--sp-code-bg);border:1px solid var(--sp-border);border-radius:var(--sp-radius-md);padding:var(--sp-space-3);overflow-x:auto}.sp-markdown pre code{padding:0;background:none}.sp-markdown blockquote{padding-left:var(--sp-space-3);border-left:3px solid var(--sp-border);color:var(--sp-muted)}.sp-markdown table{border-collapse:collapse;display:block;overflow-x:auto}.sp-markdown th,.sp-markdown td{border:1px solid var(--sp-border);padding:var(--sp-space-1) var(--sp-space-2);text-align:left}.sp-markdown hr{border:0;border-top:1px solid var(--sp-border)}.sp-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(var(--sp-sidebar-w) + var(--sp-space-4)),1fr));gap:var(--sp-space-4)}.sp-card-link{display:block;color:inherit;text-decoration:none}.sp-card-grid>.sp-card{margin-bottom:0}.sp-card-link:focus-visible{outline:var(--sp-focus-ring);outline-offset:var(--sp-focus-offset)}.sp-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-space-2);margin-bottom:var(--sp-space-4)}.sp-toolbar .sp-spacer{flex:1}.sp-chips,.sp-file-list,.sp-mode-grid{list-style:none;margin:0;padding:0}.sp-chips{display:flex;flex-wrap:wrap;gap:var(--sp-space-1);margin-bottom:var(--sp-space-2)}.sp-chip-remove{border:0;background:none;color:inherit;cursor:pointer;padding:0 var(--sp-space-1);font:inherit}.sp-file-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-space-2);padding:var(--sp-space-1) 0}.sp-mode-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(var(--sp-sidebar-w) + var(--sp-space-4)),1fr));gap:var(--sp-space-3);margin-bottom:var(--sp-space-4)}.sp-mode-card{position:relative;display:grid;gap:var(--sp-space-1);width:100%;text-align:left;font:inherit;color:inherit;background:var(--sp-panel);border:1px solid var(--sp-border);border-radius:var(--sp-radius-lg);padding:var(--sp-space-4);cursor:pointer}.sp-mode-card.is-selected{border-color:var(--sp-accent);background:linear-gradient(180deg,var(--sp-accent-soft),var(--sp-panel));box-shadow:0 0 0 1px var(--sp-accent)}.sp-mode-card:focus-within{outline:var(--sp-focus-ring);outline-offset:var(--sp-focus-offset)}.sp-mode-card strong{display:block}.sp-review-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-space-2);margin-bottom:var(--sp-space-4)}.sp-review-head .sp-card-title{margin:0}.sp-review{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--sp-space-4);align-items:start}.sp-review-main,.sp-review-side{min-width:0}@media (max-width: 1000px){.sp-review{grid-template-columns:minmax(0,1fr)}}.sp-toolbar .sp-card-title,.sp-toolbar .sp-label{margin:0}.sp-actions{flex-wrap:wrap}.sp-inline-actions{display:inline-flex;gap:var(--sp-space-1);flex-shrink:0}.sp-form-stack{display:flex;flex-direction:column;gap:var(--sp-space-3)}.sp-values{margin:0}.sp-values>div{margin-bottom:var(--sp-space-2)}.sp-values dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.sp-warning-list{list-style:none;margin:0;padding:0}.sp-warning-list li{margin-bottom:var(--sp-space-2);overflow-wrap:anywhere}.sp-editor{position:relative}.sp-editor-mirror,.sp-editor-input{box-sizing:border-box;margin:0;font-family:var(--sp-font-mono);font-size:var(--sp-fs-sm);line-height:var(--sp-lh-code);letter-spacing:normal;-moz-tab-size:4;tab-size:4;white-space:pre-wrap;overflow-wrap:anywhere;overflow-x:hidden;overflow-y:scroll}.sp-editor-mirror{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;resize:none;color:var(--sp-code-text);background:var(--sp-code-bg);border-color:transparent}.sp-editor.is-readonly .sp-editor-mirror{background:var(--sp-panel)}.sp-editor-input{position:relative;display:block;min-height:calc(24 * var(--sp-lh-code) * var(--sp-fs-sm));background:transparent;color:transparent;caret-color:var(--sp-text)}.sp-editor-wrap.is-invalid .sp-editor-input{border-color:var(--sp-danger)}.sp-unrendered{background:var(--sp-warn-bg);color:var(--sp-warn);text-decoration:underline wavy}.sp-diff{margin-bottom:var(--sp-space-3);border:1px solid var(--sp-border);border-radius:var(--sp-radius-sm);overflow-x:auto}.sp-diff-body{margin:0;padding:var(--sp-space-2) 0;font-family:var(--sp-font-mono);font-size:var(--sp-fs-sm);line-height:var(--sp-lh-code)}.sp-diff-line{padding:0 var(--sp-space-3);white-space:pre-wrap;overflow-wrap:anywhere}.sp-diff-mark{display:inline-block;width:var(--sp-space-4);color:var(--sp-muted)}.sp-diff-line.sp-diff-add{background:var(--sp-success-bg)}.sp-diff-line.sp-diff-del{background:var(--sp-danger-bg)}.sp-kv-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:var(--sp-space-2);align-items:center}.sp-field-card{margin:0;padding:var(--sp-space-3);border:1px solid var(--sp-border);border-radius:var(--sp-radius-sm)}.sp-field-card legend{padding:0 var(--sp-space-1);font-weight:var(--sp-fw-medium)}.sp-mode-split{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:var(--sp-space-4);align-items:start}.sp-mode-main,.sp-mode-side{min-width:0}@media (max-width: 900px){.sp-mode-split{grid-template-columns:minmax(0,1fr)}}.sp-cheat{margin-bottom:var(--sp-space-3)}.sp-cheat-group{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-space-2);margin:var(--sp-space-2) 0}.sp-chips-inline{display:inline-flex;flex-wrap:wrap;gap:var(--sp-space-1)}.sp-token{font-family:var(--sp-font-mono)}.sp-card-link{transition:border-color var(--sp-motion)}.sp-card-link:hover{text-decoration:none;border-color:var(--sp-accent)}.sp-notice{display:flex;flex-direction:column;align-items:center;gap:var(--sp-space-2)}.sp-notice .sp-card-title,.sp-notice .sp-hint{margin:0}.sp-mode-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--sp-space-6);height:var(--sp-space-6);border-radius:var(--sp-radius-sm);background:var(--sp-accent-soft);color:var(--sp-link);font-weight:var(--sp-fw-medium);font-size:var(--sp-fs-sm);letter-spacing:0;line-height:1}.sp-newjob-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-space-4);align-items:start}.sp-newjob-split>*{min-width:0}.sp-preview{position:sticky;top:var(--sp-space-3)}.sp-preview-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--sp-space-2)}.sp-preview-body{min-height:16rem}@media (max-width: 1000px){.sp-newjob-split{grid-template-columns:minmax(0,1fr)}.sp-preview{position:static}}.sp-menu-wrap{position:relative}.sp-side-list{list-style:none;margin:0;padding:0}.sp-side-item,.sp-side-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-space-2);padding:6px var(--sp-space-2);border-bottom:1px solid var(--sp-border-soft);overflow-wrap:anywhere}.sp-side-item{width:100%;border-width:0 0 1px;border-style:solid;border-color:var(--sp-border-soft);border-radius:6px;background:transparent;color:var(--sp-text);text-align:left;cursor:pointer}.sp-side-item:hover{background:var(--sp-row-hover)}.sp-side-item[aria-current=true]{background:var(--sp-accent-soft);color:var(--sp-accent-soft-text)}.sp-loc-count{color:var(--sp-violet)}.sp-unsaved{color:var(--sp-warn)}.sp-dropzone{margin-top:var(--sp-space-3);padding:var(--sp-space-3);border:1px dashed var(--sp-border);border-radius:var(--sp-radius-md)}.sp-dropzone.is-over{border-color:var(--sp-accent);background:var(--sp-accent-soft)}.sp-run-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--sp-space-2) var(--sp-space-4)}.sp-run-meta>div{margin-bottom:0}.sp-run-attempt{width:auto}.sp-run-events{list-style:none;margin:0;padding:var(--sp-space-2) var(--sp-space-3);max-height:420px;overflow-y:auto;background:var(--sp-code-bg);border:1px solid var(--sp-border);border-radius:var(--sp-radius-md);font-family:var(--sp-font-mono);font-size:var(--sp-fs-sm)}.sp-run-events li{padding:2px 0;white-space:pre-wrap;overflow-wrap:anywhere}.sp-related-jobs{margin:0 0 var(--sp-space-3)}
