textarea{width:100%;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:12px;font-family:'Courier New',monospace;font-size:0.9rem;resize:vertical;box-sizing:border-box}textarea:focus{outline:none;border-color:var(--accent)}input[type="text"],input[type="number"],input[type="password"],input[type="time"],input[type="date"],input[type="color"],select{width:100%;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;font-size:0.9rem;box-sizing:border-box}input:focus,select:focus{outline:none;border-color:var(--accent)}.result-box{padding:16px;background:var(--surface);border:2px solid var(--accent);border-radius:var(--radius);font-size:1.2rem;font-weight:700;text-align:center;color:var(--accent);margin-top:16px;word-break:break-all}.ic-section input[type="number"]{width:80px}.output-area{padding:12px;margin-top:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center}.output-area img{max-width:100%;max-height:300px;border-radius:var(--radius)}

/* ============================================
   CROP MODE SWITCHER — Premium Toggle Buttons
   ============================================ */
.crop-mode-switcher {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

.crop-mode-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 10px 18px;
  border: 1px solid var(--glass-border, rgba(255,255,255,0.08));
  border-radius: 12px;
  background: var(--glass-bg, rgba(255,255,255,0.04));
  color: var(--text-muted, #6b6b8a);
  font-family: 'DM Sans', system-ui, sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  position: relative;
}

.crop-mode-btn:hover {
  background: var(--glass-bg-hover, rgba(255,255,255,0.07));
  border-color: var(--glass-border-hover, rgba(255,255,255,0.14));
  color: var(--text-primary, #eeeeff);
  transform: translateY(-1px);
}

.crop-mode-btn:active {
  transform: scale(0.97);
}

.crop-mode-btn.active {
  background: rgba(124, 111, 255, 0.12);
  border-color: rgba(124, 111, 255, 0.35);
  color: #b8b0ff;
  box-shadow: 0 0 20px rgba(124, 111, 255, 0.1);
}

.crop-mode-btn svg {
  flex-shrink: 0;
}

/* Premium / Advanced button */
.crop-mode-btn-premium {
  background: linear-gradient(135deg, rgba(59,130,246,0.08), rgba(139,92,246,0.08));
  border-color: rgba(59,130,246,0.2);
  color: var(--text-muted, #6b6b8a);
}

.crop-mode-btn-premium:hover {
  background: linear-gradient(135deg, rgba(59,130,246,0.14), rgba(139,92,246,0.14));
  border-color: rgba(59,130,246,0.35);
  color: #c0d0ff;
  box-shadow: 0 0 24px rgba(59,130,246,0.08);
}

.crop-mode-btn-premium svg {
  color: #3b82f6;
  filter: drop-shadow(0 0 6px rgba(59,130,246,0.3));
}

.crop-mode-btn-premium.active {
  background: linear-gradient(135deg, rgba(59,130,246,0.18), rgba(139,92,246,0.18));
  border-color: rgba(59,130,246,0.45);
  color: #90b0ff;
  box-shadow: 0 0 30px rgba(59,130,246,0.12);
}

.crop-mode-badge {
  display: inline-block;
  padding: 2px 7px;
  border-radius: 6px;
  background: linear-gradient(135deg, #22c55e, #16a34a);
  color: #fff;
  font-family: 'DM Sans', system-ui, sans-serif;
  font-size: 0.6rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  animation: badgePulse 2s ease-in-out infinite;
}

@keyframes badgePulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(34,197,94,0.4); }
  50% { box-shadow: 0 0 0 6px rgba(34,197,94,0); }
}

@media (max-width: 640px) {
  .crop-mode-switcher {
    gap: 6px;
  }
  .crop-mode-btn {
    padding: 8px 12px;
    font-size: 0.78rem;
  }
  .crop-mode-btn span.crop-mode-badge {
    font-size: 0.55rem;
    padding: 1px 5px;
  }
}
