/* Themes are applied before the first paint by preferences.js. */
:root{color-scheme:light;--canvas:#f5f8fc;--surface:#fff;--surface-raised:#fff;--surface-soft:#f1f6fc;--surface-hover:#eaf1fa;--ink:#26384c;--muted:#6d7f94;--subtle:#8494a7;--line:#e3ebf4;--border:#cfdeec;--border-strong:#c4d4e6;--green:#3978bb;--green-hover:#2e67a3;--green-soft:#e8f2fd;--good:#278870;--good-soft:#e9f6f1;--good-line:#cde9dc;--amber:#96742a;--amber-soft:#fff7e5;--amber-line:#eadcaf;--red:#b65159;--red-soft:#fff0f1;--red-line:#efd5d9;--input-bg:#fff;--button-text:#fff;--focus-ring:#93bcea;--backdrop:#182d4659;--shadow:0 3px 8px #26486d0b;--shadow-strong:0 20px 70px #17294520;--login-story:#e8f2fd;--login-heading:#355b87;--orbit:#c7ddf3}
:root[data-theme="dark"]{color-scheme:dark;--canvas:#131d2b;--surface:#1b283b;--surface-raised:#233247;--surface-soft:#223248;--surface-hover:#2a3c54;--ink:#e5edf8;--muted:#a4b5cc;--subtle:#8196b0;--line:#304258;--border:#435b77;--border-strong:#536f8e;--green:#83b9f2;--green-hover:#a0cafa;--green-soft:#243e5d;--good:#72ceb0;--good-soft:#1c3d36;--good-line:#326253;--amber:#e3bd6f;--amber-soft:#403620;--amber-line:#665637;--red:#f0a0aa;--red-soft:#452a37;--red-line:#694050;--input-bg:#172337;--button-text:#14273d;--focus-ring:#83b9f2;--backdrop:#060c16af;--shadow:0 3px 8px #00000025;--shadow-strong:0 20px 70px #00000065;--login-story:#213954;--login-heading:#c8e1fd;--orbit:#3e5c7e}
.settings-menu{position:relative;color:var(--ink);font-size:13px;z-index:30}
.settings-menu summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:7px 11px;list-style:none;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer;user-select:none}
.settings-menu summary::-webkit-details-marker{display:none}
.settings-menu summary::marker{content:""}
.settings-menu summary:hover,.settings-menu[open] summary{color:var(--ink);background:var(--surface-hover);border-color:var(--border-strong)}
.settings-menu summary:focus-visible,.settings-menu select:focus-visible,.settings-menu button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
.settings-icon{display:inline-flex;width:16px;height:16px;align-items:center;justify-content:center;font-size:17px;line-height:1}
.settings-icon svg{width:100%;height:100%}
.settings-panel{position:absolute;right:0;top:calc(100% + 10px);width:246px;max-width:calc(100vw - 32px);padding:18px;background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-strong);display:grid;gap:9px;z-index:50}
.settings-panel>label,.settings-label{display:block;margin:0;color:var(--muted);font-size:12px;font-weight:500}
.settings-panel>label:not(:first-child){margin-top:7px}
.settings-panel select,.settings-select{box-sizing:border-box;width:100%;min-height:39px;padding:8px 11px;border:1px solid var(--border-strong);border-radius:7px;background:var(--input-bg);color:var(--ink);font:inherit}
.settings-divider{height:1px;margin:7px 0;border:0;background:var(--line)}
.settings-panel .settings-logout{display:flex;justify-content:flex-start;align-items:center;width:100%;margin:7px 0 0;padding:11px 3px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;color:var(--red);font:inherit;text-align:left;cursor:pointer}
.settings-panel .settings-logout:hover{color:var(--ink)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.login-settings{position:absolute;right:24px;top:22px}.login-card{position:relative}.settings-panel .settings-logout{font-size:12px}.settings-menu summary{font-size:11px}.settings-panel select{font-size:13px}.settings-panel label{margin:0}
@media(max-width:760px){.settings-menu summary{min-height:32px;padding:6px 9px}.settings-panel{width:238px}.top-actions{gap:12px}.login-settings{right:24px;top:25px}.login-mobile-brand{padding-right:0}}
@media(max-width:480px){.settings-menu summary{font-size:10px}.settings-panel{padding:16px}.login-settings{right:24px;top:29px}}

/* Subtle, rounded scrollbars for pages, dialogs, tables and code panes. */
:root { --scrollbar-thumb: #bccbdb; --scrollbar-hover: #94aac2; }
:root[data-theme="dark"] { --scrollbar-thumb: #4c627d; --scrollbar-hover: #718baa; }
* { scrollbar-width: thin; scrollbar-color: var(--scrollbar-thumb) transparent; }
@supports selector(::-webkit-scrollbar) {
  * { scrollbar-width: auto; scrollbar-color: auto; }
  ::-webkit-scrollbar { width: 8px; height: 8px; }
  ::-webkit-scrollbar-track, ::-webkit-scrollbar-corner { background: transparent; }
  ::-webkit-scrollbar-thumb { background: var(--scrollbar-thumb); border: 2px solid transparent; background-clip: padding-box; border-radius: 20px; }
  ::-webkit-scrollbar-thumb:hover { background-color: var(--scrollbar-hover); }
  ::-webkit-scrollbar-button { display: none; }
}
.sidebar-footer .settings-panel { top: auto; bottom: calc(100% + 12px); left: 0; right: auto; max-height: calc(100dvh - 110px); overflow-y: auto; overscroll-behavior: contain; }
@media (max-width: 760px) {
  .sidebar-footer .settings-panel { top: calc(100% + 10px); bottom: auto; left: auto; right: 0; max-height: calc(100dvh - 220px); }
  .sidebar-footer .settings-menu summary { min-height: 36px; }
}
