/* ============================================================
   YAZME STORY 2 · стили нового раздела книг
   Тема сайта «Янтарь» (токены --yz-*), шрифты: Inter / Unbounded / Literata.
   Префикс s2- — чтобы не пересекаться с story.css и стилями сайта.
   ============================================================ */
body.st2{
  --bg:var(--yz-bg,#0F0E0D); --bg-deep:var(--yz-bg-deep,#0A0908); --surface:var(--yz-surface,#22211F); --elev:var(--yz-surface-2,#2E2C29); --elev2:#3a3733;
  --text:var(--yz-text,#faf9f5); --dim:var(--yz-dim,#b9b4a7); --faint:var(--yz-muted,#8d8878);
  --border:var(--yz-border,rgba(250,249,245,.08)); --border-hi:var(--yz-border-strong,rgba(250,249,245,.17));
  --accent:var(--yz-accent,#d97757); --accent-hi:var(--yz-accent-hi,#e88a68); --accent-deep:var(--yz-accent-deep,#b05730);
  --accent-soft:var(--yz-accent-soft,rgba(217,119,87,.14)); --accent-line:var(--yz-accent-line,rgba(217,119,87,.42));
  --gold:var(--yz-gold,#e2b13c); --success:var(--yz-success,#58a76b); --danger:var(--yz-danger,#e5484d); --violet:#a78bfa; --blue:#4a7dff;
  --grad:var(--yz-grad,linear-gradient(135deg,#e2885f,#b3552e));
  --paper:#faf7f0; --paper-2:#f2ede1; --ink:#211d18; --ink-dim:#8a8173; --ink-acc:#b05730;
  --f-ui:var(--yz-font-ui,'Inter',-apple-system,'Segoe UI',Roboto,sans-serif);
  --f-disp:var(--yz-font-display,'Unbounded','Inter',sans-serif);
  --f-book:'Literata','PT Serif',Georgia,serif; --f-script:'Caveat',cursive;
  --ease:cubic-bezier(.22,1,.36,1); --spring:cubic-bezier(.34,1.45,.5,1);
  --sh-lg:0 24px 60px -18px rgba(0,0,0,.65); --sh-md:0 10px 30px -12px rgba(0,0,0,.5);
  --gut:clamp(16px,4vw,40px);
  background:var(--bg);color:var(--text);font-family:var(--f-ui);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;margin:0;min-height:100vh;overflow-x:hidden
}
body.st2 *{box-sizing:border-box}
/* [fix 2026-09-03] Базовый сброс завёрнут в :where(), чтобы его вес был нулевым.
   Было: `body.st2 button` (0,1,2) перебивал `.s2-btn`, `.s2-chip`, `.s2-seg button`
   и т.п. (0,1,0 / 0,1,1) — кнопки теряли padding, фон и рамку, а `body.st2 p{margin:0}`
   съедал `margin-top` у `.s2-sub`. Значения сброса не изменились, изменился только вес. */
:where(body.st2 a){color:inherit;text-decoration:none}
:where(body.st2 button){font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
body.st2 button:focus-visible,body.st2 a:focus-visible,body.st2 input:focus-visible,body.st2 textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
:where(body.st2 input,body.st2 textarea,body.st2 select){font:inherit;color:inherit}
:where(body.st2 img){max-width:100%;display:block}
:where(body.st2 h1,body.st2 h2,body.st2 h3,body.st2 h4){margin:0;text-wrap:balance}
:where(body.st2 p){margin:0}
body.st2 [hidden]{display:none!important}
body.st2 ::selection{background:var(--accent-soft)}
body.st2.s2-flow{padding-bottom:0}

/* ---------- каркас ---------- */
.s2-wrap{max-width:560px;margin:0 auto;padding:26px var(--gut) 120px}
.s2-wrap.wide{max-width:1120px}
.s2-wrap.mid{max-width:820px}
.s2-eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:10px}
.s2-t1{font-family:var(--f-disp);font-weight:600;font-size:clamp(24px,4.6vw,36px);line-height:1.12;letter-spacing:-.01em}
.s2-t2{font-family:var(--f-disp);font-weight:500;font-size:clamp(18px,3vw,24px);line-height:1.2}
.s2-t3{font-weight:600;font-size:16px}
.s2-sub{color:var(--dim);font-size:15px;margin-top:10px;max-width:60ch}
.s2-muted{color:var(--faint);font-size:13px}
.s2-row{display:flex;align-items:center;gap:10px}
.s2-row.between{justify-content:space-between}
.s2-stack{display:flex;flex-direction:column;gap:12px}
.s2-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.s2-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(max-width:560px){.s2-grid3{grid-template-columns:repeat(2,minmax(0,1fr))}.s2-grid2{grid-template-columns:minmax(0,1fr)}}
.s2-hr{height:1px;background:var(--border);margin:20px 0}
.s2-screen{display:none;animation:s2fade .35s var(--ease)}
.s2-screen.on{display:block}
@keyframes s2fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ---------- шаги ---------- */
.s2-stepper{display:flex;align-items:center;gap:6px;margin-bottom:22px}
.s2-stepper i{flex:1;height:3px;border-radius:3px;background:var(--elev2);transition:background .3s}
.s2-stepper i.done{background:var(--accent)}
.s2-stepper i.on{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.s2-stephead{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
/* [fix 2026-09-03] прогресс справа не должен выпирать за экран на узких телефонах */
.s2-stephead>.s2-row{min-width:0;flex-wrap:wrap}
.s2-stephead .s2-bar{max-width:100%;flex:0 1 auto}
.s2-back{width:38px;height:38px;border-radius:50%;background:var(--surface);border:1px solid var(--border);display:grid;place-items:center;color:var(--dim);flex:none}
.s2-back:hover{color:var(--text);border-color:var(--border-hi)}
.s2-stepnum{font-size:12px;color:var(--faint);letter-spacing:.1em;text-transform:uppercase}

/* ---------- кнопки ---------- */
.s2-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:999px;font-weight:600;font-size:15px;background:var(--elev);border:1px solid var(--border-hi);color:var(--text);transition:transform .18s var(--spring),background .2s,border-color .2s;white-space:nowrap;line-height:1.2}
.s2-btn:hover{background:var(--elev2)}
.s2-btn:active{transform:scale(.97)}
.s2-btn.pri{background:var(--grad);border-color:transparent;color:#fff;box-shadow:0 10px 26px -10px rgba(217,119,87,.75)}
.s2-btn.pri:hover{filter:brightness(1.06)}
.s2-btn.ghost{background:transparent;border-color:transparent;color:var(--dim)}
.s2-btn.ghost:hover{color:var(--text);background:var(--surface)}
.s2-btn.gold{background:linear-gradient(135deg,#ffe08a,#e8b54a 48%,#c98a2e);color:#2a1d07;border-color:transparent}
.s2-btn.block{width:100%}
.s2-btn.big{padding:15px 22px;font-size:16px}
.s2-btn.sm{padding:8px 13px;font-size:13px}
.s2-btn[disabled],.s2-btn.busy{opacity:.5;pointer-events:none}
.s2-btn.busy::after{content:'';width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:s2spin .8s linear infinite}
@keyframes s2spin{to{transform:rotate(360deg)}}
.s2-ico{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);color:var(--dim);flex:none}
.s2-ico:hover{color:var(--text)}
.s2-acts{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.s2-acts .s2-btn{flex:1}
.s2-dock{position:fixed;left:0;right:0;bottom:0;z-index:30;padding:12px var(--gut) calc(12px + env(safe-area-inset-bottom));background:linear-gradient(to top,rgba(15,14,13,.97) 60%,rgba(15,14,13,0));display:flex;justify-content:center}
.s2-dock .in{display:flex;gap:10px;min-width:0;width:100%;max-width:560px;align-items:center}
.s2-dock .in.wide{max-width:1120px}
.s2-dock .s2-btn{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:12px;padding-right:12px}
.s2-dock .s2-btn.ghost{flex:0 0 auto}

/* ---------- чипы, карточки, пилюли ---------- */
.s2-chips{display:flex;flex-wrap:wrap;gap:8px}
.s2-chip{padding:8px 13px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-size:13px;color:var(--dim);transition:.18s;line-height:1.3}
.s2-chip:hover{border-color:var(--border-hi);color:var(--text)}
.s2-chip.on{background:var(--accent-soft);border-color:var(--accent-line);color:var(--text)}
.s2-chip.sm{padding:5px 10px;font-size:12px}
.s2-card{background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:18px}
.s2-card.pick{cursor:pointer;transition:.2s var(--ease);position:relative}
.s2-card.pick:hover{border-color:var(--border-hi);transform:translateY(-2px)}
.s2-card.pick.on{border-color:var(--accent-line);background:linear-gradient(180deg,rgba(217,119,87,.1),rgba(217,119,87,.03))}
.s2-card.pick.on::after{content:'';position:absolute;top:12px;right:12px;width:18px;height:18px;border-radius:50%;background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/12px no-repeat}
.s2-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.04em;background:var(--elev);color:var(--dim);line-height:1.5;white-space:nowrap}
.s2-pill.acc{background:var(--accent-soft);color:var(--accent-hi)}
.s2-pill.ok{background:rgba(88,167,107,.16);color:#8bd39c}
.s2-pill.gold{background:rgba(226,177,60,.16);color:var(--gold)}
.s2-pill.vio{background:rgba(167,139,250,.16);color:#c4b5fd}
.s2-pill.free{background:rgba(250,249,245,.08);color:var(--dim)}
.s2-pill.warn{background:rgba(229,72,77,.14);color:#f28b8e}

/* ---------- поля ---------- */
.s2-field{display:flex;flex-direction:column;gap:6px}
.s2-field label{font-size:12px;color:var(--faint);letter-spacing:.06em;text-transform:uppercase;font-weight:600}
.s2-inp{background:var(--surface);border:1px solid var(--border-hi);border-radius:14px;padding:13px 15px;font-size:16px;width:100%;transition:border-color .2s;color:var(--text)}
.s2-inp:focus{border-color:var(--accent-line);outline:none}
.s2-inp::placeholder{color:var(--faint)}
textarea.s2-inp{resize:vertical;min-height:96px;line-height:1.5}
.s2-composer{display:flex;gap:8px;align-items:flex-end;background:var(--surface);border:1px solid var(--border-hi);border-radius:22px;padding:8px 8px 8px 16px}
.s2-composer textarea{flex:1;background:none;border:0;resize:none;font-size:16px;line-height:1.45;padding:8px 0;max-height:160px;outline:none;color:var(--text)}
.s2-composer .mic,.s2-composer .send{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex:none}
.s2-composer .mic{background:var(--elev);color:var(--dim)}
.s2-composer .mic.on{background:var(--accent);color:#fff;animation:s2pulse 1.4s infinite}
.s2-composer .send{background:var(--grad);color:#fff}
@keyframes s2pulse{0%{box-shadow:0 0 0 0 rgba(217,119,87,.5)}70%{box-shadow:0 0 0 14px rgba(217,119,87,0)}100%{box-shadow:0 0 0 0 rgba(217,119,87,0)}}
.s2-wave{display:flex;align-items:center;gap:3px;height:22px}
.s2-wave i{width:3px;border-radius:3px;background:var(--accent);height:30%;animation:s2wv 1s infinite ease-in-out}
.s2-wave i:nth-child(2){animation-delay:.1s}.s2-wave i:nth-child(3){animation-delay:.2s}.s2-wave i:nth-child(4){animation-delay:.3s}.s2-wave i:nth-child(5){animation-delay:.15s}.s2-wave i:nth-child(6){animation-delay:.05s}.s2-wave i:nth-child(7){animation-delay:.25s}
@keyframes s2wv{0%,100%{height:25%}50%{height:100%}}
.s2-seg{display:inline-flex;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:3px}
.s2-seg button{padding:6px 12px;border-radius:999px;font-size:13px;color:var(--dim)}
.s2-seg button.on{background:var(--elev2);color:var(--text)}
.s2-toggle{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:14px}
.s2-toggle i{width:40px;height:24px;border-radius:24px;background:var(--elev2);position:relative;transition:.2s;flex:none}
.s2-toggle i::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:.2s}
.s2-toggle.on i{background:var(--accent)}
.s2-toggle.on i::after{left:19px}
.s2-qty{display:inline-flex;align-items:center;background:var(--surface);border:1px solid var(--border-hi);border-radius:999px}
.s2-qty button{width:36px;height:36px;font-size:18px;color:var(--dim)}
.s2-qty b{min-width:28px;text-align:center}

/* ---------- фото ---------- */
.s2-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px}
.s2-th{aspect-ratio:1;border-radius:10px;overflow:hidden;position:relative;background:var(--elev);animation:s2pop .35s var(--spring)}
.s2-th img{width:100%;height:100%;object-fit:cover}
.s2-th .x{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:12px;display:grid;place-items:center;opacity:0;transition:.15s}
.s2-th:hover .x{opacity:1}
.s2-th .tag{position:absolute;left:4px;bottom:4px;padding:2px 6px;border-radius:5px;font-size:10px;font-weight:600;background:rgba(0,0,0,.55);color:#fff}
.s2-th.drop{opacity:.35;filter:grayscale(1)}
.s2-th.up::after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.35)}
.s2-th .pr{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--accent);transform-origin:left;transform:scaleX(0)}
@keyframes s2pop{from{transform:scale(.7);opacity:0}to{transform:none;opacity:1}}
.s2-drop{display:block;border:1.5px dashed var(--border-hi);border-radius:22px;padding:26px 18px;text-align:center;background:var(--surface);cursor:pointer;transition:.2s}
.s2-drop:hover,.s2-drop.over{border-color:var(--accent-line);background:var(--accent-soft)}
.s2-drop .big{font-size:34px;line-height:1;margin-bottom:8px}
.s2-drop b{display:block;font-size:16px}
.s2-drop span{color:var(--dim);font-size:13px}

/* ---------- обложка (CSS-3D) ---------- */
.s2-bk{--bw:200px;--bh:calc(var(--bw)*1.42);--spine:calc(var(--bw)*.1);width:var(--bw);height:var(--bh);position:relative;perspective:1400px;flex:none}
.s2-bk .book{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateY(-26deg) rotateX(2deg);transition:transform .6s var(--ease)}
.s2-bk:hover .book{transform:rotateY(-14deg) rotateX(1deg)}
.s2-bk.flat .book,.s2-bk.flat:hover .book{transform:none}
.s2-bk .front{position:absolute;inset:0;border-radius:3px 7px 7px 3px;overflow:hidden;transform:translateZ(calc(var(--spine)/2));box-shadow:inset 5px 0 12px -7px rgba(0,0,0,.65),0 30px 50px -20px rgba(0,0,0,.8),0 2px 4px rgba(0,0,0,.4);container-type:inline-size;backface-visibility:hidden}
.s2-bk .pages{position:absolute;top:2px;bottom:2px;left:calc(100% - 1px);width:var(--spine);transform-origin:left center;transform:translateZ(calc(var(--spine)/2)) rotateY(90deg);background:repeating-linear-gradient(180deg,#f4efe3 0 1px,#dcd4c1 1px 2px)}
.s2-bk .spineface{position:absolute;top:0;bottom:0;left:0;width:var(--spine);transform-origin:left center;transform:translateZ(calc(var(--spine)/2)) rotateY(90deg);background:#2a2420;border-radius:3px 0 0 3px}
.s2-bk .backc{position:absolute;inset:0;transform:translateZ(calc(var(--spine)/-2));background:#2a2420;border-radius:7px 3px 3px 7px}
.s2-bk.flat .pages,.s2-bk.flat .spineface,.s2-bk.flat .backc{display:none}
.s2-bk.flat .front{transform:none;border-radius:2px 5px 5px 2px}
.s2-bk.xl{--bw:min(300px,64vw)}.s2-bk.lg{--bw:240px}.s2-bk.md{--bw:150px}.s2-bk.sm{--bw:96px}.s2-bk.xs{--bw:64px}.s2-bk.fill{--bw:100%;width:100%;height:auto;aspect-ratio:1/1.42}
.s2-cv{position:absolute;inset:0;overflow:hidden;display:flex;flex-direction:column;padding:9cqw 9cqw 9cqw 12cqw;color:var(--cv-ink,#f5efe0)}
.s2-cv .photo{position:absolute;inset:0;object-fit:cover;width:100%;height:100%}
.s2-cv .veil{position:absolute;inset:0}
.s2-cv .in{position:relative;z-index:2;display:flex;flex-direction:column;height:100%}
.s2-cv .eb{font-family:var(--f-ui);font-size:3.6cqw;letter-spacing:.2em;text-transform:uppercase;opacity:.8;font-weight:600}
.s2-cv .ttl{font-family:var(--cv-font,var(--f-book));font-size:10.5cqw;line-height:1.08;margin-top:auto;font-weight:500;text-wrap:balance;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.s2-cv .ttl.sm{font-size:8.5cqw}
.s2-cv .aut{font-family:var(--f-ui);font-size:4cqw;letter-spacing:.14em;text-transform:uppercase;margin-top:5cqw;opacity:.85;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.s2-cv .rule{width:16cqw;height:.8cqw;background:var(--cv-acc,#d97757);margin:5cqw 0 0}
.s2-cv.foil .ttl{background:linear-gradient(100deg,#8a6a1f,#f4dc8c 35%,#c9a24a 55%,#f7e7a8 75%,#8a6a1f);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 1px 0 rgba(0,0,0,.25))}
.s2-cv[data-th="classic"]{--cv-font:'Playfair Display',serif;background:#f3ede0;--cv-ink:#1c1a17;--cv-acc:#b8924a}
.s2-cv[data-th="classic"]::before{content:'';position:absolute;inset:5cqw;border:1px solid rgba(28,26,23,.45);outline:3px double rgba(28,26,23,.25);outline-offset:1.5cqw;pointer-events:none}
.s2-cv[data-th="film"]{--cv-font:'Oranienbaum',serif;background:#e8d9b5;--cv-ink:#3b2f2a;--cv-acc:#c9663a}
.s2-cv[data-th="film"] .photo{inset:8cqw 8cqw 34cqw 11cqw;width:auto;height:auto;border-radius:1.5cqw;box-shadow:0 6px 18px -8px rgba(0,0,0,.5)}
.s2-cv[data-th="film"] .in{justify-content:flex-end}
.s2-cv[data-th="film"] .ttl{font-size:8.5cqw;margin-top:0}
.s2-cv[data-th="artdeco"]{--cv-font:'Forum',serif;background:#0e0e10;--cv-ink:#f5efe0;--cv-acc:#d4af37}
.s2-cv[data-th="artdeco"]::before{content:'';position:absolute;inset:5cqw;border:1.2cqw solid transparent;border-image:linear-gradient(135deg,#f4dc8c,#a37a1e,#f4dc8c) 1;pointer-events:none}
.s2-cv[data-th="artdeco"]::after{content:'';position:absolute;left:50%;top:7cqw;width:30cqw;height:30cqw;transform:translateX(-50%);background:conic-gradient(from 180deg,transparent 0 12deg,rgba(212,175,55,.45) 12deg 13deg,transparent 13deg 24deg,rgba(212,175,55,.45) 24deg 25deg,transparent 25deg 36deg,rgba(212,175,55,.45) 36deg 37deg,transparent 37deg 48deg,rgba(212,175,55,.45) 48deg 49deg,transparent 49deg 60deg,rgba(212,175,55,.45) 60deg 61deg,transparent 61deg 360deg);border-radius:50%;opacity:.9}
.s2-cv[data-th="artdeco"] .ttl{text-transform:uppercase;letter-spacing:.06em;font-size:9cqw;text-align:center}
.s2-cv[data-th="artdeco"] .aut{text-align:center}
.s2-cv[data-th="botanica"]{--cv-font:'Cormorant Garamond',serif;background:#f4f1e8;--cv-ink:#2f3e2e;--cv-acc:#b4552d}
.s2-cv[data-th="botanica"]::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 30cqw 12cqw at 85% 12%,rgba(122,139,111,.55),transparent 70%),radial-gradient(ellipse 22cqw 10cqw at 14% 92%,rgba(122,139,111,.5),transparent 70%),radial-gradient(ellipse 14cqw 7cqw at 78% 86%,rgba(180,85,45,.35),transparent 70%)}
.s2-cv[data-th="botanica"] .ttl{font-weight:500;font-size:11.5cqw;font-style:italic}
.s2-cv[data-th="linen"]{--cv-font:'Tenor Sans',sans-serif;background:repeating-linear-gradient(0deg,rgba(0,0,0,.035) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(0,0,0,.035) 0 1px,transparent 1px 3px),#d8d3c8;--cv-ink:#2b2b2b;--cv-acc:#1f3a5f}
.s2-cv[data-th="linen"] .photo{inset:auto 9cqw 30cqw 12cqw;width:auto;height:44cqw;box-shadow:0 2px 0 rgba(0,0,0,.15)}
.s2-cv[data-th="linen"] .ttl{font-size:8cqw;letter-spacing:.04em;text-transform:uppercase}
.s2-cv[data-th="romance"]{--cv-font:'Cormorant Garamond',serif;background:linear-gradient(160deg,#fff7ee,#f4c7c3);--cv-ink:#7b2d3b;--cv-acc:#d6a756}
.s2-cv[data-th="romance"] .ttl{font-style:italic;font-size:12cqw}
.s2-cv[data-th="romance"]::before{content:'';position:absolute;inset:4cqw;border:1px solid rgba(123,45,59,.35);border-radius:2cqw;pointer-events:none}
.s2-cv[data-th="minimal"]{--cv-font:'Unbounded',sans-serif;background:#f0eee9;--cv-ink:#111;--cv-acc:#e63946}
.s2-cv[data-th="minimal"] .ttl{font-size:13cqw;font-weight:700;line-height:.98;letter-spacing:-.03em}
.s2-cv[data-th="minimal"] .rule{width:100%;height:4cqw;background:var(--cv-acc)}
.s2-cv[data-th="academia"]{--cv-font:'Prata',serif;background:#141210;--cv-ink:#e9dfc8;--cv-acc:#7a1e2b}
.s2-cv[data-th="academia"]::before{content:'';position:absolute;inset:6cqw;border:1px solid rgba(194,161,90,.6);pointer-events:none}
.s2-cv[data-th="academia"]::after{content:'❦';position:absolute;top:9cqw;left:50%;transform:translateX(-50%);color:#c2a15a;font-size:7cqw}
.s2-cv[data-th="academia"] .ttl{text-align:center;font-size:10cqw}
.s2-cv[data-th="academia"] .aut{text-align:center;color:#c2a15a}
.s2-cv[data-th="scrap"]{--cv-font:'Caveat',cursive;background:#d9c4a0;--cv-ink:#2a2420;--cv-acc:#d73b2e}
.s2-cv[data-th="scrap"] .photo{inset:10cqw 12cqw 38cqw 9cqw;width:auto;height:auto;transform:rotate(-4deg);border:2.5cqw solid #fff;border-bottom-width:9cqw;box-shadow:0 8px 16px -8px rgba(0,0,0,.5)}
.s2-cv[data-th="scrap"] .ttl{font-size:13cqw;font-weight:700;margin-top:0}
.s2-cv[data-th="scrap"] .in{justify-content:flex-end}
.s2-cv[data-th="fairy"]{--cv-font:'Unbounded',sans-serif;background:radial-gradient(circle at 70% 20%,#ffd166 0 12cqw,transparent 12.5cqw),linear-gradient(180deg,#118ab2,#06d6a0);--cv-ink:#fff8ec;--cv-acc:#ef476f}
.s2-cv[data-th="fairy"] .ttl{font-size:10cqw;font-weight:700}
.s2-cv[data-th="hero"]{--cv-font:'Literata',serif;background:#241f19;--cv-ink:#fff;--cv-acc:#d97757}
.s2-cv[data-th="hero"] .veil{background:linear-gradient(to top,rgba(14,11,8,.92) 0%,rgba(14,11,8,.6) 30%,rgba(14,11,8,.08) 60%,rgba(14,11,8,.3) 100%)}
.s2-cv[data-th="hero"] .ttl{text-shadow:0 2px 20px rgba(0,0,0,.6)}
.s2-cv[data-th="noir"]{--cv-font:'Unbounded',sans-serif;background:#0b0f2b;--cv-ink:#fff;--cv-acc:#c7f464}
.s2-cv[data-th="noir"]::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,110,199,.5),rgba(125,249,255,.35));mix-blend-mode:screen}
.s2-cv[data-th="noir"] .ttl{font-weight:700;font-size:11cqw;letter-spacing:-.02em}
.s2-cv[data-font="display"]{--cv-font:'Unbounded',sans-serif}
.s2-cv[data-font="script"]{--cv-font:'Caveat',cursive}
.s2-cv[data-font="serif"]{--cv-font:'Literata',serif}

/* полки и карточки книг */
.s2-shelf{display:flex;gap:14px;overflow-x:auto;padding:6px 2px 14px;scrollbar-width:none}
.s2-shelf::-webkit-scrollbar{display:none}
.s2-bkc{flex:none;width:118px;cursor:pointer;position:relative}
.s2-bkc .s2-bk{--bw:118px}
.s2-bkc .s2-bk .book{transform:none}.s2-bkc:hover .s2-bk .book{transform:rotateY(-10deg)}
.s2-bkc .rk{position:absolute;left:-6px;top:-8px;z-index:3;width:26px;height:26px;border-radius:50%;background:var(--text);color:var(--bg);font-family:var(--f-disp);font-weight:700;font-size:12px;display:grid;place-items:center;box-shadow:0 4px 12px rgba(0,0,0,.5)}
.s2-bkc .rk.gold{background:linear-gradient(135deg,#ffe08a,#c98a2e);color:#2a1d07}
.s2-bkc .t{font-size:12.5px;font-weight:600;margin-top:8px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.s2-bkc .a{font-size:11px;color:var(--faint);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.s2-bkc .mv{font-size:11px;margin-top:3px;color:var(--dim);font-variant-numeric:tabular-nums}
.s2-themes{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 8px;scrollbar-width:none}
.s2-themes::-webkit-scrollbar{display:none}
.s2-tm{flex:none;width:96px;text-align:center;cursor:pointer}
.s2-tm .s2-bk{margin:0 auto 6px}
.s2-tm span{font-size:11px;color:var(--dim);display:block}
.s2-tm.on span{color:var(--text);font-weight:600}
.s2-tm.on .s2-bk .front{outline:2px solid var(--accent);outline-offset:3px}
.s2-swatches{display:flex;gap:8px;flex-wrap:wrap}
.s2-sw{width:30px;height:30px;border-radius:50%;border:2px solid transparent;cursor:pointer;box-shadow:inset 0 0 0 2px var(--bg);transition:.15s}
.s2-sw.on{border-color:var(--text)}

/* ---------- разворот (бумага) ---------- */
.s2-spread{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--paper);color:var(--ink);border-radius:6px;overflow:hidden;box-shadow:var(--sh-lg);position:relative;font-family:var(--f-book);aspect-ratio:2/1.3;max-width:920px;margin:0 auto}
.s2-spread::before{content:'';position:absolute;left:50%;top:0;bottom:0;width:60px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(0,0,0,.09) 48%,rgba(0,0,0,.14) 50%,rgba(0,0,0,.09) 52%,transparent);pointer-events:none;z-index:2}
.s2-page{padding:7% 8% 6%;position:relative;display:flex;flex-direction:column;min-width:0}
.s2-page .num{position:absolute;bottom:3.5%;font-size:10px;color:var(--ink-dim);letter-spacing:.1em}
.s2-page.l .num{left:8%}.s2-page.r .num{right:8%}
.s2-page .ch{font-family:var(--f-ui);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-acc);font-weight:600;margin-bottom:6%}
.s2-page h4{font-family:var(--f-book);font-weight:500;font-size:clamp(14px,2.2vw,22px);line-height:1.15;margin:0 0 4%;color:var(--ink)}
.s2-page p{font-size:clamp(9px,1.25vw,13px);line-height:1.55;color:#2c2622;margin:0 0 .9em;hyphens:auto}
.s2-page p.dc::first-letter{font-size:2.9em;float:left;line-height:.8;padding:.08em .12em 0 0;color:var(--ink-acc)}
.s2-page .ph{border-radius:3px;overflow:hidden;background:#ddd;box-shadow:0 4px 14px -8px rgba(0,0,0,.5)}
.s2-page .ph img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.s2-page .cap{font-family:var(--f-script);font-size:clamp(10px,1.4vw,15px);color:#5b5248;margin-top:3%;line-height:1.2}
.s2-spread.blur .s2-page{filter:blur(6px);pointer-events:none;user-select:none}
.s2-spread .lock{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:rgba(250,247,240,.4);font-family:var(--f-ui);text-align:center;padding:16px}
.s2-spread .lock .t{font-weight:700;color:var(--ink);font-size:15px}
.s2-spread .lock .d{color:#4b433b;font-size:12px;max-width:40ch}
.s2-spnav{display:flex;justify-content:space-between;align-items:center;margin:12px auto;max-width:920px;gap:10px;flex-wrap:wrap}
.s2-spnav .dots{display:flex;gap:5px;flex-wrap:wrap}
.s2-spnav .dots i{width:6px;height:6px;border-radius:50%;background:var(--elev2)}
.s2-spnav .dots i.on{background:var(--accent)}
.s2-spnav .dots i.lock{background:transparent;border:1px solid var(--faint)}

/* ---------- шит / модалка / тост ---------- */
.s2-scrim{position:fixed;inset:0;background:rgba(10,9,8,.72);z-index:1000000;display:none;align-items:flex-end;justify-content:center;animation:s2fade .2s}
.s2-scrim.open{display:flex}
.s2-sheet{width:100%;max-width:560px;background:var(--surface);border:1px solid var(--border-hi);border-radius:24px 24px 0 0;padding:18px 20px calc(24px + env(safe-area-inset-bottom));max-height:88vh;overflow:auto;animation:s2up .35s var(--ease);color:var(--text)}
@media(min-width:640px){.s2-scrim{align-items:center}.s2-sheet{border-radius:24px}}
@keyframes s2up{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}
.s2-grab{width:38px;height:4px;border-radius:4px;background:var(--elev2);margin:0 auto 14px}
.s2-sheet h3{font-family:var(--f-disp);font-weight:600;font-size:18px;margin-bottom:6px}
body.st2 .st-toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%) translateY(20px);background:var(--elev2);color:var(--text);padding:10px 16px;border-radius:999px;font-size:14px;box-shadow:var(--sh-md);opacity:0;transition:.3s var(--ease);z-index:1000001;pointer-events:none;border:1px solid var(--border-hi);max-width:92vw;text-align:center}
body.st2 .st-toast.show{opacity:1;transform:translateX(-50%)}

/* ---------- агенты / прогресс ---------- */
.s2-agents{display:flex;flex-direction:column;gap:8px}
.s2-ag{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:14px;background:var(--surface);border:1px solid var(--border);transition:.3s}
.s2-ag .dot{width:10px;height:10px;border-radius:50%;background:var(--elev2);flex:none}
.s2-ag.run{border-color:var(--accent-line)}
.s2-ag.run .dot{background:var(--accent);animation:s2pulse 1.2s infinite}
.s2-ag.done .dot{background:var(--success)}
.s2-ag.warn .dot{background:var(--gold)}
.s2-ag .nm{font-weight:600;font-size:14px}
.s2-ag .ds{font-size:12px;color:var(--faint)}
.s2-ag .st{margin-left:auto;font-size:12px;color:var(--faint);white-space:nowrap;text-align:right}
.s2-ag.done .st{color:#8bd39c}
.s2-bar{height:6px;border-radius:6px;background:var(--elev);overflow:hidden}
.s2-bar i{display:block;height:100%;background:var(--grad);width:0;transition:width .6s var(--ease)}
.s2-stream{font-family:var(--f-book);font-size:16px;line-height:1.65;background:var(--paper);color:var(--ink);border-radius:14px;padding:18px 20px;min-height:100px;box-shadow:var(--sh-md);white-space:pre-wrap}
.s2-log{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--dim);max-height:200px;overflow:auto}
.s2-log .l{display:flex;gap:8px}
.s2-log .l i{flex:none;width:6px;height:6px;border-radius:50%;background:var(--faint);margin-top:7px}
.s2-log .l.ok i{background:var(--success)}.s2-log .l.warn i{background:var(--gold)}

/* ---------- цены / планы ---------- */
.s2-price{font-family:var(--f-disp);font-weight:600;font-size:22px;font-variant-numeric:tabular-nums}
.s2-price s{color:var(--faint);font-weight:400;font-size:14px;margin-left:6px;font-family:var(--f-ui)}
.s2-plan{display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:22px;background:var(--surface);border:1px solid var(--border);position:relative;cursor:pointer;transition:.2s}
.s2-plan:hover{border-color:var(--border-hi)}
.s2-plan.on{border-color:var(--accent-line);background:linear-gradient(180deg,rgba(217,119,87,.1),rgba(217,119,87,.02))}
.s2-plan.best::before{content:attr(data-badge);position:absolute;top:-10px;left:16px;padding:3px 9px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--grad);color:#fff}
.s2-plan ul{margin:0;padding-left:18px;color:var(--dim);font-size:13px;line-height:1.55}
.s2-plan .nm{font-weight:700;font-size:15px}
.s2-plan .ds{font-size:12px;color:var(--faint)}
.s2-plan .big{font-family:var(--f-disp);font-size:26px;font-weight:600;font-variant-numeric:tabular-nums}
.s2-plan .big span{font-family:var(--f-ui);font-size:13px;color:var(--faint);font-weight:400}
.s2-line{display:flex;justify-content:space-between;font-size:14px;color:var(--dim);padding:5px 0;gap:10px}
.s2-line b{color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}
.s2-total{display:flex;justify-content:space-between;align-items:baseline;padding:14px 0 0;border-top:1px solid var(--border-hi);margin-top:12px;gap:12px;flex-wrap:wrap}
.s2-total .s2-price{font-size:26px}

/* ---------- комментарии / реакции / роли ---------- */
.s2-cm{display:flex;gap:10px;padding:12px 0;border-top:1px solid var(--border)}
.s2-cm .av{width:32px;height:32px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:12px;font-weight:700;color:#fff;background:var(--grad);overflow:hidden}
.s2-cm .av img{width:100%;height:100%;object-fit:cover}
.s2-cm .who{font-size:13px;font-weight:600}
.s2-cm .when{font-size:11px;color:var(--faint);margin-left:6px}
.s2-cm .tx{font-size:14px;color:var(--dim);margin-top:2px;white-space:pre-wrap}
.s2-cm .q{font-family:var(--f-book);font-style:italic;font-size:13px;color:var(--faint);border-left:2px solid var(--accent-line);padding-left:8px;margin:4px 0}
.s2-cm .ops{display:flex;gap:12px;font-size:12px;color:var(--faint);margin-top:6px}
.s2-cm .ops button{color:var(--faint)}
.s2-cm .ops button.on{color:var(--accent-hi)}
.s2-reacts{display:flex;gap:6px;flex-wrap:wrap}
.s2-react{padding:5px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-size:13px;transition:.15s}
.s2-react:hover{border-color:var(--border-hi)}
.s2-react.on{background:var(--accent-soft);border-color:var(--accent-line)}
.s2-linkbox{display:flex;align-items:center;gap:8px;background:var(--bg-deep);border:1px solid var(--border-hi);border-radius:14px;padding:10px 12px;font-family:ui-monospace,Menlo,monospace;font-size:13px;color:var(--dim);overflow:hidden}
.s2-linkbox span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.s2-linkbox .s2-btn{flex:none}
.s2-roles{display:flex;flex-direction:column;gap:8px}
.s2-role{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:var(--surface);border:1px solid var(--border)}
.s2-role .av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:12px;color:#fff;flex:none;background:var(--grad)}
.s2-role .nm{font-weight:600;font-size:14px}
.s2-role .ds{font-size:12px;color:var(--faint)}
.s2-role .st{margin-left:auto}
.s2-ava{width:30px;height:30px;border-radius:50%;background:var(--grad);display:grid;place-items:center;font-weight:700;font-size:12px;color:#fff;overflow:hidden;flex:none}
.s2-ava img{width:100%;height:100%;object-fit:cover}
.s2-timeline{display:flex;flex-direction:column;margin:16px 0}
.s2-tl{display:flex;gap:14px;padding:10px 0}
.s2-tl .d{width:12px;height:12px;border-radius:50%;background:var(--elev2);margin-top:5px;flex:none}
.s2-tl.done .d{background:var(--success)}
.s2-tl.now .d{background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}
.s2-tl b{display:block;font-size:14px}
.s2-tl span{font-size:12px;color:var(--faint)}
.s2-sect{margin-top:34px}
.s2-sect h3{font-family:var(--f-disp);font-weight:600;font-size:17px;margin-bottom:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.s2-sect h3 .s2-pill{font-family:var(--f-ui)}
.s2-now{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--dim)}
.s2-now i{width:8px;height:8px;border-radius:50%;background:var(--success);animation:s2pulse 1.4s infinite}
.s2-empty{padding:40px 20px;text-align:center;color:var(--faint);border:1px dashed var(--border-hi);border-radius:22px}

/* ================= ВИТРИНА ================= */
.s2-home{max-width:1180px;margin:0 auto;padding:0 var(--gut) 90px}
.s2-sec{padding:56px 0 0}
.s2-sec .h{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.s2-sec h2{font-family:var(--f-disp);font-weight:600;font-size:clamp(21px,3vw,30px);line-height:1.15;letter-spacing:-.01em}
.s2-sec .h p{color:var(--dim);font-size:15px;margin-top:6px;max-width:58ch}
.s2-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:32px;align-items:center;padding:44px 0 10px;position:relative}
@media(max-width:900px){.s2-hero{grid-template-columns:minmax(0,1fr);padding-top:24px}}
.s2-hero h1{font-family:var(--f-disp);font-weight:600;font-size:clamp(30px,5vw,54px);line-height:1.06;letter-spacing:-.02em}
.s2-hero h1 em{font-style:normal;color:var(--accent-hi)}
.s2-hero .lead{font-size:clamp(15px,1.6vw,18px);color:var(--dim);margin-top:18px;max-width:52ch;line-height:1.55}
.s2-hero .cta{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap;align-items:center}
.s2-hero .free{font-size:12.5px;color:var(--faint);width:100%}
.s2-hero .trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px;padding-top:18px;border-top:1px solid var(--border);font-size:13px;color:var(--faint)}
.s2-hero .trust b{display:block;font-family:var(--f-disp);font-size:20px;color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}
.s2-stage{position:relative;height:420px;overflow:hidden;border-radius:26px;display:flex;align-items:flex-end;justify-content:center;perspective:1600px}
@media(max-width:900px){.s2-stage{height:300px}}
.s2-stage::before{content:'';position:absolute;inset:auto 10% 8% 10%;height:40%;background:radial-gradient(ellipse at 50% 100%,rgba(217,119,87,.35),transparent 65%);filter:blur(20px)}
.s2-stage .s2-bk{position:absolute;bottom:40px}
.s2-stage .b1{left:8%;--bw:170px;transform:rotate(-9deg) translateY(14px);z-index:1}
.s2-stage .b2{left:50%;--bw:220px;transform:translateX(-50%);z-index:3}
.s2-stage .b3{right:8%;--bw:170px;transform:rotate(9deg) translateY(14px);z-index:2}
@media(max-width:900px){.s2-stage .b1{--bw:120px;left:2%}.s2-stage .b2{--bw:160px}.s2-stage .b3{--bw:120px;right:2%}}
.s2-stage .tag{position:absolute;padding:6px 10px;border-radius:999px;background:rgba(15,14,13,.86);border:1px solid var(--border-hi);font-size:12px;color:var(--text);backdrop-filter:blur(8px);z-index:5;white-space:nowrap;box-shadow:var(--sh-md)}
.s2-stage .tag b{color:var(--accent-hi)}
.s2-stage .t1{left:4%;top:16%}.s2-stage .t2{right:4%;top:8%}.s2-stage .t3{left:50%;transform:translateX(-50%);bottom:4px}
.s2-prods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media(max-width:900px){.s2-prods{grid-template-columns:minmax(0,1fr)}}
.s2-prod{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:22px 22px 20px;display:flex;flex-direction:column;gap:10px;cursor:pointer;transition:.25s var(--ease);overflow:hidden}
.s2-prod:hover{border-color:var(--accent-line);transform:translateY(-4px);box-shadow:var(--sh-lg)}
.s2-prod .eb{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600}
.s2-prod h3{font-family:var(--f-disp);font-weight:600;font-size:21px;line-height:1.15}
.s2-prod .d{font-size:14px;color:var(--dim);line-height:1.5;min-height:42px}
.s2-prod .vis{height:150px;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;gap:12px;margin:6px 0 4px;position:relative}
.s2-prod .vis .s2-bk{--bw:96px}
.s2-prod .vis .s2-bk:nth-child(2){--bw:112px;z-index:2}
.s2-prod .vis .s2-bk:nth-child(1){transform:rotate(-8deg) translateY(8px)}
.s2-prod .vis .s2-bk:nth-child(3){transform:rotate(8deg) translateY(8px)}
.s2-prod ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--dim)}
.s2-prod ul li::before{content:'✓';color:var(--success);margin-right:8px;font-weight:700}
.s2-prod .pr{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:6px;padding-top:12px;border-top:1px solid var(--border)}
.s2-prod .pr b{font-family:var(--f-disp);font-size:15px}
.s2-prod .pr span{font-size:12px;color:var(--faint)}
.s2-prod .s2-btn{margin-top:4px}
.s2-prod.best{border-color:var(--accent-line);background:linear-gradient(180deg,rgba(217,119,87,.12),var(--surface) 40%)}
.s2-prod .badge{position:absolute;top:14px;right:14px}
.s2-steps3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;counter-reset:st}
@media(max-width:800px){.s2-steps3{grid-template-columns:minmax(0,1fr)}}
.s2-stp{background:var(--bg-deep);border:1px solid var(--border);border-radius:22px;padding:22px;position:relative}
.s2-stp::before{counter-increment:st;content:counter(st);position:absolute;top:18px;right:20px;font-family:var(--f-disp);font-size:34px;font-weight:700;color:var(--elev2);line-height:1}
.s2-stp h3{font-family:var(--f-disp);font-weight:600;font-size:17px;margin:12px 0 8px}
.s2-stp p{font-size:14px;color:var(--dim);line-height:1.5}
.s2-stp .ic{width:44px;height:44px;border-radius:14px;background:var(--accent-soft);display:grid;place-items:center;color:var(--accent-hi);font-size:20px}
.s2-stp .demo{margin-top:14px;border-radius:14px;background:var(--surface);border:1px solid var(--border);padding:12px;font-size:12.5px;color:var(--dim)}
.s2-stp .demo .s2-ag{padding:6px 8px;font-size:12px;border-radius:9px}
.s2-stp .demo .s2-ag .nm{font-size:12px}.s2-stp .demo .s2-ag .ds{display:none}
.s2-sample{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}
@media(max-width:900px){.s2-sample{grid-template-columns:minmax(0,1fr)}}
.s2-sample .tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.s2-sample .note{font-size:12.5px;color:var(--faint);margin-top:10px}
.s2-honest{background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:18px}
.s2-honest h3{font-family:var(--f-disp);font-size:15px;font-weight:600;margin-bottom:10px}
.s2-honest p{font-size:13.5px;color:var(--dim);line-height:1.5;margin-bottom:10px}
.s2-honest .s2-ag{padding:7px 10px}
.s2-covers{display:flex;gap:16px;overflow-x:auto;padding:14px 4px 18px;scrollbar-width:none}
.s2-covers::-webkit-scrollbar{display:none}
.s2-covers .c{flex:none;text-align:center}
.s2-covers .c .s2-bk{--bw:128px}
.s2-covers .c span{display:block;font-size:12px;color:var(--dim);margin-top:10px}
.s2-fam{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:26px;padding:26px}
@media(max-width:800px){.s2-fam{grid-template-columns:minmax(0,1fr)}}
.s2-fam h2{font-family:var(--f-disp);font-weight:600;font-size:clamp(20px,2.6vw,26px);line-height:1.15}
.s2-fam p{color:var(--dim);font-size:14.5px;margin-top:10px;line-height:1.55}
.s2-fam ul{margin:12px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--dim)}
.s2-fam ul li::before{content:'—';color:var(--accent);margin-right:8px}
.s2-fam .mock{background:var(--bg-deep);border:1px solid var(--border-hi);border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:8px}
.s2-plans3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(max-width:800px){.s2-plans3{grid-template-columns:minmax(0,1fr)}}
.s2-printrow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}
@media(max-width:800px){.s2-printrow{grid-template-columns:repeat(2,minmax(0,1fr))}}
.s2-printrow .s2-card{padding:14px;display:flex;flex-direction:column;gap:2px}
.s2-printrow .s2-card b{font-size:13.5px}
.s2-printrow .s2-card span{font-size:12px;color:var(--faint)}
.s2-printrow .s2-card .s2-price{font-size:18px;margin-top:6px}
.s2-revs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(max-width:800px){.s2-revs{grid-template-columns:minmax(0,1fr)}}
.s2-rev{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:10px}
.s2-rev .stars{color:var(--gold);font-size:13px;letter-spacing:.1em}
.s2-rev q{font-family:var(--f-book);font-size:15px;line-height:1.55;color:var(--text);quotes:'«' '»'}
.s2-rev .w{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--faint);margin-top:auto}
.s2-rev .w b{color:var(--dim)}
.s2-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(max-width:800px){.s2-faq{grid-template-columns:minmax(0,1fr)}}
.s2-faq details{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:0 18px}
.s2-faq summary{cursor:pointer;padding:14px 0;font-weight:600;font-size:14.5px;list-style:none;display:flex;justify-content:space-between;gap:10px}
.s2-faq summary::after{content:'+';color:var(--faint);font-weight:400}
.s2-faq details[open] summary::after{content:'−'}
.s2-faq details p{font-size:14px;color:var(--dim);padding:0 0 14px;line-height:1.55}
.s2-per{display:inline-flex;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:3px}
.s2-per a{padding:5px 11px;border-radius:999px;font-size:12px;color:var(--dim)}
.s2-per a.on{background:var(--elev2);color:var(--text)}
.s2-shelves{display:flex;flex-direction:column;gap:22px;margin-top:8px}
.s2-shelfhead{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}
.s2-shelfhead h3{font-family:var(--f-disp);font-weight:600;font-size:16px}
.s2-shelfhead a{font-size:13px;color:var(--accent)}
.s2-shelfhead p{font-size:12.5px;color:var(--faint);margin-top:2px}
.s2-final{margin-top:56px;background:linear-gradient(135deg,rgba(217,119,87,.22),rgba(139,92,246,.12));border:1px solid var(--accent-line);border-radius:28px;padding:34px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
@media(max-width:800px){.s2-final{grid-template-columns:minmax(0,1fr)}}
.s2-final h2{font-family:var(--f-disp);font-weight:600;font-size:clamp(22px,3vw,30px);line-height:1.15}
.s2-final p{color:var(--dim);margin-top:8px}
.s2-foot{margin-top:40px;border-top:1px solid var(--border);padding-top:20px;display:flex;gap:18px;flex-wrap:wrap;font-size:12.5px;color:var(--faint)}
.s2-foot b{color:var(--dim)}
.s2-newtiles{display:flex;flex-direction:column;gap:10px}
.s2-nt{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:12px;border-radius:18px;background:var(--elev);border:1px solid var(--border);cursor:pointer;transition:.15s;text-align:left;color:var(--text)}
.s2-nt:hover{border-color:var(--accent-line)}
.s2-nt .s2-bk{--bw:52px}.s2-nt .s2-bk .book{transform:rotateY(-18deg)}
.s2-nt b{font-size:15px;display:block}
.s2-nt span{font-size:12.5px;color:var(--dim);display:block;line-height:1.35}
.s2-nt .s2-pill{justify-self:end}

/* ================= ПОДАРОЧНАЯ ================= */
.s2-recips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media(max-width:560px){.s2-recips{grid-template-columns:repeat(2,minmax(0,1fr))}}
.s2-rc{display:flex;flex-direction:column;gap:6px;padding:14px 12px;border-radius:18px;background:var(--surface);border:1px solid var(--border);cursor:pointer;transition:.2s var(--ease);text-align:left;color:var(--text)}
.s2-rc:hover{border-color:var(--border-hi);transform:translateY(-2px)}
.s2-rc.on{border-color:var(--accent-line);background:linear-gradient(180deg,rgba(217,119,87,.12),rgba(217,119,87,.03))}
.s2-rc .em{font-size:26px;line-height:1}
.s2-rc b{font-size:14px}
.s2-rc span{font-size:11px;color:var(--faint);line-height:1.3}
.s2-fan{display:flex;gap:18px;justify-content:center;align-items:flex-end;margin:26px 0 30px;height:240px}
.s2-fan .s2-bk{transform-origin:bottom center}
.s2-fan .s2-bk:nth-child(1){transform:rotate(-8deg) translateY(10px)}
.s2-fan .s2-bk:nth-child(3){transform:rotate(8deg) translateY(10px)}
@media(max-width:560px){.s2-fan{height:190px;gap:10px;margin:18px 0 22px}.s2-fan .s2-bk{--bw:104px}}
.s2-meter{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--dim);flex-wrap:wrap}
.s2-meter .dots{display:flex;gap:4px}
.s2-meter .dots i{width:22px;height:6px;border-radius:6px;background:var(--elev2)}
.s2-meter .dots i.on{background:var(--success)}
.s2-voice{background:linear-gradient(180deg,rgba(217,119,87,.14),rgba(217,119,87,.04));border:1px solid var(--accent-line);border-radius:22px;padding:18px}
.s2-voice .big{display:flex;align-items:center;gap:14px}
.s2-voice .micbig{width:56px;height:56px;border-radius:50%;background:var(--grad);display:grid;place-items:center;color:#fff;flex:none;box-shadow:0 10px 26px -10px rgba(217,119,87,.8)}
.s2-voice .micbig.on{animation:s2pulse 1.4s infinite}
.s2-voice .tx{font-family:var(--f-book);font-size:15px;line-height:1.55;color:var(--text);margin-top:12px;min-height:24px;white-space:pre-wrap}
.s2-voice textarea{background:transparent;border:0;width:100%;font-family:var(--f-book);font-size:15px;line-height:1.55;color:var(--text);resize:vertical;min-height:70px;outline:none;margin-top:10px}
.s2-qs{display:flex;flex-direction:column;gap:8px}
.s2-q{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:16px;background:var(--surface);border:1px solid var(--border);transition:.2s}
.s2-q .n{width:26px;height:26px;border-radius:50%;background:var(--elev);display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--dim);flex:none}
.s2-q.done .n{background:var(--success);color:#fff}
.s2-q b{font-size:14px;display:block}
.s2-q span{font-size:12px;color:var(--faint)}
.s2-q textarea{width:100%;margin-top:8px;min-height:60px}
.s2-hero2{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;margin-bottom:26px}
@media(max-width:700px){.s2-hero2{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}.s2-hero2 .s2-sub{margin-inline:auto}.s2-hero2 .s2-acts{justify-content:center}}
.s2-hero2 .meta{display:flex;gap:14px;color:var(--faint);font-size:13px;margin-top:10px;flex-wrap:wrap}
.s2-hero2 .meta b{color:var(--dim)}
.s2-ttl-edit{font-family:var(--f-disp);font-weight:600;font-size:clamp(22px,3.6vw,30px);line-height:1.15;background:none;border:0;border-bottom:1px dashed var(--border-hi);color:var(--text);width:100%;padding:2px 0}
.s2-ttl-edit:focus{outline:none;border-color:var(--accent)}
.s2-cfg .rowc{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.s2-cfg .lab{font-size:12px;color:var(--faint);letter-spacing:.06em;text-transform:uppercase;font-weight:600;width:84px;flex:none}
.s2-share{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start}
@media(max-width:560px){.s2-share{grid-template-columns:minmax(0,1fr)}.s2-share .qr{display:none}}
.s2-qr{width:96px;height:96px;border-radius:10px;background:#fff;padding:6px;flex:none}
.s2-qr img{width:100%;height:100%}

/* ================= РОМАН ================= */
.s2-genres{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media(max-width:640px){.s2-genres{grid-template-columns:repeat(2,minmax(0,1fr))}}
.s2-gn{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:1/1.1;cursor:pointer;border:1px solid var(--border);transition:.2s var(--ease);text-align:left}
.s2-gn:hover{transform:translateY(-2px);border-color:var(--border-hi)}
.s2-gn.on{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.s2-gn .art{position:absolute;inset:0}
.s2-gn b{position:absolute;left:12px;right:12px;bottom:10px;font-size:13px;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.6);font-family:var(--f-disp);font-weight:500}
.s2-gn span{position:absolute;left:12px;bottom:32px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.s2-opt{display:flex;flex-direction:column;gap:8px;margin-top:18px}
.s2-opt .lab{font-size:12px;color:var(--faint);letter-spacing:.06em;text-transform:uppercase;font-weight:600}
.s2-sizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.s2-sz{padding:12px;border-radius:14px;background:var(--surface);border:1px solid var(--border);cursor:pointer;text-align:left;color:var(--text)}
.s2-sz.on{border-color:var(--accent-line);background:var(--accent-soft)}
.s2-sz b{display:block;font-size:14px}
.s2-sz span{font-size:11px;color:var(--faint)}
.s2-prem{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media(max-width:820px){.s2-prem{grid-template-columns:minmax(0,1fr)}}
.s2-pm{background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:18px;cursor:pointer;transition:.2s var(--ease);display:flex;flex-direction:column;gap:10px;position:relative;text-align:left;color:var(--text)}
.s2-pm:hover{border-color:var(--border-hi);transform:translateY(-3px)}
.s2-pm.on{border-color:var(--accent-line);background:linear-gradient(180deg,rgba(217,119,87,.1),rgba(217,119,87,.02))}
.s2-pm .s2-bk{margin:0 auto 6px}
.s2-pm h3{font-family:var(--f-book);font-weight:500;font-size:19px;line-height:1.2}
.s2-pm .log{font-size:14px;color:var(--dim);line-height:1.5}
.s2-pm .end{font-size:12px;color:var(--faint);border-top:1px solid var(--border);padding-top:8px}
.s2-pm .end b{color:var(--dim)}
.s2-cast{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(max-width:640px){.s2-cast{grid-template-columns:minmax(0,1fr)}}
.s2-hc{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:16px;display:grid;grid-template-columns:64px 1fr;gap:14px;position:relative}
.s2-hc .por{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;font-family:var(--f-disp);font-weight:700;color:#fff;font-size:20px}
.s2-hc .nm{font-weight:700;font-size:15px}
.s2-hc .rl{font-size:12px;color:var(--faint);margin-bottom:8px}
.s2-hc dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:3px 10px;font-size:12.5px}
.s2-hc dt{color:var(--faint);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:600;padding-top:2px}
.s2-hc dd{margin:0;color:var(--dim)}
.s2-hc .voice{grid-column:1/-1;font-family:var(--f-book);font-style:italic;font-size:14px;color:var(--text);border-left:2px solid var(--accent);padding-left:10px;margin-top:4px}
.s2-hc .tools{grid-column:1/-1;display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}
.s2-hc [contenteditable]{border-bottom:1px dashed transparent}
.s2-hc [contenteditable]:hover,.s2-hc [contenteditable]:focus{border-bottom-color:var(--accent-line);outline:none}
.s2-bible{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:12px 14px;border-radius:14px;background:var(--bg-deep);border:1px solid var(--border-hi);font-size:13px;color:var(--dim)}
.s2-bible b{color:var(--text)}
.s2-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(max-width:820px){.s2-board{grid-template-columns:minmax(0,1fr)}}
.s2-act{background:var(--bg-deep);border:1px solid var(--border);border-radius:18px;padding:12px;min-width:0}
.s2-act h4{font-family:var(--f-disp);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);margin:4px 4px 10px;display:flex;justify-content:space-between}
.s2-act h4 span{color:var(--accent)}
.s2-cc{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:10px 12px;margin-bottom:8px;transition:.15s;position:relative}
.s2-cc:hover{border-color:var(--border-hi)}
.s2-cc.done{border-left:3px solid var(--success)}
.s2-cc.now{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}
.s2-cc.lock{opacity:.55}
.s2-cc .n{font-size:10px;color:var(--faint);letter-spacing:.1em;text-transform:uppercase;display:flex;justify-content:space-between}
.s2-cc b{display:block;font-size:13.5px;margin:2px 0}
.s2-cc p{font-size:12px;color:var(--dim);line-height:1.4}
.s2-cc .hk{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.s2-cc .hk i{font-style:normal;font-size:10px;padding:2px 6px;border-radius:5px;background:var(--elev)}
.s2-cc .hk i.open{color:var(--gold)}.s2-cc .hk i.close{color:#8bd39c}
.s2-cc [contenteditable]:focus{outline:none;border-bottom:1px dashed var(--accent-line)}
.s2-knobs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.s2-room{display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start}
@media(max-width:900px){.s2-room{grid-template-columns:minmax(0,1fr)}}
.s2-pipe{display:flex;flex-direction:column;gap:6px}
.s2-pp{display:flex;gap:10px;padding:9px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--border);font-size:13px;transition:.3s}
.s2-pp .dot{width:8px;height:8px;border-radius:50%;background:var(--elev2);margin-top:6px;flex:none}
.s2-pp.run{border-color:var(--accent-line)}.s2-pp.run .dot{background:var(--accent);animation:s2pulse 1.2s infinite}
.s2-pp.done .dot{background:var(--success)}
.s2-pp b{display:block;font-size:13px}
.s2-pp span{color:var(--faint);font-size:12px;display:block}
.s2-pp .find{margin-top:4px;font-size:12px;color:var(--gold)}
.s2-manu{background:var(--paper);color:var(--ink);border-radius:18px;padding:clamp(20px,4vw,44px);box-shadow:var(--sh-lg);font-family:var(--f-book);min-height:320px;position:relative}
.s2-manu .ch{font-family:var(--f-ui);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-acc);font-weight:600}
.s2-manu h2{font-family:var(--f-book);font-weight:500;font-size:clamp(22px,3vw,30px);margin:6px 0 18px;line-height:1.15}
.s2-manu p{font-size:16px;line-height:1.7;margin:0 0 1em;max-width:62ch;hyphens:auto}
.s2-manu p.dc::first-letter{font-size:3.2em;float:left;line-height:.8;padding:.06em .1em 0 0;color:var(--ink-acc)}
.s2-gate{margin-top:16px;background:var(--surface);border:1px solid var(--accent-line);border-radius:20px;padding:16px}
.s2-gate h4{font-family:var(--f-disp);font-size:14px;margin:0 0 4px}
.s2-gate .s2-chips{margin:10px 0}
.s2-chat{display:flex;flex-direction:column;gap:10px;max-height:320px;overflow:auto;padding:4px 2px}
.s2-bub{max-width:88%;padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.45}
.s2-bub.ai{background:var(--elev);border-bottom-left-radius:6px;align-self:flex-start;font-family:var(--f-book)}
.s2-bub.me{background:var(--accent-soft);border:1px solid var(--accent-line);border-bottom-right-radius:6px;align-self:flex-end}

/* ================= АЛЬБОМ ================= */
.s2-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(max-width:600px){.s2-events{grid-template-columns:minmax(0,1fr)}}
.s2-ev{position:relative;border-radius:20px;overflow:hidden;background:var(--surface);border:1px solid var(--border);cursor:pointer;transition:.2s var(--ease);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 1fr;grid-template-rows:110px auto;gap:2px}
.s2-ev.on{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}
.s2-ev img{width:100%;height:110px;object-fit:cover}
.s2-ev .in{grid-column:1/-1;padding:12px 14px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.s2-ev b{font-size:15px;display:block}
.s2-ev span{font-size:12px;color:var(--faint)}
.s2-stat{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}
@media(max-width:600px){.s2-stat{grid-template-columns:repeat(2,minmax(0,1fr))}}
.s2-stat .s2-card{padding:14px;text-align:center}
.s2-stat .n{font-family:var(--f-disp);font-size:26px;font-weight:600;font-variant-numeric:tabular-nums}
.s2-stat .l{font-size:12px;color:var(--faint);margin-top:2px}
.s2-stacks{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}
.s2-stk{position:relative;aspect-ratio:1;border-radius:12px;cursor:pointer}
.s2-stk img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:12px;box-shadow:0 4px 12px -6px rgba(0,0,0,.6)}
.s2-stk img:nth-child(1){transform:rotate(-6deg) translate(-3px,2px);opacity:.6}
.s2-stk img:nth-child(2){transform:rotate(4deg) translate(3px,-1px);opacity:.8}
.s2-stk img:last-child{transform:none;opacity:1}
.s2-stk .cnt{position:absolute;right:-4px;top:-6px;background:var(--text);color:var(--bg);font-size:11px;font-weight:700;padding:2px 7px;border-radius:999px;z-index:2}
.s2-stk .best{position:absolute;left:6px;bottom:6px;font-size:10px;font-weight:600;background:rgba(0,0,0,.6);color:#fff;padding:2px 6px;border-radius:5px;z-index:2}
.s2-stk.bad img{filter:grayscale(1) blur(1px);opacity:.5}
.s2-stk.bad .best{background:var(--danger)}
.s2-route{display:flex;gap:6px;overflow-x:auto;padding:4px 0 8px;scrollbar-width:none}
.s2-route::-webkit-scrollbar{display:none}
.s2-day{flex:none;padding:8px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--border);font-size:12px;color:var(--dim);cursor:pointer;min-width:120px}
.s2-day.on{border-color:var(--accent-line);background:var(--accent-soft);color:var(--text)}
.s2-day b{display:block;font-size:13px;color:var(--text)}
.s2-aspread{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#fff;border-radius:6px;overflow:hidden;box-shadow:var(--sh-lg);aspect-ratio:2/1;position:relative;max-width:920px;margin:0 auto}
.s2-aspread::before{content:'';position:absolute;left:50%;top:0;bottom:0;width:40px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(0,0,0,.08) 48%,rgba(0,0,0,.12) 50%,rgba(0,0,0,.08) 52%,transparent);pointer-events:none;z-index:2}
.s2-apage{padding:5%;position:relative;display:grid;gap:4%;min-width:0}
.s2-apage.big{grid-template-rows:1fr auto}
.s2-apage.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:1fr 1fr}
.s2-apage.text{display:flex;flex-direction:column;justify-content:center;padding:9% 10%}
.s2-apage .fr{position:relative;overflow:hidden;background:#eee;cursor:pointer;min-height:0}
.s2-apage .fr img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}
.s2-apage .fr:hover img{transform:scale(1.03)}
.s2-apage .fr.full{grid-column:1/-1;grid-row:1/-1}
.s2-apage .cap{font-family:var(--f-script);font-size:clamp(11px,1.5vw,17px);color:#4a4139;line-height:1.2;align-self:end}
.s2-apage .cap.ui{font-family:var(--f-ui);font-size:clamp(8px,1vw,11px);letter-spacing:.1em;text-transform:uppercase;color:#8a8173}
.s2-apage h4{font-family:var(--f-book);font-weight:500;font-size:clamp(16px,2.6vw,30px);line-height:1.1;color:#211d18;margin:0 0 4%}
.s2-apage .day-l{font-family:var(--f-ui);font-size:clamp(8px,1vw,11px);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-acc);font-weight:600;margin-bottom:6%}
.s2-apage p{font-family:var(--f-book);font-size:clamp(9px,1.25vw,14px);line-height:1.5;color:#3b342d;margin:0}
.s2-aspread.blur .s2-apage{filter:blur(6px);pointer-events:none}
.s2-aspread .lock{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.4);font-family:var(--f-ui);color:#211d18;text-align:center;padding:20px}

/* ================= ЗАКАЗ ================= */
.s2-fmt{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media(max-width:600px){.s2-fmt{grid-template-columns:minmax(0,1fr)}}
.s2-fmt .s2-card{cursor:pointer;display:flex;flex-direction:column;gap:6px}
.s2-fmt .s2-card .nm{font-weight:700;font-size:15px}
.s2-fmt .s2-card .ds{font-size:12px;color:var(--faint);line-height:1.4}
.s2-fmt .s2-card .s2-price{font-size:19px}
.s2-fmt .s2-card ul{padding-left:16px;margin:4px 0 0;font-size:12px;color:var(--dim);line-height:1.5}

/* ================= СТРАНИЦА КНИГИ ================= */
.s2-bookpage{max-width:1000px;margin:0 auto;padding:26px var(--gut) 120px}
.s2-bp-hero{display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:start}
@media(max-width:700px){.s2-bp-hero{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}.s2-bp-hero .s2-acts{justify-content:center}}
.s2-bp-hero h1{font-family:var(--f-book);font-weight:500;font-size:clamp(26px,4vw,38px);line-height:1.1}
.s2-bp-hero .by{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:14px;color:var(--dim);flex-wrap:wrap}
.s2-bp-hero .stats{display:flex;gap:16px;flex-wrap:wrap;margin-top:14px;font-size:13px;color:var(--faint)}
.s2-bp-hero .stats b{color:var(--text);font-family:var(--f-disp);font-size:15px}
.s2-bp-hero .blurb{font-family:var(--f-book);font-size:16px;line-height:1.6;color:var(--dim);margin-top:14px;max-width:60ch}
.s2-follow{padding:5px 11px;border-radius:999px;border:1px solid var(--border-hi);font-size:12px;font-weight:600;color:var(--dim)}
.s2-follow.on{background:var(--accent-soft);border-color:var(--accent-line);color:var(--text)}
.s2-chs{display:flex;flex-direction:column;gap:4px}
.s2-chrow{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;font-size:14px;cursor:pointer;color:var(--text)}
.s2-chrow:hover{background:var(--surface)}
.s2-chrow .n{width:26px;color:var(--faint);font-size:12px;font-variant-numeric:tabular-nums}
.s2-chrow .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.s2-chrow .m{font-size:12px;color:var(--faint);white-space:nowrap}
.s2-chrow.lk{color:var(--faint)}
.s2-bp-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;margin-top:34px;align-items:start}
@media(max-width:800px){.s2-bp-grid{grid-template-columns:minmax(0,1fr)}}
.s2-sidecard{background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:16px}
.s2-sidecard h3{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);font-weight:600;margin-bottom:12px;display:flex;justify-content:space-between}
.s2-vis{display:flex;flex-direction:column;gap:8px}
.s2-vis label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:14px;border:1px solid var(--border);background:var(--bg-deep);cursor:pointer}
.s2-vis label.on{border-color:var(--accent-line);background:var(--accent-soft)}
.s2-vis label input{margin-top:3px}
.s2-vis b{display:block;font-size:13.5px}
.s2-vis span{font-size:12px;color:var(--faint)}

/* ================= КАТАЛОГ / МОИ ================= */
.s2-cat{max-width:1180px;margin:0 auto;padding:26px var(--gut) 120px}
.s2-filters{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 18px;align-items:center}
.s2-cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px 14px}
.s2-cgrid .s2-bkc{width:auto}.s2-cgrid .s2-bkc .s2-bk{--bw:100%;width:100%;height:auto;aspect-ratio:1/1.42}
.s2-my{max-width:1000px;margin:0 auto;padding:26px var(--gut) 120px}
.s2-mygrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.s2-mc{display:flex;gap:14px;padding:14px;border-radius:18px;background:var(--surface);border:1px solid var(--border)}
.s2-mc .s2-bk{--bw:64px}
.s2-mc b{display:block;font-size:14px}
.s2-mc .s{font-size:12px;color:var(--faint);margin:2px 0 8px}
.s2-mc .s2-bar{margin-bottom:6px}
.s2-mc .s2-acts{margin-top:8px;gap:6px}
.s2-mc .s2-acts .s2-btn{flex:none}

/* ================= ЧИТАЛКА ================= */
body.st2.s2-reader-body{overflow:hidden;height:100vh;height:100dvh}
.rd{--rd-bg:#faf7f0;--rd-ink:#211d18;--rd-dim:#7a7167;--rd-acc:#b05730;--rd-ui:rgba(33,29,24,.06);--rd-ui-hi:rgba(33,29,24,.12);--rd-font:'Literata',Georgia,serif;--rd-size:19px;--rd-lh:1.65;--rd-width:680px;
  position:fixed;inset:0;background:var(--rd-bg);color:var(--rd-ink);font-family:var(--rd-font);font-size:var(--rd-size);line-height:var(--rd-lh);display:flex;flex-direction:column;z-index:10}
.rd[data-theme="sepia"]{--rd-bg:#f1e6cf;--rd-ink:#3b2f22;--rd-dim:#8a7a66;--rd-ui:rgba(59,47,34,.07);--rd-ui-hi:rgba(59,47,34,.14)}
.rd[data-theme="dark"]{--rd-bg:#1a1816;--rd-ink:#e8e2d3;--rd-dim:#9a9184;--rd-acc:#e0906c;--rd-ui:rgba(255,255,255,.07);--rd-ui-hi:rgba(255,255,255,.14)}
.rd[data-theme="black"]{--rd-bg:#000;--rd-ink:#d9d3c6;--rd-dim:#8a847a;--rd-acc:#e0906c;--rd-ui:rgba(255,255,255,.08);--rd-ui-hi:rgba(255,255,255,.16)}
.rd[data-font="sans"]{--rd-font:'Inter',-apple-system,sans-serif}
.rd[data-font="playfair"]{--rd-font:'Playfair Display',Georgia,serif}
.rd[data-font="cormorant"]{--rd-font:'Cormorant Garamond',Georgia,serif;--rd-lh:1.55}
.rd .rd-top,.rd .rd-bot{position:absolute;left:0;right:0;z-index:20;display:flex;align-items:center;gap:8px;padding:10px 14px;background:linear-gradient(to bottom,var(--rd-bg) 70%,transparent);transition:opacity .25s,transform .25s;font-family:'Inter',sans-serif;font-size:13px;color:var(--rd-dim)}
.rd .rd-top{top:0;padding-top:calc(10px + env(safe-area-inset-top))}
.rd .rd-bot{bottom:0;background:linear-gradient(to top,var(--rd-bg) 70%,transparent);padding-bottom:calc(10px + env(safe-area-inset-bottom));justify-content:space-between}
.rd.hide-ui .rd-top{opacity:0;transform:translateY(-100%);pointer-events:none}
.rd.hide-ui .rd-bot{opacity:0;transform:translateY(100%);pointer-events:none}
.rd .rd-ico{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--rd-ui);color:var(--rd-ink);flex:none;font-size:15px}
.rd .rd-ico:hover{background:var(--rd-ui-hi)}
.rd .rd-ico.on{background:var(--rd-acc);color:#fff}
.rd .rd-title{flex:1;min-width:0;text-align:center}
.rd .rd-title b{display:block;color:var(--rd-ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}
.rd .rd-title span{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.rd .rd-body{position:absolute;inset:0;overflow:hidden}
/* постраничный режим: колонки */
.rd .rd-view{position:absolute;top:56px;bottom:52px;left:0;right:0;overflow:hidden}
.rd .rd-cols{height:100%;column-fill:auto;column-gap:0;padding:0 var(--rd-pad,28px);will-change:transform;transition:transform .35s var(--ease)}
.rd .rd-cols.noanim{transition:none}
.rd .rd-cols>*{break-inside:avoid-column}
.rd .rd-cols .rd-txt{max-width:var(--rd-width);margin:0 auto}
/* режим прокрутки */
.rd[data-mode="scroll"] .rd-view{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.rd[data-mode="scroll"] .rd-cols{column-width:auto!important;transform:none!important;height:auto;padding:20px var(--rd-pad,28px) 120px}
.rd .rd-txt p{margin:0 0 1em;hyphens:auto;text-align:left;orphans:2;widows:2}
.rd .rd-txt p.verse{white-space:pre-wrap;font-style:italic}
.rd .rd-txt h2.ch{font-family:var(--rd-font);font-weight:500;font-size:1.6em;line-height:1.15;margin:.2em 0 .8em;break-after:avoid}
.rd .rd-txt .chn{font-family:'Inter',sans-serif;font-size:.6em;letter-spacing:.22em;text-transform:uppercase;color:var(--rd-acc);font-weight:600;margin:0 0 .6em;display:block}
.rd .rd-txt .chapter{break-before:column;padding-top:.5em}
.rd .rd-txt .chapter:first-child{break-before:auto}
.rd .rd-txt p.drop::first-letter{font-size:3.1em;float:left;line-height:.82;padding:.06em .1em 0 0;color:var(--rd-acc);font-family:var(--rd-font)}
.rd .rd-txt figure{margin:.6em 0 1.2em;break-inside:avoid}
.rd .rd-txt figure img{width:100%;max-height:60vh;object-fit:cover;border-radius:6px;box-shadow:0 8px 24px -12px rgba(0,0,0,.4)}
.rd .rd-txt figcaption{font-family:'Caveat',cursive;font-size:.95em;color:var(--rd-dim);margin-top:.35em}
.rd .rd-txt .dedic{font-style:italic;text-align:center;padding:30% 8% 0;color:var(--rd-dim)}
.rd .rd-txt .cover{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:70vh;padding:8% 0}
.rd .rd-txt .cover .s2-bk{margin-bottom:26px}
.rd .rd-txt .cover h1{font-family:var(--rd-font);font-weight:500;font-size:1.9em;line-height:1.15}
.rd .rd-txt .cover .au{font-family:'Inter',sans-serif;font-size:.7em;letter-spacing:.16em;text-transform:uppercase;color:var(--rd-dim);margin-top:12px}
.rd .rd-txt .cover .an{font-size:.85em;color:var(--rd-dim);max-width:46ch;margin-top:16px}
.rd .rd-txt .gate{break-before:column;text-align:center;padding:20% 6%;font-family:'Inter',sans-serif;font-size:.85em}
.rd .rd-txt .gate b{display:block;font-size:1.35em;color:var(--rd-ink);margin-bottom:8px;font-family:var(--rd-font);font-weight:500}
.rd .rd-txt .gate p{color:var(--rd-dim);max-width:44ch;margin:0 auto 16px}
.rd .rd-txt .gate .s2-btn{display:inline-flex}
.rd .rd-txt .end{break-before:column;text-align:center;padding:16% 6%;font-family:'Inter',sans-serif;font-size:.85em;color:var(--rd-dim)}
.rd .rd-txt .end b{display:block;font-family:var(--rd-font);font-size:1.5em;color:var(--rd-ink);margin-bottom:10px;font-weight:500}
.rd .rd-txt .end .s2-reacts{justify-content:center;margin:14px 0}
.rd .rd-txt .end .s2-react{border-color:var(--rd-ui-hi);background:var(--rd-ui);color:var(--rd-ink)}
.rd .rd-txt .end .s2-react.on{background:var(--rd-acc);color:#fff}
.rd .rd-txt mark.hl{background:rgba(226,177,60,.42);color:inherit;border-radius:2px;cursor:pointer}
.rd .rd-txt mark.hl.rose{background:rgba(217,119,87,.35)}
.rd .rd-txt mark.hl.mint{background:rgba(88,167,107,.35)}
.rd .rd-txt .chapter-react{display:flex;gap:6px;justify-content:center;margin:1.2em 0 .4em;font-family:'Inter',sans-serif;font-size:.7em;break-inside:avoid}
.rd .rd-txt .chapter-react button{padding:5px 10px;border-radius:999px;background:var(--rd-ui);color:var(--rd-ink)}
.rd .rd-txt .chapter-react button.on{background:var(--rd-acc);color:#fff}
.rd .rd-txt .cm-hint{font-family:'Inter',sans-serif;font-size:.65em;color:var(--rd-dim);text-align:center;margin-bottom:1.5em}
.rd .rd-txt .cm-hint button{color:var(--rd-acc);font-weight:600}
/* тап-зоны */
.rd .rd-zone{position:absolute;top:56px;bottom:52px;width:22%;z-index:5;cursor:pointer}
.rd .rd-zone.l{left:0}.rd .rd-zone.r{right:0}
.rd .rd-zone.c{left:22%;right:22%;width:auto}
.rd[data-mode="scroll"] .rd-zone{display:none}
/* прогресс */
.rd .rd-prog{flex:1;display:flex;align-items:center;gap:10px;min-width:0;font-variant-numeric:tabular-nums}
.rd .rd-prog .track{flex:1;height:4px;border-radius:4px;background:var(--rd-ui-hi);position:relative;cursor:pointer}
.rd .rd-prog .track i{position:absolute;left:0;top:0;bottom:0;border-radius:4px;background:var(--rd-acc);width:0}
.rd .rd-prog .track b{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;background:var(--rd-acc);transform:translate(-50%,-50%);box-shadow:0 0 0 3px var(--rd-bg)}
.rd .rd-prog span{white-space:nowrap;font-size:12px}
/* панели */
.rd .rd-panel{position:absolute;z-index:30;background:var(--rd-bg);color:var(--rd-ink);border:1px solid var(--rd-ui-hi);border-radius:20px;box-shadow:0 24px 60px -20px rgba(0,0,0,.5);font-family:'Inter',sans-serif;font-size:14px;display:none;animation:s2fade .2s}
.rd .rd-panel.open{display:block}
.rd .rd-aa{top:60px;right:14px;width:min(360px,calc(100vw - 28px));padding:16px;max-height:calc(100vh - 130px);overflow:auto}
.rd .rd-aa h4{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--rd-dim);margin:14px 0 8px}
.rd .rd-aa h4:first-child{margin-top:0}
.rd .rd-aa .row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.rd .rd-aa .sw{width:38px;height:38px;border-radius:50%;border:2px solid transparent;cursor:pointer;display:grid;place-items:center;font-family:var(--f-book);font-size:15px}
.rd .rd-aa .sw.on{border-color:var(--rd-acc)}
.rd .rd-aa .fb{padding:8px 12px;border-radius:12px;background:var(--rd-ui);cursor:pointer;font-size:14px}
.rd .rd-aa .fb.on{background:var(--rd-acc);color:#fff}
.rd .rd-aa .stepper{display:flex;align-items:center;gap:6px;background:var(--rd-ui);border-radius:12px;padding:3px}
.rd .rd-aa .stepper button{width:40px;height:34px;border-radius:9px;font-size:18px;color:var(--rd-ink)}
.rd .rd-aa .stepper span{min-width:44px;text-align:center;font-size:13px}
.rd .rd-aa input[type=range]{width:100%;accent-color:var(--rd-acc)}
.rd .rd-toc{top:60px;left:14px;width:min(360px,calc(100vw - 28px));max-height:calc(100vh - 130px);overflow:auto;padding:10px}
.rd .rd-toc a{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;color:var(--rd-ink)}
.rd .rd-toc a:hover{background:var(--rd-ui)}
.rd .rd-toc a.on{background:var(--rd-ui-hi)}
.rd .rd-toc a.lk{color:var(--rd-dim)}
.rd .rd-toc a span{font-size:12px;color:var(--rd-dim);white-space:nowrap}
.rd .rd-toc .hd{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--rd-dim);padding:8px 12px 4px}
/* выделение → меню */
.rd .rd-sel{position:absolute;z-index:40;display:none;gap:4px;background:var(--rd-ink);color:var(--rd-bg);border-radius:12px;padding:6px;box-shadow:var(--sh-md);font-family:'Inter',sans-serif;font-size:13px}
.rd .rd-sel.open{display:flex}
.rd .rd-sel button{padding:6px 10px;border-radius:8px;color:inherit;white-space:nowrap}
.rd .rd-sel button:hover{background:rgba(255,255,255,.15)}
.rd .rd-sel .c{width:22px;height:22px;border-radius:50%;padding:0;border:2px solid transparent}
.rd .rd-sel .c.on{border-color:#fff}
/* комментарии — шторка */
.rd .rd-sheet{position:absolute;left:0;right:0;bottom:0;z-index:35;background:var(--rd-bg);color:var(--rd-ink);border-top:1px solid var(--rd-ui-hi);border-radius:22px 22px 0 0;max-height:78vh;display:none;flex-direction:column;font-family:'Inter',sans-serif;font-size:14px;box-shadow:0 -20px 60px -20px rgba(0,0,0,.5)}
.rd .rd-sheet.open{display:flex;animation:s2up .3s var(--ease)}
.rd .rd-sheet .hd{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--rd-ui-hi)}
.rd .rd-sheet .hd b{flex:1}
.rd .rd-sheet .bd{overflow:auto;padding:4px 18px;flex:1}
.rd .rd-sheet .s2-cm{border-top-color:var(--rd-ui-hi)}
.rd .rd-sheet .s2-cm .tx{color:var(--rd-ink);opacity:.85}
.rd .rd-sheet .s2-cm .q{color:var(--rd-dim);border-left-color:var(--rd-acc)}
.rd .rd-sheet .ft{padding:10px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--rd-ui-hi)}
.rd .rd-sheet .s2-composer{background:var(--rd-ui);border-color:var(--rd-ui-hi)}
.rd .rd-sheet .s2-composer textarea{color:var(--rd-ink)}
.rd .rd-sheet .s2-composer .send{background:var(--rd-acc)}
.rd .rd-sheet .s2-composer .mic{background:var(--rd-ui-hi);color:var(--rd-ink)}
.rd .rd-note{position:absolute;left:50%;bottom:70px;transform:translateX(-50%);background:var(--rd-ink);color:var(--rd-bg);padding:8px 14px;border-radius:999px;font-family:'Inter',sans-serif;font-size:13px;opacity:0;transition:.3s;pointer-events:none;z-index:45;white-space:nowrap}
.rd .rd-note.on{opacity:1}
.rd .rd-loading{position:absolute;inset:0;display:grid;place-items:center;font-family:'Inter',sans-serif;color:var(--rd-dim);z-index:50;background:var(--rd-bg)}
@media(max-width:600px){.rd{--rd-size:18px;--rd-pad:22px}.rd .rd-view{top:52px;bottom:48px}}
@media(prefers-reduced-motion:reduce){body.st2 *{animation:none!important;transition:none!important}}
@media print{.rd .rd-top,.rd .rd-bot,.rd .rd-zone,.rd .rd-panel,.rd .rd-sheet{display:none!important}.rd{position:static}.rd .rd-view{position:static;overflow:visible}.rd .rd-cols{column-width:auto!important;transform:none!important}}

/* ── альбом: раскладки по ролям (hero / side / pano), см. album2.js ── */
.s2-apage.two.three{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:1fr 1fr}
.s2-apage.two.three .fr:first-child{grid-column:1/-1}
.s2-apage.big.pano{padding:0;gap:0;grid-template-rows:1fr}
.s2-apage.big.pano .fr{height:100%}
.s2-apage.big.pano .fr.pano-l img{object-position:left center}
.s2-apage.big.pano .fr.pano-r img{object-position:right center}
.s2-apage.big.pano .cap{position:absolute;left:5%;bottom:4%;background:rgba(255,255,255,.85);padding:4px 8px;border-radius:4px}
.s2-apage.text .two{display:grid;gap:4%;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0;aspect-ratio:2/1}

/* ── книга о человеке: интервью и главы (gift.php / gift2.js) ── */
.s2-talk{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;align-items:start;margin-top:14px}
@media (max-width:860px){.s2-talk{grid-template-columns:minmax(0,1fr)}}
.s2-tp{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:7px 8px;border-radius:10px;font-size:13.5px;color:var(--dim);background:transparent}
.s2-tp:hover{background:var(--elev2)}
.s2-tp.on{background:var(--elev2);color:var(--text)}
.s2-tp.done{color:var(--text)}
.s2-tp.skipped{opacity:.55}
.s2-tp .st{width:16px;text-align:center;color:var(--accent)}
.s2-tp .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.s2-tp .m{font-size:11px;color:var(--faint)}
.s2-qa{padding:10px 14px;border-left:2px solid var(--border);margin-bottom:10px}
.s2-qa .q{font-size:12.5px;color:var(--faint);margin-bottom:4px}
.s2-qa .a{font-size:14px;color:var(--text);white-space:pre-wrap}
.s2-chp{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px 20px;margin-bottom:14px}
.s2-chp.done{border-color:var(--border)}
.s2-epi{font-family:var(--f-book);font-style:italic;color:var(--dim);margin:8px 0 12px;font-size:15px}
.s2-chtext p{font-family:var(--f-book);font-size:15.5px;line-height:1.6;margin:0 0 .9em;color:var(--text)}
.s2-chtext p:last-child{margin-bottom:0}

/* ── книга о человеке: поглавный режим (принята / на руках / ждёт) ── */
.s2-chp.acc{padding:12px 20px;opacity:.85}
.s2-chp.acc.open{padding:18px 20px;opacity:1}
.s2-chp.acc h3{font-size:16px}
.s2-chp.plan{padding:10px 20px;opacity:.55;border-style:dashed}
.s2-chp.plan h3{font-size:15px;font-weight:500}
.s2-chp.wr{border-color:var(--accent)}
.s2-chp.now{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.s2-decide{margin-top:16px;padding:14px 16px;border-radius:12px;background:var(--elev2);display:flex;flex-direction:column;gap:4px}
.s2-decide b{font-size:14px}

/* ── читалка: инструменты владельца и проверка главы (reader2.js) ── */
.rd .rd-ico.on{background:var(--rd-acc);color:#fff}
.rd.editing .rd-zone{display:none}
.rd.editing .rd-txt .pg p:not(.epi){cursor:pointer;border-radius:6px;transition:background .15s}
.rd.editing .rd-txt .pg p:not(.epi):hover{background:color-mix(in srgb,var(--rd-acc) 10%,transparent)}
.rd .rd-txt .pg p.sel{background:color-mix(in srgb,var(--rd-acc) 16%,transparent)}
.rd .rd-txt .pg.flash{animation:rdflash 1.6s}
@keyframes rdflash{0%{background:color-mix(in srgb,var(--rd-acc) 22%,transparent)}100%{background:transparent}}
.rd.editing .rd-txt h2.ch[data-pid]{cursor:pointer}
.rd.editing .rd-txt h2.ch[data-pid]:hover{text-decoration:underline dotted var(--rd-acc);text-underline-offset:6px}
.rd .rd-txt .ch-tools{display:none;flex-wrap:wrap;gap:6px;margin:-.4em 0 1.2em;font-family:'Inter',sans-serif;font-size:.62em}
.rd.editing .rd-txt .ch-tools{display:flex}
.rd .rd-txt .ch-tools button{padding:6px 10px;border-radius:999px;background:var(--rd-ui);color:var(--rd-ink);border:1px solid var(--rd-ui-hi)}
.rd .rd-txt .ch-tools button:hover{border-color:var(--rd-acc);color:var(--rd-acc)}
.rd .rd-pm{position:absolute;z-index:40;display:none;flex-direction:column;background:var(--rd-ink);color:var(--rd-bg);border-radius:12px;padding:6px;box-shadow:var(--sh-md);font-family:'Inter',sans-serif;font-size:13px;min-width:200px}
.rd .rd-pm.open{display:flex}
.rd .rd-pm button{padding:8px 12px;border-radius:8px;color:inherit;text-align:left;white-space:nowrap}
.rd .rd-pm button:hover{background:rgba(255,255,255,.15)}
.rd .rd-pm button.danger{color:#ff9c8a}
.rd .rd-sheet .ft{padding:10px 18px calc(12px + env(safe-area-inset-bottom))}
.rd .rd-sheet .rd-q{margin:8px 0 12px;padding:8px 12px;border-left:3px solid var(--rd-acc);font-family:var(--rd-font);color:var(--rd-dim);font-size:14px;line-height:1.45}
.rd .rd-sheet .s2-inp{width:100%;background:var(--rd-ui);color:var(--rd-ink);border:1px solid var(--rd-ui-hi)}
.rd .rd-sheet .s2-linkbox{background:var(--rd-ui);color:var(--rd-ink);border-color:var(--rd-ui-hi)}
.rd .rd-sheet .s2-linkbox span{color:var(--rd-ink)}
.rd .rd-sheet .s2-chip{background:var(--rd-ui);color:var(--rd-ink);border-color:var(--rd-ui-hi)}
.rd .rd-sheet .ph-on,.rd .rd-sheet .ph-pool{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;margin-top:8px}
.rd .rd-sheet .th{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;background:var(--rd-ui);padding:0;border:2px solid transparent}
.rd .rd-sheet .th img{width:100%;height:100%;object-fit:cover;display:block}
.rd .rd-sheet .th span{position:absolute;left:0;right:0;bottom:0;background:rgba(0,0,0,.45);color:#fff;font-size:10px;padding:2px 4px;text-align:center}
.rd .rd-sheet .th button{position:absolute;top:2px;right:2px;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;font-size:12px;line-height:22px;padding:0}
.rd .rd-sheet button.th:hover{border-color:var(--rd-acc)}
.rd .rd-sheet button.th.used{opacity:.55}
.rd .rd-txt figure{position:relative}
.rd .rd-txt figure .fig-x{display:none;position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;font-size:13px;line-height:28px;padding:0;font-family:'Inter',sans-serif}
.rd.editing .rd-txt figure .fig-x{display:block}
.rd .rd-txt .figs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:.4em 0 1.2em;break-inside:avoid}
.rd .rd-txt .figs figure{margin:0}
.rd .rd-txt .figs figure img{max-height:34vh;aspect-ratio:4/3}
.rd .rd-txt .figs figure:only-child{grid-column:1/-1}
.rd .rd-txt aside.voice{margin:1.4em 0 1.2em;padding:16px 18px;border-left:3px solid var(--rd-acc);background:color-mix(in srgb,var(--rd-acc) 7%,transparent);border-radius:0 12px 12px 0;break-inside:avoid;font-size:.94em}
.rd .rd-txt aside.voice .who{display:block;font-family:'Inter',sans-serif;font-size:.62em;letter-spacing:.18em;text-transform:uppercase;color:var(--rd-acc);font-weight:600;margin-bottom:.8em}
.rd .rd-txt aside.voice p:last-of-type{margin-bottom:0}
.rd .rd-txt aside.voice .voice-x{display:none;margin-top:10px;font-family:'Inter',sans-serif;font-size:.68em;color:var(--rd-dim);text-decoration:underline dotted}
.rd.editing .rd-txt aside.voice .voice-x{display:inline-block}
.rd .rd-review{position:absolute;left:0;right:0;bottom:44px;z-index:22;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--rd-bg);border-top:1px solid var(--rd-ui-hi);box-shadow:0 -14px 40px -24px rgba(0,0,0,.5);font-family:'Inter',sans-serif;font-size:13px;color:var(--rd-ink);transition:opacity .25s,transform .25s}
.rd.hide-ui .rd-review{opacity:0;transform:translateY(120%);pointer-events:none}
.rd .rd-review .rv-l{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.rd .rd-review .rv-eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--rd-acc);font-weight:600}
.rd .rd-review b{font-family:var(--rd-font);font-size:16px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd .rd-review .rv-hint{font-size:12px;color:var(--rd-dim)}
.rd .rd-review .rv-r{display:flex;gap:8px;flex-wrap:wrap}
.rd .rd-review .s2-btn.ghost{color:var(--rd-ink);border-color:var(--rd-ui-hi)}
.rd .rd-review ~ .rd-bot{display:none}
.rd .rd-review + .rd-bot{display:none}
.rd.has-review .rd-view{bottom:118px}
.rd .rd-writing{position:absolute;inset:0;z-index:60;display:grid;place-items:center;background:color-mix(in srgb,var(--rd-bg) 92%,transparent);backdrop-filter:blur(6px);font-family:'Inter',sans-serif;color:var(--rd-ink);text-align:center;padding:24px}
.rd .rd-writing[hidden]{display:none}
.rd .rd-writing .in{max-width:420px}
.rd .rd-writing b{display:block;font-family:var(--rd-font);font-size:22px;font-weight:500;margin:6px 0 18px}
.rd .rd-writing .wr-steps{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;text-align:left}
.rd .rd-writing .st{padding:8px 12px;border-radius:10px;background:var(--rd-ui);color:var(--rd-dim);font-size:13px;opacity:.6}
.rd .rd-writing .st.on{opacity:1;color:var(--rd-ink);background:color-mix(in srgb,var(--rd-acc) 14%,var(--rd-ui));animation:s2pulse 1.6s infinite}
@keyframes s2pulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--rd-acc) 30%,transparent)}50%{box-shadow:0 0 0 6px transparent}}
@media (max-width:600px){.rd .rd-review{bottom:40px;padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.rd .rd-review .rv-r{width:100%}.rd .rd-review .rv-r .s2-btn.pri{flex:1}.rd.has-review .rd-view{bottom:150px}.rd .rd-txt .ch-tools{font-size:.7em}}

/* ── v6: разговор → главы вперемежку ─────────────────────────────────── */
/* на телефоне вопрос — первым, темы и фото — под ним */
@media (max-width:860px){.s2-talk aside{order:2}.s2-talk>div:not(aside){order:1}}
.s2-anchors{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px;font-size:12px}
.s2-anchors:empty{display:none}
.s2-anchor{padding:3px 9px;border-radius:999px;border:1px dashed var(--line);color:var(--dim);background:transparent}
.s2-anchor.on{border-style:solid;border-color:color-mix(in srgb,var(--accent) 45%,var(--line));color:var(--ink);background:color-mix(in srgb,var(--accent) 10%,transparent)}
#plan-list .s2-tp{text-decoration:none;color:inherit}
#plan-list .s2-tp.done .st{color:var(--accent)}
#plan-list .s2-tp.accepted .st{color:var(--ok,#2e9c5a)}
#intro{min-height:64px;resize:vertical}
#sh-login .s2-sheet h3{margin-bottom:6px}
/* шторка «что не так» на большом экране — не во всю ширину */
@media (min-width:700px){.rd .rd-sheet{max-width:560px;margin:0 auto;border-left:1px solid var(--rd-ui-hi);border-right:1px solid var(--rd-ui-hi)}}
