/* DamOn UI: shared typography, editorial headings, and action tokens. */
.haru-navigation .nav-item,.haru-navigation form[action$="/logout"] button{font-family:inherit!important;font-weight:600!important;font-size:12px;letter-spacing:normal;line-height:1.4}
:root{--damon-ink:#183452;--damon-muted:#71839c;--damon-accent:#315edb;--damon-line:#e4eaf4;--damon-radius:12px}
.damon-title{color:var(--damon-ink);font-family:inherit;font-weight:700!important;letter-spacing:-.025em;line-height:1.45;overflow-wrap:anywhere}
.damon-title--page{font-size:clamp(20px,2vw,26px)!important;position:relative;padding-inline-start:14px;border-inline-start:4px solid var(--damon-accent)}
.damon-title--section{font-size:18px!important;position:relative;padding-inline-start:12px;border-inline-start:3px solid var(--damon-accent)}
.damon-title--card{font-size:15px!important;line-height:1.5}
.damon-title--plain{padding-inline-start:0;border-inline-start:0}
.damon-title__eyebrow{display:block;margin-bottom:5px;color:var(--damon-accent);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.damon-title__description{margin:7px 0 0;color:var(--damon-muted);font-size:13px;line-height:1.7;font-weight:400;letter-spacing:0}
.damon-title__count{display:inline-flex;align-items:center;margin-inline-start:8px;padding:2px 8px;border-radius:99px;background:#edf3ff;color:#315edb;font-size:11px;font-weight:600;vertical-align:middle}
.damon-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px}
.damon-heading .damon-title{margin:0}
.damon-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
/* Shared, existing page-header hooks also cover pages using non-heading markup. */
.haru-page-header__title{font-family:inherit;font-weight:700;letter-spacing:-.025em;color:var(--damon-ink)}
@media(max-width:640px){.damon-title--page{font-size:20px!important;padding-inline-start:10px}.damon-title--section{font-size:16px!important;padding-inline-start:9px}.damon-title--card{font-size:14px!important}.damon-heading{gap:10px}}

/* Editorial title collection. All decoration is CSS, with selectable brand tones. */
.damon-heading--blue{--damon-accent:#315edb;--damon-tint:#edf3ff}
.damon-heading--red{--damon-accent:#e52334;--damon-tint:#fff0f2}
.damon-heading--purple{--damon-accent:#8052ce;--damon-tint:#f4efff}
.damon-heading--green{--damon-accent:#148360;--damon-tint:#ecf9f3}
.damon-heading__body{min-width:0;max-width:100%}
.damon-title--decorated{display:flex;align-items:center;flex-wrap:wrap;gap:8px;isolation:isolate;position:relative;width:fit-content;max-width:100%;border:0;padding:0}
.damon-title__label{min-width:0;overflow-wrap:anywhere}
.damon-title--bar{border-inline-start:4px solid var(--damon-accent);padding-inline-start:12px}
.damon-title__number{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:1.8em;padding:0 .2em;background:var(--damon-accent);color:#fff;font-size:1.2em;font-weight:800;line-height:1.5;font-variant-numeric:tabular-nums;letter-spacing:-.05em}
.damon-title--number{padding-bottom:8px;border-bottom:1px solid var(--damon-line)}
.damon-title--number .damon-title__number{background:none;color:var(--damon-accent);border-inline-end:2px solid var(--damon-accent);padding-inline-end:9px}
.damon-title--ribbon{padding:5px 17px 5px 7px;background:var(--damon-accent);color:#fff;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 100%,0 100%)}
.damon-title--slash{padding-inline-start:24px}
.damon-title--slash::before{content:'';position:absolute;inset-inline-start:3px;top:15%;height:70%;width:12px;background:repeating-linear-gradient(110deg,var(--damon-accent) 0 3px,transparent 3px 6px)}
.damon-title--arrow{padding-inline-start:27px}
.damon-title--arrow::before{content:'';position:absolute;inset-inline-start:0;top:50%;width:19px;height:18px;transform:translateY(-50%);background:var(--damon-accent);clip-path:polygon(40% 0,70% 0,30% 50%,70% 100%,40% 100%,0 50%)}
.damon-title--outline{border:1px solid var(--damon-accent);padding:3px 9px;color:var(--damon-accent);box-shadow:3px 3px 0 var(--damon-tint,#edf3ff)}
.damon-title--underline{padding-bottom:9px;border-bottom:1px solid var(--damon-line)}
.damon-title--underline::after{content:'';position:absolute;bottom:-1px;inset-inline-start:0;width:38px;height:3px;background:var(--damon-accent)}
.damon-title--pill{padding:5px 15px;border-radius:99px;background:var(--damon-accent);color:#fff}
.damon-title--flag{gap:10px}
.damon-title--flag .damon-title__number{padding:8px 5px 14px;clip-path:polygon(0 0,100% 0,100% 100%,50% calc(100% - 6px),0 100%)}
.damon-title--decorated .damon-title__count{margin-inline-start:0;background:var(--damon-tint,#edf3ff);color:var(--damon-accent);letter-spacing:0}
@media(max-width:640px){.damon-title--decorated{gap:6px}.damon-title--ribbon{padding:5px 21px 5px 10px}.damon-title--bar{padding-inline-start:9px}}

/* Shared list typography: news, fortune, columns, PICK and community boards. */
.news-fixed-channels .news-fixed-post .news-fixed-post__title,
.channel-news-list .channel-news-row .channel-news-title,
.news-portal .news-side-item .news-side-item__body strong,
.news-fixed-channels .news-fixed-channel .news-fixed-empty,
.damon-list-title.truncate {
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    letter-spacing: normal !important;
    color: #334155 !important;
}
@media (max-width:640px) {
    .news-fixed-channels .news-fixed-post .news-fixed-post__title,
    .channel-news-list .channel-news-row .channel-news-title,
    .news-portal .news-side-item .news-side-item__body strong,
    .news-fixed-channels .news-fixed-channel .news-fixed-empty,
    .damon-list-title.truncate { font-size:12px !important; }
}

/* Match top navigation and all utility/account dropdown menu labels. */
.haru-navigation .nav-item,
.haru-navigation .account-dropdown :is(a, button),
.haru-navigation .nav-dropdown :is(a, button),
.haru-navigation form[action$="/logout"] button {
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    letter-spacing: normal !important;
}

@media (max-width:640px) {
    html body .news-fixed-channels .news-fixed-post .news-fixed-post__title,
    html body .channel-news-list .channel-news-row .channel-news-title.text-xs,
    html body .news-portal .news-side-item .news-side-item__body strong,
    html body .damon-list-title.truncate,
    html body .haru-home-board-list li a .haru-home-board-list__title,
    html body .haru-home-ranking__list li a .haru-home-ranking__name {
        font-size: 14px !important;
        line-height: 1.6 !important;
    }
}

/* Confine card overlays and footer controls beneath the sticky site header. */
.channel-card { position: relative; isolation: isolate; }
