@font-face {
  font-family: "Lexend";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/fonts/lexend-latin-ext-400-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "Lexend";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/fonts/lexend-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "Lexend";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/fonts/lexend-latin-ext-500-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "Lexend";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/fonts/lexend-latin-500-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "Lexend";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/fonts/lexend-latin-ext-600-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "Lexend";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/fonts/lexend-latin-600-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/fonts/open-sans-latin-ext-400-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/fonts/open-sans-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "Tinos";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/fonts/tinos-latin-ext-400-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "Tinos";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/fonts/tinos-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/fonts/jetbrains-mono-latin-ext-400-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/fonts/jetbrains-mono-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/atkinson-hyperlegible-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/atkinson-hyperlegible-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/atkinson-hyperlegible-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/atkinson-hyperlegible-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Atkinson Hyperlegible";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/atkinson-hyperlegible-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Atkinson Hyperlegible";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/atkinson-hyperlegible-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Comic Neue";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/comic-neue-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Comic Neue";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/comic-neue-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Comic Neue";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/comic-neue-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Courier Prime";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/courier-prime-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Courier Prime";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/courier-prime-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Courier Prime";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/courier-prime-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Courier Prime";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/courier-prime-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Courier Prime";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/courier-prime-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Courier Prime";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/courier-prime-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Crimson Pro";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/crimson-pro-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Crimson Pro";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/crimson-pro-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Crimson Pro";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/crimson-pro-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Crimson Pro";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/crimson-pro-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Crimson Pro";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/crimson-pro-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Crimson Pro";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/crimson-pro-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/eb-garamond-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/eb-garamond-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/eb-garamond-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/eb-garamond-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"EB Garamond";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/eb-garamond-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"EB Garamond";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/eb-garamond-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Figtree";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/figtree-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Figtree";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/figtree-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Figtree";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/figtree-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Figtree";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/figtree-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Figtree";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/figtree-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Figtree";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/figtree-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Fira Code";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/fira-code-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Fira Code";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/fira-code-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Fira Code";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/fira-code-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Fira Code";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/fira-code-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-mono-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/ibm-plex-mono-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/ibm-plex-mono-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-mono-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Mono";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-mono-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-sans-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/ibm-plex-sans-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/ibm-plex-sans-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-sans-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-sans-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/inter-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/inter-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/inter-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/inter-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/inter-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/inter-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/jetbrains-mono-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/jetbrains-mono-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"JetBrains Mono";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/jetbrains-mono-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"JetBrains Mono";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/jetbrains-mono-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lato";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/lato-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lato";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/lato-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lato";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/lato-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lato";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/lato-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lato";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/lato-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lato";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/lato-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lexend";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/lexend-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lexend";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/lexend-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Literata";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/literata-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Literata";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/literata-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Literata";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/literata-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Literata";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/literata-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Literata";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/literata-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Literata";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/literata-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lora";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/lora-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lora";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/lora-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lora";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/lora-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lora";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/lora-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lora";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/lora-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Lora";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/lora-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Merriweather";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/merriweather-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Merriweather";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/merriweather-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Merriweather";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/merriweather-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Merriweather";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/merriweather-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Merriweather";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/merriweather-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Merriweather";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/merriweather-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nunito";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/nunito-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/nunito-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nunito";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/nunito-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/nunito-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nunito";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/nunito-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Nunito";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/nunito-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/open-sans-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Open Sans";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/open-sans-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Open Sans";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/open-sans-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Open Sans";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/open-sans-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/roboto-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Roboto";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/roboto-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/roboto-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Roboto";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/roboto-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/roboto-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Roboto";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/roboto-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto Mono";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/roboto-mono-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Roboto Mono";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/roboto-mono-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto Mono";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/roboto-mono-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Roboto Mono";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/roboto-mono-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto Mono";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/roboto-mono-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Roboto Mono";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/roboto-mono-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Code Pro";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-code-pro-latin-ext-400-normal.woff2") format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Code Pro";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-code-pro-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Code Pro";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/source-code-pro-latin-ext-700-normal.woff2") format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Code Pro";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/source-code-pro-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Code Pro";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/source-code-pro-latin-ext-400-italic.woff2") format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Code Pro";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/source-code-pro-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-sans-3-latin-ext-400-normal.woff2") format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-sans-3-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/source-sans-3-latin-ext-700-normal.woff2") format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/source-sans-3-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/source-sans-3-latin-ext-400-italic.woff2") format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Sans 3";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/source-sans-3-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-serif-4-latin-ext-400-normal.woff2") format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-serif-4-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/source-serif-4-latin-ext-700-normal.woff2") format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/source-serif-4-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/source-serif-4-latin-ext-400-italic.woff2") format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/source-serif-4-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Tinos";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/tinos-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Tinos";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/tinos-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Tinos";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/tinos-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Tinos";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/tinos-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/work-sans-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/work-sans-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/work-sans-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/work-sans-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Work Sans";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/work-sans-latin-ext-400-italic.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Work Sans";font-style:italic;font-weight:400;font-display:swap;src:url("../fonts/work-sans-latin-400-italic.woff2") format("woff2");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}

body {
  --bg: #17151f;
  --panel: #1f1d30;
  --raised: #2a2840;
  --line: #36334f;
  --fg: #ecebf3;
  --muted: #a5a2bb;
  --accent: #fec72e;
  --accent-2: #ffab2f;
  --accent-text: #fec72e;
  --on-accent: #1f1d30;
  --danger: #ff6b71;
  --danger-tint: rgba(255, 107, 113, 0.14);
  --code-bg: #121019;
  --select: rgba(254, 199, 46, 0.28);
  --mark: rgba(254, 199, 46, 0.35);
  --mark-current: rgba(255, 171, 47, 0.55);
  --scrim: rgba(8, 7, 14, 0.6);
  --syn-kw: #ffab2f;
  --syn-str: #8fd3c8;
  --syn-num: #f29bb8;
  --syn-com: #7f7c98;
  --syn-fn: #fec72e;
  --syn-type: #a9b8ff;
  --syn-attr: #c9a7ff;
  --gh-kw: #ff7b72; --gh-title: #d2a8ff; --gh-const: #79c0ff; --gh-str: #a5d6ff; --gh-builtin: #ffa657;
  --gh-com: #8b949e; --gh-name: #7ee787; --gh-sub: #c9d1d9; --gh-section: #1f6feb; --gh-bullet: #f2cc60;
  --thumb: #46425f; --thumb-hover: #5a5578;
  --font-ui: "Lexend", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-code: "JetBrains Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;
  color-scheme: dark;
}
body { --pick: var(--raised); --pick-hover: color-mix(in srgb, var(--raised) 60%, transparent); }
body[data-ot-theme="oled"] { --pick: #1f1f21; --pick-hover: #111112; }
body { --cur-line: rgba(0, 0, 0, 0.3); }
body[data-ot-theme="light"] { --cur-line: rgba(31, 29, 48, 0.055); }
body[data-ot-theme="oled"] { --cur-line: rgba(255, 255, 255, 0.075); }
body[data-ot-theme="light"] {
  --bg: #ffffff; --panel: #f6f5f9; --raised: #ebe9f2; --line: #dcd9e6; --fg: #1f1d30; --muted: #5e5b76;
  --accent: #fec72e; --accent-2: #ffab2f; --accent-text: #8a5d00; --on-accent: #1f1d30;
  --danger: #c8333a; --danger-tint: rgba(200, 51, 58, 0.1); --code-bg: #f3f2f8; --select: rgba(254, 199, 46, 0.45); --mark: rgba(254, 199, 46, 0.55); --scrim: rgba(31, 29, 48, 0.45);
  --syn-kw: #b05a00; --syn-str: #11756a; --syn-num: #b02f68; --syn-com: #7a7790; --syn-fn: #835c00; --syn-type: #3a4ec2; --syn-attr: #7a3fc4;
  --gh-kw: #d73a49; --gh-title: #6f42c1; --gh-const: #005cc5; --gh-str: #032f62; --gh-builtin: #e36209;
  --gh-com: #6a737d; --gh-name: #22863a; --gh-sub: #24292e; --gh-section: #005cc5; --gh-bullet: #735c0f;
  --thumb: #c9c6d6; --thumb-hover: #aeaabf;
  color-scheme: light;
}
body[data-ot-theme="midnight"] {
  --bg: #1b1b1d; --panel: #232325; --raised: #2e2e31; --line: #3a3a3e; --fg: #ececee; --muted: #a4a4ab;
  --code-bg: #151517; --scrim: rgba(0, 0, 0, 0.62); --syn-com: #85858e;
  --thumb: #4a4a4f; --thumb-hover: #5e5e64;
  color-scheme: dark;
}
body[data-ot-theme="oled"] {
  --bg: #000000; --panel: #000000; --raised: #141414; --line: #262626; --fg: #e8e8ea; --muted: #8e8e96;
  --code-bg: #0a0a0a; --scrim: rgba(0, 0, 0, 0.75);
  --thumb: #2e2e2e; --thumb-hover: #444444;
  color-scheme: dark;
}

body[data-ot-accent="strawberry"] { --accent: #e82a30; --accent-2: #cf1f25; --accent-text: #ed5559; --on-accent: #ffffff; --select: rgba(232, 42, 48, 0.28); --mark: rgba(232, 42, 48, 0.35); --mark-current: rgba(232, 42, 48, 0.6); --syn-fn: #ed5559; --syn-kw: #ed5559; }
body[data-ot-theme="light"][data-ot-accent="strawberry"] { --accent-text: #da171e; --select: rgba(232, 42, 48, 0.3); --mark: rgba(232, 42, 48, 0.38); --syn-fn: #da171e; --syn-kw: #da171e; }
body[data-ot-accent="tangerine"] { --accent: #ff7916; --accent-2: #f46800; --accent-text: #ff7916; --on-accent: #1f1d30; --select: rgba(255, 121, 22, 0.28); --mark: rgba(255, 121, 22, 0.35); --mark-current: rgba(255, 121, 22, 0.6); --syn-fn: #ff7916; --syn-kw: #ff7916; }
body[data-ot-theme="light"][data-ot-accent="tangerine"] { --accent-text: #b74e00; --select: rgba(255, 121, 22, 0.3); --mark: rgba(255, 121, 22, 0.38); --syn-fn: #b74e00; --syn-kw: #b74e00; }
body[data-ot-accent="lime"] { --accent: #55b155; --accent-2: #499e49; --accent-text: #55b155; --on-accent: #1f1d30; --select: rgba(85, 177, 85, 0.28); --mark: rgba(85, 177, 85, 0.35); --mark-current: rgba(85, 177, 85, 0.6); --syn-fn: #55b155; --syn-kw: #55b155; }
body[data-ot-theme="light"][data-ot-accent="lime"] { --accent-text: #387a38; --select: rgba(85, 177, 85, 0.3); --mark: rgba(85, 177, 85, 0.38); --syn-fn: #387a38; --syn-kw: #387a38; }
body[data-ot-accent="blueberry"] { --accent: #5da8e4; --accent-2: #3c96de; --accent-text: #5da8e4; --on-accent: #1f1d30; --select: rgba(93, 168, 228, 0.28); --mark: rgba(93, 168, 228, 0.35); --mark-current: rgba(93, 168, 228, 0.6); --syn-fn: #5da8e4; --syn-kw: #5da8e4; }
body[data-ot-theme="light"][data-ot-accent="blueberry"] { --accent-text: #1e72b6; --select: rgba(93, 168, 228, 0.3); --mark: rgba(93, 168, 228, 0.38); --syn-fn: #1e72b6; --syn-kw: #1e72b6; }
body[data-ot-accent="grape"] { --accent: #ae5dce; --accent-2: #9c4cbd; --accent-text: #b46ad2; --on-accent: #ffffff; --select: rgba(174, 93, 206, 0.28); --mark: rgba(174, 93, 206, 0.35); --mark-current: rgba(174, 93, 206, 0.6); --syn-fn: #b46ad2; --syn-kw: #b46ad2; }
body[data-ot-accent="lillypilly"] { --accent: #ff5c95; --accent-2: #f2427f; --accent-text: #ff5c95; --on-accent: #1f1d30; --select: rgba(255, 92, 149, 0.28); --mark: rgba(255, 92, 149, 0.35); --mark-current: rgba(255, 92, 149, 0.6); --syn-fn: #ff5c95; --syn-kw: #ff5c95; }
body[data-ot-theme="light"][data-ot-accent="lillypilly"] { --accent-text: #cc2263; --select: rgba(255, 92, 149, 0.3); --mark: rgba(255, 92, 149, 0.38); --syn-fn: #cc2263; --syn-kw: #cc2263; }
body[data-ot-theme="light"][data-ot-accent="grape"] { --accent-text: #a041c6; --select: rgba(174, 93, 206, 0.3); --mark: rgba(174, 93, 206, 0.38); --syn-fn: #a041c6; --syn-kw: #a041c6; }

* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
[hidden] { display: none !important; }
* { scrollbar-color: var(--thumb) transparent; scrollbar-width: thin; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--thumb); border-radius: 999px; border: 2px solid transparent; background-clip: padding-box; }
::-webkit-scrollbar-thumb:hover { background: var(--thumb-hover); border: 2px solid transparent; background-clip: padding-box; }
::-webkit-scrollbar-corner { background: transparent; }
html, body { height: 100%; overscroll-behavior-y: none; }
:root { --sal: env(safe-area-inset-left, 0px); --sar: env(safe-area-inset-right, 0px); }
body { margin: 0; background: var(--bg); color: var(--fg); font-family: var(--font-ui); font-size: 15px; line-height: 1.5; overflow: hidden; }
button, input, textarea, select { font: inherit; color: inherit; }
form.nf { display: contents; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.note-list :focus-visible { outline-offset: -2px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.app {
  height: var(--app-h, 100%);
  display: grid;
  grid-template-columns: var(--side-w, 280px) minmax(0, 1fr);
  grid-template-rows: auto minmax(0, 1fr) auto;
  grid-template-areas: "top top" "side main" "status status";
}

.topbar {
  grid-area: top;
  display: flex; align-items: center; gap: 10px;
  padding: 8px calc(14px + var(--sar)) 8px calc(14px + var(--sal));
  background: var(--panel);
  border-bottom: 1px solid var(--line);
  min-width: 0;
}
.pixel-art { image-rendering: pixelated; image-rendering: crisp-edges; image-rendering: pixelated; }
.note-title {
  flex: 1; min-width: 0;
  padding: 6px 10px;
  background: transparent; border: 1px solid transparent; border-radius: 8px;
  font-weight: 500;
}
.note-title::placeholder { color: var(--muted); opacity: 1; }
.note-title:hover:not([readonly]) { border-color: var(--line); }
.note-title:focus:not([readonly]) { border-color: var(--accent); outline: none; background: var(--bg); }
.note-title.is-file-name { cursor: default; }
.top-actions { display: flex; align-items: center; gap: 6px; margin-left: auto; }

.icon-btn, .text-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  height: 34px; padding: 0 10px;
  background: transparent; border: 1px solid var(--line); border-radius: 8px;
  cursor: pointer; white-space: nowrap; font-size: 0.8125rem; font-weight: 500;
}
.icon-btn { width: 34px; padding: 0; border-color: transparent; }
.topbar > .icon-btn, .top-actions > * { flex-shrink: 0; }
.icon-btn svg, .text-btn svg { width: 17px; height: 17px; flex: none; }
.icon-btn:hover, .text-btn:hover { background: var(--raised); }
.icon-btn[aria-pressed="true"] { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }

.seg { display: inline-flex; padding: 2px; border: 1px solid var(--line); border-radius: 9px; }
.seg button { display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 10px; border: 0; border-radius: 7px; background: transparent; cursor: pointer; font-size: 0.8125rem; font-weight: 500; color: var(--muted); }
.seg button[aria-pressed="true"] { background: var(--accent); color: var(--on-accent); }
.seg.has-ind { position: relative; }
.seg.has-ind button { position: relative; z-index: 1; }
.seg.has-ind.seg-ready button[aria-pressed="true"] { background: transparent; }
.seg-ind { position: absolute; left: 0; top: 0; z-index: 0; width: 0; height: 0; border-radius: 7px; background: var(--accent); pointer-events: none; }
.seg.has-ind:not(.seg-ready) .seg-ind { visibility: hidden; }
body.anim .seg.has-ind button { transition: background-color 0.14s ease, color 0.16s ease; }
body.anim .seg.has-ind button[aria-pressed="true"] { transition: background-color 0.14s ease, color 0.18s ease 0.08s; }
.seg button:disabled { opacity: 0.4; cursor: not-allowed; }
.seg button svg { width: 15px; height: 15px; flex: none; }
.seg button:not([aria-pressed="true"]):not(:disabled):hover { background: var(--pick-hover); color: var(--fg); }
.seg.seg-fill { display: flex; width: 100%; margin: 2px 0 8px; }
#file-save-setting .seg-fill button { flex: 1 1 auto; }
.seg.seg-fill button { flex: 1 1 0; justify-content: center; min-width: 0; height: auto; min-height: 32px; padding: 4px 8px; line-height: 1.25; text-align: center; white-space: normal; }

.support {
  position: relative;
  display: inline-flex; align-items: center; justify-content: flex-start;
  width: 34px; height: 34px; padding: 0 0 0 7px; overflow: hidden;
  background: var(--accent); color: var(--on-accent);
  border: 1px solid var(--accent); border-radius: 8px;
  text-decoration: none; font-size: 0.8125rem; font-weight: 600;
  transition: width 0.2s ease;
}
.support svg { width: 18px; height: 18px; flex: none; }
.reconnect-btn { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
.reconnect-btn:hover { background: var(--accent-2); border-color: var(--accent-2); }
.reconnect-btn[hidden] { display: none; }
.support span { margin-left: 7px; opacity: 0; transition: opacity 0.15s ease; white-space: nowrap; }
.support:hover, .support:focus-visible { width: 98px; background: var(--accent-2); }
.support:hover span, .support:focus-visible span { opacity: 1; }

.side-resize { position: absolute; top: 0; bottom: 0; right: -4px; z-index: 6; width: 8px; cursor: col-resize; touch-action: none; }
.side-resize::after { content: ""; position: absolute; top: 0; bottom: 0; left: 3px; width: 2px; background: transparent; }
.side-resize:hover::after, .side-resize.is-dragging::after, .side-resize:focus-visible::after { background: var(--accent); }
.side-resize:focus-visible { outline: none; }
body.anim .side-resize::after { transition: background-color 0.15s ease; }
body.is-resizing, body.is-resizing * { cursor: col-resize !important; user-select: none !important; }
.sidebar {
  grid-area: side; position: relative;
  display: flex; flex-direction: column;
  min-height: 0;
  background: var(--panel);
  border-right: 1px solid var(--line);
}
.side-head { display: flex; flex-direction: column; gap: 8px; padding: 12px; }
.brand-row { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 2px 0 6px; }
.brand-logo { width: 116px; height: 48px; flex: none; }
.brand-sep { width: 1px; height: 36px; background: var(--line); flex: none; }
.brand-app { width: 48px; height: 48px; flex: none; }
body.no-logos .brand-row { display: none; }
.side-row { display: flex; gap: 6px; min-width: 0; }
.side-row > .new-split, .side-row > .search-wrap { flex: 1; min-width: 0; }
.new-split { display: flex; min-width: 0; }
.new-split .new-note { flex: 1; min-width: 0; border-radius: 9px 0 0 9px; }
.new-more {
  flex: none; width: 30px; height: 38px; padding: 0; border: 0; border-left: 1px solid rgba(31, 29, 48, 0.25); border-radius: 0 9px 9px 0;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--accent); color: var(--on-accent); cursor: pointer;
}
.new-more:hover, .new-more[aria-expanded="true"] { background: var(--accent-2); }
.new-more svg { width: 14px; height: 14px; }
.side-tools .text-btn.is-active { background: var(--accent); border-color: var(--accent); color: var(--on-accent); }
.side-tools .text-btn.is-active:hover { background: var(--accent-2); }
.side-tools .text-btn { flex: 1 1 0; min-width: 0; height: 34px; }
.side-tools .text-btn svg { width: 16px; height: 16px; flex: none; }
.new-note {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  height: 38px; border: 0; border-radius: 9px;
  background: var(--accent); color: var(--on-accent); font-weight: 600; cursor: pointer;
}
.new-note:hover { background: var(--accent-2); }
.new-note svg { width: 16px; height: 16px; }
.search-wrap { position: relative; display: flex; }
.search-wrap > svg { position: absolute; left: 11px; top: 50%; width: 16px; height: 16px; transform: translateY(-50%); color: var(--muted); pointer-events: none; }
.search {
  width: 100%; min-width: 0; height: 38px; padding: 0 10px 0 33px;
  background: transparent; border: 1px solid var(--line); border-radius: 9px; font-size: 0.875rem; cursor: pointer;
}
.search:hover { background: var(--raised); }
.search:focus { outline: none; border-color: var(--accent); background: transparent; cursor: text; }
.list-heading { margin: 0; padding: 0 20px 6px; font-size: 0.8125rem; font-weight: 600; color: var(--danger); }
.note-list { list-style: none; margin: 0; padding: 0 8px 8px; overflow-y: auto; flex: 1; min-height: 0; }
.note-item {
  position: relative; display: flex; flex-direction: column; gap: 2px; width: 100%;
  padding: 9px 10px; border: 0; border-radius: 8px;
  background: transparent; text-align: left; cursor: pointer;
  -webkit-touch-callout: none; -webkit-user-select: none; user-select: none;
}
.note-item:hover { background: var(--raised); }
@media (hover: none) { button, [role="button"], .seg, .tab { -webkit-touch-callout: none; -webkit-user-select: none; user-select: none; } }
.note-row, .folder-row { position: relative; }
.note-list .note-row:hover .note-item, .note-list .note-row:focus-within .note-item, .note-list .note-row.is-open .note-item { padding-right: 40px; }
.note-list .note-row.in-folder .note-item, .note-list .note-row.in-folder .folder-empty { padding-left: 30px; }
.is-trash .note-list .note-row .note-item { padding-right: 10px; }
.note-tools { position: absolute; top: 50%; right: 6px; transform: translateY(-50%); display: flex; gap: 2px; }
.row-btn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 28px; height: 28px; padding: 0; border: 0; border-radius: 7px;
  background: transparent; color: var(--muted); cursor: pointer; visibility: hidden;
}
.row-btn svg { width: 15px; height: 15px; }
.row-btn:hover { background: var(--line); color: var(--fg); }
.note-row:hover .row-btn, .note-row:focus-within .row-btn, .note-row.is-open .row-btn,
.folder-row:hover .row-btn, .folder-row:focus-within .row-btn, .folder-row.is-open .row-btn { visibility: visible; }
.row-btn[aria-expanded="true"] { background: var(--line); color: var(--fg); }
@media (hover: none) {
    .note-row:not(.is-open) .row-btn { visibility: hidden; }
  .note-list .note-row:not(.is-open) .note-item { padding-right: 10px; }
}
.example-star, .pin-mark { flex: none; display: inline-flex; align-items: center; }
.example-star svg { width: 14px; height: 14px; color: var(--accent-text); }
.pin-mark svg { width: 12px; height: 12px; color: var(--muted); }
.note-row.is-current .pin-mark svg { color: var(--accent-text); }
.sel-box {
  flex: none; display: inline-flex; align-items: center; justify-content: center;
  width: 16px; height: 16px; margin-right: 5px; border: 2px solid var(--muted); border-radius: 4px;
}
.note-row.is-selected .sel-box { background: var(--accent); border-color: var(--accent); }
.note-row.is-selected .sel-box::after { content: ""; width: 4px; height: 8px; margin-top: -2px; border: solid var(--on-accent); border-width: 0 2px 2px 0; transform: rotate(45deg); }
.note-row.is-selected .note-item { background: var(--select); }
.app.is-selecting .note-name { gap: 8px; }
.app.is-selecting .note-tools { display: none; }
.app.is-selecting .note-list .note-row .note-item { padding-right: 10px; }
.select-bar { display: flex; align-items: center; gap: 1px; margin: 0 12px 10px; min-height: 34px; padding: 0 2px 0 9px; border: 1px solid var(--accent); border-radius: 8px; }
.select-bar[hidden] { display: none; }
.select-count { flex: 1; min-width: 0; font-size: 0.8125rem; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.select-act { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 30px; padding: 0; border: 0; border-radius: 7px; background: transparent; color: var(--fg); cursor: pointer; }
.select-act svg { width: 17px; height: 17px; }
.select-act:hover, .select-act[aria-expanded="true"] { background: var(--raised); }
.select-act:disabled { opacity: 0.4; cursor: default; background: transparent; }
.select-act.danger { color: var(--danger); }
.select-act.danger:hover:not(:disabled) { background: var(--danger-tint); }
.select-act[hidden] { display: none; }
.select-x { background: var(--danger-tint); color: var(--danger); margin-left: 2px; }
.select-x:hover { background: var(--danger); color: #fff; }
.app.is-selecting .side-lane { display: none; }
#select-btn[aria-pressed="true"] { background: var(--accent); border-color: var(--accent); color: var(--on-accent); }
#sel-tag-pop, #sel-folder-pop { width: 260px; }
.dialog .menu-item.note-pin { margin-top: 8px; padding: 6px 0; }
.is-trash .note-tools { display: none; }
.folder-item {
  display: flex; align-items: center; gap: 7px; width: 100%;
  padding: 8px 40px 8px 8px; border: 0; border-radius: 8px;
  background: transparent; text-align: left; cursor: pointer; font-size: 0.875rem; font-weight: 600;
}
.folder-item:hover { background: var(--raised); }
.folder-item svg { width: 15px; height: 15px; flex: none; color: var(--muted); }
.folder-item .chev { transition: transform 0.15s; }
.folder-item[aria-expanded="true"] .chev { transform: rotate(90deg); }
.folder-item .folder-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.folder-item .count { margin-left: auto; font-weight: 400; font-size: 0.75rem; color: var(--muted); font-variant-numeric: tabular-nums; }
.folder-empty { margin: 0; padding: 4px 10px 8px; border-radius: 8px; font-size: 0.75rem; color: var(--muted); }
.folder-row.is-drop .folder-item, .note-row.is-drop .folder-empty, .note-list.is-drop-root { background: var(--select); }
.note-item::after {
  content: ""; position: absolute; left: 10px; right: 10px; bottom: 3px; height: 2px; border-radius: 2px;
  background: var(--accent); transform: scaleX(0); transform-origin: left center; opacity: 0;
}
.note-item.is-holding::after { opacity: 1; transform: scaleX(1); transition: transform var(--hold, 400ms) linear, opacity 0.05s linear; }
.note-item.is-dragging { opacity: 0.45; }
.drag-ghost {
  position: fixed; left: 0; top: 0; z-index: 60; pointer-events: none; will-change: transform;
  max-width: 220px; padding: 7px 12px; border-radius: 9px;
  background: var(--accent); color: var(--on-accent); font-size: 0.8125rem; font-weight: 600;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
body.is-dragging-note, body.is-dragging-note * { cursor: grabbing !important; }
.note-item[aria-current="true"] { background: var(--raised); }
.note-name { display: flex; align-items: center; gap: 6px; font-size: 0.875rem; font-weight: 500; min-width: 0; }
.note-name span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.note-name .untitled { color: var(--muted); }
.note-name .ext { flex: none; margin-left: -6px; color: var(--muted); font-weight: 400; overflow: visible; }
.app.is-compact .note-name .ext { margin-left: 0; }
.note-name .ext + .tag { margin-left: 2px; }
.app.is-compact .note-item { flex-direction: row; align-items: center; padding: 6px 10px; }
.app.is-compact .note-meta { display: none; }
.app.is-compact .note-name { gap: 0; }
.app.is-compact .note-name .tag { margin-left: 8px; }
.title-ext { flex: none; margin-left: -12px; color: var(--muted); font-weight: 500; white-space: nowrap; }
.note-title.has-ext { padding-right: 1px; }
@supports (field-sizing: content) { .note-title.has-ext, .pip-head .note-title.has-ext, .topbar .note-title.has-tags { field-sizing: content; flex: 0 1 auto; width: auto; } }
.topbar .note-title.has-tags { flex-shrink: 0; max-width: 45%; }
.note-tags { display: flex; align-items: center; gap: 6px; flex: 0 1 auto; min-width: 0; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; overscroll-behavior-x: contain; }
.note-tags::-webkit-scrollbar { display: none; }
.note-tags.more-right, .side-scroll.more-right { -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent); }
.note-tags.more-left, .side-scroll.more-left { -webkit-mask-image: linear-gradient(to right, transparent, #000 28px); mask-image: linear-gradient(to right, transparent, #000 28px); }
.note-tags.more-left.more-right, .side-scroll.more-left.more-right { -webkit-mask-image: linear-gradient(to right, transparent, #000 28px, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(to right, transparent, #000 28px, #000 calc(100% - 28px), transparent); }
.note-tags[hidden] { display: none; }
.note-tag { flex: none; max-width: 14em; padding: 2px 9px; border: 1px solid var(--line); border-radius: 999px; background: var(--raised); color: var(--muted); font: inherit; font-size: 0.75rem; line-height: 1.5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: pointer; }
.note-tag:hover { color: var(--fg); }
.note-tag[aria-pressed="true"] { background: var(--accent); border-color: var(--accent); color: var(--on-accent); }
@media (max-width: 820px), (max-height: 500px) and (pointer: coarse) {
  .topbar.has-tags { flex-wrap: wrap; row-gap: 6px; }
  .topbar.has-tags .note-tags { order: 4; flex: 1 0 100%; overflow-x: auto; scrollbar-width: none; }
  .topbar.has-tags .note-tags::-webkit-scrollbar { display: none; }
    .topbar .note-title.has-tags { flex-shrink: 1; max-width: none; }
  .app.is-focus .topbar.has-tags { flex-wrap: nowrap; }
}
.note-meta { font-size: 0.75rem; color: var(--muted); font-variant-numeric: tabular-nums; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tag { flex: none; padding: 0 6px; border: 1px solid var(--line); border-radius: 999px; font-size: 0.6875rem; font-style: normal; color: var(--muted); }
.empty-list { padding: 12px; font-size: 0.8125rem; color: var(--muted); }

.ad-slot {
  margin: 0 12px 10px; min-height: 110px; padding: 10px;
  display: grid; place-items: center;
  border: 1px dashed var(--line); border-radius: 10px;
  font-size: 0.75rem; color: var(--muted); text-align: center;
}
.side-lane { display: flex; gap: 4px; margin: 0 8px 10px; }
.side-lane .text-btn { flex: 1 1 0; min-width: 0; padding: 0 7px; gap: 5px; }
.side-row.is-icons .text-btn > span, .side-lane.is-icons .text-btn > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.side-lane .text-btn svg { width: 16px; height: 16px; flex: none; }
.trash-toggle { color: var(--danger); }
.trash-toggle:hover { background: var(--danger-tint); }
.is-trash .trash-toggle { color: var(--fg); }
.is-trash .trash-toggle:hover { background: var(--raised); }
.side-foot { display: flex; gap: 6px; padding: 10px 8px 12px; border-top: 1px solid var(--line); }
.side-foot #settings-btn { flex: 1 1 auto; }
.side-foot .text-btn svg { width: 16px; height: 16px; }
.text-btn.danger { color: var(--danger); }
.text-btn.danger:hover { background: var(--danger-tint); }
.is-trash .ad-slot { display: none; }

.workspace { grid-area: main; display: flex; flex-direction: column; min-width: 0; min-height: 0; }
@media (display-mode: window-controls-overlay) {
  .topbar {
    padding-left: max(calc(14px + var(--sal)), calc(env(titlebar-area-x, 0px) + 10px));
    padding-right: max(calc(14px + var(--sar)), calc(100vw - env(titlebar-area-x, 0px) - env(titlebar-area-width, 100vw) + 10px));
    -webkit-app-region: drag; app-region: drag;
  }
  .topbar button, .topbar input, .topbar a, .topbar select, .topbar .seg, .topbar .note-tags, .topbar [role="button"] { -webkit-app-region: no-drag; app-region: no-drag; }
    .toasts .toast, .scrim, .menu-pop, .ctx-pop, .more-panel, .timer-pop, .fmt-bar { -webkit-app-region: no-drag; app-region: no-drag; }
  body:has(.scrim:not([hidden])) .topbar { -webkit-app-region: no-drag; app-region: no-drag; }
    .topbar .note-title { flex: 0 1 auto; field-sizing: content; min-width: 10ch; max-width: 45%; }
    .support:hover, .support:focus-visible { width: 34px; }
  .support span { display: none; }
    @media (max-width: 820px) {
    .sidebar { top: calc(env(titlebar-area-y, 0px) + env(titlebar-area-height, 0px)); }
  }
}
.topbar.is-stacked { flex-wrap: wrap; row-gap: 8px; }
.topbar.is-stacked .top-actions { order: 5; flex-basis: 100%; justify-content: center; margin-left: 0; }
.topbar.is-stacked .note-title { max-width: none; }
.topbar.is-tight .top-actions .seg button span { display: none; }
.topbar.is-tight .top-actions .seg button { padding: 0 9px; }
.tab-strip { display: flex; align-items: stretch; gap: 2px; min-width: 0; height: 36px; padding: 4px calc(8px + var(--sar)) 0 calc(8px + var(--sal)); background: var(--panel); box-shadow: inset 0 -1px var(--line); overflow-x: auto; overflow-y: hidden; scrollbar-width: none; }
.tab-strip::-webkit-scrollbar { display: none; }
.note-tab { position: relative; flex: 0 1 190px; display: inline-flex; align-items: center; gap: 6px; min-width: 96px; padding: 0 6px 0 12px; border: 0; border-radius: 8px 8px 0 0; background: transparent; color: var(--muted); font: inherit; font-size: 0.8125rem; cursor: pointer; }
.note-tab:hover { background: var(--pick-hover); color: var(--fg); }
.note-tab[aria-selected="true"] { background: var(--bg); color: var(--fg); }
.note-tab .tab-name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: left; }
.note-tab .tab-name.untitled { font-style: italic; }
.note-tab .tab-ext { color: var(--muted); }
.tab-x { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; padding: 0; border: 0; border-radius: 5px; background: none; color: var(--muted); opacity: 0; cursor: pointer; }
.tab-x svg { width: 11px; height: 11px; }
.note-tab:hover .tab-x, .note-tab[aria-selected="true"] .tab-x, .tab-x:focus-visible { opacity: 1; }
.tab-x:hover { background: var(--raised); color: var(--fg); }
.tab-new { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 30px; margin: 2px 0 4px; padding: 0; border: 0; border-radius: 7px; background: none; color: var(--muted); cursor: pointer; }
.tab-new:hover { background: var(--pick-hover); color: var(--fg); }
.tab-new svg { width: 16px; height: 16px; }
.app.is-focus .tab-strip { display: none; }
.toolbar { display: flex; align-items: center; gap: 6px; padding: 6px calc(10px + var(--sar)) 6px calc(10px + var(--sal)); border-bottom: 1px solid var(--line); background: var(--bg); min-width: 0; }
.lang-btn {
  flex: none; display: inline-flex; align-items: center; gap: 6px; min-width: 0; max-width: 46vw;
  height: 30px; padding: 0 10px; color: var(--fg);
  background: var(--panel); border: 1px solid var(--line); border-radius: 7px;
  font-size: 0.8125rem; cursor: pointer;
}
.lang-btn svg { width: 15px; height: 15px; flex: none; color: var(--accent-text); }
.lang-btn:hover:not(:disabled) { background: var(--raised); }
.lang-btn:disabled { opacity: 0.5; cursor: default; }
.lang-btn-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lang-btn.np-lang-btn { display: flex; width: 100%; height: 36px; background: var(--bg); border-radius: 8px; font-size: 0.875rem; }
.lang-btn.np-lang-btn:focus-visible { outline: none; border-color: var(--accent); }
.select-wrap { position: relative; display: inline-flex; flex: none; min-width: 0; }
.select-wrap::after {
  content: ""; position: absolute; top: 50%; right: 9px; width: 11px; height: 11px; margin-top: -5.5px;
  background: var(--muted); pointer-events: none;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.select-wrap.block { display: flex; width: 100%; }
.menu-select:hover { background-color: var(--raised); }
.select-wrap:hover::after { background: var(--fg); }
@supports (appearance: base-select) {
  @media (hover: hover) and (pointer: fine) {
    select.menu-select, select.menu-select::picker(select) { appearance: base-select; }
    select.menu-select { color: var(--fg); font-family: inherit; align-items: center; }
    select.menu-select::picker-icon, select.menu-select option::checkmark { display: none; }
    select.menu-select::picker(select) {
      margin: 4px 0; padding: 4px; max-height: min(60vh, 420px);
      border: 1px solid var(--line); border-radius: 10px; background: var(--panel); color: var(--fg);
      box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4); scrollbar-width: thin;
    }
    select.menu-select option { min-height: 0; padding: 6px 10px; border-radius: 6px; font-size: 0.8125rem; cursor: pointer; }
    select.menu-select option:hover, select.menu-select option:focus-visible { background: var(--raised); outline: none; }
    select.menu-select option:checked { background: var(--accent); color: var(--on-accent); font-weight: 600; }
    select.menu-select option:checked:hover { background: var(--accent-2); }
    body.anim select.menu-select::picker(select) { opacity: 0; transform: translateY(-4px); transition: opacity 0.13s ease, transform 0.15s cubic-bezier(0.2, 0.8, 0.3, 1), display 0.13s allow-discrete, overlay 0.13s allow-discrete; }
    body.anim select.menu-select:open::picker(select) { opacity: 1; transform: none; }
    @starting-style { body.anim select.menu-select:open::picker(select) { opacity: 0; transform: translateY(-4px); } }
  }
}
.md-tools {
  flex: 1; min-width: 0;
  display: flex; align-items: center; gap: 2px;
  overflow: hidden;
}
.md-tools button {
  flex: none; height: 30px; min-width: 30px; padding: 0 7px;
  border: 0; border-radius: 6px; background: transparent; cursor: pointer;
  font-family: var(--font-code); font-size: 0.8125rem; color: var(--muted);
}
.md-tools button:hover { background: var(--raised); color: var(--fg); }
.md-tools button svg, .more-panel button svg { width: 18px; height: 18px; display: block; margin: auto; }
.md-tools button .md-num, .more-panel button .md-num { fill: currentColor; stroke: none; font-family: var(--font-ui); font-size: 10px; font-weight: 700; }
.md-tools button .md-ink, .more-panel button .md-ink { stroke: var(--accent); }
.md-tools .md-heading[aria-expanded="true"] { background: var(--raised); color: var(--fg); }
.more-panel.heading-panel { flex-direction: column; flex-wrap: nowrap; width: 210px; z-index: 31; }
.more-panel.heading-panel button { display: flex; align-items: center; width: 100%; height: auto; min-height: 34px; padding: 4px 10px; font-family: var(--font-ui); color: var(--fg); text-align: left; }
.more-panel.heading-panel button:hover, .more-panel.heading-panel button:focus-visible { background: var(--raised); outline: none; }
.more-panel.heading-panel button[aria-checked="true"] { background: var(--accent); color: var(--on-accent); }
.more-panel.heading-panel button[aria-checked="true"]:hover, .more-panel.heading-panel button[aria-checked="true"]:focus-visible { background: var(--accent-2); }
.more-panel.heading-panel button[aria-checked="true"] .hp { color: inherit; }
.heading-panel .hp { font-weight: 700; line-height: 1.25; }
.heading-panel .hp-0 { font-weight: 400; font-size: 0.875rem; }
.heading-panel .hp-1 { font-size: 1.375rem; }
.heading-panel .hp-2 { font-size: 1.1875rem; }
.heading-panel .hp-3 { font-size: 1.0625rem; }
.heading-panel .hp-4 { font-size: 0.9375rem; }
.heading-panel .hp-5 { font-size: 0.875rem; }
.heading-panel .hp-6 { font-size: 0.8125rem; color: var(--muted); }
.md-tools .sep { flex: none; width: 1px; height: 18px; margin: 0 5px; background: var(--line); }
.more-wrap { position: relative; flex: none; }
.more-btn { color: var(--muted); }
.more-btn[aria-expanded="true"] { background: var(--raised); color: var(--fg); }
.more-panel {
  position: fixed; top: 0; left: 0; z-index: 15;
  display: flex; flex-wrap: wrap; gap: 2px;
  width: max-content; max-width: min(300px, calc(100vw - 32px));
  padding: 6px; border-radius: 10px;
  background: var(--panel); border: 1px solid var(--line);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.35);
}
.more-panel button {
  height: 32px; min-width: 34px; padding: 0 8px;
  border: 0; border-radius: 6px; background: transparent; cursor: pointer;
  font-family: var(--font-code); font-size: 0.8125rem; color: var(--muted);
}
.more-panel button:hover { background: var(--raised); color: var(--fg); }
.more-sep { flex: 0 0 100%; height: 1px; margin: 4px 2px; background: var(--line); }
.toolbar-gap { flex: 1; }
.note-actions { display: flex; gap: 4px; flex: none; }
.actions-btn { color: var(--fg); }
.actions-btn[aria-expanded="true"] { background: var(--raised); }
.menu-item svg { width: 17px; height: 17px; flex: none; }
.menu-item .font-icon { width: 17px; text-align: center; flex: none; }
.menu-item.danger { color: var(--danger); }
.menu-item.danger:hover { background: var(--danger-tint); }
.menu-item.is-running svg, .menu-item.is-set .font-icon { color: var(--accent-text); }
.menu-kbd { margin-left: auto; padding-left: 16px; font-size: 0.75rem; color: var(--muted); white-space: nowrap; }
@media (hover: none) { .menu-kbd { display: none; } }
#actions-pop { min-width: 240px; }
.find-bar { display: flex; flex-direction: column; gap: 6px; padding: 8px calc(10px + var(--sar)) 8px calc(10px + var(--sal)); border-bottom: 1px solid var(--line); background: var(--panel); }
.find-row { display: flex; align-items: center; gap: 6px; min-width: 0; }
.find-input {
  flex: 1; min-width: 0; height: 32px; padding: 0 10px;
  background: var(--bg); border: 1px solid var(--line); border-radius: 8px; font-size: 0.875rem;
}
.find-input:focus { outline: none; border-color: var(--accent); }
.find-count { flex: none; min-width: 68px; font-size: 0.75rem; color: var(--muted); font-variant-numeric: tabular-nums; text-align: right; }
.find-count.is-none { color: var(--danger); }
.find-btn {
  flex: none; display: inline-flex; align-items: center; justify-content: center;
  height: 32px; min-width: 32px; padding: 0 8px; border: 1px solid transparent; border-radius: 8px;
  background: transparent; cursor: pointer; font-size: 0.8125rem; color: var(--fg);
}
.find-btn svg { width: 16px; height: 16px; }
.find-btn:hover { background: var(--raised); }
.find-btn[aria-pressed="true"] { background: var(--accent); color: var(--on-accent); }
.find-btn.text { border-color: var(--line); }
.find-btn:disabled { opacity: 0.45; cursor: not-allowed; }
@media (max-width: 520px) { .find-btn.text { padding: 0 6px; font-size: 0.75rem; } .find-count { min-width: 0; } }
.under-layer { color: transparent; pointer-events: none; background: transparent; }
.editor-wrap.is-typewriter { --pad-bottom: 60vh; }
.under-layer mark { color: transparent; background: var(--mark); border-radius: 2px; }
.under-layer mark.is-current { background: var(--mark-current); box-shadow: 0 0 0 1px var(--accent-2); }
::highlight(ot-find) { background-color: var(--mark); color: inherit; }
::highlight(ot-find-cur) { background-color: var(--mark-current); color: inherit; }
.under-layer .ln { position: relative; min-height: 1.7em; }
.under-layer { counter-reset: ln; }
.under-layer .ln { counter-increment: ln; }
.under-layer .ln::before { content: counter(ln); position: absolute; top: 0; right: calc(100% + 14px); white-space: nowrap; color: var(--muted); opacity: 0.75; }
.under-layer.no-nums .ln::before { content: none; }
.under-layer .ln.is-cur::after { content: ""; position: absolute; top: 0; bottom: 0; left: -100vw; right: -100vw; z-index: -1; background: var(--cur-line); }
.under-layer .ln.is-cur::before { color: var(--fg); opacity: 1; }
.tool-icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 32px; height: 30px; border: 0; border-radius: 7px; background: transparent; cursor: pointer;
}
.tool-icon svg { width: 17px; height: 17px; }
.tool-icon:hover { background: var(--raised); }
.tool-icon.copy { color: var(--fg); }
.tool-icon.delete { color: var(--danger); }
.tool-icon.delete:hover { background: var(--danger-tint); }

.trash-banner {
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
  padding: 8px calc(14px + var(--sar)) 8px calc(14px + var(--sal)); background: var(--danger-tint); color: var(--fg); font-size: 0.8125rem;
  border-bottom: 1px solid var(--line);
}
.trash-banner p { margin: 0; flex: 1; min-width: 200px; }
.temp-banner { background: var(--raised); }
.trash-banner .text-btn { height: 30px; }
.restore-btn { background: var(--accent); color: var(--on-accent); border-color: var(--accent); font-weight: 600; }
.restore-btn:hover { background: var(--accent-2); }
.review-spot { padding: 12px 0; border-top: 1px solid var(--line); }
.review-spot:first-child { border-top: 0; padding-top: 0; }
.review-label { margin: 0 0 4px; font-size: 0.75rem; font-weight: 600; color: var(--muted); }
.review-text { margin: 0 0 10px; padding: 8px 10px; max-height: 9.5em; overflow: auto; border-radius: 8px; background: var(--raised); font-family: var(--font-code); font-size: 0.8125rem; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; }
.review-text mark { padding: 0 2px; border-radius: 3px; background: var(--accent); color: var(--on-accent); }
.review-text mark.is-empty { background: transparent; color: var(--muted); font-family: inherit; font-style: italic; }
.review-spot .menu-note { margin: 0; }

.code-keys { flex: 1; min-width: 0; display: flex; align-items: center; gap: 2px; }
.md-tools, .code-keys { position: relative; }
.code-keys[hidden] { display: none; }
.code-keys.is-plain button:not([data-key="tab"]):not([data-key="untab"]):not([data-hist]), .code-keys.is-plain .sep:not(.hist-sep) { display: none; }
.md-tools button:disabled, .more-panel button:disabled, .code-keys button:disabled { opacity: 0.35; cursor: default; background: transparent; }
.code-keys.is-plain button { flex: 0 0 44px; }
.code-keys button {
  flex: 1 1 0; min-width: 0; height: 30px; padding: 0;
  border: 0; border-radius: 6px; background: transparent; cursor: pointer;
  font-family: var(--font-code); font-size: 0.9375rem; color: var(--fg);
}
.code-keys button:hover { background: var(--raised); }
.code-keys button svg { width: 18px; height: 18px; display: block; margin: auto; color: var(--muted); }
.code-keys .sep { flex: none; width: 1px; height: 18px; margin: 0 3px; background: var(--line); }
.toolbar .code-keys { overflow: hidden; }
.toolbar .code-keys button { flex: 0 1 34px; min-width: 24px; }
.pip-bar .md-tools, .pip-bar .code-keys { flex: 1; min-width: 0; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; overscroll-behavior: none; }
.pip-bar .md-tools::-webkit-scrollbar, .pip-bar .code-keys::-webkit-scrollbar { display: none; }
.pip-bar .code-keys button { flex: 0 0 34px; }

.panes { position: relative; flex: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); min-height: 0; }
.app[data-view="write"] .panes, .app[data-view="preview"] .panes, .app[data-view="read"] .panes { grid-template-columns: minmax(0, 1fr); }
.app[data-view="write"] .preview { display: none; }
.app[data-view="preview"] .editor-wrap, .app[data-view="read"] .editor-wrap { display: none; }

.editor-wrap { --pad-x: 26px; --pad-top: 22px; position: relative; min-width: 0; min-height: 0; overflow: hidden; background: var(--bg); }
.editor-scroll { position: absolute; inset: 0; overflow-x: hidden; overflow-y: auto; scrollbar-gutter: stable; overscroll-behavior: contain; }
.editor-stack { position: relative; display: grid; min-height: 100%; }
.editor, .code-layer, .under-layer, .editor-mirror {
  box-sizing: border-box; margin: 0; min-width: 0;
  padding: var(--pad-top) calc(var(--pad-x) + var(--sar)) var(--pad-bottom, 40vh) calc(var(--pad-x) + var(--gutter, 0px) + var(--sal));
  font-family: var(--note-font, var(--font-code)); font-size: calc(14.5px * var(--ts, 1)); line-height: 1.7; tab-size: var(--tab, 4); letter-spacing: normal;
    font-variant-ligatures: none;
  white-space: pre-wrap; overflow-wrap: anywhere; word-break: normal;
  overflow: hidden;
  border: 0;
}
.code-layer, .under-layer { grid-area: 1 / 1; position: relative; z-index: 0; }
.editor-mirror { position: absolute; top: 0; left: 0; right: 0; z-index: -1; visibility: hidden; pointer-events: none; }
.code-layer { color: var(--fg); pointer-events: none; background: transparent; }
.code-layer code { font: inherit; background: none; padding: 0; }
.code-chunk { display: block; }
.editor {
  position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; resize: none; outline: none;
  color: transparent; background: transparent; caret-color: var(--accent);
}
.editor-wrap.is-plain .editor-scroll { overflow: hidden; }
.editor-wrap.is-plain .editor { overflow-y: auto; color: var(--fg); }
.editor-wrap.is-plain .under-layer { position: absolute; inset: 0; }
.editor-wrap.is-plain .under-layer, .editor-wrap.is-plain .editor-mirror { overflow-y: scroll; }
.editor::selection { color: transparent; background: var(--select); }
body[data-ot-theme="light"] .editor:not(.is-edit-locked), body[data-ot-theme="light"] .clock-field { caret-color: var(--fg); }
.editor::placeholder { color: var(--muted); }
.ac-ghost { position: absolute; z-index: 0; margin: 0; padding: 0 2px 0 0; font-family: var(--note-font, var(--font-code)); font-size: calc(14.5px * var(--ts, 1)); line-height: 1.7; tab-size: var(--tab, 4); letter-spacing: normal; white-space: pre; pointer-events: none; color: var(--fg); }
.ac-ghost.has-tail { background: var(--bg); }
.ac-ghost .ac-rest { color: var(--muted); opacity: 0.75; }
.ac-ghost[hidden] { display: none; }
.suggest-chip { order: -1; flex: 1 0 100%; min-width: 0; height: 34px; margin: 2px 0; padding: 0 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--raised); color: var(--fg); font-family: var(--font-code); font-size: 0.875rem; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.md-bottom.has-chip { flex-wrap: wrap; }
.suggest-chip[hidden] { display: none; }
.live-host { grid-area: 1 / 1; min-width: 0; }
.live-host[hidden] { display: none; }
.editor-wrap.is-live .code-layer, .editor-wrap.is-live .under-layer { display: none; }
.editor-wrap.is-live .editor { visibility: hidden; pointer-events: none; }
.editor-wrap.is-live-wait .editor-stack { visibility: hidden; }
.live-host .cm-editor { min-height: 100%; background: transparent; color: var(--fg); font-family: var(--note-font, var(--font-ui)); font-size: calc(15px * var(--ts, 1)); }
.live-host .cm-editor.cm-focused { outline: none; }
.live-host .cm-scroller { overflow: visible; font-family: inherit; line-height: 1.7; }
.live-host .cm-content { box-sizing: border-box; padding: var(--pad-top) calc(var(--pad-x) + var(--sar)) var(--pad-bottom, 40vh) calc(var(--pad-x) + var(--sal)); caret-color: var(--accent); }
.live-host .cm-content, .ac-ghost { font-variant-ligatures: none; }
.live-host .cm-line { padding: 0; }
.live-host .cm-content ::selection { background: var(--select); }
.live-host .cm-placeholder { color: var(--muted); }
body[data-ot-theme="light"] .live-host .cm-content:not(.is-edit-locked) { caret-color: var(--fg); }
.live-host .lv-h { position: relative; font-weight: 600; line-height: 1.35; }
.live-host .lv-hfold { position: absolute; left: calc(-1 * min(24px, var(--pad-x))); top: calc(var(--hf-top, 0em) + 0.675em); transform: translateY(-50%); display: inline-flex; align-items: center; justify-content: center; width: min(20px, var(--pad-x)); height: 20px; padding: 0; border: 0; border-radius: 5px; background: none; color: var(--muted); cursor: pointer; opacity: 0; font-size: 15px; line-height: 1; }
.live-host .lv-hfold svg { width: 14px; height: 14px; transition: transform 0.15s ease; }
.live-host .lv-h .lv-hfold { font-size: inherit; }
.live-host .lv-h2 .lv-hfold { --hf-top: 0.3em; }
.live-host .lv-h3 .lv-hfold { --hf-top: 0.2em; }
.live-host .lv-h4 .lv-hfold { --hf-top: 0.15em; }
.live-host .lv-hfold:hover { background: var(--raised); color: var(--fg); }
.live-host .lv-hfold.is-folded svg { transform: rotate(-90deg); }
.live-host .lv-h:hover .lv-hfold, .live-host .lv-hfold:focus-visible, .live-host .lv-hfold.is-folded { opacity: 1; }
@media (hover: none) { .live-host .lv-hfold { opacity: 0.6; } }
body.no-anim .live-host .lv-hfold svg { transition: none; }
.live-host .lv-folded { margin-left: 8px; padding: 0 7px; border: 0; border-radius: 6px; background: var(--raised); color: var(--muted); font: inherit; font-size: 0.75em; font-weight: 600; line-height: 1.5; vertical-align: middle; cursor: pointer; }
.live-host .lv-folded:hover { color: var(--fg); }
.live-host .lv-h1 { font-size: 1.9em; padding-bottom: 0.15em; }
.live-host .lv-h2 { font-size: 1.6em; padding-top: 0.3em; }
.live-host .lv-h3 { font-size: 1.35em; padding-top: 0.2em; }
.live-host .lv-h4 { font-size: 1.2em; padding-top: 0.15em; }
.live-host .lv-h5 { font-size: 1.08em; }
.live-host .lv-h6 { font-size: 1em; color: var(--muted); }
.live-host .lv-strong { font-weight: 700; }
.live-host .lv-em { font-style: italic; }
.live-host .lv-strike { text-decoration: line-through; }
.live-host .lv-mark { background: var(--mark); border-radius: 3px; }
.live-host .lv-sub { vertical-align: sub; font-size: 0.8em; }
.live-host .lv-sup { vertical-align: super; font-size: 0.8em; }
.live-host .lv-code { font-family: var(--font-code); font-size: 0.85em; padding: 0.1em 0.3em; border-radius: 5px; background: var(--raised); }
.live-host .lv-link { color: var(--accent-text); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }
.live-host .lv-sym, .live-host .lv-info, .live-host .lv-num { color: var(--muted); }
.live-host .lv-sym { font-weight: 400; font-style: normal; text-decoration: none; }
.live-host .lv-info { font-family: var(--font-code); font-size: 0.8em; }
.live-host .lv-bullet { display: inline-block; min-width: 0.6em; color: var(--muted); }
.live-host .lv-box { width: 16px; height: 16px; margin: 0 8px 0 0; vertical-align: -2px; accent-color: var(--accent); cursor: pointer; }
.live-host .lv-done { color: var(--muted); text-decoration: line-through; }
.live-host .lv-quote { padding-left: 14px; border-left: 3px solid var(--accent); background: var(--raised); }
.live-host .lv-pre { padding-inline: 14px; font-family: var(--font-code); font-size: 0.875em; background: var(--code-bg); color: var(--gh-sub); }
.live-host .lv-pre-top { padding-top: 6px; border-radius: 10px 10px 0 0; }
.live-host .lv-pre-end { padding-bottom: 6px; border-radius: 0 0 10px 10px; }
.live-host .lv-pre-top.lv-pre-end { border-radius: 10px; }
.live-host .lv-table { font-family: var(--font-code); font-size: 0.875em; }
.live-host .lv-tablew .is-editing { background: color-mix(in srgb, var(--accent) 14%, transparent); outline: none; cursor: text; white-space: pre-wrap; }
.live-host .lv-tablew { padding: 4px 4px 6px; margin: 0 -4px; overflow-x: auto; cursor: text; line-height: 1.5; white-space: normal; word-break: normal; overflow-wrap: normal; }
.live-host .lv-tablew table { border-collapse: collapse; }
.live-host .lv-tablew :is(td, th):not(.is-editing)::selection, .live-host .lv-tablew :is(td, th):not(.is-editing) *::selection { background: transparent; }
.live-host .lv-tablew.is-picked table, .live-host .lv-tablew.is-selected table { background: color-mix(in srgb, var(--accent) 14%, transparent); outline: 2px solid var(--accent); outline-offset: 1px; border-radius: 2px; }
.live-host .lv-tablew th, .live-host .lv-tablew td { border: 1px solid var(--line); padding: 6px 10px; text-align: left; height: calc(1.5em + 12px); min-width: 3em; }
.live-host .lv-tablew th { background: var(--raised); font-weight: 600; }
.live-host .lv-tablew code { font-family: var(--font-code); font-size: 0.85em; padding: 0.1em 0.35em; border-radius: 5px; background: var(--raised); }
.live-host .lv-tablew mark { background: var(--mark); color: inherit; padding: 0 2px; border-radius: 3px; }
.live-host .lv-tablew a { color: var(--accent-text); }
.live-host .lv-hr { position: relative; }
.live-host .lv-hr::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; border-top: 1px solid var(--line); }
.live-host .lv-img { display: inline-block; max-width: 100%; max-height: 24em; border-radius: 8px; vertical-align: bottom; }
.live-host .lv-found { background: var(--mark); border-radius: 2px; }
.live-host .lv-math-src { font-family: var(--font-code); font-size: 0.875em; }
.live-host .lv-math.is-block { display: block; padding: 4px 0; text-align: center; overflow-x: auto; overflow-y: hidden; cursor: text; }
.live-host .lv-math { cursor: text; }
.live-host .lv-found.is-current { background: var(--mark-current); }
.bg-layer { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; display: none; }
.app.has-bg .bg-layer { display: block; }
.bg-layer::before { content: ""; position: absolute; inset: calc(var(--bg-blur, 0px) * -2); background: var(--bg-img) center / cover no-repeat; filter: blur(var(--bg-blur, 0px)); }
.bg-layer::after { content: ""; position: absolute; inset: 0; background: var(--bg); opacity: var(--bg-dim, 0.65); }
.app.has-bg .editor-wrap { background: transparent; z-index: 1; }
.app.has-bg.bg-in-read .preview { background: color-mix(in srgb, var(--panel) 55%, transparent); position: relative; z-index: 1; }
.app.has-bg:not(.bg-in-read) .preview { position: relative; z-index: 1; }
.app.has-bg .lock-panel, .app.has-bg .big-view { position: relative; z-index: 1; }
.bg-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 8px; }
.bg-tile { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 76px; height: 50px; padding: 0; border: 1px solid var(--line); border-radius: 9px; background: var(--raised) center / cover no-repeat; color: var(--muted); cursor: pointer; }
.bg-tile:hover { color: var(--fg); }
.bg-tile svg { width: 18px; height: 18px; }
.bg-tile.is-none[aria-checked="true"] { border-color: var(--accent); background-color: var(--accent); }
.bg-tile .bg-check { position: absolute; right: 4px; bottom: 4px; display: none; width: 20px; height: 20px; border-radius: 50%; background: var(--accent); color: var(--on-accent); align-items: center; justify-content: center; }
.bg-tile .bg-check svg { width: 13px; height: 13px; }
.bg-tile[aria-checked="true"] .bg-check { display: inline-flex; }
.bg-tile.is-none[aria-checked="true"] { color: var(--on-accent); }
.bg-forget { position: absolute; top: -6px; right: -6px; display: none; width: 20px; height: 20px; padding: 0; border: 0; border-radius: 50%; background: var(--fg); color: var(--bg); cursor: pointer; align-items: center; justify-content: center; }
.bg-forget svg { width: 11px; height: 11px; }
.bg-slot { position: relative; display: inline-flex; }
.bg-slot:hover .bg-forget, .bg-forget:focus-visible { display: inline-flex; }
@media (hover: none) { .bg-forget { display: inline-flex; } }
.big-view { grid-column: 1 / -1; position: relative; overflow: auto; min-height: 0; background: var(--bg); outline: none; font-family: var(--note-font, var(--font-code)); font-size: calc(13.5px * var(--ts, 1)); line-height: 1.6; }
.big-view[hidden] { display: none; }
.bv-space { width: 1px; }
.bv-rows { position: absolute; top: 0; left: 0; min-width: 100%; width: max-content; padding: 0 26px 0 0; }
.bv-row { display: flex; white-space: pre; tab-size: var(--tab, 4); height: 1.6em; color: var(--fg); }
.bv-n { position: sticky; left: 0; flex: none; box-sizing: content-box; width: var(--bv-n, 3ch); padding: 0 14px 0 18px; text-align: right; color: var(--muted); background: var(--bg); font-variant-numeric: tabular-nums; user-select: none; -webkit-user-select: none; }
.bv-t mark { color: inherit; background: var(--mark); border-radius: 2px; }
.bv-t mark.is-current { background: var(--mark-current); box-shadow: 0 0 0 1px var(--accent-2); }
.app.is-big .panes > :not(.big-view):not(.timer-widget) { display: none !important; }
.app.is-big .seg, .app.is-big .md-bottom, .app.is-big #md-tools, .app.is-big .find-row + .find-row { display: none !important; }
.app.is-big .code-keys > * { visibility: hidden; }
.lock-panel { grid-column: 1 / -1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; padding: 24px; text-align: center; background: var(--bg); }
.lock-panel[hidden] { display: none; }
.lock-panel h2 { margin: 10px 0 2px; font-size: 1.125rem; font-weight: 600; }
.lock-panel p { margin: 0; max-width: 26rem; color: var(--muted); font-size: 0.875rem; }
.lock-badge { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 16px; background: var(--accent); color: var(--on-accent); }
.lock-badge svg { width: 28px; height: 28px; }
.lock-hint { margin-top: 6px !important; color: var(--fg) !important; }
.lock-form { display: flex; gap: 8px; width: min(100%, 340px); margin-top: 14px; }
.lock-form .menu-input { flex: 1; min-width: 0; height: 38px; }
.lock-form .menu-input:disabled { opacity: 0.55; cursor: not-allowed; }
.lock-error { margin: 10px 0 0 !important; color: var(--danger) !important; font-weight: 500; }
.lock-tries { margin-top: 2px !important; font-variant-numeric: tabular-nums; }
.lock-error[hidden] + .lock-tries { margin-top: 10px !important; }
.app.is-locked-note .panes > :not(.lock-panel):not(.timer-widget) { display: none !important; }
.home-panel { grid-column: 1 / -1; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; padding: 24px; text-align: center; }
.home-panel[hidden] { display: none; }
.home-panel h2 { margin: 14px 0 2px; font-size: 1.25rem; font-weight: 600; }
.home-panel p { margin: 0; max-width: 26rem; color: var(--muted); font-size: 0.875rem; }
.home-logo { width: 64px; height: 64px; }
.home-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 18px; }
.home-actions .btn { display: inline-flex; align-items: center; gap: 8px; }
.home-actions .btn svg { width: 16px; height: 16px; flex: none; }
.app.is-home .panes > :not(.home-panel):not(.bg-layer) { display: none !important; }
.app.is-home #toolbar, .app.is-home .topbar .seg, .app.is-home #popout-btn, .app.is-home #focus-btn, .app.is-home #note-title, .app.is-home #title-ext, .app.is-home #md-bottom,
.app.is-home #st-pos, .app.is-home #st-words, .app.is-home #st-chars, .app.is-home #st-eol, .app.is-home #st-saved { display: none !important; }
.lock-mark { flex: none; display: inline-flex; align-items: center; }
.lock-mark svg { width: 12px; height: 12px; color: var(--muted); }
.note-row.is-current .lock-mark svg { color: var(--accent-text); }
#lockpw-dialog .lock-error { margin-top: 10px; }
.app.is-trash .editor::placeholder { color: transparent; }
.code-layer.syn-plain { color: var(--fg); }
.editor-wrap.is-plain .code-layer { display: none; }
.editor-wrap .guide { position: absolute; top: 0; bottom: 0; z-index: 2; width: 1px; background: var(--line); pointer-events: none; }
.editor-wrap .guide[hidden] { display: none; }

.preview { overflow-y: auto; min-width: 0; font-size: calc(15px * var(--ts, 1)); overflow-wrap: break-word; padding: 22px 30px 40vh; border-left: 1px solid var(--line); background: var(--panel); font-family: var(--preview-font, var(--font-ui)); }
.app[data-view="preview"] .preview, .app[data-view="read"] .preview { border-left: 0; }
.app[data-view="read"] .preview { padding-top: 32px; }
.app[data-view="read"] .preview > * { margin-inline: auto; }
.preview .code-preview.is-read { padding: 0; border: 0; border-radius: 0; background: none; overflow: visible; }
.preview .code-preview.is-read:not(.is-code)::after { display: none; }
.preview .code-preview.is-read code { font-family: var(--read-font, var(--font-code)); font-size: calc(1rem * var(--ts, 1)); line-height: 1.75; color: var(--fg); white-space: pre-wrap; overflow-wrap: anywhere; }
.preview > .code-preview.is-code { max-width: 62.5rem; padding-top: 22px; }
.preview .code-preview.is-code code { font-size: calc(0.875rem * var(--ts, 1)); line-height: 1.7; }
.preview .code-preview.is-code::after { top: 0; right: 0; }
.rl-code .rl { position: relative; }
.code-preview.has-folds .rl-code { display: block; padding-left: 24px; }
.rl-hid { display: none !important; }
.code-preview.has-lines .rl-code { display: block; padding-left: calc(var(--ln-w) + var(--ln-gap) + var(--ln-fold)); }
.rl-n { display: inline-block; box-sizing: content-box; width: var(--ln-w); padding-right: calc(var(--ln-gap) + var(--ln-fold)); margin-left: calc(-1 * (var(--ln-w) + var(--ln-gap) + var(--ln-fold))); text-align: right; color: var(--muted); opacity: 0.75; font-variant-numeric: tabular-nums; user-select: none; -webkit-user-select: none; }
.rl-n::before { content: attr(data-n); }
.rl-fold, .h-fold { position: absolute; display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; padding: 0; border: 0; border-radius: 5px; background: none; color: var(--muted); cursor: pointer; }
.rl-fold { position: relative; width: 20px; margin: 0 4px 0 -24px; vertical-align: -0.25em; user-select: none; }
.rl-fold::before, .h-fold::before { content: ""; position: absolute; inset: -5px; }
.rl-fold svg, .h-fold svg { width: 14px; height: 14px; transition: transform 0.15s ease; }
.rl-fold:hover, .h-fold:hover { background: var(--raised); color: var(--fg); }
.rl.is-folded > .rl-fold svg, .is-folded > .h-fold svg { transform: rotate(-90deg); }
.rl-more { display: none; margin-left: 8px; padding: 0 8px; border: 1px solid var(--line); border-radius: 999px; background: var(--raised); color: var(--muted); font: inherit; font-size: 0.75em; line-height: 1.6; vertical-align: 1px; cursor: pointer; }
.rl.is-folded > .rl-more { display: inline-block; }
.rl-more:hover { color: var(--fg); }
.read-tools { display: flex; gap: 6px; margin: 0 0 10px; }
.read-tools button { padding: 2px 10px; border: 1px solid var(--line); border-radius: 7px; background: none; color: var(--muted); font: inherit; font-family: var(--font-ui); font-size: 0.75rem; cursor: pointer; }
.read-tools button:hover { background: var(--raised); color: var(--fg); }
.preview .has-fold { position: relative; }
.h-fold { left: -26px; top: 0.5lh; font-size: inherit; line-height: inherit; transform: translateY(-50%); opacity: 0; }
.has-fold:hover > .h-fold, .h-fold:focus-visible, .is-folded > .h-fold { opacity: 1; }
@media (hover: none) { .h-fold { opacity: 0.6; } }
.preview .is-folded.has-fold::after { content: " \2026"; color: var(--muted); }
body.no-anim .rl-fold svg, body.no-anim .h-fold svg { transition: none; }
.syn-gh .hljs-log-error { color: var(--danger); font-weight: 600; }
.syn-gh .hljs-log-warn { color: var(--gh-bullet); font-weight: 600; }
.syn-gh .hljs-log-info { color: var(--gh-const); }
.syn-gh .hljs-link { color: var(--gh-const); text-decoration: underline; text-underline-offset: 2px; }
.preview > * { max-width: 42rem; }
.preview h1, .preview h2, .preview h3, .preview h4, .preview h5, .preview h6 { line-height: 1.25; text-wrap: balance; font-weight: 600; }
.preview h1 { font-size: calc(1.9rem * var(--ts, 1)); margin: 0 0 0.6em; }
.preview h2 { font-size: calc(1.55rem * var(--ts, 1)); margin: 1.6em 0 0.5em; }
.preview h3 { font-size: calc(1.3rem * var(--ts, 1)); margin: 1.4em 0 0.4em; }
.preview h4, .preview h5, .preview h6 { font-size: calc(1rem * var(--ts, 1)); margin: 1.3em 0 0.4em; }
.preview h4 { font-size: calc(1.15rem * var(--ts, 1)); }
.preview h5 { font-size: calc(1.05rem * var(--ts, 1)); }
.preview h6 { color: var(--muted); }
.preview p, .preview ul, .preview ol, .preview blockquote, .preview pre, .preview table, .preview dl { margin: 0 0 1em; }
.preview a { color: var(--accent-text); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.preview img { max-width: 100%; border-radius: 8px; }
.preview code { font-family: var(--font-code); font-size: 0.85em; padding: 0.1em 0.35em; border-radius: 5px; background: var(--raised); }
.preview pre { position: relative; overflow-x: auto; tab-size: var(--tab, 4); padding: 14px 16px; border-radius: 10px; background: var(--code-bg); border: 1px solid var(--line); }
.preview pre code { padding: 0; background: none; font-size: calc(0.8125rem * var(--ts, 1)); line-height: 1.65; color: var(--gh-sub); }
.preview pre[data-lang]::after { content: attr(data-lang); position: absolute; top: 6px; right: 10px; font-family: var(--font-code); font-size: 0.6875rem; color: var(--muted); text-transform: lowercase; }
.preview blockquote { padding: 10px 14px; border-left: 3px solid var(--accent); background: var(--raised); border-radius: 0 8px 8px 0; }
.preview blockquote p:last-child { margin-bottom: 0; }
.preview ul:has(> li > input[type="checkbox"]) { padding-left: 4px; list-style: none; }
.preview li > ul:has(> li > input[type="checkbox"]) { padding-left: 28px; }
.preview .task-done { color: var(--muted); text-decoration: line-through; }
.preview li input[type="checkbox"] { width: 16px; height: 16px; margin: 0 8px 0 0; vertical-align: -2px; accent-color: var(--accent); cursor: pointer; }
.preview hr { border: 0; border-top: 1px solid var(--line); margin: 2em 0; }
.preview table { border-collapse: collapse; display: block; overflow-x: auto; padding: 0 1px; margin-left: -1px; margin-right: -1px; }
.preview th, .preview td { border: 1px solid var(--line); padding: 6px 10px; text-align: left; height: calc(1.5em + 12px); }
.preview th { background: var(--raised); font-weight: 600; }
.preview .lv-read-hid { display: none !important; }
.preview .lv-read-folded::after { content: " \2026"; color: var(--muted); }
.preview th[align="center"], .preview td[align="center"] { text-align: center; }
.preview th[align="right"], .preview td[align="right"] { text-align: right; }
.preview mark { background: var(--mark); color: inherit; padding: 0 2px; border-radius: 3px; }
.preview dt { font-weight: 600; }
.preview dd { margin: 0 0 0.6em 1.2em; }
.preview .footnotes { margin-top: 2.5em; padding-top: 1em; border-top: 1px solid var(--line); font-size: calc(0.875rem * var(--ts, 1)); color: var(--muted); }
.preview .footnotes ol { padding-left: 1.2em; }
.preview .fn-ref a, .preview .fn-back { text-decoration: none; }
.preview .code-preview { margin: 0; }
.preview .math-block { margin: 0 0 1em; overflow-x: auto; overflow-y: hidden; }
.math.is-tex { font-family: var(--font-code); font-size: 0.875em; color: var(--muted); white-space: pre-wrap; }
.math .katex-error { color: var(--danger) !important; }
.legal-links a { color: var(--accent-text); }
.preview .code-wrap { position: relative; max-width: 42rem; margin: 0 0 1em; }
.preview .code-wrap > pre { margin: 0; }
.code-copy { position: absolute; right: 5px; bottom: 5px; display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; padding: 0; border: 1px solid var(--line); border-radius: 7px; background: var(--raised); color: var(--muted); opacity: 0; cursor: pointer; }
body.anim .code-copy { transition: opacity 0.15s ease, color 0.15s ease; }
.code-copy svg { width: 14px; height: 14px; }
.preview .code-wrap pre { padding-bottom: 32px; }
.code-copy:hover { color: var(--fg); }
.code-wrap:hover .code-copy, .code-copy:focus-visible { opacity: 1; }
.code-wrap:hover pre[data-lang]::after, .code-wrap:focus-within pre[data-lang]::after { opacity: 0; }
@media (hover: none) { .code-copy { opacity: 1; } }
.app[data-view="split"] .preview .code-copy { display: none; }
.md-tools:not(.in-table) .tbl-tool, .more-panel:not(.in-table) .tbl-tool { display: none; }

.syn-md .hljs-section { color: var(--accent-text); font-weight: 600; }
.syn-md .hljs-strong { color: var(--fg); font-weight: 600; }
.syn-md .hljs-emphasis { color: var(--fg); font-style: italic; }
.editor-wrap.is-prop .syn-md .hljs-strong, .editor-wrap.is-prop .syn-md .hljs-section { font-weight: inherit; -webkit-text-stroke: 0.035em currentColor; }
.editor-wrap.is-prop .syn-md .hljs-emphasis { font-style: inherit; }
.editor-wrap.is-prop .code-layer [class*="hljs-"] { font-weight: inherit; font-style: inherit; }
.syn-md .hljs-mark { background: var(--mark); border-radius: 3px; }
.syn-md .hljs-code { color: var(--syn-str); }
.syn-md .hljs-bullet { color: var(--syn-kw); }
.syn-md .hljs-link, .syn-md .hljs-symbol { color: var(--syn-type); }
.syn-md .hljs-string { color: var(--muted); }
.syn-md .hljs-quote { color: var(--syn-com); font-style: italic; }
.syn-gh { color: var(--gh-sub); }
.syn-gh .hljs-doctag, .syn-gh .hljs-keyword, .syn-gh .hljs-meta .hljs-keyword, .syn-gh .hljs-template-tag, .syn-gh .hljs-template-variable, .syn-gh .hljs-type, .syn-gh .hljs-variable.language_ { color: var(--gh-kw); }
.syn-gh .hljs-title, .syn-gh .hljs-title.class_, .syn-gh .hljs-title.class_.inherited__, .syn-gh .hljs-title.function_ { color: var(--gh-title); }
.syn-gh .hljs-attr, .syn-gh .hljs-attribute, .syn-gh .hljs-literal, .syn-gh .hljs-meta, .syn-gh .hljs-number, .syn-gh .hljs-operator, .syn-gh .hljs-selector-attr, .syn-gh .hljs-selector-class, .syn-gh .hljs-selector-id, .syn-gh .hljs-variable { color: var(--gh-const); }
.syn-gh .hljs-meta .hljs-string, .syn-gh .hljs-regexp, .syn-gh .hljs-string { color: var(--gh-str); }
.syn-gh .hljs-built_in, .syn-gh .hljs-symbol { color: var(--gh-builtin); }
.syn-gh .hljs-code, .syn-gh .hljs-comment, .syn-gh .hljs-formula { color: var(--gh-com); }
.syn-gh .hljs-name, .syn-gh .hljs-quote, .syn-gh .hljs-selector-pseudo, .syn-gh .hljs-selector-tag { color: var(--gh-name); }
.syn-gh .hljs-subst { color: var(--gh-sub); }
.syn-gh .hljs-section { color: var(--gh-section); font-weight: 600; }
.syn-gh .hljs-bullet { color: var(--gh-bullet); }
.syn-gh .hljs-emphasis { font-style: italic; }
.syn-gh .hljs-strong { font-weight: 600; }

.statusbar {
  grid-area: status;
  --st-gap: 14px;
  display: flex; align-items: center; gap: var(--st-gap); overflow: hidden;
  padding: 4px calc(14px + var(--sar)) calc(4px + env(safe-area-inset-bottom, 0px)) calc(14px + var(--sal));
  background: var(--panel); border-top: 1px solid var(--line);
  font-family: var(--font-code); font-size: 0.75rem; color: var(--muted); font-variant-numeric: tabular-nums; white-space: nowrap;
}
.statusbar .grow { flex: 1; }
.statusbar .st-item + .st-item,
.pip-status > span + span {
  padding-left: calc(var(--st-gap) + 1px);
  background: linear-gradient(var(--line), var(--line)) left center / 1px 12px no-repeat;
}
.statusbar .grow + .st-item, .statusbar .st-item.st-first, .pip-status > span.pip-first { padding-left: 0; background: none; }
.statusbar.hide-pos #st-pos, .statusbar.hide-words #st-words, .statusbar.hide-chars #st-chars, .statusbar.hide-eol #st-eol, .statusbar.hide-net #st-net, .statusbar.hide-sync #st-sync,
.pip-status.hide-pos #pip-pos, .pip-status.hide-words #pip-words, .pip-status.hide-chars #pip-chars { display: none; }
.pip-status.is-empty { display: none; }
.statusbar.is-off:not(.has-error), .statusbar.is-empty { display: none; }
.app.no-statusbar .md-bottom { padding-bottom: calc(2px + env(safe-area-inset-bottom, 0px)); }
.menu-item:disabled { opacity: 0.45; cursor: not-allowed; }
.st-eol { border: 0; background: none; color: inherit; font: inherit; cursor: pointer; }
.st-eol:hover:not(:disabled) { color: var(--fg); }
.st-eol:disabled { cursor: default; }
.st-sync { display: inline-flex; align-items: center; gap: 5px; border: 0; background: none; color: inherit; font: inherit; cursor: pointer; }
.st-sync svg { width: 13px; height: 13px; flex: none; }
.st-sync.is-syncing svg { animation: sync-pulse 1.2s ease-in-out infinite; }
.st-sync.is-reconnect, .st-sync.is-need-key, .st-sync.is-bad-key, .st-sync.is-update-needed { color: var(--accent-text); font-weight: 600; }
body:not([data-ot-theme="light"]) .st-sync.is-reconnect, body:not([data-ot-theme="light"]) .st-sync.is-need-key, body:not([data-ot-theme="light"]) .st-sync.is-bad-key, body:not([data-ot-theme="light"]) .st-sync.is-update-needed { color: var(--accent); }
.st-sync.is-error, .st-sync.is-not-offnote { color: var(--danger); }
@media (max-width: 600px) { .st-sync.is-ok .sync-label, .st-sync.is-syncing .sync-label, .st-sync.is-offline .sync-label { display: none; } }
.sync-ico { position: relative; display: inline-flex; }
@media (max-width: 600px) {
  .st-sync.is-reconnect .sync-ico::before, .st-sync.is-need-key .sync-ico::before, .st-sync.is-update-needed .sync-ico::before,
  .st-sync.is-error .sync-ico::before, .st-sync.is-bad-key .sync-ico::before, .st-sync.is-not-offnote .sync-ico::before {
    content: ""; position: absolute; top: -2px; left: -3px; width: 7px; height: 7px; border-radius: 50%;
    background: var(--accent); box-shadow: 0 0 0 1.5px var(--panel);
  }
  .st-sync.is-error .sync-ico::before, .st-sync.is-bad-key .sync-ico::before, .st-sync.is-not-offnote .sync-ico::before { background: var(--danger); }
}
.statusbar.has-goal #st-words, .statusbar.has-goal #st-chars,
.pip-status.has-goal #pip-words, .pip-status.has-goal #pip-chars { display: none; }
.status-saved::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 6px; border-radius: 50%; background: var(--accent); vertical-align: 1px; }

.app.is-focus { grid-template-columns: minmax(0, 1fr); grid-template-areas: "top" "main" "status"; }
@media (min-width: 821px) and (min-height: 501px), (min-width: 821px) and (pointer: fine), (min-width: 821px) and (pointer: none) {
  .app.is-collapsed { grid-template-columns: minmax(0, 1fr); grid-template-areas: "top" "main" "status"; }
  .app.is-collapsed .sidebar { display: none; }
}
.app.is-focus .sidebar, .app.is-focus .toolbar, .app.is-focus .hide-in-focus { display: none; }
.app.is-focus #file-banner.is-quiet { display: none; }
.app.is-focus .topbar { transition: opacity 0.3s ease, visibility 0s linear 0s; }
.app.is-focus.is-focus-typing .topbar { opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.3s ease, visibility 0s linear 0.3s; }
body.no-anim .app.is-focus .topbar { transition: none; }
.app.is-focus .editor-wrap { --pad-x: max(26px, calc((100% - 760px) / 2)); }
#terms-dialog.is-closed { background: var(--bg); }
#terms-text a { color: var(--accent-text); font-weight: 600; text-decoration-thickness: 2px; text-underline-offset: 3px; }
.app.is-focus .editor-wrap.is-code-note { --pad-x: max(26px, calc((100% - 912px) / 2)); }
@media (min-width: 821px) {
  .app.is-centered .editor-wrap { --pad-x: max(26px, calc((100% - 760px) / 2)); }
  .app.is-centered .editor-wrap.is-code-note { --pad-x: max(26px, calc((100% - 912px) / 2)); }
  .app.is-centered .preview > * { margin-inline: auto; }
}
.app.is-focus .preview > * { margin-inline: auto; }
.app.is-focus .topbar, .app.is-focus .statusbar { background: var(--bg); border-color: transparent; }

.scrim { overscroll-behavior: contain; position: fixed; inset: 0; z-index: 40; display: grid; place-items: center; padding: 16px; background: var(--scrim); }
.dialog {
  position: relative; overscroll-behavior: contain;
  width: min(100%, 420px); max-height: calc(100% - 32px); overflow-y: auto;
  padding: 22px; border-radius: 14px;
  background: var(--panel); border: 1px solid var(--line);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}
.dialog.wide { width: min(100%, 560px); }
.dialog-x {
  position: absolute; top: 14px; right: 14px;
  display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; padding: 0; border: 0; border-radius: 8px;
  background: transparent; color: var(--muted); cursor: pointer;
}
.dialog-x svg { width: 18px; height: 18px; }
.dialog-x.drawer-x { display: none; }
.dialog-x, .pop-x, .find-btn.close-x { background: var(--danger-tint); color: var(--danger); }
.dialog-x:hover, .pop-x:hover, .find-btn.close-x:hover { background: var(--danger); color: #fff; }
.dialog.settings {
  display: grid; grid-template-columns: 216px minmax(0, 1fr); grid-template-rows: auto minmax(0, 1fr); grid-template-areas: "title body" "nav body";
  width: min(100%, 820px); height: min(100%, 640px); max-height: calc(100% - 32px); padding: 0; overflow: hidden;
}
.dialog.settings > h2 { grid-area: title; margin: 0; padding: 22px 22px 12px; border-right: 1px solid var(--line); background: var(--bg); }
.set-nav { grid-area: nav; position: relative; display: flex; flex-direction: column; gap: 2px; padding: 0 10px 14px; overflow-y: auto; border-right: 1px solid var(--line); background: var(--bg); }
.set-tab {
  position: relative; z-index: 1; display: flex; align-items: center; gap: 10px; flex: none;
  height: 36px; padding: 0 10px; border: 0; border-radius: 8px; background: transparent; color: var(--muted);
  font: inherit; font-size: 0.875rem; font-weight: 400; text-align: left; white-space: nowrap; cursor: pointer;
}
.set-tab svg { width: 17px; height: 17px; flex: none; }
.set-tab { transition: none; }
.set-tab:hover { color: var(--fg); }
.set-tab:not([aria-selected="true"]):hover { background: var(--pick-hover); }
.set-tab[aria-selected="true"] { color: var(--fg); font-weight: 600; }
.set-tab > span { display: inline-grid; }
.set-tab > span::after { content: attr(data-label); font-weight: 600; height: 0; overflow: hidden; visibility: hidden; }
.set-tab[aria-selected="true"] svg { color: var(--accent-text); }
.set-ind { position: absolute; left: 0; top: 0; z-index: 0; width: 0; height: 0; border-radius: 8px; background: var(--pick); pointer-events: none; }
body.anim .seg-ind.is-moving { transition: transform 0.38s cubic-bezier(0.16, 1, 0.3, 1), width 0.38s cubic-bezier(0.16, 1, 0.3, 1), height 0.38s cubic-bezier(0.16, 1, 0.3, 1); }
.dialog.settings:focus { outline: none; }
.dialog .stats-since { margin: 0 0 12px; }
.stats-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-bottom: 14px; }
.stat { min-width: 0; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--bg); }
.stat-num { display: block; font-size: 1.25rem; font-weight: 600; line-height: 1.3; font-variant-numeric: tabular-nums; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.stat-label { display: block; margin-top: 2px; font-size: 0.75rem; color: var(--muted); }
.stat-sub { display: block; margin-top: 2px; font-size: 0.75rem; color: var(--muted); overflow-wrap: anywhere; }
.stat:last-child:nth-child(odd) { grid-column: 1 / -1; }
@media (max-width: 600px) {
  .stats-grid { grid-template-columns: minmax(0, 1fr); }
  .stat-num { white-space: normal; overflow-wrap: anywhere; }
}
.set-body { grid-area: body; overflow-y: auto; overscroll-behavior: contain; padding: 20px 26px 22px; }
.set-pane > .set-head { position: sticky; top: -20px; z-index: 2; margin: -20px -26px 12px; padding: 22px 66px 10px 26px; background: var(--panel); font-size: 1.0625rem; font-weight: 600; }
.dialog.settings > .dialog-x { z-index: 3; }
.dialog .set-pane > .menu-title:first-of-type { margin-top: 18px; }
@media (max-width: 720px) {
  .dialog.settings { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto minmax(0, 1fr); grid-template-areas: "title" "nav" "body"; height: min(100%, 760px); }
  .dialog.settings > h2 { padding: 20px 20px 10px; border-right: 0; }
  .set-nav { flex-direction: row; gap: 4px; padding: 0 12px 10px; overflow-x: auto; overflow-y: hidden; border-right: 0; border-bottom: 1px solid var(--line); scrollbar-width: none; overscroll-behavior-x: contain; }
  .set-nav::-webkit-scrollbar { display: none; }
  .set-tab { height: 34px; padding: 0 12px; }
  .set-body { padding: 16px 20px 20px; }
  .set-pane > .set-head { top: -16px; margin: -16px -20px 10px; padding: 16px 20px 8px; }
}
#confirm-dialog { z-index: 45; }
.dialog .menu-danger + .menu-note { margin-top: 6px; }
.dialog.changelog { display: flex; flex-direction: column; overflow: hidden; width: min(100%, 620px); height: min(100%, 760px); padding: 22px 0 0; }
.dialog.changelog > h2 { margin: 0 22px 10px; }
.preview.changelog-body { flex: 1; min-height: 0; overflow-y: auto; padding: 4px 22px 28px; border: 0; background: none; outline: none; }
.preview.changelog-body > * { max-width: none; }
.preview.changelog-body h2 { margin-top: 1.4em; padding-top: 1em; border-top: 1px solid var(--line); font-size: 1.15rem; }
.preview.changelog-body > h2:first-of-type { margin-top: 0.6em; padding-top: 0; border-top: 0; }
.preview.changelog-body h3 { font-size: 0.95rem; color: var(--accent-text); }
body:not([data-ot-theme="light"]) .preview.changelog-body h3 { color: var(--accent); }
.preview.changelog-body ul { padding-left: 1.25em; }
.preview.changelog-body li { margin: 0.35em 0; }
.dialog .menu-title { margin: 16px 0 6px; font-size: 0.8125rem; font-weight: 600; color: var(--muted); }
.dialog .menu-title:first-of-type { margin-top: 4px; }
.dialog .menu-note { margin: 0 0 8px; font-size: 0.75rem; color: var(--muted); }
.dialog .menu-plain + .menu-note { margin-top: 6px; }
.dialog .menu-item { padding-left: 0; padding-right: 0; border-radius: 0; }
.dialog .menu-item:hover { background: transparent; }
.dialog .menu-item > span:first-child { white-space: normal; }
.mi-desc { display: block; margin-top: 2px; color: var(--muted); font-size: 0.75rem; font-weight: 400; line-height: 1.4; }
.dialog .menu-item:has(.mi-desc) { align-items: flex-start; padding-top: 7px; padding-bottom: 7px; }
.dialog .menu-item:has(.mi-desc) .switch { margin-top: 2px; }
.dialog .menu-actions { padding-left: 0; padding-right: 0; }
.dialog .menu-range { padding: 2px 0 8px; }
.dialog .menu-note + .menu-range { margin-top: 14px; }
.dialog .storage-meter { margin: 4px 0 6px; }
.dialog .menu-sep { margin: 10px 0; }
.theme-wrap { container-type: inline-size; margin: 0; }
.theme-seg { margin-bottom: 0; }
@container (max-width: 430px) { .theme-seg button > span { display: none; } }
.accent-wrap { container-type: inline-size; }
.accent-row { display: flex; flex-wrap: nowrap; justify-content: space-between; gap: 4px; margin: 4px 0 4px; }
.accent-row .accent-pick { flex: 0 0 auto; }
@container (max-width: 440px) {
  .accent-row { flex-wrap: wrap; justify-content: center; gap: 4px 0; }
  .accent-row .accent-pick { flex: 0 0 25%; }
    .accent-row.has-bg-pick .accent-pick { flex: 0 0 20%; }
}
.accent-pick { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 8px 4px 6px; border: 0; border-radius: 9px; background: transparent; cursor: pointer; min-width: 0; }
.accent-pick:hover { background: var(--raised); }
.accent-dot { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; }
.accent-dot svg { width: 16px; height: 16px; opacity: 0; }
.accent-pick[aria-checked="true"] .accent-dot svg { opacity: 1; }
.accent-wrap { position: relative; }
.accent-own .accent-dot { background: conic-gradient(#e82a30, #ff7916, #fec72e, #55b155, #5da8e4, #ae5dce, #ff5c95, #e82a30); }
.accent-own .accent-dot.has-color { background: linear-gradient(var(--own), var(--own)) padding-box, conic-gradient(#e82a30, #ff7916, #fec72e, #55b155, #5da8e4, #ae5dce, #ff5c95, #e82a30) border-box; border: 3px solid transparent; }
.accent-bg .accent-dot { background: linear-gradient(var(--bgc, #888), var(--bgc, #888)) padding-box, var(--bgimg, none) center / cover border-box, var(--raised); border: 3px solid transparent; }
.accent-pick[hidden] { display: none; }
.accent-input { position: absolute; right: 8px; bottom: 0; width: 30px; height: 1px; padding: 0; border: 0; opacity: 0; pointer-events: none; }
#accent-warn.accent-warn { display: flex; align-items: flex-start; gap: 8px; margin: 6px 0 12px; padding: 9px 12px; border-radius: 10px; background: #c8333a; color: #fff; font-size: 0.8125rem; line-height: 1.45; }
#accent-warn svg { flex: none; width: 16px; height: 16px; margin-top: 1px; }
.pop-x {
  position: absolute; top: 6px; right: 6px;
  display: inline-flex; align-items: center; justify-content: center;
  width: 28px; height: 28px; padding: 0; border: 0; border-radius: 7px;
  background: var(--danger-tint); color: var(--danger); cursor: pointer;
}
.pop-x svg { width: 15px; height: 15px; }
.pop-x:hover { background: var(--danger); color: #fff; }
.menu-pop > .menu-title:first-of-type { padding-right: 30px; }
.tip {
  position: fixed; z-index: 90; max-width: min(280px, calc(100vw - 16px));
  padding: 6px 10px; border: 1px solid #262626; border-radius: 8px;
    background: #141414; color: #e8e8ea; font-family: var(--font-ui); font-size: 0.75rem; line-height: 1.4;
  pointer-events: none;
}
.tip-key { display: inline-block; margin-left: 8px; color: #8e8e96; white-space: nowrap; }
body:not(.no-anim) .tip { animation: tip-in 0.12s ease-out; }
@keyframes tip-in { from { opacity: 0; transform: translateY(2px); } }
body .tip.is-instant { animation: none; }
.tip.is-leaving { opacity: 0; transition: opacity 0.3s ease; pointer-events: none; }
.md-bottom { display: none; }
body.has-md-bottom .toasts { bottom: 96px; }
body:has(.scrim:not([hidden])) .toasts { top: calc(12px + env(safe-area-inset-top, 0px)); bottom: auto; margin-bottom: 0; }
.pip-placeholder { display: none; }
.app.is-pip .pip-placeholder {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px;
  padding: 24px; text-align: center; background: var(--bg); color: var(--muted); font-size: 0.875rem;
}
.app.is-pip .pip-placeholder svg { width: 40px; height: 40px; color: var(--accent-text); }
.app.is-pip .pip-placeholder p { margin: 0; max-width: 28rem; }
.app.is-pip[data-view="preview"] .pip-placeholder, .app.is-pip[data-view="read"] .pip-placeholder { display: none; }
.app.is-pip .toolbar, .app.is-pip .md-bottom, .app.is-pip .find-bar { display: none; }
#popout-btn[aria-pressed="true"] { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
body.pip { margin: 0; height: 100vh; overflow: hidden; }
.pip-app { height: 100%; display: flex; flex-direction: column; background: var(--bg); }
.pip-head { display: flex; align-items: center; gap: 8px; padding: 6px 8px; background: var(--panel); border-bottom: 1px solid var(--line); min-width: 0; }
.pip-head .note-title { flex: 1; min-width: 0; padding: 4px 8px; font-size: 0.9375rem; }
.pip-head .note-title.has-ext { padding-right: 1px; }
.pip-head .title-ext { margin-left: -10px; font-size: 0.9375rem; }
.pip-right { flex: none; margin-left: auto; display: flex; align-items: center; gap: 4px; }
button.pip-timer { background: none; cursor: pointer; }
button.pip-timer:hover { background: var(--raised); }
.pip-timer { flex: none; padding: 2px 8px; border: 1px solid var(--line); border-radius: 999px; font-family: var(--font-code); font-size: 0.75rem; color: var(--accent-text); font-variant-numeric: tabular-nums; }
.pip-bar { display: flex; align-items: center; gap: 2px; padding: 4px 6px; border-bottom: 1px solid var(--line); min-width: 0; }
.pip-bar .md-tools { flex: 1; }
.pip-bar .pip-grow { flex: 1; }
.pip-bar .tool-icon { flex: none; width: 30px; height: 30px; color: var(--fg); }
.pip-bar .tool-icon[aria-pressed="true"] { background: var(--raised); color: var(--accent-text); }
.pip-panes { position: relative; flex: 1; min-height: 0; display: grid; grid-template-columns: minmax(0, 1fr); }
.pip-panes .editor-wrap { --pad-x: 14px; --pad-top: 12px; }
.pip-status {
  --st-gap: 10px;
  display: flex; align-items: center; gap: var(--st-gap); overflow: hidden;
  padding: 3px 10px; background: var(--panel); border-top: 1px solid var(--line);
  font-family: var(--font-code); font-size: 0.6875rem; color: var(--muted); font-variant-numeric: tabular-nums; white-space: nowrap;
}
body.pip .toasts { bottom: 34px; }
.pip-head .tool-icon { flex: none; width: 30px; height: 30px; color: var(--fg); }
.pip-head .tool-icon[aria-expanded="true"] { background: var(--raised); }
.pip-bar-toggle svg { transition: transform 0.15s; }
.pip-bar-toggle.is-active { background: var(--accent); color: var(--on-accent) !important; }
.pip-bar-toggle.is-active:hover { background: var(--accent-2); }
.pip-bar-toggle.is-active svg { transform: rotate(180deg); }
@media (prefers-reduced-motion: reduce) { .pip-bar-toggle svg { transition: none; } }
.pip-panes .preview { border-left: 0; padding: 14px 16px 40vh; }
.pip-panes.is-preview .editor-wrap { display: none; }
.pip-list {
  position: absolute; inset: 0; z-index: 6; overflow-y: auto;
  padding: 6px; background: var(--panel); border-right: 1px solid var(--line);
}
.pip-list ul { list-style: none; margin: 0; padding: 0; }
.pip-list .pip-folder { padding: 10px 10px 4px; font-size: 0.75rem; font-weight: 600; color: var(--muted); }
.pip-list button {
  display: flex; align-items: center; gap: 6px; width: 100%;
  padding: 7px 10px; border: 0; border-radius: 8px; background: transparent;
  text-align: left; font-size: 0.875rem; cursor: pointer; color: var(--fg);
}
.pip-list button:hover { background: var(--raised); }
.pip-list button[aria-current="true"] { background: var(--raised); font-weight: 600; }
.pip-list .in-folder button { padding-left: 22px; }
.pip-list .name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pip-list .name.untitled { color: var(--muted); }
.pip-list .ext { color: var(--muted); font-weight: 400; margin-left: -6px; }
.pip-list svg { width: 13px; height: 13px; flex: none; color: var(--accent-text); }
.pip-list .empty { padding: 12px; font-size: 0.8125rem; color: var(--muted); }
.dialog .menu-label { margin: 14px 0 6px; font-size: 0.8125rem; color: var(--muted); }
.dialog #note-dlg-name { margin-bottom: 4px; }
.dialog .note-dates { display: flex; flex-direction: column; gap: 2px; margin: 0 0 12px; font-size: 0.8125rem; }
.dialog #np-tags .menu-item { padding: 6px 0; }
.storage-text b { color: var(--accent-text); font-weight: 600; }
.storage-text.is-full b { color: var(--danger); }
.toast-x {
  position: absolute; top: calc(50% - 1px); right: 8px; transform: translateY(-50%);
  display: inline-flex; align-items: center; justify-content: center;
  width: 24px; height: 24px; padding: 0; border: 0; border-radius: 6px;
  background: var(--danger-tint); color: var(--danger); cursor: pointer;
}
.toast-x svg { width: 13px; height: 13px; }
.toast-x:hover { background: var(--danger); color: #fff; }
.toast--error .toast-x { background: rgba(255, 255, 255, 0.2); color: #fff; }
.toast--error .toast-x:hover { background: #fff; color: #c8333a; }
.toast.is-swiping { transition: none !important; }
.toast.is-swiped { transition: transform 0.18s ease-in, opacity 0.18s ease-in !important; }
.toast > span:first-child { flex: 1; min-width: 0; }
.toast-action {
  flex: none; height: 28px; padding: 0 10px; border: 0; border-radius: 7px;
  background: var(--bg); color: var(--fg); font-size: 0.8125rem; font-weight: 600; cursor: pointer;
}
.toast-action:hover { filter: brightness(1.15); }
.toast--error .toast-action { background: rgba(0, 0, 0, 0.25); color: #fff; }
.dialog:focus { outline: none; }
.dialog h2 { margin: 0 0 8px; padding-right: 40px; font-size: 1.125rem; font-weight: 600; }
.dialog p { margin: 0 0 16px; color: var(--muted); font-size: 0.875rem; }
.dialog-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 18px; }
.btn {
  height: 38px; padding: 0 16px; border-radius: 9px; cursor: pointer; font-weight: 500; font-size: 0.875rem; white-space: nowrap;
  background: transparent; border: 1px solid var(--line);
}
.btn:hover { background: var(--raised); }
.btn-danger { background: var(--danger); border-color: var(--danger); color: #fff; }
.btn-danger:hover { background: var(--danger); filter: brightness(1.08); }
.dialog.lang-dialog { display: flex; flex-direction: column; overflow: hidden; width: min(100%, 640px); }
.lang-search { width: 100%; height: 40px; margin: 2px 0 12px; flex: none; }
.lang-scroll { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; margin: 0 -6px; padding: 0 6px 4px; }
.lang-section + .lang-section { margin-top: 16px; }
.lang-section h3 { margin: 0 0 8px; font-size: 0.8125rem; font-weight: 600; color: var(--muted); }
.lang-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 8px; }
.lang-card {
  display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 12px 14px;
  border: 1px solid var(--line); border-radius: 10px; background: var(--bg); color: var(--fg);
  cursor: pointer; text-align: left; font-size: 0.8125rem; line-height: 1.45;
}
.lang-card b { display: flex; align-items: baseline; gap: 8px; font-size: 0.9375rem; font-weight: 600; }
.lang-card span { color: var(--muted); }
.lang-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 6px; }
.lang-grid button {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  min-height: 38px; padding: 4px 10px; border: 1px solid var(--line); border-radius: 8px;
  background: var(--bg); color: var(--fg); cursor: pointer; font-size: 0.8125rem; text-align: left;
}
.lang-ext { flex: none; color: var(--muted); font-size: 0.75rem; font-family: var(--font-code); }
@media (max-width: 520px) {
  .lang-grid button { flex-direction: column; align-items: flex-start; justify-content: center; gap: 1px; padding: 6px 10px; }
  .lang-grid .lang-ext { max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
}
.lang-card:hover, .lang-grid button:hover { background: var(--raised); }
.lang-card[aria-current="true"], .lang-grid button[aria-current="true"] { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
.lang-card[aria-current="true"] span, .lang-grid button[aria-current="true"] .lang-ext { color: var(--on-accent); opacity: 0.8; }
.lang-grid button.is-last, .lang-card.is-last b { font-weight: 600; }
.lang-none { margin: 4px 0 0; color: var(--muted); font-size: 0.875rem; }
.keys { width: 100%; border-collapse: collapse; font-size: 0.8125rem; }
.keys td { padding: 5px 0; border-bottom: 1px solid var(--line); vertical-align: top; }
.keys td:last-child { text-align: right; white-space: nowrap; padding-left: 12px; }
.keys h3 { margin: 14px 0 4px; font-size: 0.8125rem; font-weight: 600; color: var(--muted); }
.menu-pop {
  position: fixed; top: 0; left: 0; z-index: 30;
  min-width: 220px; max-width: calc(100vw - 32px); max-height: calc(100vh - 32px); overflow-y: auto;
    overflow-x: hidden;
  padding: 6px; border-radius: 12px;
  background: var(--panel); border: 1px solid var(--line);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4);
}
.ctx-pop { min-width: 200px; padding: 4px; z-index: 60; }
.fmt-bar { position: fixed; top: 0; left: 0; z-index: 29; display: flex; align-items: center; gap: 2px; padding: 4px; border-radius: 10px; background: var(--panel); border: 1px solid var(--line); box-shadow: 0 10px 28px rgba(0, 0, 0, 0.35); }
.fmt-bar[hidden] { display: none; }
[data-md="indent"] .ico-cell, [data-md="outdent"] .ico-cell, body.in-cell [data-md="indent"] .ico-text, body.in-cell [data-md="outdent"] .ico-text { display: none; }
body.in-cell [data-md="indent"] .ico-cell, body.in-cell [data-md="outdent"] .ico-cell { display: block; }
.fmt-bar button { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 7px; background: none; color: var(--fg); cursor: pointer; }
.fmt-bar button:hover, .fmt-bar button:focus-visible { background: var(--raised); outline: none; }
.fmt-bar button svg { width: 18px; height: 18px; }
.fmt-bar .fmt-sep { width: 1px; height: 18px; margin: 0 3px; background: var(--line); }
.ctx-pop .menu-item { padding: 7px 10px; font-size: 0.875rem; }
.ctx-pop .menu-item > .ctx-ico { width: 16px; height: 16px; flex: none; }
.ctx-pop { max-height: calc(100vh - 16px); overflow-y: auto; overscroll-behavior: contain; }
.ctx-pop .menu-item.is-open { background: var(--raised); }
body.anim .ctx-pop[hidden] { transition: none; }
.ctx-pop .has-sub::after { content: "\203A"; margin-left: auto; color: var(--muted); font-size: 1.1em; line-height: 1; }
.ctx-pop .ctx-sep { height: 1px; margin: 4px 6px; background: var(--line); }
.ctx-pop .menu-title { margin: 6px 10px 4px; }
.menu-title { margin: 6px 10px 6px; font-size: 0.8125rem; font-weight: 600; color: var(--muted); }
.menu-item {
  display: flex; align-items: center; gap: 10px; width: 100%;
  padding: 8px 10px; border: 0; border-radius: 8px; background: transparent;
  text-align: left; font-size: 0.875rem; cursor: pointer;
}
.menu-item:hover { background: var(--raised); }
.menu-item .check { width: 16px; height: 16px; flex: none; color: var(--accent-text); visibility: hidden; }
.menu-item[aria-checked="true"] .check { visibility: visible; }
.menu-item .check-space { width: 16px; flex: none; }
.menu-item .count { margin-left: auto; color: var(--muted); font-size: 0.75rem; font-variant-numeric: tabular-nums; }
.menu-sep { height: 1px; margin: 6px 4px; background: var(--line); }
.menu-actions { display: flex; flex-wrap: wrap; gap: 6px; padding: 4px 4px 6px; }
.menu-actions button { flex: 1 1 auto; min-height: 32px; padding: 6px 10px; border: 1px solid var(--line); border-radius: 8px; background: var(--bg); font-size: 0.75rem; line-height: 1.3; cursor: pointer; }
.menu-actions button:hover { background: var(--raised); }
.example-actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6px; margin: 0 0 6px; }
.example-actions button {
  display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 38px; padding: 6px 10px;
  border: 1px solid var(--line); border-radius: 9px; background: var(--bg); font-size: 0.8125rem; text-align: center; cursor: pointer;
}
.example-actions button svg { width: 16px; height: 16px; flex: none; }
.example-actions button:hover { background: var(--raised); }
.switch { position: relative; width: 34px; height: 20px; flex: none; border-radius: 999px; background: var(--line); transition: background 0.15s; }
.switch::after { content: ""; position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; border-radius: 50%; background: var(--fg); transition: transform 0.15s; }
.menu-item[aria-checked="true"] .switch { background: var(--accent); }
.menu-item[aria-checked="true"] .switch::after { transform: translateX(14px); background: var(--on-accent); }
.menu-note { margin: 0 10px 6px; font-size: 0.75rem; color: var(--muted); }
#folder-pop { width: 260px; }
.menu-plain {
  display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%;
  min-height: 34px; padding: 6px 10px; margin-top: 8px; border: 1px solid var(--line); border-radius: 8px;
  background: var(--bg); color: var(--fg); font-size: 0.8125rem; line-height: 1.3; text-decoration: none; cursor: pointer;
}
.menu-plain:hover { background: var(--raised); }
.menu-plain svg { width: 15px; height: 15px; flex: none; }
.menu-plain svg.feedback-icon { width: 19px; height: 19px; }
.dialog .menu-plain.note-dup { margin-top: 18px; }
.dialog .menu-danger.note-trash { margin-top: 8px; }
.dialog.switcher { width: min(100%, 480px); align-self: start; margin-top: 10vh; }
.dialog.switcher { display: flex; flex-direction: column; overflow: hidden; max-height: calc(100% - 10vh - 16px); }
.dialog.switcher > *, .dialog.switcher > form.nf > * { flex: none; }
.dialog.switcher > .switch-list { flex: 0 1 auto; }
.switch-list { list-style: none; margin: 10px 0 0; padding: 0; max-height: min(52vh, 420px); overflow-y: auto; flex: 0 1 auto; min-height: 0; }
.switch-list button {
  display: flex; flex-direction: column; gap: 1px; width: 100%;
  padding: 8px 10px; border: 0; border-radius: 8px; background: transparent; text-align: left; cursor: pointer;
}
.switch-list button[aria-selected="true"] { background: var(--raised); }
.switch-list .sw-name { font-size: 0.9375rem; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.switch-list .sw-name.untitled { color: var(--muted); }
.switch-list .sw-meta { font-size: 0.75rem; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.switch-list .empty { padding: 10px; font-size: 0.8125rem; color: var(--muted); }
.menu-label { display: block; margin: 8px 2px 4px; font-size: 0.75rem; color: var(--muted); }
.menu-label:first-child { margin-top: 2px; }
.dialog .set-pane .menu-label, .dialog .set-pane .menu-title { margin: 22px 0 8px; font-size: 0.9375rem; font-weight: 600; color: var(--fg); }
.dialog .set-pane > .set-head + .menu-label, .dialog .set-pane > .set-head + .menu-title, .dialog .set-pane > .set-head + div > .menu-label:first-child { margin-top: 6px !important; }
.menu-input {
  width: 100%; height: 36px; padding: 0 10px;
  background: var(--bg); border: 1px solid var(--line); border-radius: 8px; font-size: 0.875rem;
}
.menu-input:focus { outline: none; border-color: var(--accent); }
.menu-row { display: flex; align-items: center; gap: 2px; }
.menu-row .menu-item { flex: 1; min-width: 0; }
.menu-x { flex: none; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 7px; background: transparent; color: var(--muted); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.menu-x svg { width: 14px; height: 14px; }
.menu-x:hover { background: var(--danger-tint); color: var(--danger); }
.menu-item > span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.menu-range { padding: 2px 10px 8px; }
.menu-range-head { display: flex; justify-content: space-between; font-size: 0.875rem; margin-bottom: 6px; }
.menu-range-head span:last-child { color: var(--muted); font-variant-numeric: tabular-nums; }
.menu-range input[type="range"] { -webkit-appearance: none; appearance: none; width: 100%; height: 20px; margin: 0; background: transparent; cursor: pointer; }
.menu-range input[type="range"]::-webkit-slider-runnable-track { height: 6px; border: 0; border-radius: 999px; background: linear-gradient(to right, var(--accent) var(--pct, 50%), var(--line) var(--pct, 50%)); }
.menu-range input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 18px; height: 18px; margin-top: -6px; border: 0; border-radius: 50%; background: var(--accent); box-shadow: 0 1px 4px rgba(0, 0, 0, 0.35); }
.menu-range input[type="range"]::-moz-range-track { height: 6px; border: 0; border-radius: 999px; background: var(--line); }
.menu-range input[type="range"]::-moz-range-progress { height: 6px; border-radius: 999px; background: var(--accent); }
.menu-range input[type="range"]::-moz-range-thumb { width: 18px; height: 18px; border: 0; border-radius: 50%; background: var(--accent); box-shadow: 0 1px 4px rgba(0, 0, 0, 0.35); }
.menu-range input[type="range"]:focus { outline: none; }
.menu-range input[type="range"]:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; border-radius: 999px; }
.menu-danger { width: 100%; min-height: 34px; padding: 6px 10px; line-height: 1.3; margin-top: 10px; border: 1px solid var(--line); border-radius: 8px; background: transparent; color: var(--danger); font-size: 0.8125rem; cursor: pointer; }
.menu-danger:hover { background: var(--danger-tint); }
.storage-meter { height: 8px; margin: 4px 10px 6px; border-radius: 999px; background: var(--line); overflow: hidden; }
.storage-meter span { display: block; height: 100%; width: 0; border-radius: inherit; background: var(--accent); }
.storage-meter.is-full span { background: var(--danger); }
.storage-text.is-full { color: var(--danger); }
.dialog-input {
  width: 100%; height: 40px; padding: 0 12px;
  background: var(--bg); border: 1px solid var(--line); border-radius: 9px; font-size: 0.9375rem;
}
.dialog-input:focus { outline: none; border-color: var(--accent); }
.statusbar.hide-saved #st-saved:not(.is-error) { display: none; }
.status-saved.is-error { color: var(--danger); }
.status-saved.is-error::before { background: var(--danger); }
.status-saved.is-unsaved { font-weight: 700; }
.status-saved.is-unsaved::before { animation: saved-blink 1.1s ease-in-out infinite; }
@keyframes saved-blink { 50% { opacity: 0.15; } }
body.no-anim .status-saved.is-unsaved::before { animation: none; }
@media (prefers-reduced-motion: reduce) { .status-saved.is-unsaved::before { animation: none; } }

kbd { font-family: var(--font-code); font-size: 0.75rem; padding: 1px 6px; border: 1px solid var(--line); border-bottom-width: 2px; border-radius: 5px; background: var(--bg); }

.toasts {
  position: fixed; left: 50%; bottom: 46px; z-index: 50; transform: translateX(-50%);
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  width: min(92vw, 440px); pointer-events: none;
}
.toast {
  position: relative; overflow: hidden; pointer-events: auto; touch-action: pan-y;
  display: flex; align-items: center; gap: 12px;
  max-width: 100%; padding: 10px 40px 12px 14px; border-radius: 10px; overflow-wrap: anywhere;
  background: var(--fg); color: var(--bg); font-size: 0.8125rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  animation: toast-in 0.18s ease-out;
}
.toast-bar {
  position: absolute; left: 0; right: 0; bottom: 0; height: 3px;
  background: var(--accent); transform-origin: left center;
  animation: toast-life linear forwards;
    opacity: 0;
}
.toast:hover .toast-bar, .toast.is-held .toast-bar { animation-play-state: paused; }
.toast--error { background: #c8333a; color: #fff; }
.toast--error .toast-bar { background: rgba(255, 255, 255, 0.75); }
.toast.is-leaving { opacity: 0; transform: translateY(6px); transition: opacity 0.2s, transform 0.2s; }
@keyframes toast-in { from { opacity: 0; transform: translateY(8px); } }
@keyframes toast-life { from { transform: scaleX(1); } to { transform: scaleX(0); } }
.menu-select {
  width: 100%; height: 36px; padding: 0 30px 0 10px;
  background: var(--bg); border: 1px solid var(--line); border-radius: 8px;
  font-size: 0.875rem; cursor: pointer;
  appearance: none; -webkit-appearance: none;
}
.menu-select:focus { outline: none; border-color: var(--accent); }
.menu-body { padding: 2px 4px 6px; }
#font-pop { width: 280px; }
.font-standin { margin: 6px 2px 0; font-size: 0.8125rem; color: var(--muted); }
.font-standin[hidden] { display: none; }
.font-sample { margin: 10px 2px 2px; font-size: 1rem; color: var(--fg); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.font-icon { font-family: "Tinos", "Times New Roman", serif; font-size: 1.125rem; font-weight: 700; line-height: 1; }
.tool-icon.is-set { color: var(--accent-text); }

.only-narrow { display: none; }
@media (max-width: 820px), (max-height: 500px) and (pointer: coarse) {
  .app[data-view="split"] .outline-btn { display: none; }
  .app { grid-template-columns: minmax(0, 1fr); grid-template-areas: "top" "main" "status"; }
  .only-narrow { display: inline-flex; }
  .sidebar {
    position: fixed; top: 0; bottom: 0; left: 0; z-index: 20; width: calc(min(86vw, 300px) + var(--sal)); padding-left: var(--sal);
        transform: translateX(calc(-100% - 48px)); transition: transform 0.2s;
    box-shadow: 0 0 40px rgba(0, 0, 0, 0.35);
  }
  .app.is-drawer .sidebar { transform: none; }
  .side-resize { display: none; }
  .seg [data-view="split"], .hide-narrow { display: none; }
    .app.has-keyboard #keys-btn.hide-narrow { display: inline-flex; }
  .app[data-view="split"] .panes { grid-template-columns: minmax(0, 1fr); }
  .app[data-view="split"] .preview { display: none; }
  .editor-wrap { --pad-x: 16px; --pad-top: 16px; }
  .preview { padding: 16px calc(16px + var(--sar)) 40vh calc(16px + var(--sal)); border-left: 0; }
    .preview:has(.h-fold) { padding-left: calc(30px + var(--sal)); }
  .statusbar { --st-gap: 10px; }
    .md-bottom { display: flex; align-items: center; gap: 4px; padding: 2px calc(8px + var(--sar)) 2px calc(8px + var(--sal)); border-top: 1px solid var(--line); background: var(--bg); }
  .md-bottom .md-tools, .md-bottom .code-keys { flex: 1; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; overscroll-behavior-x: contain; }
  .md-bottom .md-tools::-webkit-scrollbar, .md-bottom .code-keys::-webkit-scrollbar { display: none; }
  .md-bottom .code-keys button { flex: none; min-width: 36px; padding: 0 4px; }
  .support:hover, .support:focus-visible { width: 34px; }
  .support span { display: none; }
}
@media (max-width: 820px) and (hover: hover) and (pointer: fine) {
  #keys-btn.hide-narrow { display: inline-flex; }
}
@media (max-width: 820px) and (pointer: coarse), (max-height: 500px) and (pointer: coarse) {
  .status-optional { display: none; }
}
@media (max-height: 500px) and (pointer: coarse) {
  .brand-row { display: none; }
}
@media (max-width: 320px) {
    .sidebar { width: 100vw; box-shadow: none; border-right: 0; }
  .dialog-x.drawer-x { display: inline-flex; top: 21px; right: 12px; }
    .brand-row { justify-content: flex-end; padding-right: 63px; }
    body.no-logos .side-head { padding-top: 56px; }
  body.no-logos .dialog-x.drawer-x { top: 12px; }
}
@media (max-width: 340px) {
    .statusbar { --st-gap: 7px; padding-left: 10px; padding-right: 10px; }
}
@media (max-width: 600px) {
  .st-goal .goal-long, .st-goal .goal-bar { display: none; }
}
@media (max-width: 520px) {
  .topbar { flex-wrap: wrap; row-gap: 8px; }
  .top-actions { order: 5; flex-basis: 100%; justify-content: center; }
  .app.is-focus .topbar { flex-wrap: nowrap; }
  .app.is-focus .top-actions { order: 0; flex-basis: auto; }
}
.timer-btn { color: var(--fg); }
.timer-btn.is-running { color: var(--accent-text); }
.timer-widget {
  position: absolute; top: 10px; right: calc(16px + var(--sar)); z-index: 5;
  display: inline-flex; align-items: center; gap: 7px;
  height: 34px; padding: 0 14px;
  border: 1px solid var(--line); border-radius: 999px;
  background: var(--panel); color: var(--fg);
  font-family: var(--font-code); font-size: 0.9375rem; font-variant-numeric: tabular-nums;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.28);
  cursor: pointer;
}
.timer-widget:hover { background: var(--raised); }
.timer-widget svg { width: 14px; height: 14px; flex: none; }
.timer-widget.is-paused { color: var(--muted); }
.timer-widget.is-done { background: var(--danger); border-color: var(--danger); color: #fff; animation: timer-flash 0.5s steps(1) 6; }
@keyframes timer-flash { 50% { background: transparent; color: var(--danger); } }
.timer-widget.is-leaving { opacity: 0; transition: opacity 0.4s; }
.timer-pop {
  position: fixed; top: 0; left: 0; z-index: 30;
  width: 250px; padding: 14px;
  border-radius: 12px; background: var(--panel); border: 1px solid var(--line);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4);
}
.timer-pop-time { margin: 0 0 12px; font-family: var(--font-code); font-size: 1.375rem; font-variant-numeric: tabular-nums; text-align: center; }
.timer-pop-label { margin: 0 0 6px; font-size: 0.8125rem; font-weight: 600; color: var(--muted); }
.timer-add { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-bottom: 12px; }
.timer-add button, .timer-presets button {
  min-width: 0; padding: 0 4px; white-space: nowrap;
  height: 32px; border: 1px solid var(--line); border-radius: 8px; background: var(--bg);
  font-family: var(--font-code); font-size: 0.8125rem; cursor: pointer;
}
.timer-add button:hover, .timer-presets button:hover { background: var(--raised); }
.timer-pop-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.timer-pop-actions .btn { height: 36px; padding: 0 10px; }
.btn-primary { background: var(--accent); border-color: var(--accent); color: var(--on-accent); font-weight: 600; }
.btn-primary:hover { background: var(--accent-2); }
.btn-primary:disabled { opacity: 0.45; cursor: not-allowed; }
.btn-danger-text { color: var(--danger); }
.btn-danger-text:hover { background: var(--danger-tint); }
.clock-input { display: flex; justify-content: center; align-items: flex-start; gap: 6px; margin: 4px 0 16px; }
.clock-unit { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.clock-field {
  width: 3.6ch; padding: 8px 0;
  border: 1px solid var(--line); border-radius: 10px; background: var(--bg);
  font-family: var(--font-code); font-size: 2.25rem; line-height: 1.1; text-align: center; font-variant-numeric: tabular-nums;
  caret-color: var(--accent);
}
.clock-field:focus { outline: none; border-color: var(--accent); }
.clock-unit span { font-size: 0.75rem; color: var(--muted); }
.clock-sep { padding-top: 10px; font-family: var(--font-code); font-size: 2rem; color: var(--muted); }
.timer-presets { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; margin-bottom: 14px; }
@media (max-width: 380px) {
  .clock-field { font-size: 1.75rem; }
  .clock-sep { padding-top: 8px; font-size: 1.5rem; }
}
@media (max-width: 340px) {
  .clock-input { gap: 3px; }
  .clock-field { font-size: 1.5rem; }
  .timer-presets { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.check-row { display: flex; align-items: center; gap: 8px; font-size: 0.875rem; cursor: pointer; }
.check-row input { width: 17px; height: 17px; margin: 0; accent-color: var(--accent); }

.outline-btn {
  position: absolute; top: 10px; right: var(--outline-right, 16px); z-index: 5;
  display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; padding: 0;
  border: 1px solid var(--line); border-radius: 9px;
  background: var(--bg); color: var(--fg); cursor: pointer;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
}
.outline-btn:hover, .outline-btn[aria-expanded="true"] { background: var(--raised); }
.outline-btn svg { width: 18px; height: 18px; }
.outline-btn[hidden] { display: none; }
.timer-widget:not([hidden]) ~ .outline-btn { top: 52px; }
.app.is-pip .outline-btn { display: none; }
.app.is-typing-note[data-view="write"] .outline-btn { display: none; }
.pip-panes:not(.is-preview) .outline-btn, .pip-panes .pip-list:not([hidden]) ~ .outline-btn { display: none; }
.pip-panes .outline-btn { top: 8px; width: 30px; height: 30px; }
#outline-pop { width: 290px; }
.outline-list { display: flex; flex-direction: column; gap: 1px; max-height: min(55vh, 420px); overflow-y: auto; }
.outline-item { flex: none;
  display: block; width: 100%; padding: 6px 10px 6px calc(10px + var(--lvl, 0) * 14px);
  border: 0; border-radius: 7px; background: transparent; color: var(--fg);
  font: inherit; font-size: 0.875rem; text-align: left; cursor: pointer;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.outline-item:hover, .outline-item:focus-visible { background: var(--raised); outline: none; }
.outline-item.is-top { font-weight: 600; }
.outline-item.is-deep { color: var(--muted); }

.edit-btn {
  position: absolute; right: calc(16px + var(--sar)); bottom: calc(16px + env(safe-area-inset-bottom, 0px)); z-index: 6;
  display: inline-flex; align-items: center; justify-content: center;
  width: 52px; height: 52px; padding: 0; border: 0; border-radius: 16px;
  background: var(--accent); color: var(--on-accent); cursor: pointer;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.3);
}
.edit-btn svg { width: 22px; height: 22px; }
.edit-btn[hidden] { display: none; }
.app[data-view="preview"] .edit-btn, .app[data-view="read"] .edit-btn, .app.is-pip .edit-btn { display: none; }
.editor.is-edit-locked { touch-action: manipulation; caret-color: transparent; }
body:has(.app:not([data-view="preview"]):not([data-view="read"]) .edit-btn:not([hidden])) .toasts { margin-bottom: 64px; }

.install-dialog { width: min(100%, 420px); text-align: center; }
.install-logo { display: block; width: 64px; height: 64px; margin: 4px auto 12px; }
.install-dialog h2 { margin-top: 0; padding-left: 40px; }
.install-actions { justify-content: center; }
.install-actions .btn { min-width: 110px; }
.install-steps { margin: 4px 0 0; padding-left: 1.3em; text-align: left; line-height: 1.6; }
.install-note { margin: 10px 0 0; text-align: left; color: var(--muted); font-size: 0.875rem; }
.install-note a { color: var(--accent-text); font-weight: 600; text-decoration-thickness: 2px; text-underline-offset: 3px; }
@media (max-width: 359px) { #install-btn { display: none; } }
.install-what { margin-top: 16px; text-align: left; }
.install-what b { font-weight: 600; color: var(--fg); }

.st-goal { display: inline-flex; align-items: center; gap: 6px; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; cursor: pointer; }
.st-goal svg, .pip-status svg { width: 12px; height: 12px; flex: none; }
.pip-status svg { width: 11px; height: 11px; margin-right: 5px; vertical-align: -1px; }
#pip-goal.is-done { color: var(--accent-text); }
.st-goal .goal-bar { width: 44px; height: 4px; border-radius: 999px; background: var(--line); overflow: hidden; }
.st-goal .goal-bar span { display: block; height: 100%; width: 0; background: var(--accent); border-radius: inherit; }
.st-goal.is-done { color: var(--accent-text); }
.goal-input { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: 4px 10px; margin: 14px 0 14px; }
.clock-field.goal-field { width: 7.2ch; padding-left: 6px; padding-right: 6px; }
.goal-input span { font-size: 0.9375rem; color: var(--muted); }
.confetti-canvas { position: fixed; inset: 0; z-index: 80; pointer-events: none; }

.dialog.sync-dialog { width: min(100%, 460px); }
.sync-lead { margin: 4px 0 12px; font-size: 0.875rem; line-height: 1.55; }
.sync-choices { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6px; margin: 0 0 8px; }
.sync-choices button, .sync-actions button {
  display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 38px; padding: 6px 10px;
  border: 1px solid var(--line); border-radius: 9px; background: var(--bg); font-size: 0.8125rem; text-align: center; cursor: pointer;
}
.sync-choices button svg, .sync-actions button svg, .sync-state svg { width: 16px; height: 16px; flex: none; }
.sync-choices button:hover, .sync-actions button:hover { background: var(--raised); }
.sync-choices button.is-suggested { border-color: var(--accent); box-shadow: 0 0 0 1px var(--accent); }
.sync-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 6px; margin: 8px 0 10px; }
.dialog .sync-backups-btn { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; margin: 0 0 10px; }
.sync-backups-btn svg { width: 16px; height: 16px; flex: none; }
.sync-backup-list { display: grid; gap: 6px; margin: 4px 0 8px; }
.sync-backup-list button { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 38px; padding: 6px 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--bg); color: var(--fg); font: inherit; font-size: 0.875rem; text-align: left; cursor: pointer; }
.sync-backup-list button:hover { background: var(--raised); }
.sync-backup-size { flex: none; color: var(--muted); font-family: var(--font-code); font-size: 0.75rem; }
.sync-callout { margin: 4px 0 12px; padding: 10px 12px; border-radius: 9px; background: var(--raised); font-size: 0.8125rem; line-height: 1.5; }
.sync-state { display: flex; align-items: center; gap: 12px; margin: 4px 0 12px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--bg); }
.sync-state svg { width: 22px; height: 22px; color: var(--accent-text); }
body:not([data-ot-theme="light"]) .sync-state svg { color: var(--accent); }
body .sync-state.is-error svg, body .sync-state.is-reconnect svg, body .sync-state.is-offline svg, body .sync-state.is-update-needed svg { color: var(--muted); }
.sync-state b { display: block; font-size: 0.875rem; font-weight: 600; }
.sync-state span { display: block; margin-top: 2px; font-size: 0.75rem; color: var(--muted); }
.sync-state.is-syncing svg { animation: sync-pulse 1.2s ease-in-out infinite; }
@keyframes sync-pulse { 50% { opacity: 0.35; } }
.sync-steps { margin: 0 0 12px; padding-left: 1.3em; font-size: 0.8125rem; line-height: 1.55; }
.sync-steps li { margin: 4px 0; }
.sync-qr { display: grid; place-items: center; width: min(100%, 220px); aspect-ratio: 1; margin: 4px auto 10px; padding: 8px; border-radius: 12px; background: #fff; color: #1f1d30; font-size: 0.75rem; text-align: center; }
.sync-qr svg { width: 100%; height: 100%; display: block; }
.sync-qr-credit { margin: -2px 0 12px; font-size: 0.75rem; color: var(--muted); text-align: center; }
.sync-qr-credit a { display: inline-flex; align-items: center; gap: 4px; margin-left: 3px; color: var(--accent-text); font-weight: 700; text-decoration: none; vertical-align: -3px; }
body:not([data-ot-theme="light"]) .sync-qr-credit a { color: var(--accent); }
.sync-qr-credit a:hover { text-decoration: underline; }
.sync-qr-credit img { width: 16px; height: 16px; flex: none; image-rendering: pixelated; }
.drive-logo { width: 18px; height: 18px; flex: none; }
.sync-paste { display: flex; gap: 6px; margin: 0 0 10px; }
.sync-paste input { flex: 1; min-width: 0; padding: 8px 10px; border: 1px solid var(--line); border-radius: 8px; background: var(--bg); font-size: 0.8125rem; }
.sync-paste input:focus { outline: none; border-color: var(--accent); }
.sync-paste .menu-plain { flex: none; width: auto; }
.sync-actions .sync-primary, .dialog .sync-primary { border-color: var(--accent); }
.sync-how, .install-what { margin-top: 12px; font-size: 0.8125rem; }
.sync-how summary, .install-what summary { cursor: pointer; color: var(--muted); font-weight: 600; }
.sync-how ul, .install-what ul { margin: 8px 0 0; padding-left: 1.2em; line-height: 1.55; }
.sync-how li, .install-what li { margin: 4px 0; }
.sync-demo { margin-top: 2px; }

@media (prefers-reduced-motion: reduce) {
  .sidebar, .support, .support span { transition: none; }
  .toast { animation: none; }
  .toast.is-leaving { transition: none; }
  .timer-widget.is-done { animation: none; }
  .timer-widget.is-leaving { transition: none; }
  .sync-state.is-syncing svg, .st-sync.is-syncing svg { animation: none; }
}

:where(body.anim) :where(button, a, input, select, summary, [role="switch"], .note-item, .folder-item, .switch-list li) {
  transition: background-color 0.14s ease, border-color 0.14s ease, color 0.14s ease, box-shadow 0.14s ease, opacity 0.14s ease, filter 0.14s ease;
}
body.anim .scrim { transition: opacity 0.16s ease, display 0.16s allow-discrete; }
body.anim .scrim .dialog { transition: transform 0.2s cubic-bezier(0.2, 0.8, 0.3, 1), opacity 0.16s ease; }
body.anim .scrim[hidden] { opacity: 0; pointer-events: none; }
body.anim .scrim[hidden] .dialog { opacity: 0; transform: scale(0.95); }
body.anim #switch-dialog[hidden] .dialog { transform: translateY(8px) scale(0.98); }
body.anim .menu-pop, body.anim .timer-pop, body.anim .more-panel { transition: opacity 0.13s ease, transform 0.15s cubic-bezier(0.2, 0.8, 0.3, 1), display 0.13s allow-discrete; transform-origin: top center; }
body.anim .menu-pop[hidden], body.anim .timer-pop[hidden], body.anim .more-panel[hidden] { opacity: 0; transform: translateY(-4px) scale(0.98); pointer-events: none; }
@starting-style {
  body.anim .scrim:not([hidden]) { opacity: 0; }
  body.anim .scrim:not([hidden]) .dialog { opacity: 0; transform: scale(0.95); }
  body.anim #switch-dialog:not([hidden]) .dialog { transform: translateY(8px) scale(0.98); }
  body.anim .menu-pop:not([hidden]), body.anim .timer-pop:not([hidden]), body.anim .more-panel:not([hidden]) { opacity: 0; transform: translateY(-4px) scale(0.98); }
}
body.anim .switch { transition: background-color 0.2s ease; }
body.anim .switch::after { transition: transform 0.22s cubic-bezier(0.3, 1.4, 0.5, 1), background-color 0.2s ease, width 0.12s ease; }
body.anim .menu-item[role="switch"]:active .switch::after { width: 17px; }
body.anim .menu-item[aria-checked="true"]:active .switch::after { transform: translateX(11px); }
::view-transition-old(root), ::view-transition-new(root) { animation-duration: 0.22s; animation-timing-function: ease; }
html[data-slide] .panes { view-transition-name: note-panes; }
html[data-slide]::view-transition-old(root), html[data-slide]::view-transition-new(root) { animation: none; }
html[data-slide="next"]::view-transition-old(note-panes) { animation: slide-out-left 0.38s cubic-bezier(0.16, 1, 0.3, 1) both; }
html[data-slide="next"]::view-transition-new(note-panes) { animation: slide-in-right 0.38s cubic-bezier(0.16, 1, 0.3, 1) both; }
html[data-slide="back"]::view-transition-old(note-panes) { animation: slide-out-right 0.38s cubic-bezier(0.16, 1, 0.3, 1) both; }
html[data-slide="back"]::view-transition-new(note-panes) { animation: slide-in-left 0.38s cubic-bezier(0.16, 1, 0.3, 1) both; }
@keyframes slide-out-left { to { transform: translateX(-100%); } }
@keyframes slide-in-right { from { transform: translateX(100%); } }
@keyframes slide-out-right { to { transform: translateX(100%); } }
@keyframes slide-in-left { from { transform: translateX(-100%); } }
body.no-anim .sidebar, body.no-anim .support, body.no-anim .support span, body.no-anim .folder-item .chev, body.no-anim .pip-bar-toggle svg,
body.no-anim .switch, body.no-anim .switch::after, body.no-anim .toast.is-leaving, body.no-anim .timer-widget.is-leaving { transition: none; }
body.no-anim .toast { animation: none; }
body.no-anim .st-sync.is-syncing svg, body.no-anim .sync-state.is-syncing svg { animation: none; }

@media (pointer: coarse) {
  .icon-btn { width: 40px; height: 40px; }
  .text-btn { height: 40px; }
  .seg button { height: 36px; }
  .tool-icon { width: 40px; height: 40px; }
  .md-tools button { height: 40px; min-width: 40px; }
  .more-panel button { height: 40px; min-width: 40px; }
  .code-keys button { height: 40px; }
    .md-bottom .md-tools button, .md-bottom .code-keys button, .md-bottom .tool-icon { height: 36px; }
  .lang-btn { height: 40px; }
  .new-more { width: 40px; height: 40px; }
  .new-split .new-note { height: 40px; }
  .find-btn { min-width: 40px; height: 40px; }
  .pip-bar .tool-icon, .pip-head .tool-icon { width: 36px; height: 36px; }
    .st-eol { position: relative; }
  .st-eol::after { content: ""; position: absolute; inset: -12px -8px; }
  .pop-x::after, .dialog-x::after { content: ""; position: absolute; inset: -8px; }
}
