/* FOXY Studio: an original, additive appearance. Existing themes are untouched. */
html.foxy-design[data-foxy-design=studio] {
 scrollbar-color:#b7bcc3 transparent; scrollbar-width:thin;
 --fx-sidebar:264px; --fx-bg:#f4f4f4; --fx-surface:#fff; --fx-subtle:#f7f7f7;
 --fx-text:#22252a; --fx-muted:#686d76; --fx-line:#e7e8ea; --fx-hover:#eeeff0;
 --fx-accent:#ff7800; --fx-accent-ink:#a74300; --fx-accent-hover:#f16f00;
 --fx-accent-soft:#ffbf87; --fx-tint:#fff0e2; --fx-ring:#ff780025;
 --fx-on-accent:#21252a; --fx-shadow:0 2px 2px #20212402;
 --border-radius-sm:8px; --border-radius-md:12px; --border-radius-lg:20px;
}
html.foxy-design[data-foxy-design=studio]:is([data-theme=dark],[data-theme=space]) {
 --fx-bg:#15171a; --fx-surface:#212428; --fx-subtle:#292c31; --fx-text:#f1f2f3;
 --fx-muted:#b0b3b9; --fx-line:#383c42; --fx-hover:#32363c;
 --fx-accent:#ff8a24; --fx-accent-ink:#ffb677; --fx-accent-hover:#ff9b43;
 --fx-tint:#382c22; --fx-shadow:none;
}
html[data-foxy-design=studio] .foxy-ui .fx-sidebar { background:#202329; border:0; box-shadow:none; padding:24px 16px 18px; color:#f8f8f8; }
html[data-foxy-design=studio] .foxy-ui .fx-brand { width:100%; padding:8px 10px 24px; gap:14px; margin:0 0 24px; border-bottom:1px solid #383b41; }
html[data-foxy-design=studio] .foxy-ui .fx-brand img { width:78px; height:84px; filter:drop-shadow(0 6px 9px #0004); }
html[data-foxy-design=studio] .foxy-ui .fx-brand>span { color:#fff; font-size:30px; letter-spacing:1.4px; }
html[data-foxy-design=studio] .foxy-ui .fx-sidebar nav { gap:8px; }
html[data-foxy-design=studio] .foxy-ui :is(.fx-sidebar nav a,.fx-settings-link) { min-height:52px; padding:14px 16px; color:#b8bbc4; border-radius:13px; font-size:16px; font-weight:550; }
html[data-foxy-design=studio] .foxy-ui :is(.fx-sidebar nav a,.fx-settings-link):hover { background:#30343b; color:#fff; }
html[data-foxy-design=studio] .foxy-ui :is(.fx-sidebar nav a,.fx-settings-link)[aria-current=page] { background:#ff8a24; color:#202329; box-shadow:0 5px 16px #0002; font-weight:700; }
html[data-foxy-design=studio] .foxy-ui .fx-nav-count { background:#353940; border:0; border-radius:7px; color:#e0e2e6; min-width:24px; height:24px; }
html[data-foxy-design=studio] .foxy-ui [aria-current=page] .fx-nav-count { background:#20232920; color:#202329; }
html[data-foxy-design=studio] .foxy-ui .fx-sidebar-bottom { padding-top:32px; }
html[data-foxy-design=studio] .foxy-ui .fx-profile { border-color:#383b41; color:#f7f7f8; padding:22px 8px 0; margin-top:18px; font-size:14px; }
html[data-foxy-design=studio] .foxy-ui .fx-profile :is(small,.fx-icon) { color:#aeb3bc; }
html[data-foxy-design=studio] .foxy-ui .fx-avatar { border-radius:13px; width:42px; height:42px; background:#3b332e; color:#ffb574; }
html[data-foxy-design=studio] .foxy-ui .fx-topbar { min-height:80px; height:80px; padding:0 40px; border:0; background:var(--fx-surface); }
html[data-foxy-design=studio] .foxy-ui .fx-server-address { font-size:14px; color:var(--fx-muted); gap:12px; }
html[data-foxy-design=studio] .foxy-ui .fx-server-address code { background:var(--fx-subtle); border:0; padding:8px 12px; border-radius:8px; font-size:14px; }
html[data-foxy-design=studio] .foxy-ui .fx-design-switch { display:flex; align-items:center; min-height:42px; max-width:none; padding:10px 14px; border:1px solid var(--fx-line); border-radius:12px; color:var(--fx-text); background:var(--fx-surface); font-size:14px; }
html[data-foxy-design=studio] .foxy-ui .fx-design-switch::before { content:''; width:12px; height:12px; margin-right:9px; border-radius:50%; background:conic-gradient(#ff7800 0 50%,#202329 50% 100%); box-shadow:0 0 0 3px var(--fx-hover); }
html[data-foxy-design=studio] .foxy-ui .fx-content { max-width:1616px; padding:36px 40px 56px; }
html[data-foxy-design=studio] .foxy-ui .fx-page-heading { margin-bottom:26px; }
html[data-foxy-design=studio] .foxy-ui .fx-page-heading h1 { margin:0; font-size:40px; line-height:1.2; font-weight:750; letter-spacing:-1.4px; }
html[data-foxy-design=studio] .foxy-ui .fx-button { border-radius:12px; min-height:48px; padding:12px 18px; font-size:16px; font-weight:650; }
html[data-foxy-design=studio] .foxy-ui .fx-button:hover:not(:disabled) { transform:none; box-shadow:none; background:var(--fx-hover); }
html[data-foxy-design=studio] .foxy-ui .fx-button.fx-primary:hover:not(:disabled) { background:var(--fx-accent-hover); }
html[data-foxy-design=studio] .foxy-ui .fx-card { border:0; border-radius:20px; box-shadow:var(--fx-shadow); }
html[data-foxy-design=studio] .foxy-ui .fx-card h2 { font-size:20px; font-weight:700; letter-spacing:-.4px; }
html[data-foxy-design=studio] .foxy-ui .fx-card-heading { padding:24px; }
html[data-foxy-design=studio] .foxy-ui .fx-card-heading h2 { display:flex; align-items:center; gap:12px; }
html[data-foxy-design=studio] .foxy-ui .fx-card-heading h2::before { content:''; width:5px; height:24px; border-radius:3px; background:var(--fx-accent-soft); flex:none; }
html[data-foxy-design=studio] .foxy-ui .fx-proxy-tabs { width:max-content; max-width:100%; border:0; background:var(--fx-hover); border-radius:13px; padding:5px; gap:4px; margin-bottom:24px; }
html[data-foxy-design=studio] .foxy-ui .fx-proxy-tabs>button { height:44px; border:0; border-radius:9px; padding:10px 18px; font-size:15px; }
html[data-foxy-design=studio] .foxy-ui .fx-proxy-tabs>button[aria-selected=true] { background:var(--fx-surface); color:var(--fx-text); box-shadow:0 2px 5px #2021240c; }
html[data-foxy-design=studio] .foxy-ui .fx-metrics { background:var(--fx-surface); border-radius:20px; padding:10px; gap:8px; }
html[data-foxy-design=studio] .foxy-ui .fx-metric { border:0; box-shadow:none; border-radius:14px; background:var(--fx-subtle); padding:22px; }
html[data-foxy-design=studio] .foxy-ui .fx-metric:first-child { background:var(--fx-tint); }
html[data-foxy-design=studio] .foxy-ui .fx-metric>strong { font-size:44px; font-weight:700; letter-spacing:-1.7px; padding:0; margin:20px 0 8px; }
html[data-foxy-design=studio] .foxy-ui .fx-metric>div { font-size:15px; color:var(--fx-text); }
html[data-foxy-design=studio] .foxy-ui .fx-metric .fx-icon { width:22px; height:22px; color:var(--fx-muted); }
html[data-foxy-design=studio] .foxy-ui .fx-proxy-grid { grid-template-columns:minmax(0,1fr) 300px; gap:24px; }
html[data-foxy-design=studio] .foxy-ui .fx-connection-card { background:var(--fx-surface); padding:26px; }
html[data-foxy-design=studio] .foxy-ui .fx-connection-icon { border:0; width:44px; height:44px; border-radius:14px; margin-bottom:20px; }
html[data-foxy-design=studio] .foxy-ui .fx-connection-card>div { border-bottom:1px solid var(--fx-line); padding:12px 0; }
html[data-foxy-design=studio] .foxy-ui .fx-search input { height:48px!important; font-size:16px!important; background:var(--fx-subtle)!important; border-color:transparent!important; border-radius:12px!important; }
html[data-foxy-design=studio] .foxy-ui .fx-session-tools .fx-select-trigger { height:48px; min-height:48px; font-size:15px; border-radius:12px; }
html[data-foxy-design=studio] .foxy-ui .fx-table-head { font-size:13px; letter-spacing:0; border:0; background:var(--fx-subtle); }
html[data-foxy-design=studio] .foxy-ui .fx-session-row { padding-block:26px; }
html[data-foxy-design=studio] .foxy-ui .fx-session-name strong { font-size:16px; }
html[data-foxy-design=studio] .foxy-ui .fx-session-symbol { width:48px; height:48px; border:0; border-radius:14px; color:var(--fx-accent-ink); background:var(--fx-tint); }
html[data-foxy-design=studio] .foxy-ui .fx-badge { border-radius:8px; padding:6px 10px; color:var(--fx-muted); }
html[data-foxy-design=studio] .foxy-ui .fx-overview-bottom { gap:24px; }
html[data-foxy-design=studio] .foxy-ui .fx-compact-icon { background:var(--fx-hover); color:var(--fx-text); border-radius:14px; }
html[data-foxy-design=studio] .foxy-ui .fx-compose-grid { grid-template-columns:minmax(0,1fr) 280px; }
html[data-foxy-design=studio] .foxy-ui .fx-field textarea { font-size:16px; background:var(--fx-subtle)!important; border-radius:12px; }
html[data-foxy-design=studio] .foxy-ui .fx-telegram { padding:36px; }
html[data-foxy-design=studio] .foxy-ui .fx-telegram h2 { font-size:28px; }
html[data-foxy-design=studio] .foxy-ui .fx-telegram-info { background:var(--fx-subtle); border:0; border-radius:14px; }
html[data-foxy-design=studio] .foxy-ui .fx-native-empty { border:0; border-radius:20px; padding:60px 24px; }
html[data-foxy-design=studio] .foxy-ui .fx-session-dialog { border-radius:24px; border:1px solid var(--fx-line); width:720px; }
html[data-foxy-design=studio] .foxy-ui .fx-detail-tabs { background:var(--fx-subtle); padding:6px; margin:20px 24px 0; border:0; border-radius:12px; gap:4px; }
html[data-foxy-design=studio] .foxy-ui .fx-detail-tabs button { flex:1; min-height:44px; border:0; border-radius:8px; padding:8px 12px; }
html[data-foxy-design=studio] .foxy-ui .fx-detail-tabs button[aria-selected=true] { background:var(--fx-surface); color:var(--fx-text); box-shadow:0 2px 6px #2021240b; }
@media(max-width:1200px) {
 html[data-foxy-design=studio] .foxy-ui .fx-content { padding:28px; }
 html[data-foxy-design=studio] .foxy-ui .fx-topbar { padding-inline:28px; }
 html[data-foxy-design=studio] .foxy-ui .fx-proxy-grid { grid-template-columns:minmax(0,1fr); }
 html[data-foxy-design=studio] .foxy-ui .fx-metric { padding:18px; }
}
@media(max-width:800px) {
 html[data-foxy-design=studio] .foxy-ui .fx-topbar { height:auto; min-height:76px; padding:12px 20px; gap:12px; flex-wrap:wrap; }
 html[data-foxy-design=studio] .foxy-ui .fx-content { padding:26px 20px 40px; }
 html[data-foxy-design=studio] .foxy-ui .fx-page-heading h1 { font-size:34px; letter-spacing:-1px; }
 html[data-foxy-design=studio] .foxy-ui .fx-menu-button { background:var(--fx-hover); border:0; border-radius:10px; color:var(--fx-text); }
 html[data-foxy-design=studio] .foxy-ui .fx-server-address { order:5; flex-basis:100%; border-top:1px solid var(--fx-line); padding-top:10px; }
 html[data-foxy-design=studio] .foxy-ui .fx-server-address code { padding:3px 8px; }
 html[data-foxy-design=studio] .foxy-ui .fx-design-switch { margin-left:auto; font-size:13px; padding:10px; }
 html[data-foxy-design=studio] .foxy-ui .fx-compose-grid { grid-template-columns:1fr; }
}
@media(max-width:520px) {
 html[data-foxy-design=studio] .foxy-ui .fx-content { padding:24px 16px 32px; }
 html[data-foxy-design=studio] .foxy-ui .fx-topbar { padding:12px 16px; gap:10px; }
 html[data-foxy-design=studio] .foxy-ui .fx-page-heading { flex-wrap:wrap; gap:16px; margin-bottom:22px; }
 html[data-foxy-design=studio] .foxy-ui .fx-page-heading h1 { font-size:32px; }
 html[data-foxy-design=studio] .foxy-ui .fx-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); padding:7px; gap:7px; }
 html[data-foxy-design=studio] .foxy-ui .fx-metric { padding:16px 12px; }
 html[data-foxy-design=studio] .foxy-ui .fx-metric>div { font-size:14px; gap:6px; }
 html[data-foxy-design=studio] .foxy-ui .fx-metric>strong { font-size:34px; margin-top:15px; }
 html[data-foxy-design=studio] .foxy-ui .fx-metric .fx-icon { width:18px; height:18px; }
 html[data-foxy-design=studio] .foxy-ui .fx-proxy-tabs { width:100%; }
 html[data-foxy-design=studio] .foxy-ui .fx-proxy-tabs>button { padding-inline:14px; font-size:14px; }
 html[data-foxy-design=studio] .foxy-ui .fx-card-heading { padding:20px; }
 html[data-foxy-design=studio] .foxy-ui .fx-card h2 { font-size:19px; }
 html[data-foxy-design=studio] .foxy-ui .fx-telegram { padding:26px 20px; }
 html[data-foxy-design=studio] .foxy-ui .fx-session-dialog { max-width:calc(100vw - 24px); }
 html[data-foxy-design=studio] .foxy-ui .fx-overview-bottom { grid-template-columns:1fr; gap:16px; }
}
