/* Extracted 1:1 from php/src/login.php - page-specific styles. */
    body { margin:0; min-height:100vh; display:flex; align-items:center; justify-content:center;
           background: radial-gradient(1200px 600px at 20% -10%, var(--bg-2) 0%, var(--bg) 55%);
           color:var(--text); font-family:'Space Grotesk',-apple-system,sans-serif; }
    .box { width:100%; max-width:360px; margin:24px; background:rgba(var(--panel-rgb), .6);
           border:1px solid rgba(var(--accent-2-rgb), .25); border-radius:16px; padding:32px 28px; }
    .box h1 { font-size:20px; font-weight:400; color:var(--head); margin:0 0 6px; }
    .sub { font-size:13.5px; font-weight:300; color:rgba(var(--text-rgb), .68); margin:0 0 24px; }
    label { display:block; font-size:12.5px; font-weight:600; color:rgba(var(--text-rgb), .8); margin:0 0 6px; }
    input[type=email], input[type=password], input[type=text] {
      width:100%; box-sizing:border-box; background:rgba(var(--bg-rgb), .6);
      border:1px solid rgba(var(--accent-2-rgb), .3); border-radius:10px; color:var(--text);
      font:inherit; font-size:15px; padding:11px 13px; margin:0 0 18px;
    }
    input:focus { outline:none; border-color:var(--accent); }
    button { width:100%; font-family:'JetBrains Mono',monospace; font-weight:700; font-size:14px;
             letter-spacing:.02em; color:var(--on-accent); background:linear-gradient(90deg,var(--accent),var(--accent-2));
             border:none; border-radius:11px; padding:13px; cursor:pointer; transition:transform .2s; }
    button:hover { transform:translateY(-1px); }
    .err { background:rgba(var(--err-rgb), .12); border:1px solid rgba(var(--err-rgb), .4);
           color:var(--err); border-radius:10px; padding:10px 12px; font-size:13.5px; margin:0 0 18px; }
    .switch { text-align:center; margin-top:14px; font-size:12.5px; }
    .switch a, .switch button.link { background:none; border:none; color:var(--accent); cursor:pointer;
      font-family:inherit; font-size:inherit; padding:0; text-decoration:underline; }
    .code-input { letter-spacing:.3em; text-align:center; font-family:'JetBrains Mono',monospace; font-size:20px; }
    /* 6-Kaestchen-Code-Eingabe im Apple-Stil - identisch zu DocMinds login.php
       uebernommen, nur auf GeekInfinitys eigene Theme-Variablen umgestellt. */
    .code { display:flex; gap:8px; justify-content:center; margin:0 0 18px; }
    .code input { width:44px; height:54px; text-align:center; font-size:22px; font-weight:600;
      padding:0; background:rgba(var(--bg-rgb), .6); color:var(--text);
      border:1px solid rgba(var(--accent-2-rgb), .3); border-radius:11px;
      caret-color:var(--accent); font-variant-numeric:tabular-nums; outline:none;
      font-family:'JetBrains Mono',monospace; }
    .code input:focus { border-color:var(--accent); }
    .code.shake, #recoveryBlock.shake { animation:pf-shake .34s; }
    @keyframes pf-shake {
      10%,90% { transform:translateX(-2px); } 30%,70% { transform:translateX(5px); }
      50% { transform:translateX(-7px); }
    }
  
