:root{
  --bg:#f4f7fb;
  --card:#ffffff;
  --text:#152033;
  --muted:#5e6a7a;
  --line:#dfe5ef;
  --dark:#1f2a44;
  --accent:#eef5ff;
  --success:#ebfff1;
  --warning:#fff7df;
  --shadow:0 16px 40px rgba(23,31,56,.08);
  --shadow-soft:0 10px 30px rgba(23,31,56,.05);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:19px/1.75 Arial,Helvetica,sans-serif;background:linear-gradient(180deg,#f7f9fc 0%,#f3f7fb 100%);color:var(--text)}
body.font-large{font-size:22px;line-height:1.82}
img{max-width:100%;display:block}
a{color:#174ea6;text-decoration:none}
a:hover{text-decoration:underline}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:16px;top:16px;width:auto;height:auto;padding:12px 16px;background:#fff;border:2px solid var(--dark);border-radius:14px;z-index:100}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.site-header{background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(223,229,239,.95);position:sticky;top:0;z-index:30}
.header-shell{padding:18px 0 20px}
.header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.brand-block{display:flex;flex-direction:column;gap:8px;max-width:420px}
.brand{font-size:32px;font-weight:800;color:var(--dark);white-space:nowrap;letter-spacing:-.02em}
.brand-note{margin:0;color:var(--muted);font-size:15px;line-height:1.45}
.header-tools{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:18px;border:1px solid var(--line);font-weight:700;text-decoration:none;cursor:pointer;background:#fff;color:var(--dark);transition:.18s ease transform,.18s ease box-shadow,.18s ease background;min-height:52px}
.btn:hover{text-decoration:none;transform:translateY(-1px);box-shadow:var(--shadow-soft)}
.btn-dark{background:var(--dark);color:#fff;border-color:var(--dark)}
.btn-light{background:#fff;color:var(--dark)}
.btn-compact{min-height:48px;padding:12px 18px;border-radius:16px}
.header-panel{margin-top:18px;padding:18px;background:linear-gradient(180deg,#fcfdff 0%,#f5f8fd 100%);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow-soft)}
.header-panel-title{font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.main-nav{display:grid;gap:12px}
.main-nav-primary{grid-template-columns:repeat(4,minmax(0,1fr))}
.main-nav a,.sub-nav a{display:flex;align-items:center;justify-content:center;min-height:58px;padding:12px 16px;text-align:center;line-height:1.3;border-radius:18px;border:1px solid var(--line);font-size:17px;text-decoration:none;transition:.18s ease transform,.18s ease box-shadow,.18s ease border-color,.18s ease background}
.main-nav a{background:#fff;color:var(--dark);font-weight:700}
.sub-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.sub-nav a{background:#f8fbff;color:var(--muted);font-weight:700}
.main-nav a:hover,.sub-nav a:hover{text-decoration:none;transform:translateY(-1px);box-shadow:var(--shadow-soft);border-color:#cfd9ea}
.main-nav a.is-active,.sub-nav a.is-active{background:var(--dark);border-color:var(--dark);color:#fff;box-shadow:0 12px 26px rgba(31,42,68,.16)}
.menu-toggle{display:none;align-items:center;gap:8px;font-size:18px;font-weight:700;background:#fff;border:1px solid var(--line);border-radius:16px;padding:11px 14px;color:var(--dark)}
.hero{padding:44px 0}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:28px;align-items:center}
.badge,.open-note,.locked-note,.meta-line,.notice-banner,.card-tag,.topic-chip{display:inline-block;border-radius:999px;padding:8px 14px;font-size:14px;line-height:1.35}
.badge,.open-note{background:var(--success)}
.locked-note{background:var(--warning)}
.meta-line{background:var(--accent)}
.card-tag{background:var(--accent);margin-bottom:8px}
.notice-banner{background:#fff;border:1px solid var(--line);margin:18px 0;display:block;border-radius:24px;padding:16px 18px;box-shadow:var(--shadow-soft)}
.hero h1,.article-shell h1,h1{font-size:clamp(36px,4.8vw,56px);line-height:1.14;margin:12px 0 14px;letter-spacing:-.02em}
.hero-card h2,.article h2,h2{font-size:clamp(26px,3.2vw,34px);line-height:1.18;margin:0 0 12px}
.lead{font-size:23px;color:var(--muted);margin:0}
.action-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.compact-row{margin-top:0}
.hero-card,.card,.form-card,.feature,.access-box,.related-box,.faq-item,.admin-menu,.admin-panel,.article-shell,.article-body,.article-preview-card,.side-card{background:var(--card);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow)}
.hero-card,.card,.form-card,.feature,.access-box,.related-box,.admin-menu,.admin-panel,.article-preview-card,.side-card{padding:22px}
.hero-card img,.article-card img,.article figure img,.article-cover-card img{width:100%;border-radius:22px}
.hero-card{padding:20px}
.hero-card h2{font-size:30px;margin:10px 0 8px}
.hero-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.link-more{font-weight:700}
.section-space{padding:28px 0 48px}
.section-head{margin-bottom:18px}
.section-head-panel{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:#fff;border:1px solid var(--line);padding:24px;border-radius:30px;box-shadow:var(--shadow-soft)}
.section-head-side{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.cards-grid,.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.article-cards{align-items:start}
.article-card{position:relative;overflow:hidden}
.article-card h3{font-size:24px;line-height:1.22;margin:12px 0 8px}
.article-card p{margin:0 0 14px;color:var(--muted)}
.card-compact h3{margin-top:0}
.is-locked-card::after{content:'🔒';position:absolute;right:18px;top:18px;font-size:20px;background:rgba(255,255,255,.92);border:1px solid var(--line);width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-soft)}
.feature{display:flex;flex-direction:column;gap:8px}
.narrow{max-width:760px}
.form-card{display:grid;gap:16px}
.form-card input,.form-card textarea,.form-card select,.search-bar input{width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:16px;font:inherit;background:#fff}
.form-message{font-weight:700}
.small-gray,.demo-note{color:var(--muted);font-size:15px}
.article-wrap{max-width:1180px}
.breadcrumbs{font-size:15px;color:var(--muted);margin-bottom:14px}
.article-shell{padding:18px;background:linear-gradient(180deg,#fdfefe 0%,#f9fbff 100%)}
.article-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:22px;align-items:stretch;padding:8px}
.article-hero-copy{padding:18px 12px 6px 12px}
.article-cover-card{padding:12px;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow-soft)}
.article-highlight-box{margin-top:20px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow-soft)}
.article-highlight-box h2{font-size:24px;margin-bottom:14px}
.article-checks,.topic-grid,.toc-list,.related-list{margin:0;padding:0;list-style:none}
.article-checks{display:grid;gap:10px}
.article-checks li{position:relative;padding-left:34px;margin:0}
.article-checks li::before{content:'✓';position:absolute;left:0;top:0;width:22px;height:22px;border-radius:999px;background:var(--success);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}
.access-box{display:grid;gap:16px}
.access-box h2{font-size:30px;margin:0 0 8px}
.access-box-inline,.access-box-hero{grid-template-columns:1fr auto;align-items:center;margin-top:22px}
.article-preview-card{padding:24px;margin-top:22px}
.topic-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.topic-chip{background:var(--accent);border:1px solid var(--line)}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;margin-top:22px}
.article-main{min-width:0}
.article-body{padding:34px 34px 28px 34px}
.article-body p{margin:18px 0;color:var(--text);max-width:72ch}
.article-body h2{font-size:31px;margin-top:34px;margin-bottom:14px;scroll-margin-top:96px}
.article-body ul,.article-body ol{padding-left:24px}
.article-body li{margin:14px 0}
.article-list li{padding-left:2px}
.article-figure{margin:26px 0;padding:14px;background:linear-gradient(180deg,#f8fbff 0%,#f1f6ff 100%);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow-soft)}
.article-figure-steps{background:linear-gradient(180deg,#fdfcf7 0%,#f9f2dd 100%)}
.article-figure img{border-radius:18px}
.article figcaption,.article-body figcaption{color:var(--muted);font-size:15px;padding-top:10px}
.steps{counter-reset:step;list-style:none;padding:0;margin:18px 0}
.steps li{position:relative;padding:16px 16px 16px 70px;margin:14px 0;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-soft)}
.steps li::before{counter-increment:step;content:counter(step);position:absolute;left:18px;top:15px;width:38px;height:38px;border-radius:16px;background:var(--dark);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.notice{background:linear-gradient(180deg,#edf6ff 0%,#eaf3ff 100%);padding:18px 20px;border-radius:20px;border:1px solid #cfe0fb;box-shadow:var(--shadow-soft)}
.faq-list{display:grid;gap:12px;margin-top:16px}
.faq-item{padding:18px 20px}
.faq-item summary{cursor:pointer;font-weight:700;list-style:none;padding-right:20px;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';position:absolute;right:0;top:0;font-size:24px;line-height:1}
.faq-item[open] summary::after{content:'–'}
.faq-answer{padding-top:12px}
.side-card{position:sticky;top:100px;box-shadow:var(--shadow-soft)}
.side-card + .side-card{margin-top:16px}
.toc-list{display:grid;gap:10px;margin-top:14px}
.toc-list a{display:block;padding:10px 12px;background:#f8fbff;border:1px solid var(--line);border-radius:16px;color:var(--dark)}
.related-list{display:grid;gap:12px;margin-top:16px}
.related-list li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-soft)}
.article-bottom-box{margin-top:22px}
.search-bar{display:flex;gap:12px;align-items:center;max-width:850px}
.search-bar-inline{max-width:620px}
.search-bar input{flex:1}

.ad-slot{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow-soft);padding:16px 18px;margin:18px 0;overflow:hidden}
.ad-slot-wide{margin:18px auto 0 auto}
.ad-slot-under-header{margin-top:18px}
.ad-slot-before-footer{margin-top:10px}
.ad-slot-inline{margin:26px 0}
.article-top-ad{margin-top:22px}
.ad-slot-sidebar{padding:14px 14px 16px 14px}
.ad-slot-label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-weight:700}
.ad-slot-code{display:block;width:100%}
.ad-slot-code > *:first-child{margin-top:0}
.ad-slot-code iframe,.ad-slot-code img,.ad-slot-code ins,.ad-slot-code div{max-width:100%}
textarea[name="after_header"],textarea[name="home_after_hero"],textarea[name="section_after_search"],textarea[name="article_top"],textarea[name="article_middle"],textarea[name="article_sidebar"],textarea[name="before_footer"]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px;line-height:1.45;min-height:120px}
.site-footer{background:#fff;border-top:1px solid var(--line);margin-top:30px}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px;padding:28px 20px}
.footer-grid a,.footer-grid p{display:block;color:var(--muted);margin:8px 0}
.footer-title{font-weight:700;font-size:20px}
.admin-layout{display:grid;grid-template-columns:280px 1fr;gap:20px}
.admin-menu a{display:block;padding:10px 12px;border-radius:12px}
.admin-menu a.active,.admin-menu a:hover{background:var(--accent);text-decoration:none}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.table img{width:110px;border-radius:12px}
.mt-24{margin-top:24px}
.help-box{background:#fff;border:1px dashed var(--line);padding:16px;border-radius:20px}
@media (max-width: 1080px){
  .article-layout{grid-template-columns:1fr}
  .article-side{display:grid;gap:16px}
  .side-card{position:static}
}
@media (max-width: 980px){
  .hero-grid,.cards-grid,.features-grid,.footer-grid,.admin-layout,.article-hero,.section-head-panel,.access-box-inline,.access-box-hero{grid-template-columns:1fr}
  .header-shell{padding:14px 0 16px}
  .header-top{align-items:center;flex-wrap:wrap}
  .brand{font-size:26px}
  .brand-note{font-size:14px}
  .menu-toggle{display:inline-flex;order:3}
  .header-tools{width:100%;justify-content:flex-start}
  .header-panel{display:none;padding:16px;margin-top:14px}
  .header-panel.is-open{display:block}
  .main-nav-primary,.sub-nav{grid-template-columns:1fr}
  .main-nav a,.sub-nav a{justify-content:flex-start;text-align:left;min-height:52px}
  .search-bar{flex-direction:column;align-items:stretch}
  .article-body{padding:24px}
  .article-shell{padding:14px}
}
@media (max-width: 720px){
  body{font-size:17px}
  .hero{padding:28px 0}
  .hero-card,.card,.form-card,.feature,.access-box,.related-box,.faq-item,.admin-menu,.admin-panel,.article-preview-card,.side-card{padding:18px}
  .article-hero-copy{padding:8px 4px 0 4px}
  .related-list li{flex-direction:column;align-items:flex-start}
  .header-tools .btn{flex:1 1 calc(50% - 8px)}
  .header-tools .menu-toggle{flex:1 1 100%;justify-content:center}
}

.notice strong{display:inline-block;margin-right:6px}
.article-body h2{max-width:26ch}
.font-large .main-nav a,.font-large .sub-nav a{font-size:18px}
.font-large .lead{font-size:24px}
.font-large .btn{min-height:56px}
.font-large .article-body p,.font-large .article-body li{font-size:1em}

/* Обновлённая шапка и приветственная страница */
.site-header{background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(223,229,239,.98)}
.header-shell{padding:16px 0 18px}
.header-top{align-items:center;gap:24px}
.brand-block{max-width:520px}
.brand{font-size:34px}
.brand-note{font-size:15px;max-width:48ch}
.header-tools{gap:10px}
.header-panel{margin-top:16px;padding:16px 18px 18px;border-radius:24px;background:linear-gradient(180deg,#fdfefe 0%,#f7fafe 100%)}
.primary-nav,.topic-nav{display:flex;flex-wrap:wrap;gap:10px}
.primary-nav a,.topic-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 16px;border-radius:16px;border:1px solid var(--line);text-decoration:none;line-height:1.3;transition:.18s ease transform,.18s ease box-shadow,.18s ease border-color,.18s ease background}
.primary-nav a{background:#fff;color:var(--dark);font-weight:700}
.topic-nav{margin-top:10px}
.topic-nav a{background:#f4f8ff;color:var(--muted);font-weight:700;font-size:16px}
.primary-nav a:hover,.topic-nav a:hover{text-decoration:none;transform:translateY(-1px);box-shadow:var(--shadow-soft);border-color:#cfd9ea}
.primary-nav a.is-active,.topic-nav a.is-active{background:var(--dark);border-color:var(--dark);color:#fff}
.header-panel-title{margin-top:14px;margin-bottom:8px}

.welcome-hero{padding:42px 0 18px}
.welcome-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:24px;align-items:stretch}
.welcome-copy,.welcome-showcase{align-self:stretch}
.welcome-copy{padding:10px 0}
.welcome-copy h1{max-width:14ch}
.welcome-points{display:grid;gap:14px;margin:22px 0 0}
.welcome-point{display:grid;gap:4px;padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-soft)}
.welcome-point strong{font-size:20px;line-height:1.25}
.welcome-point span{color:var(--muted)}
.welcome-showcase{display:grid;gap:14px;align-content:start}
.showcase-head h2{margin:0}
.welcome-showcase p{margin:0;color:var(--muted)}
.welcome-showcase-media{padding:12px;border-radius:24px;background:linear-gradient(180deg,#f1f7ff 0%,#e8f1ff 100%);border:1px solid #d7e4fb}
.welcome-showcase-media img{border-radius:18px}
.welcome-mini-card{display:grid;gap:8px;padding:18px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.section-head-centered{text-align:center;max-width:860px;margin:0 auto 18px}
.welcome-sections-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.welcome-topic-card{display:grid;gap:10px;align-content:start}
.presentation-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px}
.presentation-cta h2{margin:8px 0 10px}
.welcome-steps{max-width:980px;margin:0 auto}

@media (max-width: 980px){
  .welcome-hero-grid,.presentation-cta{grid-template-columns:1fr;display:grid}
  .header-panel{display:none}
  .header-panel.is-open{display:block}
  .primary-nav,.topic-nav{flex-direction:column}
  .primary-nav a,.topic-nav a{justify-content:flex-start}
}
@media (max-width: 720px){
  .brand{font-size:28px}
  .welcome-hero{padding:28px 0 8px}
  .welcome-point strong{font-size:18px}
  .presentation-cta{padding:20px}
}

/* Финальная презентационная страница */
.presentation-hero{padding:46px 0 18px}
.presentation-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch}
.presentation-copy{display:flex;flex-direction:column;justify-content:center;gap:0}
.presentation-copy h1{max-width:15ch;margin-bottom:0}
.presentation-badge{background:#ffffff;border:1px solid #d8e6ff;color:#194c9d;box-shadow:var(--shadow-soft)}
.presentation-quote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}
.presentation-quote-card{display:grid;gap:8px;padding:18px 18px 16px;border-radius:24px;border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff}
.presentation-quote-card strong{font-size:22px;line-height:1.3}
.presentation-quote-card span{color:var(--muted)}
.quote-amber{background:linear-gradient(180deg,#fff6dd 0%,#fffdf7 100%);border-color:#f1ddb1}
.quote-green{background:linear-gradient(180deg,#eafcf0 0%,#fbfffc 100%);border-color:#cfe8d5}
.quote-mark{width:40px;height:40px;border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--dark);border:1px solid rgba(0,0,0,.06)}
.presentation-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;max-width:900px}
.presentation-note{padding:16px 18px;border-radius:22px;background:rgba(255,255,255,.78);border:1px solid #edf2fa;color:var(--muted);box-shadow:var(--shadow-soft)}
.presentation-showcase{display:grid;align-content:start;gap:16px;padding:28px;background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);border:1px solid #dfe8f5}
.presentation-showcase h2{margin:0;font-size:34px;line-height:1.2}
.presentation-showcase p{margin:0;color:var(--muted)}
.presentation-checks{display:grid;gap:12px}
.presentation-checks div{position:relative;padding:14px 16px 14px 46px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-soft)}
.presentation-checks div::before{content:'✓';position:absolute;left:14px;top:13px;width:22px;height:22px;border-radius:999px;background:var(--success);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}
.presentation-preview-media{margin-top:4px}
.presentation-preview-card{background:linear-gradient(180deg,#fff 0%,#fbfcff 100%)}
.presentation-features-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.presentation-feature-card{background:linear-gradient(180deg,#fff 0%,#f9fbff 100%)}
.presentation-topic-card{background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.presentation-band{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px;background:linear-gradient(120deg,#eaf3ff 0%,#f7fbff 45%,#edfdf3 100%);border-color:#dce8fa}
.presentation-band h2{margin:8px 0 10px}
.presentation-cta-bright{background:linear-gradient(135deg,#0f1c3d 0%,#182a57 45%,#14315c 100%);border-color:#24345b;color:#fff;position:relative;overflow:hidden}
.presentation-cta-bright::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(96,165,250,.24),transparent 34%),radial-gradient(circle at bottom left,rgba(52,211,153,.16),transparent 30%)}
.presentation-cta-bright > *{position:relative;z-index:1}
.presentation-cta-bright .card-tag{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.14)}
.presentation-cta-bright h2,.presentation-cta-bright p{color:#fff}
.presentation-cta-bright p{opacity:.88}
.presentation-cta-bright .btn-light{background:#fff;color:var(--dark);border-color:#fff}

@media (max-width: 980px){
  .presentation-hero-grid,.presentation-features-grid,.presentation-quote-grid,.presentation-note-grid,.presentation-band{grid-template-columns:1fr;display:grid}
  .presentation-copy h1{max-width:none}
}
@media (max-width: 720px){
  .presentation-hero{padding:30px 0 10px}
  .presentation-showcase{padding:20px}
  .presentation-showcase h2{font-size:28px}
  .presentation-quote-card strong{font-size:19px}
}
