* {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
      }

      html, body {
        height: 100%;
        font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text",
          "Segoe UI", sans-serif;
      }

      body {
        background: linear-gradient(135deg, 
          #0f172a 0%, 
          #1e293b 50%, 
          #334155 100%);
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 20px;
        position: relative;
        overflow: hidden;
      }

      /* Yeni arkaplan efekti */
      body::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: 
          radial-gradient(circle at 20% 80%, 
            rgba(99, 255, 147, 0.15) 0%, 
            transparent 60%),
          radial-gradient(circle at 80% 20%, 
            rgba(46, 255, 206, 0.15) 0%, 
            transparent 60%),
          radial-gradient(circle at 40% 40%, 
            rgba(99, 255, 147, 0.08) 0%, 
            transparent 50%),
          radial-gradient(circle at 60% 60%, 
            rgba(46, 255, 206, 0.08) 0%, 
            transparent 50%);
        pointer-events: none;
        animation: gradientShift 20s ease-in-out infinite alternate;
      }

      @keyframes gradientShift {
        0% {
          opacity: 0.7;
          transform: scale(1);
        }
        100% {
          opacity: 1;
          transform: scale(1.1);
        }
      }

      .page {
        width: 100%;
        max-width: 500px;
        display: flex;
        flex-direction: column;
        align-items: center;
        position: relative;
        z-index: 1;
      }

      .logo {
        margin-bottom: 32px;
        display: flex;
        align-items: center;
        gap: 12px;
        color: #ffffff;
        font-weight: 700;
        font-size: 24px;
        text-shadow: 0 2px 15px rgba(99, 255, 147, 0.3);
      }

      .logo img {
        width: 40px;
        height: 40px;
        border-radius: 12px;
        box-shadow: 
          0 4px 20px rgba(99, 255, 147, 0.4),
          0 0 0 1px rgba(46, 255, 206, 0.2);
        background: linear-gradient(135deg, #63FF93, #2EFFCE);
        padding: 8px;
      }

      .card {
        background: rgba(15, 23, 42, 0.85);
        backdrop-filter: blur(20px);
        border: 1px solid rgba(99, 255, 147, 0.25);
        border-radius: 28px;
        box-shadow: 
          0 30px 60px rgba(0, 0, 0, 0.6),
          inset 0 1px 0 rgba(255, 255, 255, 0.1),
          0 0 0 1px rgba(46, 255, 206, 0.1);
        width: 100%;
        padding: 40px;
        text-align: center;
        position: relative;
        overflow: hidden;
      }

      .card::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 1px;
        background: linear-gradient(90deg, 
          transparent, 
          rgba(99, 255, 147, 0.5), 
          rgba(46, 255, 206, 0.5), 
          transparent);
        animation: shimmer 3s ease-in-out infinite;
      }

      @keyframes shimmer {
        0%, 100% { transform: translateX(-100%); }
        50% { transform: translateX(100%); }
      }

      .panel-title {
        font-size: 24px;
        font-weight: 700;
        color: #ffffff;
        margin-bottom: 12px;
        text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
        background: linear-gradient(135deg, #63FF93, #2EFFCE);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }

      .panel-subtitle {
        font-size: 15px;
        color: #cbd5e1;
        line-height: 1.6;
        margin-bottom: 32px;
        opacity: 0.9;
      }

      .input-wrapper {
        margin-bottom: 24px;
        position: relative;
      }

      .input-wrapper input {
        width: 100%;
        border-radius: 18px;
        border: 1px solid rgba(99, 255, 147, 0.3);
        padding: 18px 24px;
        font-size: 16px;
        background: rgba(30, 41, 59, 0.8);
        color: #ffffff;
        outline: none;
        transition: all 0.3s ease;
        box-shadow: 
          inset 0 2px 8px rgba(0, 0, 0, 0.2),
          0 4px 12px rgba(0, 0, 0, 0.1);
      }

      .input-wrapper input:focus {
        background: rgba(30, 41, 59, 0.95);
        border-color: #63FF93;
        box-shadow: 
          inset 0 2px 8px rgba(0, 0, 0, 0.2),
          0 0 0 4px rgba(99, 255, 147, 0.15),
          0 8px 24px rgba(99, 255, 147, 0.25);
        transform: translateY(-2px);
      }

      .input-wrapper input::placeholder {
        color: #94a3b8;
      }

      .validation-message {
        font-size: 13px;
        margin-top: 8px;
        text-align: left;
        padding-left: 24px;
        font-weight: 500;
        display: flex;
        align-items: center;
        gap: 6px;
      }

      .validation-success {
        color: #63FF93;
        text-shadow: 0 0 10px rgba(99, 255, 147, 0.3);
      }

      .validation-error {
        color: #ff6b6b;
      }

      .btn {
        width: 100%;
        border-radius: 18px;
        border: none;
        padding: 18px 24px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.3s ease;
        margin-top: 16px;
        position: relative;
        overflow: hidden;
        letter-spacing: 0.5px;
      }

      .btn::before {
        content: '';
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: linear-gradient(90deg, 
          transparent, 
          rgba(255, 255, 255, 0.2), 
          transparent);
        transition: left 0.7s;
      }

      .btn:hover::before {
        left: 100%;
      }

      .btn-primary {
        background: linear-gradient(135deg, 
          #63FF93 0%, 
          #2EFFCE 100%);
        color: #0f172a;
        box-shadow: 
          0 12px 32px rgba(99, 255, 147, 0.4),
          0 4px 8px rgba(46, 255, 206, 0.3);
      }

      .btn-primary:hover:not(:disabled) {
        transform: translateY(-4px);
        box-shadow: 
          0 20px 40px rgba(99, 255, 147, 0.6),
          0 8px 16px rgba(46, 255, 206, 0.4);
      }

      .btn-primary:active:not(:disabled) {
        transform: translateY(-2px);
      }

      .btn-primary:disabled {
        background: #475569;
        color: #94a3b8;
        cursor: not-allowed;
        box-shadow: none;
        transform: none;
      }

      .btn-ghost {
        background: rgba(30, 41, 59, 0.8);
        color: #ffffff;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        box-shadow: 
          0 8px 24px rgba(0, 0, 0, 0.3),
          inset 0 0 0 1px rgba(99, 255, 147, 0.2);
        border: 1px solid rgba(99, 255, 147, 0.2);
      }

      .btn-ghost:hover {
        transform: translateY(-4px);
        box-shadow: 
          0 16px 32px rgba(0, 0, 0, 0.4),
          inset 0 0 0 1px rgba(99, 255, 147, 0.4);
        background: rgba(30, 41, 59, 0.95);
      }

      .btn-ghost span.icon-x {
        display: inline-flex;
        width: 20px;
        height: 20px;
        align-items: center;
        justify-content: center;
        border-radius: 999px;
        border: 1.5px solid #63FF93;
        font-size: 10px;
        line-height: 1;
        font-weight: bold;
        color: #63FF93;
        text-shadow: 0 0 8px rgba(99, 255, 147, 0.5);
      }

      .btn-secondary {
        background: rgba(51, 65, 85, 0.8);
        color: #ffffff;
        border: 1px solid rgba(99, 255, 147, 0.25);
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
      }

      .btn-secondary:hover:not(:disabled) {
        background: linear-gradient(135deg, 
          rgba(99, 255, 147, 0.1) 0%, 
          rgba(46, 255, 206, 0.1) 100%);
        transform: translateY(-4px);
        box-shadow: 
          0 16px 32px rgba(0, 0, 0, 0.3),
          0 0 0 1px rgba(99, 255, 147, 0.3);
      }

      .btn-secondary:disabled {
        background: rgba(71, 85, 105, 0.5);
        color: #64748b;
        cursor: not-allowed;
        transform: none;
        box-shadow: none;
      }

      .step-indicator {
        display: flex;
        justify-content: center;
        margin-bottom: 40px;
        gap: 16px;
      }

      .step-dot {
        width: 12px;
        height: 12px;
        border-radius: 50%;
        background: rgba(99, 255, 147, 0.3);
        transition: all 0.4s ease;
        position: relative;
      }

      .step-dot.active {
        background: #63FF93;
        box-shadow: 
          0 0 20px rgba(99, 255, 147, 0.7),
          0 0 40px rgba(99, 255, 147, 0.4);
        transform: scale(1.3);
      }

      .step-dot.completed {
        background: linear-gradient(135deg, #63FF93, #2EFFCE);
      }

      .step-dot::after {
        content: '';
        position: absolute;
        top: -6px;
        left: -6px;
        right: -6px;
        bottom: -6px;
        border-radius: 50%;
        background: rgba(99, 255, 147, 0.15);
        opacity: 0;
        transition: opacity 0.3s ease;
      }

      .step-dot.active::after {
        opacity: 1;
        animation: pulse 2s infinite;
      }

      @keyframes pulse {
        0%, 100% { transform: scale(1); opacity: 1; }
        50% { transform: scale(1.2); opacity: 0.5; }
      }

      .success-message {
        color: #63FF93;
        font-weight: 600;
        margin-top: 24px;
        padding: 20px;
        background: rgba(99, 255, 147, 0.1);
        border: 1px solid rgba(99, 255, 147, 0.3);
        border-radius: 18px;
        backdrop-filter: blur(10px);
        box-shadow: 
          inset 0 0 20px rgba(99, 255, 147, 0.1),
          0 8px 24px rgba(0, 0, 0, 0.2);
        animation: glow 2s ease-in-out infinite alternate;
      }

      @keyframes glow {
        from {
          box-shadow: 
            inset 0 0 20px rgba(99, 255, 147, 0.1),
            0 8px 24px rgba(0, 0, 0, 0.2);
        }
        to {
          box-shadow: 
            inset 0 0 30px rgba(99, 255, 147, 0.2),
            0 12px 32px rgba(0, 0, 0, 0.3);
        }
      }

      .error-message {
        color: #ff6b6b;
        font-weight: 600;
        margin-top: 20px;
        padding: 20px;
        background: rgba(255, 107, 107, 0.1);
        border: 1px solid rgba(255, 107, 107, 0.3);
        border-radius: 18px;
        backdrop-filter: blur(10px);
      }

      .hidden {
        display: none;
      }

      .step {
        animation: fadeInUp 0.6s ease;
      }

      @keyframes fadeInUp {
        from { 
          opacity: 0; 
          transform: translateY(30px); 
        }
        to { 
          opacity: 1; 
          transform: translateY(0); 
        }
      }

      .loading {
        opacity: 0.8;
        pointer-events: none;
        position: relative;
      }

      .loading::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        width: 24px;
        height: 24px;
        margin: -12px 0 0 -12px;
        border: 3px solid transparent;
        border-top: 3px solid #63FF93;
        border-right: 3px solid #2EFFCE;
        border-radius: 50%;
        animation: spin 1s linear infinite;
      }

      @keyframes spin {
        0% { transform: rotate(0deg); }
        100% { transform: rotate(360deg); }
      }

      /* Floating elements for extra depth */
      .floating-element {
        position: absolute;
        border-radius: 50%;
        background: linear-gradient(135deg, 
          rgba(99, 255, 147, 0.1), 
          rgba(46, 255, 206, 0.05));
        backdrop-filter: blur(5px);
        z-index: 0;
        pointer-events: none;
      }

      .floating-element:nth-child(1) {
        width: 80px;
        height: 80px;
        top: 10%;
        left: 10%;
        animation: float 20s infinite ease-in-out;
      }

      .floating-element:nth-child(2) {
        width: 120px;
        height: 120px;
        bottom: 15%;
        right: 10%;
        animation: float 25s infinite ease-in-out reverse;
      }

      @keyframes float {
        0%, 100% { transform: translateY(0) rotate(0deg); }
        50% { transform: translateY(-20px) rotate(180deg); }
      }

      /* Responsive tasarım */
      @media (max-width: 480px) {
        .card {
          padding: 32px 24px;
          border-radius: 24px;
        }
        
        .logo {
          font-size: 20px;
        }
        
        .logo img {
          width: 36px;
          height: 36px;
        }
        
        .panel-title {
          font-size: 22px;
        }
        
        .input-wrapper input {
          padding: 16px 20px;
          font-size: 15px;
        }
        
        .btn {
          padding: 16px 20px;
          font-size: 15px;
        }
      }

      @media (max-width: 360px) {
        .card {
          padding: 24px 20px;
        }
        
        .step-indicator {
          margin-bottom: 32px;
        }
      }