/* Daily photos open inside the page; the published site styles stay unchanged. */
.daily-photo-open {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  cursor: zoom-in;
}
.daily-photo-open:focus-visible,
.daily-photo-close:focus-visible {
  outline: 3px solid var(--copper, #cc996d);
  outline-offset: 4px;
}
.daily-photo-dialog {
  box-sizing: border-box;
  width: min(1100px, calc(100vw - 24px));
  max-width: none;
  max-height: calc(100vh - 24px);
  max-height: calc(100dvh - 24px);
  padding: 16px;
  border: 1px solid var(--copper, #cc996d);
  background: var(--paper, #f4ebdd);
  color: var(--ink, #252922);
  overflow: auto;
  overscroll-behavior: contain;
}
.daily-photo-dialog::backdrop { background: rgb(0 0 0 / 80%); }
.daily-photo-dialog-bar {
  position: sticky;
  top: -16px;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 8px 0 16px;
  background: var(--paper, #f4ebdd);
}
.daily-photo-dialog-bar h2 {
  margin: 0;
  font: 700 18px/1.4 Arial, sans-serif;
  text-transform: none;
}
.daily-photo-close {
  flex-shrink: 0;
  min-width: 90px;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid currentColor;
  background: var(--ink, #252922);
  color: var(--paper, #f4ebdd);
  font: 700 14px/1.3 Arial, sans-serif;
  cursor: pointer;
}
.daily-photo-enlarged {
  display: block;
  width: 100%;
  height: calc(100vh - 120px);
  height: calc(100dvh - 120px);
  object-fit: contain;
}
html.daily-photo-is-open { overflow: hidden; }
@media (max-width: 500px) {
  .daily-photo-dialog { padding: 10px; }
  .daily-photo-dialog-bar { top: -10px; gap: 10px; }
  .daily-photo-dialog-bar h2 { font-size: 15px; }
}
@media print { .daily-photo-dialog { display: none !important; } }
