/* ═══════════════════════════════════════════════════════════
   СВЕТЛАЯ ПОЛКА — книжный шаблон DLE
   Светлая тема, терракотовый акцент, Cormorant Garamond + Manrope
   ═══════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap');

:root {
  --bg:        #fbf8f2;
  --bg-soft:   #f5efe4;
  --card:      #ffffff;

  --ink:       #2c2722;
  --ink-2:     #36302a;
  --ink-3:     #6b6358;
  --ink-4:     #9c9387;
  --ink-5:     #c2b9a9;

  --line:      #ece4d6;
  --line-2:    #e7ddcc;

  --accent:    #b5713a;
  --accent-d:  #9a6a35;
  --accent-s:  #f0e7d6;
  --dark-btn:  #2c2722;

  --star:      #e0a83e;
  --good:      #5a8a5a;
  --bad:       #c25a4a;

  --r-sm:   8px;
  --r:      14px;
  --r-lg:   22px;
  --pill:   999px;

  --sh-sm:  0 8px 22px rgba(80,58,30,0.12);
  --sh-md:  0 18px 40px rgba(80,58,30,0.18);
  --sh-lg:  0 24px 60px rgba(80,58,30,0.22);

  --font-head: 'Cormorant Garamond', Georgia, serif;
  --font-ui:   'Manrope', system-ui, sans-serif;

  --max:    1280px;
  --sb:     280px;
  --tap:    44px;
  --ez:     cubic-bezier(.22,1,.36,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;border:0;outline:none;background:0 0;}
ol,ul{list-style:none;}
img,video,iframe{max-width:100%;display:block;}
html{font-size:62.5%;scroll-behavior:smooth;}
body{
  font:1.5rem/1.65 var(--font-ui);
  color:var(--ink-2);background:var(--bg);min-height:100vh;
  -webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;
}
a{color:inherit;text-decoration:none;transition:color .15s;}
a:hover{color:var(--accent);}
h1,h2,h3,h4{font-family:var(--font-head);font-weight:700;line-height:1.1;color:var(--ink);}
b,strong{font-weight:600;}
::selection{background:var(--accent-s);color:var(--accent-d);}

input[type=text],input[type=password],input[type=email],textarea,select{
  font:1.4rem var(--font-ui);width:100%;padding:0 16px;height:44px;
  background:var(--card);color:var(--ink-2);
  border:1px solid var(--line-2);border-radius:var(--r-sm);
  transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;
}
input:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(181,113,58,.12);}
input::placeholder,textarea::placeholder{color:var(--ink-4);}
textarea{height:auto;padding:12px 16px;resize:vertical;}

button,.btn,input[type=button],input[type=submit]{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  cursor:pointer;padding:0 22px;min-height:var(--tap);
  background:var(--accent);color:#fff;
  font:600 1.4rem var(--font-ui);
  border-radius:var(--pill);white-space:nowrap;transition:all .15s;
  touch-action:manipulation;
}
button:hover,.btn:hover,input[type=submit]:hover{background:var(--accent-d);}
button:active{transform:scale(.97);}

.hidden{display:none;}

::-webkit-scrollbar{width:6px;height:6px;}
::-webkit-scrollbar-track{background:var(--bg-soft);}
::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:3px;}
::-webkit-scrollbar-thumb:hover{background:var(--accent);}

/* ─ HEADER ─────────────────────────────────────────────── */
.header{
  position:sticky;top:0;z-index:200;
  background:rgba(251,248,242,0.85);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.header__in{
  max-width:var(--max);margin:0 auto;padding:0 28px;
  height:74px;display:flex;align-items:center;gap:24px;
}

.logo{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.logo__mark{
  width:38px;height:38px;border-radius:9px;
  background:var(--accent);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-head);font-size:2.4rem;font-weight:700;
}
.logo__name{font-family:var(--font-head);font-size:2.4rem;font-weight:700;letter-spacing:.3px;color:var(--ink);}

.nav{display:flex;align-items:center;gap:30px;flex:1;}
.nav a{font-size:1.5rem;font-weight:500;color:var(--ink-3);}
.nav a:hover{color:var(--accent);}

.header__search{position:relative;width:280px;flex-shrink:0;}
.header__search input{
  height:42px;padding:0 46px 0 18px;
  background:var(--card);border:1px solid var(--line-2);
  border-radius:var(--pill);font-size:1.4rem;width:100%;
}
.header__search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(181,113,58,.12);}
.header__search button{
  position:absolute;right:4px;top:4px;width:36px;height:34px;
  background:var(--dark-btn);color:#fff;font-size:1.4rem;
  border-radius:var(--pill);cursor:pointer;padding:0;min-width:unset;min-height:unset;
}
.header__search button:hover{background:var(--accent);}

.header__btn{
  display:inline-flex;align-items:center;gap:7px;
  min-height:40px;padding:0 20px;
  background:var(--accent);color:#fff;
  border-radius:var(--pill);font-size:1.4rem;font-weight:600;
  flex-shrink:0;cursor:pointer;transition:all .15s;
}
.header__btn:hover{background:var(--accent-d);}
.header__btn--ghost{background:none;border:1px solid var(--line-2);color:var(--ink-3);}
.header__btn--ghost:hover{background:var(--bg-soft);color:var(--ink);border-color:var(--accent);}

.burger{
  display:none;flex-direction:column;justify-content:center;gap:5px;
  background:none;box-shadow:none;padding:8px;width:var(--tap);height:var(--tap);
  min-width:unset;border-radius:var(--r-sm);cursor:pointer;flex-shrink:0;transition:background .15s;
}
.burger:hover{background:var(--bg-soft);}
.burger span{width:22px;height:2px;background:var(--ink-3);border-radius:2px;display:block;transition:all .3s;}

/* ─ OVERLAY ────────────────────────────────────────────── */
.overlay{display:none;position:fixed;inset:0;z-index:298;background:rgba(44,39,34,0.5);backdrop-filter:blur(3px);cursor:pointer;}
body.locked{overflow:hidden;}

/* ─ LAYOUT ─────────────────────────────────────────────── */
.page{max-width:var(--max);margin:0 auto;padding:40px 28px 64px;display:flex;gap:32px;align-items:flex-start;}
.main{flex:1;min-width:0;}
.sidebar{width:var(--sb);flex-shrink:0;position:sticky;top:90px;display:flex;flex-direction:column;gap:20px;}

/* ─ HERO ───────────────────────────────────────────────── */
.hero{
  background:var(--card);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:40px;margin-bottom:36px;
  display:flex;flex-direction:column;gap:18px;
}
.hero__badge{
  display:inline-block;align-self:flex-start;
  background:var(--accent-s);color:var(--accent-d);
  padding:6px 14px;border-radius:var(--pill);
  font-size:1.3rem;font-weight:600;letter-spacing:.4px;
}
.hero__title{font-family:var(--font-head);font-size:clamp(3.4rem,5vw,5rem);line-height:1.04;font-weight:700;color:var(--ink);}
.hero__text{font-size:1.7rem;line-height:1.6;color:var(--ink-3);max-width:560px;}
.hero__stats{display:flex;gap:36px;margin-top:8px;flex-wrap:wrap;}
.hero__stat-num{font-family:var(--font-head);font-size:2.8rem;font-weight:700;color:var(--ink);}
.hero__stat-label{font-size:1.3rem;color:var(--ink-4);}

/* ─ SECTION ────────────────────────────────────────────── */
.sect{margin-bottom:44px;}
.sect__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:24px;gap:16px;}
.sect__title{font-family:var(--font-head);font-size:3rem;font-weight:700;color:var(--ink);}
.sect__more{font-size:1.4rem;font-weight:600;color:var(--accent);white-space:nowrap;}
.sect__more:hover{color:var(--accent-d);}

/* ─ GENRES ─────────────────────────────────────────────── */
.genres{display:flex;gap:12px;flex-wrap:wrap;}
.genre{
  display:flex;align-items:center;gap:10px;
  background:var(--card);border:1px solid var(--line);
  border-radius:var(--r);padding:13px 20px;cursor:pointer;transition:all .15s;
}
.genre:hover{border-color:var(--accent);box-shadow:var(--sh-sm);transform:translateY(-2px);}
.genre__icon{font-size:2rem;}
.genre__name{font-size:1.5rem;font-weight:600;color:var(--ink-2);}
.genre__count{font-size:1.2rem;color:var(--ink-4);}

/* ─ BOOK GRID ──────────────────────────────────────────── */
.grid{display:grid;grid-template-columns:repeat(5,1fr);gap:26px;align-items:start;}

/* ─ BOOK CARD ──────────────────────────────────────────── */
.card{display:flex;flex-direction:column;align-self:start;cursor:pointer;min-width:0;overflow:hidden;}
.card__cover{
  position:relative;display:block;
  width:100%;padding-top:150%;height:0;
  overflow:hidden;border-radius:var(--r-sm);
  background:var(--bg-soft);box-shadow:var(--sh-sm);
  margin-bottom:12px;transition:transform .25s var(--ez),box-shadow .25s;
}
.card__cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s var(--ez);}
@media(hover:hover){
  .card:hover .card__cover{transform:translateY(-5px);box-shadow:var(--sh-md);}
  .card:hover .card__cover img{transform:scale(1.04);}
}
.card__tag{
  position:absolute;top:12px;right:12px;z-index:2;
  background:rgba(255,255,255,0.92);color:#7a5226;
  font-size:1.1rem;font-weight:700;padding:4px 9px;border-radius:var(--pill);
}
.card__title{font-size:1.5rem;font-weight:600;color:var(--ink-2);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.card:hover .card__title{color:var(--accent);}
.card__author{font-size:1.3rem;color:var(--ink-4);margin-top:2px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;}
.card__meta{display:flex;align-items:center;gap:6px;margin-top:8px;}
.card__star{color:var(--star);font-size:1.3rem;}
.card__rating{font-size:1.3rem;font-weight:600;color:var(--ink-3);}
.card__dot{font-size:1.2rem;color:var(--ink-5);}
.card__format{font-size:1.2rem;color:var(--ink-4);}

/* ─ SIDEBAR WIDGETS ────────────────────────────────────── */
.widget{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;}
.widget__title{font-family:var(--font-head);font-size:2rem;font-weight:700;color:var(--ink);margin-bottom:16px;}

.genre-list{display:flex;flex-direction:column;gap:2px;}
.genre-list a{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;font-size:1.4rem;color:var(--ink-3);border-radius:var(--r-sm);transition:all .15s;}
.genre-list a:hover{background:var(--bg-soft);color:var(--accent);}
.genre-list a span{font-size:1.2rem;color:var(--ink-5);}

.mini{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line);}
.mini:last-child{border-bottom:0;padding-bottom:0;}
.mini:first-child{padding-top:0;}
.mini__cover{position:relative;width:46px;padding-top:66px;height:0;border-radius:var(--r-sm);overflow:hidden;flex-shrink:0;background:var(--bg-soft);}
.mini__cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.mini__title{font-size:1.3rem;font-weight:600;color:var(--ink-2);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.mini__title:hover{color:var(--accent);}
.mini__author{font-size:1.2rem;color:var(--ink-4);margin-top:3px;}

/* ─ CTA BAND ───────────────────────────────────────────── */
.cta{
  background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:40px 46px;margin-bottom:44px;
  display:flex;align-items:center;justify-content:space-between;gap:36px;
}
.cta__title{font-family:var(--font-head);font-size:3rem;font-weight:700;color:var(--ink);margin-bottom:10px;}
.cta__text{font-size:1.6rem;color:var(--ink-3);max-width:540px;line-height:1.55;}
.cta__btn{flex-shrink:0;padding:0 32px;min-height:52px;font-size:1.6rem;}

/* ─ BREADCRUMB ─────────────────────────────────────────── */
.speedbar{font-size:1.3rem;color:var(--ink-4);margin-bottom:22px;}
.speedbar a{color:var(--ink-3);}
.speedbar a:hover{color:var(--accent);}
.speedbar a:after{content:'/';margin:0 7px;color:var(--ink-5);}

/* ─ FULLSTORY ──────────────────────────────────────────── */
.book-top{display:flex;gap:36px;align-items:flex-start;margin-bottom:36px;}
.book-cover{width:230px;flex-shrink:0;position:sticky;top:90px;}
.book-poster{width:100%;border-radius:var(--r);overflow:hidden;aspect-ratio:2/3;background:var(--bg-soft);box-shadow:var(--sh-md);}
.book-poster img{width:100%;height:100%;object-fit:cover;display:block;}
.book-rating{display:flex;gap:10px;margin-top:14px;justify-content: space-between;}
.book-rating--mob{display:none;}
.rate-btn{flex:1;min-height:46px;border-radius:var(--r-sm);font-size:1.4rem;font-weight:600;gap:7px;}
.rate-like{background:rgba(90,138,90,.12);color:var(--good);}
.rate-like:hover{background:var(--good);color:#fff;}
.rate-dislike{background:rgba(194,90,74,.1);color:var(--bad);}
.rate-dislike:hover{background:var(--bad);color:#fff;}

.book-info{flex:1;min-width:0;}
.book-badge{display:inline-block;background:var(--accent-s);color:var(--accent-d);padding:6px 14px;border-radius:var(--pill);font-size:1.3rem;font-weight:600;margin-bottom:16px;}
.book-title{font-family:var(--font-head);font-size:clamp(3rem,5vw,4.4rem);line-height:1.05;font-weight:700;color:var(--ink);margin-bottom:8px;}
.book-author{font-size:1.7rem;color:var(--ink-3);margin-bottom:24px;}

.book-meta{background:var(--bg-soft);border-radius:var(--r);padding:18px 22px;margin-bottom:24px;display:flex;flex-direction:column;gap:10px;}
.book-meta-row{display:flex;gap:12px;font-size:1.4rem;align-items:baseline;}
.book-meta-key{color:var(--ink-4);min-width:90px;flex-shrink:0;font-size:1.3rem;}
.book-meta-val{color:var(--ink-2);font-weight:500;}
.book-meta-val a{color:var(--accent);}

.book-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:26px;}
.btn-read{padding:0 32px;min-height:54px;font-size:1.6rem;font-weight:700;border-radius:var(--pill);background:var(--accent);}
.btn-read:hover{background:var(--accent-d);}
.btn-dl-main{padding:0 28px;min-height:54px;font-size:1.5rem;font-weight:600;border-radius:var(--pill);background:var(--dark-btn);}
.btn-dl-main:hover{background:#1f1b17;}

.book-desc-label{font-family:var(--font-head);font-size:2.2rem;font-weight:700;color:var(--ink);margin-bottom:12px;}
.book-desc{font-size:1.6rem;color:var(--ink-2);line-height:1.8;margin-bottom:30px;text-align: justify;}

/* ─ DOWNLOAD ───────────────────────────────────────────── */
.dl-box{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--r);padding:24px;margin-bottom:30px;}
.dl-box__title{font-family:var(--font-head);font-size:2rem;font-weight:700;color:var(--ink);margin-bottom:16px;}
.dl-fmts{display:flex;gap:10px;flex-wrap:wrap;justify-content: center;}
.dl-fmt{display:inline-flex;align-items:center;gap:8px;padding:0 20px;min-height:46px;border-radius:var(--pill);font-size:1.4rem;font-weight:600;background:var(--card);color:var(--ink-2);border:1px solid var(--line-2);transition:all .15s;}
.dl-fmt:hover{background:var(--accent);color:#fff;border-color:var(--accent);}

/* ─ RELATED ────────────────────────────────────────────── */
.rel{margin-bottom:40px;}
.rel__title{font-family:var(--font-head);font-size:2.6rem;font-weight:700;color:var(--ink);margin-bottom:22px;}
.rel-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;align-items:start;}

/* ─ COMMENTS ───────────────────────────────────────────── */
.comments{margin-top:44px;}
.comments__title{font-family:var(--font-head);font-size:2.8rem;font-weight:700;color:var(--ink);margin-bottom:26px;}
.add-comms{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--r);padding:24px;margin-bottom:30px;}

/* ─ PAGINATION ─────────────────────────────────────────── */
.pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;padding:30px 0 4px;}
.pagination a,.pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:var(--tap);height:var(--tap);padding:0 12px;border-radius:var(--pill);font-size:1.4rem;font-weight:600;transition:all .15s;}
.pagination a{background:var(--card);color:var(--ink-3);border:1px solid var(--line-2);}
.pagination a:hover{background:var(--accent);color:#fff;border-color:var(--accent);}
.pagination span:not(.nav_ext){background:var(--accent);color:#fff;}

/* ─ LOGIN ──────────────────────────────────────────────── */
.login{position:fixed;z-index:400;left:50%;top:50%;transform:translate(-50%,-50%);width:400px;max-width:calc(100vw - 28px);max-height:calc(100vh - 40px);overflow-y:auto;background:var(--card);border-radius:var(--r-lg);box-shadow:var(--sh-lg);}
.login__header{display:flex;align-items:center;gap:12px;padding:22px 28px;background:var(--bg-soft);border-radius:var(--r-lg) var(--r-lg) 0 0;border-bottom:1px solid var(--line);}
.login__avatar{width:42px;height:42px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--line);}
.login__avatar img{width:100%;height:100%;object-fit:cover;}
.login__name{flex:1;font-family:var(--font-head);font-size:1.9rem;font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.login__name a{font-size:1.2rem;font-weight:500;color:var(--accent);margin-left:8px;text-decoration:underline;}
.login__close{width:34px;height:34px;flex-shrink:0;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:1.6rem;color:var(--ink-3);background:var(--card);transition:all .15s;}
.login__close:hover{background:var(--bad);color:#fff;}
.login__body{padding:24px 28px;display:flex;flex-direction:column;gap:14px;}
.login__row{position:relative;}
.login__row>.fal,.login__row>.far{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--ink-4);font-size:1.4rem;pointer-events:none;}
.login__row input[type=text],.login__row input[type=password]{padding-left:44px;}
.login__row button[type=submit]{width:100%;min-height:48px;font-size:1.5rem;font-weight:700;}
.login__forgot{display:block;text-align:right;font-size:1.25rem;color:var(--ink-4);margin-top:5px;}
.login__forgot:hover{color:var(--accent);}
.login__menu{padding:8px 16px 18px;display:flex;flex-direction:column;gap:2px;}
.login__menu li{list-style:none;}
.login__menu a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--r-sm);font-size:1.4rem;color:var(--ink-2);min-height:var(--tap);transition:all .12s;}
.login__menu a:hover{background:var(--bg-soft);color:var(--accent);}
.login__menu .fal,.login__menu .far{width:18px;text-align:center;color:var(--ink-4);}
.login__menu a:hover .fal,.login__menu a:hover .far{color:var(--accent);}
.login__menu li:last-child a{color:var(--bad);}
.login__menu li:last-child a:hover{background:rgba(194,90,74,.08);}
.login__menu li:last-child a .fal{color:var(--bad);}
@media(max-width:480px){.login{top:auto;bottom:0;left:0;transform:none;width:100%;max-width:100%;border-radius:var(--r-lg) var(--r-lg) 0 0;max-height:88vh;}}

/* ─ MOBILE MENU ────────────────────────────────────────── */
.mobile-menu{position:fixed;top:0;left:-320px;z-index:400;width:300px;height:100%;background:var(--card);border-right:1px solid var(--line);display:flex;flex-direction:column;overflow-y:auto;transition:left .32s var(--ez);box-shadow:var(--sh-lg);}
.mobile-menu.is-active{left:0;}
.mobile-menu__head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line);flex-shrink:0;}
.mobile-menu-close{width:var(--tap);height:var(--tap);background:var(--bg-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.8rem;color:var(--ink-3);box-shadow:none;padding:0;min-width:unset;transition:all .15s;}
.mobile-menu-close:hover{background:var(--bad);color:#fff;}
.mobile-menu__nav a{display:flex;align-items:center;gap:12px;padding:0 22px;height:54px;font-size:1.6rem;font-weight:500;color:var(--ink-2);border-bottom:1px solid var(--line);transition:all .15s;}
.mobile-menu__nav a i{width:20px;text-align:center;color:var(--ink-4);}
.mobile-menu__nav a:hover{color:var(--accent);background:var(--bg-soft);}
.mobile-menu__nav a:hover i{color:var(--accent);}
.mobile-menu__search{padding:18px 22px;flex-shrink:0;}
.mobile-menu__search form{display:flex;gap:8px;}
.mobile-menu__search input{flex:1;height:var(--tap);}
.mobile-menu__search button{width:var(--tap);flex-shrink:0;padding:0;border-radius:var(--r-sm);}

/* ─ FORMS ──────────────────────────────────────────────── */
.form-page{max-width:600px;margin:0 auto;}
.form-box{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;}
.form-box__head{display:flex;align-items:center;justify-content:space-between;padding:24px 30px;background:var(--bg-soft);border-bottom:1px solid var(--line);gap:12px;flex-wrap:wrap;}
.form-box__title{font-family:var(--font-head);font-size:2.4rem;font-weight:700;color:var(--ink);}
.form-box__back{font-size:1.35rem;color:var(--ink-3);display:flex;align-items:center;gap:6px;}
.form-box__back:hover{color:var(--accent);}
.form-row{display:flex;flex-direction:column;gap:7px;padding:16px 30px;border-bottom:1px solid var(--line);}
.form-row:last-child{border-bottom:0;}
.form-row--submit{padding:24px 30px;}
.form-label{font-size:1.35rem;font-weight:600;color:var(--ink-2);}
.form-label--req::after{content:' *';color:var(--bad);}
.form-input{height:46px;}
.form-textarea{height:auto;min-height:100px;resize:vertical;}
.form-captcha{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.form-captcha input{flex:1;min-width:120px;}
.form-check-btn{min-height:40px;padding:0 16px;font-size:1.3rem;background:var(--bg-soft);color:var(--ink-3);border:1px solid var(--line-2);border-radius:var(--pill);margin-top:6px;align-self:flex-start;}
.form-check-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-s);}
#result-registration{font-size:1.3rem;color:var(--good);min-height:18px;}

/* ─ SEO ────────────────────────────────────────────────── */
.seo{font-size:1.4rem;color:var(--ink-4);line-height:1.75;padding-top:34px;border-top:1px solid var(--line);margin-top:34px;text-align: justify;}
.seo h1,.seo h2{font-family:var(--font-head);font-size:2rem;color:var(--ink-3);margin:16px 0 8px;}
.seo a{color:var(--accent);text-decoration:underline;}
.seo p{margin-bottom:8px;}

/* ─ FOOTER ─────────────────────────────────────────────── */
.footer{background:var(--card);border-top:1px solid var(--line);padding:20px 0 5px;}
.footer__in{max-width:var(--max);margin:0 auto;padding:0 28px;}
.footer__top{display:grid;grid-template-columns:240px 1fr;gap:52px;padding-bottom:34px;border-bottom:1px solid var(--line);margin-bottom:22px;}
.footer__logo{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.footer__desc{font-size:1.35rem;color:var(--ink-4);line-height:1.6;}
.footer__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.footer__col-title{font-size:1.2rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-4);margin-bottom:14px;}
.footer__cols a{display:block;font-size:1.4rem;color:var(--ink-3);margin-bottom:9px;}
.footer__cols a:hover{color:var(--accent);}
.footer__bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.footer__copy{font-size:1.3rem;color:var(--ink-4);}
.footer__age{font-size:1.2rem;font-weight:600;color:var(--ink-4);background:var(--bg-soft);border-radius:var(--pill);padding:4px 12px;}

/* ─ SCROLL TOP ─────────────────────────────────────────── */
#gotop{position:fixed;right:18px;bottom:18px;z-index:990;width:var(--tap);height:var(--tap);border-radius:50%;background:var(--accent);color:#fff;display:none;align-items:center;justify-content:center;font-size:1.6rem;cursor:pointer;box-shadow:var(--sh-md);transition:all .15s;padding:0;min-width:unset;}
#gotop:hover{background:var(--accent-d);}

/* ─ RESPONSIVE ─────────────────────────────────────────── */
@media(max-width:1200px){.grid{grid-template-columns:repeat(4,1fr);}.rel-grid{grid-template-columns:repeat(4,1fr);}}
@media(max-width:1060px){:root{--sb:240px;}.grid{grid-template-columns:repeat(3,1fr);gap:20px;}}
@media(max-width:900px){
  .nav,.header__search,.header__btn--ghost{display:none;}
  .burger{display:flex;}
  .page{flex-direction:column;gap:0;padding:24px 16px 52px;}
  .sidebar{width:100%;position:static;display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px;}
  .sidebar .widget:nth-child(n+3){grid-column:1/-1;}
  .grid{grid-template-columns:repeat(4,1fr);gap:16px;}
  .rel-grid{grid-template-columns:repeat(3,1fr);}
  .hero{padding:28px;}
  .cta{flex-direction:column;align-items:flex-start;text-align:left;}
  .footer__top{grid-template-columns:1fr;gap:28px;}
  .footer__cols{grid-template-columns:repeat(2,1fr);}
  .header__in{padding:0 16px;gap:14px;}
}
@media(max-width:768px){
  .grid{grid-template-columns:repeat(3,1fr);gap:14px;}
  .book-top{flex-direction:column;gap:0;}
  .book-cover{width:100%;position:static;flex-direction:row;display:flex;gap:18px;align-items:flex-start;margin-bottom:24px;}
  .book-poster{width:140px;flex-shrink:0;}
  .book-rating{flex-direction:column;flex:1;margin-top:0;}
  .hero__stats{gap:24px;}
}
@media(max-width:640px){
  .grid{grid-template-columns:repeat(3,1fr);gap:10px;}
  .rel-grid{grid-template-columns:repeat(2,1fr);gap:12px;}
  .sidebar{grid-template-columns:1fr;}
  .sidebar .widget:nth-child(n+3){grid-column:1;}
  .footer__cols{grid-template-columns:1fr 1fr;}
  .hero__title{font-size:3rem;}
  .book-cover{flex-direction:column;}
  .book-poster{width:100%;max-width:200px;}
  .book-rating{flex-direction:row;}
  .form-row{padding:14px 18px;}
  .form-box__head{padding:18px;}
}
@media(max-width:480px){
  .grid{grid-template-columns:repeat(2,1fr);gap:12px;}
  .btn-read,.btn-dl-main{width:100%;}
  .footer__cols{grid-template-columns:1fr;}
}
@media(max-width:360px){
  .grid{grid-template-columns:repeat(2,1fr);gap:8px;}
  .page{padding:18px 12px 48px;}
  .header__in{padding:0 12px;}
}


.grid > form,
.grid > table,
.grid > p,
#dle-content > form,
#dle-content > table,
#dle-content > p {
  grid-column: 1 / -1;
}
