/* ARC — служебные страницы: вход, оплата, документы. Светлые, как лендинг. */
:root {
  --bg: #f6f6f8; --surface: #fff; --surface-2: #f0f0f3; --line: #e7e7ea; --line-strong: #d6d6db;
  --text: #1d1d1f; --text-2: #3a3a3c; --muted: #86868b; --muted-2: #6e6e73; --ink: #000; --accent: #0a84ff; --danger: #d70015;
  --font-body: 'Inter', -apple-system, 'SF Pro Text', 'Segoe UI', Roboto, sans-serif;
  color-scheme: light;
}
body { letter-spacing: -.01em; }
::selection { background: #000; color: #fff; }
.btn { min-height: 50px; font-weight: 600; font-size: 15px; }
.btn--accent, .btn--light { background: #000; color: #fff; }
.btn--accent:hover, .btn--light:hover { background: #222; }
.btn--ghost { border-color: var(--line-strong); color: #000; }
.input { background: #fff; color: #000; border-radius: 14px; }
.input:focus { border-color: #000; }
.check input { accent-color: #000; }
.logo { color: #000; }

.page { min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; }
.page__top { display: flex; justify-content: space-between; align-items: center; padding: 24px var(--gutter); }
.page__top a.back { color: var(--muted); text-decoration: none; font-size: 15px; }
.page__main { flex: 1; display: flex; align-items: center; justify-content: center; padding: 24px 16px 64px; }
.panel { position: relative; overflow: hidden; width: min(440px, 100%); background: var(--surface); border: 0; box-shadow: 0 24px 60px rgba(16,24,40,.08), 0 0 0 1px rgba(0,0,0,.04); border-radius: 34px; padding: 36px 28px; display: flex; flex-direction: column; gap: 20px; }
.panel__arc { position: absolute; right: -40px; top: -40px; width: 220px; opacity: .9; pointer-events: none; }
.panel__arc path { fill: none; stroke: var(--accent); stroke-width: 1.5; stroke-opacity: .35; }
.panel h1 { position: relative; margin: 0; font-weight: 600; font-size: 32px; line-height: 1.05; letter-spacing: -.05em; }
.panel p { position: relative; margin: 0; color: var(--text-2); }
.panel form { display: flex; flex-direction: column; gap: 16px; }
.code-input { font-family: var(--font-mono); font-size: 28px; letter-spacing: .5em; text-align: center; padding-left: .5em; }
.linkish { background: none; border: 0; padding: 0; color: var(--muted); text-decoration: underline; font-size: 14px; align-self: center; min-height: 44px; }
.linkish:hover { color: var(--text); }
.status-icon { width: 64px; height: 64px; border-radius: 999px; display: flex; align-items: center; justify-content: center; background: #000; color: #fff; font-size: 28px; }
.status-icon--wait { background: var(--surface-2); color: var(--accent); }
.status-icon--fail { background: #fde8ea; color: var(--danger); }
.notice { padding: 14px 16px; border-radius: 12px; background: var(--surface-2); color: var(--text-2); font-size: 14px; }

.doc { max-width: 760px; margin: 0 auto; padding: 24px var(--gutter) 96px; }
.doc h1 { font-weight: 600; font-size: clamp(32px, 4vw, 52px); line-height: 1.05; letter-spacing: -.05em; }
.doc h2 { font-size: 20px; margin: 40px 0 12px; }
.doc p, .doc li { color: var(--text-2); }
.doc .warn { padding: 16px; border-radius: 12px; border: 1px dashed var(--line-strong); color: var(--muted); font-size: 14px; }
.panel__arc { display: none; }
