/* CSS · site.css · public design across ApiHost sites */
html[data-design-site][data-design-theme]{--color-paper:#000;--color-paper-raised:#0b0b0c;--color-paper-sunken:#141416;--color-ink:#f5f5f7;--color-ink-muted:#a1a1aa;--color-border:#29292e;--color-accent:#b4a2ff;--color-accent-ink:#141019;--color-accent-soft:#1b1728;--color-success:#8bdcb3;--color-status-success:#8bdcb3;--color-status-warning:#ebc58c;--color-warning:#ebc58c;--color-warning-soft:#292316;--color-warning-ink:#ebc58c;--color-error:#ffa0a0;--color-error-soft:#28191b;--color-success-soft:#12251b;--color-overlay:rgba(0,0,0,.75);--bg:var(--color-paper);--bg-elev:var(--color-paper-raised);--bg-elev-2:var(--color-paper-sunken);--border:var(--color-border);--border-strong:#45454e;--text:var(--color-ink);--text-dim:var(--color-ink-muted);--text-mute:var(--color-ink-muted);--accent:var(--color-accent);--accent-hover:#c6b8ff;--accent-dim:#24202f;--success:var(--color-success);--warning:var(--color-warning);--danger:var(--color-error);--code-bg:var(--color-paper);--radius:10px;--radius-sm:6px;--shadow:none;color-scheme:dark;scroll-padding-top:110px}
html[data-design-site][data-design-theme=light]{--color-paper:#fafafa;--color-paper-raised:#fff;--color-paper-sunken:#f0f0f3;--color-ink:#18181b;--color-ink-muted:#60606b;--color-border:#dddde3;--color-accent:#6550b2;--color-accent-ink:#fff;--color-accent-soft:#f0ebff;--color-success:#21754d;--color-status-success:#21754d;--color-status-warning:#92631f;--color-warning:#92631f;--color-warning-ink:#92631f;--color-warning-soft:#fff7e4;--color-error:#b42c3c;--color-error-soft:#fff0f2;--color-success-soft:#eaf7ef;--accent-hover:#4f3c96;--accent-dim:#f0ebff;--border-strong:#b8b8c4;color-scheme:light}
html[data-design-site] body{padding-top:0;background:var(--color-paper);color:var(--color-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.01em}
html[data-design-site] :is(h1,h2){text-wrap:balance}
html[data-design-site] :is(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}
#design-preview-toolbar{position:fixed;inset:0 0 auto;z-index:150;min-height:44px;display:flex;align-items:center;justify-content:center;gap:20px;background:var(--color-paper-raised);color:var(--color-ink-muted);border-bottom:1px solid var(--color-border);padding:7px 18px;font:12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;white-space:nowrap;overflow-x:auto}
#design-preview-toolbar a{color:var(--color-ink-muted);text-decoration:none;padding:3px 0}#design-preview-toolbar a:hover{color:var(--color-accent)}#design-preview-toolbar>span{color:var(--color-accent);font-size:11px}#design-preview-toolbar button{font:inherit;color:var(--color-ink);background:transparent;border:1px solid var(--color-border);border-radius:5px;padding:3px 9px;cursor:pointer;white-space:nowrap}
html[data-design-site] .language-trigger,html[data-design-site] .language-menu{background:var(--color-paper-raised);border-color:var(--color-border);color:var(--color-ink);box-shadow:none}
html[data-design-site] .language-menu button:hover,html[data-design-site] .language-menu button:focus-visible{background:var(--color-accent-soft)}html[data-design-site] .language-check{color:var(--color-accent)}
/* Landing, API documentation, English home and legal pages. */
html[data-design-site=landing] header.sticky{top:0;background:var(--color-paper);backdrop-filter:none}
html[data-design-site=landing] header nav{font-family:inherit;font-size:12px;gap:22px}html[data-design-site=landing] header>a,html[data-design-site=landing] header [aria-label*="ApiHost"]{font-family:inherit;font-size:25px;letter-spacing:-1.2px;font-weight:650}html[data-design-site=landing] header [aria-hidden=true]{animation:none}
html[data-design-site=landing] h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(38px,5vw,68px);letter-spacing:-.045em;line-height:1.08}
html[data-design-site=landing] h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(26px,3vw,38px);letter-spacing:-.03em}
html[data-design-site=landing] h3{font-weight:500}html[data-design-site=landing] p{line-height:1.75}
html[data-design-site=landing] #top>div{padding-top:90px;padding-bottom:90px;gap:58px}html[data-design-site=landing] #top p.font-mono{font-family:inherit;font-size:13px;color:var(--color-ink-muted)}html[data-design-site=landing] #top .text-4xl.font-mono{font-family:inherit;font-size:40px;font-weight:500;letter-spacing:-1px}
html[data-design-site=landing] .bg-accent{background:var(--color-ink);color:var(--color-paper)}html[data-design-site=landing] a.rounded-full{border-radius:6px;transform:none;font-size:13px}html[data-design-site=landing] .rounded-2xl{border-radius:12px}html[data-design-site=landing] .shadow-xl,html[data-design-site=landing] .shadow-lg{box-shadow:none}
html[data-design-site=landing] main>.max-w-3xl{max-width:900px;padding-top:64px}html[data-design-site=landing] main>.max-w-3xl>p{max-width:70ch}html[data-design-site=landing] pre{border-radius:8px;background:var(--color-paper-raised);line-height:1.8;max-width:100%;overflow:auto}html[data-design-site=landing] section[id]{scroll-margin-top:110px}html[data-design-site=landing] [aria-label="Разделы документации"]{border:1px solid var(--color-border);border-radius:8px;padding:18px;background:var(--color-paper-raised)}html[data-design-site=landing] footer{font-size:12px}
/* Real cabinet authentication, return pages and legacy fallback routes. */
html[data-design-site=cabinet] body>main h1,html[data-design-site=cabinet] body>main h2,html[data-design-site=cabinet] body>div>main h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em;line-height:1.15}
html[data-design-site=cabinet] body>main h1{font-size:clamp(32px,3.5vw,48px)}html[data-design-site=cabinet] body>main .bg-accent{background:var(--color-ink);color:var(--color-paper)}html[data-design-site=cabinet] body>main .uppercase{text-transform:none;letter-spacing:0}html[data-design-site=cabinet] body>main>section:first-child{border-right:1px solid var(--color-border)}html[data-design-site=cabinet] body>main.min-h-screen{min-height:100dvh}html[data-design-site=cabinet] body>main input{min-height:44px;border-radius:6px}html[data-design-site=cabinet] body>main .rounded-2xl{border-radius:10px}
html[data-design-site=cabinet] [data-mode] aside[class*=sidebar]{top:0}html[data-design-site=cabinet] [data-mode] header{background:var(--color-paper)}
/* Admin: all existing tabs, forms and modals keep their original behaviour. */
html[data-design-site=admin] .sidebar{top:0;background:var(--bg);padding:30px 16px 18px;width:224px;overflow-y:auto}html[data-design-site=admin] .main{margin-left:224px;padding:36px 38px;min-width:0}html[data-design-site=admin] .brand-mark{display:none}html[data-design-site=admin] .brand-name{font-size:27px;font-weight:650;letter-spacing:-1.2px}html[data-design-site=admin] .brand-name:after{content:'.';color:var(--accent)}html[data-design-site=admin] .brand{padding:0 12px 30px}html[data-design-site=admin] .nav-link{font-weight:400;font-size:13px;padding:11px 12px}html[data-design-site=admin] .nav-link.active{background:var(--bg-elev-2);color:var(--text);border-left:2px solid var(--accent)}
html[data-design-site=admin] .page-header{padding-bottom:24px;margin-bottom:28px;border-bottom:1px solid var(--border)}html[data-design-site=admin] .page-header h1,html[data-design-site=admin] .login-card h1{font-family:Georgia,"Times New Roman",serif;font-size:42px;font-weight:400;letter-spacing:-1.4px;line-height:1.12}
html[data-design-site=admin] .metric-label,html[data-design-site=admin] .data-table th,html[data-design-site=admin] .card-body h3{text-transform:none;letter-spacing:0;font-weight:400}html[data-design-site=admin] .metric{padding:22px;border-radius:10px}html[data-design-site=admin] .metric-value{font-size:30px;font-weight:500;letter-spacing:-1px}html[data-design-site=admin] .card{box-shadow:none;border-radius:10px}html[data-design-site=admin] .card-head h2,html[data-design-site=admin] .card-head h3{font-weight:500}html[data-design-site=admin] button.primary{background:var(--text);color:var(--bg);border-color:var(--text)}html[data-design-site=admin] button.primary:hover{opacity:.85}html[data-design-site=admin] .data-table td{font-size:12px}html[data-design-site=admin] .data-table th{background:var(--bg-elev);font-size:12px}html[data-design-site=admin] .login-card{background:var(--bg-elev);border:1px solid var(--border);box-shadow:none;border-radius:12px;padding:36px;max-width:440px;width:calc(100% - 32px)}html[data-design-site=admin] .toolbar{flex-wrap:wrap}html[data-design-site=admin] .table-wrap{max-width:100%;overflow:auto}html[data-design-site=admin] .modal{border-radius:12px;box-shadow:none}
@media(max-width:900px){#design-preview-toolbar{justify-content:flex-start;gap:16px}#design-preview-toolbar>span{display:none}html[data-design-site=landing] #top>div{padding-top:48px;padding-bottom:48px;gap:32px}}
@media(max-width:760px){html[data-design-site=landing] header>div{padding:14px 18px;gap:10px}html[data-design-site=landing] h1{font-size:42px}html[data-design-site=landing] #top>div{padding-left:20px;padding-right:20px}html[data-design-site=landing] #top .text-4xl.font-mono{font-size:30px}html[data-design-site=landing] .px-6{padding-left:20px;padding-right:20px}html[data-design-site=landing] main>.max-w-3xl{padding-top:38px}html[data-design-site=cabinet] body>main>section{padding:28px 20px}html[data-design-site=cabinet] body>main h1{font-size:34px}html[data-design-site=admin] .sidebar{position:static;width:100%;border-right:0;border-bottom:1px solid var(--border);padding:18px 16px 10px}html[data-design-site=admin] .brand{padding-bottom:14px}html[data-design-site=admin] .sidebar nav{flex-direction:row;overflow-x:auto;gap:4px}html[data-design-site=admin] .nav-link{white-space:nowrap;font-size:12px;flex-shrink:0}html[data-design-site=admin] .sidebar-footer{display:none}html[data-design-site=admin] .main{margin:0;padding:24px 16px;max-width:100%}html[data-design-site=admin] .page-header{flex-wrap:wrap}html[data-design-site=admin] .page-header h1{font-size:34px}html[data-design-site=admin] .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-design-site=admin] .metric{padding:16px;min-width:0}html[data-design-site=admin] .metric-value{font-size:25px;overflow-wrap:anywhere}html[data-design-site=admin] .row-2{grid-template-columns:1fr}html[data-design-site=admin] .head-controls{flex-wrap:wrap}html[data-design-site=admin] .login-card{padding:24px}}
@media(prefers-reduced-motion:reduce){html[data-design-site] *,html[data-design-site] *:before,html[data-design-site] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}


html[data-design-site=landing] main :is(h1,h2,h3){overflow-wrap:anywhere}

#apihost-theme-toggle{position:fixed;right:18px;bottom:70px;z-index:80;background:var(--color-paper-raised);color:var(--color-ink);border:1px solid var(--color-border);border-radius:8px;padding:10px 14px;font:13px system-ui;cursor:pointer}

/* The early document theme is authoritative, including before React mounts. */
html[data-design-site=cabinet] [data-mode]{--color-accent:inherit;--color-accent-ink:inherit;--color-accent-soft:inherit;--color-border:inherit;--color-error:inherit;--color-error-soft:inherit;--color-ink:inherit;--color-ink-muted:inherit;--color-overlay:inherit;--color-paper:inherit;--color-paper-raised:inherit;--color-paper-sunken:inherit;--color-status-success:inherit;--color-status-warning:inherit;--color-success:inherit;--color-success-soft:inherit;--color-warning:inherit;--color-warning-ink:inherit;--color-warning-soft:inherit;color-scheme:inherit}
