/* LANDANzzz — главная (ввод кода), правовые страницы и 404. Подключать после /landan.css. Без inline-стилей. */
.site{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;
  padding:max(10px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
.wrap{width:100%;max-width:var(--site);flex:1;display:flex;flex-direction:column}
.s-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;padding:clamp(6px,1.4vw,18px) 0}
.s-footer{margin-top:auto;padding:24px 0 8px;border-top:1px solid var(--line);font-size:.875rem;color:var(--text-3)}
.s-footer nav{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 10px}
.s-footer a{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--text-2)}

/* Главная: одна строка + поле кода */
.home{flex:1;display:flex;flex-direction:column;justify-content:center;gap:18px;width:100%;max-width:var(--col);margin:0 auto;padding:clamp(32px,10vh,120px) 0}
.home__head{display:flex;flex-direction:column;gap:10px}
.home__lead{color:var(--text-2);font-size:1.0625rem;line-height:1.55}
.home__title{margin:0;font:400 clamp(1.5rem, 1.2rem + 1.8vw, 2.5rem)/1.12 var(--font-head);text-wrap:balance;overflow-wrap:break-word;hyphens:auto}
.home__form{display:flex;flex-wrap:wrap;gap:10px}
.home__form .input{flex:1 1 260px;min-width:0}
.home__form .btn{flex:1 1 140px;width:auto;min-height:56px}
.home__hint{font-size:.875rem;color:var(--text-2)}

/* Правовые страницы */
.legal{display:flex;flex-direction:column;gap:clamp(20px,3vw,32px);padding:clamp(8px,2vw,24px) 0 clamp(48px,8vw,96px)}
.legal__head{display:flex;flex-direction:column;gap:8px}
.legal__title{margin:0;font:400 clamp(1.625rem, 1.3rem + 2vw, 3rem)/1.1 var(--font-head);overflow-wrap:break-word;hyphens:auto;text-wrap:balance}
.legal__date{color:var(--text-3);font-size:.9375rem}
.doc{display:flex;flex-wrap:wrap;align-items:flex-start;gap:clamp(20px,4vw,56px)}
.toc{flex:1 1 100%;min-width:0;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface)}
.toc summary{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:12px 16px;font-weight:700;cursor:pointer;list-style:none}
.toc summary::-webkit-details-marker{display:none}
.toc summary::after{content:"▾";color:var(--gold-text)}
.toc ol,.toc-side ol{list-style:none;margin:0;display:flex;flex-direction:column}
.toc ol{padding:0 8px 10px}
.toc a,.toc-side a{display:flex;gap:10px;align-items:center;min-height:var(--tap);padding:6px 10px;border-radius:8px;font-size:.9375rem;line-height:1.3;text-decoration:none;overflow-wrap:anywhere}
.toc a:hover,.toc-side a:hover{background:var(--surface-2)}
.toc a b,.toc-side a b{flex:none;font:400 .75rem var(--font-num);color:var(--gold-text)}
.toc-side{display:none}
@media (min-width:900px){
  .toc{display:none}
  .toc-side{display:flex;flex-direction:column;gap:2px;position:sticky;top:20px;flex:0 0 280px;padding:16px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface)}
  .toc-side .label{padding:4px 10px 8px}
}
.doc article{flex:1 1 480px;min-width:0;max-width:720px;display:flex;flex-direction:column;gap:clamp(28px,3vw,40px)}
.doc section{display:flex;flex-direction:column;gap:12px;scroll-margin-top:20px}
.doc h2{margin:0;display:flex;gap:12px;align-items:baseline;font:400 clamp(1.1875rem, 1.05rem + .6vw, 1.5rem)/1.25 var(--font-head);overflow-wrap:break-word;hyphens:auto}
.doc h2 b{flex:none;font:400 .8em var(--font-num);color:var(--gold-text)}
.doc p,.doc li{font-size:1rem;line-height:1.7;overflow-wrap:anywhere}
.doc ul{display:flex;flex-direction:column;gap:6px;padding-left:1.2em}
.doc li::marker{color:var(--gold-text)}

/* 404 */
.nf{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:clamp(40px,10vw,120px) 0;text-align:center}
.nf__num{max-width:100%;font:800 clamp(3.5rem, 2.5rem + 12vw, 11rem)/.9 var(--font-num);letter-spacing:-.03em}
.nf p{max-width:28em;color:var(--text-2)}
.nf__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:100%;max-width:360px}
