/* =============================== CONTAINER Y MAPA =============================== */ body { width: 100%; height: 100vh; margin: 0; padding: 0; font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; color: #333; background: #f5f7fa; overflow: hidden; } #map { width: 100%; height: 100%; z-index: 1; } /* =============================== CONTENEDOR GENERAL DEL COLLAPSE =============================== */ #pin-form { position: absolute; top: 20px; left: 20px; z-index: 1000; background: white; border-radius: 12px; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15); width: 300px; max-width: 90vw; border: 1px solid #e1e5e9; overflow: hidden; } /* =============================== CABECERA DEL FORMULARIO (No colapsable) =============================== */ .form-header { background: #1976d2; color: white; padding: 16px; cursor: pointer; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid rgba(255, 255, 255, 0.2); } .header-left { display: flex; align-items: center; gap: 10px; } .header-right { transition: transform 0.3s ease; } /* =============================== CONTENIDO PRINCIPAL COLAPSABLE =============================== */ .collapsible-content { max-height: 0; overflow: hidden; opacity: 0; transition: all 0.3s ease; } /* =============================== SECCIONES COLAPSABLES INTERNAS =============================== */ .collapse-section { border-bottom: 1px solid #e1e5e9; } .collapse-section:last-child { border-bottom: none; } .collapse-header { padding: 14px 16px; background: #f8fafc; border-bottom: 1px solid #e1e5e9; cursor: pointer; display: flex; justify-content: space-between; align-items: center; font-weight: 600; color: #2d3748; transition: background 0.2s ease; } .collapse-header:hover { background: #edf2f7; } .collapse-icon { transition: transform 0.3s ease; color: #718096; } .collapse-content { max-height: 0; overflow: hidden; opacity: 0; transition: all 0.3s ease; } /* =============================== CHECKBOX PARA CONTROLAR COLLAPSE (Truco CSS) =============================== */ #collapse-toggle, #collapse-toggle-1, #collapse-toggle-2, #collapse-toggle-3 { display: none; } /* Cuando el checkbox está checked, mostramos el contenido */ #collapse-toggle:checked ~ .collapsible-content, #collapse-toggle-1:checked ~ .collapse-content, #collapse-toggle-2:checked ~ .collapse-content, #collapse-toggle-3:checked ~ .collapse-content { max-height: 1000px; opacity: 1; overflow: visible; } /* Rotamos el icono cuando está expandido */ #collapse-toggle:checked ~ .form-header .collapse-icon, #collapse-toggle-1:checked ~ .collapse-header .collapse-icon, #collapse-toggle-2:checked ~ .collapse-header .collapse-icon, #collapse-toggle-3:checked ~ .collapse-header .collapse-icon { transform: rotate(180deg); } /* =============================== FORM ELEMENTS =============================== */ .form-group { padding: 12px 16px; } .form-group label { display: block; margin-bottom: 6px; font-size: 0.9rem; color: #4a5568; font-weight: 500; } .form-input { width: 100%; padding: 10px 12px; border: 1px solid #cbd5e0; border-radius: 6px; font-size: 0.95rem; transition: border 0.2s ease; box-sizing: border-box; } .form-input:focus { outline: none; border-color: #1976d2; box-shadow: 0 0 0 3px rgba(25, 118, 210, 0.1); } .button-primary { width: 100%; padding: 12px; background: #1976d2; color: white; border: none; border-radius: 6px; font-weight: 600; cursor: pointer; display: flex; justify-content: center; align-items: center; gap: 8px; margin: 16px; width: calc(100% - 32px); transition: background 0.2s ease; } .button-primary:hover { background: #1565c0; } .csv-section { padding: 16px; border-top: 1px solid #e1e5e9; background: #f8fafc; } .section-title { font-weight: 600; color: #2d3748; margin-bottom: 12px; display: flex; align-items: center; gap: 8px; } .button-secondary { display: block; margin-left: auto; margin-right: auto; width: 95%; padding: 5px; background: #edf2f7; color: #2d3748; border: 1px solid #cbd5e0; border-radius: 6px; text-align: center; text-decoration: none; margin-bottom: 10px; font-size: 0.9rem; transition: all 0.2s ease; } .button-secondary:hover { background: #e2e8f0; border-color: #a0aec0; } .csv-file-input { display: none; } .file-upload-label { display: block; margin-left: auto; margin-right: auto; width: 95%; padding: 5px; background: #f0f9ff; color: #0369a1; border: 1px dashed #7dd3fc; border-radius: 6px; text-align: center; cursor: pointer; margin-bottom: 10px; transition: all 0.2s ease; } .file-upload-label:hover { background: #e0f2fe; border-color: #0ea5e9; } /* .tooltip { font-size: 0.85rem; color: #718096; line-height: 1.4; } */ /* =============================== ESTADO ACTIVO (SIEMPRE VISIBLE) =============================== */ .active-state-section { padding: 16px; background: #fff7ed; border-top: 1px solid #fed7aa; display: block !important; max-height: none !important; opacity: 1 !important; }