
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    body {
      background: #111;
      color: #fff;
      font-family: 'Segoe UI', Arial, sans-serif;
      min-height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .auth-card {
      background: #1a1a18;
      border: 1px solid rgba(255,255,255,0.07);
      border-radius: 20px;
      padding: 48px 40px;
      width: 100%;
      max-width: 420px;
    }

    .auth-logo {
      text-align: center;
      margin-bottom: 28px;
    }
    .auth-logo img { height: 56px; }

    /* Табы */
    .auth-tabs {
      display: flex;
      background: rgba(255,255,255,0.05);
      border-radius: 50px;
      padding: 4px;
      margin-bottom: 28px;
    }
    .auth-tab {
      flex: 1;
      padding: 10px;
      text-align: center;
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 0.5px;
      border-radius: 50px;
      cursor: pointer;
      color: #888;
      transition: background 0.2s, color 0.2s;
      user-select: none;
    }
    .auth-tab.active {
      background: #ff5e00;
      color: #fff;
    }

    .auth-panel { display: none; }
    .auth-panel.active { display: block; }

    .auth-title {
      font-size: 20px;
      font-weight: 800;
      text-align: center;
      margin-bottom: 6px;
    }
    .auth-subtitle {
      font-size: 13px;
      color: #888;
      text-align: center;
      margin-bottom: 24px;
    }

    .form-group { margin-bottom: 18px; }
    .form-group label {
      display: block;
      font-size: 13px;
      color: #aaa;
      margin-bottom: 7px;
      font-weight: 600;
    }
    .form-group input {
      width: 100%;
      padding: 13px 16px;
      background: rgba(255,255,255,0.05);
      border: 1px solid rgba(255,255,255,0.1);
      border-radius: 10px;
      color: #fff;
      font-size: 15px;
      outline: none;
      transition: border-color 0.2s;
    }
    .form-group input:focus { border-color: #ff5e00; }
    .form-group input.error { border-color: #ff4444; }

    .form-error {
      font-size: 12px;
      color: #ff4444;
      margin-top: 5px;
      display: none;
    }
    .form-error.visible { display: block; }

    .btn-submit {
      width: 100%;
      padding: 15px;
      background: #ff5e00;
      color: #fff;
      border: none;
      border-radius: 50px;
      font-size: 15px;
      font-weight: 700;
      letter-spacing: 1px;
      text-transform: uppercase;
      cursor: pointer;
      transition: background 0.2s, transform 0.1s;
      margin-top: 4px;
    }
    .btn-submit:hover { background: #e05500; }
    .btn-submit:active { transform: scale(0.98); }

    .success-msg {
      display: none;
      text-align: center;
      padding: 14px;
      background: rgba(255,94,0,0.1);
      border: 1px solid rgba(255,94,0,0.3);
      border-radius: 10px;
      color: #ff5e00;
      font-size: 14px;
      margin-top: 14px;
    }

    .auth-footer {
      text-align: center;
      margin-top: 22px;
      font-size: 13px;
      color: #666;
    }
    .auth-footer a { color: #ff5e00; text-decoration: none; }
    .auth-footer a:hover { text-decoration: underline; }

    @media (max-width: 480px) {
      .auth-card {
        padding: 32px 20px;
        border-radius: 0;
        border-left: none;
        border-right: none;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: center;
      }
    }
