:root{--bg:#0f172a;--panel:#111827;--border:#1f2937;--muted:#9ca3af;--accent:#7c3aed;--accent-2:#22d3ee;--text:#e5e7eb}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 20%,rgba(124,58,237,.15),transparent 35%),radial-gradient(circle at 80% 0,rgba(34,211,238,.15),transparent 30%),linear-gradient(180deg,#0b1020,#0f172a 50%,#0b1020);min-height:100vh;color:var(--text);font-family:Inter,SF Pro,Segoe UI,system-ui,-apple-system,sans-serif;display:flex;justify-content:center}a{color:inherit}main{width:min(1200px,96vw);padding:32px 0 64px}.landing-header{justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}.landing-brand,.landing-header{display:flex;align-items:center}.landing-brand{gap:10px}.landing-nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.landing-nav a{color:var(--muted);text-decoration:none;font-size:14px}.landing-nav a:hover{color:var(--text)}.landing-section{margin-top:22px}.landing-hero{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:18px;gap:18px;align-items:start}.landing-hero-aside{display:grid;grid-gap:12px;gap:12px}.landing-stat{border:1px solid var(--border);border-radius:12px;background:#0b1222;padding:12px 14px;display:flex;flex-direction:column;gap:6px}.landing-link{color:var(--text);font-weight:600;text-decoration:none;border-bottom:1px solid var(--border);padding-bottom:2px}.landing-link:hover{border-bottom-color:var(--muted)}.landing-faq{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:14px;gap:14px;margin-top:14px}.landing-faq-item{border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:#0b1222;display:flex;flex-direction:column;gap:8px}.landing-footer{margin-top:26px;align-items:center;justify-content:space-between}.landing-footer,.landing-footer-links{display:flex;gap:12px;flex-wrap:wrap}.landing-footer a{color:var(--muted);text-decoration:none;font-size:13px}.landing-footer a:hover{color:var(--text)}.auth-header{justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}.auth-brand,.auth-header{display:flex;align-items:center}.auth-brand{gap:10px;text-decoration:none}.auth-nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.auth-nav a{color:var(--muted);text-decoration:none;font-size:14px}.auth-nav a:hover{color:var(--text)}.auth-shell{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:18px;gap:18px;align-items:start;margin-top:10px}.auth-copy{padding:6px 4px;display:flex;flex-direction:column;gap:14px}.auth-bullets{display:grid;grid-gap:10px;gap:10px;margin-top:4px}.auth-bullet{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:12px;background:#0b1222;padding:10px 12px}.auth-panel{padding:20px}@media (max-width:900px){.auth-shell,.landing-hero{grid-template-columns:1fr}}.panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:20px;box-shadow:0 20px 60px rgba(0,0,0,.25)}.stack{flex-direction:column;gap:16px}.row,.stack{display:flex}.row{gap:12px;flex-wrap:wrap}button{cursor:pointer;border:1px solid transparent;border-radius:10px;padding:10px 14px;font-weight:600;background:var(--accent);color:#fff;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}button.secondary{background:transparent;color:var(--text);border-color:var(--border)}button:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(124,58,237,.3)}input,select,textarea{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:#0b1222;color:var(--text);font-size:15px}label{font-weight:600;display:block;margin-bottom:6px}.section-title{display:flex;align-items:center;gap:10px;margin:0;font-size:18px}.badge{padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:#0c1324;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:16px;gap:16px}.card{border:1px solid var(--border);background:var(--panel);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px}.small{color:var(--muted);font-size:14px}.stepper{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.step{border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:#0b1222}.step h4{margin:0 0 6px}hr{border:none;border-top:1px solid var(--border);margin:16px 0}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:10px;border-bottom:1px solid var(--border);text-align:left}.table th{color:var(--muted);font-weight:500}.caption{color:var(--muted);font-size:13px}.book-reader{display:flex;flex-direction:column;gap:12px}.book-frame{perspective:1400px;display:flex;justify-content:center}.book-page{border:1px solid var(--border);border-radius:12px;padding:26px 24px;background:var(--text);color:var(--bg);width:min(92vw,780px);height:min(78vh,980px);overflow:hidden;transform-style:preserve-3d;transition:transform .32s ease,filter .32s ease}.book-page.turn-next{transform-origin:left center;transform:rotateY(-35deg);filter:brightness(.98)}.book-page.turn-prev{transform-origin:right center;transform:rotateY(35deg);filter:brightness(.98)}.book-text{white-space:pre-wrap;line-height:1.9;font-size:18px;font-family:serif;letter-spacing:.01em}.book-measure{position:fixed;left:-10000px;top:0;visibility:hidden;pointer-events:none;contain:layout style size}