@import "https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Mono:wght@400;500&family=DM+Sans:wght@300;400;500&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0f0f0f;--bg2:#1a1a1a;--bg3:#242424;--border:#2e2e2e;--text:#f0f0f0;--muted:#888;--muted2:#555;--accent:#e8c547;--accent-dark:#c9a82c;--font-serif:"DM Serif Display", serif;--font-mono:"DM Mono", monospace;--font-sans:"DM Sans", sans-serif}html{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);min-height:100vh;font-size:14px;line-height:1.6}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}.nav{border-bottom:1px solid var(--border);background:var(--bg);z-index:100;justify-content:space-between;align-items:center;padding:12px 24px;display:flex;position:sticky;top:0}.nav-logo{font-family:var(--font-serif);color:var(--accent);letter-spacing:-.5px;font-size:20px}.nav-langs{flex-wrap:wrap;gap:4px;display:flex}.nav-lang{border:1px solid var(--border);color:var(--muted);border-radius:4px;padding:4px 10px;font-size:12px;transition:all .15s}.nav-lang:hover{border-color:var(--accent);color:var(--accent)}.nav-lang.active{background:var(--accent);color:#000;border-color:var(--accent);font-weight:500}.hero{text-align:center;padding:48px 24px 32px}.hero-label{font-family:var(--font-mono);letter-spacing:3px;color:var(--muted);text-transform:uppercase;margin-bottom:8px;font-size:11px}.hero-number{font-family:var(--font-serif);color:var(--accent);font-size:clamp(96px,20vw,180px);line-height:1}.hero-divider{background:var(--border);width:48px;height:1px;margin:16px auto}.hero-range{color:var(--text);font-size:clamp(16px,3vw,22px);font-weight:300}.hero-year{font-family:var(--font-mono);color:var(--muted);margin-top:6px;font-size:12px}.search-wrap{max-width:440px;margin:0 auto 40px;padding:0 24px}.search-row{gap:8px;display:flex}.search-input{background:var(--bg2);border:1px solid var(--border);color:var(--text);font-size:14px;font-family:var(--font-sans);border-radius:6px;outline:none;flex:1;padding:10px 14px;transition:border .15s}.search-input:focus{border-color:var(--accent)}.search-input::placeholder{color:var(--muted)}.search-btn{background:var(--accent);color:#000;cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:16px;font-weight:500}.search-btn:hover{background:var(--accent-dark)}.search-hint{color:var(--muted);text-align:center;margin-top:8px;font-size:12px}.page-content{grid-template-columns:1fr;gap:16px;max-width:960px;margin:0 auto;padding:0 24px 48px;display:grid}.card{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:20px}.card-label{font-family:var(--font-mono);letter-spacing:2px;color:var(--muted);text-transform:uppercase;margin-bottom:14px;font-size:10px}.country-tabs{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.country-tab{border:1px solid var(--border);color:var(--muted);cursor:pointer;font-size:12px;font-family:var(--font-sans);background:0 0;border-radius:4px;padding:4px 10px;transition:all .15s}.country-tab:hover{border-color:var(--muted2);color:var(--text)}.country-tab.active{background:var(--bg3);color:var(--text);border-color:#555}.holiday-list{flex-direction:column;display:flex}.holiday-item{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:10px 0;display:flex}.holiday-item:last-child{border-bottom:none}.holiday-date{font-family:var(--font-mono);color:var(--muted);flex-shrink:0;min-width:56px;font-size:12px}.holiday-name{color:var(--text);flex:1;font-size:13px}.holiday-this-week{color:#5a9;white-space:nowrap;background:#1c2a1c;border:1px solid #2a4a2a;border-radius:3px;padding:2px 8px;font-size:10px}.no-holidays{color:var(--muted);padding:12px 0;font-size:13px}.mini-cal{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cal-dow{color:var(--muted);text-align:center;font-size:10px;font-family:var(--font-mono);padding:4px 0}.cal-day{text-align:center;color:var(--muted);border-radius:3px;padding:5px 2px;font-size:11px;line-height:1}.cal-day.in-week{background:var(--bg3);color:var(--text)}.cal-day.today{background:var(--accent);color:#000;border-radius:4px;font-weight:500}.cal-day.weekend:not(.today){color:#c77}.cal-day.weekend.in-week:not(.today){color:#f88}.cal-day.other-month{opacity:.25}.facts-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.fact{background:var(--bg3);text-align:center;border-radius:6px;padding:14px 12px}.fact-value{font-family:var(--font-serif);color:var(--accent);font-size:32px;line-height:1}.fact-label{color:var(--muted);margin-top:4px;font-size:11px}.quick-links{flex-wrap:wrap;gap:8px;display:flex}.quick-link{background:var(--bg3);border:1px solid var(--border);color:var(--muted);font-size:12px;font-family:var(--font-mono);border-radius:4px;padding:6px 12px;transition:all .15s}.quick-link:hover,.quick-link.current{border-color:var(--accent);color:var(--accent)}.footer{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;font-size:12px;display:flex}.footer-langs{flex-wrap:wrap;gap:12px;display:flex}.footer-links{gap:16px;display:flex}.page-header{max-width:960px;margin:0 auto;padding:40px 24px 32px}.page-header h1{font-family:var(--font-serif);color:var(--text);margin-bottom:8px;font-size:clamp(28px,5vw,48px)}.page-header p{color:var(--muted);font-size:15px}.calendar-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.month-card{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:16px}.month-title{font-family:var(--font-serif);color:var(--text);margin-bottom:12px;font-size:18px}.month-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.month-dow{color:var(--muted);text-align:center;font-size:10px;font-family:var(--font-mono);padding:3px 0}.month-day{text-align:center;color:var(--muted);border-radius:3px;padding:4px 2px;font-size:11px}.month-day.weekend:not(.is-today){color:#c77}.month-day.is-today{background:var(--accent);color:#000;font-weight:500}.month-day.has-holiday{color:var(--text);text-decoration:underline}.month-day.other{opacity:.2}.week-num{font-family:var(--font-mono);color:var(--muted2);text-align:center;padding:4px 2px;font-size:10px}@media (max-width:600px){.nav{padding:10px 16px}.nav-langs{display:none}.hero{padding:32px 16px 24px}.page-content{padding:0 16px 32px}.footer{flex-direction:column;align-items:flex-start}}.cal-day.has-holiday-dot{color:var(--text)}.cal-day.has-holiday-dot:hover{background:var(--bg3)}.cal-day:hover{background:var(--bg3);border-radius:3px}
