* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: 'Inter', sans-serif; background: #050505; color: #fff; display: flex; justify-content: center; align-items: center; min-height: 100vh; padding: 30px; overflow-x: hidden; position: relative; }
.blob { position: absolute; filter: blur(80px); z-index: -1; opacity: 0.6; animation: float 10s infinite alternate ease-in-out; }
.blob-1 { width: 400px; height: 400px; background: #2563eb; top: -100px; left: -100px; }
.blob-2 { width: 300px; height: 300px; background: #9333ea; bottom: -50px; right: -50px; animation-delay: -5s; }
@keyframes float { 0% { transform: translate(0, 0) scale(1); } 100% { transform: translate(50px, 50px) scale(1.1); } }

.glass { 
  background: rgba(255, 255, 255, 0.03); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); 
  border: 1px solid rgba(255, 255, 255, 0.05); box-shadow: 0 4px 30px rgba(0, 0, 0, 0.5); 
  display: flex; gap: 40px; 
  max-width: 1350px; 
  width: 100%; padding: 40px; border-radius: 16px; 
}
@media (max-width: 950px) { .glass { flex-direction: column; gap: 30px; } .form-grid, .social-grid { grid-template-columns: 1fr !important; } }

.form-section { flex: 1.1; } 
.preview-section { flex: 0.9; display: flex; flex-direction: column; justify-content: center; }
h2 { font-size: 22px; font-weight: 600; }

.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
.social-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.full-width { grid-column: 1 / -1; }

.input-group { margin-bottom: 15px; position: relative; }
.input-group label { display: block; font-size: 13px; color: #a1a1aa; margin-bottom: 6px; font-weight: 600; }
input { width: 100%; padding: 12px 14px; margin-bottom: 0; background: rgba(0, 0, 0, 0.2); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 8px; color: #fff; outline: none; transition: 0.3s; font-size: 14px; }
input:focus { border-color: #3b82f6; background: rgba(0, 0, 0, 0.4); }

.input-wrapper { position: relative; }
.input-wrapper input { padding-right: 65px; }
.format-controls { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); display: flex; gap: 5px; opacity: 0.7; transition: opacity 0.3s; }
.input-wrapper:hover .format-controls { opacity: 1; }
.format-btn { background: rgba(255, 255, 255, 0.1); color: #fff; border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 4px; width: 24px; height: 24px; font-size: 12px; font-weight: 700; cursor: pointer; display: flex; justify-content: center; align-items: center; transition: 0.2s ease-in-out; }
.format-btn:hover { background: rgba(255, 255, 255, 0.2); border-color: rgba(255, 255, 255, 0.4); }
.format-btn.active { background: #2563eb; border-color: #3b82f6; box-shadow: 0 0 5px rgba(59, 130, 246, 0.5); }

.hidden-input { display: none; }
.custom-file-btn { display: flex !important; justify-content: center; align-items: center; gap: 8px; width: 100%; padding: 12px; background: rgba(59, 130, 246, 0.1); border: 1px dashed #3b82f6; border-radius: 8px; color: #3b82f6; cursor: pointer; font-weight: 600; font-size: 14px; transition: 0.3s ease; }
.custom-file-btn:hover { background: rgba(59, 130, 246, 0.2); }

.signature-wrapper { 
  background: #ffffff; 
  padding: 25px; 
  border-radius: 12px; 
  margin-bottom: 20px; 
  overflow-x: auto; 
  border: 1px solid #e2e8f0;
  height: fit-content; 
  width: 100%;
}
.action-btn { width: 100%; padding: 14px; background: #ffffff; color: #000000; border: none; border-radius: 8px; font-weight: bold; font-size: 15px; cursor: pointer; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); }
.action-btn:hover { background: #e2e8f0; }
.action-btn:active { transform: scale(0.98); }
.action-btn.success { background: #10b981; color: #ffffff; pointer-events: none; box-shadow: 0 4px 14px rgba(16, 185, 129, 0.4); }