/* gadv-doc v1 · 25.10.2026 · единый шаблон документов gudauriadventure.com (оглавление, главы, scroll-spy) */
:root{--bg:#0b0d12;--bg2:#0f131b;--ink:#f4f1ea;--muted:#a9b0bd;--amber:#ff8a3d;--amber2:#ffb168;--teal:#4fd1c5;
--line:rgba(255,255,255,.10);--glass:rgba(20,24,32,.72);--glass-brd:rgba(255,255,255,.12);--hdr:68px;--bar:0px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--hdr) + var(--bar) + 18px)}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.7 'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
[dir=rtl] body{font-family:'Heebo',system-ui,sans-serif}
a{color:var(--teal);text-underline-offset:3px}
img{display:block;max-width:100%}
.aurora{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.aurora span{position:absolute;border-radius:50%;filter:blur(80px);opacity:.22}
.aurora span:nth-child(1){width:52vw;height:52vw;left:-14vw;top:-14vh;background:radial-gradient(circle,#ff8a3d,transparent 62%)}
.aurora span:nth-child(2){width:46vw;height:46vw;right:-12vw;top:30vh;background:radial-gradient(circle,#4fd1c5,transparent 60%)}
.skip{position:fixed;top:8px;inset-inline-start:12px;z-index:100;background:var(--amber2);color:#1a1205;padding:8px 14px;border-radius:10px;font-weight:700;transform:translateY(-200%);transition:transform .2s}
.skip:focus{transform:none}
:focus-visible{outline:2px solid var(--amber2);outline-offset:3px;border-radius:6px}

/* ---------- header (как на главной) ---------- */
.dh{position:fixed;top:0;left:0;right:0;z-index:50}
.dh-in{display:flex;align-items:center;gap:14px;max-width:1320px;margin:0 auto;padding:11px 18px;transition:padding .3s cubic-bezier(.2,.7,.2,1),background-color .3s}
.dh.scrolled .dh-in,.dh-in{background:var(--glass);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.dh.scrolled .dh-in{padding-top:6px;padding-bottom:6px}
.brand{display:flex;align-items:center;gap:10px;font-family:'Unbounded',sans-serif;font-weight:700;font-size:1rem;color:var(--ink);text-decoration:none;white-space:nowrap}
.brand img{width:42px;height:42px;border-radius:50%;box-shadow:0 4px 16px rgba(0,0,0,.45),0 0 0 1px rgba(255,177,104,.35);transition:width .3s,height .3s}
.dh.scrolled .brand img{width:34px;height:34px}
.brand b{color:var(--amber2);font-weight:700}
[dir=rtl] .brand{font-family:'Heebo',sans-serif;direction:ltr}
.dh-docs{display:flex;gap:4px;margin-inline-start:auto}
.dh-docs a{color:var(--muted);text-decoration:none;font-size:.86rem;font-weight:600;padding:7px 12px;border-radius:999px;transition:color .2s,background-color .2s}
.dh-docs a:hover{color:var(--ink);background:rgba(255,255,255,.06)}
.dh-docs a[aria-current]{color:var(--ink);background:rgba(255,177,104,.14);box-shadow:inset 0 0 0 1px rgba(255,177,104,.35)}
.dh-cta{display:flex;align-items:center;gap:8px}
.lang{position:relative}
.lang summary{list-style:none;display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:999px;color:var(--ink);font-weight:700;font-size:.8rem;padding:9px 14px;cursor:pointer;user-select:none}
.lang summary::-webkit-details-marker{display:none}
.lang summary::after{content:"▾";font-size:.7rem;color:var(--muted)}
.lang-menu{position:absolute;top:calc(100% + 8px);inset-inline-end:0;display:flex;flex-direction:column;min-width:170px;background:rgba(15,19,27,.98);border:1px solid var(--glass-brd);border-radius:14px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5);z-index:70;animation:pop .18s ease-out}
.lang-menu a{display:flex;justify-content:space-between;gap:12px;color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:600;padding:11px 16px}
.lang-menu a:hover{background:rgba(255,255,255,.06);color:var(--ink)}
.lang-menu a[aria-current]{color:var(--amber2)}
.lang-menu a span{opacity:.6;font-size:.78rem}
@keyframes pop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:999px;font-weight:700;font-size:.88rem;cursor:pointer;border:1px solid transparent;text-decoration:none;white-space:nowrap;transition:transform .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:scale(.97)}
.btn-tg{background:linear-gradient(135deg,#2aabee,#1878b8);color:#fff;box-shadow:0 8px 24px rgba(42,171,238,.3)}
.btn-ghost{background:rgba(255,255,255,.06);border-color:var(--line);color:var(--ink)}
.btn svg{flex:none}
.progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:60;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--amber),var(--amber2),var(--teal))}
[dir=rtl] .progress{transform-origin:100% 50%}

/* ---------- layout ---------- */
.dwrap{position:relative;z-index:1;max-width:1240px;margin:0 auto;padding:calc(var(--hdr) + 30px) 22px 40px;display:grid;grid-template-columns:290px minmax(0,1fr);gap:56px}
.toc{position:relative}
.toc-in{position:sticky;top:calc(var(--hdr) + 22px);max-height:calc(100vh - var(--hdr) - 44px);overflow:auto;padding:18px 10px 18px 16px;border:1px solid var(--line);border-radius:20px;background:rgba(15,19,27,.55);scrollbar-width:thin}
[dir=rtl] .toc-in{padding:18px 16px 18px 10px}
.toc-t{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--amber2);font-weight:700;margin:0 0 10px 6px}
.toc ol{list-style:none;margin:0;padding:0}
.toc li{margin:1px 0}
.toc a{display:flex;gap:10px;align-items:baseline;padding:7px 10px;border-radius:10px;color:var(--muted);text-decoration:none;font-size:.9rem;line-height:1.35;transition:color .2s,background-color .2s}
.toc a:hover{color:var(--ink);background:rgba(255,255,255,.05)}
.toc a .n{flex:none;min-width:1.6em;font-family:'Unbounded',sans-serif;font-size:.72rem;color:rgba(255,177,104,.75)}
.toc a.on{color:var(--ink);background:rgba(255,177,104,.12);box-shadow:inset 3px 0 0 var(--amber2)}
[dir=rtl] .toc a.on{box-shadow:inset -3px 0 0 var(--amber2)}
.toc ol ol{margin:2px 0 6px;padding-inline-start:28px;display:none}
.toc li.open>ol{display:block}
.toc ol ol a{font-size:.82rem;padding:5px 10px}
.toc ol ol a.on{background:rgba(79,209,197,.10);box-shadow:inset 2px 0 0 var(--teal)}
[dir=rtl] .toc ol ol a.on{box-shadow:inset -2px 0 0 var(--teal)}
.toc-cta{margin-top:16px;padding:14px 12px 4px;border-top:1px solid var(--line)}
.toc-cta p{margin:0 0 10px;font-size:.84rem;color:var(--muted);line-height:1.45}
.toc-cta .btn{width:100%}

/* ---------- document ---------- */
.doc{min-width:0;max-width:72ch}
.crumbs{font-size:.86rem;color:var(--muted);margin:0 0 14px}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--ink)}
.doc h1{font-family:'Unbounded',sans-serif;font-weight:700;font-size:clamp(1.7rem,4.2vw,2.6rem);line-height:1.15;letter-spacing:-.01em;margin:0 0 10px;overflow-wrap:break-word;hyphens:auto}
[dir=rtl] .doc h1,[dir=rtl] .doc h2,[dir=rtl] .doc h3{font-family:'Heebo',sans-serif;letter-spacing:0}
.upd{margin:0 0 18px;color:var(--muted);font-size:.9rem}
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.tabs a{font-size:.85rem;font-weight:700;padding:8px 14px;border-radius:999px;color:var(--muted);text-decoration:none;border:1px solid var(--line);background:rgba(255,255,255,.03);transition:color .2s,border-color .2s,background-color .2s}
.tabs a:hover{color:var(--ink);border-color:rgba(255,255,255,.25)}
.tabs a[aria-current]{color:#1a1205;background:linear-gradient(135deg,var(--amber),var(--amber2));border-color:transparent}
.op{display:flex;gap:12px;align-items:flex-start;background:rgba(255,255,255,.04);border:1px solid var(--glass-brd);border-radius:16px;padding:14px 16px;margin:0 0 30px;font-size:.88rem;line-height:1.6;color:var(--muted)}
.op::before{content:"i";flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font:700 .78rem/1 'Unbounded',sans-serif;color:#1a1205;background:var(--teal);margin-top:2px}
.ch{padding-top:8px;margin:0 0 30px}
.ch+.ch{border-top:1px solid var(--line);padding-top:30px}
.ch h2{display:flex;gap:14px;align-items:baseline;font-family:'Unbounded',sans-serif;font-weight:700;font-size:clamp(1.18rem,2.4vw,1.45rem);line-height:1.25;margin:0 0 14px;color:var(--ink)}
.ch h2 .num{flex:none;display:inline-grid;place-items:center;min-width:2.1em;height:2.1em;padding:0 .35em;border-radius:12px;font-size:.62em;color:#1a1205;background:linear-gradient(135deg,var(--amber),var(--amber2));box-shadow:0 6px 18px rgba(255,138,61,.28);transform:translateY(-.15em)}
.ch h2:focus{outline:none}
.doc p{margin:0 0 14px;color:#dfe3ea}
.doc p.muted{color:var(--muted);font-size:.92rem}
.doc ul{margin:0 0 16px;padding-inline-start:1.2em}
.doc li{margin:0 0 8px;color:#dfe3ea}
.doc li::marker{color:var(--amber2)}
.doc p.key{position:relative;background:linear-gradient(135deg,rgba(255,177,104,.10),rgba(255,138,61,.04));border:1px solid rgba(255,177,104,.28);border-radius:14px;padding:14px 16px 14px 46px;color:var(--ink)}
[dir=rtl] .doc p.key{padding:14px 46px 14px 16px}
.doc p.key::before{content:"!";position:absolute;inset-inline-start:14px;top:15px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font:800 .8rem/1 'Unbounded',sans-serif;color:#1a1205;background:var(--amber2)}
.act{margin:18px 0;padding:18px 20px 6px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025);transition:border-color .3s}
.act:target,.act.flash{border-color:rgba(79,209,197,.6);box-shadow:0 0 0 4px rgba(79,209,197,.12)}
.act h3{font-family:'Unbounded',sans-serif;font-size:1.02rem;line-height:1.3;margin:0 0 10px;color:var(--amber2)}
.act h4{font-size:.96rem;margin:14px 0 4px;color:var(--ink)}
.act h4:first-of-type{margin-top:4px}
.doc a{overflow-wrap:anywhere}
.to-top{position:fixed;inset-inline-end:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:40;width:46px;height:46px;border-radius:50%;border:1px solid var(--glass-brd);background:rgba(15,19,27,.9);color:var(--ink);font-size:1.1rem;cursor:pointer;display:grid;place-items:center;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .25s,transform .25s;box-shadow:0 10px 30px rgba(0,0,0,.4)}
.to-top.show{opacity:1;transform:none;pointer-events:auto}
.to-top:hover{border-color:var(--amber2)}

/* ---------- mobile chapter bar + sheet ---------- */
.cbar{display:none}
.sheet{position:fixed;inset:0;z-index:80;display:none}
.sheet.open{display:block}
.sheet-bg{position:absolute;inset:0;background:rgba(5,7,10,.6);animation:fade .2s}
.sheet-in{position:absolute;left:0;right:0;bottom:0;max-height:82vh;overflow:auto;background:#10141c;border-top:1px solid var(--glass-brd);border-radius:22px 22px 0 0;padding:10px 14px calc(18px + env(safe-area-inset-bottom,0px));animation:up .26s cubic-bezier(.2,.7,.2,1)}
.sheet-in::before{content:"";display:block;width:44px;height:4px;border-radius:4px;background:rgba(255,255,255,.2);margin:4px auto 12px}
.sheet .toc-in{position:static;max-height:none;border:0;background:none;padding:0}
.sheet .toc ol ol{display:block}
.sheet-x{position:absolute;top:10px;inset-inline-end:12px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.05);color:var(--ink);font-size:1.1rem;cursor:pointer}
@keyframes up{from{transform:translateY(100%)}to{transform:none}}
@keyframes fade{from{opacity:0}to{opacity:1}}

/* ---------- footer ---------- */
.df{position:relative;z-index:1;border-top:1px solid var(--line);margin-top:30px;padding:30px 0 90px;font-size:.88rem;color:var(--muted);background:rgba(11,13,18,.6)}
.df .w{max-width:1240px;margin:0 auto;padding:0 22px;display:grid;grid-template-columns:1.4fr 1fr;gap:26px}
.df .brand{margin-bottom:10px}
.df p{margin:0 0 10px;line-height:1.6}
.df h5{margin:0 0 10px;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--amber2)}
.df nav a{display:block;color:var(--muted);text-decoration:none;padding:4px 0}
.df nav a:hover{color:var(--ink)}
.df .legal{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px;font-size:.8rem}

/* ---------- motion ---------- */
.js .rv{opacity:0;transform:translateY(14px);transition:opacity .5s cubic-bezier(.2,.7,.2,1),transform .5s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}

/* ---------- responsive ---------- */
@media (max-width:1100px){.dh-docs{display:none}.dh-cta{margin-inline-start:auto}}
@media (max-width:960px){
  :root{--hdr:62px;--bar:48px}
  body{font-size:16.5px}
  .dwrap{grid-template-columns:minmax(0,1fr);gap:0;padding-top:calc(var(--hdr) + var(--bar) + 22px)}
  .dwrap>.toc{display:none}
  .doc{max-width:none}
  .cbar{display:flex;position:fixed;left:0;right:0;top:var(--hdr);z-index:45;height:var(--bar);align-items:center;gap:10px;padding:0 14px;background:rgba(13,16,23,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);color:var(--ink);font:inherit;font-size:.88rem;font-weight:700;width:100%;border-left:0;border-right:0;border-top:0;cursor:pointer;text-align:start;transition:top .3s cubic-bezier(.2,.7,.2,1)}
  .cbar .ic{flex:none;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:rgba(255,177,104,.14);color:var(--amber2);font-size:.95rem}
  .cbar .lb{flex:none;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--amber2)}
  .cbar .cur{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}
  .cbar .chev{flex:none;color:var(--muted)}
  .dh.scrolled~.cbar{top:calc(var(--hdr) - 10px)}
  .df .w{grid-template-columns:1fr}
  .to-top{bottom:calc(78px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:640px){
  .dh-in{padding:9px 12px;gap:8px}
  .brand{font-size:.9rem}
  .brand .bt{display:none}
  .brand img{width:38px;height:38px}
  .dwrap{padding-left:16px;padding-right:16px}
  .act{padding:16px 14px 4px;border-radius:16px}
  .doc p.key{padding:13px 14px 13px 42px}
  [dir=rtl] .doc p.key{padding:13px 42px 13px 14px}
  .ch h2{gap:10px}
  .op{font-size:.84rem}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js .rv{opacity:1;transform:none}
}
@media print{.dh,.cbar,.toc,.to-top,.progress,.aurora,.df,.sheet{display:none!important}.dwrap{display:block;padding:0}body{background:#fff;color:#000}.doc p,.doc li{color:#000}}
@media (max-width:640px){.dh-tgt{display:none}.dh-cta .btn-tg{padding:10px 12px}}
.toc .toc-cta a.btn{display:flex;color:#fff;padding:11px 16px;border-radius:999px;font-size:.88rem;font-weight:700;background:linear-gradient(135deg,#2aabee,#1878b8);box-shadow:0 8px 24px rgba(42,171,238,.3)}
.toc .toc-cta a.btn:hover{color:#fff;background:linear-gradient(135deg,#35b5f5,#1a84c9)}
.doc>section.ch:last-of-type{min-height:calc(100vh - var(--hdr) - var(--bar) - 40px)}
