:root{--bg:#f6f7fb;--surface:#fff;--surface2:#f0f3f8;--text:#16181d;--muted:#6f7785;--line:#e4e8ef;--brand:#ff5a1f;--brand2:#ef4510;--brandsoft:#fff0e9;--sidebar:#1b1e25;--sidebar2:#242932;--sideText:#f7f8fb;--sideMuted:#9ba3b1;--success:#16895a;--danger:#c83434;--shadow:0 12px 32px rgba(24,32,50,.08);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:"Segoe UI Variable Text","Segoe UI",Tahoma,Arial,sans-serif}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:292px;background:var(--sidebar);color:var(--sideText);display:flex;flex-direction:column;z-index:20}.brand{height:78px;padding:16px 20px;display:flex;align-items:center;gap:12px}.brand img{width:44px;height:44px;object-fit:contain}.brand div{display:flex;flex-direction:column}.brand strong{font-size:18px;letter-spacing:.03em}.brand span{font-size:12px;color:var(--sideMuted);margin-top:2px}.search-wrap{padding:0 14px 14px;position:relative}.search-wrap form{display:flex;align-items:center;background:var(--sidebar2);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:0 10px}.search-wrap svg{width:17px;height:17px;fill:none;stroke:#aab2bf;stroke-width:2}.search-wrap input{flex:1;min-width:0;height:40px;background:transparent;border:0;outline:0;color:white;padding:0 9px}.search-wrap kbd{font-size:10px;background:#343b47;color:#aeb6c3;border-radius:6px;padding:4px 6px}.docs-nav{overflow:auto;padding:0 10px 24px}.nav-section{margin:10px 0 18px}.nav-section-title{padding:8px 10px;display:flex;align-items:center;gap:8px;color:#8f98a8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.nav-icon,.icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}.nav-link{display:flex;align-items:center;gap:10px;color:#d9dde5;text-decoration:none;border-radius:10px;padding:9px 10px;margin:2px 0;font-size:14px}.nav-link:hover{background:rgba(255,255,255,.06);color:#fff}.nav-link.active{background:rgba(255,90,31,.17);color:#fff}.nav-link.active .nav-icon{color:#ff7d4d}.nav-children{margin-left:18px;border-left:1px solid #363b46;padding-left:7px}.nav-link.child{font-size:13px}.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding:15px 20px;color:#707a89;font-size:12px}.content{margin-left:292px;min-height:100vh}.article{width:min(920px,calc(100% - 64px));margin:0 auto;padding:64px 0 72px}.article-head{padding-bottom:28px;border-bottom:1px solid var(--line)}.crumb{color:var(--brand);font-size:12px;font-weight:700;margin-bottom:12px}.article h1{font-size:40px;line-height:1.12;margin:0 0 14px;letter-spacing:-.025em}.lead{font-size:18px;line-height:1.65;color:var(--muted);margin:0;max-width:760px}.article-body{font-size:16px;line-height:1.78;padding-top:28px}.article-body h2{font-size:27px;margin:38px 0 14px;letter-spacing:-.015em}.article-body h3{font-size:21px;margin:28px 0 10px}.article-body p{margin:12px 0}.article-body ul,.article-body ol{padding-left:25px}.article-body li{margin:7px 0}.article-body code{font-family:Consolas,"SFMono-Regular",monospace;background:#eef1f6;border:1px solid #e0e5ed;border-radius:6px;padding:2px 6px;font-size:.92em}.article-body pre{background:#1f232b;color:#f5f6f8;border-radius:14px;padding:18px;overflow:auto}.article-body pre code{background:transparent;border:0;padding:0;color:inherit}.article-body blockquote{margin:20px 0;padding:14px 18px;border-left:4px solid var(--brand);background:var(--brandsoft);border-radius:0 12px 12px 0}.article-body a{color:#db4b17;text-decoration-thickness:1px;text-underline-offset:3px}.article-body hr{border:0;border-top:1px solid var(--line);margin:34px 0}.article-body table{border-collapse:collapse;width:100%;margin:18px 0}.article-body th,.article-body td{border:1px solid var(--line);padding:10px 12px;text-align:left}.gallery-block{margin-top:40px}.gallery-block h2{font-size:27px}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.gallery figure{margin:0}.gallery-image{padding:0;border:1px solid var(--line);background:white;border-radius:14px;overflow:hidden;cursor:zoom-in;display:block;width:100%;box-shadow:var(--shadow)}.gallery-image img{display:block;width:100%;height:250px;object-fit:cover}.gallery figcaption{font-size:13px;color:var(--muted);padding:8px 2px}.article-footer{margin-top:42px;color:#9299a5;font-size:12px}.pager{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}.pager a{display:flex;flex-direction:column;text-decoration:none;color:var(--text);padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#fff}.pager a:hover{border-color:#ffbea5}.pager .next{text-align:right}.pager small{color:var(--muted);margin-bottom:5px}.search-popover{display:none;position:absolute;left:14px;right:14px;top:48px;background:#fff;color:var(--text);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);overflow:hidden;z-index:50}.search-popover.open{display:block}.search-popover a{display:block;padding:11px 12px;color:inherit;text-decoration:none;border-bottom:1px solid var(--line)}.search-popover a:last-child{border:0}.search-popover a:hover{background:#fafafa}.search-popover strong{display:block}.search-popover span{font-size:12px;color:var(--muted)}.search-results{display:grid;gap:12px;margin-top:26px}.search-results a{background:white;border:1px solid var(--line);padding:18px;border-radius:14px;text-decoration:none;color:inherit}.search-results a:hover{border-color:#ffbea5}.search-results p{color:var(--muted);margin:7px 0 0}.lightbox{position:fixed;inset:0;background:rgba(8,10,14,.9);z-index:100;display:flex;align-items:center;justify-content:center;padding:50px}.lightbox[hidden]{display:none}.lightbox img{max-width:calc(100vw - 160px);max-height:calc(100vh - 120px);object-fit:contain;border-radius:10px}.lightbox button{position:absolute;border:0;background:rgba(255,255,255,.12);color:white;cursor:pointer;border-radius:50%;width:46px;height:46px;font-size:32px}.lightbox-close{right:24px;top:20px}.lightbox-prev{left:24px}.lightbox-next{right:24px}.lightbox-caption{position:absolute;bottom:18px;color:white;font-size:14px}.mobile-menu{display:none}.login-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#1b1e25,#2b313b)}.login-card{width:min(420px,calc(100% - 30px));background:white;border-radius:20px;padding:32px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.login-card img{width:58px;display:block;margin:auto}.login-card h1{text-align:center;margin:12px 0 3px}.login-card p{text-align:center;color:var(--muted);margin:0 0 24px}.login-card label,.admin-dialog label,.editor-card label,.media-card label{display:grid;gap:7px;font-size:13px;font-weight:700;margin:12px 0}.login-card input,.admin-dialog input,.admin-dialog select,.editor-card input,.editor-card select,.editor-card textarea,.media-card input{width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;font:inherit;outline:none}.login-card input:focus,.editor-card input:focus,.editor-card textarea:focus,.editor-card select:focus{border-color:#ff9a73;box-shadow:0 0 0 3px rgba(255,90,31,.1)}button,.primary,.ghost,.danger{font:inherit}.primary,.ghost,.danger{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:10px 14px;text-decoration:none;cursor:pointer;border:0;font-weight:700}.primary{background:var(--brand);color:#fff}.primary:hover{background:var(--brand2)}.ghost{background:#eef1f5;color:#333}.danger{background:#fff0f0;color:#b92f2f}.form-error{background:#fff0f0;color:#a72828;padding:10px;border-radius:9px;margin-bottom:10px}.admin-body{background:#f5f6fa}.admin-top{height:72px;background:var(--sidebar);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:10}.admin-top .brand{height:auto;padding:0}.admin-top .brand img{width:38px;height:38px}.admin-top>div:last-child{display:flex;gap:8px;align-items:center}.admin-top form{margin:0}.admin-main,.editor-main{max-width:1280px;margin:auto;padding:28px}.admin-intro{background:white;border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:20px}.admin-intro h1{margin:0 0 5px}.admin-intro p{color:var(--muted)}.admin-section{background:#fff;border:1px solid var(--line);border-radius:16px;margin:14px 0;overflow:hidden}.admin-section-head{display:flex;align-items:center;gap:10px;padding:15px 18px;border-bottom:1px solid var(--line)}.admin-section-head>div:nth-child(2){display:flex;flex-direction:column}.admin-section-head span{color:var(--muted);font-size:12px}.admin-actions{margin-left:auto;display:flex;gap:8px}.smallbtn{padding:8px 11px;font-size:12px}.admin-pages{padding:8px}.admin-page-row{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:9px}.admin-page-row:hover{background:#f7f8fa}.admin-page-row.child{margin-left:28px}.admin-page-row a{display:flex;flex-direction:column;text-decoration:none;color:inherit;flex:1}.admin-page-row small,.pos,.visibility{font-size:11px;color:var(--muted)}.pos{width:24px}.visibility{background:#eef8f3;color:#247253;padding:4px 7px;border-radius:999px}.admin-dialog{border:0;border-radius:18px;padding:22px;width:min(520px,calc(100% - 30px));box-shadow:0 20px 70px rgba(0,0,0,.2)}.admin-dialog::backdrop{background:rgba(20,22,28,.45)}.admin-dialog h2{margin-top:0}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important}.check input{width:auto!important}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px}.editor-card{background:white;border:1px solid var(--line);border-radius:18px;padding:20px}.editor-title-row{display:flex;align-items:center;justify-content:space-between}.editor-title-row h1{margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.rich-toolbar{display:flex;flex-wrap:wrap;gap:5px;padding:9px;background:#f3f5f8;border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0;margin-top:16px}.rich-toolbar button{border:1px solid #dfe3e9;background:white;border-radius:7px;padding:6px 9px;cursor:pointer}.rich-editor{min-height:520px;border:1px solid var(--line);border-radius:0 0 12px 12px;padding:18px;outline:none;font-size:16px;line-height:1.7}.rich-editor:focus{border-color:#ffae8f}.rich-editor h2{font-size:26px}.rich-editor code{font-family:Consolas,monospace;background:#eef1f6;padding:2px 5px;border-radius:5px}.savebar{display:flex;gap:10px;margin-top:14px}.media-card{align-self:start}.media-card h2{margin-top:0}.media-card>p{color:var(--muted);font-size:13px;line-height:1.5}.media-list{display:grid;gap:12px;margin-top:18px}.media-item{border:1px solid var(--line);border-radius:12px;padding:10px}.media-item img{width:100%;height:150px;object-fit:cover;border-radius:8px}.media-item form{display:grid;gap:6px;margin-top:8px}.media-item input{margin:0}.empty{padding:22px;color:var(--muted)}@media(max-width:980px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.content{margin-left:0}.mobile-menu{display:block;position:fixed;left:14px;top:14px;z-index:30;border:0;background:var(--sidebar);color:white;border-radius:10px;width:44px;height:44px;font-size:21px}.article{width:min(900px,calc(100% - 34px));padding-top:80px}.editor-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}}@media(max-width:620px){.article h1{font-size:32px}.lead{font-size:16px}.pager{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.admin-main,.editor-main{padding:14px}.admin-top{padding:0 12px}.admin-top .ghost{font-size:12px}.article{width:calc(100% - 26px)}.gallery-image img{height:210px}}

/* =========================================================
   Sprut Docs 1.0.2 — consolidated UI/editor update
   ========================================================= */

/* Public documentation typography */
.article-head h1,.article h1{font-size:26px!important;line-height:1.18!important;letter-spacing:-.01em!important;margin:0 0 8px!important;font-weight:700!important}
.article-head .lead,.lead{font-size:15px!important;line-height:1.45!important;margin:0!important}
.article-head{padding-bottom:18px!important}
.article-body{padding-top:18px!important;font-size:15px!important;line-height:1.65!important}
.article-body h2{font-size:20px!important;line-height:1.25!important;font-weight:700!important;margin-top:26px!important;margin-bottom:10px!important;letter-spacing:0!important}
.article-body h3{font-size:17px!important;line-height:1.3!important;font-weight:700!important;margin-top:20px!important;margin-bottom:8px!important}
.article-body h4{font-size:16px!important;line-height:1.3!important;margin-top:18px!important;margin-bottom:7px!important}
.article-body p{margin:9px 0!important}.article-body li{margin:5px 0!important}.article-body blockquote{margin:16px 0!important;padding:12px 16px!important}.crumb{margin-bottom:10px!important}
@media(max-width:900px){.article-head h1,.article h1{font-size:24px!important}.article-body h2{font-size:19px!important}.article-body h3{font-size:17px!important}}
@media(max-width:600px){.article-head h1,.article h1{font-size:22px!important}.article-head .lead,.lead{font-size:14px!important}.article-body{font-size:14px!important}.article-body h2{font-size:18px!important}.article-body h3{font-size:16px!important}}

/* Sidebar scrollbar: invisible until hover */
.docs-nav{scrollbar-width:thin;scrollbar-color:transparent transparent}
.sidebar:hover .docs-nav{scrollbar-color:rgba(155,163,177,.42) transparent}
.docs-nav::-webkit-scrollbar{width:4px}.docs-nav::-webkit-scrollbar-track{background:transparent}.docs-nav::-webkit-scrollbar-thumb{background:transparent;border-radius:999px}.sidebar:hover .docs-nav::-webkit-scrollbar-thumb{background:rgba(155,163,177,.42)}.docs-nav::-webkit-scrollbar-thumb:hover{background:rgba(190,197,208,.62)}

/* Sprut-style custom selects */
.sprut-native-select-hidden{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}
.sprut-custom-select{position:relative;width:100%;font-weight:400}
.sprut-select-button{width:100%;height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;border:1px solid #dfe3ea;border-radius:10px;background:#fff;color:#20242b;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.sprut-select-button:hover{border-color:#cfd5de;background:#fbfbfc}.sprut-custom-select.open .sprut-select-button{border-color:#ff7a49;box-shadow:0 0 0 3px rgba(255,90,31,.11)}
.sprut-select-value{min-width:0;display:flex;align-items:center;gap:9px}.sprut-select-value span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sprut-select-value svg,.sprut-select-option>svg:first-child{width:18px;height:18px;flex:none;fill:none;stroke:#69717d;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sprut-select-chevron{width:17px;height:17px;fill:none;stroke:#737b87;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s ease}.sprut-custom-select.open .sprut-select-chevron{transform:rotate(180deg)}
.sprut-select-menu{display:none;position:absolute;z-index:300;left:0;right:0;top:calc(100% + 6px);max-height:280px;overflow-y:auto;padding:6px;background:#fff;border:1px solid #dfe3ea;border-radius:11px;box-shadow:0 12px 30px rgba(26,31,40,.14),0 2px 6px rgba(26,31,40,.06);scrollbar-width:thin;scrollbar-color:#c9ced6 transparent}.sprut-custom-select.open .sprut-select-menu{display:block}.sprut-select-menu::-webkit-scrollbar{width:5px}.sprut-select-menu::-webkit-scrollbar-track{background:transparent}.sprut-select-menu::-webkit-scrollbar-thumb{background:#c9ced6;border-radius:999px}
.sprut-select-option{width:100%;display:flex;align-items:center;gap:9px;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:#272b31;font:inherit;font-size:14px;text-align:left;cursor:pointer}.sprut-select-option:hover{background:#f3f4f7}.sprut-select-option.selected{background:rgba(255,90,31,.10);color:#d94b17}.sprut-select-option.selected>svg:first-child{stroke:#ef5a24}.sprut-option-check{width:16px!important;height:16px!important;margin-left:auto;opacity:0;fill:none;stroke:#ef5a24!important;stroke-width:2.2!important}.sprut-select-option.selected .sprut-option-check{opacity:1}

/* Normal document editor toolbar */
.rich-toolbar{display:flex!important;align-items:center;flex-wrap:wrap;gap:5px;padding:8px;background:#f3f5f8;border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0;margin-top:16px;position:sticky;top:71px;z-index:5}
.editor-format-wrap{min-width:165px}.editor-block-style{height:36px;width:100%;border:1px solid #d9dee7;border-radius:8px;background:#fff;color:#20242b;padding:0 30px 0 10px;font:inherit;font-size:14px;outline:none;cursor:pointer}.editor-block-style:focus{border-color:#ff7a49;box-shadow:0 0 0 3px rgba(255,90,31,.10)}
.toolbar-separator{width:1px;height:25px;background:#d8dde5;margin:0 3px}.toolbar-btn{height:36px;min-width:36px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d9dee7!important;background:#fff!important;color:#252a31!important;border-radius:8px!important;font:inherit;font-size:14px;cursor:pointer;transition:.12s ease;user-select:none}.toolbar-btn:hover{background:#f8f9fb!important;border-color:#c8cfd9!important}.toolbar-btn.active{background:#fff0e9!important;border-color:#ff9b75!important;color:#d94914!important;box-shadow:inset 0 0 0 1px rgba(255,90,31,.08)}.toolbar-wide{min-width:auto;padding:0 11px}.toolbar-clear{margin-left:auto;color:#5f6875!important}

/* Editor body mirrors article typography for normal text */
.rich-editor{min-height:520px;border:1px solid #ff8d65!important;border-radius:0 0 12px 12px;padding:22px 18px!important;outline:none;font-family:"Segoe UI Variable Text","Segoe UI",Tahoma,Arial,sans-serif!important;font-size:15px!important;font-weight:400!important;line-height:1.45!important;letter-spacing:0!important;color:#16181d!important;caret-color:#16181d!important;background:#fff}
.rich-editor:focus{border-color:#ff6a34!important;box-shadow:inset 0 0 0 1px rgba(255,90,31,.06)}
.rich-editor p,.rich-editor div,.rich-editor span,.rich-editor li{font-family:inherit!important;font-size:15px!important;line-height:1.45!important;letter-spacing:0!important;color:#16181d!important}.rich-editor p{margin:9px 0!important}.rich-editor strong,.rich-editor b{font:inherit!important;font-weight:700!important}.rich-editor em,.rich-editor i{font:inherit!important;font-style:italic!important}.rich-editor h2{font-family:inherit!important;font-size:20px!important;line-height:1.25!important;font-weight:700!important;letter-spacing:0!important;margin:26px 0 10px!important}.rich-editor h3{font-family:inherit!important;font-size:17px!important;line-height:1.3!important;font-weight:700!important;letter-spacing:0!important;margin:20px 0 8px!important}.rich-editor blockquote{margin:16px 0!important;padding:12px 16px!important;border-left:4px solid var(--brand);background:var(--brandsoft);border-radius:0 10px 10px 0}.rich-editor ul,.rich-editor ol{padding-left:25px}.rich-editor code{font-family:Consolas,"SFMono-Regular",monospace!important;background:#eef1f6;border:1px solid #e0e5ed;border-radius:6px;padding:2px 6px;font-size:13.8px!important;line-height:1.45!important}.rich-editor a{color:#db4b17;text-decoration-thickness:1px;text-underline-offset:3px}.editor-help{font-size:12px;color:#8a929f;margin-top:8px}

@media(max-width:760px){.rich-toolbar{position:static}.editor-format-wrap{width:100%}.toolbar-clear{margin-left:0}.toolbar-separator{display:none}}

/* Page editor form is an independent grid column */
.editor-page-form {
    min-width: 0;
    margin: 0;
}


/* =====================================================
   Editor headings = published article headings
   ===================================================== */

/* Обычный текст */
.rich-editor {
    font-family:
        "Segoe UI Variable Text",
        "Segoe UI",
        Tahoma,
        Arial,
        sans-serif !important;

    font-size: 15px !important;
    line-height: 1.65 !important;
    color: #16181d !important;
}

/* Обычный абзац */
.rich-editor p {
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
    margin: 9px 0 !important;
}

/* H2 - точно как на странице */
.rich-editor h2 {
    font-family:
        "Segoe UI Variable Text",
        "Segoe UI",
        Tahoma,
        Arial,
        sans-serif !important;

    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    letter-spacing: 0 !important;

    margin-top: 26px !important;
    margin-bottom: 10px !important;
}

/* H3 - точно как на странице */
.rich-editor h3 {
    font-family:
        "Segoe UI Variable Text",
        "Segoe UI",
        Tahoma,
        Arial,
        sans-serif !important;

    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    letter-spacing: 0 !important;

    margin-top: 20px !important;
    margin-bottom: 8px !important;
}

/* H4, если появится */
.rich-editor h4 {
    font-family:
        "Segoe UI Variable Text",
        "Segoe UI",
        Tahoma,
        Arial,
        sans-serif !important;

    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    margin-top: 18px !important;
    margin-bottom: 7px !important;
}

/* Старые inline-стили не должны перебивать размер */
.rich-editor h2[style],
.rich-editor h3[style],
.rich-editor h4[style] {
    font-size: inherit;
}

/* Убираем возможные browser font-size внутри заголовков */
.rich-editor h2 span,
.rich-editor h2 font {
    font-size: 20px !important;
    line-height: 1.25 !important;
}

.rich-editor h3 span,
.rich-editor h3 font {
    font-size: 17px !important;
    line-height: 1.3 !important;
}

.rich-editor h4 span,
.rich-editor h4 font {
    font-size: 16px !important;
    line-height: 1.3 !important;
}


/* ===== Screenshot upload UX ===== */

.image-upload-status {
    margin: 8px 0 10px;
    padding: 9px 11px;

    border-radius: 9px;

    background: #f3f5f8;
    color: #6f7785;

    font-size: 12px;
    line-height: 1.4;
}

.image-upload-status.loading {
    background: #fff3ed;
    color: #d94b17;
}

.image-upload-status.error {
    background: #fff0f0;
    color: #b92f2f;
}

