.form-container{background:var(--surface-0);border:1px solid var(--border-muted);border-radius:12px;flex-direction:column;gap:16px;width:100%;margin:0 auto;padding:24px;display:flex;position:relative;box-shadow:0 1px 3px #0000001a}.form-container h3{color:var(--text-heading);border-bottom:1px solid var(--border-muted);margin:0 0 20px;padding-bottom:12px;font-size:18px;font-weight:600}.form-container .field-error{color:var(--error-fg,#b42318);margin-top:6px;font-size:13px;line-height:1.4}.form-container label{color:var(--btn-secondary-fg);flex-direction:column;gap:6px;margin-bottom:4px;font-size:14px;font-weight:500;display:flex}.form-input,.form-textarea,.form-select{border:1px solid var(--input-border);width:100%;color:var(--btn-secondary-fg);background:var(--surface-0);box-sizing:border-box;border-radius:8px;padding:12px 16px;font-size:14px;transition:all .2s}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--progress-active);outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-input::placeholder,.form-textarea::placeholder,.form-select::placeholder{color:var(--input-placeholder)}.form-textarea{resize:none;height:120px}.file-upload{display:none}.file-label{background:var(--surface-1);border:1px solid var(--input-border);width:100%;color:var(--btn-secondary-fg);cursor:pointer;text-align:center;border-radius:8px;flex-direction:row;justify-content:center;align-items:center;margin-bottom:0;padding:12px 16px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.file-label:hover{background:var(--surface-2);border-color:var(--input-placeholder)}.form-container label.file-label{flex-direction:row;justify-content:center;align-items:center;gap:0;margin-bottom:0;display:flex}.selected-file{color:var(--link-blue);text-align:center;margin-top:5px;font-size:14px}.error-message{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-fg);border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.error-message:before{content:"⚠️";font-size:16px}.success-message{background:var(--success-pale-bg);border:1px solid var(--success-border);color:var(--success-fg-mid);border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.success-message:before{content:"✅";font-size:16px}.upload-btn{background:var(--form-save-bg);color:var(--brand-on-primary);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.upload-btn:hover:not(:disabled){background:var(--form-save-bg-hover);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.upload-btn:active{transform:translateY(0)}.upload-btn:disabled{background:var(--btn-disabled-bg);cursor:not-allowed;box-shadow:none;transform:none}.close-button{background:var(--btn-secondary-bg);border:1px solid var(--input-border);color:var(--btn-secondary-fg);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex;position:absolute;top:16px;right:16px}.close-button:hover{background:var(--btn-secondary-hover-bg);border-color:var(--input-placeholder)}.modal-overlay{z-index:9999;box-sizing:border-box;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;width:100vw;height:100vh;padding:20px;animation:.3s ease-out modalFadeIn;display:flex;position:fixed;top:0;left:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--surface-0);border:1px solid var(--border-muted);border-radius:12px;width:100%;max-width:600px;max-height:calc(100vh - 40px);animation:.3s ease-out modalSlideIn;position:relative;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-content.auth{max-width:720px}.modal-content.post-detail-modal{max-width:768px}.modal-buttons{border-top:1px solid var(--border-muted);justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;display:flex}.modal-buttons .upload-btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.modal-buttons .upload-btn.submit-btn{background:var(--form-save-bg);color:var(--brand-on-primary)}.modal-buttons .upload-btn.submit-btn:hover:not(:disabled){background:var(--form-save-bg-hover);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.modal-buttons .upload-btn.submit-btn:disabled{background:var(--btn-disabled-bg);cursor:not-allowed;box-shadow:none;transform:none}.modal-buttons .cancel-btn{background:var(--btn-secondary-bg);color:var(--btn-secondary-fg);border:1px solid var(--input-border);cursor:pointer;border-radius:8px;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s}.modal-buttons .cancel-btn:hover{background:var(--btn-secondary-hover-bg)}.simple-form{background:var(--surface-1);border:1px solid var(--border-muted);border-radius:12px;padding:16px}.simple-form .form-container label{color:var(--btn-secondary-fg);margin:6px 0;font-weight:600}.simple-form .form-input{border-color:var(--input-border);height:44px}.simple-form .modal-buttons{justify-content:center}.input-wrapper{position:relative}.input-wrapper .form-input{width:100%;padding-right:48px}.input-wrapper .toggle-visibility{cursor:pointer;color:var(--text-gray-600);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;font-size:16px;transition:all .2s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.input-wrapper .toggle-visibility:hover{color:var(--btn-secondary-fg);background:var(--btn-secondary-bg)}.error-message{color:red;text-align:center;margin-top:.5rem;font-size:.9rem}.result-box{background:var(--surface-1);border:1px solid var(--border-default);text-align:center;border-radius:8px;margin-top:12px;padding:12px}.datepicker-input{border:1.5px solid var(--border-legacy);background:var(--surface-0);border-radius:6px;width:100%;padding:12px;font-size:15px;transition:all .2s ease-in-out}.datepicker-input:focus{border-color:var(--link-blue);outline:none;box-shadow:0 0 4px #007bff4d}.form-container label{color:var(--btn-secondary-fg);margin-bottom:8px;font-size:14px;font-weight:500;display:block}@media (width<=768px){.form-container{gap:12px;padding:20px}.form-container h3{margin-bottom:16px;font-size:16px}.form-input,.form-textarea,.form-select,.upload-btn{padding:10px 12px;font-size:13px}.modal-overlay{padding:16px}.modal-content{max-width:none;max-height:calc(100vh - 32px);margin:0}.modal-buttons{flex-direction:column}.modal-buttons .upload-btn,.modal-buttons .cancel-btn{width:100%;padding:10px 12px;font-size:13px}.communication-modal-buttons{flex-direction:column}.communication-modal-buttons .submit-btn,.communication-modal-buttons .cancel-btn{text-align:center;justify-content:center;align-items:center;width:100%;padding:10px 12px;font-size:13px;display:flex}}.checkbox-group{align-items:center;gap:12px;margin-top:8px;display:flex}.checkbox-group .checkbox-label{color:var(--btn-secondary-fg);cursor:pointer;align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}.checkbox-group .checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--success-dot);cursor:pointer}.checkbox-group .checkbox-label span{-webkit-user-select:none;user-select:none}.post-form-email-section{margin-top:4px}.form-select option{background-color:var(--surface-0);color:var(--btn-secondary-fg)}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .form-select,html:not([data-theme=light]) .datepicker-input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html:not([data-theme=light]) .datepicker-input{border-color:var(--input-border);color:var(--text-strong)}html:not([data-theme=light]) .datepicker-input:focus{border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--input-focus-ring)}html:not([data-theme=light]) .communication-modal-buttons .submit-btn{background:var(--form-save-bg);color:var(--brand-on-primary)}html:not([data-theme=light]) .communication-modal-buttons .submit-btn:hover:not(:disabled){background:var(--form-save-bg-hover)}html:not([data-theme=light]) .communication-modal-buttons .submit-btn:disabled{background:var(--btn-disabled-bg);color:var(--btn-disabled-fg)}html:not([data-theme=light]) .error-message{color:var(--error-fg)}}html[data-theme=dark] .form-select,html[data-theme=dark] .datepicker-input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=dark] .datepicker-input{border-color:var(--input-border);color:var(--text-strong)}html[data-theme=dark] .datepicker-input:focus{border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--input-focus-ring)}html[data-theme=dark] .communication-modal-buttons .submit-btn{background:var(--form-save-bg);color:var(--brand-on-primary)}html[data-theme=dark] .communication-modal-buttons .submit-btn:hover:not(:disabled){background:var(--form-save-bg-hover)}html[data-theme=dark] .communication-modal-buttons .submit-btn:disabled{background:var(--btn-disabled-bg);color:var(--btn-disabled-fg)}html[data-theme=dark] .error-message{color:var(--error-fg)}
