/* ===================================================================== MODERNÍ BAREVNÝ FORMULÁŘ – 2026 UI (CLEAN + COLORFUL) ===================================================================== */ /* --------------------------------------------------------------------- 1. PROMĚNNÉ --------------------------------------------------------------------- */ :root { --primary: #7c3aed; /* fialová */ --secondary: #06b6d4; /* cyan */ --accent: #f97316; /* oranžová */ --bg: #f6f7ff; --card: #ffffff; --text: #111827; --muted: #6b7280; --success: #22c55e; --danger: #ef4444; --radius: 20px; --shadow: 0 15px 45px rgba(0,0,0,.10); } /* --------------------------------------------------------------------- 2. BODY --------------------------------------------------------------------- */ body { font-family: system-ui, -apple-system, Segoe UI, sans-serif; background: radial-gradient(circle at top left, #ede9fe, transparent 45%), radial-gradient(circle at top right, #cffafe, transparent 40%), radial-gradient(circle at bottom, #ffedd5, transparent 45%), var(--bg); color: var(--text); } /* --------------------------------------------------------------------- 3. HEADER --------------------------------------------------------------------- */ .app-header { background: rgba(255,255,255,.85); backdrop-filter: blur(12px); border-bottom: 1px solid rgba(0,0,0,.06); } .navbar-brand { font-weight: 700; color: var(--text) !important; } /* --------------------------------------------------------------------- 4. CARD --------------------------------------------------------------------- */ .form-card, .success-card { background: var(--card); border-radius: var(--radius); box-shadow: var(--shadow); border: 1px solid rgba(0,0,0,.05); overflow: hidden; } /* gradient header (barevný highlight) */ .form-card-header { background: linear-gradient( 135deg, var(--primary), var(--secondary) ); color: white; padding: 2rem; } /* footer */ .form-card-footer { background: linear-gradient(135deg, #f9fafb, #f3f4f6); border-top: 1px solid rgba(0,0,0,.05); color: var(--muted); } /* --------------------------------------------------------------------- 5. FORM ELEMENTY --------------------------------------------------------------------- */ .form-label { font-weight: 600; margin-bottom: .4rem; } .form-control, .form-select { border-radius: 14px; border: 1px solid #e5e7eb; padding: .8rem 1rem; transition: .2s ease; background: #fff; } .form-control:focus, .form-select:focus { border-color: var(--secondary); box-shadow: 0 0 0 4px rgba(6,182,212,.15); } /* input ikony */ .input-group-text { background: linear-gradient(135deg, #f3f4f6, #e5e7eb); border: 1px solid #e5e7eb; color: var(--primary); } /* textarea */ textarea.form-control { min-height: 160px; } /* --------------------------------------------------------------------- 6. VALIDACE --------------------------------------------------------------------- */ .is-valid { border-color: var(--success) !important; } .is-invalid { border-color: var(--danger) !important; } .invalid-feedback { display: block; color: var(--danger); font-size: .85rem; } /* --------------------------------------------------------------------- 7. BUTTON --------------------------------------------------------------------- */ .btn-primary { background: linear-gradient( 135deg, var(--primary), var(--secondary) ); border: none; border-radius: 14px; font-weight: 600; padding: .9rem 1.2rem; transition: .25s ease; } .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(124,58,237,.25); } /* --------------------------------------------------------------------- 8. SUCCESS --------------------------------------------------------------------- */ .success-icon i { font-size: 4.5rem; color: var(--success); animation: pop .5s ease; } @keyframes pop { from { transform: scale(.6); opacity: 0; } to { transform: scale(1); opacity: 1; } } /* --------------------------------------------------------------------- 9. ALERT --------------------------------------------------------------------- */ .alert { border-radius: 14px; } /* --------------------------------------------------------------------- 10. FOOTER --------------------------------------------------------------------- */ .app-footer { background: #ffffff; border-top: 1px solid rgba(0,0,0,.06); color: var(--muted); } /* --------------------------------------------------------------------- 11. ANIMACE --------------------------------------------------------------------- */ .animate-slide-down { animation: slideDown .4s ease; } @keyframes slideDown { from { opacity: 0; transform: translateY(-12px); } to { opacity: 1; transform: translateY(0); } } /* --------------------------------------------------------------------- 12. HOVER DETAIL (malý UX bonus) --------------------------------------------------------------------- */ .form-card:hover { transform: translateY(-2px); transition: .3s ease; }