:root { --primary-color: #17a2b8; /* Changed from #343a40 to a teal accent */ --birthday-confetti-color-list: "#f9a825, #fdd835, #ffeb3b, #ffee58, #fff176"; --anniversary-confetti-color-list: "#e91e63, #ec407a, #f06292, #f48fb1, #f8bbd0"; --relationship-milestone-color-list: "#4caf50, #66bb6a, #81c784, #a5d6a7, #c8e6c9"; --single-person-milestone-color-list: "#2196f3, #42a5f5, #64b5f6, #90caf9, #bbdefb"; } body { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; background: #121212; /* Changed from #f8f9fa */ color: #e0e0e0; /* Changed from #212529 */ font-weight: 400; line-height: 1.5; display: flex; flex-direction: column; justify-content: flex-start; align-items: center; min-height: 100vh; margin: 0; padding: 15px 15px 0; box-sizing: border-box; overflow-x: hidden; position: relative; } .container { background-color: #1e1e1e; /* Changed from #ffffff */ border-radius: 15px; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.5); /* Changed from 0 4px 12px rgba(0, 0, 0, 0.1) */ padding: 30px; max-width: 480px; width: 100%; border: 1px solid #333; /* Changed from #dee2e6 */ position: relative; z-index: 1; box-sizing: border-box; margin-top: 0; margin-bottom: 0; } .hidden { display: none !important; } .two-person-section { display: flex; justify-content: center; align-items: flex-start; margin-bottom: 25px; gap: 1px; text-align: center; } .person-display { display: flex; flex-direction: column; align-items: center; flex: 1; min-width: 0; } .person-name { font-size: 1.1em; color: var(--primary-color); margin-top: 0; margin-bottom: 8px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: 100%; min-height: calc(1.1em * 1.3); line-height: 1.3; } .profile-picture { width: 100px; height: 100px; border-radius: 50%; border: 2px solid #444; /* Changed from #e9ecef */ display: flex; justify-content: center; align-items: center; overflow: hidden; background-color: #333; /* Changed from #e9ecef */ text-align: center; font-size: 0.8em; color: #999; /* Changed from #888 */ flex-shrink: 0; margin-bottom: 8px; } .profile-picture img { width: 100%; height: 100%; object-fit: cover; } .profile-picture .placeholder-text { padding: 10px; } .heart-emoji { font-size: 2em; color: var(--primary-color); line-height: 1; flex-shrink: 0; margin-top: calc(1.1em * 1.3 + 8px); } .distance-below-heart { font-size: 0.9em; color: #adb5bd; /* Changed from #495057 */ margin-top: 10px; min-height: 1.2em; text-align: center; line-height: 1.3; } .person-display .dob { font-size: 0.95em; color: #adb5bd; /* Changed from #6c757d */ margin-top: 0; margin-bottom: 5px; min-height: 1.2em; } .person-display .age { font-size: 1em; color: #e0e0e0; /* Changed from #212529 */ margin-top: 0; margin-bottom: 0; min-height: 1.2em; } .person-display .age strong { font-weight: 600; color: #ffffff; /* Changed from #333 */ } #single-profile-display { text-align: center; margin-bottom: 25px; } #single-profile-display .profile-picture { margin-left: auto; margin-right: auto; width: 120px; height: 120px; margin-bottom: 15px; } #single-profile-display #singlePersonNameDisplay { font-size: 2em; font-weight: 600; color: #ffffff; /* Changed from #212529 */ margin-bottom: 15px; } #single-profile-display #singlePersonDobDisplay { font-size: 0.95em; color: #adb5bd; /* Changed from #6c757d */ margin-top: 0; margin-bottom: 0; } .calculation-section { background-color: #2a2a2a; /* Changed from #f1f3f5 */ border-radius: 10px; padding: 25px 5px; text-align: center; margin-top: 0; } .date-range { display: flex; justify-content: space-around; margin-bottom: 25px; font-size: 1em; color: #adb5bd; /* Changed from #6c757d */ } .age-details h2 { font-size: 1.5em; line-height: 1.2; margin-bottom: 15px; color: #ffffff; /* Changed from #212529 */ font-weight: 600; } .age-details > p:first-of-type { margin: 10px 0 20px 0; font-size: 1.1em; color: #e0e0e0; /* Changed from #212529 */ } .age-details strong { color: var(--primary-color); } .age-stats-grid { display: grid; grid-template-columns: 1fr 1fr; justify-content: center; gap: 5px 10px; margin-top: 15px; font-size: 1.1em; color: #adb5bd; /* Changed from #495057 */ } .age-stats-grid span:nth-child(odd) { text-align: right; color: #e0e0e0; /* Changed from #212529 */ padding-right: 5px; } .age-stats-grid span:nth-child(even) { text-align: left; font-weight: 700; color: var(--primary-color); padding-left: 5px; overflow-wrap: break-word; min-width: 0; } .note-section { margin-top: 20px; text-align: left; font-size: 0.9em; color: #adb5bd; /* Changed from #6c757d */ background-color: #2a2a2a; /* Changed from #f1f3f5 */ padding: 15px; border-radius: 10px; word-wrap: break-word; } .note-section a { color: var(--primary-color); text-decoration: none; font-weight: 500; } .note-section a:hover { text-decoration: underline; color: #ffffff; /* Changed from #212529 */ } .profile-selector-container { width: 100%; max-width: 480px; overflow-x: auto; padding: 10px 0; margin-top: 0; margin-bottom: 0; -webkit-overflow-scrolling: touch; -ms-overflow-style: none; scrollbar-width: none; } .profile-selector-container::-webkit-scrollbar { display: none; height: 0; width: 0; } .profile-selector-list { display: flex; flex-wrap: nowrap; padding-bottom: 5px; } .profile-item { display: flex; align-items: center; gap: 8px; padding: 5px 10px; border: 1px solid #444; /* Changed from #ced4da */ border-style: solid; border-radius: 20px; margin-right: 8px; background-color: #333; /* Changed from #ffffff */ cursor: pointer; transition: background-color 0.2s, border-color 0.2s; white-space: nowrap; font-size: 0.9em; color: #adb5bd; /* Changed from #495057 */ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4); /* Changed from 0 1px 3px rgba(0, 0, 0, 0.1) */ flex-shrink: 0; } .profile-item:last-child { margin-right: 0; } .profile-item:hover { background-color: #444; /* Changed from #e9ecef */ border-color: #666; /* Changed from #adb5bd */ } .profile-item.active { background-color: var(--primary-color); border-color: var(--primary-color); /* Changed from #212529 */ color: #ffffff; font-weight: 500; } .profile-item.active:hover { background-color: #148a9c; /* Darker shade of new primary color */ } .profile-item-img { width: 30px; height: 30px; border-radius: 50%; object-fit: cover; border: 1px solid #555; /* Changed from #e9ecef */ border-style: solid; } .profile-item-emoji { font-size: 22px; line-height: 1; width: 30px; height: 30px; display: flex; align-items: center; justify-content: center; } .modal { display: none; position: fixed; z-index: 1001; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0, 0, 0, 0.65); /* Made darker */ justify-content: center; align-items: center; padding: 15px; box-sizing: border-box; } .modal-content { background-color: #1e1e1e; /* Changed from #ffffff */ margin: auto; padding: 25px 30px; border: none; border-radius: 10px; width: 100%; max-width: 450px; color: #e0e0e0; /* Changed from #212529 */ box-shadow: 0 5px 20px rgba(0, 0, 0, 0.7); /* Changed from 0 5px 15px rgba(0, 0, 0, 0.2) */ position: relative; box-sizing: border-box; animation: modal-slide-in-from-bottom 0.25s ease-out; } .close-button { position: absolute; top: 10px; right: 15px; cursor: pointer; line-height: 1; padding: 5px; display: flex; align-items: center; justify-content: center; } .close-button svg { width: 24px; height: 24px; fill: #adb5bd; /* Changed from #6c757d */ transition: fill 0.2s ease-in-out; } .close-button:hover svg, .close-button:focus svg { fill: #ffffff; /* Changed from #212529 */ } .info-button { position: absolute; top: 10px; left: 15px; cursor: pointer; line-height: 1; padding: 5px; display: flex; align-items: center; justify-content: center; } .info-button svg { width: 24px; height: 24px; fill: #adb5bd; /* Changed from #6c757d */ } .modal h2 { margin-top: 0; margin-bottom: 20px; color: #ffffff; /* Changed from #212529 */ text-align: center; font-weight: 600; line-height: 1.2; } .modal label { display: block; margin-bottom: 8px; font-weight: 700; color: #adb5bd; /* Changed from #495057 */ } .modal input[type="date"] { width: 100%; padding: 10px 10px; margin-bottom: 15px; border: 1px solid #444; /* Changed from #ced4da */ border-radius: 5px; background-color: #333; /* Changed from #ffffff */ color: #e0e0e0; /* Changed from #495057 */ font-size: 1em; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; appearance: none; color-scheme: dark; /* Added for date picker theme */ } .modal input[type="date"]:focus { outline: none; border-color: var(--primary-color); box-shadow: 0 0 0 2px rgba(23, 162, 184, 0.25); /* Adjusted for new primary color */ } .modal input[type="date"]::-webkit-calendar-picker-indicator { opacity: 0.8; /* Changed from 0.6 */ cursor: pointer; margin-left: -25px; padding: 5px; filter: invert(1); /* Changed from none */ } .modal input[type="date"]::after { content: none; } .modal-result { margin-top: 20px; padding: 15px; background-color: #2a2a2a; /* Changed from #f1f3f5 */ border-radius: 8px; min-height: 50px; color: #e0e0e0; /* Changed from #212529 */ font-size: 1em; line-height: 1.6; } .modal-result strong { color: var(--primary-color); font-weight: 500; } .modal-result ul { padding-left: 20px; margin: 0; } .modal-result li { margin-bottom: 5px; } #animation-container { position: fixed; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; pointer-events: none; z-index: 999; } .confetti { position: absolute; width: 10px; height: 10px; opacity: 0.7; animation: fall linear infinite; top: -20px; } @keyframes fall { 0% { transform: translateY(0) rotate(0deg); opacity: 0.7; } 100% { transform: translateY(105vh) rotate(720deg); opacity: 0; } } .confetti-text { background-color: transparent !important; width: auto !important; height: auto !important; border-radius: 0 !important; font-size: 14px; font-weight: 700; color: #ffffff; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5); line-height: 1; position: absolute; opacity: 0.9; animation: fall linear infinite; top: -20px; } .toast-message { position: fixed; bottom: 30px; left: 50%; transform: translateX(-50%); background-color: #333; /* Changed from #343a40 */ color: #e0e0e0; /* Changed from #ffffff */ padding: 12px 25px; border-radius: 25px; font-size: 0.95em; z-index: 1010; box-shadow: 0 3px 8px rgba(0, 0, 0, 0.5); /* Changed from 0 3px 8px rgba(0, 0, 0, 0.2) */ opacity: 0; transition: opacity 0.4s ease-in-out, bottom 0.4s ease-in-out; pointer-events: none; } .toast-message.show { opacity: 1; bottom: 50px; } .edge-handle { position: fixed; top: 50%; right: 0; transform: translateY(-50%); width: 15px; height: 100px; background-color: #2a2a2a; /* Changed from #ffffff */ border: 1px solid #444; /* Changed from #dee2e6 */ border-right: none; border-radius: 10px 0 0 10px; box-shadow: -1px 0 3px rgba(0, 0, 0, 0.3); /* Changed from -1px 0 3px rgba(0, 0, 0, 0.05) */ cursor: pointer; z-index: 1071; transition: right 0.3s ease-in-out, background-color 0.3s, border-color 0.3s; display: flex; align-items: center; justify-content: center; } .edge-panel.open + .edge-handle { right: 120px; background-color: #333; /* Changed from #f1f3f5 */ border-color: #555; /* Changed from #ced4da */ } .edge-handle::after { content: ""; display: block; width: 3px; height: 40px; background-color: #666; /* Changed from #ced4da */ border-radius: 2px; transition: background-color 0.3s ease-in-out; } .edge-panel.open + .edge-handle::after { background-color: #999; /* Changed from #adb5bd */ } .edge-panel { position: fixed; top: 10%; width: 120px; right: -120px; height: 80%; font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; background-color: #2a2a2a; /* Changed from #ffffff */ border-left: 1px solid #444; /* Changed from #dee2e6 */ border-top: 1px solid #444; /* Changed from #dee2e6 */ border-bottom: 1px solid #444; /* Changed from #dee2e6 */ border-right: none; border-radius: 15px 0 0 15px; box-shadow: -2px 0 10px rgba(0, 0, 0, 0.4); /* Changed from -2px 0 10px rgba(0, 0, 0, 0.08) */ padding: 10px 8px 15px; box-sizing: border-box; display: flex; flex-direction: column; transition: right 0.3s ease-in-out; z-index: 1020; overflow-y: auto; } .edge-panel.open { right: 0; } .panel-title { color: #ffffff; /* Changed from #212529 */ font-size: 0.9em; font-weight: 600; margin-bottom: 0; text-align: center; width: 100%; padding: 0 5px; box-sizing: border-box; position: relative; } .panel-title::after { content: ""; display: block; width: 80%; height: 1px; background-color: #444; /* Changed from #e9ecef */ margin: 8px auto 15px auto; } .panel-item { display: flex; flex-direction: column; align-items: center; text-align: center; cursor: pointer; transition: background-color 0.2s ease; width: 100%; padding: 5px 0; border-radius: 8px; background-color: transparent; } @media (hover: hover) and (pointer: fine) { .panel-item:hover { background-color: #333; /* Changed from #f1f3f5 */ } } .panel-item:active, .panel-item:focus, .panel-item:focus-visible { outline: none !important; background-color: transparent !important; } .panel-item .panel-item-svg { margin-bottom: 6px; color: var(--primary-color); width: 32px; height: 32px; display: block; } .panel-item span { font-size: 0.75em; color: #adb5bd; /* Changed from #495057 */ word-break: break-word; margin-top: 2px; line-height: 1.2; } .edge-panel > .panel-item + .panel-item { margin-top: 18px; } .edge-panel > .panel-item + .panel-title { margin-top: 22px; } #specialDateCalculatorModal label { display: block; margin-top: 15px; margin-bottom: 5px; font-weight: 700; color: #adb5bd; /* Changed from #495057 */ } #specialDateCalculatorModal label[for="specialStartDate"] { margin-top: 5px; } #specialDateCalculatorModal input[type="date"], #specialDateCalculatorModal input[type="number"], #specialDateCalculatorModal select { width: 100%; padding: 10px 10px; margin-bottom: 15px; border: 1px solid #444; /* Changed from #ced4da */ border-radius: 5px; background-color: #333; /* Changed from #ffffff */ color: #e0e0e0; /* Changed from #495057 */ font-size: 1em; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; appearance: none; color-scheme: dark; /* Added for picker theme */ } #specialDateCalculatorModal input[type="date"]:focus, #specialDateCalculatorModal input[type="number"]:focus, #specialDateCalculatorModal select:focus, #specialDateCalculatorModal .custom-select-trigger:focus { outline: none; border-color: var(--primary-color); box-shadow: 0 0 0 2px rgba(23, 162, 184, 0.25); /* Adjusted for new primary color */ } #specialDateCalculatorModal #calculateSpecialDateBtn { background-color: var(--primary-color); color: #ffffff; padding: 12px 15px; font-size: 1em; font-weight: 500; border: none; border-radius: 5px; cursor: pointer; width: 100%; margin-top: 20px; transition: background-color 0.2s ease; } #specialDateCalculatorModal #calculateSpecialDateBtn:hover { background-color: #148a9c; /* Darker shade of new primary color */ } #specialDateCalculatorModal .modal-result { margin-top: 20px; padding: 15px; background-color: #2a2a2a; /* Changed from #f1f3f5 */ border-radius: 8px; min-height: 50px; color: #e0e0e0; /* Changed from #212529 */ font-size: 1em; line-height: 1.6; text-align: center; } #specialDateCalculatorModal .modal-result strong { color: var(--primary-color); } #specialDateCalculatorModal .custom-select-container { position: relative; margin-bottom: 15px; } #specialDateCalculatorModal .custom-select-trigger { width: 100%; padding: 10px 10px; border: 1px solid #444; /* Changed from #ced4da */ border-radius: 5px; background-color: #333; /* Changed from #ffffff */ color: #e0e0e0; /* Changed from #495057 */ font-size: 1em; box-sizing: border-box; cursor: pointer; display: flex; justify-content: space-between; align-items: center; user-select: none; } #specialDateCalculatorModal #customUnitSelectedValue { flex-grow: 1; } #specialDateCalculatorModal .custom-select-arrow { font-size: 0.8em; margin-left: 10px; transition: transform 0.2s ease; } #specialDateCalculatorModal .custom-select-trigger.open .custom-select-arrow { transform: rotate(180deg); } #specialDateCalculatorModal #customUnitMenu { display: none; position: absolute; background-color: #333; /* Changed from #ffffff */ border: 1px solid #444; /* Changed from #ced4da */ border-radius: 0 0 5px 5px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.5); /* Changed from 0 4px 8px rgba(0, 0, 0, 0.1) */ width: 100%; left: 0; top: 100%; z-index: 10; max-height: 150px; overflow-y: auto; box-sizing: border-box; } #specialDateCalculatorModal #customUnitMenu.visible { display: block; } #specialDateCalculatorModal .custom-select-option { padding: 10px 10px; color: #e0e0e0; /* Changed from #212529 */ cursor: pointer; user-select: none; } #specialDateCalculatorModal .custom-select-option:hover { background-color: #444; /* Changed from #e9ecef */ } #specialDateCalculatorModal .custom-select-option.selected { background-color: var(--primary-color); /* Changed from #212529 */ color: #ffffff; font-weight: 500; } #addProfileModal label, #editSingleProfileModal label, #editCoupleModal label { display: block; margin-top: 15px; margin-bottom: 5px; font-weight: 700; color: #adb5bd; /* Changed from #495057 */ } #addProfileModal input[type="text"], #addProfileModal input[type="url"], #addProfileModal textarea, #editSingleProfileModal input[type="text"], #editSingleProfileModal input[type="url"], #editSingleProfileModal textarea, #editCoupleModal input[type="text"], #editCoupleModal input[type="url"], #editCoupleModal textarea { width: 100%; padding: 10px 10px; margin-bottom: 15px; border: 1px solid #444; /* Changed from #ced4da */ border-radius: 5px; background-color: #333; /* Changed from #ffffff */ color: #e0e0e0; /* Changed from #495057 */ font-size: 1em; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; appearance: none; } #addProfileModal input[type="text"]:focus, #addProfileModal input[type="url"]:focus, #addProfileModal textarea:focus, #editSingleProfileModal input[type="text"]:focus, #editSingleProfileModal input[type="url"]:focus, #editSingleProfileModal textarea:focus, #editCoupleModal input[type="text"]:focus, #editCoupleModal input[type="url"]:focus, #editCoupleModal textarea:focus { outline: none; border-color: var(--primary-color); box-shadow: 0 0 0 2px rgba(23, 162, 184, 0.25); /* Adjusted for new primary color */ } #addProfileModal textarea, #editSingleProfileModal textarea, #editCoupleModal textarea { resize: vertical; min-height: 60px; font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; line-height: 1.5; } .modal-actions { margin-top: 25px; display: flex; gap: 10px; } .modal-button { padding: 10px 15px; border: none; border-radius: 5px; font-size: 0.95em; font-weight: 500; cursor: pointer; transition: background-color 0.2s ease, opacity 0.2s ease; flex: 1; text-align: center; } .modal-button.primary { background-color: var(--primary-color); color: #ffffff; } .modal-button.primary:hover { background-color: #148a9c; /* Darker shade of new primary color */ } .modal-button.secondary { background-color: #444; /* Changed from #f1f3f5 */ color: #e0e0e0; /* Changed from #212529 */ border: 1px solid #666; /* Changed from #ced4da */ } .modal-button.secondary:hover { background-color: #555; /* Changed from #e9ecef */ border-color: #777; /* Changed from #adb5bd */ } .modal-button.danger { background-color: #dc3545; color: white; } .modal-button.danger:hover { background-color: #c82333; } .firestore-modal-overlay { display: none; position: fixed; z-index: 1050; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0, 0, 0, 0.75); /* Made darker */ justify-content: center; align-items: center; text-align: center; } .firestore-modal-content { background-color: #1e1e1e; /* Changed from #fefefe */ margin: auto; padding: 25px 40px; border: 1px solid #555; /* Changed from #888 */ border-radius: 8px; width: auto; min-width: 200px; display: inline-flex; flex-direction: column; align-items: center; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); /* Changed from 0 5px 15px rgba(0, 0, 0, 0.3) */ } .firestore-modal-content p { margin: 0; font-size: 16px; color: #adb5bd; /* Changed from #555 */ } .firestore-loader { border-width: 5px; border-style: solid; border-color: #444; /* Changed from #f3f3f3 */ border-top-color: var(--primary-color); border-radius: 50%; width: 40px; height: 40px; animation: firestore-spin 1s linear infinite; margin-bottom: 20px; } @keyframes firestore-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .popup-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.85); /* Made darker */ display: none; justify-content: center; align-items: center; z-index: 1005; padding: 15px; box-sizing: border-box; } .popup-overlay .popup-content { background-color: #1e1e1e; /* Changed from white */ padding: 20px; border-radius: 8px; box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5); /* Changed from 0 5px 20px rgba(0, 0, 0, 0.35) */ width: 100%; max-width: 800px; height: 90%; max-height: 500px; display: flex; flex-direction: column; position: relative; overflow: hidden; } .popup-overlay .popup-close-button { position: absolute; top: 10px; right: 15px; cursor: pointer; line-height: 1; z-index: 10; padding: 5px; display: flex; align-items: center; justify-content: center; } .popup-overlay .popup-close-button svg { width: 24px; height: 24px; fill: #bbb; /* Changed from #777 */ transition: fill 0.2s ease-in-out; } .popup-overlay .popup-close-button:hover svg { fill: #fff; /* Changed from #000 */ } #popup-map-title { text-align: center; margin: 0 0 15px 0; font-size: 1.5em; color: #ffffff; /* Changed from #212529 */ font-weight: 600; } #map { flex-grow: 1; width: 100%; height: 100%; background-color: #121212; /* Added background for map container */ } .leaflet-control-recenter, .leaflet-control-satellite { background-color: #2a2a2a; /* Changed from white */ border: 1px solid #555; /* Changed from #ccc */ width: 30px; height: 30px; line-height: 30px; text-align: center; font-size: 16px; cursor: pointer; user-select: none; display: block; color: #e0e0e0; /* Added color for emoji */ } .leaflet-control-recenter:hover, .leaflet-control-satellite:hover { background-color: #3a3a3a; /* Changed from #f4f4f4 */ } .circular-map-marker-icon { border-radius: 50%; object-fit: cover; border: 2px solid #e0e0e0; /* Changed from white */ box-shadow: 0 0 8px rgba(0, 0, 0, 0.8); /* Changed from 0 0 5px rgba(0, 0, 0, 0.5) */ } .distance-map-tooltip { background-color: rgba(0, 0, 0, 0.75); /* Changed from rgba(255, 255, 255, 0.85) */ border: 1px solid #888; /* Changed from #555 */ border-radius: 4px; padding: 4px 8px; font-size: 0.9em; color: #e0e0e0; /* Changed from #333 */ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25); } .map-distance-polyline { stroke: var(--primary-color); stroke-width: 4px; stroke-opacity: 0.85; stroke-dasharray: 5, 10; fill: none; transition: stroke 0.2s ease, stroke-width 0.2s ease, stroke-opacity 0.2s ease; } .map-distance-polyline:hover { stroke: #2ce1fc; /* Lighter shade of primary color */ stroke-width: 6px; stroke-opacity: 1; } .edit-couple-form-container { display: flex; flex-direction: column; gap: 15px; max-height: 65vh; overflow-y: auto; padding: 5px 10px 5px 5px; margin: 0 -10px 0 -5px; } .form-group-box { border: 1px solid #444; /* Changed from #dee2e6 */ border-radius: 8px; padding: 15px; background-color: #2a2a2a; /* Changed from #f8f9fa */ } .form-group-box h3 { font-size: 1.1em; margin-top: 0; margin-bottom: 15px; color: var(--primary-color); padding-bottom: 10px; border-bottom: 1px solid #444; /* Changed from #e9ecef */ } .form-group-box label:not(:first-of-type) { margin-top: 12px; } @keyframes modal-slide-in-from-bottom { from { transform: translateY(30px); opacity: 0; } to { transform: translateY(0); opacity: 1; } } #snackbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1051; background-color: #333; /* Changed from var(--primary-color) */ color: #ffffff; font-family: inherit; text-align: center; padding: 1rem; border-top-left-radius: 15px; border-top-right-radius: 15px; box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.5); /* Changed from rgba(0, 0, 0, 0.15) */ transform: translateY(100%); transition: transform 250ms ease-in-out; } #snackbar.show { transform: translateY(0); }