:root {
      --page:#f4f8ff;
      --card:#ffffff;
      --ink:#020617;
      --muted:#64748b;
      --soft:#eff6ff;
      --line:#dbeafe;
      --brand:#2563eb;
      --brand-dark:#1d4ed8;
      --cyan:#67e8f9;
      --navy:#020617;
      --green:#10b981;
      --amber:#f59e0b;
      --red:#e11d48;
    }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; min-height:100vh; font-family:"Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif; background:var(--page); color:var(--ink); }
    body::before { content:""; position:fixed; inset:0; pointer-events:none; background:radial-gradient(circle at 50% -8rem, rgba(59,130,246,.25), transparent 28rem), radial-gradient(circle at 105% 18rem, rgba(103,232,249,.23), transparent 26rem), radial-gradient(circle at -8rem 75%, rgba(99,102,241,.16), transparent 28rem); }
    a { color:inherit; }
    .topbar { position:relative; z-index:2; width:min(1280px, calc(100% - 36px)); margin:0 auto; padding:24px 0; display:flex; align-items:center; justify-content:space-between; gap:22px; }
    .brand { display:inline-flex; align-items:center; gap:12px; color:var(--ink); text-decoration:none; font-weight:950; letter-spacing:-.03em; }
    .brand-mark { width:44px; height:44px; border-radius:16px; display:grid; place-items:center; background:linear-gradient(135deg,#1d4ed8,#1e1b4b); color:#fff; box-shadow:0 16px 32px rgba(37,99,235,.20); font-weight:950; }
    .brand-text strong { display:block; font-size:18px; color:#020617; }
    .brand-text span { display:block; color:var(--brand); font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.22em; margin-top:2px; }
    .nav-actions { display:flex; align-items:center; gap:26px; flex-wrap:wrap; justify-content:flex-end; font-size:14px; font-weight:850; color:#475569; }
    .nav-actions a { text-decoration:none; white-space:nowrap; }
    .nav-actions a:hover { color:var(--brand); }
    .register-link { border-radius:999px; background:#020617; color:#fff !important; padding:10px 18px; box-shadow:0 16px 30px rgba(15,23,42,.16); }
    .register-link:hover { background:var(--brand-dark); }
    .user-chip { white-space:nowrap; color:#64748b; font-weight:900; }
    .auth-main { position:relative; z-index:1; width:min(1280px, calc(100% - 36px)); margin:0 auto; padding:0 0 12px; }
    .auth-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:24px; align-items:stretch; }
    .auth-card { background:#fff; border:1px solid var(--line); border-radius:34px; box-shadow:0 28px 70px rgba(96,165,250,.25); padding:30px; }
    .auth-switcher-wrap { display:flex; justify-content:center; margin-bottom:28px; }
    .auth-switcher { display:inline-flex; border:1px solid var(--line); background:#f8fafc; border-radius:999px; padding:4px; box-shadow:0 8px 18px rgba(15,23,42,.05); }
    .auth-tab { display:inline-flex; align-items:center; justify-content:center; min-width:94px; border-radius:999px; padding:9px 16px; text-decoration:none; color:#64748b; font-size:14px; font-weight:950; }
    .auth-tab:hover { color:var(--brand); }
    .auth-tab.active { background:#020617; color:#fff; box-shadow:0 10px 20px rgba(15,23,42,.18); }
    .kicker { display:inline-flex; align-items:center; gap:8px; border:1px solid var(--line); background:#eff6ff; color:#1e40af; border-radius:999px; padding:9px 14px; font-size:12px; font-weight:950; letter-spacing:.18em; text-transform:uppercase; }
    .kicker.warn { border-color:#fde68a; background:#fffbeb; color:#b45309; }
    h1 { margin:20px 0 0; font-size:clamp(42px, 5vw, 60px); line-height:.95; letter-spacing:-.058em; }
    .intro { margin:16px 0 0; color:#64748b; font-size:16px; line-height:1.72; }
    .auth-form { display:grid; gap:20px; margin-top:28px; }
    .field { display:block; }
    .field > span { display:block; color:#1e293b; font-size:14px; font-weight:950; margin-bottom:8px; }
    .input-wrap { position:relative; }
    .field-icon { position:absolute; left:15px; top:50%; transform:translateY(-50%); width:22px; height:22px; display:grid; place-items:center; color:#1d4ed8; font-size:16px; line-height:1; }
    input { width:100%; height:56px; border:1px solid var(--line); border-radius:18px; background:#eff6ff99; color:#020617; font-size:16px; font-weight:750; outline:none; padding:0 16px; transition:.16s ease; }
    .field-icon i, .password-toggle i, .submit-button i, .secondary-button i, .footer-scan i, .benefit-icon i { display:block; line-height:1; }
    .input-wrap .field-icon + input { padding-left:48px; }
    input:focus { border-color:#bfdbfe; background:#fff; box-shadow:0 0 0 4px rgba(191,219,254,.55); }
    .password-toggle { position:absolute; right:12px; top:50%; transform:translateY(-50%); width:38px; height:38px; border:0; border-radius:12px; background:transparent; color:#64748b; cursor:pointer; display:grid; place-items:center; font-size:16px; padding:0; }
    .password-toggle:hover { color:var(--brand); }
    .form-options { display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; color:#64748b; font-size:14px; font-weight:800; }
    .checkbox-line { display:flex; align-items:flex-start; gap:10px; color:#64748b; font-size:14px; font-weight:750; line-height:1.6; border:1px solid var(--line); background:#eff6ff99; border-radius:18px; padding:14px; }
    .checkbox-line input { width:16px; height:16px; margin-top:4px; flex:0 0 auto; }
    .submit-button, button.submit-button { width:100%; height:56px; border:0; border-radius:18px; background:var(--brand); color:#fff; font-size:16px; font-weight:950; cursor:pointer; box-shadow:0 18px 34px rgba(37,99,235,.22); display:inline-flex; align-items:center; justify-content:center; gap:9px; }
    .submit-button:hover { background:var(--brand-dark); }
    .secondary-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:46px; border-radius:999px; padding:11px 16px; border:1px solid var(--line); background:#fff; color:var(--brand); text-decoration:none; font-weight:950; cursor:pointer; }
    .secondary-button:hover { background:#eff6ff; }
    .below-form { margin:22px 0 0; color:#64748b; text-align:center; font-size:14px; font-weight:750; }
    .below-form a, .below-form button, .form-options a, .verify-links button, .verify-links a { color:var(--brand); border:0; background:transparent; cursor:pointer; text-decoration:none; font-weight:950; padding:0; }
    .notice { margin:0 0 18px; padding:14px 16px; border-radius:18px; font-weight:850; line-height:1.55; }
    .notice.error { background:#fff1f2; color:#9f1239; border:1px solid #fecdd3; }
    .notice.good { background:#ecfdf5; color:#065f46; border:1px solid #bbf7d0; }
    .notice.warn { background:#fffbeb; color:#92400e; border:1px solid #fde68a; }
    .notice a { color:inherit; font-weight:950; overflow-wrap:anywhere; }
    .code-box { display:inline-flex; align-items:center; justify-content:center; min-width:150px; border-radius:20px; padding:16px 24px; background:#020617; color:#bfdbfe; font-size:30px; letter-spacing:.18em; font-weight:950; margin:12px 0; }
    .sent-box { border:1px solid var(--line); background:#eff6ff99; border-radius:18px; padding:15px; }
    .sent-box span { display:block; color:#1d4ed8; font-size:12px; font-weight:950; letter-spacing:.16em; text-transform:uppercase; }
    .sent-box strong { display:block; margin-top:5px; color:#020617; font-size:16px; }
    .sent-box em { display:block; margin-top:5px; color:#64748b; font-style:normal; font-size:14px; font-weight:750; line-height:1.55; }
    .code-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:8px; }
    .code-grid input { text-align:center; padding:0; font-size:25px; font-weight:950; }
    .verify-links { margin-top:22px; display:flex; flex-wrap:wrap; justify-content:center; gap:12px; color:#64748b; font-size:14px; font-weight:800; }
    .dot { width:4px; height:4px; align-self:center; border-radius:999px; background:#cbd5e1; }
    .auth-side-panel { background:linear-gradient(135deg,#020617,#0d1f4a 50%,#1d4ed8); color:#fff; border-radius:34px; padding:32px; box-shadow:0 28px 70px rgba(96,165,250,.25); }
    .side-pill { display:inline-flex; align-items:center; gap:8px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.10); color:#a5f3fc; border-radius:999px; padding:9px 14px; font-size:12px; font-weight:950; letter-spacing:.18em; text-transform:uppercase; }
    .side-pill i, .kicker i { display:inline-grid; place-items:center; width:15px; height:15px; line-height:1; }
    .auth-side-panel h2 { margin:24px 0 0; font-size:clamp(34px, 4vw, 44px); line-height:1; letter-spacing:-.045em; }
    .auth-side-panel > p { margin:20px 0 0; color:#dbeafe; font-size:16px; line-height:1.7; }
    .benefit-list { display:grid; gap:12px; margin-top:30px; }
    .benefit-card { border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.10); border-radius:20px; padding:15px; display:flex; gap:12px; align-items:flex-start; }
    .benefit-icon { width:42px; height:42px; border-radius:16px; display:grid; place-items:center; flex:0 0 auto; background:#67e8f9; color:#020617; font-size:17px; line-height:1; }
    .benefit-card strong { display:block; color:#fff; font-size:15px; }
    .benefit-card em { display:block; margin-top:4px; color:#dbeafecc; font-style:normal; font-size:14px; line-height:1.55; }
    .founder-note { margin-top:30px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.10); border-radius:24px; padding:20px; }
    .founder-note span { display:block; color:#a5f3fc; font-size:12px; font-weight:950; letter-spacing:.18em; text-transform:uppercase; }
    .founder-note strong { display:block; margin-top:8px; font-size:24px; }
    .founder-note p { margin:8px 0 0; color:#dbeafecc; font-size:14px; line-height:1.6; }
    .no-pending-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
    .role-pill { display:inline-flex; align-items:center; border-radius:999px; padding:5px 9px; background:#eff6ff; color:var(--brand); font-size:12px; font-weight:950; text-transform:uppercase; letter-spacing:.08em; }
    .button-row { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
    .button-row .submit-button, .button-row .secondary-button { width:auto; }
    .public-footer-wrap { position:relative; z-index:1; width:min(1280px, calc(100% - 36px)); margin:0 auto 48px; }
    .footer { margin-top:32px; padding-bottom:8px; }
    .footer-card { border:1px solid #1e293b; background:#020617; color:#fff; border-radius:32px; padding:28px; box-shadow:0 24px 65px rgba(15,23,42,.18); }
    .footer-grid { display:grid; grid-template-columns:1.2fr 2fr; gap:34px; }
    .footer .brand { color:#fff; }
    .footer .brand-mark { background:#fff; color:#020617; box-shadow:none; }
    .footer .brand-text strong { display:block; color:#fff; font-size:17px; letter-spacing:-.03em; }
    .footer .brand-text span { display:block; color:#67e8f9; font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.22em; margin-top:2px; }
    .footer p { margin:18px 0 0; max-width:470px; color:#cbd5e1; line-height:1.7; font-size:14px; }
    .footer-scan { margin-top:22px; display:inline-flex; align-items:center; gap:8px; background:#67e8f9; color:#020617; text-decoration:none; border-radius:999px; padding:11px 16px; font-size:14px; font-weight:950; }
    .footer-links { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
    .footer-links h4 { margin:0 0 14px; color:#fff; text-transform:uppercase; letter-spacing:.16em; font-size:12px; }
    .footer-links a { display:block; color:#94a3b8; text-decoration:none; font-size:14px; font-weight:750; margin-top:10px; }
    .footer-links a:hover { color:#67e8f9; }
    .footer-bottom { margin-top:30px; padding-top:20px; border-top:1px solid rgba(255,255,255,.10); display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; color:#94a3b8; font-size:12px; font-weight:800; }
    .footer-bottom a { color:#94a3b8; text-decoration:none; margin-left:14px; }
    .footer-bottom a:hover { color:#67e8f9; }
    @media(max-width:1060px){ .auth-grid{grid-template-columns:1fr;} .topbar{align-items:flex-start; flex-direction:column;} .nav-actions{justify-content:flex-start;} }
    @media(max-width:920px){ .footer-grid{grid-template-columns:1fr;} .footer-links{grid-template-columns:repeat(2,1fr);} }
    @media(max-width:640px){ .topbar,.auth-main,.public-footer-wrap{width:min(100% - 22px, 1280px);} .auth-card,.auth-side-panel{padding:22px; border-radius:28px;} .auth-switcher{width:100%;} .auth-tab{flex:1; min-width:0;} .code-grid{gap:5px;} .code-grid input{height:50px; border-radius:14px;} .footer-links{grid-template-columns:1fr;} .footer-bottom a{margin-left:0; margin-right:14px;} }
