.oj-daily-page { padding: 12px; }
.section-heading-page .container { width: 100%; max-width: 100%; }
.headerlinks { box-sizing: border-box; max-width: 100%; }
.oj-daily-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; }
.oj-daily-grid > * { min-width: 0; }
.oj-daily-page p { line-height: 1.8; text-align: start; overflow-wrap: anywhere; }
.oj-daily-page h2, .oj-daily-page h3 { line-height: 1.5; overflow-wrap: anywhere; }
.oj-daily-date { margin: 8px 0 12px; color: #594536; }
.oj-daily-date small { display: block; }
.oj-daily-nav { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0 14px; }
.oj-daily-nav a, .oj-daily-jump { display: inline-flex; align-items: center; min-height: 44px; padding: 6px 10px; border: 1px solid #cfb98d; border-radius: 6px; background: #fff8e5; }
.oj-daily-signs { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 135px), 1fr)); gap: 8px; padding: 0; margin: 12px 0; list-style: none; }
.oj-daily-sign-picker { margin: 16px 0; scroll-margin-top: 100px; }
.oj-daily-signs li { margin: 0; padding: 0; }
.oj-daily-signs a { box-sizing: border-box; display: flex; align-items: center; gap: 8px; height: 100%; min-height: 60px; padding: 8px; border: 1px solid #d8c49b; border-radius: 8px; text-decoration: none; background: #fffcf4; overflow-wrap: anywhere; }
.oj-daily-signs a[aria-current="page"] { background: #ffebba; border-color: #976209; color: #512c00; font-weight: 700; }
.oj-daily-signs img { width: 36px; height: 36px; flex-shrink: 0; }
.oj-daily-signs small { display: block; color: #65533b; }
.oj-daily-page a:focus-visible, .oj-daily-page summary:focus-visible { outline: 3px solid #0757a6; outline-offset: 3px; }
.oj-daily-page details { margin: 12px 0; padding: 10px; border: 1px solid #dec9a0; border-radius: 8px; }
.oj-daily-page summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; font-weight: 600; }
.oj-daily-forecast { scroll-margin-top: 90px; }
.oj-daily-forecast ul { padding-left: 22px; line-height: 1.8; }
.oj-daily-forecast li { margin-bottom: 8px; }
.oj-daily-forecast li > strong, .oj-daily-forecast p > strong { margin-inline-end: .3em; }
.oj-daily-forecast blockquote { margin: 12px 0; padding: 10px 14px; border-inline-start: 3px solid #b88736; background: #fffaed; }
.oj-daily-profile img { float: inline-start; margin: 0 12px 8px 0; }
.oj-daily-profile::after { content: ''; display: table; clear: both; }
.oj-daily-profile, #author-heading { scroll-margin-top: 100px; }
.oj-daily-unavailable { padding: 10px; border: 1px solid #dfc28a; border-radius: 6px; background: #fff8e7; }
.oj-gu-language-links { display: flex; flex-wrap: wrap; gap: 6px 12px; list-style: none; padding: 0; }
.oj-gu-language-links a { display: inline-flex; min-height: 44px; align-items: center; }
.oj-owner-forecast img, .oj-owner-forecast table { max-width: 100%; }
.oj-owner-forecast { overflow-wrap: anywhere; }
.oj-daily-grid > article { min-width: 0; }
.oj-daily-aside { align-self: start; padding: 12px; border: 1px solid #e1ceaa; border-radius: 10px; background: #fffbf2; }
.oj-daily-aside ul { padding-left: 20px; }
.oj-daily-aside li { margin: 8px 0; }
.oj-daily-aside li a { display: inline-flex; align-items: center; min-height: 44px; }
.oj-daily-ad { margin: 20px 0; padding-top: 12px; border-top: 1px solid #ddd; min-width: 0; }
.oj-daily-ad small { display: block; color: #6a6a6a; margin-bottom: 8px; }
.oj-daily-ad ins[data-ad-status="unfilled"] { display: none !important; }
.oj-daily-page .author-bio-box { display: grid; grid-template-columns: 110px minmax(0,1fr); gap: 12px; margin: 20px 0; padding: 12px; border: 1px solid #d8cbb4; border-radius: 8px; }
.oj-daily-page .oj-author-bio-image { float: none !important; margin: 0 !important; }
.oj-daily-page .oj-author-bio-content { min-width: 0; }
@media (min-width: 992px) { .oj-daily-grid { grid-template-columns: minmax(0, 1fr) minmax(240px, 30%); } }
@media (max-width: 480px) {
    .oj-daily-page { padding: 4px; }
    .oj-daily-grid { gap: 12px; }
    .oj-daily-signs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
    .oj-daily-signs a { gap: 6px; padding: 6px; }
    .oj-daily-signs span { min-width: 0; }
    .oj-daily-page .author-bio-box { grid-template-columns: 1fr; padding: 8px; }
    .oj-daily-page .oj-author-bio-image { width: 90px; height: 90px; }
}
