.birthday-page{--ink:#162c42;--muted:#526579;--blue:#1463d6;max-width:1180px;margin:auto;padding:28px 24px 60px;color:var(--ink);font-family:Arial,sans-serif;line-height:1.6}.birthday-page *{box-sizing:border-box}.birthday-page a{color:#155bb5}.crumb{font-size:13px;color:var(--muted)}.birthday-hero{padding:48px 0 32px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#386eaa}.birthday-hero h1{font-size:clamp(32px,4.5vw,52px);line-height:1.15;letter-spacing:-1.6px;margin:15px 0 20px}.birthday-hero h1 span{color:var(--blue)}.birthday-hero>p:not(.eyebrow){max-width:690px;color:var(--muted);font-size:17px}.hero-stats{display:flex;gap:24px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin-top:26px}.hero-stats strong{color:var(--ink);font-size:18px}.birthday-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:26px;align-items:start}.finder,.upcoming,.note,.birthday-help{border:1px solid #dce5ee;border-radius:16px;padding:26px;background:#fff}.birthday-page h2{font-size:22px;line-height:1.3;margin:0 0 10px}.birthday-page p{margin:8px 0 16px}.finder>p,.upcoming>p,.note p{color:var(--muted);font-size:14px}.fields{display:grid;grid-template-columns:1.6fr 1fr;gap:16px}.fields label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}.fields input,.fields select{font:inherit;width:100%;min-width:0;padding:12px;border:1px solid #b7c6d5;border-radius:8px;background:white;color:var(--ink)}.birthday-page :focus-visible{outline:3px solid #e99c23;outline-offset:3px}.today-check{display:flex;align-items:center;gap:8px;font-size:14px;margin-top:16px}.today-check input{width:18px;height:18px}.actions{display:flex;align-items:center;gap:22px;margin:20px 0 30px}.actions button{background:#1463d6;color:white;border:0;border-radius:8px;padding:13px 20px;font:700 14px Arial;cursor:pointer}.actions a{font-size:14px}.result-heading{border-top:1px solid #e0e7ef;padding-top:25px;display:flex;justify-content:space-between;gap:12px;align-items:center}.result-heading span{white-space:nowrap;font-size:12px;color:var(--muted)}.birthday-results{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.birthday-card{display:flex;align-items:center;gap:13px;border:1px solid #e0e7ef;border-radius:10px;padding:16px 12px;min-width:0}.date-badge{background:#edf4ff;color:#2059a4;text-align:center;border-radius:8px;min-width:48px;padding:4px}.date-badge span{display:block;text-transform:uppercase;font-size:10px;letter-spacing:1px}.date-badge strong{display:block;font-size:24px;line-height:1.2}.birthday-card h3{font-size:15px;margin:0;overflow-wrap:anywhere}.birthday-card p{font-size:12px;margin:3px 0;color:var(--muted)}.birthday-card small{display:block;font-size:11px;color:#596b7b}.upcoming{background:#f3f7fd}.upcoming-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-top:1px solid #dce5ee;text-decoration:none}.upcoming-row strong{font-size:14px}.upcoming-row small{display:block;color:var(--muted);font-size:12px}.days{font-size:11px;border-radius:20px;background:#fff;padding:3px 9px;white-space:nowrap}.note{margin-top:20px}.note h2{font-size:17px}.note p{font-size:12px}.birthday-help{margin-top:26px}.birthday-help details{padding:14px 0;border-bottom:1px solid #e0e7ef}.birthday-help summary{cursor:pointer;font-weight:700;font-size:14px}.birthday-help p{font-size:14px;color:var(--muted)}.empty{padding:24px;background:#f3f7fd;border-radius:10px;margin-top:15px}body{margin:0;background:#fbfcfe}@media(max-width:950px){.birthday-layout{grid-template-columns:1fr}.birthday-layout aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.note{margin-top:0}}@media(max-width:580px){.birthday-page{padding:20px 16px 40px}.birthday-hero{padding-top:30px}.finder,.upcoming,.note,.birthday-help{padding:20px}.fields,.birthday-results,.birthday-layout aside{grid-template-columns:1fr}.hero-stats{gap:12px 20px}.birthday-card{padding:14px}.result-heading h2{font-size:19px}}
