/* === HAUPTSTADTFLOSS TALLY CUSTOM CSS === */ /* Basierend auf WPForms-Design von hauptstadtfloss.de */ /* === FORMULAR CONTAINER === */ .tally-form-container { font-family: 'Open Sans', Arial, sans-serif !important; background-color: #f4f7f9 !important; } /* === ÜBERSCHRIFTEN === */ .tally-form h1, .tally-form .tally-heading-1 { color: #2f7aa8 !important; font-size: 28px !important; font-weight: 700 !important; text-align: left !important; margin-bottom: 24px !important; } .tally-form h2, .tally-form .tally-heading-2 { color: #2f7aa8 !important; font-size: 20px !important; font-weight: 600 !important; } .tally-form h3, .tally-form .tally-heading-3 { color: #2f7aa8 !important; font-size: 18px !important; font-weight: 600 !important; } /* === LABELS === */ .tally-form label, .tally-form .tally-label { color: #2f7aa8 !important; font-size: 16px !important; line-height: 19px !important; font-weight: 600 !important; margin-bottom: 8px !important; } /* Sublabel / Beschreibungstext */ .tally-form .tally-description, .tally-form .tally-help-text { color: #808895 !important; font-size: 14px !important; line-height: 17px !important; margin-top: 5px !important; } /* === INPUT FELDER === */ .tally-form input[type="text"], .tally-form input[type="email"], .tally-form input[type="tel"], .tally-form input[type="number"], .tally-form input[type="date"], .tally-form input[type="time"], .tally-form textarea, .tally-form select { background-color: #f2f5f7 !important; border: none !important; border-radius: 25px !important; color: rgba(0, 0, 0, 0.7) !important; font-size: 16px !important; line-height: 19px !important; padding: 14px !important; height: 43px !important; transition: all 0.3s ease !important; } /* Textarea spezifisch */ .tally-form textarea { height: auto !important; min-height: 100px !important; padding: 14px !important; } /* Input Focus State */ .tally-form input:focus, .tally-form textarea:focus, .tally-form select:focus { outline: none !important; box-shadow: 0 0 0 3px rgba(47, 122, 168, 0.15) !important; background-color: #ffffff !important; } /* Placeholder */ .tally-form input::placeholder, .tally-form textarea::placeholder { color: rgba(0, 0, 0, 0.4) !important; opacity: 1 !important; } /* === CHECKBOXEN & RADIO BUTTONS === */ .tally-form input[type="checkbox"], .tally-form input[type="radio"] { width: 16px !important; height: 16px !important; accent-color: #2f7aa8 !important; } /* === IMAGE CHOICES (wie WPForms) === */ .tally-form .tally-image-choice { border: 3px solid #f2f5f7 !important; border-radius: 25px !important; padding: 16px !important; transition: all 0.3s ease !important; } .tally-form .tally-image-choice:hover { border-color: #96AFCC !important; transform: translateY(-2px) !important; } .tally-form .tally-image-choice.selected { border-color: #2f7aa8 !important; background-color: rgba(47, 122, 168, 0.05) !important; } .tally-form .tally-image-choice img { max-width: 120px !important; height: auto !important; } /* === SUBMIT BUTTON (Primär) === */ .tally-form button[type="submit"], .tally-form .tally-button-primary { background-color: #d69f50 !important; border: none !important; border-radius: 10px !important; color: #ffffff !important; font-size: 20px !important; font-weight: 600 !important; height: 48px !important; padding: 0 20px !important; margin-top: 15px !important; cursor: pointer !important; transition: all 0.3s ease !important; box-shadow: 0 4px 12px rgba(214, 159, 80, 0.3) !important; text-transform: none !important; } .tally-form button[type="submit"]:hover, .tally-form .tally-button-primary:hover { background-color: #c28f46 !important; transform: translateY(-2px) !important; box-shadow: 0 6px 16px rgba(214, 159, 80, 0.4) !important; } /* === SEKUNDÄRE BUTTONS (Weiter/Zurück) === */ .tally-form .tally-button-secondary, .tally-form button.tally-back-button, .tally-form button.tally-next-button { background-color: transparent !important; border: 2px solid #96AFCC !important; border-radius: 10px !important; color: #2f7aa8 !important; font-size: 18px !important; font-weight: 600 !important; padding: 12px 20px !important; cursor: pointer !important; transition: all 0.3s ease !important; } .tally-form .tally-button-secondary:hover, .tally-form button.tally-back-button:hover, .tally-form button.tally-next-button:hover { background-color: #96AFCC !important; color: #ffffff !important; border-color: #96AFCC !important; } /* === PROGRESS BAR (wie WPForms) === */ .tally-form .tally-progress-bar, .tally-form .tally-stepper { background-color: rgba(214, 159, 80, 0.1) !important; border-radius: 20px !important; height: 8px !important; overflow: hidden !important; margin-bottom: 20px !important; } .tally-form .tally-progress-fill { background-color: #d69f50 !important; height: 100% !important; transition: width 0.4s ease !important; border-radius: 20px !important; } /* Progress Text */ .tally-form .tally-progress-text, .tally-form .tally-step-indicator { color: #2f7aa8 !important; font-size: 14px !important; font-weight: 600 !important; margin-bottom: 12px !important; } /* === ERROR MESSAGES === */ .tally-form .tally-error, .tally-form .tally-error-message { color: #bf5f5f !important; font-size: 14px !important; margin-top: 6px !important; display: block !important; } .tally-form input.error, .tally-form textarea.error, .tally-form select.error { border: 2px solid #bf5f5f !important; background-color: rgba(191, 95, 95, 0.05) !important; } /* === REQUIRED ASTERISK === */ .tally-form .tally-required, .tally-form .required-indicator { color: #bf5f5f !important; margin-left: 4px !important; } /* === LAYOUT: 2-COLUMN (wie WPForms Layout) === */ .tally-form .tally-row { display: flex !important; gap: 15px !important; margin-bottom: 15px !important; } .tally-form .tally-row > * { flex: 1 !important; } /* === MOBILE RESPONSIVE === */ @media (max-width: 768px) { .tally-form .tally-row { flex-direction: column !important; gap: 15px !important; } .tally-form input[type="text"], .tally-form input[type="email"], .tally-form input[type="tel"], .tally-form input[type="number"], .tally-form textarea, .tally-form select { font-size: 16px !important; /* Verhindert Zoom auf iOS */ } .tally-form button[type="submit"], .tally-form .tally-button-primary { width: 100% !important; } } /* === BESONDERES: BLAUER CARD-HINTERGRUND (wie Rückruf-Form) === */ /* Wenn du eine Frage/Seite mit blauem Hintergrund haben willst */ .tally-form .tally-page[data-color="blue"], .tally-form .tally-card-blue { background-color: #2F7AA8 !important; border-radius: 15px !important; padding: 40px !important; box-shadow: 40px 60px 60px -20px rgba(0,0,0,0.175) !important; } /* Inputs auf blauem Hintergrund */ .tally-form .tally-page[data-color="blue"] input, .tally-form .tally-page[data-color="blue"] textarea, .tally-form .tally-page[data-color="blue"] select, .tally-form .tally-card-blue input, .tally-form .tally-card-blue textarea, .tally-form .tally-card-blue select { background-color: #3a6a99 !important; color: #ffffff !important; } .tally-form .tally-page[data-color="blue"] label, .tally-form .tally-card-blue label { color: #ffffff !important; } .tally-form .tally-page[data-color="blue"] .tally-description, .tally-form .tally-card-blue .tally-description { color: #b6c1d4 !important; } .tally-form .tally-page[data-color="blue"] input::placeholder, .tally-form .tally-page[data-color="blue"] textarea::placeholder, .tally-form .tally-card-blue input::placeholder, .tally-form .tally-card-blue textarea::placeholder { color: rgba(255, 255, 255, 0.5) !important; } /* === ICONS (wie im Rückruf-Formular) === */ .tally-form .tally-icon { width: 50px !important; height: 50px !important; margin-bottom: 16px !important; } .tally-form .tally-icon svg { width: 100% !important; height: 100% !important; fill: currentColor !important; } /* === ZUSÄTZLICHE FEINHEITEN === */ /* Fieldset Border */ .tally-form fieldset { border: none !important; padding: 0 !important; margin: 0 0 20px 0 !important; } .tally-form legend { color: #2f7aa8 !important; font-size: 16px !important; font-weight: 600 !important; margin-bottom: 12px !important; padding: 0 !important; } /* Select Dropdown Arrow */ .tally-form select { appearance: none !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='%232f7aa8' d='M0 0l6 8 6-8z'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: right 14px center !important; padding-right: 40px !important; } /* Disabled State */ .tally-form input:disabled, .tally-form textarea:disabled, .tally-form select:disabled { opacity: 0.6 !important; cursor: not-allowed !important; background-color: #e9ecef !important; } /* === ANIMATIONEN === */ .tally-form .tally-fade-in { animation: tallyFadeIn 0.3s ease-in !important; } @keyframes tallyFadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }