:root{--primary-color: #0D5C63;--primary-color-darker: #10727a;--accent-color: #C04000;--accent-color-darker: #A53700;--text-color: #3D352E;--background-color: #FCFBF9;--white-color: #FFFFFF;--border-color: #EDEAE6;--light-gray-color: #F3F0EC;--light-blue-bg: #E7F1F1;--container-width: 960px;--border-radius: 12px;--font-family-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--font-family-headings: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"}*{box-sizing: border-box;margin: 0;padding: 0}body{font-family: var(--font-family-body);line-height: 1.7;color: var(--text-color);background-color: var(--background-color)}.container{max-width: var(--container-width);margin: 0 auto;padding: 0 15px}a{color: var(--primary-color);text-decoration: none}a:hover{text-decoration: underline}h1, h2, h3, .logo-text{font-family: var(--font-family-headings)}.content-box{background-color: var(--white-color);padding: 1.5rem 1rem;border-radius: var(--border-radius);border: 1px solid var(--border-color);margin-bottom: 1.5rem}.homepage-content .content-box.today-section,.date-details-page .content-box.today-section{box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)}.button{display: inline-block;padding: 0.75rem 1.5rem;background-color: var(--primary-color);color: var(--white-color);border: none;border-radius: var(--border-radius);text-align: center;font-weight: bold;text-decoration: none;transition: background-color 0.2s ease}.button:hover{background-color: var(--primary-color-darker);color: var(--white-color);text-decoration: none}.main-name{font-weight: bold}.sr-only{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);white-space: nowrap;border-width: 0}.main-header{background-color: var(--white-color);padding: 1rem 0;border-bottom: 1px solid var(--border-color);margin-bottom: 1.5rem}.header-container{display: grid;grid-template-areas:"logo hamburger""search search";grid-template-columns: 1fr auto;align-items: center;gap: 1rem}.logo{grid-area: logo;display: flex;align-items: center;gap: 0.8em;text-decoration: none;color: #2c3e50;font-weight: bold;font-size: 1.5rem}.logo-icon{height: 60px;width: auto}.logo-text{font-size: 1.8rem;font-weight: bold}.mobile-menu-toggle{grid-area: hamburger}.header-right{grid-area: search;justify-self: center}.search-form{display: flex;width: 100%;max-width: 400px;margin: 0 auto}.search-form input[type="search"]{border: 1px solid var(--border-color);padding: 0.75rem;border-radius: var(--border-radius) 0 0 var(--border-radius);border-right: none;min-width: 150px;width: 100%;font-size: 1rem;transition: border-color 0.2s ease, box-shadow 0.2s ease}.search-form input[type="search"]:focus{outline: none;border-color: var(--primary-color);box-shadow: 0 0 0 3px rgba(13, 92, 99, 0.2);z-index: 2}.search-form button{background-color: var(--accent-color-darker);color: white;border: 1px solid var(--accent-color-darker);padding: 0.75rem 1rem;border-radius: 0 var(--border-radius) var(--border-radius) 0;cursor: pointer;transition: background-color 0.2s;font-size: 1rem}.search-form button:hover{background-color: var(--accent-color);border-color: var(--accent-color)}.mobile-menu-toggle{background: none;border: 1px solid var(--border-color);cursor: pointer;z-index: 1001;border-radius: var(--border-radius);transition: background-color 0.2s ease-in-out;width: 44px;height: 44px;padding: 0;position: relative}.mobile-menu-toggle:hover{background-color: var(--light-blue-bg)}.hamburger-icon, .hamburger-icon::before, .hamburger-icon::after{display: block;width: 24px;height: 3px;background-color: var(--primary-color);border-radius: 4px;transition: all 0.25s ease-in-out}.hamburger-icon{position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%)}.hamburger-icon::before, .hamburger-icon::after{content: '';position: absolute;left: 0}.hamburger-icon::before{transform: translateY(-8px)}.hamburger-icon::after{transform: translateY(8px)}.mobile-menu-toggle.is-active .hamburger-icon{background-color: transparent}.mobile-menu-toggle.is-active .hamburger-icon::before{background-color: var(--white-color);transform: translateY(0) rotate(45deg)}.mobile-menu-toggle.is-active .hamburger-icon::after{background-color: var(--white-color);transform: translateY(0) rotate(-45deg)}.main-nav{position: fixed;top: 0;left: 0;width: 100%;height: 100vh;background-color: var(--primary-color);z-index: 1000;display: flex;flex-direction: column;justify-content: center;align-items: center;gap: 1.5rem;opacity: 0;visibility: hidden;transform: scale(0.98);transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease}.main-nav.is-open{opacity: 1;visibility: visible;transform: scale(1)}.main-nav a{color: var(--white-color);font-family: var(--font-family-headings);font-size: 2rem;text-decoration: none;padding: 0.5rem 1rem;transition: transform 0.2s ease}.main-nav a:hover{transform: scale(1.05);text-decoration: none}.main-footer{text-align: center;padding: 2rem 0;margin-top: 2rem;color: var(--text-color);border-top: 1px solid var(--border-color)}.today-section{text-align: center}.today-date,.date-title-label{display: flex;align-items: center;justify-content: center;gap: 0.5em;font-size: 1rem;font-weight: 600;color: #555;margin-bottom: 0.5rem;text-align: center}.h1-icon{height: 1.2em;width: auto}.date-title-container{text-align: center;margin-bottom: 1.5rem}.date-title-names{font-family: var(--font-family-headings);font-size: 2.8rem;font-weight: bold;line-height: 1.2}.date-title-names a,.date-title-names span, .date-title-names .name-separator{color: var(--primary-color);text-decoration: none}.date-title-names a:hover{text-decoration: underline}.main-namedays{display: flex;flex-direction: column;align-items: center;gap: 1rem;font-size: 1.8rem;margin-bottom: 1rem}.main-namedays a{text-decoration: none;color: var(--primary-color);transition: color 0.2s ease}.main-namedays a:hover{color: var(--primary-color-darker);text-decoration: none}.name-card-icon{height: 1.8rem;width: auto}.name-blocks-container{margin-top: 1.5rem}.main-name-meanings{margin: 1.5rem 0;padding: 1rem;background-color: var(--light-gray-color);border-radius: var(--border-radius);font-style: normal}.learn-more{margin-top: 1.5rem}.learn-more a{font-weight: bold;color: var(--accent-color-darker);text-decoration: none;border-bottom: 2px solid transparent;transition: border-color 0.2s ease-in-out;padding-bottom: 2px}.learn-more a:hover{color: var(--accent-color);text-decoration: none;border-color: var(--accent-color)}.main-name-block + .main-name-block{margin-top: 2rem;padding-top: 2rem;border-top: 1px solid var(--border-color)}.main-name-block + .main-name-block::before{display: none}.other-names-section{margin-top: 2rem;padding-top: 2rem;border-top: 1px solid var(--border-color)}.section-title-small{font-size: 1.25rem;font-weight: bold;margin-bottom: 1rem}.other-names-list{line-height: 1.8;display: flex;flex-wrap: wrap;gap: 0.5rem 0.75rem;justify-content: center}.other-names-list a{display: inline-block;background-color: var(--light-gray-color);padding: 0.25rem 0.75rem;border-radius: 999px;text-decoration: none;font-size: 0.9rem;transition: background-color 0.2s ease, color 0.2s ease}.other-names-list a:hover{background-color: var(--primary-color);color: var(--white-color);text-decoration: none}.adjacent-days-buttons{display: grid;grid-template-columns: 1fr;gap: 1rem;margin: 1.5rem 0}.name-page-title{font-size: 2.8rem;color: var(--primary-color);margin-bottom: 2rem}.name-section{margin-bottom: 2rem}.name-section-title{font-size: 1.5rem;font-weight: bold;margin-bottom: 1rem}.name-section p{line-height: 1.7}.name-attribute-list{list-style-type: disc;padding-left: 20px}.name-attribute-list li{margin-bottom: 0.5rem}.name-list{list-style: none;padding-left: 0;margin-top: 1.5rem}.name-list li{margin-bottom: 0.75rem}.name-list a{display: block;font-size: 1.2rem;padding: 1rem 1.25rem;background-color: var(--white-color);border: 1px solid var(--border-color);border-radius: var(--border-radius);text-decoration: none;width: 100%;transition: all 0.2s ease-in-out}.name-list a:hover{background-color: var(--primary-color);color: var(--white-color);border-color: var(--primary-color);transform: translateY(-2px);box-shadow: 0 4px 8px rgba(0,0,0,0.05)}.name-list a.main-name{border-left: 4px solid var(--primary-color);background-color: var(--light-blue-bg)}.alphabet-hub{display: flex;flex-wrap: wrap;gap: 0.5rem;margin-top: 1.5rem}.alphabet-link{display: inline-block;width: 40px;height: 40px;line-height: 40px;text-align: center;background-color: var(--light-gray-color);border-radius: var(--border-radius);font-weight: bold;text-decoration: none;transition: background-color 0.2s}.alphabet-link:hover{background-color: var(--primary-color);color: var(--white-color)}.name-column-list{list-style: none;padding: 0;margin: 1.5rem 0;column-count: 1}.name-column-list li{margin-bottom: 0.5rem}.back-link{display: inline-block;margin-top: 1.5rem;font-weight: bold}.calendar-nav{display: flex;flex-direction: column;gap: 0.5rem;justify-content: space-between;align-items: center;margin-bottom: 1.5rem}.calendar-nav .content-title{margin-bottom: 0;flex-grow: 1;text-align: center}.nav-arrow{font-weight: bold}.month-grid{display: grid;grid-template-columns: repeat(2, 1fr);gap: 1rem}.month-grid-item{display: block;padding: 1.5rem 0.5rem;background-color: var(--background-color);border: 1px solid var(--border-color);border-radius: var(--border-radius);text-align: center;font-size: 1.2rem;font-weight: bold;text-decoration: none;transition: all 0.2s ease-in-out}.month-grid-item:hover{background-color: var(--primary-color);color: var(--white-color);border-color: var(--primary-color);transform: translateY(-3px);box-shadow: 0 4px 8px rgba(0,0,0,0.1)}.calendar-list-view{display: block}.list-day{display: flex;align-items: center;padding: 1rem 1.25rem;border: 1px solid var(--border-color);border-radius: var(--border-radius);margin-bottom: 0.75rem;cursor: pointer;transition: all 0.2s ease-in-out}.list-day:hover{background-color: var(--light-blue-bg);border-color: var(--primary-color);transform: translateY(-2px);box-shadow: 0 4px 8px rgba(0,0,0,0.05)}.calendar-list-view .list-day:last-child{margin-bottom: 0}.list-day-header{flex-basis: 120px;flex-shrink: 0;display: flex;justify-content: flex-start;align-items: center;padding-right: 1rem}.list-day-header .day-number{font-size: 1.5rem;font-weight: bold;min-width: 2ch;text-align: right}.list-day-header .day-name{margin-left: 0.5rem;font-size: 0.9rem;color: #777}.list-day-names{flex-grow: 1;padding-left: 1rem}.list-day-names a{display: block;line-height: 1.5}.list-day-names a.main-name{font-weight: bold}.no-nameday-list{color: #aaa}.calendar-grid-view{display: none}.toggle-other-names{font-size: 0.75rem;opacity: 0.8;text-decoration: underline;cursor: pointer}.other-names{display: none;margin-top: 0.25rem}.other-names.is-visible{display: block !important}#cookie-banner{position: fixed;bottom: 0;left: 0;width: 100%;background-color: var(--text-color);color: var(--white-color);padding: 1rem;z-index: 1000;display: none;justify-content: center;align-items: center;gap: 1.5rem;flex-wrap: wrap;box-shadow: 0 -2px 10px rgba(0,0,0,0.1)}#cookie-banner p{margin: 0;font-size: 0.9rem;text-align: center}#cookie-banner a{color: var(--white-color);text-decoration: underline}#cookie-banner .button{background-color: var(--accent-color);color: var(--white-color);border-color: var(--accent-color);flex-shrink: 0}#cookie-banner .button:hover{background-color: var(--accent-color-darker);border-color: var(--accent-color-darker)}@media (min-width: 576px){.name-column-list{column-count: 2}}@media (min-width: 768px){.content-box{padding: 1.5rem 2.5rem 2.5rem}.adjacent-days-buttons{grid-template-columns: 1fr 1fr}.month-grid{grid-template-columns: repeat(3, 1fr)}.month-grid-item{padding: 2rem 1rem}.date-title-names{font-size: 3.5rem}.name-blocks-container{display: grid;grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));gap: 2rem}.name-blocks-container.single-name-layout{display: block}.main-name-block + .main-name-block{margin-top: 0;padding-top: 0;border-top: none}.header-container{display: grid;grid-template-areas:"logo search""menu menu";grid-template-columns: auto 1fr;align-items: center;gap: 1rem}.mobile-menu-toggle{display: none}.logo{grid-area: logo}.header-right{display: contents}.search-form{grid-area: search;justify-self: end;max-width: 350px}.main-nav{grid-area: menu;position: static;width: 100%;height: auto;background-color: transparent;flex-direction: row;justify-content: center;visibility: visible;opacity: 1;transform: none;z-index: auto;gap: 0.5rem;transition: none;border-top: 1px solid var(--border-color);padding-top: 1rem;margin-top: -0.5rem}.main-nav a{display: flex;align-items: center;gap: 0.5em;color: var(--text-color);font-family: var(--font-family-body);font-size: 1rem;font-weight: 500;padding: 8px 16px;border-radius: 999px;text-decoration: none;transition: background-color 0.2s ease, color 0.2s ease}.main-nav a:hover{background-color: var(--light-gray-color);color: var(--primary-color);text-decoration: none;transform: none}.main-nav a.active{background-color: var(--primary-color);color: var(--white-color)}.main-nav a.nav-today{font-weight: bold;color: var(--accent-color)}.main-nav a.active.nav-today{color: var(--white-color)}.calendar-list-view{display: none}.calendar-grid-view{display: block}.calendar-grid-view .calendar-table{width: 100%;border-collapse: collapse;table-layout: fixed}.calendar-nav{flex-direction: row}.calendar-grid-view th, .calendar-grid-view td{border: 1px solid var(--border-color);padding: 0.5rem;vertical-align: top;height: 120px;width: 14.2857%}.calendar-grid-view th{background-color: var(--background-color)}.calendar-grid-view .day-number-link{text-decoration: none;color: var(--text-color);display: block;margin: -0.5rem;padding: 0.5rem;border-radius: var(--border-radius);transition: background-color 0.2s}.calendar-grid-view .day-number-link:hover{background-color: var(--light-blue-bg)}.calendar-grid-view .day-number{font-weight: bold;margin-bottom: 0.25rem}.calendar-grid-view .calendar-names a{display: block;font-size: 0.85rem;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.calendar-grid-view .calendar-names a.main-name{font-weight: bold}}@media (min-width: 992px){.name-column-list{column-count: 3}.month-grid{grid-template-columns: repeat(4, 1fr)}}