
        .dafv-controls-inner { display: flex; gap: 10px; align-items: center; width: 100%; flex-wrap: wrap; }
        .dafv-input-group { flex: 1; min-width: 150px; }
        .dafv-input { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 4px; height: 42px; box-sizing: border-box; }
        .dafv-loading-state { opacity: 0.5; pointer-events: none; transition: opacity 0.3s; }
        .dafv-loader { font-style:italic; color:#888; white-space:nowrap; font-size: 0.9em; }
        
        .dafv-reset-btn {
            background: #f4f4f4; border: 1px solid #ccc; padding: 0 15px; height: 42px;
            border-radius: 4px; cursor: pointer; white-space: nowrap; color: #333; font-size: 0.9em;
        }
        .dafv-reset-btn:hover { background: #e0e0e0; }

        .dafv-mobile-toggle, .dafv-mobile-close { display: none; }
        .dafv-icon svg { width: 20px; height: 20px; vertical-align: middle; }

        @media (max-width: 768px) {
            .dafv-mobile-collapsible .dafv-mobile-toggle { display: inline-flex; align-items: center; justify-content: center; background: #333; color: #fff; border: none; padding: 10px 15px; border-radius: 4px; cursor: pointer; }
            .dafv-mobile-collapsible .dafv-controls-inner {
                display: none; flex-direction: column; width: 100%; background: #fff;
                padding: 40px 20px 20px 20px; gap: 10px; border: 1px solid #eee; border-radius: 4px; margin-top: 10px; position: relative;
            }
            .dafv-mobile-collapsible .dafv-controls-inner.open { display: flex; }
            .dafv-mobile-collapsible .dafv-mobile-close { display: block; position: absolute; top: 10px; right: 10px; background: none; border: none; cursor: pointer; color: #333; }
            .dafv-input-group { width: 100%; flex: none; }
        }
    