/* FF CONSENT_FLOW — экраны согласия в Mini App (152-ФЗ). Самодостаточный bottom-sheet.
   Цвета — переменные самого приложения (--bg/--ink), а не Telegram-темы:
   miniapp ведёт свою тему через html[data-theme] независимо от темы клиента. */
.ffcs-layer{position:fixed;inset:0;z-index:9700;display:flex;align-items:flex-end;justify-content:center}
.ffcs-scrim{position:absolute;inset:0;background:rgba(0,0,0,.55)}
.ffcs-panel{position:relative;width:100%;max-width:560px;max-height:86vh;display:flex;flex-direction:column;
  background:var(--bg,#f5f6f4);color:var(--ink,#141814);
  border-radius:16px 16px 0 0;box-shadow:0 -8px 32px rgba(0,0,0,.25)}
.ffcs-handle{width:36px;height:4px;border-radius:2px;background:var(--line,#e2e6e0);margin:10px auto 0}
.ffcs-header{padding:10px 20px 0}
.ffcs-header h2{margin:0;font-size:17px;line-height:1.3}
.ffcs-content{padding:12px 20px 4px;overflow-y:auto;-webkit-overflow-scrolling:touch}
.ffcs-paragraph{font-size:13px;line-height:1.55;margin:0 0 11px}
.ffcs-paragraph a{color:var(--green-strong,#2f7d4f);word-break:break-all}
html[data-theme="dark"] .ffcs-paragraph a{color:var(--green,#5dbb87)}
/* Кнопки равнозначны: одинаковый размер, обе видны сразу (152-ФЗ) */
.ffcs-footer{display:grid;gap:8px;padding:12px 20px calc(16px + env(safe-area-inset-bottom))}
.ffcs-btn{width:100%;padding:12px 16px;border:0;border-radius:var(--radius-m,10px);font-size:15px;font-weight:600;cursor:pointer}
.ffcs-btn--primary{background:var(--green-strong,#2f7d4f);color:#fff}
.ffcs-btn--secondary{background:var(--surface-2,rgba(128,128,128,.16));color:var(--ink,#141814)}
.ffcs-btn:disabled{opacity:.6}
