/* zilla-slab-latin-ext-400-normal */
@font-face {
  font-family: 'Zilla Slab';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./zilla-slab-latin-ext-400-normal-L6eiXaX2.woff2) format('woff2'), url(./zilla-slab-latin-ext-400-normal-DYKaTm8Q.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;
}

/* zilla-slab-latin-400-normal */
@font-face {
  font-family: 'Zilla Slab';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./zilla-slab-latin-400-normal-Dw3p-plB.woff2) format('woff2'), url(./zilla-slab-latin-400-normal-Dlq-Ffxl.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;
}
/* zilla-slab-latin-ext-600-normal */
@font-face {
  font-family: 'Zilla Slab';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(./zilla-slab-latin-ext-600-normal-9hyyVsz0.woff2) format('woff2'), url(./zilla-slab-latin-ext-600-normal-DTnoEnY3.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;
}

/* zilla-slab-latin-600-normal */
@font-face {
  font-family: 'Zilla Slab';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(./zilla-slab-latin-600-normal-BRgn6X7z.woff2) format('woff2'), url(./zilla-slab-latin-600-normal-iLPAhCz6.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;
}
/* zilla-slab-latin-ext-700-normal */
@font-face {
  font-family: 'Zilla Slab';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(./zilla-slab-latin-ext-700-normal-C1-U_e_0.woff2) format('woff2'), url(./zilla-slab-latin-ext-700-normal-DQD_oLH8.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;
}

/* zilla-slab-latin-700-normal */
@font-face {
  font-family: 'Zilla Slab';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(./zilla-slab-latin-700-normal-CEKI1vVu.woff2) format('woff2'), url(./zilla-slab-latin-700-normal-C8aaVMsA.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;
}
/* roboto-condensed-cyrillic-ext-300-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url(./roboto-condensed-cyrillic-ext-300-normal-CHAntAsm.woff2) format('woff2'), url(./roboto-condensed-cyrillic-ext-300-normal-C_abyGeD.woff) format('woff');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* roboto-condensed-cyrillic-300-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url(./roboto-condensed-cyrillic-300-normal-QTn5iNZY.woff2) format('woff2'), url(./roboto-condensed-cyrillic-300-normal-DI1GIr4Y.woff) format('woff');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* roboto-condensed-greek-ext-300-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url(data:font/woff2;base64,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) format('woff2'), url(data:font/woff;base64,d09GRgABAAAAAAWoAA8AAAAABwAAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABQAAAAUAA8ACUdQT1MAAAFsAAAAHgAAAB5EdEx1R1NVQgAAAYwAAAAzAAAANJMNggJPUy8yAAABwAAAAE0AAABgc6bgPVNUQVQAAAIQAAAAQwAAAFpe9T/4Y21hcAAAAlQAAABAAAAAXj5j4n9nYXNwAAAClAAAAAwAAAAMAAgAGWdseWYAAAKgAAABKgAAASpIqozFaGVhZAAAA8wAAAA2AAAANgcMpDpoaGVhAAAEBAAAAB8AAAAkCXoEkGhtdHgAAAQkAAAAHwAAACQUwwBhbG9jYQAABEQAAAATAAAAFAFFAZltYXhwAAAEWAAAABwAAAAgACkBIW5hbWUAAAR0AAABHwAAAnI3GGKYcG9zdAAABZQAAAATAAAAIP9tAGQAAQAAAAwAAAAAAAAAAQAIAAEAAQABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBiMAJCFhc3nxAGueTKohwGqfSi1GwGqZzEkjwGKQYQYAER//+DSADdjQkeAHjaY2Bhfs2ow8DKwMA6i9WYgYFRHkIzX2RIY2JgYABiKHAACjIgAXd/f3eQoLwvG8M/BoY09llMDAoMjPNBcixWrBuAlAIDMwDkQwovAAAAeNoFwbEBAQEUBbC8f6CFWgewiSUAQAfWl4joaTDSYK1+x/c14Xe5vkNu790zpXQMjAWVqQ0ipJ01GqUyB+EPbXcGiAB42mNgYGACYmYgFgGSjGCahcELSPMxcADl2MAqeBkUGBbI+/7/D+Sh8EE6/n/7/+R/+oPdYN08DAjABADQpg35AAEAAgAIAAj//wAPAAUAaAAAArsFsAADAAYACQAMAA8AAAERIREFAxMlEwM3ExMDAyECu/2tAiXl5f4I4uIj2NfX2AGvBbD6UAWwVv1+/X4IAnoCeij9owJd/Rn9owACAIX/6wQzBcQAFQArAAABERQOAiMiLgI1ETQ+AjMyHgIDETQuAiMiDgIVERQeAjMyPgIEM0F6rm1rrnxDQnuua26ue0FyL1qGV1SFWzAxXIVUV4VaLgN1/sWQ3ZVNTZXdkAE7kN6UTU2U3v41AT14s3g8PHizeP7DeLN5PDx5swAAAgBnBHkCJwXRAAUADwAAATUTMxUDJTUzFRQWFwcmJgFDbXem/uZpJSctP0kEhg4BPRX+yuxfWURhKDImhP///w3/6wR5BdEAJgAFRgAABwAG/qYAAAAAAAEAAAADAgz39RBWXw889QAbCAAAAAAAxPARLgAAAADg4EW6+h/91QfsCHMAAAAJAAIAAAAAAAB42mNgZGBgz/nHw8DAYfpL/p8r+xugCCrgBAB7OAUVAHjaY1ZmyGCAAsazEMyyg6GVqYkhHcz+958XAFpdBzMAeNpjYGDQhMMshk4gnAoAEkAC3wB42mNgZGBg4GRYySDKUMbADuYhADMDIwAd5AFLeNqNjoVNBAEQRR/uGg+2Edzd3d0hhjvnftcLNVAG1VAEP8vgmp+ZvPEBirkng7TMPOAw7dI4jZa0IeN0itNajDOY4NE4811PFnU8GGfTxJ1xMTssPHMaFDJinEY+XcbpytcZZylfaVxHOfnGDSLYIoCPE/xMi/yccyEf4UK0wg1XXBNlUXaCV/EZ+/Lniq9FF68dMinIEO1SwlWbZoKyM1UvFAUIq7vd9tgdWbsuLer+LGtsy7fSpe4O97dTWVT29bvWd//tKRNW/sbtcuhG89IAw4q6RF3Kvc/Osy7Ni/5/ZYsLUQwvJ4Tfz+F8M+m8m1SVIClNWca+6pQc5glIV3i5ULSInzPaRJN4JYet16mIG124F8LE3TttT869V/MAeNpjYGYAg/9ZDCkMWAAAKh8B0QA=) format('woff');
  unicode-range: U+1F00-1FFF;
}

/* roboto-condensed-greek-300-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url(./roboto-condensed-greek-300-normal-DPINAAPo.woff2) format('woff2'), url(./roboto-condensed-greek-300-normal-D1nyLJAf.woff) format('woff');
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

/* roboto-condensed-vietnamese-300-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url(./roboto-condensed-vietnamese-300-normal-Dg-rbDRZ.woff2) format('woff2'), url(./roboto-condensed-vietnamese-300-normal-BBGk7EeW.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;
}

/* roboto-condensed-latin-ext-300-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url(./roboto-condensed-latin-ext-300-normal-Dv3u2v9N.woff2) format('woff2'), url(./roboto-condensed-latin-ext-300-normal-B5OK47Wl.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;
}

/* roboto-condensed-latin-300-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url(./roboto-condensed-latin-300-normal-obJDv80q.woff2) format('woff2'), url(./roboto-condensed-latin-300-normal-CGUgNzTJ.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;
}
/* roboto-condensed-cyrillic-ext-400-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./roboto-condensed-cyrillic-ext-400-normal-DGo1Ayjq.woff2) format('woff2'), url(./roboto-condensed-cyrillic-ext-400-normal-WtM1l1qc.woff) format('woff');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* roboto-condensed-cyrillic-400-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./roboto-condensed-cyrillic-400-normal-_T2aQlWs.woff2) format('woff2'), url(./roboto-condensed-cyrillic-400-normal-Bgns473E.woff) format('woff');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* roboto-condensed-greek-ext-400-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(data:font/woff2;base64,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) format('woff2'), url(data:font/woff;base64,d09GRgABAAAAAAW0AA8AAAAAByAAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABQAAAAUAA8ACUdQT1MAAAFsAAAAHgAAAB5EdEx1R1NVQgAAAYwAAAAzAAAANJMNggJPUy8yAAABwAAAAE0AAABgdArgUFNUQVQAAAIQAAAASgAAAF5e+kMcY21hcAAAAlwAAABAAAAAXj5j4n9nYXNwAAACnAAAAAwAAAAMAAgAGWdseWYAAAKoAAABJgAAASbEmBH0aGVhZAAAA9AAAAA2AAAANgcXpDpoaGVhAAAECAAAAB8AAAAkCYUElWhtdHgAAAQoAAAAIAAAACQVdAAZbG9jYQAABEgAAAATAAAAFAFBAZVtYXhwAAAEXAAAABwAAAAgACkBIW5hbWUAAAR4AAABJwAAApQ7l2Y2cG9zdAAABaAAAAATAAAAIP9tAGQAAQAAAAwAAAAAAAAAAQAIAAEAAQABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBiMAJCFhc3nxAGueTKohwGqfSi1GwGqZzEkjwGKQYQYAER//+DSADdjQkeAHjaY2Bh/sc4gYGVgYF1FqsxAwOjPIRmvsiQxsTAwADEUOAAFGRAAu7+/u4gQXlfNoZ/DAxp7LOYGBQYGOeD5FisWDcAKQUGZgAOxQqmAAAAeNoFwUEBQVEQAMDZfeAKBQCgiRIA4AZqCCTcnxFCS0FPwUp+D69LBN/z5RXE9bV9REoNHQOBjIk1ipDRiB/5R5EyZiCoAJ8sB7MAAHjaY2BgYAJiZiAWAZKMYJqFwQtI8zFwAOXYwCp4GRQYFsj7/v8P5KHwQTr+f/v/5H/6g91g3TwMCMAEANCmDfkAAQACAAgACP//AA8ABQBoAAACuwWwAAMABgAJAAwADwAAAREhEQUDEyUTAzcTEwMDIQK7/a0CJeXl/gji4iPY19fYAa8FsPpQBbBW/X79fggCegJ6KP2jAl39Gf2jAAIAfv/sBFAFxAAVACsAAAEVFA4CIyIuAjU1ND4CMzIeAgM1NC4CIyIOAhUVFB4CMzI+AgRQQ4C0cW20gkdGgrRtcbV/RLYoTnJLR3FQKytRckZLc00nA1b9mumcTk6c6Zr9mumcT0+c6f5p/3itbjU1bq14/3mtbzU1b60AAAIAdwRxAowF1wAFAA8AAAE1EzMVAyU1MxUUFhcHJiYBdly6xv6xniIhRUxQBIQRAUIV/sL+VU9IaC06LY////68/+wElgXWACYABUYAAAcABv5F//8AAAABAAAAAwIM9MP4rl8PPPUAGwgAAAAAAMTwES4AAAAA4OBFuvoa/dUH/AhzAAAACQACAAAAAAAAeNpjYGRgYM/5x8PAwGH6S+qfF/sfoAgq4AQAfF4FJQB42mNWZshggALGaxDMcp6hjukVQzmIzSr6bw8AYBIHnHjaY2Bg0ITDDIZ2IJwMABIgAtcAeNpjYGRgYOBkWMkgylDGwA7mIQAzAyMAHeQBS3jalJADboVBGEXPY20E1R/Utm3btttn7KBx0oV0DV1N19GbdGrnDs6H3AGQzB0ObM44YMt2Y9iGZTsxbCfZtmbYwYAt27CTGh4Muyji3rCbKm4NJ7NA1xPbIJE6wzbiKTFsVz7XsBtzlriIdOINl4hgjmsu2eWKftEVBxxq9XMoGiWgygWn7LOs9UDxiehQfCwKoCl5aKNaCiNRxS4ezX1VDxVd41N3tfEx7prVTDBKP4NMMa+1kjqqqEE3Yk8zoPn5TpWqH8ovKL9dOS9xqNUvb3ViUY88pBbaFdWJ6pR762l94Wp9cH3rMsy0NCz6380+Rj/fQBk8RNVp/tbcvlayGOZaOpbXoaJRrtinStSrzONyQK6H6yqG+qUYHC5lYLP1ADv0XxEAeNpjYGYAg/9ZDCkMWAAAKh8B0QA=) format('woff');
  unicode-range: U+1F00-1FFF;
}

/* roboto-condensed-greek-400-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./roboto-condensed-greek-400-normal-D5vBSIyg.woff2) format('woff2'), url(./roboto-condensed-greek-400-normal-FabMgVmk.woff) format('woff');
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

/* roboto-condensed-vietnamese-400-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./roboto-condensed-vietnamese-400-normal-0o1laQ-g.woff2) format('woff2'), url(./roboto-condensed-vietnamese-400-normal-CPsdS8_S.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;
}

/* roboto-condensed-latin-ext-400-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./roboto-condensed-latin-ext-400-normal-OHaX69iP.woff2) format('woff2'), url(./roboto-condensed-latin-ext-400-normal-DT8nEsYA.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;
}

/* roboto-condensed-latin-400-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./roboto-condensed-latin-400-normal-BICmKrXV.woff2) format('woff2'), url(./roboto-condensed-latin-400-normal-D2e7XwB1.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;
}
/* roboto-condensed-cyrillic-ext-500-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./roboto-condensed-cyrillic-ext-500-normal-C8FNIdXm.woff2) format('woff2'), url(./roboto-condensed-cyrillic-ext-500-normal-TLDmfi3Q.woff) format('woff');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* roboto-condensed-cyrillic-500-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./roboto-condensed-cyrillic-500-normal-s4PklZE0.woff2) format('woff2'), url(./roboto-condensed-cyrillic-500-normal-CvEVpWxD.woff) format('woff');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* roboto-condensed-greek-ext-500-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(data:font/woff2;base64,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) format('woff2'), url(data:font/woff;base64,d09GRgABAAAAAAWsAA8AAAAABwQAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABQAAAAUAA8ACUdQT1MAAAFsAAAAHgAAAB5EdEx1R1NVQgAAAYwAAAAzAAAANJMNggJPUy8yAAABwAAAAE0AAABgdG7gXVNUQVQAAAIQAAAARQAAAFpe90DAY21hcAAAAlgAAABAAAAAXj5j4n9nYXNwAAACmAAAAAwAAAAMAAgAGWdseWYAAAKkAAABJgAAASa2UL/ZaGVhZAAAA8wAAAA2AAAANgdRpDpoaGVhAAAEBAAAAB8AAAAkCb8EnWhtdHgAAAQkAAAAIAAAACQVe//ubG9jYQAABEQAAAATAAAAFAFBAZVtYXhwAAAEWAAAABwAAAAgACkBIW5hbWUAAAR0AAABIgAAAno4e2MRcG9zdAAABZgAAAATAAAAIP9tAGQAAQAAAAwAAAAAAAAAAQAIAAEAAQABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBiMAJCFhc3nxAGueTKohwGqfSi1GwGqZzEkjwGKQYQYAER//+DSADdjQkeAHjaY2Bh4Wb8wsDKwMA6i9WYgYFRHkIzX2RIY2JgYABiKHAACjIgAXd/f3eQoLwvG8M/BoY09llMDAoMjPNBcixWrBuAlAIDMwDaWQoYAAAAeNoFwbEBQUEABbC8O9BCrQPYxBIAoAOLG+AnInoqRirWyu/4vib8Ltd3yO29e6YoOgbGgpKpDSKkmz+qomQOQgN8eQdSAAAAeNpjYGBgAmJmIBYBkoxgmoXBC0jzMXAA5djAKngZFBgWyPv+/w/kofBBOv5/+//kf/qD3WDdPAwIwAQA0KYN+QABAAIACAAI//8ADwAFAGgAAAK7BbAAAwAGAAkADAAPAAABESERBQMTJRMDNxMTAwMhArv9rQIl5eX+COLiI9jX19gBrwWw+lAFsFb9fv1+CAJ6Anoo/aMCXf0Z/aMAAgBt/+wEZAXEABUAKwAAARUUDgIjIi4CNTU0PgIzMh4CAzU0LgIjIg4CFRUUHgIzMj4CBGRHhbtzcruHSUiHu3Fzu4ZI8SNEY0E/Y0UjJEVkP0BkQyIDT/ia6JtOTpvomvic655QUJ7r/mz6b59lMTFln2/6bZ1jMDBjnQAAAgBsBHACjQXXAAUADwAAATUTMxUDJTUzFRQWFwcmJgFxWsLK/qmhHiFKRlAEhBUBPhX+wvlaVEJhJ0knjf///q3/7ASqBdYAJgAFRgAABwAG/kH//wAAAAEAAAADAgwV0KhAXw889QAbCAAAAAAAxPARLgAAAADg4EW6+iX91QgrCHMAAAAJAAIAAAAAAAB42mNgZGBgz/nHw8DA4fFL9Z89hzZQBBVwAgBu4ARoAHjaY1ZmyGCAAsbrEMxyiSGX6SVDDojNKvFvLQBfHwd5eNpjYGDQhMMMhnYgnAwAEiAC1wB42mNgZGBg4GRYySDKUMbADuYhADMDIwAd5AFLeNqVkMVVBUEQRS/uusVmg7u7uzuscPnungwhEAjREAJvUbifN919y+sMUM49OWTlFgGnWUHjLLqyZoyzKc/qM85hjkfj3Dc5eTTxYJxPB3fG5RywJhZnQSlTxlkUM2CcLX+LcYG41riJaoqNW0SwR4gAFwSZFwW55kZ3jBvRJrrxkFDGKnFl+WVdcaz7WrZbdCN2ieLoSGHG6JZSSHSpJqxzpeiNrBBRZXdbH5uk080Gq8yzyBb7ujvpU3YP2o5LnbjO5/063214JI4Sk6U8HPpRB2mEcVl9oj7633mX2ZaWRf+Zsyd2ifxcEH1X6XxR67yrVZwwGaLYX7PNeiWHZUKSCz83slYJckWXaBa/5LCHVRFDFjdoBlGSaAJdT0zTWc8AAHjaY2BmAIP/WQwpDFgAACofAdEA) format('woff');
  unicode-range: U+1F00-1FFF;
}

/* roboto-condensed-greek-500-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./roboto-condensed-greek-500-normal-Hsn-wDIp.woff2) format('woff2'), url(./roboto-condensed-greek-500-normal-BIN62cw9.woff) format('woff');
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

/* roboto-condensed-vietnamese-500-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./roboto-condensed-vietnamese-500-normal-TFWhjk13.woff2) format('woff2'), url(./roboto-condensed-vietnamese-500-normal-G9shSJ2z.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;
}

/* roboto-condensed-latin-ext-500-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./roboto-condensed-latin-ext-500-normal-CcSTXKtO.woff2) format('woff2'), url(./roboto-condensed-latin-ext-500-normal-JgPl2bDS.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;
}

/* roboto-condensed-latin-500-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./roboto-condensed-latin-500-normal-3p2daRJW.woff2) format('woff2'), url(./roboto-condensed-latin-500-normal-Dc9bsamC.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;
}
/* roboto-condensed-cyrillic-ext-700-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(./roboto-condensed-cyrillic-ext-700-normal-CTXjXnze.woff2) format('woff2'), url(./roboto-condensed-cyrillic-ext-700-normal-CWPRiRXS.woff) format('woff');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* roboto-condensed-cyrillic-700-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(./roboto-condensed-cyrillic-700-normal-9RN-Z7cI.woff2) format('woff2'), url(./roboto-condensed-cyrillic-700-normal-BGMkBBYx.woff) format('woff');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* roboto-condensed-greek-ext-700-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(data:font/woff2;base64,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) format('woff2'), url(data:font/woff;base64,d09GRgABAAAAAAWkAA8AAAAABwQAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABQAAAAUAA8ACUdQT1MAAAFsAAAAHgAAAB5EdEx1R1NVQgAAAYwAAAAzAAAANJMNggJPUy8yAAABwAAAAEwAAABgdTbgSFNUQVQAAAIMAAAARQAAAFpe+UGIY21hcAAAAlQAAABAAAAAXj5j4n9nYXNwAAAClAAAAAwAAAAMAAgAGWdseWYAAAKgAAABJgAAASZq4/JvaGVhZAAAA8gAAAA2AAAANgeDpDpoaGVhAAAEAAAAAB8AAAAkCfAEsWhtdHgAAAQgAAAAIAAAACQVgf/JbG9jYQAABEAAAAATAAAAFAFBAZVtYXhwAAAEVAAAABwAAAAgACkBIW5hbWUAAARwAAABHgAAAnw5EWLxcG9zdAAABZAAAAATAAAAIP9tAGQAAQAAAAwAAAAAAAAAAQAIAAEAAQABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBiMAJCFhc3nxAGueTKohwGqfSi1GwGqZzEkjwGKQYQYAER//+DSADdjQkeAHjaTcW7DUBQAADA8z5soPV20Kl0KrGFoTRWMIAlLCQKkbjmpNSGUyZvuafq3uNlDQg+I9HPtCyTQjfXbtZmC4pqhzTkA0V8AMasCcx42gXBsQEBQAAEsNw/UEKtA9jEEgCgA8sZTiKio2KoYqV8D69Lwvd8eYVcX9tHiqKlbyQomVgjQrrlh6oomYHwB3iPBx0AAAB42mNgYGACYmYgFgGSjGCahcELSPMxcADl2MAqeBkUGBbI+/7/D+Sh8EE6/n/7/+R/+oPdYN08DAjABADQpg35AAEAAgAIAAj//wAPAAUAaAAAArsFsAADAAYACQAMAA8AAAERIREFAxMlEwM3ExMDAyECu/2tAiXl5f4I4uIj2NfX2AGvBbD6UAWwVv1+/X4IAnoCeij9owJd/Rn9owACAF7/7AR1BcQAFQArAAABFRQOAiMiLgI1NTQ+AjMyHgIBNTQuAiMiDgIVFRQeAjMyPgIEdUuJwXV1wYtMSozAdXXAjEv+3R48Vjk5VzsdHjxXOThXOh4DSfOa55tOTpvnmvOe7Z9RUZ/t/m/1aJNeLCxek2j1ZI5aKytajgACAGMEbwKOBdcABQAPAAABNRMzFQMlNTMVFBYXByYmAW1Yyc3+oqMaI09BUASDGQE7Ff7B9l5YPVwhViOK///+oP/sBLsF1gAmAAVGAAAHAAb+Pf//AAAAAQAAAAMCDKkYQg5fDzz1ABsIAAAAAADE8BEuAAAAAODgRbr6L/3VCFIIcwABAAkAAgAAAAAAAHjaY2BkYGDP+cfDwMCR9kv/nylHEFAEFXACAHTHBK0AeNpjVmbIYIACxhsQzHKFIY7pBUMyiM0q9W8BAF5IB1p42mNgYNCEwwyGdiCcDAASIALXAHjaY2BkYGDgZFjJIMpQxsAO5iEAMwMjAB3kAUt42o2QA25FURRF12fNONULatu23Ua1/Y1pdCAdQEfToXTn5dTMvljn4gjI5wEfHn8WsOsJGXtwPCvGXjI9M8Y+hjzZxn7qeDIOUMWjcZAa7o3z2WAIlz2QS5uxh2xqjL06LzXOQrGMqygm27hGBGvcccMBt4yLbjnmRGuUE9EsMd1cc8ER21qPZZ+LTsRnohiaUog+mqWkqyb9CWke6fZE1h0Rzmg2P+Zds5kFZhlnkiXWtTbSRhMtbkaHmjHNrzk1Mqaza9GW7IhOL9w3Du3ot9RDv6w2UZvO3ntzvvHnYP4+/J9mWZoW/Tcb2/+MpxNCpIlgPbRcWyWHae6kM645kTWrX0c0iUa5lhzWXn9FXevE9Roh4fpuegaPpFlGAAB42mNgZgCD/1kMKQxYAAAqHwHRAA==) format('woff');
  unicode-range: U+1F00-1FFF;
}

/* roboto-condensed-greek-700-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(./roboto-condensed-greek-700-normal-DWMOA2VK.woff2) format('woff2'), url(./roboto-condensed-greek-700-normal-89Up2Xly.woff) format('woff');
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

/* roboto-condensed-vietnamese-700-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(./roboto-condensed-vietnamese-700-normal-D35V1G0s.woff2) format('woff2'), url(./roboto-condensed-vietnamese-700-normal-BtNeb9D6.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;
}

/* roboto-condensed-latin-ext-700-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(./roboto-condensed-latin-ext-700-normal-B004qtqu.woff2) format('woff2'), url(./roboto-condensed-latin-ext-700-normal-O6H_RRvN.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;
}

/* roboto-condensed-latin-700-normal */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(./roboto-condensed-latin-700-normal-DRbp0YnP.woff2) format('woff2'), url(./roboto-condensed-latin-700-normal-BOl6B_hI.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;
}
/* ibm-plex-mono-cyrillic-ext-400-normal */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format('woff2'), url(./ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format('woff');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* ibm-plex-mono-cyrillic-400-normal */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format('woff2'), url(./ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format('woff');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* ibm-plex-mono-vietnamese-400-normal */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format('woff2'), url(./ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.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;
}

/* ibm-plex-mono-latin-ext-400-normal */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format('woff2'), url(./ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.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;
}

/* ibm-plex-mono-latin-400-normal */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(./ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format('woff2'), url(./ibm-plex-mono-latin-400-normal-CvHOgSBP.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;
}
/* ibm-plex-mono-cyrillic-ext-500-normal */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format('woff2'), url(./ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format('woff');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* ibm-plex-mono-cyrillic-500-normal */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format('woff2'), url(./ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format('woff');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* ibm-plex-mono-vietnamese-500-normal */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format('woff2'), url(./ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.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;
}

/* ibm-plex-mono-latin-ext-500-normal */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format('woff2'), url(./ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.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;
}

/* ibm-plex-mono-latin-500-normal */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(./ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format('woff2'), url(./ibm-plex-mono-latin-500-normal-CB9ihrfo.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;
}
/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */

/**
 *  Default styles for xterm.js
 */

.xterm {
    cursor: text;
    position: relative;
    user-select: none;
    -ms-user-select: none;
    -webkit-user-select: none;
}

.xterm.focus,
.xterm:focus {
    outline: none;
}

.xterm .xterm-helpers {
    position: absolute;
    top: 0;
    /**
     * The z-index of the helpers must be higher than the canvases in order for
     * IMEs to appear on top.
     */
    z-index: 5;
}

.xterm .xterm-helper-textarea {
    padding: 0;
    border: 0;
    margin: 0;
    /* Move textarea out of the screen to the far left, so that the cursor is not visible */
    position: absolute;
    opacity: 0;
    left: -9999em;
    top: 0;
    width: 0;
    height: 0;
    z-index: -5;
    /** Prevent wrapping so the IME appears against the textarea at the correct position */
    white-space: nowrap;
    overflow: hidden;
    resize: none;
}

.xterm .composition-view {
    /* TODO: Composition position got messed up somewhere */
    background: #000;
    color: #FFF;
    display: none;
    position: absolute;
    white-space: nowrap;
    z-index: 1;
}

.xterm .composition-view.active {
    display: block;
}

.xterm .xterm-viewport {
    /* On OS X this is required in order for the scroll bar to appear fully opaque */
    background-color: #000;
    overflow-y: scroll;
    cursor: default;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
}

.xterm .xterm-screen {
    position: relative;
}

.xterm .xterm-screen canvas {
    position: absolute;
    left: 0;
    top: 0;
}

.xterm-char-measure-element {
    display: inline-block;
    visibility: hidden;
    position: absolute;
    top: 0;
    left: -9999em;
    line-height: normal;
}

.xterm.enable-mouse-events {
    /* When mouse events are enabled (eg. tmux), revert to the standard pointer cursor */
    cursor: default;
}

.xterm.xterm-cursor-pointer,
.xterm .xterm-cursor-pointer {
    cursor: pointer;
}

.xterm.column-select.focus {
    /* Column selection mode */
    cursor: crosshair;
}

.xterm .xterm-accessibility:not(.debug),
.xterm .xterm-message {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 10;
    color: transparent;
    pointer-events: none;
}

.xterm .xterm-accessibility-tree:not(.debug) *::selection {
  color: transparent;
}

.xterm .xterm-accessibility-tree {
  font-family: monospace;
  user-select: text;
  white-space: pre;
}

.xterm .xterm-accessibility-tree > div {
  transform-origin: left;
  width: fit-content;
}

.xterm .live-region {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.xterm-dim {
    /* Dim should not apply to background, so the opacity of the foreground color is applied
     * explicitly in the generated class and reset to 1 here */
    opacity: 1 !important;
}

.xterm-underline-1 { text-decoration: underline; }
.xterm-underline-2 { text-decoration: double underline; }
.xterm-underline-3 { text-decoration: wavy underline; }
.xterm-underline-4 { text-decoration: dotted underline; }
.xterm-underline-5 { text-decoration: dashed underline; }

.xterm-overline {
    text-decoration: overline;
}

.xterm-overline.xterm-underline-1 { text-decoration: overline underline; }
.xterm-overline.xterm-underline-2 { text-decoration: overline double underline; }
.xterm-overline.xterm-underline-3 { text-decoration: overline wavy underline; }
.xterm-overline.xterm-underline-4 { text-decoration: overline dotted underline; }
.xterm-overline.xterm-underline-5 { text-decoration: overline dashed underline; }

.xterm-strikethrough {
    text-decoration: line-through;
}

.xterm-screen .xterm-decoration-container .xterm-decoration {
	z-index: 6;
	position: absolute;
}

.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer {
	z-index: 7;
}

.xterm-decoration-overview-ruler {
    z-index: 8;
    position: absolute;
    top: 0;
    right: 0;
    pointer-events: none;
}

.xterm-decoration-top {
    z-index: 2;
    position: relative;
}



/* Derived from vs/base/browser/ui/scrollbar/media/scrollbar.css */

/* xterm.js customization: Override xterm's cursor style */
.xterm .xterm-scrollable-element > .scrollbar {
    cursor: default;
}

/* Arrows */
.xterm .xterm-scrollable-element > .scrollbar > .scra {
	cursor: pointer;
	font-size: 11px !important;
}

.xterm .xterm-scrollable-element > .visible {
	opacity: 1;

	/* Background rule added for IE9 - to allow clicks on dom node */
	background:rgba(0,0,0,0);

	transition: opacity 100ms linear;
	/* In front of peek view */
	z-index: 11;
}
.xterm .xterm-scrollable-element > .invisible {
	opacity: 0;
	pointer-events: none;
}
.xterm .xterm-scrollable-element > .invisible.fade {
	transition: opacity 800ms linear;
}

/* Scrollable Content Inset Shadow */
.xterm .xterm-scrollable-element > .shadow {
	position: absolute;
	display: none;
}
.xterm .xterm-scrollable-element > .shadow.top {
	display: block;
	top: 0;
	left: 3px;
	height: 3px;
	width: 100%;
	box-shadow: var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset;
}
.xterm .xterm-scrollable-element > .shadow.left {
	display: block;
	top: 3px;
	left: 0;
	height: 100%;
	width: 3px;
	box-shadow: var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset;
}
.xterm .xterm-scrollable-element > .shadow.top-left-corner {
	display: block;
	top: 0;
	left: 0;
	height: 3px;
	width: 3px;
}
.xterm .xterm-scrollable-element > .shadow.top.left {
	box-shadow: var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset;
}

/* Insomnia Club, desktop. Brand from the Insomnia.Club case study dossier; layout from Claude Design. */
:root {
  --ink: #05080d;
  --ink-2: #0a0f15;
  --ink-3: #111820;
  --term: #070b10;
  --line: #1f2a34;
  --line-soft: #161f27;
  --fg: #eef3f7;
  --muted: #a9b3bc;
  --dim: #6f7b86;
  --cyan: #34e5ff;
  --cyan-hi: #8ff3ff;
  --acid: #3dfa6e;
  --warn: #ffc857;
  --bad: #ff7a7a;
  --radius: 12px;
  --radius-sm: 8px;
  --display: 'Zilla Slab', Georgia, serif;
  --body: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Segoe UI', system-ui, sans-serif;
  --mono: 'IBM Plex Mono', Menlo, Consolas, monospace;
  /* Type scale (design/2026-10-28-uiux.md rule 4): six sizes plus one display size. */
  --fs-1: 11px;
  --fs-2: 13px;
  --fs-3: 15px;
  --fs-4: 17px;
  --fs-5: 22px;
  --fs-6: 32px;
  --fs-display: 40px;
  /* Spacing scale (rule 5). */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
}

* {
  box-sizing: border-box;
  scrollbar-color: var(--line) transparent;
  scrollbar-width: thin;
}
html,
body,
#root {
  height: 100%;
  margin: 0;
}
body {
  background: var(--ink);
  color: var(--fg);
  font-family: var(--body);
  font-size: var(--fs-3);
  line-height: 1.4;
  -webkit-font-smoothing: antialiased;
  user-select: none;
  overflow: hidden;
}
button {
  font: inherit;
  color: inherit;
  cursor: pointer;
}
input,
textarea,
select {
  font: inherit;
  user-select: text;
}
h1,
h2,
h3,
h4 {
  margin: 0;
}

/* ---------- primitives ---------- */
.eyebrow {
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--muted);
}
.eyebrow.warn {
  color: var(--warn);
}
.muted {
  color: var(--muted);
}
.small {
  font-size: var(--fs-2);
}
.card {
  background: var(--ink-2);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}
kbd {
  font-family: var(--mono);
  font-size: var(--fs-1);
  color: var(--fg);
  border: 1px solid var(--line);
  background: var(--ink-3);
  border-radius: 5px;
  padding: 1px 6px;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: var(--radius-sm);
  padding: 11px 20px;
  font-weight: 700;
  border: 1px solid transparent;
  transition:
    background 0.15s,
    border-color 0.15s,
    transform 0.1s;
  white-space: nowrap;
}
.btn:active {
  transform: scale(0.98);
}
.btn:disabled {
  opacity: 0.4;
  pointer-events: none;
}
.btn-primary {
  background: var(--cyan);
  color: var(--ink);
}
.btn-primary:hover {
  background: var(--cyan-hi);
}
.btn-ghost {
  background: transparent;
  border-color: var(--line);
}
.btn-ghost:hover {
  border-color: var(--cyan);
}
.btn-sm {
  padding: 7px 14px;
  font-size: var(--fs-2);
}
.btn-lg {
  padding: 14px 26px;
  font-size: var(--fs-3);
}
.icon-btn {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: var(--radius-sm);
  border: 1px solid transparent;
  background: transparent;
  color: var(--muted);
}
.icon-btn:hover {
  color: var(--fg);
  border-color: var(--line);
}
.link {
  background: none;
  border: 0;
  color: var(--cyan);
  font-weight: 700;
  font-size: var(--fs-2);
  padding: 4px 6px;
}
.link:hover {
  color: var(--cyan-hi);
}

.field {
  width: 100%;
  background: var(--ink);
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 11px 13px;
  color: var(--fg);
  outline: none;
  resize: none;
  transition: border-color 0.15s;
}
.field::placeholder {
  color: var(--dim);
}
.field:focus {
  border-color: var(--cyan);
}
.chip {
  border-radius: 999px;
  border: 1px solid var(--line);
  background: transparent;
  color: var(--muted);
  padding: 7px 14px;
  font-size: var(--fs-2);
  transition: all 0.15s;
}
.chip:hover {
  border-color: var(--muted);
}
.chip.on {
  border-color: var(--cyan);
  color: var(--cyan);
  background: color-mix(in srgb, var(--cyan) 12%, transparent);
}

.fade {
  animation: none;
}
@keyframes fade {
  from {
    opacity: 0;
    transform: translateY(4px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

/* The ic mark and the INSOMNIA.CLUB mono wordmark. */
.mark {
  flex: none;
  width: 36px;
  height: 36px;
  display: block;
  filter: drop-shadow(0 0 10px color-mix(in srgb, var(--cyan) 35%, transparent));
}
.mark.big {
  width: 76px;
  height: 76px;
}
.wordmark-mono {
  font-family: var(--mono);
  font-weight: 500;
  font-size: var(--fs-2);
  letter-spacing: 0.22em;
  color: var(--fg);
}
/* Headlines: lowercase, ending in a full stop, with a cyan tail. */
.headline {
  font-family: var(--display);
  font-weight: 700;
  text-transform: lowercase;
  letter-spacing: -0.01em;
}
.headline .tail {
  color: var(--cyan);
}
.label-green {
  font-family: var(--body);
  font-weight: 500;
  font-size: var(--fs-1);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--acid);
}

/* Role tiles give every agent a face. */
.role-tile {
  flex: none;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: var(--radius-sm);
  background: var(--ink-3);
  border: 1px solid var(--line);
  color: var(--cyan);
}
.role-tile.sm {
  width: 26px;
  height: 26px;
  border-radius: 6px;
}
.role-meta,
.role-google {
  color: #7fb8ff;
}
.role-report,
.role-sheet,
.role-finance {
  color: var(--acid);
}
.role-ppc,
.role-seo {
  color: #7fb8ff;
}
.role-email {
  color: #ff9ad5;
}
.role-project,
.role-assistant {
  color: #ffc857;
}
.role-inbox,
.role-writer {
  color: var(--cyan);
}
.role-onboarding,
.role-review {
  color: #c49bff;
}
.role-new {
  color: var(--muted);
}
.role-agency {
  color: var(--acid);
}
.role-custom {
  color: var(--warn);
}

/* Status: green is live or finished, amber needs you, cyan is focus. */
.status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  white-space: nowrap;
}
.status i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  border: 1.5px solid currentColor;
}
.status.s-working {
  color: var(--acid);
}
.status.s-working i,
.status.s-done i {
  background: currentColor;
}
.status.s-working i {
}
.status.s-done {
  color: var(--acid);
}
.status.s-waiting {
  color: var(--warn);
}
.status.s-waiting i {
  background: currentColor;
}
.status.s-starting {
  color: var(--cyan);
}
@keyframes breathe {
  50% {
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--acid) 25%, transparent);
  }
}

/* ---------- setup ---------- */
.setup-page {
  height: 100%;
  overflow-y: auto;
  background: radial-gradient(900px 520px at 85% -10%, #0a2433 0%, transparent 60%), var(--ink);
}
.setup-grid {
  max-width: 1120px;
  margin: 0 auto;
  min-height: 100%;
  padding: 64px 40px 48px;
  display: grid;
  grid-template-columns: minmax(280px, 400px) 1fr;
  gap: 56px;
  align-items: start;
}
.setup-brand {
  position: sticky;
  top: 64px;
}
.setup-brand .mark {
  margin-bottom: 22px;
}
.setup-brand h1 {
  font-family: var(--display);
  font-size: var(--fs-display);
  line-height: 1.08;
  margin: 10px 0 12px;
}
.lede {
  color: var(--muted);
  font-size: var(--fs-3);
  margin: 0 0 28px;
}
.next {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 18px;
}
.next li {
  display: flex;
  gap: 14px;
}
.next .num {
  flex: none;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-family: var(--body);
  font-size: var(--fs-2);
  color: var(--cyan);
  border: 1px solid color-mix(in srgb, var(--cyan) 45%, transparent);
}
.next-title {
  font-weight: 700;
  margin-bottom: 2px;
}
.next .muted {
  font-size: var(--fs-3);
}
.progress {
  height: 6px;
  border-radius: 999px;
  background: var(--ink-3);
  overflow: hidden;
  margin-bottom: 10px;
}
.progress div {
  height: 100%;
  background: linear-gradient(90deg, var(--cyan), var(--acid));
  transition: width 0.4s ease;
}
.setup-card {
  padding: 30px;
}
.form {
  display: grid;
  gap: 22px;
}
.row-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.profiles {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 8px 0;
  border-bottom: 1px solid var(--line, rgba(128, 128, 128, 0.25));
}
.profiles-list,
.profiles-add {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-start;
}
.carry-notes-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 6px;
}
.form-field {
  display: block;
}
.form-field > span,
.form-field .label {
  display: block;
  margin-bottom: 8px;
  color: var(--muted);
  font-size: var(--fs-3);
}
.optional {
  font-style: normal;
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--dim);
  margin-left: 6px;
}
.chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.form-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  padding-top: 4px;
}
.finish {
  display: flex;
  align-items: flex-end;
  gap: 16px;
  padding-bottom: 22px;
  margin-bottom: 18px;
  border-bottom: 1px solid var(--line);
}
.finish .voice-picker {
  flex: 1;
}
.steps {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 4px;
}
.steps li {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 11px 6px;
  border-radius: var(--radius-sm);
}
.steps li.waiting .step-title {
  color: var(--dim);
}
.step-title {
  font-weight: 500;
}
.step-detail {
  color: var(--muted);
  font-size: var(--fs-2);
  margin-top: 2px;
}
.dot {
  flex: none;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: var(--fs-2);
  font-weight: 700;
  border: 1px solid var(--line);
  color: var(--dim);
}
.dot.running {
  border-color: var(--cyan);
  color: var(--cyan);
}
.dot.done {
  background: var(--acid);
  border-color: var(--acid);
  color: var(--ink);
}
.dot.note {
  background: var(--warn);
  border-color: var(--warn);
  color: var(--ink);
}
.dot.failed {
  background: var(--bad);
  border-color: var(--bad);
  color: var(--ink);
}
@keyframes ring {
  50% {
    box-shadow: 0 0 0 5px color-mix(in srgb, var(--cyan) 22%, transparent);
  }
}

/* ---------- voice controls ---------- */
.voice-picker {
  display: flex;
  flex-direction: column;
}
.voice-picker > span:first-child {
  color: var(--muted);
  font-size: var(--fs-3);
  margin-bottom: 8px;
}
.voice-picker select {
  appearance: none;
  cursor: pointer;
  padding-right: 32px;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--muted) 50%),
    linear-gradient(135deg, var(--muted) 50%, transparent 50%);
  background-position:
    calc(100% - 16px) 52%,
    calc(100% - 11px) 52%;
  background-size: 5px 5px;
  background-repeat: no-repeat;
}
.voice-picker select option {
  background: var(--ink-2);
  color: var(--fg);
}
.voice-picker.compact select {
  padding: 7px 30px 7px 10px;
  font-size: var(--fs-2);
  width: auto;
  border-color: transparent;
  background-color: transparent;
}
.voice-picker.compact select:hover {
  border-color: var(--line);
}

/* ---------- club shell ---------- */
.club {
  height: 100%;
  display: grid;
  grid-template-rows: auto 1fr;
}
.club-head {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 14px 20px;
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--ink-2) 55%, var(--ink));
  -webkit-app-region: drag;
}
.club-head button,
.club-head select,
.club-head .talk-hint {
  -webkit-app-region: no-drag;
}
.brand {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}
.wordmark {
  font-family: var(--mono);
  font-weight: 500;
  font-size: var(--fs-3);
  letter-spacing: 0.24em;
  line-height: 1.1;
}
.pulse-line {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-top: 4px;
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}
.pulse-line i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--dim);
}
.pulse-line.live {
  color: var(--acid);
}
.pulse-line.live i {
  background: var(--acid);
}
.hello {
  padding-left: 22px;
  border-left: 1px solid var(--line);
  min-width: 0;
}
.greet {
  font-weight: 700;
  font-size: var(--fs-3);
  white-space: nowrap;
}
.controls {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
}
.talk-hint,
.voice-group {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 36px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  font-size: var(--fs-2);
  color: var(--fg);
  white-space: nowrap;
}
.talk-hint svg {
  color: var(--cyan);
}
.voice-group {
  padding: 0 4px 0 6px;
  gap: 2px;
}
.switch {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 30px;
  padding: 0 8px;
  background: none;
  border: 0;
  border-radius: 6px;
  color: var(--muted);
  font-size: var(--fs-2);
}
.switch.on {
  color: var(--fg);
}
.switch .track {
  width: 28px;
  height: 16px;
  border-radius: 999px;
  background: var(--ink-3);
  border: 1px solid var(--line);
  position: relative;
  transition: background 0.2s;
}
.switch .knob {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--muted);
  transition:
    transform 0.2s,
    background 0.2s;
}
.switch.on .track {
  background: color-mix(in srgb, var(--acid) 25%, var(--ink-3));
  border-color: color-mix(in srgb, var(--acid) 50%, var(--line));
}
.switch.on .knob {
  transform: translateX(12px);
  background: var(--acid);
}
.speaking-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 30px;
  padding: 0 10px;
  background: color-mix(in srgb, var(--acid) 10%, transparent);
  border: 1px solid color-mix(in srgb, var(--acid) 55%, transparent);
  border-radius: 6px;
  color: var(--acid);
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.bars {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  height: 12px;
}
.bars i {
  width: 3px;
  height: 100%;
  background: currentColor;
  border-radius: 1px;
  animation: bar 0.9s ease-in-out infinite;
}
.bars i:nth-child(2) {
  animation-delay: 0.15s;
}
.bars i:nth-child(3) {
  animation-delay: 0.3s;
}
.bars i:nth-child(4) {
  animation-delay: 0.45s;
}
@keyframes bar {
  0%,
  100% {
    transform: scaleY(0.35);
  }
  50% {
    transform: scaleY(1);
  }
}

.club-body {
  min-height: 0;
  display: grid;
  grid-template-columns: 228px 1fr 340px;
}
.rail {
  border-right: 1px solid var(--line);
  padding: 14px 10px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.rail-item,
.rail-agent {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 8px 10px;
  border-radius: var(--radius-sm);
  border: 1px solid transparent;
  background: none;
  color: var(--muted);
  text-align: left;
  font-size: var(--fs-3);
}
.rail-item:hover,
.rail-agent:hover {
  color: var(--fg);
  background: var(--ink-2);
}
.rail-item.on,
.rail-agent.on {
  color: var(--fg);
  background: var(--ink-2);
  border-color: var(--line);
}
.rail-label {
  padding: 18px 10px 8px;
}
.rail-empty {
  padding: 0 10px;
}
.rail-name {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dot-status {
  flex: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 1.5px solid var(--dim);
}
.dot-status.s-working {
  background: var(--acid);
  border-color: var(--acid);
}
.dot-status.s-done {
  background: var(--acid);
  border-color: var(--acid);
}
.dot-status.s-waiting {
  background: var(--warn);
  border-color: var(--warn);
}
.dot-status.s-starting {
  border-color: var(--cyan);
}

.stage {
  position: relative;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
/* One notice at a time: the first child in the slot wins (Club.tsx .notices). */
.notices > :not(:first-child) {
  display: none;
}
.banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 14px 18px 0;
  padding: 10px 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  font-size: var(--fs-3);
}
.banner.warn {
  border-color: color-mix(in srgb, var(--warn) 55%, transparent);
  color: var(--warn);
}

/* overview */
.overview {
  flex: 1;
  overflow-y: auto;
  padding: 20px;
}
.agent-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
  gap: 16px;
}
.agent-card {
  display: flex;
  flex-direction: column;
  min-height: 300px;
  max-height: 380px;
  overflow: hidden;
  transition: border-color 0.2s;
}
.agent-card:hover {
  border-color: color-mix(in srgb, var(--cyan) 40%, var(--line));
}
.agent-card.is-waiting {
  border-color: color-mix(in srgb, var(--warn) 55%, var(--line));
}
.agent-card > header,
.focus-head {
  display: flex;
  align-items: center;
  gap: 12px;
}
.agent-card > header {
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
}
.who {
  flex: 1;
  min-width: 0;
}
.name-row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.name-row h3,
.name-row h2 {
  font-family: var(--display);
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.name-row h3 {
  font-size: var(--fs-4);
}
.name-row h2 {
  font-size: var(--fs-5);
}
.step {
  color: var(--muted);
  font-size: var(--fs-2);
  margin-top: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.feed {
  flex: 1;
  overflow: hidden;
  padding: 14px 18px 16px;
  position: relative;
  mask-image: linear-gradient(to bottom, #000 82%, transparent);
}
.asked {
  font-size: var(--fs-2);
  color: var(--dim);
  margin-bottom: 10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.empty {
  margin: 0;
}
.steps-mini {
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
  font-family: var(--body);
  font-size: var(--fs-2);
  color: var(--muted);
}
.steps-mini li::before {
  content: '\203A';
  color: var(--acid);
  margin-right: 8px;
}
.agent-card.add {
  min-height: 140px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border-style: dashed;
  background: transparent;
  color: var(--muted);
}
.agent-card.add:hover {
  color: var(--cyan);
}

/* Rich text in agent feeds */
.md {
  font-size: var(--fs-3);
  line-height: 1.5;
  user-select: text;
}
.md > :first-child {
  margin-top: 0;
}
.md h1,
.md h2,
.md h3,
.md h4 {
  font-family: var(--display);
  font-weight: 600;
  font-size: var(--fs-4);
  margin: 12px 0 6px;
}
.md p {
  margin: 0 0 8px;
  color: color-mix(in srgb, var(--fg) 88%, var(--muted));
}
.md strong {
  color: var(--fg);
  font-weight: 700;
}
.md ul,
.md ol {
  margin: 0 0 8px;
  padding-left: 18px;
}
.md li {
  margin: 3px 0;
}
.md li::marker {
  color: var(--cyan);
}
.md code {
  font-family: var(--mono);
  font-size: var(--fs-2);
  background: var(--ink-3);
  border-radius: 4px;
  padding: 1px 5px;
}
.md pre {
  background: var(--term);
  border: 1px solid var(--line-soft);
  border-radius: var(--radius-sm);
  padding: 10px 12px;
  overflow: hidden;
}
.md pre code {
  background: none;
  padding: 0;
}
.md table {
  width: 100%;
  border-collapse: collapse;
  margin: 6px 0 10px;
  font-size: var(--fs-2);
}
.md th {
  font-family: var(--body);
  font-weight: 400;
  font-size: var(--fs-1);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
  text-align: left;
  padding: 0 8px 6px 0;
  border-bottom: 1px solid var(--line);
}
.md td {
  padding: 6px 8px 6px 0;
  border-bottom: 1px solid var(--line-soft);
}
.md th:not(:first-child),
.md td:not(:first-child) {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.md a {
  color: var(--cyan);
}
.md blockquote {
  margin: 0 0 8px;
  padding-left: 12px;
  border-left: 2px solid var(--line);
  color: var(--muted);
}

.empty-club {
  max-width: 520px;
  margin: 5vh auto 24px;
  text-align: center;
}
.empty-club .mark {
  margin: 0 auto 22px;
}
.empty-club h2 {
  font-family: var(--display);
  font-size: var(--fs-6);
  margin-bottom: 10px;
}
.empty-actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  margin-top: 22px;
}

/* library */
.library {
  flex: 1;
  overflow-y: auto;
  padding: 24px;
}
.view-head {
  margin-bottom: 22px;
}
.view-head h2 {
  font-family: var(--display);
  font-size: var(--fs-6);
  margin: 6px 0;
}
.lib-group {
  margin-bottom: 24px;
}
.lib-group > h4 {
  margin-bottom: 10px;
}
.lib-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 12px;
}
.lib-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px;
  transition: border-color 0.2s;
}
.lib-card:hover {
  border-color: color-mix(in srgb, var(--cyan) 40%, var(--line));
}
.lib-card.blank {
  border-style: dashed;
  background: transparent;
}
.lib-text {
  flex: 1;
  min-width: 0;
}
.lib-text h3 {
  font-family: var(--display);
  font-weight: 600;
  font-size: var(--fs-4);
}
.lib-text p {
  margin: 3px 0 0;
  font-size: var(--fs-2);
}

/* Agencies: one lead and the team it briefs. Wider cards, green edge. */
.lib-note {
  margin: -4px 0 12px;
  font-size: var(--fs-2);
  max-width: 640px;
}
.lib-grid.agencies {
  grid-template-columns: repeat(auto-fill, minmax(620px, 1fr));
}
.lib-card.agency {
  align-items: flex-start;
  border-color: color-mix(in srgb, var(--acid) 28%, var(--line));
}
.lib-card.agency:hover {
  border-color: color-mix(in srgb, var(--acid) 55%, var(--line));
}
.lib-card.agency .btn {
  align-self: center;
}
.lib-team {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 10px 0 0;
  padding: 0;
  list-style: none;
}
.lib-team li {
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 3px 7px;
  border: 1px solid var(--line);
  border-radius: 4px;
  color: var(--muted);
}

/* Custom: agents Insomnia built for this one client. Amber edge and a tag. */
.lib-card.custom {
  border-color: color-mix(in srgb, var(--warn) 32%, var(--line));
}
.lib-card.custom:hover {
  border-color: color-mix(in srgb, var(--warn) 60%, var(--line));
}
.lib-tag {
  display: inline-block;
  margin-left: 8px;
  vertical-align: 2px;
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 2px 6px;
  border-radius: 4px;
  color: var(--warn);
  border: 1px solid color-mix(in srgb, var(--warn) 45%, transparent);
}

/* Chrome guide: ticked steps and an action under a step */
.chrome-guide .approval-list li.done .num {
  color: var(--acid);
  border-color: color-mix(in srgb, var(--acid) 50%, var(--line));
}
.chrome-guide .approval-list li.done .approval-title {
  color: var(--muted);
  text-decoration: line-through;
  text-decoration-color: var(--dim);
}
.guide-action {
  margin-top: 8px;
}
.talk.note .talk-main {
  color: var(--warn);
}

/* Multi-select menus: boxes to tick, a Done button to confirm */
.ask-opt.chk .ask-num {
  width: 20px;
  height: 20px;
  border: 1.5px solid var(--line);
  border-radius: 4px;
  display: inline-grid;
  place-items: center;
  font-size: var(--fs-2);
  color: var(--acid);
}
.ask-opt.chk.on .ask-num {
  border-color: var(--acid);
  background: color-mix(in srgb, var(--acid) 14%, transparent);
}
.ask-done-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 10px;
}

/* Hourly rate row in the account menu */
.rate-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: var(--fs-2);
}
.rate-input {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: var(--body);
  color: var(--muted);
}
.rate-input input {
  width: 64px;
  padding: 4px 6px;
  background: transparent;
  border: 1px solid var(--line);
  border-radius: 4px;
  color: var(--fg);
  font: inherit;
  text-align: right;
}
.rate-saved {
  margin-left: 6px;
  color: var(--acid);
  font-size: var(--fs-1);
}

/* focused agent */
.focus {
  position: relative;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  flex-direction: column;
  padding: 16px 18px 18px;
  gap: 12px;
}
.first-run {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 12px 10px 16px;
  border-radius: var(--radius-sm);
  border: 1px solid color-mix(in srgb, var(--cyan) 35%, var(--line));
  background: color-mix(in srgb, var(--cyan) 6%, var(--ink-2));
  font-size: var(--fs-3);
  color: var(--muted);
}
.first-run b {
  color: var(--fg);
}
.first-run em {
  color: var(--cyan);
  font-style: normal;
}
.term-frame {
  flex: 1;
  min-height: 0;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: var(--term);
  padding: 14px 6px 10px 16px;
}
.agent-term {
  height: 100%;
}
/* The simple view keeps the terminal running, laid out but out of sight. */
.term-frame.ghost {
  position: absolute;
  inset: 16px 18px 18px;
  visibility: hidden;
  pointer-events: none;
}

/* ---------- attachments ---------- */
/* The whole agent view takes a drop; the overlay says so. */
.focus.dragging > * {
  pointer-events: none;
}
.drop-zone {
  position: absolute;
  inset: 16px 18px 18px;
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: var(--radius);
  border: 2px dashed var(--cyan);
  background: color-mix(in srgb, var(--ink) 82%, transparent);
  backdrop-filter: blur(3px);
  color: var(--cyan);
}
.drop-title {
  font-family: var(--display);
  font-weight: 600;
  font-size: var(--fs-5);
  color: var(--fg);
}
.drop-sub {
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}
/* Files waiting in the composer, and files named in a sent message. */
.attach-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.attach-row.sent {
  margin-top: 8px;
  justify-content: flex-end;
}
.attach-row.sent.only {
  margin-top: 0;
}
.attach-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 260px;
  padding: 4px 8px 4px 9px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--cyan) 40%, var(--line));
  background: color-mix(in srgb, var(--cyan) 8%, var(--ink-3));
  color: var(--fg);
  font-family: var(--body);
  font-size: var(--fs-1);
  line-height: 1.3;
  white-space: nowrap;
  text-align: left;
}
.attach-chip svg {
  flex: none;
  color: var(--cyan);
}
.attach-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
button.attach-chip {
  border-color: color-mix(in srgb, var(--cyan) 40%, var(--line));
  transition: border-color 0.15s;
}
button.attach-chip:hover {
  border-color: var(--cyan);
  color: var(--cyan-hi);
}
.attach-x {
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  margin-right: -3px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--muted);
}
.attach-x:hover {
  background: color-mix(in srgb, var(--fg) 12%, transparent);
  color: var(--fg);
}
.attach-error {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: var(--fs-2);
  color: var(--bad);
}
.attach-btn {
  flex: none;
  margin-bottom: 2px;
}
.attach-btn:hover {
  color: var(--cyan);
  border-color: color-mix(in srgb, var(--cyan) 40%, var(--line));
}

/* Simple / Terminal switch */
.look {
  display: inline-flex;
  padding: 3px;
  gap: 2px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--ink-2);
}
.look button {
  border: 0;
  background: none;
  color: var(--muted);
  font-size: var(--fs-2);
  font-weight: 500;
  padding: 5px 12px;
  border-radius: 999px;
}
.look button.on {
  background: var(--ink-3);
  color: var(--fg);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--cyan) 45%, var(--line));
}

/* ---------- simple view ---------- */
.chat {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.chat-scroll {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding: 6px 4px 6px 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.chat-scroll > :first-child {
  margin-top: auto;
}
.chat-empty {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  max-width: 560px;
  padding: 18px;
  border: 1px dashed var(--line);
  border-radius: var(--radius);
}
.chat-empty-title {
  font-family: var(--display);
  font-weight: 600;
  font-size: var(--fs-5);
}
.chat-empty p {
  margin: 4px 0 0;
}
.msg {
  display: flex;
  flex-direction: column;
  max-width: 760px;
}
.msg.you {
  align-self: flex-end;
  align-items: flex-end;
  max-width: 70%;
}
.msg.you .bubble {
  padding: 9px 14px;
  border-radius: 16px 16px 4px 16px;
  background: color-mix(in srgb, var(--cyan) 16%, var(--ink-3));
  border: 1px solid color-mix(in srgb, var(--cyan) 30%, var(--line));
  font-size: var(--fs-3);
  white-space: pre-wrap;
  user-select: text;
}
.msg-who {
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--acid);
  margin-bottom: 6px;
}
.msg.agent .md {
  font-size: var(--fs-3);
}
.chat-steps {
  font-family: var(--body);
  font-size: var(--fs-2);
  color: var(--dim);
}
.chat-steps ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.chat-steps li {
  padding: 2px 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.chat-steps li::before {
  content: '\2713';
  color: var(--acid);
  margin-right: 8px;
}
.chat-steps li.live {
  color: var(--muted);
}
.chat-steps li.live::before {
  content: '\203A';
  color: var(--cyan);
}
.chat-steps .link {
  font-family: var(--body);
  font-size: var(--fs-2);
  margin-bottom: 2px;
}
.chat-working {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--muted);
  font-size: var(--fs-3);
}
.chat-working-text {
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.pulse-dot,
.rec-dot {
  flex: none;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--cyan);
  animation: chat-pulse 1.2s ease-in-out infinite;
}
.rec-dot {
  background: var(--bad);
}
@keyframes chat-pulse {
  50% {
    opacity: 0.3;
  }
}
.chat-ended {
  font-size: var(--fs-3);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px 16px;
  padding: 12px 14px;
  border: 1px dashed var(--line);
  border-radius: var(--radius-sm);
}

/* pick up where you left off: sessions from the last week, one row each */
.resume {
  margin-bottom: 22px;
}
.resume > .eyebrow {
  margin-bottom: 10px;
}
.resume-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.resume-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 14px;
  padding: 12px 16px;
  transition: border-color 0.2s;
}
.resume-row:hover {
  border-color: color-mix(in srgb, var(--cyan) 40%, var(--line));
}
/* The name keeps its room; when there is not enough, the time and the
   button drop to a second line and sit at the right. */
.resume-row .who {
  flex: 1 1 220px;
  min-width: 0;
}
.resume-row .name-row h3 {
  font-size: var(--fs-4);
}
.resume-when {
  margin-left: auto;
  font-family: var(--body);
  font-size: var(--fs-1);
  color: var(--dim);
  white-space: nowrap;
}
.resume-when.unfinished {
  color: var(--warn);
}
.resume-row .step {
  font-size: var(--fs-2);
}
.empty-club .resume {
  text-align: left;
  margin: 28px 0 0;
}

/* schedule: the jobs in reference/schedule.md, one row each */
.schedule {
  margin-bottom: 22px;
}
.schedule > .eyebrow {
  margin-bottom: 10px;
}
.schedule-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sched-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 14px;
  padding: 12px 16px;
  transition: border-color 0.2s;
}
.sched-row:hover {
  border-color: color-mix(in srgb, var(--cyan) 40%, var(--line));
}
.sched-row.off .role-tile,
.sched-row.off h3 {
  opacity: 0.6;
}
.sched-row .who {
  flex: 1 1 220px;
  min-width: 0;
}
.sched-row .name-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.sched-row .name-row h3 {
  font-size: var(--fs-4);
}
.sched-row .step {
  font-size: var(--fs-2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sched-when {
  font-family: var(--body);
  font-size: var(--fs-2);
  color: var(--muted);
}
.sched-next {
  color: var(--fg);
}
.sched-row .switch {
  padding: 0 4px;
}
.schedule-empty,
.schedule-errors {
  margin: 0;
  font-size: var(--fs-2);
}
.schedule-errors {
  margin-top: 8px;
}
.empty-club .schedule {
  text-align: left;
  margin: 28px 0 0;
}
/* how the last run went: ok green, needs you amber, failed red, never dim */
.job-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 9px;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--dim);
  white-space: nowrap;
}
.job-chip i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}
.job-chip.is-ok {
  color: var(--acid);
}
.job-chip.is-needs-you {
  color: var(--warn);
}
.job-chip.is-failed {
  color: var(--bad);
}
.job-chip.is-running {
  color: var(--cyan);
}
.job-chip.is-running i {
}
/* an agent card started by the schedule */
.sched-tag {
  margin-left: 10px;
  padding: 1px 7px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--cyan) 45%, transparent);
  color: var(--cyan);
  font-size: var(--fs-1);
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

/* a question from the agent, as buttons */
.ask {
  flex: none;
  padding: 16px 18px;
  border-radius: var(--radius);
  border: 1px solid color-mix(in srgb, var(--warn) 55%, var(--line));
  background: color-mix(in srgb, var(--warn) 5%, var(--ink-2));
}
.ask-q {
  font-family: var(--display);
  font-weight: 600;
  font-size: var(--fs-4);
}
.ask-what {
  margin-top: 4px;
  color: var(--muted);
  font-size: var(--fs-3);
}
.ask-options {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 12px;
}
.ask-opt {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  text-align: left;
  padding: 10px 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: var(--ink-3);
  transition:
    border-color 0.15s,
    background 0.15s;
}
.ask-opt:hover,
.ask-opt.sel {
  border-color: var(--cyan);
}
.ask-opt.sel {
  background: color-mix(in srgb, var(--cyan) 8%, var(--ink-3));
}
.ask-num {
  flex: none;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-family: var(--body);
  font-size: var(--fs-2);
  background: var(--ink-2);
  border: 1px solid var(--line);
  color: var(--muted);
}
.ask-opt.sel .ask-num {
  background: var(--cyan);
  border-color: var(--cyan);
  color: var(--ink);
}
.ask-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.ask-text b {
  font-weight: 600;
}
.ask-text small {
  color: var(--muted);
  font-size: var(--fs-2);
}
.ask-hint {
  margin-top: 10px;
  color: var(--dim);
  font-size: var(--fs-2);
}

/* the message box */
.composer {
  flex: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px 10px 10px 16px;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: var(--ink-2);
}
.composer:focus-within {
  border-color: color-mix(in srgb, var(--cyan) 50%, var(--line));
}
.composer.rec {
  border-color: color-mix(in srgb, var(--bad) 60%, var(--line));
}
.composer-listen,
.composer-draft {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: var(--fs-3);
}
.composer-draft {
  color: var(--fg);
}
/* the words as they are heard */
.composer-live {
  font-size: var(--fs-3);
  line-height: 1.45;
  color: var(--fg);
  white-space: pre-wrap;
  max-height: 160px;
  overflow-y: auto;
}
.live-caret {
  display: inline-block;
  width: 2px;
  height: 1.05em;
  margin-left: 3px;
  vertical-align: -2px;
  background: var(--bad);
  animation: chat-pulse 1s ease-in-out infinite;
}
.composer-row {
  display: flex;
  align-items: flex-end;
  gap: 10px;
}
.composer-box {
  flex: 1;
  resize: none;
  border: 0;
  outline: none;
  background: none;
  color: var(--fg);
  font-size: var(--fs-3);
  line-height: 1.4;
  padding: 6px 0;
  max-height: 140px;
  field-sizing: content;
}
.composer-box::placeholder {
  color: var(--dim);
}
.agent-term .xterm,
.agent-term .xterm-viewport,
.agent-term .xterm-screen {
  background-color: var(--term) !important;
}
.agent-term .xterm {
  height: 100%;
}

/* side panel */
.side {
  border-left: 1px solid var(--line);
  overflow-y: auto;
  padding: 16px;
}
.tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px;
  padding: 4px;
  border-radius: 10px;
  background: var(--ink-2);
  border: 1px solid var(--line);
  margin-bottom: 14px;
}
.tab {
  border: 0;
  border-radius: 7px;
  background: none;
  color: var(--muted);
  padding: 7px;
  font-weight: 500;
  font-size: var(--fs-3);
}
.tab.on {
  background: var(--ink-3);
  color: var(--fg);
}
.review {
  padding: 12px 14px;
  margin-bottom: 14px;
  border-color: color-mix(in srgb, var(--warn) 55%, var(--line));
}
.review p {
  margin: 6px 0 0;
  font-size: var(--fs-3);
}
.profile {
  display: grid;
  gap: 10px;
}
.hours {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
}
.hours .big {
  font-family: var(--display);
  font-weight: 700;
  font-size: var(--fs-6);
  color: var(--acid);
}
.hours small {
  font-size: var(--fs-3);
  color: var(--muted);
  margin-left: 2px;
}
.section {
  padding: 14px 16px;
}
.section h3 {
  font-family: var(--display);
  font-weight: 600;
  font-size: var(--fs-4);
  margin-bottom: 6px;
}
.item {
  padding: 6px 0;
  font-size: var(--fs-2);
}
.item + .item {
  border-top: 1px solid var(--line-soft);
}
.item-head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.item b {
  font-weight: 500;
}
.hrs {
  font-family: var(--body);
  font-size: var(--fs-1);
  color: var(--acid);
}
.item .detail {
  display: block;
  color: var(--muted);
}
.files {
  display: grid;
  gap: 8px;
  justify-items: start;
}
.file {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px 12px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: var(--ink-2);
  text-align: left;
}
.file:hover {
  border-color: color-mix(in srgb, var(--cyan) 40%, var(--line));
}
.fname {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: var(--fs-2);
}
.size {
  font-family: var(--body);
  font-size: var(--fs-1);
  color: var(--dim);
}
.ftype {
  flex: none;
  font-family: var(--body);
  font-size: var(--fs-1);
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 3px 6px;
  border-radius: 4px;
  color: var(--ink);
  background: var(--muted);
}
.ftype.xlsx,
.ftype.csv {
  background: #3ddc84;
}
.ftype.docx {
  background: #6aa8ff;
}
.ftype.pptx {
  background: #ff9f5a;
}
.ftype.pdf {
  background: #ff7a7a;
}

@media (max-width: 1240px) {
  .club-body {
    grid-template-columns: 200px 1fr 300px;
  }
  .hello {
    display: none;
  }
}
@media (max-width: 1080px) {
  .club-body {
    grid-template-columns: 64px 1fr 280px;
  }
  .rail-item span,
  .rail-name,
  .rail-label,
  .rail-empty {
    display: none;
  }
  .rail-item,
  .rail-agent {
    justify-content: center;
  }
  .talk-hint {
    display: none;
  }
  .setup-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .setup-brand {
    position: static;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* macOS: the header sits under the traffic lights. */
.mac .setup-page {
  padding-top: 20px;
}
.mac .club-head {
  padding-left: 96px;
}
.setup-brand .headline {
  font-size: var(--fs-display);
  line-height: 1.05;
  margin: 12px 0 14px;
}
.setup-brand .wordmark-mono {
  margin: 18px 0 0;
}
.empty-club .headline,
.view-head .headline {
  font-size: var(--fs-6);
  margin: 8px 0;
}
.club-head .mark {
  width: 34px;
  height: 34px;
}

/* ---------- the talk dock ---------- */
.dock {
  flex: none;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 18px 16px;
  border-top: 1px solid var(--line);
  background: color-mix(in srgb, var(--ink-2) 60%, var(--ink));
}
.talk {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 10px 18px 10px 10px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--cyan) 50%, var(--line));
  background: color-mix(in srgb, var(--cyan) 8%, var(--ink-2));
  text-align: left;
  transition:
    background 0.15s,
    border-color 0.15s;
}
.talk:hover:not(:disabled) {
  background: color-mix(in srgb, var(--cyan) 14%, var(--ink-2));
  border-color: var(--cyan);
}
.talk:disabled {
  cursor: default;
  border-color: var(--line);
  background: var(--ink-2);
}
.talk-mic {
  flex: none;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--cyan);
  color: var(--ink);
  box-shadow: 0 0 0 6px color-mix(in srgb, var(--cyan) 15%, transparent);
}
.talk:disabled .talk-mic {
  background: var(--ink-3);
  color: var(--dim);
  box-shadow: none;
}
.talk-text {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.talk-main {
  font-family: var(--display);
  font-weight: 700;
  font-size: var(--fs-5);
  line-height: 1.15;
}
.talk-main kbd {
  font-size: var(--fs-2);
  vertical-align: 3px;
}
.talk-sub {
  color: var(--muted);
  font-size: var(--fs-2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dock-right {
  flex: none;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
}
@media (max-width: 1240px) {
  .switch > span:not(.track) {
    display: none;
  }
}

/* xterm's own scroll area: keep it the terminal colour, thin thumb only. */
.agent-term .xterm-viewport {
  overflow-y: auto !important;
  scrollbar-width: thin;
  scrollbar-color: var(--line) transparent;
}
.agent-term .xterm-viewport::-webkit-scrollbar {
  width: 8px;
  background: transparent;
}
.agent-term .xterm-viewport::-webkit-scrollbar-thumb {
  background: var(--line);
  border-radius: 4px;
}
.rail-agent {
  position: relative;
}
@media (max-width: 1080px) {
  .rail-agent .dot-status {
    position: absolute;
    top: 4px;
    right: 6px;
  }
  .side {
    padding: 12px;
  }
}
@media (max-width: 1240px) {
  .club-body {
    grid-template-columns: 200px 1fr 280px;
  }
}
@media (max-width: 1080px) {
  .club-body {
    grid-template-columns: 60px 1fr 250px;
  }
}

/* Brand buttons are pills. */
.btn {
  border-radius: 999px;
}
.mono {
  font-family: var(--mono);
}

/* Setup progress and completion: full width, two cards. */
.setup-wide {
  max-width: 1120px;
  margin: 0 auto;
  padding: 56px 40px 40px;
}
.setup-top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 28px;
}
.setup-top .headline {
  font-size: var(--fs-display);
  line-height: 1.05;
  margin: 10px 0 12px;
}
.setup-top .lede {
  max-width: 640px;
  margin: 0;
}
.setup-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  align-items: start;
}
.setup-cards.two {
  grid-template-columns: 1.15fr 1fr;
}
.setup-cards .card {
  padding: 20px 22px;
}
.card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 12px;
  margin-bottom: 6px;
  border-bottom: 1px solid var(--line);
}
.install .steps li {
  align-items: center;
  padding: 10px 2px;
  border-bottom: 1px solid var(--line-soft);
  border-radius: 0;
}
.install .steps li:last-child {
  border-bottom: 0;
}
.step-body {
  flex: 1;
  min-width: 0;
}
.step-state {
  flex: none;
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--dim);
}
.step-state.done {
  color: var(--acid);
}
.step-state.note {
  color: var(--warn);
}
.step-state.failed {
  color: var(--bad);
}
.step-state.running {
  color: var(--cyan);
}
.voice-list {
  display: grid;
  gap: 6px;
  max-height: 430px;
  overflow-y: auto;
  padding-top: 6px;
}
.voice-row {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-areas:
    'radio name play'
    'radio desc play';
  column-gap: 12px;
  align-items: center;
  padding: 10px 12px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line-soft);
  background: transparent;
  text-align: left;
}
.voice-row:hover {
  border-color: var(--line);
  background: var(--ink-3);
}
.voice-row.on {
  border-color: color-mix(in srgb, var(--cyan) 60%, var(--line));
  background: color-mix(in srgb, var(--cyan) 7%, var(--ink-2));
}
.voice-row .radio {
  grid-area: radio;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1.5px solid var(--dim);
}
.voice-row.on .radio {
  border-color: var(--cyan);
  background: radial-gradient(circle, var(--cyan) 0 4px, transparent 5px);
}
.voice-name {
  grid-area: name;
  font-weight: 700;
}
.voice-desc {
  grid-area: desc;
  color: var(--muted);
  font-size: var(--fs-2);
}
.voice-play {
  grid-area: play;
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--dim);
}
.voice-row.on .voice-play {
  color: var(--cyan);
}

/* "> 2 agents working for you_" with a blinking caret, like the brand's terminal labels. */
.pulse-line::after {
  content: '_';
  animation: caret 1.1s steps(1) infinite;
}
@keyframes caret {
  50% {
    opacity: 0;
  }
}
@media (max-width: 1080px) {
  .setup-cards.two {
    grid-template-columns: 1fr;
  }
  .setup-top {
    flex-direction: column;
    align-items: flex-start;
  }
}
.pulse-line .needs {
  color: var(--warn);
  font-weight: 500;
  margin-left: 6px;
}

/* ---------- what to expect: approvals ---------- */
.approvals {
  margin-top: 18px;
  padding: 20px 22px;
}
.approvals.compact {
  margin: 22px auto 0;
  padding: 0;
  max-width: 560px;
  text-align: left;
}
.approval-list {
  list-style: none;
  padding: 0;
  margin: 6px 0 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 18px;
}
.approvals.compact .approval-list {
  grid-template-columns: 1fr;
  gap: 8px;
}
.approval-list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--line-soft);
}
.approvals.compact .approval-list li {
  align-items: center;
  padding: 8px 12px;
  border: 1px solid var(--line-soft);
  border-radius: var(--radius-sm);
}
.approval-list .num {
  flex: none;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-family: var(--body);
  font-size: var(--fs-1);
  color: var(--cyan);
  border: 1px solid color-mix(in srgb, var(--cyan) 45%, transparent);
}
.approval-text {
  flex: 1;
  min-width: 0;
}
.approval-title {
  font-weight: 700;
}
.approval-answer {
  flex: none;
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--acid);
  text-align: right;
  max-width: 130px;
}
.approval-mock {
  margin-top: 8px;
}
.mock-term,
.mock-dialog {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 10px 12px;
  border-radius: var(--radius-sm);
  font-size: var(--fs-2);
}
.mock-term {
  font-family: var(--mono);
  background: var(--term);
  border: 1px solid var(--line-soft);
  white-space: pre;
}
.mock-term .dim {
  color: var(--dim);
}
.mock-term .pick {
  color: var(--cyan);
}
.mock-dialog {
  background: #e9edf1;
  color: #1c242c;
  border-radius: 10px;
  font-family: -apple-system, 'Segoe UI', system-ui, sans-serif;
}
.mock-btns {
  display: flex;
  justify-content: flex-end;
  gap: 6px;
  margin-top: 8px;
}
.mock-btns i,
.mock-btns b {
  font-style: normal;
  font-weight: 600;
  padding: 3px 12px;
  border-radius: 6px;
  background: #fff;
  border: 1px solid #c9d1d9;
}
.mock-btns b {
  background: #2f7cf6;
  border-color: #2f7cf6;
  color: #fff;
}
.approval-note {
  margin: 14px 0 0;
  color: var(--muted);
}
.approvals.compact .approval-note {
  text-align: center;
}
@media (max-width: 1080px) {
  .approval-list {
    grid-template-columns: 1fr;
  }
}

/* ================= Dossier brand pass =================
   Matches the Insomnia.Club case study dossier: heavy tight Zilla Slab
   headlines, light Roboto Condensed body, green terminal prompts, FILE://
   card strips, outlined status pills, boxed stat grids, uppercase pills. */
body {
  font-weight: 400;
  background:
    radial-gradient(700px 420px at 100% 0%, rgba(52, 229, 255, 0.07), transparent 70%),
    radial-gradient(600px 420px at 0% 100%, rgba(61, 250, 110, 0.05), transparent 70%), var(--ink);
}
.setup-page {
  background: transparent;
}
b,
strong,
.next-title,
.step-title,
.approval-title,
.greet,
.voice-name {
  font-weight: 500;
}
.headline,
.name-row h3,
.name-row h2,
.lib-text h3,
.section h3,
.md h1,
.md h2,
.md h3,
.md h4,
.talk-main,
.hours .big {
  font-family: var(--display);
  font-weight: 700;
  letter-spacing: -0.035em;
}
.headline {
  line-height: 0.98;
}
.setup-brand .headline,
.setup-top .headline {
  font-size: var(--fs-display);
}
.lede {
  font-family: var(--display);
  font-weight: 400;
  font-size: var(--fs-4);
  line-height: 1.45;
  color: var(--fg);
  letter-spacing: 0;
}
.prompt {
  font-family: var(--mono);
  font-size: var(--fs-2);
  letter-spacing: 0.08em;
  color: var(--acid);
  text-transform: lowercase;
}
.prompt::after {
  content: '_';
  animation: caret 1.1s steps(1) infinite;
}
.bracket {
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--cyan);
}
.label-green {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: var(--fs-1);
  letter-spacing: 0.22em;
}
.label-green::before {
  content: '';
  width: 3px;
  height: 12px;
  background: var(--acid);
}

/* Logo lockup: white mark over the Insomnia.Club wordmark. */
.lockup {
  display: block;
  height: 30px;
  width: auto;
  opacity: 0.95;
  -webkit-user-drag: none;
}
.lockup.big {
  height: 54px;
}
.club-head .brand {
  gap: 18px;
}
.club-head .brand .pulse-line {
  margin-top: 0;
}
.pulse-line {
  text-transform: lowercase;
  letter-spacing: 0.08em;
  font-size: var(--fs-2);
}

/* Uppercase pill buttons like BOOK A CALL. */
.btn {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: var(--fs-2);
  font-weight: 700;
  padding: 12px 24px;
}
.btn-sm {
  font-size: var(--fs-1);
  padding: 8px 16px;
}
.btn-lg {
  font-size: var(--fs-3);
  padding: 15px 30px;
}
.btn-ghost {
  border-color: #2b3843;
}

/* Cards: dossier panels. */
.card {
  background: rgba(13, 19, 26, 0.86);
  border-color: var(--line);
  border-radius: 6px;
}
.agent-card,
.lib-card {
  border-radius: 4px;
}
.file-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--line);
  font-family: var(--mono);
  font-size: var(--fs-1);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--dim);
  position: relative;
}
.file-strip .fname-hl {
  color: var(--acid);
}
.agent-card {
  position: relative;
}
.agent-card::before {
  content: '';
  position: absolute;
  inset: -1px -1px auto -1px;
  height: 2px;
  background: linear-gradient(90deg, var(--line), transparent);
}
.agent-card.is-working::before,
.agent-card.is-done::before {
  background: linear-gradient(90deg, var(--acid), rgba(61, 250, 110, 0.15) 70%, transparent);
}
.agent-card.is-waiting::before {
  background: linear-gradient(90deg, var(--warn), rgba(255, 200, 87, 0.15) 70%, transparent);
}
.agent-card > header {
  border-bottom: 0;
  padding: 14px 18px 4px;
}
.agent-card .name-row h3 {
  font-size: var(--fs-5);
}
.feed {
  padding: 8px 18px 16px;
}
/* Outlined status pills, like LIVE. */
.status {
  padding: 4px 10px;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-size: var(--fs-1);
  letter-spacing: 0.14em;
}
.status i {
  width: 6px;
  height: 6px;
  border: 0;
  background: currentColor;
}
.status.s-idle,
.status.s-ended {
  color: var(--dim);
}
.role-tile {
  border-radius: 4px;
  background: transparent;
  border-color: var(--line);
}

/* Stat cells: boxed grid, big slab number, tiny mono caps caption. */
.hours {
  display: block;
  padding: 14px 16px;
  border-radius: 4px;
}
.hours .big {
  display: block;
  font-size: var(--fs-display);
  line-height: 1;
  color: var(--acid);
  margin-bottom: 6px;
}
.hours .eyebrow {
  font-size: var(--fs-1);
  letter-spacing: 0.16em;
}

/* Section labels in the side panel and feeds. */
.section h3 {
  font-size: var(--fs-5);
}
.md table {
  border: 1px solid var(--line);
}
.md th,
.md td {
  padding-left: 10px;
}
.md th {
  padding-top: 8px;
}
.md td:not(:first-child),
.md th:not(:first-child) {
  padding-right: 10px;
}

/* Tags as boxed mono chips. */
.chip {
  border-radius: 2px;
  font-family: var(--body);
  font-size: var(--fs-2);
  letter-spacing: 0.04em;
  padding: 7px 12px;
}
.tabs,
.tab {
  border-radius: 4px;
}
.field {
  border-radius: 4px;
  background: rgba(5, 8, 13, 0.8);
}
.talk {
  border-radius: 999px;
}
.talk-main {
  font-size: var(--fs-5);
}
.lib-text h3 {
  font-size: var(--fs-5);
}
.view-head .headline,
.empty-club .headline {
  font-size: var(--fs-display);
}
.footer-values {
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--dim);
}
.setup-brand .lockup {
  margin-bottom: 40px;
}
.setup-brand .prompt {
  margin: 0 0 14px;
}
.setup-brand .footer-values {
  margin-top: 40px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}
.empty-club .prompt {
  margin: 0 0 10px;
}
.agent-card .file-strip {
  padding: 9px 18px;
}
/* Top-left logo: the cyan ic mark with the mono wordmark. */
.club-head .brand .pulse-line {
  margin-top: 4px;
}
.setup-logo {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 40px;
}
.setup-logo .mark {
  width: 44px;
  height: 44px;
}
/* Tool logos on chips and agent tiles. */
.chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.brand-logo {
  flex: none;
  display: block;
}
.brand-letter {
  flex: none;
  display: inline-grid;
  place-items: center;
  border-radius: 4px;
  color: #fff;
  font-family: var(--body);
  font-weight: 700;
  line-height: 1;
}
.chip:not(.on) .brand-logo,
.chip:not(.on) .brand-letter {
  opacity: 0.85;
}
.item-label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
/* API-priced work: the header meter and each agent's own figure. */
.usage-meter {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  padding: 0 14px 0 0;
  margin-right: 4px;
  border-right: 1px solid var(--line);
  font-family: var(--body);
  white-space: nowrap;
}
.usage-label {
  font-size: var(--fs-1);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--green, #3dfa6e);
}
.usage-figures {
  font-size: var(--fs-2);
  color: var(--muted);
}
.usage-figures b {
  color: var(--cyan);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.usage-sep {
  margin: 0 7px;
  opacity: 0.5;
}
.agent-cost {
  margin-left: 8px;
  font-family: var(--body);
  font-size: var(--fs-1);
  color: var(--cyan);
  font-variant-numeric: tabular-nums;
}
@media (max-width: 980px) {
  .usage-meter {
    display: none;
  }
}

/* ---------- account ---------- */
.account {
  position: relative;
}
.account-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 220px;
  height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--ink-2);
  color: var(--muted);
  font-size: var(--fs-2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.account-chip i {
  flex: none;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--dim);
}
.account-chip.s-signed-in {
  color: var(--fg);
}
.account-chip.s-signed-in i {
  background: var(--acid);
}
.account-chip.s-waiting i {
  background: var(--warn);
  animation: chat-pulse 1.2s ease-in-out infinite;
}
.account-chip:hover {
  border-color: var(--cyan);
}
.account-pop {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 30;
  width: 340px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: flex-start;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.45);
}
.account-who,
.account-form {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
}
.account-form {
  gap: 10px;
  align-items: flex-start;
}
.account-error {
  margin: 0;
  color: var(--bad);
}
.sharing {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sharing .switch {
  padding: 0;
  height: 26px;
  color: var(--fg);
  font-weight: 500;
}
.slack-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.sharing-text {
  margin: 0;
  color: var(--muted);
  font-size: var(--fs-2);
  line-height: 1.45;
}
.banner.update {
  border-color: color-mix(in srgb, var(--acid) 55%, var(--line));
  background: color-mix(in srgb, var(--acid) 6%, var(--ink-2));
}

/* license */
.empty-club.license {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}
.empty-club.license p {
  margin: 0;
}
.license-price {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.license-price b {
  font-family: var(--display);
  font-size: var(--fs-display);
  color: var(--fg);
}
.license-form {
  display: flex;
  gap: 10px;
  width: 100%;
  max-width: 420px;
}
.license-form .field {
  flex: 1;
}
.license-wait {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--warn);
}
.license-wait i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--warn);
  animation: chat-pulse 1.2s ease-in-out infinite;
}
.account-license {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  width: 100%;
  padding: 10px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

/* team purchase and the team view */
.license-buy {
  display: flex;
  gap: 12px;
  width: 100%;
  max-width: 440px;
  text-align: left;
}
.license-buy label {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.license-buy label:first-child {
  flex: 1;
}
.stepper {
  display: inline-flex;
  align-items: stretch;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  overflow: hidden;
}
.stepper button {
  width: 34px;
  border: 0;
  background: var(--ink-2);
  color: var(--fg);
  font-size: var(--fs-4);
  cursor: pointer;
}
.stepper button:hover {
  color: var(--cyan);
}
.stepper .field {
  width: 64px;
  border: 0;
  border-radius: 0;
  text-align: center;
  -moz-appearance: textfield;
}
.stepper .field::-webkit-inner-spin-button,
.stepper .field::-webkit-outer-spin-button {
  -webkit-appearance: none;
}
.license-total {
  font-weight: 600;
  color: var(--fg);
}
.license-msg {
  flex-basis: 100%;
}
.license-form {
  flex-wrap: wrap;
}
.link-btn {
  background: none;
  border: 0;
  padding: 0;
  color: var(--cyan);
  cursor: pointer;
  font: inherit;
}
.link-btn:hover {
  text-decoration: underline;
}
.team {
  max-width: 640px;
  margin: 4vh auto 24px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.team .headline {
  font-size: var(--fs-6);
  margin: 4px 0 6px;
}
.team-box {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: color-mix(in srgb, var(--ink-2) 70%, transparent);
}
.team-box p {
  margin: 0;
}
.team-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.team-big {
  font-size: var(--fs-5);
}
.team-seats {
  display: flex;
  align-items: center;
  gap: 10px;
}
.team-code {
  font-family: var(--mono, ui-monospace, monospace);
  font-size: var(--fs-5);
  letter-spacing: 0.12em;
  color: var(--acid);
}
.team-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.team-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  border-top: 1px solid var(--line);
  font-size: var(--fs-3);
}
.team-list li > span:first-child {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.pill {
  display: inline-block;
  padding: 1px 8px;
  border-radius: 99px;
  font-size: var(--fs-2);
  border: 1px solid var(--line);
  color: var(--muted);
}
.pill.warn {
  color: var(--warn);
  border-color: color-mix(in srgb, var(--warn) 55%, transparent);
}

/* live connect: staff asking to connect, and the banner while they are in */
.modal-back {
  position: fixed;
  inset: 0;
  z-index: 60;
  display: grid;
  place-items: center;
  background: rgba(2, 8, 14, 0.62);
  backdrop-filter: blur(4px);
}
.modal {
  width: min(440px, calc(100vw - 32px));
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.5);
}
.modal h3 {
  margin: 0;
  font-family: var(--display);
  font-size: var(--fs-5);
  line-height: 1.25;
  color: var(--fg);
}
.modal p {
  margin: 0;
  color: var(--muted);
  font-size: var(--fs-3);
  line-height: 1.5;
}
.modal-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  margin-top: 6px;
}
.banner.remote {
  border-color: color-mix(in srgb, var(--cyan) 55%, var(--line));
  background: color-mix(in srgb, var(--cyan) 7%, var(--ink-2));
}
.banner.remote .live-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--cyan);
  margin-right: 8px;
  animation: chat-pulse 1.2s ease-in-out infinite;
}

/* feedback: a kind, a box, Send; the last few items and where they got to */
.role-feedback {
  color: var(--cyan-hi);
}
.feedback {
  max-width: 640px;
  margin: 4vh auto 24px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.feedback .headline {
  font-size: var(--fs-6);
  margin: 4px 0 6px;
}
.feedback .view-head {
  margin-bottom: 0;
}
.feedback-kinds {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.feedback textarea.field {
  min-height: 150px;
  font: inherit;
  font-size: var(--fs-3);
  line-height: 1.5;
}
.feedback-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
.feedback-note {
  margin-left: auto;
  font-size: var(--fs-3);
  color: var(--acid);
}
.feedback-note.wait {
  color: var(--warn);
}
.feedback-note.bad {
  color: var(--bad);
}
.feedback-recent {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.feedback-recent > .eyebrow {
  margin-bottom: 2px;
}
.feedback-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
}
.feedback-row .kind {
  flex: none;
  min-width: 64px;
  text-align: center;
}
.feedback-row .what {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: var(--fs-3);
}
.feedback-row .what small {
  display: block;
  color: var(--dim);
  font-size: var(--fs-2);
}
.feedback-row .state {
  flex: none;
  font-family: var(--body);
  font-size: var(--fs-1);
  color: var(--dim);
  white-space: nowrap;
}
.feedback-row .state.sent {
  color: var(--acid);
}
.feedback-row .state.wait {
  color: var(--warn);
}
.feedback-row .state.bad {
  color: var(--bad);
}

/* ---------- Ads Ops dashboard (adsops/, Dashboard.tsx) ---------- */
/* Plain buttons inside the dashboard (tabs, links, account names) carry no UA chrome. */
:where(.ao) button:not(.btn) {
  background: none;
  border: 0;
  padding: 0;
  text-align: left;
}
/* The dashboard takes the side panel's column too. */
.club-body.wide {
  grid-template-columns: 228px 1fr;
}
@media (max-width: 1240px) {
  .club-body.wide {
    grid-template-columns: 200px 1fr;
  }
}
@media (max-width: 1080px) {
  .club-body.wide {
    grid-template-columns: 64px 1fr;
  }
}
.ao {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  font-size: var(--fs-3);
  line-height: 1.45;
}
.ao-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 24px;
  padding: 0 20px;
  min-height: 52px;
  border-bottom: 1px solid var(--line);
}
.ao-brand {
  font-family: var(--display);
  font-weight: 600;
  font-size: var(--fs-4);
}
.ao-tabs {
  display: flex;
  gap: 2px;
}
.ao-tabs button {
  padding: 15px 12px 13px;
  color: var(--muted);
  border-bottom: 2px solid transparent;
}
.ao-tabs button:hover {
  color: var(--fg);
}
.ao-tabs button.on {
  color: var(--fg);
  font-weight: 700;
  border-bottom-color: var(--cyan);
}
.ao-headright {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 14px;
  color: var(--muted);
  font-size: var(--fs-2);
}
.ao-sample {
  font-family: var(--body);
  font-size: var(--fs-1);
  border: 1px dashed var(--dim);
  border-radius: 999px;
  padding: 2px 10px;
}
.ao-scroll {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
}
.ao-main {
  max-width: 1360px;
  margin: 0 auto;
  padding: 22px 20px 48px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.ao h1 {
  margin: 0;
  font-family: var(--display);
  font-weight: 600;
  font-size: var(--fs-6);
  line-height: 1.1;
}
.ao h2 {
  margin: 0;
  font-family: var(--display);
  font-weight: 600;
  font-size: var(--fs-5);
}
.ao h3 {
  margin: 0 0 8px;
  font-size: var(--fs-3);
  font-weight: 700;
}
.ao p {
  margin: 0;
}
.ao-muted,
.ao-sub {
  color: var(--muted);
}
.ao-sub {
  font-size: var(--fs-2);
}
.ao-note {
  margin-top: 6px !important;
  color: var(--muted);
  font-size: var(--fs-2);
  line-height: 1.45;
}
.ao-mono {
  font-family: var(--body);
  font-size: var(--fs-2);
}
.ao-u {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.ao-k {
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--dim);
  margin-bottom: 4px;
}
.ao-link {
  color: var(--cyan);
  text-decoration: underline;
  text-underline-offset: 2px;
  text-align: left;
}
.ao-link:hover {
  color: var(--cyan-hi);
}
.ao-strong {
  font-weight: 700;
}
.ao-grow {
  flex: 1;
  min-width: 0;
}
.ao-right {
  margin-left: auto;
}
.ao-err {
  margin-top: 8px !important;
  color: var(--bad);
  font-size: var(--fs-2);
}
.ao-banner {
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 10px 14px;
  color: var(--muted);
}
.ao-banner.warn {
  border-color: color-mix(in srgb, var(--warn) 50%, transparent);
  color: var(--warn);
}
.ao-banner ul {
  margin: 8px 0 0;
  padding-left: 18px;
}
.ao-titlebar {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}
.ao-titlebar p {
  margin-top: 6px;
  max-width: 760px;
}
.ao-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.ao-filters label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: var(--fs-2);
  color: var(--muted);
}
.ao-filters select,
.ao-input {
  height: 38px;
  min-width: 150px;
  padding: 0 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: var(--ink-2);
  color: var(--fg);
  font: inherit;
}
textarea.ao-input {
  width: 100%;
  height: auto;
  padding: 10px;
  margin-top: 8px;
  resize: vertical;
}
.ao-input:focus,
.ao-filters select:focus {
  outline: none;
  border-color: var(--cyan);
}
.ao-row {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
}
.ao-row .ao-input {
  flex: 1;
}
.ao-card {
  background: var(--ink-2);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}
.ao-card.ao-flush {
  padding: 0;
  overflow-x: auto;
}
.ao-cardhead {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 6px 16px;
}
.ao-cardhead .ao-muted {
  font-size: var(--fs-2);
}
.ao-two {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}
.ao-stack {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}
@media (max-width: 1100px) {
  .ao-two {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* tables */
.ao-table {
  width: 100%;
  border-collapse: collapse;
}
.ao-table th {
  text-align: left;
  font-family: var(--body);
  font-weight: 400;
  font-size: var(--fs-1);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--dim);
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
  vertical-align: bottom;
}
.ao-table td {
  padding: 12px;
  border-bottom: 1px solid var(--line-soft);
  vertical-align: top;
}
.ao-table tr:last-child td {
  border-bottom: 0;
}
.ao-table .r {
  text-align: right;
}
.ao-card:not(.ao-flush) .ao-table th:first-child,
.ao-card:not(.ao-flush) .ao-table td:first-child {
  padding-left: 0;
}
.ao-table .ao-total td {
  font-weight: 700;
}
.ao-flush .ao-table th:first-child,
.ao-flush .ao-table td:first-child {
  padding-left: 20px;
}
.ao-acct {
  font-weight: 700;
  text-align: left;
  text-decoration: underline;
  text-decoration-color: var(--line);
  text-underline-offset: 3px;
}
.ao-acct:hover {
  color: var(--cyan);
  text-decoration-color: var(--cyan);
}
.ao-portfolio td:first-child {
  min-width: 150px;
}
.ao-sections {
  min-width: 340px;
}
.ao-sbars {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}
.ao-sbar {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ao-sbar-l {
  font-size: var(--fs-1);
  color: var(--muted);
}
.ao-sbar-track {
  display: block;
  height: 5px;
  border-radius: 3px;
  background: var(--line);
  overflow: hidden;
}
.ao-sbar-track i {
  display: block;
  height: 100%;
  border-radius: 3px;
}
.ao-sbar-track.settling {
  background: repeating-linear-gradient(
    -45deg,
    var(--line) 0 3px,
    color-mix(in srgb, var(--cyan) 45%, transparent) 3px 5px
  );
}
.ao-legend {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px 14px;
  text-transform: none;
  letter-spacing: 0;
  font-family: var(--body);
  font-size: var(--fs-2);
  color: var(--muted);
}
.ao-legend span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.ao-legend i {
  width: 12px;
  height: 2px;
  border-radius: 1px;
}
.ao-dot {
  display: inline-block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  vertical-align: 1px;
}
.ao-dot.ao-green {
  background: var(--acid);
}
.ao-dot.ao-yellow {
  background: var(--warn);
}
.ao-dot.ao-red {
  background: var(--bad);
}
.ao-dot.ao-hollow {
  border: 1.5px solid var(--muted);
}
.ao-dot.ao-none {
  background: var(--line);
}
.ao-grade .ao-score {
  font-size: var(--fs-5);
}
.ao-flags {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}
.ao-flag {
  display: inline-block;
  font-size: var(--fs-2);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 2px 8px;
  white-space: nowrap;
}
.ao-flag.strong {
  border-color: var(--bad);
  color: var(--fg);
}
.ao-ev {
  display: inline-block;
  font-family: var(--body);
  font-size: var(--fs-1);
  font-weight: 500;
  letter-spacing: 0.06em;
  padding: 1px 7px;
  border-radius: 4px;
  white-space: nowrap;
}
.ao-ev-verified {
  background: var(--fg);
  color: var(--ink);
}
.ao-ev-observed {
  border: 1px solid var(--fg);
}
.ao-ev-hypothesis {
  border: 1px dashed var(--muted);
  color: var(--muted);
  font-style: italic;
}
.ao-ev-rejected {
  border: 1px solid var(--dim);
  color: var(--dim);
}
.ao-src {
  font-family: var(--body);
  font-size: var(--fs-1);
  border: 1px solid var(--muted);
  border-radius: 4px;
  padding: 0 5px;
}
.ao-src.dashed {
  border-style: dashed;
  font-style: italic;
}
.ao-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ao-list > li {
  padding: 11px 0;
  border-bottom: 1px solid var(--line-soft);
}
.ao-list > li:last-child {
  border-bottom: 0;
}
.ao-decision,
.ao-runs > li,
.ao-change,
.ao-hist > li {
  display: flex;
  align-items: baseline;
  gap: 12px;
}
.ao-runs > li {
  align-items: center;
}
.ao-check {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: var(--fs-2);
  white-space: nowrap;
}
.ao-check input {
  accent-color: var(--cyan);
}
.ao-recs > li {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ao-rec-meta {
  display: flex;
  align-items: center;
  gap: 8px;
}
.ao-found {
  white-space: nowrap;
  font-size: var(--fs-2);
}
.ao-last {
  font-size: var(--fs-2);
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 96px;
}
.ao-portfolio th,
.ao-portfolio td {
  padding-left: 8px;
  padding-right: 8px;
}

/* account */
.ao-crumbs {
  display: flex;
  gap: 8px;
  color: var(--muted);
  font-size: var(--fs-2);
}
.ao-acct-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 16px;
}
.ao-profile {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 16px 24px;
}
.ao-scorehead {
  flex-direction: row;
  flex-wrap: wrap;
  gap: 24px;
}
.ao-scoretotal {
  flex: 1 1 280px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.ao-huge {
  font-family: var(--display);
  font-weight: 700;
  font-size: var(--fs-display);
  line-height: 1;
}
.ao-huge span {
  font-family: var(--body);
  font-weight: 400;
  font-size: var(--fs-4);
}
.ao-tiles {
  flex: 3 1 560px;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  align-content: start;
}
.ao-tile {
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.ao-tile-name {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: var(--fs-2);
  color: var(--muted);
}
.ao-tile-name i,
.ao-sechead i {
  width: 12px;
  height: 2px;
}
.ao-tile-score {
  font-family: var(--display);
  font-weight: 700;
  font-size: var(--fs-5);
}
.ao-tile-score span {
  font-family: var(--body);
  font-weight: 400;
  font-size: var(--fs-2);
  color: var(--muted);
}
.ao-chart {
  width: 100%;
  height: auto;
  display: block;
}
.ao-chart .ao-grid {
  stroke: var(--line);
}
.ao-chart .ao-axis {
  fill: var(--dim);
  font-size: var(--fs-1);
  font-family: var(--body);
}
.ao-chart .ao-sline {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
}
.ao-chart .ao-endlabel {
  font-size: var(--fs-1);
  font-family: var(--body);
}
.ao-mark {
  stroke: var(--dim);
  stroke-dasharray: 3 3;
}
.ao-line {
  fill: none;
  stroke: var(--fg);
  stroke-width: 1.6;
}
.ao-end {
  fill: var(--fg);
}
.ao-bar {
  fill: color-mix(in srgb, var(--fg) 80%, transparent);
}
.ao-shade {
  fill: color-mix(in srgb, var(--cyan) 8%, transparent);
}
.ao-spark {
  display: block;
  width: 100%;
  max-width: 260px;
  height: 34px;
  margin-top: 6px;
}
.ao-spark .ao-line {
  stroke-width: 1.3;
  vector-effect: non-scaling-stroke;
}
.ao-spark .ao-mark {
  vector-effect: non-scaling-stroke;
}
.ao details summary {
  cursor: pointer;
  color: var(--muted);
  font-size: var(--fs-2);
}
.ao-context {
  border: 1px solid var(--muted);
  border-radius: var(--radius-sm);
  padding: 12px 14px;
}
.ao-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 12px;
}
.ao-kpis.five {
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
}
.ao-kpi {
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.ao-kpi.ao-card {
  gap: 6px;
}
.ao-kpi p {
  font-size: var(--fs-2);
  color: var(--muted);
}
.ao-big {
  font-family: var(--display);
  font-weight: 700;
  font-size: var(--fs-6);
  line-height: 1.1;
}
.ao-mid {
  font-size: var(--fs-4);
}
.ao-charts {
  gap: 24px;
}
.ao-compare {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.ao-sectionlist {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.ao-sechead {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
}
.ao-sechead .ao-muted {
  font-size: var(--fs-2);
}
.ao-items td:first-child {
  min-width: 180px;
}
.ao-verdict {
  white-space: nowrap;
}
.ao-verdict.v-pass {
  color: var(--acid);
}
.ao-verdict.v-partial {
  color: var(--warn);
}
.ao-verdict.v-fail {
  color: var(--bad);
}
.ao-verdict.v-unverified {
  color: var(--dim);
}

/* performance */
.ao-chips {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  font-size: var(--fs-2);
}
.ao-chipbox {
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 4px 10px;
}
.ao-perf td {
  min-width: 110px;
}
.ao-spendcell {
  min-width: 260px !important;
}
.ao-pace {
  position: relative;
  display: block;
  height: 5px;
  margin-top: 8px;
  max-width: 260px;
  border-radius: 3px;
  background: var(--line);
}
.ao-pace i {
  position: absolute;
  inset: 0 auto 0 0;
  border-radius: 3px;
  background: var(--fg);
}
.ao-pace b {
  position: absolute;
  top: -3px;
  width: 2px;
  height: 11px;
  background: var(--cyan);
}
.ao-qbar {
  display: block;
  height: 5px;
  margin-top: 6px;
  border-radius: 3px;
  background: var(--line);
  overflow: hidden;
}
.ao-qbar i {
  display: block;
  height: 100%;
  background: var(--fg);
}
.ao-alerts > li {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.ao-kind {
  flex: none;
  min-width: 96px;
  text-align: center;
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.06em;
  border: 1px solid var(--muted);
  border-radius: 4px;
  padding: 2px 8px;
}
.ao-foot {
  color: var(--dim);
  font-size: var(--fs-2);
}

/* recommendation */
.ao-recmeta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 14px;
  font-size: var(--fs-2);
  color: var(--muted);
}
.ao-rectitle {
  max-width: 900px;
}
.ao-inset {
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 12px 14px;
}
.ao-inset.strong {
  border-color: var(--fg);
}
.ao-inset ul {
  margin: 4px 0 0;
  padding-left: 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ao-facts {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px 24px;
}
.ao-fromto {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.ao-step + .ao-step {
  margin-top: 12px;
}
.ao-qa {
  background: var(--ink-3);
  border-radius: var(--radius-sm);
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ao-pre {
  white-space: pre-wrap;
  font-family: var(--body);
  font-size: var(--fs-2);
  color: var(--muted);
}
.ao-md {
  line-height: 1.6;
}
.ao-md h1,
.ao-md h2,
.ao-md h3 {
  margin: 14px 0 6px;
}
.ao-md table {
  border-collapse: collapse;
}
.ao-md td,
.ao-md th {
  border: 1px solid var(--line);
  padding: 6px 10px;
  text-align: left;
}
.ao-md code {
  font-family: var(--mono);
  font-size: var(--fs-2);
}

/* ---------- Customize (Customize.tsx) ---------- */
.lib-actions {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-self: center;
}
.lib-tag.yours {
  color: var(--cyan);
  border-color: color-mix(in srgb, var(--cyan) 45%, transparent);
}
.lib-text .lib-was {
  margin: 0;
}
.pad {
  padding: 24px;
}
.customize {
  flex: 1;
  overflow-y: auto;
  padding: 24px;
}
.cz-head {
  display: flex;
  align-items: center;
  gap: 14px;
}
.cz-head h2 {
  font-family: var(--display);
  font-weight: 600;
  font-size: var(--fs-5);
  margin: 2px 0;
}
.cz-intro {
  max-width: 720px;
  margin: 16px 0 22px;
}
.cz-form {
  max-width: 880px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.cz-field {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.cz-label {
  font-weight: 700;
}
.cz-input {
  margin-top: 4px;
  background: var(--ink-2);
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 11px 13px;
  color: var(--fg);
  line-height: 1.5;
  resize: vertical;
}
.cz-input:focus {
  outline: none;
  border-color: var(--cyan);
}
.cz-input::placeholder {
  color: var(--dim);
}
.cz-two {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
@media (max-width: 900px) {
  .cz-two {
    grid-template-columns: 1fr;
  }
}
.cz-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.cz-msg {
  color: var(--acid);
}
.cz-err {
  color: var(--bad);
}

/* ---------- For you cards (ForYou.tsx) ---------- */
.tabs.three {
  grid-template-columns: 1fr 1fr 1fr;
}
.foryou {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.fy-bar {
  display: flex;
  justify-content: flex-end;
  margin-top: -6px;
}
.fy-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.fy-head {
  display: flex;
  align-items: center;
  gap: 8px;
}
.fy-now {
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.06em;
  text-transform: none;
  color: var(--cyan);
  border: 1px solid color-mix(in srgb, var(--cyan) 45%, transparent);
  border-radius: 4px;
  padding: 1px 6px;
}
.fy-card {
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.fy-card.fresh {
  border-color: var(--acid);
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--acid) 40%, transparent),
    0 0 24px color-mix(in srgb, var(--acid) 18%, transparent);
}
.fy-top {
  display: flex;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
}
.fy-top .muted {
  margin-left: auto;
}
.fy-chip {
  font-family: var(--body);
  font-size: var(--fs-1);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 1px 6px;
}
.fy-quote {
  border-left: 2px solid var(--line);
  padding-left: 10px;
}
.fy-quote p {
  margin: 2px 0 0;
  font-size: var(--fs-2);
  color: var(--muted);
}
.fy-text {
  width: 100%;
  background: var(--ink);
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 9px 10px;
  color: var(--fg);
  font-size: var(--fs-3);
  line-height: 1.45;
  resize: vertical;
}
.fy-text:focus {
  outline: none;
  border-color: var(--cyan);
}
.fy-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.btn.fy-send {
  background: var(--acid);
  color: var(--ink);
}
.btn.fy-send:hover {
  background: color-mix(in srgb, var(--acid) 80%, white);
}
.fy-note {
  margin: 0;
  font-size: var(--fs-2);
  color: var(--cyan);
}
.fy-err {
  margin: 0;
  font-size: var(--fs-2);
  color: var(--bad);
}
.fy-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--line-soft);
}
.fy-file {
  text-align: left;
  font-size: var(--fs-2);
  color: var(--fg);
  background: none;
  border: 0;
  padding: 2px 0;
}
.fy-file:hover {
  color: var(--cyan);
}
.fy-prefs .fy-pref {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--fs-2);
}
.fy-prefs input {
  accent-color: var(--cyan);
}
.fy-chip.warn {
  color: var(--warn);
  border-color: color-mix(in srgb, var(--warn) 45%, transparent);
}
.fy-text.fy-subject {
  resize: none;
  font-weight: 600;
}
.fy-auto {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--fs-2);
  color: var(--muted);
  margin: 2px 0 8px;
}
.fy-auto input {
  accent-color: var(--cyan);
}

/* ---------- display: text size and theme (account menu) ---------- */
.display-settings {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line-soft);
}
.seg {
  display: flex;
  border: 1px solid var(--line);
  border-radius: 6px;
  overflow: hidden;
}
.seg button {
  flex: 1;
  min-height: 32px;
  padding: 4px 8px;
  background: none;
  border: 0;
  border-left: 1px solid var(--line);
  color: var(--muted);
  font-size: var(--fs-2);
  line-height: 1;
}
.seg button:first-child {
  border-left: 0;
}
.seg button:hover {
  color: var(--fg);
}
.seg button.on {
  background: color-mix(in srgb, var(--cyan) 16%, transparent);
  color: var(--fg);
  font-weight: 600;
}
.seg button:focus-visible {
  outline: 2px solid var(--cyan);
  outline-offset: -2px;
}

/* ---------- light theme ----------
   Electron's theme setting (Display in the account menu) decides prefers-color-scheme; dark is
   the default. The agent terminal stays dark in both. */
@media (prefers-color-scheme: light) {
  :root {
    --ink: #f4f6f8;
    --ink-2: #ffffff;
    --ink-3: #e9eef2;
    --line: #cfd8e0;
    --line-soft: #e1e7ec;
    --fg: #0e1923;
    --muted: #455463;
    --dim: #687684;
    --cyan: #08789e;
    --cyan-hi: #065f7d;
    --acid: #11803a;
    --warn: #8f5d00;
    --bad: #c22d2d;
    --term: #ffffff;
  }
  body {
    background:
      radial-gradient(700px 420px at 100% 0%, rgba(8, 120, 158, 0.06), transparent 70%),
      radial-gradient(600px 420px at 0% 100%, rgba(17, 128, 58, 0.04), transparent 70%), var(--ink);
  }
  .card {
    background: rgba(255, 255, 255, 0.94);
  }
  .field {
    background: #ffffff;
  }
  .btn-ghost {
    border-color: var(--line);
  }
  .lockup {
    filter: invert(1);
  }
  .role-meta,
  .role-google,
  .role-ppc,
  .role-seo {
    color: #2463b8;
  }
  .role-email {
    color: #b0307a;
  }
  .role-project,
  .role-assistant {
    color: #8f5d00;
  }
  .role-onboarding,
  .role-review {
    color: #6c45b8;
  }
  .modal-back {
    background: rgba(14, 25, 35, 0.35);
  }
  .modal,
  .account-pop {
    box-shadow: 0 18px 40px rgba(14, 25, 35, 0.14);
  }
}

/* ---------- the phone (components/Phone.tsx) ---------- */
.phone {
  height: 100%;
  display: grid;
  grid-template-rows: auto 1fr;
  background: var(--ink);
  color: var(--text);
  padding-bottom: env(safe-area-inset-bottom);
}
.ph-head {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: calc(10px + env(safe-area-inset-top)) 16px 10px;
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--ink-2) 55%, var(--ink));
  min-height: 56px;
}
.ph-brand {
  flex: 1;
  min-width: 0;
}
.ph-brand .wordmark {
  font-size: 13px;
}
.ph-title {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}
.ph-title b {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ph-back {
  width: 40px;
  height: 40px;
}
.ph-main {
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.ph-home,
.ph-library {
  overflow-y: auto;
  padding: 12px 16px 96px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.ph-home section,
.ph-library section {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.ph-row {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  text-align: left;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: var(--ink-2);
  color: inherit;
  font: inherit;
  min-height: 64px;
}
.ph-row:active {
  background: color-mix(in srgb, var(--ink-2) 70%, var(--accent, #34e5ff));
}
.ph-row.needs {
  border-color: var(--accent, #34e5ff);
}
.ph-row-icon {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: color-mix(in srgb, var(--ink) 60%, var(--ink-2));
}
.ph-row-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ph-row-name {
  font-weight: 600;
}
.ph-row-last {
  font-size: 12.5px;
  color: var(--muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ph-pill {
  flex: 0 0 auto;
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid var(--line);
  color: var(--muted);
}
.ph-pill.needs {
  color: var(--ink);
  background: var(--accent, #34e5ff);
  border-color: transparent;
}
.ph-pill.working {
  color: var(--accent, #34e5ff);
  border-color: var(--accent, #34e5ff);
}
.ph-fab {
  position: fixed;
  right: 16px;
  bottom: calc(18px + env(safe-area-inset-bottom));
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 14px 18px;
  border-radius: 999px;
  border: 0;
  background: var(--accent, #34e5ff);
  color: var(--ink);
  font: inherit;
  font-weight: 700;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}
.ph-company {
  position: fixed;
  left: 16px;
  bottom: calc(26px + env(safe-area-inset-bottom));
  pointer-events: none;
}
.phone .chat {
  flex: 1;
  min-height: 0;
  padding: 0 12px calc(8px + env(safe-area-inset-bottom));
}
.phone .chat-scroll {
  padding: 10px 2px 8px;
}
/* One line beside the account button: no wrapping, no typing caret. */
.phone .pulse-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  letter-spacing: 0.06em;
}
.phone .pulse-line i {
  display: inline-block;
  margin-right: 6px;
  vertical-align: middle;
}
.phone .pulse-line::after {
  content: none;
}
/* The brand gives way first; the account button keeps its text until it must shrink too. */
.phone .ph-brand {
  flex: 1 1 0;
  min-width: 0;
  overflow: hidden;
}
.phone .ph-brand .wordmark {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.phone .ph-head > .account {
  flex: 0 1 auto;
  min-width: 0;
}
.phone .ph-head > .account > button {
  max-width: 100%;
}
/* team knowledge: the share sheet, file rows with Share, audiences */
.file-row {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
}
.file-row .file {
  flex: 1;
  min-width: 0;
}
.file-share {
  flex: none;
}
.share-sheet {
  width: min(520px, calc(100vw - 48px));
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px 22px;
}
.share-title {
  margin: 0;
  font-size: 18px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* The real terminal, shown on request, with the keys a screen may need. */
.phone .term-frame.ph-term {
  flex: 1;
  min-height: 0;
  margin: 0 12px;
  padding: 8px 4px 6px 8px;
}
.phone .ph-keys {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 8px 12px calc(10px + env(safe-area-inset-bottom));
}
.phone .ph-keys-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.phone .ph-keys-row .btn {
  flex: 0 0 auto;
}
.phone .btn.on {
  color: var(--cyan);
}
.phone .term-frame.ghost {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}
.phone .side-panel,
.phone .panel {
  width: auto;
  max-width: none;
  border-left: 0;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
}
.phone .account-pop {
  position: fixed;
  left: 8px;
  right: 8px;
  top: calc(60px + env(safe-area-inset-top));
  max-height: calc(100vh - 80px);
  overflow-y: auto;
}
.unpaired {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 14px;
  padding: 32px 24px;
}
html.offline .ph-head {
  box-shadow: inset 0 -2px 0 #ffc857;
}

.phone-access {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 8px 0;
  border-bottom: 1px solid var(--line);
}
.phone-qr {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}
.phone-qr img {
  border-radius: 8px;
  background: #fff;
  padding: 4px;
}
.phone-qr-side {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.share-aud {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.share-opt {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  cursor: pointer;
}
.share-opt.on {
  border-color: color-mix(in srgb, var(--cyan) 50%, var(--line));
}
.share-opt input {
  margin-top: 3px;
}
.share-opt > span {
  display: flex;
  flex-direction: column;
}
.share-class {
  align-self: flex-start;
}
.share-hint {
  margin: -6px 0 0;
}
.aud-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-top: 6px;
  border-top: 1px solid var(--line);
}
.aud-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13.5px;
}
.aud-table th {
  text-align: left;
  font-weight: 500;
  color: var(--muted);
  font-size: 12px;
  padding: 4px 6px;
}
.aud-table td {
  padding: 4px 6px;
  border-top: 1px solid var(--line);
}
.aud-table td:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
}
.pill.dim {
  opacity: 0.7;
}
/* ---------- 2026-10-28 UI pass: folds and the agent header menu ---------- */
.fold {
  margin-top: var(--sp-5);
}
.fold > summary {
  cursor: pointer;
  list-style: none;
  padding: var(--sp-2) 0;
}
.fold > summary::-webkit-details-marker {
  display: none;
}
.fold > summary::before {
  content: '\203A';
  display: inline-block;
  width: 1em;
  transition: transform 0.15s ease;
}
.fold[open] > summary::before {
  transform: rotate(90deg);
}
.menu {
  position: relative;
}
.menu > summary {
  list-style: none;
}
.menu > summary::-webkit-details-marker {
  display: none;
}
.menu-pop {
  position: absolute;
  right: 0;
  top: calc(100% + var(--sp-1));
  min-width: 220px;
  padding: var(--sp-1);
  z-index: 30;
  display: flex;
  flex-direction: column;
}
.menu-item {
  text-align: left;
  padding: var(--sp-2) var(--sp-3);
  border: 0;
  border-radius: var(--radius-sm);
  background: none;
  font-size: var(--fs-2);
}
.menu-item:hover {
  background: color-mix(in srgb, var(--fg) 8%, transparent);
}
.menu-item.danger {
  color: var(--bad);
}
.account-pop .usage-meter {
  margin: var(--sp-2) 0;
}
