/**
 * File: /wp-content/themes/belofis/assets/css/app.css
 * Version: 0.1.0-alpha.6
 * Global shell only. Service app internals are intentionally not styled globally.
 */
:root {
    --bo-color-primary:#123c7a;
    --bo-color-primary-strong:#0b2852;
    --bo-color-primary-soft:#edf4ff;
    --bo-color-text:#172033;
    --bo-color-muted:#586577;
    --bo-color-subtle:#7a8798;
    --bo-color-bg:#ffffff;
    --bo-color-surface:#f6f8fb;
    --bo-color-surface-strong:#eef2f7;
    --bo-color-border:#e3e8ef;
    --bo-color-success:#12845b;
    --bo-color-danger:#bd3340;
    --bo-radius-sm:8px;
    --bo-radius-md:14px;
    --bo-radius-lg:20px;
    --bo-shadow-sm:0 8px 30px rgba(15,35,65,.07);
    --bo-shadow-md:0 16px 42px rgba(15,35,65,.11);
    --bo-container:1320px;
    --bo-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif;
    --bo-header-height:72px;
}
[data-theme="dark"] {
    --bo-color-text:#edf3fb;
    --bo-color-muted:#aebbc9;
    --bo-color-subtle:#8796a7;
    --bo-color-bg:#09121f;
    --bo-color-surface:#0e1a2a;
    --bo-color-surface-strong:#142235;
    --bo-color-border:#24354a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bo-color-bg);color:var(--bo-color-text);font-family:var(--bo-font);font-size:16px;line-height:1.55;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body.bo-nav-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
button{color:inherit}
:focus-visible{outline:3px solid rgba(18,60,122,.34);outline-offset:3px}
.bo-container{width:min(100% - 64px,var(--bo-container));margin-inline:auto}
.bo-skip-link{position:fixed;left:16px;top:-80px;z-index:99999;background:#fff;color:#0b2852;padding:10px 14px;border-radius:8px;box-shadow:var(--bo-shadow-md)}
.bo-skip-link:focus{top:12px}
.bo-site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(227,232,239,.9);backdrop-filter:saturate(150%) blur(14px)}
body.admin-bar .bo-site-header{top:32px}
.bo-header-inner{min-height:var(--bo-header-height);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px}
.bo-brand-link{display:inline-flex;align-items:center;gap:10px;font-weight:760;letter-spacing:-.025em;color:#10294d}
.bo-brand-custom-logo .custom-logo-link{display:flex}.bo-brand-custom-logo img{width:auto;max-height:42px}
.bo-brand-mark{width:36px;height:36px;display:grid;grid-template-columns:1fr 1fr;align-items:center;justify-items:center;border:1px solid #d9e3ef;border-radius:11px;background:#fff;box-shadow:0 5px 18px rgba(18,60,122,.08);font-weight:800;font-size:14px;overflow:hidden}
.bo-brand-mark span:first-child{color:#0b2852}.bo-brand-mark span:last-child{color:#123c7a}
.bo-brand-name{font-size:22px}
.bo-desktop-nav{display:flex;align-items:center;justify-content:center;gap:8px;color:#33445a;font-weight:650;font-size:14px}
.bo-desktop-nav>a,.bo-products-menu>summary{padding:10px 12px;border-radius:9px;transition:background-color .16s ease,color .16s ease;cursor:pointer;list-style:none}
.bo-products-menu>summary::-webkit-details-marker{display:none}
.bo-products-menu>summary::after{content:"⌄";font-size:12px;margin-left:6px;color:#7b8796}
.bo-desktop-nav>a:hover,.bo-products-menu>summary:hover,.bo-products-menu[open]>summary{background:#f1f5f9;color:#0b2852}
.bo-products-menu{position:relative}
.bo-mega-menu{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-26%);width:min(820px,78vw);display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:12px;background:#fff;border:1px solid var(--bo-color-border);border-radius:18px;padding:18px;box-shadow:0 28px 70px rgba(15,35,65,.16)}
.bo-mega-menu::before{content:"";position:absolute;top:-13px;left:0;right:0;height:13px}
.bo-mega-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#7b8796;font-weight:800;padding:6px 8px 10px}
.bo-mega-service{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:10px;border-radius:11px;transition:background .16s ease}
.bo-mega-service:hover{background:#f6f8fb}
.bo-mega-service--pending{opacity:.58;cursor:default}
.bo-mega-icon{width:34px;height:34px;display:grid;place-items:center;background:#eef4fb;color:#123c7a;border-radius:9px}
.bo-mega-icon svg{width:18px;height:18px}
.bo-mega-service strong{display:block;font-size:14px;color:#172033}.bo-mega-service small{display:block;color:#6a7787;font-size:11.5px;line-height:1.35;margin-top:2px;font-weight:500}
.bo-header-actions{display:flex;align-items:center;gap:10px}
.bo-header-account{font-size:14px;font-weight:700;color:#33445a;padding:10px 6px}
.bo-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:10px;min-height:44px;padding:10px 17px;font-weight:760;font-size:14px;line-height:1.1;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease}
.bo-btn:hover{transform:translateY(-1px)}
.bo-btn--primary{background:var(--bo-color-primary);color:#fff;box-shadow:0 8px 18px rgba(18,60,122,.18)}
.bo-btn--primary:hover{background:#0f346b;box-shadow:0 12px 24px rgba(18,60,122,.24)}
.bo-btn--secondary{background:#fff;color:#123c7a;border-color:#d7e0eb}.bo-btn--secondary:hover{background:#f7f9fc;border-color:#c8d4e2}
.bo-btn--lg{min-height:50px;padding-inline:21px;font-size:15px}
.bo-btn--light{background:#fff;color:#0b2852}.bo-btn--outline-light{border-color:rgba(255,255,255,.35);color:#fff;background:transparent}.bo-btn--outline-light:hover{background:rgba(255,255,255,.08)}
.bo-mobile-toggle{display:none;width:44px;height:44px;border:0;background:transparent;border-radius:9px;padding:10px;cursor:pointer}.bo-mobile-toggle span{display:block;height:2px;background:#16324f;border-radius:2px;margin:5px 0}
.bo-mobile-panel{border-top:1px solid var(--bo-color-border);background:#fff}.bo-mobile-panel-inner{width:min(100% - 32px,680px);margin:auto;padding:18px 0 26px}.bo-mobile-products-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#7a8798;margin-bottom:10px}.bo-mobile-services{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bo-mobile-services>a,.bo-mobile-service-pending{display:flex;align-items:center;gap:9px;border:1px solid #e5ebf2;border-radius:11px;padding:10px 11px;font-weight:700;font-size:14px;background:#fff}.bo-mobile-services svg{width:18px;height:18px;color:#123c7a}.bo-mobile-service-pending{opacity:.6}.bo-mobile-service-pending small{font-size:10px;margin-left:auto}.bo-mobile-links{display:grid;gap:2px;margin-top:14px;padding-top:14px;border-top:1px solid #edf1f5}.bo-mobile-links a{padding:10px 4px;font-weight:700;color:#31445a}
.bo-site-footer{background:#09121f;color:#cbd5e1;padding:56px 0 24px;margin-top:80px}.bo-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:48px}.bo-footer-brand p{max-width:330px;color:#8fa0b4;font-size:14px}.bo-footer-logo{font-size:24px;font-weight:800;color:#fff}.bo-site-footer h2{font-size:13px;color:#fff;margin:0 0 14px;text-transform:uppercase;letter-spacing:.05em}.bo-site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}.bo-site-footer li,.bo-site-footer a{font-size:13.5px;color:#aebccc}.bo-site-footer a:hover{color:#fff}.bo-footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.10);font-size:12.5px;color:#7f91a7}
.bo-service-main{min-height:calc(100vh - 250px);background:#f6f8fb}.bo-service-app{width:100%;min-height:60vh}.bo-service-app>:first-child{margin-top:0}
.bo-error-page{min-height:65vh;display:grid;place-items:center;padding:80px 0}.bo-error-inner{text-align:center;max-width:680px}.bo-error-code{font-size:88px;font-weight:800;color:#dce7f5;line-height:1}.bo-error-inner h1{font-size:36px;margin:12px 0}.bo-error-inner p{color:#657387;margin-bottom:26px}
@media (max-width:1100px){.bo-desktop-nav{gap:0}.bo-desktop-nav>a,.bo-products-menu>summary{padding-inline:8px}.bo-header-inner{gap:18px}.bo-header-cta{display:none}}
@media (max-width:979px){.bo-container{width:min(100% - 40px,var(--bo-container))}.bo-header-inner{grid-template-columns:1fr auto}.bo-desktop-nav{display:none}.bo-header-account{display:none}.bo-mobile-toggle{display:block}.bo-site-footer{margin-top:56px}.bo-footer-grid{grid-template-columns:1fr 1fr;gap:34px 46px}}
@media (max-width:620px){.bo-container{width:min(100% - 32px,var(--bo-container))}.bo-brand-name{font-size:20px}.bo-brand-mark{width:34px;height:34px}.bo-mobile-services{grid-template-columns:1fr}.bo-footer-grid{grid-template-columns:1fr;gap:30px}.bo-footer-bottom{flex-direction:column;margin-top:30px}.bo-site-footer{padding-top:42px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}


/* === 0.1.0-alpha.3: compact SaaS header + light/dark shell === */
html[data-theme="dark"]{color-scheme:dark}
html[data-theme="light"]{color-scheme:light}
.bo-site-header{position:sticky;top:0;z-index:1000;background:color-mix(in srgb,var(--bo-color-bg) 94%,transparent);border-bottom:1px solid var(--bo-color-border);backdrop-filter:saturate(150%) blur(14px)}
.bo-header-inner{min-height:72px;grid-template-columns:minmax(210px,auto) 1fr auto;gap:28px}
.bo-brand-link{display:inline-flex;align-items:center;gap:11px;color:var(--bo-color-text);min-width:0}
.bo-brand-symbol{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;overflow:hidden}
.bo-brand-logo-img{display:block!important;width:auto!important;height:auto!important;max-width:48px!important;max-height:48px!important;object-fit:contain!important}
.bo-brand-copy{display:grid;line-height:1.05;gap:4px}.bo-brand-copy strong{font-size:20px;letter-spacing:-.035em}.bo-brand-copy small{font-size:10px;letter-spacing:.055em;text-transform:uppercase;color:var(--bo-color-subtle);font-weight:750}
.bo-brand-mark{width:42px;height:42px;background:var(--bo-color-bg);border-color:var(--bo-color-border);box-shadow:none}
.bo-desktop-nav{color:var(--bo-color-muted);font-size:13.5px;font-weight:700}
.bo-desktop-nav>a,.bo-products-menu>summary{padding:9px 11px}
.bo-desktop-nav>a:hover,.bo-products-menu>summary:hover,.bo-products-menu[open]>summary{background:var(--bo-color-surface);color:var(--bo-color-text)}
.bo-products-menu>summary::after{color:var(--bo-color-subtle)}
.bo-mega-menu{background:var(--bo-color-bg);border-color:var(--bo-color-border);box-shadow:var(--bo-shadow-md)}
.bo-mega-title{color:var(--bo-color-subtle)}
.bo-mega-service:hover{background:var(--bo-color-surface)}
.bo-mega-icon{background:var(--bo-color-primary-soft);color:var(--bo-color-primary)}
.bo-mega-service strong{color:var(--bo-color-text)}.bo-mega-service small{color:var(--bo-color-muted)}
.bo-header-actions{gap:8px}.bo-header-auth{min-height:40px;padding:9px 15px;font-size:13px;white-space:nowrap}
.bo-theme-toggle{width:40px;height:40px;border:1px solid var(--bo-color-border);background:var(--bo-color-bg);border-radius:10px;display:grid;place-items:center;cursor:pointer;color:var(--bo-color-muted);padding:0;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.bo-theme-toggle:hover{background:var(--bo-color-surface);color:var(--bo-color-text);transform:translateY(-1px)}.bo-theme-toggle svg{width:18px;height:18px;display:block}.bo-theme-toggle__sun,.bo-theme-toggle__moon{grid-area:1/1}.bo-theme-toggle__sun{display:none}html[data-theme="dark"] .bo-theme-toggle__sun{display:block}html[data-theme="dark"] .bo-theme-toggle__moon{display:none}
.bo-mobile-toggle{border:1px solid var(--bo-color-border);background:var(--bo-color-bg)}.bo-mobile-toggle span{background:var(--bo-color-text)}
.bo-mobile-panel{background:var(--bo-color-bg);border-color:var(--bo-color-border)}.bo-mobile-products-title{color:var(--bo-color-subtle)}.bo-mobile-services>a,.bo-mobile-service-pending{background:var(--bo-color-bg);border-color:var(--bo-color-border);color:var(--bo-color-text)}.bo-mobile-services svg{color:var(--bo-color-primary)}.bo-mobile-links{border-color:var(--bo-color-border)}.bo-mobile-links a{color:var(--bo-color-text)}
.bo-btn--secondary{background:var(--bo-color-bg);color:var(--bo-color-primary);border-color:var(--bo-color-border)}.bo-btn--secondary:hover{background:var(--bo-color-surface);border-color:var(--bo-color-border)}
.bo-service-main{background:var(--bo-color-surface);color:var(--bo-color-text)}
.bo-content-main{background:var(--bo-color-bg);color:var(--bo-color-text)}

html[data-theme="dark"] .bo-hero{background:radial-gradient(circle at 80% 20%,rgba(75,128,194,.12),transparent 34%),linear-gradient(180deg,#09121f 0%,#0c1726 100%)}
html[data-theme="dark"] .bo-hero h1,html[data-theme="dark"] .bo-section-head h2,html[data-theme="dark"] .bo-org-copy h2{color:var(--bo-color-text)}
html[data-theme="dark"] .bo-hero-lead,html[data-theme="dark"] .bo-hero-proof,html[data-theme="dark"] .bo-section-head>p,html[data-theme="dark"] .bo-org-copy>p,html[data-theme="dark"] .bo-check-list li{color:var(--bo-color-muted)}
html[data-theme="dark"] .bo-hero-note{color:var(--bo-color-subtle)}
html[data-theme="dark"] .bo-product-window,html[data-theme="dark"] .bo-window-stats article,html[data-theme="dark"] .bo-window-panels>article,html[data-theme="dark"] .bo-service-card,html[data-theme="dark"] .bo-org-card,html[data-theme="dark"] .bo-trust-grid article{background:var(--bo-color-bg);border-color:var(--bo-color-border)}
html[data-theme="dark"] .bo-window-top,html[data-theme="dark"] .bo-window-content,html[data-theme="dark"] .bo-organization,html[data-theme="dark"] .bo-org-rights div{background:var(--bo-color-surface)}
html[data-theme="dark"] .bo-window-top,html[data-theme="dark"] .bo-window-file,html[data-theme="dark"] .bo-org-card-head,html[data-theme="dark"] .bo-org-person{border-color:var(--bo-color-border)}
html[data-theme="dark"] .bo-window-brand,html[data-theme="dark"] .bo-window-content-head strong,html[data-theme="dark"] .bo-window-stats strong,html[data-theme="dark"] .bo-service-card h3,html[data-theme="dark"] .bo-org-card-head strong,html[data-theme="dark"] .bo-org-person strong,html[data-theme="dark"] .bo-trust-grid h3{color:var(--bo-color-text)}
html[data-theme="dark"] .bo-window-company,html[data-theme="dark"] .bo-window-content-head small,html[data-theme="dark"] .bo-window-stats small,html[data-theme="dark"] .bo-window-file small,html[data-theme="dark"] .bo-window-panels p,html[data-theme="dark"] .bo-service-card p,html[data-theme="dark"] .bo-org-person small,html[data-theme="dark"] .bo-org-rights span,html[data-theme="dark"] .bo-trust-grid p{color:var(--bo-color-muted)}
html[data-theme="dark"] .bo-window-file strong,html[data-theme="dark"] .bo-window-panel-title,html[data-theme="dark"] .bo-org-rights strong{color:var(--bo-color-text)}
html[data-theme="dark"] .bo-trust-strip{background:var(--bo-color-bg);border-color:var(--bo-color-border)}html[data-theme="dark"] .bo-trust-strip strong{color:var(--bo-color-text)}html[data-theme="dark"] .bo-trust-strip span{color:var(--bo-color-muted)}
html[data-theme="dark"] .bo-service-icon,html[data-theme="dark"] .bo-trust-grid>article>span{background:var(--bo-color-surface-strong)}
html[data-theme="dark"] .bo-text-link,html[data-theme="dark"] .bo-service-link{color:#8fb9ea}

@media (max-width:1100px){.bo-header-inner{gap:16px}.bo-brand-copy small{display:none}.bo-brand-copy strong{font-size:18px}}
@media (max-width:979px){.bo-header-inner{grid-template-columns:1fr auto;min-height:66px}.bo-desktop-nav{display:none}.bo-header-auth{display:none}.bo-mobile-toggle{display:block}.bo-brand-symbol{width:42px;height:42px;flex-basis:42px}.bo-brand-logo-img{max-width:42px!important;max-height:42px!important}}
@media (max-width:620px){.bo-brand-copy strong{font-size:18px}.bo-brand-copy{display:block}.bo-theme-toggle{width:38px;height:38px}.bo-mobile-toggle{width:38px;height:38px;padding:8px}.bo-header-actions{gap:6px}}

/* 0.1.0-alpha.3: dark-mode compatibility for ordinary theme content */
html[data-theme="dark"] .bo-page-header h1,
html[data-theme="dark"] .bo-listing-head h1,
html[data-theme="dark"] .bo-prose h2,
html[data-theme="dark"] .bo-prose h3,
html[data-theme="dark"] .bo-post-card h2{color:var(--bo-color-text)}
html[data-theme="dark"] .bo-prose,
html[data-theme="dark"] .bo-listing-desc,
html[data-theme="dark"] .bo-post-card p,
html[data-theme="dark"] .bo-post-meta{color:var(--bo-color-muted)}
html[data-theme="dark"] .bo-post-card{background:var(--bo-color-bg);border-color:var(--bo-color-border)}
html[data-theme="dark"] .page-numbers{border-color:var(--bo-color-border)}

/* === 0.1.0-alpha.4: WordPress admin-bar + sticky header ===
 * WordPress использует 32px admin bar на desktop и 46px до 782px.
 * До 600px admin bar прокручивается вместе со страницей, поэтому
 * sticky header должен возвращаться к top:0, иначе остаётся пустая полоса.
 */
@media (max-width:782px){
    body.admin-bar .bo-site-header{top:46px}
}
@media (max-width:600px){
    body.admin-bar .bo-site-header{top:0}
}

/* === 0.1.0-alpha.5: configurable header/footer === */
.bo-header-extra-menu{
    display:flex;
    align-items:center;
    gap:0;
    list-style:none;
    margin:0;
    padding:0;
}
.bo-header-extra-menu li{margin:0;padding:0}
.bo-header-extra-menu a{
    display:block;
    padding:9px 11px;
    border-radius:9px;
    color:var(--bo-color-muted);
    font-size:13.5px;
    font-weight:700;
    white-space:nowrap;
    transition:background-color .16s ease,color .16s ease;
}
.bo-header-extra-menu a:hover,
.bo-header-extra-menu a:focus-visible{
    background:var(--bo-color-surface);
    color:var(--bo-color-text);
}
.bo-header-promo{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:8px 13px;
    border:1px solid rgba(189,51,64,.18);
    border-radius:10px;
    background:#fff1f2;
    color:#a72531;
    font-size:13px;
    font-weight:800;
    white-space:nowrap;
}
.bo-header-promo:hover{background:#ffe7e9;color:#8f1d28}
html[data-theme="dark"] .bo-header-promo{
    background:rgba(189,51,64,.12);
    color:#ff9da6;
    border-color:rgba(255,157,166,.18);
}

.bo-mobile-links .bo-header-extra-menu--mobile{
    display:grid;
    gap:2px;
    margin:0;
    padding:0;
}
.bo-mobile-links .bo-header-extra-menu--mobile li{list-style:none}
.bo-mobile-links .bo-header-extra-menu--mobile a{
    padding:10px 4px;
    border-radius:0;
    font-size:inherit;
}
.bo-mobile-promo{color:var(--bo-color-danger)!important}

.bo-footer-grid--full{
    grid-template-columns:1.1fr 1fr 1fr 1.15fr;
    gap:0;
    align-items:start;
}
.bo-footer-grid--full>.bo-footer-section{
    min-width:0;
    padding:0 36px;
}
.bo-footer-grid--full>.bo-footer-section:first-child{padding-left:0}
.bo-footer-grid--full>.bo-footer-section:last-child{padding-right:0}
.bo-footer-grid--full>.bo-footer-section+ .bo-footer-section{
    border-left:1px solid rgba(255,255,255,.12);
}
.bo-footer-brand p{
    max-width:360px;
    margin:0 0 20px;
    color:#aebccc;
    line-height:1.65;
}
.bo-site-footer .bo-footer-section h2{
    margin:0 0 18px;
    font-size:16px;
    line-height:1.3;
    text-transform:none;
    letter-spacing:0;
}
.bo-footer-links{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:10px;
}
.bo-footer-links a{
    text-decoration:underline;
    text-decoration-color:rgba(174,188,204,.38);
    text-underline-offset:3px;
}
.bo-footer-company p{
    margin:0 0 14px;
    color:#d3dbe5;
    line-height:1.6;
}
.bo-footer-company p strong{color:#fff}
.bo-footer-company-address{white-space:normal}
.bo-footer-hours{
    margin-top:22px;
    padding-top:4px;
}
.bo-footer-hours>strong{
    display:block;
    color:#fff;
    font-size:15px;
    margin-bottom:10px;
}
.bo-footer-hours p{margin-bottom:8px}
.bo-footer-payment{
    display:flex;
    justify-content:center;
    margin-top:44px;
}
.bo-footer-payment-img{
    display:block;
    width:auto;
    max-width:min(760px,100%);
    max-height:110px;
    object-fit:contain;
    border-radius:16px;
    background:#fff;
    padding:12px 18px;
}
.bo-footer-bottom{
    justify-content:center;
    text-align:center;
    position:relative;
}
.bo-footer-bottom span:last-child{
    position:absolute;
    right:0;
}

@media (max-width:1240px){
    .bo-desktop-nav{font-size:13px}
    .bo-desktop-nav>a,
    .bo-products-menu>summary,
    .bo-header-extra-menu a{padding-inline:7px}
    .bo-header-inner{gap:14px}
    .bo-brand-copy small{display:none}
    .bo-header-promo{padding-inline:10px}
}
@media (max-width:1100px){
    .bo-desktop-nav{display:none}
    .bo-mobile-toggle{display:block}
    .bo-header-auth{display:none}
    .bo-header-promo{display:none}
    .bo-header-inner{grid-template-columns:1fr auto}
}
@media (max-width:979px){
    .bo-header-extra-menu--desktop{display:none}
    .bo-footer-grid--full{
        grid-template-columns:1fr 1fr;
        gap:36px 0;
    }
    .bo-footer-grid--full>.bo-footer-section{
        padding:0 28px;
    }
    .bo-footer-grid--full>.bo-footer-section:nth-child(odd){
        padding-left:0;
        border-left:0;
    }
    .bo-footer-grid--full>.bo-footer-section:nth-child(even){
        padding-right:0;
        border-left:1px solid rgba(255,255,255,.12);
    }
}
@media (max-width:620px){
    .bo-footer-grid--full{grid-template-columns:1fr;gap:30px}
    .bo-footer-grid--full>.bo-footer-section,
    .bo-footer-grid--full>.bo-footer-section:nth-child(even),
    .bo-footer-grid--full>.bo-footer-section:nth-child(odd){
        padding:0 0 28px;
        border-left:0;
        border-bottom:1px solid rgba(255,255,255,.10);
    }
    .bo-footer-grid--full>.bo-footer-section:last-child{
        border-bottom:0;
        padding-bottom:0;
    }
    .bo-footer-payment{margin-top:34px}
    .bo-footer-payment-img{border-radius:12px;padding:9px 12px}
    .bo-footer-bottom{align-items:center}
    .bo-footer-bottom span:last-child{position:static}
}

/* === 0.1.0-alpha.6: desktop utility actions + mobile bottom dock === */
.bo-header-utilities{
    display:flex;
    align-items:center;
    gap:6px;
    padding-left:9px;
    margin-left:2px;
    border-left:1px solid var(--bo-color-border);
}
.bo-header-utility{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:38px;
    padding:7px 10px;
    border:1px solid transparent;
    border-radius:10px;
    font-size:12.5px;
    font-weight:800;
    line-height:1;
    white-space:nowrap;
    transition:transform .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;
}
.bo-header-utility:hover,
.bo-header-utility:focus-visible{transform:translateY(-1px)}
.bo-header-utility__icon{display:grid;place-items:center;width:17px;height:17px;flex:0 0 17px}
.bo-header-utility__icon svg{display:block;width:17px;height:17px}
.bo-header-utility--shop{
    color:#08765e;
    background:#eefbf7;
    border-color:#ccefe3;
}
.bo-header-utility--shop:hover,
.bo-header-utility--shop:focus-visible,
.bo-header-utility--shop.is-active{
    color:#05614d;
    background:#dff7ef;
    border-color:#aee5d4;
    box-shadow:0 6px 18px rgba(18,127,96,.08);
}
.bo-header-utility--partner{
    color:#225b91;
    background:#f0f6ff;
    border-color:#d6e5f8;
}
.bo-header-utility--partner:hover,
.bo-header-utility--partner:focus-visible,
.bo-header-utility--partner.is-active{
    color:#184978;
    background:#e3effd;
    border-color:#bad4f2;
    box-shadow:0 6px 18px rgba(26,91,148,.08);
}
html[data-theme="dark"] .bo-header-utility--shop{
    color:#7ce0c1;
    background:rgba(26,154,116,.12);
    border-color:rgba(90,211,176,.18);
}
html[data-theme="dark"] .bo-header-utility--partner{
    color:#9cc8f5;
    background:rgba(55,111,171,.14);
    border-color:rgba(105,159,219,.20);
}

/* Mobile dock скрыт на desktop. */
.bo-mobile-dock{display:none}

@media (max-width:1240px){
    .bo-header-utilities{gap:4px;padding-left:6px}
    .bo-header-utility{padding-inline:8px;font-size:12px}
}

@media (max-width:1100px){
    .bo-header-utilities{display:none}

    body.bo-has-mobile-dock{
        padding-bottom:calc(72px + env(safe-area-inset-bottom,0px));
    }

    .bo-mobile-dock{
        display:block;
        position:fixed;
        left:0;
        right:0;
        bottom:0;
        z-index:1150;
        padding:0 10px env(safe-area-inset-bottom,0px);
        border-top:1px solid color-mix(in srgb,var(--bo-color-border) 90%,transparent);
        background:color-mix(in srgb,var(--bo-color-bg) 96%,transparent);
        box-shadow:0 -8px 28px rgba(15,35,60,.08);
        backdrop-filter:saturate(150%) blur(16px);
        -webkit-backdrop-filter:saturate(150%) blur(16px);
        transition:transform .18s ease,opacity .18s ease;
    }
    .bo-mobile-dock__inner{
        display:grid;
        grid-template-columns:repeat(var(--bo-dock-count,4),minmax(0,1fr));
        width:min(100%,620px);
        min-height:64px;
        margin:0 auto;
    }
    .bo-mobile-dock__item{
        position:relative;
        display:flex;
        min-width:0;
        min-height:64px;
        padding:7px 4px 6px;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:3px;
        border-radius:12px;
        color:var(--bo-color-muted);
        text-align:center;
        -webkit-tap-highlight-color:transparent;
        transition:color .16s ease,background-color .16s ease;
    }
    .bo-mobile-dock__item::before{
        content:"";
        position:absolute;
        top:0;
        left:50%;
        width:26px;
        height:3px;
        border-radius:0 0 4px 4px;
        background:transparent;
        transform:translateX(-50%);
    }
    .bo-mobile-dock__item:hover,
    .bo-mobile-dock__item:focus-visible,
    .bo-mobile-dock__item.is-active{
        color:var(--bo-color-primary);
        background:var(--bo-color-primary-soft);
    }
    .bo-mobile-dock__item.is-active::before{background:var(--bo-color-primary)}
    .bo-mobile-dock__item--shop:hover,
    .bo-mobile-dock__item--shop:focus-visible,
    .bo-mobile-dock__item--shop.is-active{color:#08765e;background:#eefbf7}
    .bo-mobile-dock__item--shop.is-active::before{background:#27a782}
    .bo-mobile-dock__item--partner:hover,
    .bo-mobile-dock__item--partner:focus-visible,
    .bo-mobile-dock__item--partner.is-active{color:#225b91;background:#f0f6ff}
    .bo-mobile-dock__item--partner.is-active::before{background:#4a83bd}
    .bo-mobile-dock__icon{
        position:relative;
        display:grid;
        width:24px;
        height:24px;
        place-items:center;
        flex:0 0 24px;
    }
    .bo-mobile-dock__icon svg{display:block;width:22px;height:22px}
    .bo-mobile-dock__label{
        display:block;
        max-width:100%;
        overflow:hidden;
        font-size:10.5px;
        font-weight:750;
        line-height:1.15;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    .bo-mobile-dock__cart-badge{
        position:absolute;
        top:7px;
        left:calc(50% + 6px);
        display:grid;
        min-width:17px;
        height:17px;
        padding:0 4px;
        place-items:center;
        border:2px solid var(--bo-color-bg);
        border-radius:999px;
        background:var(--bo-color-danger);
        color:#fff;
        font-size:9px;
        font-weight:850;
        line-height:1;
    }
    .bo-mobile-dock__cart-badge[hidden]{display:none!important}

    body.bo-nav-open .bo-mobile-dock{
        opacity:0;
        pointer-events:none;
        transform:translateY(110%);
    }

    /* Cookie FAB не должен перекрываться нижней панелью. */
    body.bo-has-mobile-dock #pcc-root{
        --pcc-fab-offset-bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;
    }

    html[data-theme="dark"] .bo-mobile-dock{
        background:color-mix(in srgb,var(--bo-color-bg) 96%,transparent);
        box-shadow:0 -8px 28px rgba(0,0,0,.25);
    }
    html[data-theme="dark"] .bo-mobile-dock__item--shop:hover,
    html[data-theme="dark"] .bo-mobile-dock__item--shop:focus-visible,
    html[data-theme="dark"] .bo-mobile-dock__item--shop.is-active{
        color:#7ce0c1;
        background:rgba(26,154,116,.12);
    }
    html[data-theme="dark"] .bo-mobile-dock__item--partner:hover,
    html[data-theme="dark"] .bo-mobile-dock__item--partner:focus-visible,
    html[data-theme="dark"] .bo-mobile-dock__item--partner.is-active{
        color:#9cc8f5;
        background:rgba(55,111,171,.14);
    }
}

@media (max-width:430px){
    .bo-mobile-dock{padding-inline:4px}
    .bo-mobile-dock__label{font-size:10px}
    .bo-mobile-dock__item{padding-inline:2px}
}

@media (prefers-reduced-motion:reduce){
    .bo-header-utility,
    .bo-mobile-dock,
    .bo-mobile-dock__item{transition:none!important}
}

