.wp5ch-bbs{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff;border:1px solid #ddd;padding:16px;margin:16px 0;color:#222}.wp5ch-title,.wp5ch-thread-title{margin:0 0 14px;border-bottom:2px solid #d7e6ff;padding-bottom:8px}.wp5ch-subtitle{margin-top:22px}.wp5ch-note{background:#fff8df;border:1px solid #f0d98c;padding:10px;margin:10px 0}.wp5ch-boards{background:#f7f7f7;border:1px solid #e3e3e3;padding:10px;margin-bottom:14px}.wp5ch-board-chip{display:inline-block;background:#eef5ff;border:1px solid #cbdcf2;border-radius:999px;padding:2px 9px;margin:2px}.wp5ch-form-box,.wp5ch-reply-box{border:1px solid #ddd;background:#fafafa;padding:12px;margin:14px 0}.wp5ch-form-box summary{cursor:pointer;font-weight:700}.wp5ch-form label{display:block;margin:10px 0}.wp5ch-form input[type=text],.wp5ch-form select,.wp5ch-form textarea{width:100%;box-sizing:border-box;border:1px solid #bbb;border-radius:4px;padding:8px;background:#fff}.wp5ch-form button{background:#2f6fad;color:#fff;border:0;border-radius:4px;padding:8px 16px;cursor:pointer}.wp5ch-form button:hover{opacity:.9}.wp5ch-thread-list{list-style:none;margin:0;padding:0}.wp5ch-thread-list li{border-bottom:1px solid #eee;padding:10px 4px}.wp5ch-thread-list a{font-weight:700;text-decoration:none}.wp5ch-meta{display:block;color:#777;font-size:12px;margin-top:3px}.wp5ch-res{border-bottom:1px solid #e5e5e5;padding:12px 4px}.wp5ch-res-head{font-weight:700;color:#008000;margin-bottom:6px}.wp5ch-res-body{font-weight:600;line-height:1.75;word-break:break-word}.wp5ch-anchor{color:#0645ad;text-decoration:none;font-weight:700}.wp5ch-anchor:hover{text-decoration:underline}@media(max-width:640px){.wp5ch-bbs{padding:12px}.wp5ch-form button{width:100%}}

/* Latest threads shortcode: [wp5ch_latest_threads] */
.wp5ch-latest-widget{
    border:1px solid #d7d7d7;
    background:#fff;
    padding:12px;
    margin:14px 0;
    font-size:14px;
    line-height:1.6;
}
.wp5ch-latest-title{
    font-weight:700;
    border-bottom:1px solid #e5e5e5;
    padding-bottom:6px;
    margin-bottom:8px;
}
.wp5ch-latest-list{
    list-style:none;
    margin:0;
    padding:0;
}
.wp5ch-latest-item{
    margin:0;
    padding:7px 0;
    border-bottom:1px dotted #ddd;
}
.wp5ch-latest-item:last-child{
    border-bottom:none;
}
.wp5ch-latest-link{
    display:block;
    text-decoration:none;
    font-weight:600;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.wp5ch-latest-meta{
    display:block;
    color:#777;
    font-size:12px;
    margin-top:2px;
}
.wp5ch-latest-empty{
    color:#777;
    padding:6px 0;
}

/* v0.1.4: Thread pages use plugin template so Cocoon/article title/meta/comment count do not remain. */
.wp5ch-template-main {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.wp5ch-template-wrap {
  max-width: 1100px;
  margin: 0 auto;
  padding: 16px;
  box-sizing: border-box;
}
.wp5ch-bbs-single-only {
  margin-top: 0;
}

/* v0.1.5: report button */
.wp5ch-report-wrap{
    margin-top:8px;
    text-align:right;
}
.wp5ch-report-form{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin:0;
}
.wp5ch-report-button{
    border:1px solid #ccc;
    background:#f7f7f7;
    color:#555;
    border-radius:4px;
    padding:3px 8px;
    font-size:12px;
    cursor:pointer;
}
.wp5ch-report-button:hover{
    background:#fff0f0;
    border-color:#d99;
    color:#b32d2e;
}
.wp5ch-report-count{
    color:#999;
    font-size:12px;
}


/* v0.1.10: mobile width and separated response header styles */
.wp5ch-res-head{
    color:inherit;
    font-weight:400;
}
.wp5ch-res-no{
    color:#222;
    font-weight:400;
}
.wp5ch-res-author{
    color:#008000;
    font-weight:700;
}
.wp5ch-res-date{
    color:#888;
    font-weight:400;
}

@media(max-width:640px){
    .wp5ch-template-wrap{
        max-width:none;
        padding-left:8px;
        padding-right:8px;
    }
    .wp5ch-bbs.wp5ch-bbs-single-only{
        width:calc(100vw - 16px);
        max-width:calc(100vw - 16px);
        margin-left:50%;
        margin-right:0;
        transform:translateX(-50%);
        box-sizing:border-box;
        padding-left:12px;
        padding-right:12px;
    }
    .wp5ch-res-head{
        font-size:15px;
        line-height:1.5;
    }
}


/* v0.1.11: wider desktop thread area and smaller mobile response header */
@media(min-width:641px){
    .wp5ch-template-wrap{
        max-width:1100px;
        width:94%;
    }
    .wp5ch-bbs.wp5ch-bbs-single-only{
        padding-left:24px;
        padding-right:24px;
    }
}
@media(max-width:640px){
    .wp5ch-res-head{
        font-size:15px;
        line-height:1.5;
    }
}


/* v0.1.12: make desktop thread container genuinely wider in Cocoon/theme layouts */
@media(min-width:641px){
    body.single-wp5ch_thread #primary.wp5ch-template-main,
    body.single-wp5ch_thread .wp5ch-template-main{
        width:calc(100vw - 40px) !important;
        max-width:1280px !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }
    body.single-wp5ch_thread .wp5ch-template-wrap{
        width:100% !important;
        max-width:1280px !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding-left:8px !important;
        padding-right:8px !important;
        box-sizing:border-box !important;
    }
    body.single-wp5ch_thread .wp5ch-bbs.wp5ch-bbs-single-only{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:24px;
        padding-right:24px;
        box-sizing:border-box;
    }
}
@media(min-width:1200px){
    body.single-wp5ch_thread #primary.wp5ch-template-main,
    body.single-wp5ch_thread .wp5ch-template-main,
    body.single-wp5ch_thread .wp5ch-template-wrap{
        max-width:1360px !important;
    }
}


/* v0.1.13: keep desktop BBS inside the theme content column; do not overlap Cocoon sidebar */
@media(min-width:641px){
    body.single-wp5ch_thread #primary.wp5ch-template-main,
    body.single-wp5ch_thread .wp5ch-template-main{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
        overflow:visible !important;
    }
    body.single-wp5ch_thread .wp5ch-template-wrap{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }
    body.single-wp5ch_thread .wp5ch-bbs.wp5ch-bbs-single-only{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
        transform:none !important;
        box-sizing:border-box !important;
        padding-left:20px;
        padding-right:20px;
    }
}

/* v0.1.15: reply button and 5ch-like ID display */
.wp5ch-res-id{
    color:#777;
    font-weight:400;
    margin-left:6px;
    white-space:nowrap;
}
.wp5ch-res-actions{
    margin-top:8px;
    text-align:right;
}
.wp5ch-reply-anchor-button{
    border:1px solid #ccc;
    background:#f7f7f7;
    color:#555;
    border-radius:4px;
    padding:3px 8px;
    font-size:12px;
    cursor:pointer;
}
.wp5ch-reply-anchor-button:hover{
    background:#eef5ff;
    border-color:#8eb8e6;
    color:#1d5f9f;
}
@media(max-width:640px){
    .wp5ch-res-id{
        display:inline-block;
        margin-left:4px;
        font-size:13px;
    }
    .wp5ch-res-actions{
        text-align:right;
    }
}

/* v0.1.18: inline reply spacing reduced, line width kept */
.wp5ch-inline-reply-box{
    border:1px solid #cbdcf2;
    background:#f7fbff;
    padding:10px;
    margin:10px 0 4px;
}
.wp5ch-inline-reply-box .wp5ch-reply-title{
    margin:0 0 8px;
    font-size:14px;
    color:#555;
}
.wp5ch-inline-reply-actions{
    margin-top:8px;
    text-align:right;
}
.wp5ch-reply-cancel{
    border:1px solid #ccc;
    background:#fff;
    color:#555;
    border-radius:4px;
    padding:6px 12px;
    cursor:pointer;
}
.wp5ch-res-depth-1,
.wp5ch-res-depth-2,
.wp5ch-res-depth-3,
.wp5ch-res-depth-4,
.wp5ch-res-depth-5,
.wp5ch-res-depth-6{
    margin-left:18px;
    background:transparent;
}
.wp5ch-res-depth-1 > .wp5ch-res-self,
.wp5ch-res-depth-2 > .wp5ch-res-self,
.wp5ch-res-depth-3 > .wp5ch-res-self,
.wp5ch-res-depth-4 > .wp5ch-res-self,
.wp5ch-res-depth-5 > .wp5ch-res-self,
.wp5ch-res-depth-6 > .wp5ch-res-self{
    position:relative;
    padding-left:10px;
}
.wp5ch-res-depth-1 > .wp5ch-res-self::before,
.wp5ch-res-depth-2 > .wp5ch-res-self::before,
.wp5ch-res-depth-3 > .wp5ch-res-self::before,
.wp5ch-res-depth-4 > .wp5ch-res-self::before,
.wp5ch-res-depth-5 > .wp5ch-res-self::before,
.wp5ch-res-depth-6 > .wp5ch-res-self::before{
    content:"";
    position:absolute;
    left:0;
    top:6px;
    bottom:6px;
    width:1px;
    background:#cfcfcf;
}
@media(max-width:640px){
    .wp5ch-res-depth-1,
    .wp5ch-res-depth-2,
    .wp5ch-res-depth-3,
    .wp5ch-res-depth-4,
    .wp5ch-res-depth-5,
    .wp5ch-res-depth-6{
        margin-left:10px;
    }
    .wp5ch-res-depth-1 > .wp5ch-res-self,
    .wp5ch-res-depth-2 > .wp5ch-res-self,
    .wp5ch-res-depth-3 > .wp5ch-res-self,
    .wp5ch-res-depth-4 > .wp5ch-res-self,
    .wp5ch-res-depth-5 > .wp5ch-res-self,
    .wp5ch-res-depth-6 > .wp5ch-res-self{
        padding-left:7px;
    }
    .wp5ch-inline-reply-box{
        padding:9px;
    }
}

/* v0.1.19: in-place preview for >> anchors and ID post modal */
.wp5ch-id-link{
    display:inline;
    border:0;
    background:transparent;
    color:#666;
    font:inherit;
    padding:0;
    margin:0;
    cursor:pointer;
    text-decoration:none;
}
.wp5ch-id-link:hover{
    color:#0645ad;
    text-decoration:underline;
}
.wp5ch-anchor-preview{
    position:relative;
    border:1px solid #cbdcf2;
    background:#f8fbff;
    border-radius:6px;
    padding:10px 34px 10px 10px;
    margin:8px 0 10px;
    box-shadow:0 2px 8px rgba(0,0,0,.06);
}
.wp5ch-anchor-preview-close{
    position:absolute;
    top:6px;
    right:6px;
    border:0;
    background:transparent;
    color:#777;
    font-size:18px;
    line-height:1;
    cursor:pointer;
}
.wp5ch-preview-item{
    border-bottom:1px solid #eee;
    padding:10px 0;
}
.wp5ch-preview-item:first-child{padding-top:0;}
.wp5ch-preview-item:last-child{border-bottom:0;padding-bottom:0;}
.wp5ch-preview-head{
    font-size:13px;
    margin-bottom:5px;
}
.wp5ch-preview-body{
    line-height:1.65;
    word-break:break-word;
}
.wp5ch-preview-empty{
    color:#777;
    padding:8px 0;
}
.wp5ch-modal-backdrop{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.48);
    z-index:99999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:18px;
    box-sizing:border-box;
}
.wp5ch-modal{
    width:min(720px, 94vw);
    max-height:82vh;
    overflow:hidden;
    background:#fff;
    border-radius:8px;
    box-shadow:0 12px 40px rgba(0,0,0,.28);
    border:1px solid #ddd;
}
.wp5ch-modal-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 16px;
    border-bottom:1px solid #e5e5e5;
    color:#3157a8;
}
.wp5ch-modal-close{
    border:0;
    background:transparent;
    color:#777;
    font-size:28px;
    line-height:1;
    cursor:pointer;
    padding:0 3px;
}
.wp5ch-modal-body{
    padding:0 16px 16px;
    overflow:auto;
    max-height:calc(82vh - 56px);
}
.wp5ch-modal .wp5ch-preview-head .wp5ch-id-link{
    pointer-events:none;
}
@media(max-width:640px){
    .wp5ch-modal-backdrop{
        padding:10px;
        align-items:center;
    }
    .wp5ch-modal{
        width:96vw;
        max-height:84vh;
    }
    .wp5ch-modal-head{
        padding:12px;
        font-size:14px;
    }
    .wp5ch-modal-body{
        padding:0 12px 12px;
        max-height:calc(84vh - 52px);
    }
    .wp5ch-anchor-preview{
        padding:9px 30px 9px 9px;
    }
}


/* v0.1.20: color ID by total posts from the same ID */
.wp5ch-id-link.wp5ch-id-count-1{
    color:#222;
}
.wp5ch-id-link.wp5ch-id-count-2to4{
    color:#0645ad;
}
.wp5ch-id-link.wp5ch-id-count-5to8{
    color:#7b2cbf;
}
.wp5ch-id-link.wp5ch-id-count-9plus{
    color:#d00000;
}
.wp5ch-id-link.wp5ch-id-count-1:hover,
.wp5ch-id-link.wp5ch-id-count-2to4:hover,
.wp5ch-id-link.wp5ch-id-count-5to8:hover,
.wp5ch-id-link.wp5ch-id-count-9plus:hover{
    text-decoration:underline;
}

/* v0.1.21: move report button next to ID, reply button to lower-left, smaller mobile buttons */
.wp5ch-report-wrap{
    display:inline-flex;
    margin-top:0;
    margin-left:6px;
    vertical-align:middle;
    text-align:left;
}
.wp5ch-report-form{
    display:inline-flex;
    align-items:center;
    gap:4px;
    margin:0;
    line-height:1;
}
.wp5ch-res-actions{
    text-align:left;
    margin-top:8px;
}
.wp5ch-report-button,
.wp5ch-reply-anchor-button{
    line-height:1.3;
}
@media(max-width:640px){
    .wp5ch-report-wrap{
        margin-left:4px;
    }
    .wp5ch-report-button,
    .wp5ch-reply-anchor-button{
        padding:2px 6px;
        font-size:11px;
        border-radius:3px;
    }
    .wp5ch-report-count{
        font-size:10px;
    }
    .wp5ch-res-actions{
        margin-top:6px;
    }
}


/* v0.1.24: slightly smaller desktop response header and body text */
@media(min-width:641px){
    .wp5ch-res-head{
        font-size:15px;
        line-height:1.48;
    }
    .wp5ch-res-body{
        font-size:15px;
        line-height:1.72;
    }
}

/* v0.1.25: BBS top phase 1 - board-list style layout */
.wp5ch-bbs .wp5ch-board-home{
    margin:0;
}
.wp5ch-board-crumb{
    color:#777;
    font-size:12px;
    margin:0 0 10px;
}
.wp5ch-board-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    border-bottom:3px solid var(--wp5ch-board-accent-color,#ef2d2d);
    padding:0 0 7px;
    margin:0 0 8px;
}
.wp5ch-board-title-wrap{
    display:flex;
    align-items:center;
    gap:8px;
    min-width:0;
}
.wp5ch-board-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--wp5ch-board-accent-color,#ef2d2d);
    color:#fff;
    font-weight:700;
    font-size:12px;
    line-height:1;
    border-radius:3px;
    padding:5px 7px;
}
.wp5ch-board-title{
    margin:0;
    padding:0;
    border:0;
    font-size:22px;
    line-height:1.25;
}
.wp5ch-board-head-actions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-shrink:0;
}
.wp5ch-board-total{
    color:#68758d;
    font-size:13px;
}
.wp5ch-new-thread-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--wp5ch-board-accent-color,#ef2d2d);
    color:#fff !important;
    text-decoration:none !important;
    border:0;
    cursor:pointer;
    font-family:inherit;
    font-weight:700;
    font-size:13px;
    border-radius:4px;
    padding:8px 10px;
    line-height:1;
}
.wp5ch-new-thread-button:hover{
    opacity:.88;
}
.wp5ch-thread-form-panel[hidden]{
    display:none !important;
}
.wp5ch-thread-form-panel{
    margin-top:14px;
}
.wp5ch-thread-form-title{
    font-weight:700;
    font-size:16px;
    margin:0 0 10px;
}
.wp5ch-board-home .wp5ch-boards{
    margin:10px 0;
    padding:8px 10px;
    background:#fafafa;
    border:1px solid #e5e5e5;
    font-size:13px;
}
.wp5ch-board-list{
    border:1px solid #d7d7d7;
    background:#fff;
    margin:8px 0 18px;
}
.wp5ch-board-list-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    background:#151515;
    color:#fff;
    padding:10px 12px;
    font-weight:700;
}
.wp5ch-board-col-title{
    font-size:16px;
}
.wp5ch-board-sort{
    display:flex;
    align-items:center;
    gap:4px;
    font-size:12px;
    color:#c8ced8;
    white-space:nowrap;
}
.wp5ch-board-sort span{
    display:inline-block;
    padding:5px 8px;
    border-radius:4px;
}
.wp5ch-board-sort .is-active{
    background:#60646f;
    color:#fff;
}
.wp5ch-board-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) 98px;
    gap:10px;
    align-items:center;
    padding:10px 12px;
    border-top:1px solid #e5e5e5;
}
.wp5ch-board-row:first-of-type{
    border-top:0;
}
.wp5ch-board-row-main{
    display:block;
    min-width:0;
    color:inherit;
    text-decoration:none !important;
}
.wp5ch-board-row-main:hover .wp5ch-board-row-title{
    text-decoration:underline;
}
.wp5ch-board-row-titleline{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:5px;
    margin-bottom:4px;
}
.wp5ch-board-row-title{
    font-weight:700;
    color:#1d2530;
    line-height:1.35;
}
.wp5ch-board-row-preview{
    display:none;
}
.wp5ch-board-row-date{
    color:#69758d;
    font-size:12px;
    line-height:1.45;
    margin-top:4px;
    white-space:nowrap;
}
.wp5ch-board-row-side{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:2px;
    color:#667085;
    font-size:12px;
    line-height:1.35;
    white-space:nowrap;
}
.wp5ch-board-last{
    color:#69758d;
}
.wp5ch-board-count{
    color:#e53935;
    font-weight:700;
}
.wp5ch-board-heat{
    color:#8a94a6;
}
.wp5ch-thread-label{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:3px;
    padding:2px 5px;
    font-size:11px;
    line-height:1.2;
    font-weight:700;
}
.wp5ch-thread-label-new{
    color:#ff2b50;
    background:#fff0f3;
}
.wp5ch-thread-label-hot{
    color:#e02020;
    background:#fff1f1;
}
.wp5ch-thread-label-popular{
    color:#7b2cbf;
    background:#f6efff;
}
.wp5ch-board-empty{
    padding:18px 12px;
    color:#777;
}
.wp5ch-board-home .wp5ch-form-box{
    margin-top:16px;
}
@media(max-width:640px){
    .wp5ch-board-head{
        align-items:flex-start;
        gap:8px;
    }
    .wp5ch-board-title{
        font-size:18px;
    }
    .wp5ch-board-badge{
        font-size:10px;
        padding:4px 6px;
    }
    .wp5ch-board-head-actions{
        gap:6px;
    }
    .wp5ch-board-total{
        font-size:12px;
    }
    .wp5ch-new-thread-button{
        font-size:12px;
        padding:7px 8px;
    }
    .wp5ch-board-list-head{
        padding:9px 10px;
    }
    .wp5ch-board-col-title{
        font-size:14px;
    }
    .wp5ch-board-sort{
        gap:1px;
        font-size:11px;
    }
    .wp5ch-board-sort span{
        padding:4px 5px;
    }
    .wp5ch-board-row{
        grid-template-columns:minmax(0,1fr) 66px;
        padding:9px 10px;
        gap:8px;
    }
    .wp5ch-board-row-title{
        font-size:14px;
    }
    .wp5ch-board-row-date{
        font-size:11px;
    }
    .wp5ch-board-row-side{
        font-size:11px;
    }
    .wp5ch-board-heat{
        display:none;
    }
}

/* BBS top fixed page: make it look like a dedicated board page, not a normal article */
body.wp5ch-bbs-home-page .article-header,
body.wp5ch-bbs-home-page .entry-title,
body.wp5ch-bbs-home-page .date-tags,
body.wp5ch-bbs-home-page .eye-catch-wrap,
body.wp5ch-bbs-home-page .sns-share,
body.wp5ch-bbs-home-page .sns-follow,
body.wp5ch-bbs-home-page .under-entry-content,
body.wp5ch-bbs-home-page .comment-area,
body.wp5ch-bbs-home-page .comment-btn,
body.wp5ch-bbs-home-page .pager-post-navi,
body.wp5ch-bbs-home-page .breadcrumb.sbp-main-before,
body.wp5ch-bbs-home-page .breadcrumb-category,
body.wp5ch-bbs-home-page .footer-meta,
body.wp5ch-bbs-home-page .entry-footer{
    display:none !important;
}

/* v0.1.29: restore Cocoon's normal page/content/sidebar positioning on the BBS fixed page.
   Only hide article-like parts; do not override main/wrap/container/article widths. */
body.wp5ch-bbs-home-page .entry-content{
    margin-top:0 !important;
}
body.wp5ch-bbs-home-page .wp5ch-bbs{
    width:100%;
    box-sizing:border-box;
}
body.wp5ch-bbs-home-page .wp5ch-board-home{
    width:100%;
    box-sizing:border-box;
}


/* v0.1.30: Use Cocoon's white article box as the board frame on the BBS top page.
   Remove the plugin's extra inner white/bordered frame so the list starts directly inside the page box. */
body.wp5ch-bbs-home-page .wp5ch-bbs{
    background:transparent !important;
    border:0 !important;
    padding:0 !important;
    margin:0 !important;
    box-shadow:none !important;
}
body.wp5ch-bbs-home-page .wp5ch-board-home{
    margin:0 !important;
    padding:0 !important;
}
body.wp5ch-bbs-home-page .wp5ch-board-crumb{
    margin-top:0 !important;
}
body.wp5ch-bbs-home-page .wp5ch-board-list,
body.wp5ch-bbs-home-page .wp5ch-board-home .wp5ch-boards,
body.wp5ch-bbs-home-page .wp5ch-board-home .wp5ch-form-box{
    width:100%;
    box-sizing:border-box;
}
@media(max-width:640px){
    body.wp5ch-bbs-home-page .wp5ch-bbs{
        padding:0 !important;
        margin:0 !important;
    }
}


/* v0.1.31: BBS top vertical position and heading reset.
   Move the board content slightly upward inside Cocoon's article box, and avoid theme h2 styles. */
body.wp5ch-bbs-home-page .article,
body.wp5ch-bbs-home-page article.article{
    padding-top:28px !important;
}
body.wp5ch-bbs-home-page .entry-content{
    padding-top:0 !important;
}
body.wp5ch-bbs-home-page .wp5ch-board-title{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#111 !important;
    font-size:22px !important;
    font-weight:700 !important;
    line-height:1.25 !important;
}
@media(max-width:640px){
    body.wp5ch-bbs-home-page .article,
    body.wp5ch-bbs-home-page article.article{
        padding-top:18px !important;
    }
    body.wp5ch-bbs-home-page .wp5ch-board-title{
        font-size:20px !important;
    }
}

/* v0.1.32: board list sort links */
.wp5ch-board-sort a{
    display:inline-block;
    color:#fff;
    text-decoration:none;
    padding:5px 8px;
    border-radius:4px;
    font-weight:700;
    font-size:12px;
}
.wp5ch-board-sort a:hover{
    background:#333;
    color:#fff;
}
.wp5ch-board-sort a.is-active{
    background:#666b7a;
    color:#fff;
}
@media(max-width:640px){
    .wp5ch-board-sort a{
        padding:4px 6px;
        font-size:11px;
    }
}

/* 0.1.36 Ajax sort loading */
.wp5ch-board-list.is-loading{opacity:.65;pointer-events:none;position:relative;}
.wp5ch-board-list.is-loading:after{content:"読み込み中...";position:absolute;right:12px;top:58px;background:rgba(255,255,255,.92);border:1px solid #ddd;border-radius:4px;padding:4px 8px;font-size:12px;color:#555;}

/* 0.1.37 thread approval notice */
.wp5ch-notice{
    margin:12px 0;
    padding:10px 12px;
    border:1px solid #cfe8d5;
    background:#f3fff6;
    color:#1f6b34;
    border-radius:4px;
    font-size:14px;
}

/* v0.1.38: move the BBS top content up to the top area of Cocoon's white article box */
body.wp5ch-bbs-home-page .article,
body.wp5ch-bbs-home-page article.article{
    padding-top:12px !important;
}
body.wp5ch-bbs-home-page .entry-content,
body.wp5ch-bbs-home-page .entry-content > *:first-child,
body.wp5ch-bbs-home-page .wp5ch-bbs,
body.wp5ch-bbs-home-page .wp5ch-board-home{
    margin-top:0 !important;
    padding-top:0 !important;
}
body.wp5ch-bbs-home-page .wp5ch-board-crumb{
    margin-top:0 !important;
}
@media(max-width:640px){
    body.wp5ch-bbs-home-page .article,
    body.wp5ch-bbs-home-page article.article{
        padding-top:10px !important;
    }
}

/* v0.1.39: Pull the BBS top content further upward inside Cocoon's article box.
   Cocoon can keep a hidden title/meta area spacing even when the title is hidden, so use a controlled negative offset only on the BBS fixed page. */
body.wp5ch-bbs-home-page .article,
body.wp5ch-bbs-home-page article.article{
    padding-top:0 !important;
}
body.wp5ch-bbs-home-page .entry-content{
    margin-top:-54px !important;
    padding-top:0 !important;
}
body.wp5ch-bbs-home-page .wp5ch-bbs{
    margin-top:0 !important;
}
@media(max-width:640px){
    body.wp5ch-bbs-home-page .entry-content{
        margin-top:-34px !important;
    }
}


/* v0.1.44: Thread single page should use the surrounding page area like the BBS list page.
   Remove the plugin's extra white/bordered frame and pull the thread content upward. */
body.single-wp5ch_thread .wp5ch-template-wrap{
    padding-top:0 !important;
    padding-bottom:16px !important;
}
body.single-wp5ch_thread .wp5ch-bbs.wp5ch-bbs-single-only{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
    margin:0 !important;
}
body.single-wp5ch_thread .wp5ch-thread{
    margin:0 !important;
    padding:0 !important;
}
body.single-wp5ch_thread .wp5ch-thread-title{
    margin-top:0 !important;
}
@media(max-width:640px){
    body.single-wp5ch_thread .wp5ch-template-wrap{
        padding-top:0 !important;
        padding-left:8px !important;
        padding-right:8px !important;
    }
    body.single-wp5ch_thread .wp5ch-bbs.wp5ch-bbs-single-only{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        transform:none !important;
        padding:0 !important;
    }
}


/* v0.1.45: thread meta between title and separator line */
body.single-wp5ch_thread .wp5ch-thread-title{
    border-bottom:0 !important;
    padding-bottom:2px !important;
    margin-bottom:4px !important;
}
.wp5ch-thread-single-meta{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    margin:0 0 8px;
    font-size:13px;
    line-height:1.5;
}
.wp5ch-thread-single-count{
    color:#d60000;
    font-weight:700;
}
.wp5ch-thread-single-updated{
    color:#aaa;
    font-weight:400;
}
.wp5ch-thread-title-line{
    border-bottom:2px solid #d7e6ff;
    margin:0 0 12px;
}
@media(max-width:640px){
    .wp5ch-thread-single-meta{
        gap:10px;
        font-size:12px;
        margin-bottom:7px;
    }
    .wp5ch-thread-title-line{
        margin-bottom:10px;
    }
}

/* v0.1.48: good/bad reaction buttons and score-based body display */
.wp5ch-reaction-wrap{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-right:8px;
    flex-wrap:wrap;
}
.wp5ch-reaction-form{
    display:inline-flex;
    margin:0;
}
.wp5ch-reaction-button{
    border:1px solid #ccc;
    background:#f7f7f7;
    color:#555;
    border-radius:4px;
    padding:3px 8px;
    font-size:12px;
    line-height:1.3;
    cursor:pointer;
}
.wp5ch-reaction-good:hover{
    background:#eef5ff;
    border-color:#8eb8e6;
    color:#1d5f9f;
}
.wp5ch-reaction-bad:hover{
    background:#fff0f0;
    border-color:#d99;
    color:#b32d2e;
}
.wp5ch-res-body.wp5ch-reaction-bold .wp5ch-res-body-inner{
    font-weight:800;
    color:#00a0e9;
}
.wp5ch-res-body.wp5ch-reaction-fade .wp5ch-res-body-inner{
    opacity:.48;
    font-weight:400;
}
@media(max-width:640px){
    .wp5ch-reaction-wrap{
        gap:4px;
        margin-right:6px;
    }
    .wp5ch-reaction-button{
        padding:2px 6px;
        font-size:11px;
    }
}

/* v0.1.50: place good/bad buttons next to report button with Font Awesome icons */
.wp5ch-head-actions{
    display:inline-flex;
    align-items:center;
    gap:5px;
    margin-left:6px;
    vertical-align:middle;
    flex-wrap:wrap;
}
.wp5ch-head-actions .wp5ch-report-wrap{
    margin-left:0;
}
.wp5ch-head-actions .wp5ch-reaction-wrap{
    margin-right:0;
    gap:4px;
}
.wp5ch-head-actions .wp5ch-reaction-button{
    padding:2px 6px;
    min-width:0;
}
.wp5ch-head-actions .wp5ch-reaction-button .fa{
    margin-right:2px;
}
@media(max-width:640px){
    .wp5ch-head-actions{
        gap:4px;
        margin-left:4px;
    }
    .wp5ch-head-actions .wp5ch-reaction-button{
        padding:2px 5px;
        font-size:11px;
        border-radius:3px;
    }
}


/* v0.1.51: make good/bad buttons icon-only style without background/border */
.wp5ch-reaction-button,
.wp5ch-head-actions .wp5ch-reaction-button{
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    padding:0 2px !important;
    min-width:0 !important;
    border-radius:0 !important;
    line-height:1.2;
    font-size:12px;
}
.wp5ch-reaction-button:hover,
.wp5ch-reaction-button:focus,
.wp5ch-head-actions .wp5ch-reaction-button:hover,
.wp5ch-head-actions .wp5ch-reaction-button:focus{
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    opacity:.78;
}
.wp5ch-reaction-good,
.wp5ch-reaction-good .fa,
.wp5ch-reaction-good span{
    color:#1d5f9f !important;
}
.wp5ch-reaction-bad,
.wp5ch-reaction-bad .fa,
.wp5ch-reaction-bad span{
    color:#b32d2e !important;
}
.wp5ch-head-actions .wp5ch-reaction-button .fa,
.wp5ch-reaction-button .fa{
    margin-right:2px;
}
@media(max-width:640px){
    .wp5ch-reaction-button,
    .wp5ch-head-actions .wp5ch-reaction-button{
        padding:0 1px !important;
        font-size:11px;
    }
}

/* 0.1.52: グッド/バッドはAjaxでその場更新 */
.wp5ch-reaction-wrap.is-voting {
  opacity: .65;
  pointer-events: none;
}
.wp5ch-reaction-button.is-selected {
  font-weight: 700;
}


/* 0.1.53: 評価アイコンは未選択を黒、押したものだけ色付きにする */
.wp5ch-reaction-button,
.wp5ch-reaction-button .fa,
.wp5ch-reaction-button span,
.wp5ch-head-actions .wp5ch-reaction-button,
.wp5ch-head-actions .wp5ch-reaction-button .fa,
.wp5ch-head-actions .wp5ch-reaction-button span{
    color:#222 !important;
}
.wp5ch-reaction-button.wp5ch-reaction-good.is-selected,
.wp5ch-reaction-button.wp5ch-reaction-good.is-selected .fa,
.wp5ch-reaction-button.wp5ch-reaction-good.is-selected span{
    color:#1d5f9f !important;
}
.wp5ch-reaction-button.wp5ch-reaction-bad.is-selected,
.wp5ch-reaction-button.wp5ch-reaction-bad.is-selected .fa,
.wp5ch-reaction-button.wp5ch-reaction-bad.is-selected span{
    color:#b32d2e !important;
}
.wp5ch-reaction-button.is-selected{
    font-weight:700;
}


/* v0.1.57: remove extra horizontal divider lines inside nested replies */
.wp5ch-res-depth-1,
.wp5ch-res-depth-2,
.wp5ch-res-depth-3,
.wp5ch-res-depth-4,
.wp5ch-res-depth-5,
.wp5ch-res-depth-6{
    border-bottom:0 !important;
    padding-bottom:8px;
    margin-bottom:6px;
}

/* Keep a divider only after the whole root comment block, not between nested replies */
.wp5ch-res-depth-0{
    border-bottom:1px solid #e5e5e5;
}

/* Nested reply block itself should not create long horizontal lines */
.wp5ch-res-depth-1 > .wp5ch-res-self,
.wp5ch-res-depth-2 > .wp5ch-res-self,
.wp5ch-res-depth-3 > .wp5ch-res-self,
.wp5ch-res-depth-4 > .wp5ch-res-self,
.wp5ch-res-depth-5 > .wp5ch-res-self,
.wp5ch-res-depth-6 > .wp5ch-res-self{
    border-bottom:0 !important;
}


/* v0.1.58: avoid nested reply whitespace by moving padding to self block */
.wp5ch-res{padding:0 !important;border-bottom:0 !important;}
.wp5ch-res-self{padding:12px 4px;}
.wp5ch-res-depth-0{border-bottom:1px solid #e5e5e5 !important;}
.wp5ch-res-depth-1,.wp5ch-res-depth-2,.wp5ch-res-depth-3,.wp5ch-res-depth-4,.wp5ch-res-depth-5,.wp5ch-res-depth-6{padding-bottom:0 !important;margin-bottom:0 !important;}
@media(max-width:640px){.wp5ch-res-self{padding:10px 4px;}}


/* v0.1.60: make ID modal / >> preview inherit response text size and reaction effects */
.wp5ch-preview-head{
    font-size:inherit;
    line-height:1.55;
}
.wp5ch-preview-body{
    font-size:inherit;
    line-height:1.75;
    word-break:break-word;
}
.wp5ch-preview-body .wp5ch-res-body-inner{
    font-size:inherit;
    line-height:inherit;
}
.wp5ch-preview-body.wp5ch-reaction-bold .wp5ch-res-body-inner{
    font-weight:700 !important;
    color:#00a0e9 !important;
}
.wp5ch-preview-body.wp5ch-reaction-fade .wp5ch-res-body-inner{
    opacity:.45;
}
.wp5ch-preview-item .wp5ch-reaction-button{
    pointer-events:none;
}


/* v0.1.61: force ID modal / >> preview font sizes to match thread responses */
.wp5ch-modal .wp5ch-preview-item,
.wp5ch-anchor-preview .wp5ch-preview-item{
    font-size:14px !important;
}
.wp5ch-modal .wp5ch-preview-head,
.wp5ch-anchor-preview .wp5ch-preview-head{
    font-size:14px !important;
    line-height:1.55 !important;
    font-weight:400 !important;
}
.wp5ch-modal .wp5ch-preview-body,
.wp5ch-anchor-preview .wp5ch-preview-body{
    font-size:14px !important;
    line-height:1.75 !important;
}
.wp5ch-modal .wp5ch-preview-body .wp5ch-res-body-inner,
.wp5ch-anchor-preview .wp5ch-preview-body .wp5ch-res-body-inner{
    font-size:14px !important;
    line-height:1.75 !important;
}
.wp5ch-modal .wp5ch-preview-head .wp5ch-res-no,
.wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-res-no,
.wp5ch-modal .wp5ch-preview-head .wp5ch-res-author,
.wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-res-author,
.wp5ch-modal .wp5ch-preview-head .wp5ch-res-date,
.wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-res-date,
.wp5ch-modal .wp5ch-preview-head .wp5ch-res-id,
.wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-res-id,
.wp5ch-modal .wp5ch-preview-head .wp5ch-id-link,
.wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-id-link{
    font-size:14px !important;
}
.wp5ch-modal .wp5ch-preview-head .wp5ch-head-actions,
.wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-head-actions,
.wp5ch-modal .wp5ch-preview-head .wp5ch-report-button,
.wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-report-button,
.wp5ch-modal .wp5ch-preview-head .wp5ch-reaction-button,
.wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-reaction-button{
    font-size:12px !important;
}

@media(max-width:640px){
    .wp5ch-modal .wp5ch-preview-item,
    .wp5ch-anchor-preview .wp5ch-preview-item{
        font-size:13px !important;
    }
    .wp5ch-modal .wp5ch-preview-head,
    .wp5ch-anchor-preview .wp5ch-preview-head,
    .wp5ch-modal .wp5ch-preview-body,
    .wp5ch-anchor-preview .wp5ch-preview-body,
    .wp5ch-modal .wp5ch-preview-body .wp5ch-res-body-inner,
    .wp5ch-anchor-preview .wp5ch-preview-body .wp5ch-res-body-inner,
    .wp5ch-modal .wp5ch-preview-head .wp5ch-res-no,
    .wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-res-no,
    .wp5ch-modal .wp5ch-preview-head .wp5ch-res-author,
    .wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-res-author,
    .wp5ch-modal .wp5ch-preview-head .wp5ch-res-date,
    .wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-res-date,
    .wp5ch-modal .wp5ch-preview-head .wp5ch-res-id,
    .wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-res-id,
    .wp5ch-modal .wp5ch-preview-head .wp5ch-id-link,
    .wp5ch-anchor-preview .wp5ch-preview-head .wp5ch-id-link{
        font-size:13px !important;
    }
}


/* v0.1.62: align first post head buttons and add divider before replies to #1 */
.wp5ch-post-children{border-top:1px solid #e5e5e5;margin-top:6px;padding-top:6px;}
.wp5ch-post-children > .wp5ch-res:first-child{margin-top:0;}


/* v0.1.63: PC thread-only floating write button */
.wp5ch-main-write-panel[hidden]{display:none !important;}
.wp5ch-main-write-panel{
    position:fixed;
    left:118px;
    bottom:82px;
    width:360px;
    max-width:calc(100vw - 180px);
    max-height:70vh;
    overflow:auto;
    z-index:9999;
    background:#fff;
    border:1px solid #d8d8d8;
    box-shadow:0 10px 28px rgba(0,0,0,.18);
    border-radius:10px;
    padding:0;
}
.wp5ch-main-write-panel .wp5ch-reply-box{
    margin:0;
    border:0;
    background:#fff;
    padding:14px;
}
.wp5ch-main-write-panel-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:12px 14px;
    border-bottom:1px solid #ececec;
    background:#fafafa;
    border-radius:10px 10px 0 0;
}
.wp5ch-main-write-title{font-weight:700;color:#222;}
.wp5ch-main-write-close{
    appearance:none;
    border:0;
    background:transparent;
    color:#666;
    font-size:24px;
    line-height:1;
    padding:0 2px;
    cursor:pointer;
}
.wp5ch-main-write-panel .wp5ch-reply-title{margin:0 0 10px;font-size:18px;}
.wp5ch-floating-write-button{
    position:fixed;
    left:42px;
    bottom:92px;
    z-index:9998;
    appearance:none;
    border:0;
    background:#ff4a4a;
    color:#fff;
    font-weight:700;
    font-size:14px;
    line-height:1;
    padding:14px 16px;
    border-radius:999px;
    cursor:pointer;
    box-shadow:0 6px 18px rgba(0,0,0,.18);
}
.wp5ch-floating-write-button:hover{opacity:.92;}
@media(max-width:1023px){
    .wp5ch-floating-write-button,
    .wp5ch-main-write-panel{display:none !important;}
}


/* v0.1.64: configurable good highlight color and thread breadcrumb */
.wp5ch-reaction-bold .wp5ch-res-body-inner{
    color:var(--wp5ch-good-highlight-color, #00a0e9) !important;
}
.wp5ch-preview-body.wp5ch-reaction-bold .wp5ch-res-body-inner{
    color:var(--wp5ch-good-highlight-color, #00a0e9) !important;
}
.wp5ch-thread-breadcrumb{
    margin:0 0 12px;
    font-size:13px;
    color:#777;
    line-height:1.6;
}
.wp5ch-thread-breadcrumb a{
    color:#607d9c;
    text-decoration:none;
}
.wp5ch-thread-breadcrumb a:hover{
    text-decoration:underline;
}
.wp5ch-thread-breadcrumb span{
    color:#777;
}


/* v0.1.65: keep bottom form, move PC floating write button closer to thread, make it blue */
.wp5ch-bottom-write-form{
    margin-top:22px;
}
.wp5ch-floating-write-button{
    left:132px !important;
    bottom:92px !important;
    background:#00a0e9 !important;
    color:#fff !important;
}
.wp5ch-floating-write-button:hover{
    opacity:.9;
}
.wp5ch-main-write-panel{
    left:210px !important;
}
@media(max-width:1200px){
    .wp5ch-floating-write-button{
        left:96px !important;
    }
    .wp5ch-main-write-panel{
        left:170px !important;
    }
}
@media(max-width:1023px){
    .wp5ch-floating-write-button,
    .wp5ch-main-write-panel{
        display:none !important;
    }
}


/* v0.1.66: move floating write button right, circular pencil style */
.wp5ch-floating-write-button{
    left:182px !important;
    bottom:94px !important;
    width:78px;
    height:78px;
    padding:0 !important;
    border-radius:50% !important;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:4px;
    background:#00a0e9 !important;
    color:#fff !important;
    font-weight:700;
    box-shadow:0 8px 22px rgba(0,0,0,.18);
}
.wp5ch-floating-write-button .wp5ch-floating-write-icon{
    display:block;
    font-size:20px;
    line-height:1;
}
.wp5ch-floating-write-button .wp5ch-floating-write-label{
    display:block;
    font-size:11px;
    line-height:1.1;
    letter-spacing:.02em;
}
.wp5ch-floating-write-button:hover{
    opacity:.95;
    transform:translateY(-1px);
}
.wp5ch-main-write-panel{
    left:266px !important;
}
@media(max-width:1200px){
    .wp5ch-floating-write-button{
        left:140px !important;
    }
    .wp5ch-main-write-panel{
        left:220px !important;
    }
}


/* v0.1.67: realtime reaction body transition */
.wp5ch-res-body{
    transition:color .15s ease, opacity .15s ease, font-weight .15s ease;
}


/* v0.1.68: move floating write button a bit right and make it smaller */
.wp5ch-floating-write-button{
    left:206px !important;
    width:68px !important;
    height:68px !important;
    gap:3px;
}
.wp5ch-floating-write-button .wp5ch-floating-write-icon{
    font-size:18px;
}
.wp5ch-floating-write-button .wp5ch-floating-write-label{
    font-size:10px;
}
.wp5ch-main-write-panel{
    left:286px !important;
}
@media(max-width:1200px){
    .wp5ch-floating-write-button{
        left:156px !important;
        width:64px !important;
        height:64px !important;
    }
    .wp5ch-main-write-panel{
        left:228px !important;
    }
}


/* v0.1.69: board breadcrumb links */
.wp5ch-board-crumb a{
    color:#607d9c;
    text-decoration:none;
}
.wp5ch-board-crumb a:hover{
    text-decoration:underline;
}


/* v0.1.70: 100-comments pagination */
.wp5ch-res-pager{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    flex-wrap:wrap;
    margin:12px 0 14px;
    padding:10px 12px;
    border:1px solid #e5e5e5;
    background:#fafafa;
    border-radius:8px;
}
.wp5ch-res-pager-bottom{margin-top:18px;}
.wp5ch-res-pager-range{font-size:13px;color:#666;}
.wp5ch-res-pager-links{
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:wrap;
}
.wp5ch-res-pager-links a,
.wp5ch-res-pager-links span.is-current{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:30px;
    height:30px;
    padding:0 9px;
    border-radius:999px;
    font-size:13px;
    text-decoration:none;
    border:1px solid #ddd;
    background:#fff;
    color:#333;
}
.wp5ch-res-pager-links span.is-current{
    background:#00a0e9;
    border-color:#00a0e9;
    color:#fff;
    font-weight:700;
}
.wp5ch-res-pager-links a:hover{
    border-color:#00a0e9;
    color:#00a0e9;
}
.wp5ch-res-pager-dots{color:#999;padding:0 2px;}
.wp5ch-res-pager-latest{font-weight:700;}
@media(max-width:640px){
    .wp5ch-res-pager{
        align-items:flex-start;
        padding:9px;
    }
    .wp5ch-res-pager-range{
        width:100%;
        font-size:12px;
    }
    .wp5ch-res-pager-links a,
    .wp5ch-res-pager-links span.is-current{
        min-width:28px;
        height:28px;
        padding:0 8px;
        font-size:12px;
    }
}


/* v0.1.71: heat toggle compatibility */
.wp5ch-board-row-side .wp5ch-board-count:last-child{
    margin-right:0;
}


/* v0.1.72: configurable response name color */
.wp5ch-res-author,
.wp5ch-preview-head .wp5ch-res-author{
    color:var(--wp5ch-name-color, #008000) !important;
}


/* v0.1.73: configurable response name color */
.wp5ch-res-author,
.wp5ch-preview-head .wp5ch-res-author{
    color:var(--wp5ch-name-color, #008000) !important;
}


/* v0.1.74: make normal response body bold, except bad/faded responses */
.wp5ch-res-body .wp5ch-res-body-inner{
    font-weight:700;
}
.wp5ch-res-body.wp5ch-reaction-fade .wp5ch-res-body-inner{
    font-weight:400 !important;
}
.wp5ch-preview-body .wp5ch-res-body-inner{
    font-weight:700;
}
.wp5ch-preview-body.wp5ch-reaction-fade .wp5ch-res-body-inner{
    font-weight:400 !important;
}
@media(max-width:640px){
    .wp5ch-res-body .wp5ch-res-body-inner,
    .wp5ch-preview-body .wp5ch-res-body-inner{
        font-weight:700;
    }
    .wp5ch-res-body.wp5ch-reaction-fade .wp5ch-res-body-inner,
    .wp5ch-preview-body.wp5ch-reaction-fade .wp5ch-res-body-inner{
        font-weight:400 !important;
    }
}

/* v0.1.75: auto reply by typed >>number */

/* v0.1.76: support full-width anchors like ＞＞５ */


/* v0.1.77: thread view toggle (tree / flat) */
.wp5ch-thread-header-bar{
    display:flex;
    align-items:flex-end;
    gap:12px;
    margin:0 0 12px;
}
.wp5ch-thread-header-bar .wp5ch-thread-title-line{
    flex:1 1 auto;
    margin:0;
}
.wp5ch-thread-view-toggle{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    gap:6px;
}
.wp5ch-thread-view-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0 10px;
    border:1px solid #d4dceb;
    border-radius:999px;
    background:#fff;
    color:#6b7480;
    text-decoration:none;
    font-size:12px;
    line-height:1;
    font-weight:700;
    white-space:nowrap;
}
.wp5ch-thread-view-link:hover{
    border-color:#7ea6e0;
    color:#2e5f9c;
}
.wp5ch-thread-view-link.is-current{
    background:#6f7784;
    border-color:#6f7784;
    color:#fff;
}
@media(max-width:640px){
    .wp5ch-thread-header-bar{
        gap:8px;
        margin-bottom:10px;
    }
    .wp5ch-thread-view-toggle{
        gap:5px;
    }
    .wp5ch-thread-view-link{
        min-height:26px;
        padding:0 8px;
        font-size:11px;
    }
}


/* v0.1.79: place tree/flat toggle above the title line, aligned to the right */
.wp5ch-thread-header-bar{
    position:relative;
    display:block;
    margin:0 0 12px;
    padding:0 0 14px;
}
.wp5ch-thread-header-bar .wp5ch-thread-title-line{
    display:block;
    width:100%;
    margin:0;
}
.wp5ch-thread-view-toggle{
    position:absolute;
    right:0;
    bottom:8px;
    display:inline-flex;
    align-items:center;
    gap:6px;
    z-index:2;
}
@media(max-width:640px){
    .wp5ch-thread-header-bar{
        margin-bottom:10px;
        padding-bottom:12px;
    }
    .wp5ch-thread-view-toggle{
        bottom:6px;
        gap:5px;
    }
}


/* v0.1.80: place thread view toggle on the same row as comment count / updated date */
.wp5ch-thread-header-bar{
    position:relative;
    display:block;
    margin:-28px 0 12px;
    padding:28px 0 14px;
}
.wp5ch-thread-header-bar .wp5ch-thread-title-line{
    display:block;
    width:100%;
    margin:0;
}
.wp5ch-thread-view-toggle{
    position:absolute;
    top:0;
    right:0;
    bottom:auto;
    display:inline-flex;
    align-items:center;
    gap:6px;
    z-index:2;
}
@media(max-width:640px){
    .wp5ch-thread-header-bar{
        margin:-24px 0 10px;
        padding:24px 0 12px;
    }
    .wp5ch-thread-view-toggle{
        top:0;
        gap:5px;
    }
}


/* v0.1.81: move thread view toggle a little higher */
.wp5ch-thread-header-bar{
    margin:-34px 0 12px;
    padding:34px 0 14px;
}
.wp5ch-thread-view-toggle{
    top:-6px;
}
@media(max-width:640px){
    .wp5ch-thread-header-bar{
        margin:-28px 0 10px;
        padding:28px 0 12px;
    }
    .wp5ch-thread-view-toggle{
        top:-4px;
    }
}


/* v0.1.82: move thread view toggle slightly down, shrink on mobile */
.wp5ch-thread-header-bar{
    margin:-32px 0 12px;
    padding:32px 0 14px;
}
.wp5ch-thread-view-toggle{
    top:-2px;
}
@media(max-width:640px){
    .wp5ch-thread-header-bar{
        margin:-24px 0 10px;
        padding:24px 0 12px;
    }
    .wp5ch-thread-view-toggle{
        top:0;
        gap:4px;
    }
    .wp5ch-thread-view-link{
        min-height:23px;
        padding:0 7px;
        font-size:10px;
        border-radius:999px;
    }
}


/* v0.1.83: on mobile, separate thread view toggle from comment/date row */
@media(max-width:640px){
    .wp5ch-thread-header-bar{
        position:static;
        display:flex;
        flex-direction:column;
        align-items:flex-end;
        margin:6px 0 10px;
        padding:0;
        gap:8px;
    }
    .wp5ch-thread-view-toggle{
        position:static;
        top:auto;
        right:auto;
        bottom:auto;
        margin:0;
        gap:4px;
    }
    .wp5ch-thread-title-line{
        width:100%;
        margin:0;
    }
    .wp5ch-thread-view-link{
        min-height:23px;
        padding:0 7px;
        font-size:10px;
        border-radius:999px;
    }
}


/* v0.1.84: on desktop too, put the toggle below the line */
.wp5ch-thread-header-bar{
    position:static;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    margin:6px 0 12px;
    padding:0;
    gap:8px;
}
.wp5ch-thread-title-line{
    order:1;
    width:100%;
    margin:0;
}
.wp5ch-thread-view-toggle{
    position:static;
    top:auto;
    right:auto;
    bottom:auto;
    order:2;
    margin:0;
    gap:6px;
}
@media(max-width:640px){
    .wp5ch-thread-header-bar{
        margin:6px 0 10px;
        gap:8px;
    }
    .wp5ch-thread-view-toggle{
        gap:4px;
    }
}


/* v0.1.85: swap board list date and heat positions */
.wp5ch-board-row-heat-meta{
    color:#8a94a6;
}
.wp5ch-board-row-side .wp5ch-board-last{
    color:#69758d;
    font-weight:400;
}


/* v0.1.87: restore board label colors/classes */
.wp5ch-thread-label-new,
.wp5ch-new{
    color:#ff2b50;
    background:#fff0f3;
}
.wp5ch-thread-label-hot,
.wp5ch-hot{
    color:#e02020;
    background:#fff1f1;
}
.wp5ch-thread-label-popular,
.wp5ch-popular{
    color:#7b2cbf;
    background:#f6efff;
}


/* v0.1.88: board header bubble icon + pencil button icon */
.wp5ch-board-badge-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    flex:0 0 28px;
}
.wp5ch-board-badge-icon svg{
    display:block;
    width:100%;
    height:100%;
}
.wp5ch-new-thread-button{
    gap:7px;
}
.wp5ch-new-thread-button-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:14px;
    height:14px;
    flex:0 0 14px;
}
.wp5ch-new-thread-button-icon svg{
    display:block;
    width:100%;
    height:100%;
}
@media(max-width:640px){
    .wp5ch-board-badge-icon{
        width:24px;
        height:24px;
        flex-basis:24px;
    }
    .wp5ch-new-thread-button{
        gap:6px;
    }
    .wp5ch-new-thread-button-icon{
        width:13px;
        height:13px;
        flex-basis:13px;
    }
}


/* v0.1.89: make the pencil icon a bit larger */
.wp5ch-new-thread-button{
    gap:8px;
}
.wp5ch-new-thread-button-icon{
    width:17px;
    height:17px;
    flex:0 0 17px;
}
@media(max-width:640px){
    .wp5ch-new-thread-button{
        gap:7px;
    }
    .wp5ch-new-thread-button-icon{
        width:15px;
        height:15px;
        flex:0 0 15px;
    }
}


/* v0.1.91: report modal */
.wp5ch-report-modal[hidden]{display:none !important;}
.wp5ch-report-modal{position:fixed;inset:0;z-index:999999;display:block;}
.wp5ch-report-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45);}
.wp5ch-report-dialog{
    position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);
    width:min(360px, calc(100vw - 32px));background:#fff;border-radius:8px;
    box-shadow:0 18px 50px rgba(0,0,0,.25);padding:20px;color:#333;box-sizing:border-box;
}
.wp5ch-report-dialog form{display:block;margin:0;}
.wp5ch-report-title{display:block;font-size:16px;font-weight:700;margin:0 0 18px;}
.wp5ch-report-lead{display:block;font-size:13px;color:#777;margin:0 0 12px;}
.wp5ch-report-radio{display:flex;align-items:center;gap:8px;margin:9px 0;font-size:14px;line-height:1.4;cursor:pointer;}
.wp5ch-report-radio input{accent-color:#ef2d2d;}
.wp5ch-report-detail{
    width:100%;min-height:78px;margin:12px 0 16px;padding:10px 12px;border:1px solid #ddd;
    border-radius:8px;font-size:13px;line-height:1.6;resize:vertical;box-sizing:border-box;
}
.wp5ch-report-detail::placeholder{color:#aaa;}
.wp5ch-report-actions{display:flex;justify-content:flex-end;align-items:center;gap:14px;}
.wp5ch-report-cancel{border:0;background:transparent;color:#666;cursor:pointer;font-size:13px;padding:8px 4px;}
.wp5ch-report-submit{border:0;background:#ef2d2d;color:#fff;border-radius:5px;font-weight:700;cursor:pointer;font-size:13px;padding:9px 16px;}
@media(max-width:640px){.wp5ch-report-dialog{width:calc(100vw - 30px);padding:18px;}}


/* v0.1.92: stabilize report modal so only the modal is foregrounded */
body.wp5ch-report-modal-open{
    overflow:hidden;
}
.wp5ch-report-modal{
    position:fixed;
    inset:0;
    z-index:2147483000;
    isolation:isolate;
}
.wp5ch-report-modal-backdrop{
    background:rgba(0,0,0,.58);
}
.wp5ch-report-dialog{
    z-index:1;
}


/* v0.1.93: board thread row hover */
.wp5ch-board-row{
    transition:background-color .15s ease;
}
.wp5ch-board-row:hover{
    background:#f3f3f3;
}
.wp5ch-board-row:hover .wp5ch-board-row-title{
    color:#e02020;
}
.wp5ch-board-row-main,
.wp5ch-board-row-title{
    transition:color .15s ease, background-color .15s ease;
}


/* v0.1.95: board list comment count as bubble icon + number */
.wp5ch-board-count{
    display:inline-flex;
    align-items:center;
    justify-content:flex-end;
    gap:5px;
    color:#e53935;
    font-weight:700;
}
.wp5ch-board-count::before{
    content:"";
    width:13px;
    height:13px;
    flex:0 0 13px;
    display:inline-block;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M7 5.5h10a4.5 4.5 0 0 1 4.5 4.5v4A4.5 4.5 0 0 1 17 18.5h-6.2l-3.8 3a.8.8 0 0 1-1.3-.63V18A4.5 4.5 0 0 1 2.5 14v-4A4.5 4.5 0 0 1 7 5.5Z' fill='none' stroke='%23e53935' stroke-width='2' stroke-linejoin='round'/></svg>");
}
@media(max-width:640px){
    .wp5ch-board-count{
        gap:4px;
    }
    .wp5ch-board-count::before{
        width:12px;
        height:12px;
        flex-basis:12px;
    }
}


/* v0.1.96: larger board list comment bubble on desktop */
.wp5ch-board-count{
    gap:6px;
    font-size:13px;
}
.wp5ch-board-count::before{
    width:15px;
    height:15px;
    flex-basis:15px;
}
@media(max-width:640px){
    .wp5ch-board-count{
        gap:4px;
        font-size:11px;
    }
    .wp5ch-board-count::before{
        width:12px;
        height:12px;
        flex-basis:12px;
    }
}


/* v0.1.97: board list header redesign */
.wp5ch-board-list-head{
    background:#fff;
    color:#313740;
    padding:0;
    font-weight:700;
    border-bottom:1px solid #e6e8ec;
}
.wp5ch-board-list-head-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) 120px 110px 120px;
    align-items:center;
}
.wp5ch-board-head-cell{
    min-height:54px;
    display:flex;
    align-items:center;
    box-sizing:border-box;
    padding:0 18px;
    font-size:14px;
    line-height:1.4;
    border-left:1px solid #eef0f3;
}
.wp5ch-board-list-head-grid > :first-child{
    border-left:0;
}
.wp5ch-board-head-title{
    justify-content:flex-start;
    color:#2d323a;
    font-size:15px;
}
.wp5ch-board-head-sort{
    justify-content:center;
    gap:7px;
    color:#434b57 !important;
    text-decoration:none !important;
    background:#fff;
    transition:background-color .15s ease, color .15s ease;
}
.wp5ch-board-head-sort:hover{
    background:#f7f8fa;
    color:#111827 !important;
}
.wp5ch-board-head-sort.is-active{
    background:#fafbfc;
    color:#20252d !important;
}
.wp5ch-board-head-sort-text{
    display:inline-block;
}
.wp5ch-board-head-sort-arrow{
    width:9px;
    height:9px;
    display:inline-block;
    position:relative;
    top:-1px;
}
.wp5ch-board-head-sort-arrow::before{
    content:"";
    display:block;
    width:6px;
    height:6px;
    border-right:1.5px solid #6b7280;
    border-bottom:1.5px solid #6b7280;
    transform:rotate(45deg);
    margin:0 auto;
}
.wp5ch-board-head-sort.is-active .wp5ch-board-head-sort-arrow::before{
    border-color:#374151;
}
.wp5ch-board-sort,
.wp5ch-board-col-title{
    all:unset;
}
@media(max-width:800px){
    .wp5ch-board-list-head-grid{
        grid-template-columns:minmax(0,1fr) 92px 86px 96px;
    }
    .wp5ch-board-head-cell{
        min-height:46px;
        padding:0 10px;
        font-size:12px;
    }
    .wp5ch-board-head-title{
        font-size:13px;
    }
}
@media(max-width:640px){
    .wp5ch-board-list-head{
        overflow-x:auto;
    }
    .wp5ch-board-list-head-grid{
        min-width:520px;
        grid-template-columns:minmax(180px,1fr) 100px 90px 110px;
    }
    .wp5ch-board-head-cell{
        min-height:44px;
        padding:0 10px;
        font-size:12px;
    }
    .wp5ch-board-head-title{
        font-size:13px;
    }
}


/* v0.1.98: board list header match screenshot more closely */
.wp5ch-board-list{
    overflow:hidden;
}
.wp5ch-board-list-head{
    background:#f5f6f8;
    color:#4b5563;
    padding:0;
    border-bottom:1px solid #e3e5e8;
}
.wp5ch-board-list-head-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) 136px 112px 136px;
    align-items:stretch;
}
.wp5ch-board-head-cell{
    min-height:46px;
    padding:0 18px;
    border-left:1px solid #e3e5e8;
    font-size:14px;
    font-weight:700;
    color:#4b5563;
    background:#f5f6f8;
}
.wp5ch-board-list-head-grid > :first-child{
    border-left:0;
}
.wp5ch-board-head-title{
    justify-content:flex-start;
    color:#303743;
    font-size:14px;
}
.wp5ch-board-head-sort{
    justify-content:center;
    gap:6px;
    color:#4b5563 !important;
    background:#f5f6f8;
    text-decoration:none !important;
    transition:none;
}
.wp5ch-board-head-sort:hover,
.wp5ch-board-head-sort.is-active{
    background:#f5f6f8;
    color:#303743 !important;
}
.wp5ch-board-head-sort-text{
    display:inline-block;
}
.wp5ch-board-head-sort-arrow{
    width:auto;
    height:auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    position:static;
    top:auto;
}
.wp5ch-board-head-sort-arrow::before{
    content:"▼";
    display:block;
    width:auto;
    height:auto;
    margin:0;
    border:0;
    transform:none;
    font-size:9px;
    line-height:1;
    color:#8b93a1;
}
.wp5ch-board-head-sort.is-active .wp5ch-board-head-sort-arrow::before{
    color:#6e7684;
}
@media(max-width:800px){
    .wp5ch-board-list-head-grid{
        grid-template-columns:minmax(0,1fr) 108px 94px 110px;
    }
    .wp5ch-board-head-cell{
        min-height:42px;
        padding:0 12px;
        font-size:12px;
    }
    .wp5ch-board-head-title{
        font-size:13px;
    }
    .wp5ch-board-head-sort-arrow::before{
        font-size:8px;
    }
}
@media(max-width:640px){
    .wp5ch-board-list-head{
        overflow-x:auto;
    }
    .wp5ch-board-list-head-grid{
        min-width:520px;
        grid-template-columns:minmax(180px,1fr) 110px 94px 116px;
    }
    .wp5ch-board-head-cell{
        min-height:42px;
        padding:0 12px;
        font-size:12px;
    }
    .wp5ch-board-head-title{
        font-size:13px;
    }
}


/* v0.1.99: adjust ONLY the thread-list header row to match the reference more closely */
.wp5ch-board-list{
    overflow:visible;
}
.wp5ch-board-list-head{
    background:#f5f6f8;
    border:1px solid #e1e4e8;
    border-bottom:1px solid #e1e4e8;
    border-radius:6px 6px 0 0;
    overflow:hidden;
    box-shadow:none;
}
.wp5ch-board-list-head-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) 150px 110px 150px;
    align-items:stretch;
}
.wp5ch-board-head-cell{
    min-height:46px;
    padding:0 18px;
    background:#f5f6f8;
    color:#4b5563;
    font-size:13px;
    font-weight:700;
    border-left:1px solid #e1e4e8;
    box-sizing:border-box;
}
.wp5ch-board-list-head-grid > :first-child{
    border-left:0;
}
.wp5ch-board-head-title{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    color:#2f3742;
    font-size:14px;
}
.wp5ch-board-head-sort{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    text-align:center;
    color:#4b5563 !important;
    text-decoration:none !important;
    background:#f5f6f8;
    transition:none;
}
.wp5ch-board-head-sort:hover,
.wp5ch-board-head-sort.is-active{
    background:#f5f6f8;
    color:#2f3742 !important;
}
.wp5ch-board-head-sort-arrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:10px;
    height:10px;
}
.wp5ch-board-head-sort-arrow::before{
    content:"";
    width:0;
    height:0;
    border-left:3.5px solid transparent;
    border-right:3.5px solid transparent;
    border-top:5px solid #8b93a1;
    transform:none;
    margin:0;
}
.wp5ch-board-head-sort.is-active .wp5ch-board-head-sort-arrow::before{
    border-top-color:#6f7784;
}

/* header only: keep thread rows untouched */
.wp5ch-board-row,
.wp5ch-board-row-main,
.wp5ch-board-row-side,
.wp5ch-board-row-meta{
    box-shadow:none;
}

@media(max-width:800px){
    .wp5ch-board-list-head-grid{
        grid-template-columns:minmax(0,1fr) 118px 90px 118px;
    }
    .wp5ch-board-head-cell{
        min-height:42px;
        padding:0 12px;
        font-size:12px;
    }
    .wp5ch-board-head-title{
        font-size:13px;
    }
}
@media(max-width:640px){
    .wp5ch-board-list-head{
        overflow-x:auto;
    }
    .wp5ch-board-list-head-grid{
        min-width:520px;
        grid-template-columns:minmax(180px,1fr) 118px 90px 118px;
    }
    .wp5ch-board-head-cell{
        min-height:42px;
        padding:0 12px;
        font-size:12px;
    }
    .wp5ch-board-head-title{
        font-size:13px;
    }
}


/* v0.2.00: make ONLY the thread-list header row closer to the reference */
.wp5ch-board-list-head{
    background:#f5f5f6;
    border:1px solid #dcdfe4;
    border-bottom:1px solid #dcdfe4;
    border-radius:4px 4px 0 0;
    overflow:hidden;
    box-shadow:none;
}
.wp5ch-board-list-head-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) 140px 110px 145px;
    align-items:center;
}
.wp5ch-board-head-cell{
    min-height:48px;
    padding:0 20px;
    background:#f5f5f6;
    color:#303846;
    font-size:13px;
    font-weight:700;
    border-left:0;
    box-sizing:border-box;
}
.wp5ch-board-head-title{
    justify-content:flex-start;
    text-align:left;
    color:#2b3441;
    font-size:14px;
}
.wp5ch-board-head-sort{
    justify-content:flex-end;
    text-align:right;
    gap:6px;
    color:#303846 !important;
    background:#f5f5f6;
    text-decoration:none !important;
}
.wp5ch-board-head-sort:hover,
.wp5ch-board-head-sort.is-active{
    background:#f5f5f6;
    color:#303846 !important;
}
.wp5ch-board-head-sort-text{
    display:inline-block;
}
.wp5ch-board-head-sort-arrow{
    width:10px;
    height:10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.wp5ch-board-head-sort-arrow::before{
    content:"";
    width:0;
    height:0;
    border-left:3px solid transparent;
    border-right:3px solid transparent;
    border-top:5px solid #7e8794;
    margin:0;
}
.wp5ch-board-list-head-grid > :first-child{
    border-left:0;
}

/* keep thread rows untouched; this section only changes the header row */
@media(max-width:800px){
    .wp5ch-board-list-head-grid{
        grid-template-columns:minmax(0,1fr) 110px 88px 114px;
    }
    .wp5ch-board-head-cell{
        min-height:44px;
        padding:0 14px;
        font-size:12px;
    }
    .wp5ch-board-head-title{
        font-size:13px;
    }
}
@media(max-width:640px){
    .wp5ch-board-list-head{
        overflow-x:auto;
    }
    .wp5ch-board-list-head-grid{
        min-width:520px;
        grid-template-columns:minmax(180px,1fr) 110px 88px 114px;
    }
    .wp5ch-board-head-cell{
        min-height:44px;
        padding:0 14px;
        font-size:12px;
    }
}


/* v0.2.01: thread-list HEADER row only - right align sort labels, no inner lines */
.wp5ch-board-list-head{
    background:#f5f5f6 !important;
    border:1px solid #dcdfe4 !important;
    border-radius:4px 4px 0 0 !important;
    overflow:hidden !important;
    box-shadow:none !important;
}
.wp5ch-board-list-head-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 120px 95px 120px !important;
    align-items:center !important;
}
.wp5ch-board-head-cell{
    min-height:48px !important;
    padding:0 20px !important;
    background:#f5f5f6 !important;
    color:#2f3742 !important;
    font-size:13px !important;
    font-weight:700 !important;
    border-left:0 !important;
    box-sizing:border-box !important;
}
.wp5ch-board-head-title{
    justify-content:flex-start !important;
    text-align:left !important;
}
.wp5ch-board-head-sort{
    justify-content:flex-end !important;
    justify-self:stretch !important;
    text-align:right !important;
    gap:6px !important;
    color:#2f3742 !important;
    background:#f5f5f6 !important;
    text-decoration:none !important;
    padding-left:8px !important;
    padding-right:20px !important;
}
.wp5ch-board-head-sort:hover,
.wp5ch-board-head-sort.is-active{
    background:#f5f5f6 !important;
    color:#2f3742 !important;
}
.wp5ch-board-head-sort-text{
    display:inline-block !important;
}
.wp5ch-board-head-sort-arrow{
    width:10px !important;
    height:10px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 10px !important;
}
.wp5ch-board-head-sort-arrow::before{
    content:"" !important;
    width:0 !important;
    height:0 !important;
    border-left:3px solid transparent !important;
    border-right:3px solid transparent !important;
    border-top:5px solid #7e8794 !important;
    margin:0 !important;
}
.wp5ch-board-list-head-grid > :first-child{
    border-left:0 !important;
}
@media(max-width:800px){
    .wp5ch-board-list-head-grid{
        grid-template-columns:minmax(0,1fr) 96px 82px 100px !important;
    }
    .wp5ch-board-head-cell{
        min-height:44px !important;
        padding:0 14px !important;
        font-size:12px !important;
    }
    .wp5ch-board-head-sort{
        padding-right:14px !important;
    }
}
@media(max-width:640px){
    .wp5ch-board-list-head{
        overflow-x:auto !important;
    }
    .wp5ch-board-list-head-grid{
        min-width:500px !important;
        grid-template-columns:minmax(180px,1fr) 96px 82px 100px !important;
    }
    .wp5ch-board-head-cell{
        min-height:44px !important;
        padding:0 14px !important;
        font-size:12px !important;
    }
}


/* v0.2.02: fix thread-list header alignment and remove double frame */
.wp5ch-board-list{
    border:1px solid #dcdfe4 !important;
    border-radius:4px !important;
    overflow:hidden !important;
    background:#fff !important;
}
.wp5ch-board-list-head{
    background:#f5f5f6 !important;
    border:0 !important;
    border-bottom:1px solid #dcdfe4 !important;
    border-radius:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    box-shadow:none !important;
}
.wp5ch-board-list-head-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 140px 110px 140px !important;
    align-items:stretch !important;
    width:100% !important;
}
.wp5ch-board-head-cell{
    display:flex !important;
    align-items:center !important;
    min-height:48px !important;
    padding:0 18px !important;
    background:#f5f5f6 !important;
    color:#2f3742 !important;
    font-size:13px !important;
    font-weight:700 !important;
    border:0 !important;
    box-sizing:border-box !important;
    width:100% !important;
}
.wp5ch-board-head-title{
    justify-content:flex-start !important;
    text-align:left !important;
}
.wp5ch-board-head-sort{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    justify-self:stretch !important;
    width:100% !important;
    text-align:right !important;
    gap:6px !important;
    color:#2f3742 !important;
    background:#f5f5f6 !important;
    text-decoration:none !important;
    padding-left:8px !important;
    padding-right:18px !important;
}
.wp5ch-board-head-sort:hover,
.wp5ch-board-head-sort.is-active{
    background:#f5f5f6 !important;
    color:#2f3742 !important;
}
.wp5ch-board-head-sort-text{
    display:inline-block !important;
    text-align:right !important;
}
.wp5ch-board-head-sort-arrow{
    width:10px !important;
    height:10px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 10px !important;
}
.wp5ch-board-head-sort-arrow::before{
    content:"" !important;
    width:0 !important;
    height:0 !important;
    border-left:3px solid transparent !important;
    border-right:3px solid transparent !important;
    border-top:5px solid #7e8794 !important;
    margin:0 !important;
}
.wp5ch-board-list-head-grid > :first-child{
    border-left:0 !important;
}
@media(max-width:800px){
    .wp5ch-board-list-head-grid{
        grid-template-columns:minmax(0,1fr) 104px 88px 108px !important;
    }
    .wp5ch-board-head-cell{
        min-height:44px !important;
        padding:0 12px !important;
        font-size:12px !important;
    }
    .wp5ch-board-head-sort{
        padding-right:12px !important;
    }
}
@media(max-width:640px){
    .wp5ch-board-list-head{
        overflow-x:auto !important;
    }
    .wp5ch-board-list-head-grid{
        min-width:500px !important;
        grid-template-columns:minmax(180px,1fr) 104px 88px 108px !important;
    }
}

/* v0.2.03: thread row hover light blue + title size adjustment */
.wp5ch-board-row:hover{
    background:#eef8ff !important;
}
.wp5ch-board-row:hover .wp5ch-board-row-title{
    color:#e02020 !important;
}
.wp5ch-board-row-title{
    font-size:14px !important;
    line-height:1.45 !important;
}
@media(max-width:640px){
    .wp5ch-board-row-title{
        font-size:13px !important;
        line-height:1.45 !important;
    }
}


/* v0.2.04: prevent mobile title/date overlap in thread list */
@media(max-width:640px){
    .wp5ch-board-row{
        grid-template-columns:minmax(0,1fr) 104px !important;
        align-items:start !important;
        gap:10px !important;
    }
    .wp5ch-board-row-main{
        min-width:0 !important;
    }
    .wp5ch-board-row-titleline{
        display:block !important;
    }
    .wp5ch-board-row-title{
        display:block !important;
        font-size:13px !important;
        line-height:1.55 !important;
        white-space:normal !important;
        word-break:break-word !important;
        overflow-wrap:anywhere !important;
    }
    .wp5ch-board-row-side{
        min-width:104px !important;
        width:104px !important;
        align-items:flex-end !important;
        justify-content:flex-start !important;
        white-space:nowrap !important;
    }
    .wp5ch-board-last{
        display:block !important;
        width:100% !important;
        text-align:right !important;
        line-height:1.45 !important;
    }
}


/* v0.2.05: mobile thread title ellipsis (counting NEW/急上昇 labels too) */
@media(max-width:640px){
    .wp5ch-board-row-titleline{
        display:-webkit-box !important;
        -webkit-box-orient:vertical !important;
        -webkit-line-clamp:2 !important;
        overflow:hidden !important;
        line-height:1.55 !important;
        max-height:calc(1.55em * 2) !important;
        word-break:break-word !important;
        overflow-wrap:anywhere !important;
        white-space:normal !important;
    }
    .wp5ch-thread-label{
        display:inline-block !important;
        vertical-align:baseline !important;
        margin-right:5px !important;
        margin-bottom:2px !important;
    }
    .wp5ch-board-row-title{
        display:inline !important;
        font-size:13px !important;
        line-height:1.55 !important;
        white-space:normal !important;
        word-break:break-word !important;
        overflow-wrap:anywhere !important;
    }
}


/* v0.2.06: board sort pulldown like reference */
.wp5ch-board-list-head-grid{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:16px !important;
    width:100% !important;
    min-width:0 !important;
    grid-template-columns:none !important;
}
.wp5ch-board-head-title{
    flex:1 1 auto !important;
    min-width:0 !important;
    padding-right:8px !important;
}
.wp5ch-board-head-sortcontrol{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:10px !important;
    flex:0 0 auto !important;
    min-width:auto !important;
}
.wp5ch-board-sort-label{
    font-size:13px !important;
    font-weight:700 !important;
    color:#4b5563 !important;
    white-space:nowrap !important;
}
.wp5ch-board-sort-select{
    appearance:auto;
    -webkit-appearance:menulist;
    min-width:120px;
    height:36px;
    padding:0 34px 0 12px;
    border:1px solid #d6d9de;
    border-radius:6px;
    background:#fff;
    color:#2f3742;
    font-size:13px;
    font-weight:600;
    line-height:34px;
    box-sizing:border-box;
}
.wp5ch-board-sort-select:focus{
    outline:none;
    border-color:#b9c1cc;
    box-shadow:0 0 0 2px rgba(185,193,204,.18);
}
@media(max-width:640px){
    .wp5ch-board-list-head-grid{
        display:flex !important;
        min-width:0 !important;
        flex-wrap:nowrap !important;
    }
    .wp5ch-board-head-cell{
        min-height:44px !important;
        padding:0 12px !important;
    }
    .wp5ch-board-sort-label{
        font-size:12px !important;
    }
    .wp5ch-board-sort-select{
        min-width:108px;
        height:34px;
        font-size:12px;
        padding:0 28px 0 10px;
    }
}


/* v0.2.07: fix broken thread-list layout after pulldown sort */
.wp5ch-board-list{
    display:block !important;
    width:100% !important;
    box-sizing:border-box !important;
}
.wp5ch-board-list-head{
    display:block !important;
}
.wp5ch-board-list-head-grid{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    width:100% !important;
    box-sizing:border-box !important;
}
.wp5ch-board-row{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    width:100% !important;
    box-sizing:border-box !important;
    float:none !important;
    clear:both !important;
}
.wp5ch-board-row-main{
    display:block !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    width:auto !important;
    max-width:none !important;
    float:none !important;
    clear:none !important;
}
.wp5ch-board-row-titleline{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    white-space:normal !important;
    writing-mode:horizontal-tb !important;
    text-orientation:mixed !important;
}
.wp5ch-board-row-title{
    display:inline !important;
    writing-mode:horizontal-tb !important;
    text-orientation:mixed !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
}
.wp5ch-board-row-side{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    justify-content:center !important;
    flex:0 0 116px !important;
    width:116px !important;
    min-width:116px !important;
    max-width:116px !important;
    float:none !important;
    clear:none !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
}
.wp5ch-board-count,
.wp5ch-board-last{
    writing-mode:horizontal-tb !important;
    text-orientation:mixed !important;
}

/* mobile: title is ellipsis, not vertical columns */
@media(max-width:640px){
    .wp5ch-board-list-head{
        overflow:visible !important;
    }
    .wp5ch-board-list-head-grid{
        min-width:0 !important;
    }
    .wp5ch-board-row{
        display:flex !important;
        flex-direction:row !important;
        align-items:center !important;
        gap:10px !important;
    }
    .wp5ch-board-row-main{
        flex:1 1 auto !important;
        min-width:0 !important;
    }
    .wp5ch-board-row-side{
        flex:0 0 102px !important;
        width:102px !important;
        min-width:102px !important;
        max-width:102px !important;
    }
    .wp5ch-board-row-titleline{
        display:-webkit-box !important;
        -webkit-box-orient:vertical !important;
        -webkit-line-clamp:2 !important;
        overflow:hidden !important;
        max-height:calc(1.55em * 2) !important;
        line-height:1.55 !important;
        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:anywhere !important;
    }
    .wp5ch-board-row-title{
        display:inline !important;
        font-size:13px !important;
        line-height:1.55 !important;
        white-space:normal !important;
        word-break:normal !important;
        overflow-wrap:anywhere !important;
    }
}


/* v0.2.08: keep only the header gray, rows white, and fix horizontal header title */
.wp5ch-board-list{
    background:#ffffff !important;
}
.wp5ch-board-list-head{
    background:#f5f5f6 !important;
}
.wp5ch-board-list-head-grid{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:16px !important;
    width:100% !important;
}
.wp5ch-board-head-title{
    display:flex !important;
    align-items:center !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    white-space:nowrap !important;
    writing-mode:horizontal-tb !important;
    text-orientation:mixed !important;
    overflow:hidden !important;
}
.wp5ch-board-head-sortcontrol{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    flex:0 0 auto !important;
    white-space:nowrap !important;
}
.wp5ch-board-row,
.wp5ch-board-row-main,
.wp5ch-board-row-side{
    background:#ffffff !important;
}
.wp5ch-board-row:hover,
.wp5ch-board-row:hover .wp5ch-board-row-main,
.wp5ch-board-row:hover .wp5ch-board-row-side{
    background:#eef8ff !important;
}
@media(max-width:640px){
    .wp5ch-board-head-title{
        white-space:nowrap !important;
        font-size:13px !important;
    }
    .wp5ch-board-head-sortcontrol{
        gap:8px !important;
    }
}


/* v0.2.09: fix sort pulldown width / keep header compact */
.wp5ch-board-list-head-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:12px !important;
    width:100% !important;
}
.wp5ch-board-head-title{
    grid-column:1 !important;
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    padding-right:6px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    writing-mode:horizontal-tb !important;
    text-orientation:mixed !important;
}
.wp5ch-board-head-sortcontrol{
    grid-column:2 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;
    width:auto !important;
    min-width:auto !important;
    max-width:none !important;
    white-space:nowrap !important;
    flex:none !important;
}
.wp5ch-board-sort-label{
    flex:0 0 auto !important;
}
.wp5ch-board-sort-select{
    width:118px !important;
    min-width:118px !important;
    max-width:118px !important;
    flex:0 0 118px !important;
    display:block !important;
}
@media(max-width:640px){
    .wp5ch-board-list-head-grid{
        grid-template-columns:minmax(0,1fr) auto !important;
        gap:8px !important;
    }
    .wp5ch-board-head-title{
        font-size:13px !important;
    }
    .wp5ch-board-sort-label{
        font-size:12px !important;
    }
    .wp5ch-board-sort-select{
        width:106px !important;
        min-width:106px !important;
        max-width:106px !important;
        flex:0 0 106px !important;
        height:34px !important;
    }
}


/* v0.2.10: align header title vertically and keep sort select stable */
.wp5ch-board-list-head{
    padding:0 !important;
}
.wp5ch-board-list-head-grid{
    min-height:48px !important;
    align-items:center !important;
}
.wp5ch-board-head-title{
    display:flex !important;
    align-items:center !important;
    align-self:center !important;
    min-height:48px !important;
    line-height:1.2 !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    margin:0 !important;
}
.wp5ch-board-head-sortcontrol{
    display:flex !important;
    align-items:center !important;
    align-self:center !important;
    min-height:48px !important;
    margin:0 !important;
}
.wp5ch-board-sort-select{
    vertical-align:middle !important;
}
@media(max-width:640px){
    .wp5ch-board-list-head-grid{
        min-height:44px !important;
    }
    .wp5ch-board-head-title,
    .wp5ch-board-head-sortcontrol{
        min-height:44px !important;
    }
}


/* v0.2.12: custom sort dropdown to avoid native mobile picker buttons */
.wp5ch-board-sortbox{
    position:relative;
    display:flex;
    align-items:center;
    gap:8px;
}
.wp5ch-board-sort-trigger{
    appearance:none;
    -webkit-appearance:none;
    border:1px solid #d6d9de;
    background:#fff;
    color:#2f3742;
    border-radius:6px;
    min-width:118px;
    height:36px;
    padding:0 34px 0 12px;
    font-size:13px;
    font-weight:600;
    line-height:34px;
    text-align:left;
    position:relative;
    cursor:pointer;
}
.wp5ch-board-sort-trigger-text{
    display:block;
    white-space:nowrap;
}
.wp5ch-board-sort-trigger-arrow{
    position:absolute;
    right:12px;
    top:50%;
    width:0;
    height:0;
    margin-top:-2px;
    border-left:5px solid transparent;
    border-right:5px solid transparent;
    border-top:6px solid #6b7280;
}
.wp5ch-board-sortbox.is-open .wp5ch-board-sort-trigger{
    border-color:#b9c1cc;
    box-shadow:0 0 0 2px rgba(185,193,204,.18);
}
.wp5ch-board-sort-menu{
    position:absolute;
    top:calc(100% + 6px);
    right:0;
    z-index:50;
    min-width:118px;
    background:#fff;
    border:1px solid #d6d9de;
    border-radius:8px;
    box-shadow:0 10px 30px rgba(0,0,0,.12);
    overflow:hidden;
}
.wp5ch-board-sort-option{
    display:block;
    width:100%;
    padding:10px 12px;
    border:0;
    background:#fff;
    color:#2f3742;
    font-size:13px;
    line-height:1.4;
    text-align:left;
    cursor:pointer;
}
.wp5ch-board-sort-option:hover,
.wp5ch-board-sort-option:focus{
    background:#f6f8fb;
}
.wp5ch-board-sort-option.is-active{
    background:#eef5ff;
    font-weight:700;
}
.wp5ch-board-sort-select{display:none !important;}

@media(max-width:640px){
    .wp5ch-board-sortbox{
        gap:6px;
    }
    .wp5ch-board-sort-trigger{
        min-width:106px;
        width:106px;
        height:34px;
        padding:0 28px 0 10px;
        font-size:12px;
        line-height:32px;
    }
    .wp5ch-board-sort-trigger-arrow{
        right:10px;
    }
    .wp5ch-board-sort-menu{
        min-width:106px;
    }
    .wp5ch-board-sort-option{
        font-size:12px;
        padding:9px 10px;
    }
}


/* v0.2.13: make only the opened mobile dropdown menu larger */
@media(max-width:640px){
    .wp5ch-board-sort-menu{
        min-width:180px !important;
        width:180px !important;
        right:0 !important;
        border-radius:10px !important;
    }
    .wp5ch-board-sort-option{
        font-size:15px !important;
        padding:14px 16px !important;
        line-height:1.45 !important;
    }
}


/* v0.2.14: per-browser new comment badges */
.wp5ch-board-new-badge{
    display:inline-flex;
    align-items:center;
    margin-left:8px;
    padding:2px 7px;
    border:1px solid #ff8a8a;
    border-radius:999px;
    color:#e60012;
    background:#fff7f7;
    font-size:12px;
    font-weight:700;
    line-height:1.2;
    vertical-align:middle;
}
.wp5ch-new-jump{
    display:block;
    width:100%;
    margin:8px 0 12px;
    padding:5px 12px;
    border:1px solid #ff8a8a;
    border-radius:999px;
    background:#fff;
    color:#e60012;
    font-size:13px;
    font-weight:700;
    line-height:1.35;
    text-align:center;
    cursor:pointer;
}
.wp5ch-new-jump:hover{
    background:#fff7f7;
}
.wp5ch-new-divider{
    display:block;
    width:100%;
    margin:14px 0 12px;
    padding:4px 12px;
    border:1px solid #ff8a8a;
    border-radius:999px;
    background:#fff;
    color:#e60012;
    font-size:13px;
    font-weight:700;
    line-height:1.35;
    text-align:center;
    box-sizing:border-box;
}
@media(max-width:640px){
    .wp5ch-board-new-badge{
        margin-left:6px;
        padding:1px 6px;
        font-size:11px;
    }
    .wp5ch-new-jump,
    .wp5ch-new-divider{
        font-size:12px;
        padding:4px 10px;
    }
}


/* v0.2.19: temporarily show new replies at bottom in tree view */
.wp5ch-new-reply-bottom-box{
    display:block;
    width:100%;
    box-sizing:border-box;
    margin-top:10px;
}
.wp5ch-new-reply-bottom-box > .wp5ch-res{
    margin-left:0 !important;
}


/* v0.2.20: make the whole thread-list row clickable */
.wp5ch-board-row[data-wp5ch-row-url]{
    cursor:pointer !important;
}
.wp5ch-board-row[data-wp5ch-row-url] .wp5ch-board-row-main,
.wp5ch-board-row[data-wp5ch-row-url] .wp5ch-board-row-side{
    pointer-events:none;
}
.wp5ch-board-row[data-wp5ch-row-url] a,
.wp5ch-board-row[data-wp5ch-row-url] button,
.wp5ch-board-row[data-wp5ch-row-url] input,
.wp5ch-board-row[data-wp5ch-row-url] select,
.wp5ch-board-row[data-wp5ch-row-url] textarea,
.wp5ch-board-row[data-wp5ch-row-url] label{
    pointer-events:auto;
}


/* v0.2.21: thread-list row click jumps to BBS thread/breadcrumb area */
.wp5ch-thread-anchor{
    display:block;
    position:relative;
    top:-10px;
    height:0;
    overflow:hidden;
}


/* v0.2.22: switch tree/flat view without full page reload */
.wp5ch-thread.is-wp5ch-switching{
    opacity:.65;
    pointer-events:none;
}
.wp5ch-thread-view-link{
    cursor:pointer;
}


/* v0.2.23: place new-comment jump button above response #1 */
.wp5ch-new-jump{
    margin:12px 0 10px !important;
}


/* v0.2.24: place board new badge beside comment count */
.wp5ch-board-row-side .wp5ch-board-new-badge{
    margin-left:0 !important;
    margin-right:6px !important;
    margin-bottom:3px !important;
    align-self:flex-end !important;
    white-space:nowrap !important;
}
@media(max-width:640px){
    .wp5ch-board-row-side .wp5ch-board-new-badge{
        margin-right:4px !important;
        margin-bottom:2px !important;
        font-size:10px !important;
        padding:1px 5px !important;
    }
}


/* v0.2.25: put board new badge horizontally to the left of comment count */
.wp5ch-board-row-side:has(.wp5ch-board-new-badge){
    display:grid !important;
    grid-template-columns:auto auto !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    justify-content:end !important;
    column-gap:6px !important;
    row-gap:2px !important;
}
.wp5ch-board-row-side:has(.wp5ch-board-new-badge) .wp5ch-board-new-badge{
    grid-column:1 !important;
    grid-row:1 !important;
    margin:0 !important;
    align-self:center !important;
    justify-self:end !important;
    white-space:nowrap !important;
}
.wp5ch-board-row-side:has(.wp5ch-board-new-badge) .wp5ch-board-count{
    grid-column:2 !important;
    grid-row:1 !important;
    justify-self:end !important;
}
.wp5ch-board-row-side:has(.wp5ch-board-new-badge) .wp5ch-board-last{
    grid-column:1 / 3 !important;
    grid-row:2 !important;
    justify-self:end !important;
}
@media(max-width:640px){
    .wp5ch-board-row-side:has(.wp5ch-board-new-badge){
        column-gap:4px !important;
    }
}


/* v0.2.26: admin report list controls */
.wp5ch-admin-reports .wp5ch-report-count-col{
    width:80px;
}
.wp5ch-admin-reports .wp5ch-report-last-col{
    width:150px;
}
.wp5ch-admin-reports .wp5ch-report-actions{
    width:180px;
}
.wp5ch-admin-reports .wp5ch-report-actions .button{
    margin:0 4px 4px 0;
}


/* v0.2.29: keep BBS comment status tabs inside BBS comments screen */
.wp5ch-admin-list-note{
    margin-left:8px;
}




/* v0.2.42: 吹き出しの外側だけ色変更、内側の「・・・」は白抜き */
.wp5ch-board-home .wp5ch-board-badge-icon{
    color:var(--wp5ch-board-accent-color,#ef2d2d) !important;
}
.wp5ch-board-home .wp5ch-board-badge-icon svg{
    color:var(--wp5ch-board-accent-color,#ef2d2d) !important;
}
.wp5ch-board-home .wp5ch-board-badge-icon svg path,
.wp5ch-board-home .wp5ch-board-badge-icon svg rect{
    stroke:var(--wp5ch-board-accent-color,#ef2d2d) !important;
}
.wp5ch-board-home .wp5ch-board-badge-icon svg circle{
    fill:#fff !important;
    stroke:#fff !important;
}


/* v0.2.43: 吹き出しアイコンの「・・・」を白で確実に表示 */
.wp5ch-board-home .wp5ch-board-badge-icon svg .wp5ch-board-bubble-fill{
    fill:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    stroke:var(--wp5ch-board-accent-color,#ef2d2d) !important;
}
.wp5ch-board-home .wp5ch-board-badge-icon svg .wp5ch-board-bubble-dot{
    fill:#fff !important;
    stroke:#fff !important;
}


/* v0.2.44: 掲示板アイコンを白抜き吹き出し＋設定色の「・・・」に変更 */
.wp5ch-board-home .wp5ch-board-badge-icon{
    color:var(--wp5ch-board-accent-color,#ef2d2d) !important;
}
.wp5ch-board-home .wp5ch-board-badge-icon svg .wp5ch-board-bubble-fill{
    fill:#fff !important;
    stroke:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    stroke-width:2.2 !important;
}
.wp5ch-board-home .wp5ch-board-badge-icon svg .wp5ch-board-bubble-dot{
    fill:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    stroke:var(--wp5ch-board-accent-color,#ef2d2d) !important;
}


/* v0.2.45: 返信ボタンを白抜き丸角デザインに変更 */
.wp5ch-bbs .wp5ch-reply-anchor-button{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    border:1px solid var(--wp5ch-board-accent-color,#ef2d2d) !important;
    background:#fff !important;
    color:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    border-radius:999px !important;
    padding:3px 9px !important;
    font-size:12px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    cursor:pointer !important;
    box-shadow:none !important;
    text-decoration:none !important;
}
.wp5ch-bbs .wp5ch-reply-anchor-button .fa{
    color:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    font-size:12px !important;
    line-height:1 !important;
}
.wp5ch-bbs .wp5ch-reply-anchor-button:hover{
    background:rgba(239,45,45,.06) !important;
    opacity:.92;
}


/* v0.2.46: 返信フォームの返信先番号表示 */
.wp5ch-bbs .wp5ch-inline-reply-title{
    margin:6px 0 6px;
    font-size:13px;
    font-weight:700;
    color:var(--wp5ch-board-accent-color,#ef2d2d);
}
.wp5ch-bbs .wp5ch-inline-reply-actions{
    display:inline-flex;
    margin-left:8px;
    vertical-align:middle;
}


/* v0.2.47: redesign thread request form */
.wp5ch-thread-form-panel{
    background:transparent;
    border:0;
    padding:0;
}
.wp5ch-thread-form-card{
    background:#fff;
    border:1px solid #e7edf5;
    border-radius:18px;
    box-shadow:0 12px 32px rgba(15,23,42,.06);
    padding:28px 32px;
}
.wp5ch-thread-form-header{
    display:flex;
    align-items:flex-start;
    gap:18px;
}
.wp5ch-thread-form-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:62px;
    height:62px;
    flex:0 0 62px;
    border-radius:50%;
    color:var(--wp5ch-board-accent-color,#ef2d2d);
    background:color-mix(in srgb, var(--wp5ch-board-accent-color,#ef2d2d) 10%, #ffffff);
    box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--wp5ch-board-accent-color,#ef2d2d) 18%, #ffffff);
}
.wp5ch-thread-form-icon svg{
    width:30px;
    height:30px;
    display:block;
}
.wp5ch-thread-form-heading-group{
    min-width:0;
}
.wp5ch-thread-form-title{
    margin:0;
    color:#18243d;
    font-weight:800;
    font-size:clamp(28px,3vw,38px);
    line-height:1.2;
    letter-spacing:-0.02em;
}
.wp5ch-thread-form-lead{
    margin:10px 0 0;
    color:#7b879d;
    font-size:15px;
    line-height:1.7;
}
.wp5ch-thread-form-divider{
    height:1px;
    margin:26px 0 22px;
    background:linear-gradient(90deg, rgba(148,163,184,.45), rgba(148,163,184,.1));
}
.wp5ch-thread-request-form{
    display:block;
}
.wp5ch-thread-form-field{
    margin:0 0 22px;
}
.wp5ch-thread-form-label{
    display:flex !important;
    align-items:center;
    gap:10px;
    margin:0 0 10px !important;
    color:#1d2b46;
    font-weight:700;
    font-size:15px;
    line-height:1.4;
}
.wp5ch-thread-form-required{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:34px;
    padding:3px 9px;
    border-radius:999px;
    background:color-mix(in srgb, var(--wp5ch-board-accent-color,#ef2d2d) 13%, #ffffff);
    color:var(--wp5ch-board-accent-color,#ef2d2d);
    font-size:11px;
    font-weight:700;
    line-height:1.2;
}
.wp5ch-thread-request-form input[type=text],
.wp5ch-thread-request-form select,
.wp5ch-thread-request-form textarea{
    width:100%;
    box-sizing:border-box;
    border:1px solid #d7dfeb;
    border-radius:10px;
    padding:14px 16px;
    background:#fff;
    color:#1d2738;
    font-size:16px;
    line-height:1.5;
    box-shadow:inset 0 1px 2px rgba(15,23,42,.03);
    transition:border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.wp5ch-thread-request-form input[type=text]::placeholder,
.wp5ch-thread-request-form textarea::placeholder{
    color:#9aa5b5;
}
.wp5ch-thread-request-form textarea{
    min-height:190px;
    resize:vertical;
}
.wp5ch-thread-request-form input[type=text]:focus,
.wp5ch-thread-request-form select:focus,
.wp5ch-thread-request-form textarea:focus{
    outline:none;
    border-color:var(--wp5ch-board-accent-color,#ef2d2d);
    box-shadow:0 0 0 4px color-mix(in srgb, var(--wp5ch-board-accent-color,#ef2d2d) 15%, transparent);
}
.wp5ch-thread-request-form select{
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    padding-right:48px;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%2364748b' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 16px center;
    background-size:18px 18px;
}
.wp5ch-thread-form-submit{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-width:172px;
    padding:15px 22px !important;
    border:0;
    border-radius:12px !important;
    background:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    color:#fff !important;
    font-size:16px;
    font-weight:700;
    line-height:1;
    box-shadow:0 12px 26px color-mix(in srgb, var(--wp5ch-board-accent-color,#ef2d2d) 35%, transparent);
    transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.wp5ch-thread-form-submit:hover{
    opacity:1;
    transform:translateY(-1px);
    box-shadow:0 14px 28px color-mix(in srgb, var(--wp5ch-board-accent-color,#ef2d2d) 42%, transparent);
}
.wp5ch-thread-form-submit:active{
    transform:translateY(0);
}
.wp5ch-thread-form-submit-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
    flex:0 0 18px;
}
.wp5ch-thread-form-submit-icon svg{
    display:block;
    width:100%;
    height:100%;
}
@media (max-width: 640px){
    .wp5ch-thread-form-card{
        padding:22px 18px;
        border-radius:16px;
    }
    .wp5ch-thread-form-header{
        gap:14px;
    }
    .wp5ch-thread-form-icon{
        width:52px;
        height:52px;
        flex-basis:52px;
    }
    .wp5ch-thread-form-icon svg{
        width:26px;
        height:26px;
    }
    .wp5ch-thread-form-title{
        font-size:30px;
    }
    .wp5ch-thread-form-lead{
        font-size:14px;
        line-height:1.6;
    }
    .wp5ch-thread-form-divider{
        margin:22px 0 18px;
    }
    .wp5ch-thread-form-field{
        margin-bottom:18px;
    }
    .wp5ch-thread-request-form input[type=text],
    .wp5ch-thread-request-form select,
    .wp5ch-thread-request-form textarea{
        padding:13px 14px;
        font-size:16px;
    }
    .wp5ch-thread-request-form textarea{
        min-height:170px;
    }
    .wp5ch-thread-form-submit{
        width:100%;
        min-width:0;
    }
}


/* v0.2.47: thread request form fine tuning */
.wp5ch-thread-form-icon{
    width:46px;
    height:46px;
    flex-basis:46px;
}
.wp5ch-thread-form-icon svg{
    width:23px;
    height:23px;
}
.wp5ch-thread-form-title{
    font-size:clamp(22px,2.4vw,30px);
}
.wp5ch-thread-request-form textarea{
    min-height:130px;
}
@media (max-width: 640px){
    .wp5ch-thread-form-icon{
        width:42px;
        height:42px;
        flex-basis:42px;
    }
    .wp5ch-thread-form-icon svg{
        width:21px;
        height:21px;
    }
    .wp5ch-thread-form-title{
        font-size:24px;
    }
    .wp5ch-thread-request-form textarea{
        min-height:120px;
    }
}


/* v0.2.48: make thread request heading/icon and textarea more compact */
.wp5ch-thread-form-icon{
    width:38px;
    height:38px;
    flex-basis:38px;
}
.wp5ch-thread-form-icon svg{
    width:19px;
    height:19px;
}
.wp5ch-thread-form-title{
    font-size:clamp(18px,2vw,24px);
}
.wp5ch-thread-form-header{
    gap:12px;
}
.wp5ch-thread-form-lead{
    margin-top:6px;
    font-size:14px;
}
.wp5ch-thread-form-divider{
    margin:20px 0 18px;
}
.wp5ch-thread-request-form textarea{
    min-height:100px;
}
@media (max-width: 640px){
    .wp5ch-thread-form-icon{
        width:34px;
        height:34px;
        flex-basis:34px;
    }
    .wp5ch-thread-form-icon svg{
        width:17px;
        height:17px;
    }
    .wp5ch-thread-form-title{
        font-size:20px;
    }
    .wp5ch-thread-form-header{
        gap:10px;
    }
    .wp5ch-thread-request-form textarea{
        min-height:96px;
    }
}


/* v0.2.49: compact thread request form and admin memo field */
.wp5ch-thread-form-icon{
    width:30px;
    height:30px;
    flex-basis:30px;
}
.wp5ch-thread-form-icon svg{
    width:16px;
    height:16px;
}
.wp5ch-thread-form-title{
    font-size:clamp(16px,1.7vw,20px);
}
.wp5ch-thread-form-header{
    gap:10px;
}
.wp5ch-thread-form-lead{
    margin-top:4px;
    font-size:13px;
}
.wp5ch-thread-request-form textarea{
    min-height:76px;
}
.wp5ch-thread-request-form textarea.wp5ch-thread-admin-memo{
    min-height:64px;
}
@media (max-width: 640px){
    .wp5ch-thread-form-icon{
        width:28px;
        height:28px;
        flex-basis:28px;
    }
    .wp5ch-thread-form-icon svg{
        width:15px;
        height:15px;
    }
    .wp5ch-thread-form-title{
        font-size:18px;
    }
    .wp5ch-thread-request-form textarea{
        min-height:72px;
    }
    .wp5ch-thread-request-form textarea.wp5ch-thread-admin-memo{
        min-height:60px;
    }
}


/* v0.2.50: board list floating button above write button */
.wp5ch-floating-board-button{
    position:fixed;
    left:206px !important;
    bottom:170px !important;
    z-index:9998;
    width:68px !important;
    height:68px !important;
    padding:0 !important;
    border-radius:50% !important;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:3px;
    background:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    color:#fff !important;
    text-decoration:none !important;
    font-weight:700;
    box-shadow:0 8px 22px rgba(0,0,0,.18);
}
.wp5ch-floating-board-button:hover{
    opacity:.95;
    transform:translateY(-1px);
    color:#fff !important;
    text-decoration:none !important;
}
.wp5ch-floating-board-button .wp5ch-floating-board-icon{
    display:block;
    font-size:18px;
    line-height:1;
}
.wp5ch-floating-board-button .wp5ch-floating-board-label{
    display:block;
    font-size:10px;
    line-height:1.1;
    letter-spacing:.02em;
}
@media(max-width:1200px){
    .wp5ch-floating-board-button{
        left:156px !important;
        bottom:164px !important;
        width:64px !important;
        height:64px !important;
    }
}
@media(max-width:640px){
    .wp5ch-floating-board-button{
        display:none !important;
    }
}


/* v0.2.53: thread favorite ribbon button */
.wp5ch-board-row-link{
    color:inherit;
    text-decoration:none !important;
}
.wp5ch-board-row-link:hover .wp5ch-board-row-title{
    text-decoration:underline;
}
.wp5ch-board-row-meta{
    display:flex;
    align-items:center;
    gap:7px;
    margin-top:3px;
}
.wp5ch-thread-favorite-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:22px;
    padding:0;
    border:0;
    background:transparent;
    color:#9aa3b2;
    cursor:pointer;
    line-height:1;
    flex:0 0 auto;
}
.wp5ch-thread-favorite-button:hover,
.wp5ch-thread-favorite-button.is-favorite{
    color:var(--wp5ch-board-accent-color,#ef2d2d);
}
.wp5ch-favorite-ribbon,
.wp5ch-favorite-ribbon svg{
    display:block;
    width:18px;
    height:22px;
}
.wp5ch-board-row.is-favorite{
    background:linear-gradient(90deg, color-mix(in srgb, var(--wp5ch-board-accent-color,#ef2d2d) 6%, #ffffff), #ffffff 34%);
}
.wp5ch-board-row-heat-meta{
    margin-top:0;
}
@media(max-width:640px){
    .wp5ch-board-row-meta{
        gap:6px;
        margin-top:3px;
    }
    .wp5ch-thread-favorite-button{
        width:17px;
        height:21px;
    }
    .wp5ch-favorite-ribbon,
    .wp5ch-favorite-ribbon svg{
        width:17px;
        height:21px;
    }
}


/* v0.2.54: favorite button position/fixed red and reliable row layout */
.wp5ch-board-row-side{
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
}
.wp5ch-board-row-side-text{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:2px;
    min-width:0;
}
.wp5ch-thread-favorite-button{
    width:20px;
    height:26px;
    flex:0 0 20px;
}
.wp5ch-favorite-ribbon,
.wp5ch-favorite-ribbon svg{
    width:20px;
    height:26px;
}
.wp5ch-thread-favorite-button.is-favorite{
    color:#e60023 !important;
}
.wp5ch-thread-favorite-button.is-favorite:hover{
    color:#e60023 !important;
}
.wp5ch-thread-favorite-button:hover:not(.is-favorite){
    color:#9aa3b2;
}
@media(max-width:640px){
    .wp5ch-board-row-side{
        gap:6px;
    }
    .wp5ch-thread-favorite-button{
        width:18px;
        height:23px;
        flex-basis:18px;
    }
    .wp5ch-favorite-ribbon,
    .wp5ch-favorite-ribbon svg{
        width:18px;
        height:23px;
    }
}


/* v0.2.55: favorite button placement/alignment fix */
.wp5ch-board-row-side{
    align-items:flex-start;
    gap:10px;
}
.wp5ch-board-row-side-text{
    padding-top:1px;
}
.wp5ch-thread-favorite-button{
    align-self:flex-start;
    margin-top:1px;
    width:18px;
    height:24px;
    flex:0 0 18px;
}
.wp5ch-favorite-ribbon,
.wp5ch-favorite-ribbon svg{
    width:18px;
    height:24px;
}
@media(max-width:640px){
    .wp5ch-board-row-side{
        gap:7px;
    }
    .wp5ch-thread-favorite-button{
        margin-top:0;
        width:17px;
        height:22px;
        flex-basis:17px;
    }
    .wp5ch-favorite-ribbon,
    .wp5ch-favorite-ribbon svg{
        width:17px;
        height:22px;
    }
}


/* v0.2.56: favorite button grid placement + dropdown safety */
.wp5ch-board-row-side{
    display:grid !important;
    grid-template-columns:auto 20px !important;
    grid-template-rows:auto auto !important;
    align-items:start !important;
    justify-content:end !important;
    justify-items:end !important;
    column-gap:8px !important;
    row-gap:2px !important;
    overflow:visible !important;
}
.wp5ch-board-row-side .wp5ch-board-count{
    grid-column:1 !important;
    grid-row:1 !important;
}
.wp5ch-board-row-side .wp5ch-board-last{
    grid-column:1 !important;
    grid-row:2 !important;
}
.wp5ch-board-row-side .wp5ch-thread-favorite-button{
    grid-column:2 !important;
    grid-row:1 / 3 !important;
    align-self:start !important;
    justify-self:end !important;
    margin:0 !important;
    width:18px !important;
    height:24px !important;
    flex:0 0 18px !important;
    pointer-events:auto !important;
}
.wp5ch-board-row-side .wp5ch-favorite-ribbon,
.wp5ch-board-row-side .wp5ch-favorite-ribbon svg{
    width:18px !important;
    height:24px !important;
}
.wp5ch-thread-favorite-button.is-favorite{
    color:#e60023 !important;
}
.wp5ch-board-sortbox,
.wp5ch-board-sort-trigger,
.wp5ch-board-sort-menu,
.wp5ch-board-sort-option{
    pointer-events:auto !important;
}
@media(max-width:640px){
    .wp5ch-board-row-side{
        grid-template-columns:auto 18px !important;
        column-gap:6px !important;
    }
    .wp5ch-board-row-side .wp5ch-thread-favorite-button{
        width:17px !important;
        height:22px !important;
        flex-basis:17px !important;
    }
    .wp5ch-board-row-side .wp5ch-favorite-ribbon,
    .wp5ch-board-row-side .wp5ch-favorite-ribbon svg{
        width:17px !important;
        height:22px !important;
    }
}


/* v0.2.57: make PC sort dropdown visible outside header/list */
.wp5ch-board-list,
.wp5ch-board-list-head,
.wp5ch-board-list-head-grid,
.wp5ch-board-head-sortcontrol,
.wp5ch-board-sortbox{
    overflow:visible !important;
}
.wp5ch-board-list-head{
    position:relative !important;
    z-index:30 !important;
}
.wp5ch-board-head-sortcontrol{
    position:relative !important;
    z-index:40 !important;
}
.wp5ch-board-sortbox{
    position:relative !important;
    z-index:50 !important;
}
.wp5ch-board-sort-menu{
    z-index:9999 !important;
}
.wp5ch-board-sort-menu:not([hidden]){
    display:block !important;
}


/* v0.2.58: favorite fill + safe click area + mobile long-press menu */
.wp5ch-board-row-side{
    pointer-events:auto !important;
}
.wp5ch-board-row-side *{
    pointer-events:auto !important;
}
.wp5ch-thread-favorite-button.is-favorite .wp5ch-favorite-ribbon path{
    fill:currentColor !important;
    stroke:currentColor !important;
}
.wp5ch-thread-favorite-button .wp5ch-favorite-ribbon path{
    transition:fill .12s ease, stroke .12s ease, color .12s ease;
}
.wp5ch-longpress-menu-backdrop{
    position:fixed;
    inset:0;
    z-index:999999;
    background:rgba(0,0,0,.05);
}
.wp5ch-longpress-menu{
    position:fixed;
    min-width:150px;
    background:#fff;
    border:1px solid rgba(0,0,0,.12);
    border-radius:12px;
    box-shadow:0 14px 38px rgba(0,0,0,.24);
    overflow:hidden;
    color:#222;
}
.wp5ch-longpress-item{
    display:block;
    width:100%;
    padding:13px 16px;
    border:0;
    border-bottom:1px solid #edf0f4;
    background:#fff;
    color:#222;
    text-align:left;
    font-size:15px;
    line-height:1.2;
    font-weight:700;
}
.wp5ch-longpress-item:last-child{
    border-bottom:0;
}
.wp5ch-longpress-item:active{
    background:#f5f7fa;
}
.wp5ch-longpress-item[disabled]{
    color:#aaa;
    background:#f7f7f7;
}
@media(min-width:641px){
    .wp5ch-longpress-menu-backdrop{
        display:none !important;
    }
}


/* v0.2.59: mobile favorite tap area and long-press highlight/back behavior */
.wp5ch-board-row-side{
    pointer-events:auto !important;
}
.wp5ch-board-row-side .wp5ch-board-count,
.wp5ch-board-row-side .wp5ch-board-last{
    pointer-events:none !important;
}
.wp5ch-board-row-side .wp5ch-thread-favorite-button,
.wp5ch-board-row-side .wp5ch-thread-favorite-button *{
    pointer-events:auto !important;
}
.wp5ch-res.is-longpress-active > .wp5ch-res-self,
.wp5ch-res.is-longpress-active{
    background:#eaf7ff !important;
}
.wp5ch-res.is-longpress-active > .wp5ch-res-self{
    border-radius:8px;
}


/* v0.2.60: long-press highlight only selected response + favorite hover bg */
.wp5ch-res.is-longpress-active{
    background:transparent !important;
}
.wp5ch-res.is-longpress-active > .wp5ch-res-self{
    background:#eaf7ff !important;
    border-radius:8px;
}
.wp5ch-res.is-longpress-active .wp5ch-res:not(.is-longpress-active),
.wp5ch-res.is-longpress-active .wp5ch-res:not(.is-longpress-active) > .wp5ch-res-self{
    background:transparent !important;
}
.wp5ch-thread-favorite-button{
    border-radius:6px;
}
.wp5ch-thread-favorite-button:hover,
.wp5ch-thread-favorite-button:focus-visible{
    background:#e5e7eb !important;
}
.wp5ch-thread-favorite-button.is-favorite:hover,
.wp5ch-thread-favorite-button.is-favorite:focus-visible{
    background:#e5e7eb !important;
    color:#e60023 !important;
}


/* v0.2.61: PC-only favorite hover bg, no row-blue on favorite hover, red report in long-press menu */
.wp5ch-thread-favorite-button:hover,
.wp5ch-thread-favorite-button:focus-visible,
.wp5ch-thread-favorite-button.is-favorite:hover,
.wp5ch-thread-favorite-button.is-favorite:focus-visible{
    background:transparent !important;
}
@media (hover:hover) and (pointer:fine){
    .wp5ch-thread-favorite-button:hover,
    .wp5ch-thread-favorite-button:focus-visible{
        background:#e5e7eb !important;
    }
    .wp5ch-thread-favorite-button.is-favorite:hover,
    .wp5ch-thread-favorite-button.is-favorite:focus-visible{
        background:transparent !important;
        color:#e60023 !important;
    }
}
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover),
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible){
    background:#fff !important;
}
.wp5ch-longpress-item[data-wp5ch-longpress-action="report"]{
    color:#e60023 !important;
}
.wp5ch-longpress-item[data-wp5ch-longpress-action="report"][disabled]{
    color:#b7b7b7 !important;
}


/* v0.2.62: favorite hover row suppression + 3-dot response menu button */
.wp5ch-board-row.is-favorite-button-hover,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-main,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-side,
.wp5ch-board-row.is-favorite-button-hover:hover,
.wp5ch-board-row.is-favorite-button-hover:hover .wp5ch-board-row-main,
.wp5ch-board-row.is-favorite-button-hover:hover .wp5ch-board-row-side,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover),
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-main,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-side,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible),
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-main,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-side{
    background:#fff !important;
}
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-title,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-title,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-title{
    color:#1d2530 !important;
}
.wp5ch-res-more-menu-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:22px;
    height:22px;
    padding:0;
    margin-left:2px;
    border:0;
    border-radius:999px;
    background:transparent;
    color:#606b7a;
    cursor:pointer;
    font-size:18px;
    line-height:1;
    vertical-align:middle;
}
.wp5ch-res-more-menu-button:hover,
.wp5ch-res-more-menu-button:focus-visible{
    background:#e5e7eb;
    color:#111827;
}
.wp5ch-reaction-wrap{
    display:inline-flex;
    align-items:center;
    gap:2px;
}
@media(max-width:640px){
    .wp5ch-res-more-menu-button{
        width:26px;
        height:26px;
        font-size:20px;
        margin-left:3px;
    }
}


/* v0.2.63: PC more-menu visibility, mobile back-close for 3-dot, favorite hover gray only when favorited on PC */
.wp5ch-longpress-menu-backdrop{
    display:block !important;
}
@media (hover:hover) and (pointer:fine){
    .wp5ch-thread-favorite-button.is-favorite:hover,
    .wp5ch-thread-favorite-button.is-favorite:focus-visible{
        background:#e5e7eb !important;
        color:#e60023 !important;
    }
    .wp5ch-board-row.is-favorite-button-hover,
    .wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-main,
    .wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-side,
    .wp5ch-board-row.is-favorite-button-hover:hover,
    .wp5ch-board-row.is-favorite-button-hover:hover .wp5ch-board-row-main,
    .wp5ch-board-row.is-favorite-button-hover:hover .wp5ch-board-row-side,
    .wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover),
    .wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-main,
    .wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-side,
    .wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible),
    .wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-main,
    .wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-side{
        background:#fff !important;
    }
    .wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-title,
    .wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-title,
    .wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-title{
        color:#1d2530 !important;
    }
}


/* v0.2.64: do not jump favorite row immediately; move date beside heat */
.wp5ch-board-row-meta{
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:8px !important;
}
.wp5ch-board-row-last-meta{
    margin-top:0 !important;
    color:#69758d !important;
}
.wp5ch-board-row-side{
    grid-template-columns:auto 20px !important;
    grid-template-rows:auto !important;
    align-items:center !important;
}
.wp5ch-board-row-side .wp5ch-board-count{
    grid-column:1 !important;
    grid-row:1 !important;
}
.wp5ch-board-row-side .wp5ch-thread-favorite-button{
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:center !important;
}
@media(max-width:640px){
    .wp5ch-board-row-meta{
        gap:6px !important;
    }
    .wp5ch-board-row-last-meta{
        font-size:11px !important;
    }
}


/* v0.2.65: comment count under favorite and new badge beside count */
.wp5ch-board-row-side{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    justify-content:center !important;
    gap:4px !important;
    overflow:visible !important;
}
.wp5ch-board-row-side .wp5ch-thread-favorite-button{
    align-self:flex-end !important;
    margin:0 !important;
}
.wp5ch-board-count-line{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
    white-space:nowrap !important;
    line-height:1.2 !important;
}
.wp5ch-board-count-line .wp5ch-board-new-badge{
    order:0 !important;
    margin:0 !important;
    align-self:center !important;
}
.wp5ch-board-count-line .wp5ch-board-count{
    order:1 !important;
}
.wp5ch-board-row-side .wp5ch-board-count{
    grid-column:auto !important;
    grid-row:auto !important;
}
@media(max-width:640px){
    .wp5ch-board-row-side{
        gap:3px !important;
    }
    .wp5ch-board-count-line{
        gap:4px !important;
    }
}


/* v0.2.66: align comment count with heat/date row and simplify category box */
.wp5ch-board-row{
    align-items:stretch !important;
}
.wp5ch-board-row-main{
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
}
.wp5ch-board-row-meta{
    margin-top:4px !important;
    min-height:18px !important;
}
.wp5ch-board-row-side{
    align-self:stretch !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-end !important;
    align-items:flex-end !important;
    gap:5px !important;
    padding-top:0 !important;
    padding-bottom:1px !important;
}
.wp5ch-board-row-side .wp5ch-thread-favorite-button{
    margin-bottom:auto !important;
}
.wp5ch-board-count-line{
    min-height:18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
}
.wp5ch-board-count-line .wp5ch-board-count{
    line-height:18px !important;
}
.wp5ch-board-catbar,
.wp5ch-board-cats,
.wp5ch-board-category,
.wp5ch-board-category-box{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
}
.wp5ch-board-catbar{
    padding:0 !important;
    margin:8px 0 12px !important;
}
@media(max-width:640px){
    .wp5ch-board-row-meta{
        min-height:17px !important;
    }
    .wp5ch-board-count-line{
        min-height:17px !important;
    }
}


/* v0.2.67: fix count/new badge alignment and remove category box frame */
.wp5ch-board-row-side{
    flex:0 0 96px !important;
    width:96px !important;
    min-width:96px !important;
    max-width:96px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 22px !important;
    grid-template-rows:24px 18px !important;
    align-items:start !important;
    justify-content:end !important;
    justify-items:end !important;
    align-self:center !important;
    gap:4px 6px !important;
    padding:0 !important;
    overflow:visible !important;
}
.wp5ch-board-row-side .wp5ch-thread-favorite-button{
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:start !important;
    justify-self:end !important;
    margin:0 !important;
}
.wp5ch-board-count-line{
    grid-column:1 / 3 !important;
    grid-row:2 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    justify-self:end !important;
    width:96px !important;
    min-width:96px !important;
    gap:6px !important;
    white-space:nowrap !important;
    line-height:18px !important;
}
.wp5ch-board-count-line .wp5ch-board-new-badge{
    flex:0 0 auto !important;
    margin:0 !important;
}
.wp5ch-board-count-line .wp5ch-board-count{
    flex:0 0 auto !important;
    min-width:18px !important;
    text-align:right !important;
    line-height:18px !important;
}
.wp5ch-boards{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
    margin:8px 0 14px !important;
}
.wp5ch-boards .wp5ch-board-chip{
    background:#eef5ff !important;
    border:1px solid #cbdcf2 !important;
}
@media(max-width:640px){
    .wp5ch-board-row-side{
        flex-basis:86px !important;
        width:86px !important;
        min-width:86px !important;
        max-width:86px !important;
        grid-template-columns:minmax(0,1fr) 20px !important;
        gap:3px 5px !important;
    }
    .wp5ch-board-count-line{
        width:86px !important;
        min-width:86px !important;
        gap:4px !important;
    }
}


/* v0.2.68: align meta/count line when title wraps, move new badge beside heat */
.wp5ch-board-row{
    align-items:stretch !important;
}
.wp5ch-board-row-main{
    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;
    align-self:stretch !important;
    min-height:0 !important;
}
.wp5ch-board-row-link{
    display:block !important;
}
.wp5ch-board-row-meta{
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:6px !important;
    margin-top:8px !important;
    min-height:18px !important;
}
.wp5ch-board-row-meta .wp5ch-board-new-badge{
    order:0 !important;
    margin:0 !important;
    align-self:center !important;
}
.wp5ch-board-row-heat-meta{
    order:1 !important;
}
.wp5ch-board-row-last-meta{
    order:2 !important;
}
.wp5ch-board-row-side{
    align-self:stretch !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;
    align-items:flex-end !important;
    width:72px !important;
    min-width:72px !important;
    max-width:72px !important;
    flex:0 0 72px !important;
    gap:8px !important;
    padding:0 !important;
}
.wp5ch-board-row-side .wp5ch-thread-favorite-button{
    align-self:flex-end !important;
    margin:0 !important;
}
.wp5ch-board-count-line{
    width:auto !important;
    min-width:0 !important;
    display:flex !important;
    justify-content:flex-end !important;
    align-items:center !important;
    gap:0 !important;
    min-height:18px !important;
    line-height:18px !important;
}
.wp5ch-board-count-line .wp5ch-board-new-badge{
    display:none !important;
}
.wp5ch-board-count-line .wp5ch-board-count{
    min-width:18px !important;
    text-align:right !important;
    line-height:18px !important;
}
@media(max-width:640px){
    .wp5ch-board-row-side{
        width:58px !important;
        min-width:58px !important;
        max-width:58px !important;
        flex-basis:58px !important;
    }
    .wp5ch-board-row-meta{
        gap:5px !important;
        margin-top:7px !important;
    }
}


/* v0.2.69: clickable/category-color chips */
.wp5ch-boards{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
    margin:8px 0 14px !important;
}
.wp5ch-boards strong{
    margin-right:6px;
}
.wp5ch-board-chip{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:var(--wp5ch-chip-bg,#eef5ff) !important;
    color:var(--wp5ch-chip-text,#2f3742) !important;
    border:1px solid color-mix(in srgb, var(--wp5ch-chip-text,#2f3742) 22%, var(--wp5ch-chip-bg,#eef5ff)) !important;
    border-radius:999px !important;
    padding:3px 10px !important;
    margin:2px 4px 2px 0 !important;
    text-decoration:none !important;
    line-height:1.4 !important;
    font-size:13px !important;
    font-weight:600 !important;
    cursor:pointer !important;
}
.wp5ch-board-chip:hover,
.wp5ch-board-chip:focus-visible{
    filter:brightness(.97);
    text-decoration:none !important;
}
.wp5ch-board-chip.is-active{
    box-shadow:0 0 0 2px color-mix(in srgb, var(--wp5ch-chip-text,#2f3742) 20%, transparent) !important;
}
.wp5ch-board-chip-all{
    --wp5ch-chip-bg:#f1f5f9;
    --wp5ch-chip-text:#334155;
}


/* v0.2.70: category chip colors and ajax category switching */
.wp5ch-boards{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
    margin:8px 0 14px !important;
}
.wp5ch-boards .wp5ch-board-chip:not(.wp5ch-board-chip-all){
    background:var(--wp5ch-chip-bg,#eef5ff) !important;
    background-color:var(--wp5ch-chip-bg,#eef5ff) !important;
    color:var(--wp5ch-chip-text,#2f3742) !important;
    border-color:color-mix(in srgb, var(--wp5ch-chip-text,#2f3742) 24%, var(--wp5ch-chip-bg,#eef5ff)) !important;
}
.wp5ch-boards .wp5ch-board-chip{
    text-decoration:none !important;
    cursor:pointer !important;
}
.wp5ch-boards .wp5ch-board-chip.is-active{
    outline:2px solid color-mix(in srgb, currentColor 28%, transparent);
    outline-offset:1px;
}


/* v0.2.71: stronger category color reflection and ajax category filter */
.wp5ch-boards .wp5ch-board-chip:not(.wp5ch-board-chip-all){
    color:var(--wp5ch-chip-text,#2f3742) !important;
    background:var(--wp5ch-chip-bg,#eef5ff) !important;
    background-color:var(--wp5ch-chip-bg,#eef5ff) !important;
}
.wp5ch-boards .wp5ch-board-chip:not(.wp5ch-board-chip-all) span,
.wp5ch-boards .wp5ch-board-chip:not(.wp5ch-board-chip-all) *{
    color:inherit !important;
}


/* v0.2.73: stabilize right-side hover color and make "all" active border blue */
.wp5ch-board-row .wp5ch-board-row-side,
.wp5ch-board-row:hover .wp5ch-board-row-side,
.wp5ch-board-row:hover .wp5ch-board-row-side:hover,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-side,
.wp5ch-board-row.is-favorite-button-hover:hover .wp5ch-board-row-side,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-side,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-side{
    background:#fff !important;
    background-color:#fff !important;
}
.wp5ch-board-row-side .wp5ch-thread-favorite-button,
.wp5ch-board-row-side .wp5ch-board-count-line{
    transition:none !important;
}
.wp5ch-board-chip-all.is-active{
    border-color:#58bde8 !important;
    box-shadow:0 0 0 2px #8fd8f7 !important;
    outline:0 !important;
}


/* v0.2.74: make right-side area use same hover color as thread row */
.wp5ch-board-row:hover .wp5ch-board-row-side,
.wp5ch-board-row:hover .wp5ch-board-row-side:hover{
    background:#eef8ff !important;
    background-color:#eef8ff !important;
}
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-side,
.wp5ch-board-row.is-favorite-button-hover:hover .wp5ch-board-row-side,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-side,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-side{
    background:#eef8ff !important;
    background-color:#eef8ff !important;
}


/* v0.2.75: sync thread row hover color timing */
.wp5ch-board-row,
.wp5ch-board-row-main,
.wp5ch-board-row-side{
    transition:none !important;
}
.wp5ch-board-row-main,
.wp5ch-board-row-side,
.wp5ch-board-row:hover .wp5ch-board-row-main,
.wp5ch-board-row:hover .wp5ch-board-row-side,
.wp5ch-board-row:hover .wp5ch-board-row-side:hover{
    background:transparent !important;
    background-color:transparent !important;
}
.wp5ch-board-row:hover,
.wp5ch-board-row.is-favorite-button-hover:hover,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover):hover,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible):hover{
    background:#eef8ff !important;
    background-color:#eef8ff !important;
}


/* v0.2.76: remove hover white patch near favorite and add board refresh button */
.wp5ch-board-row,
.wp5ch-board-row:hover{
    background:#fff !important;
    background-color:#fff !important;
}
.wp5ch-board-row::before{
    content:"";
    position:absolute;
    inset:0;
    background:transparent;
    opacity:0;
    pointer-events:none;
    z-index:0;
}
.wp5ch-board-row{
    position:relative !important;
}
.wp5ch-board-row:hover::before{
    background:#eef8ff;
    opacity:1;
}
.wp5ch-board-row > *{
    position:relative;
    z-index:1;
    background:transparent !important;
    background-color:transparent !important;
}
.wp5ch-board-row-main,
.wp5ch-board-row-link,
.wp5ch-board-row-titleline,
.wp5ch-board-row-title,
.wp5ch-board-row-meta,
.wp5ch-board-row-side,
.wp5ch-board-count-line{
    background:transparent !important;
    background-color:transparent !important;
}
.wp5ch-board-row.is-favorite-button-hover,
.wp5ch-board-row.is-favorite-button-hover:hover,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover),
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible){
    background:#fff !important;
    background-color:#fff !important;
}
.wp5ch-board-row.is-favorite-button-hover::before,
.wp5ch-board-row.is-favorite-button-hover:hover::before,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover)::before,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible)::before{
    background:#eef8ff !important;
    opacity:1 !important;
}
.wp5ch-board-head-actions{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
}
.wp5ch-board-refresh-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    padding:0;
    border:1px solid #d6e3ee;
    border-radius:999px;
    background:#fff;
    color:var(--wp5ch-board-accent-color,#0095d9);
    cursor:pointer;
    line-height:1;
    font-size:14px;
}
.wp5ch-board-refresh-button:hover,
.wp5ch-board-refresh-button:focus-visible{
    background:#eef8ff;
    border-color:#9bd4ef;
}
.wp5ch-board-list.is-loading{
    opacity:.65;
}
@media(max-width:640px){
    .wp5ch-board-head-actions{
        gap:7px !important;
    }
    .wp5ch-board-refresh-button{
        width:26px;
        height:26px;
        font-size:13px;
    }
}


/* v0.2.77: stronger hover overlay fix for favorite area/title white patch */
.wp5ch-board-row{
    --wp5ch-row-hover-bg:#eef8ff;
    isolation:isolate !important;
    overflow:hidden !important;
}
.wp5ch-board-row::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:transparent !important;
    opacity:0 !important;
    pointer-events:none !important;
    z-index:0 !important;
    transition:none !important;
}
.wp5ch-board-row:hover::before,
.wp5ch-board-row.is-favorite-button-hover::before,
.wp5ch-board-row.is-favorite-button-hover:hover::before,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover)::before,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible)::before{
    background:var(--wp5ch-row-hover-bg) !important;
    opacity:1 !important;
}
.wp5ch-board-row,
.wp5ch-board-row:hover,
.wp5ch-board-row.is-favorite-button-hover,
.wp5ch-board-row.is-favorite-button-hover:hover{
    background:#fff !important;
    background-color:#fff !important;
}
.wp5ch-board-row > *,
.wp5ch-board-row-main,
.wp5ch-board-row-main:hover,
.wp5ch-board-row-link,
.wp5ch-board-row-link:hover,
.wp5ch-board-row-titleline,
.wp5ch-board-row-title,
.wp5ch-board-row-meta,
.wp5ch-board-row-side,
.wp5ch-board-count-line,
.wp5ch-board-row:hover > *,
.wp5ch-board-row:hover .wp5ch-board-row-main,
.wp5ch-board-row:hover .wp5ch-board-row-link,
.wp5ch-board-row:hover .wp5ch-board-row-side,
.wp5ch-board-row.is-favorite-button-hover > *,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-main,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-link,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-side{
    background:transparent !important;
    background-color:transparent !important;
}
.wp5ch-board-row > *{
    position:relative !important;
    z-index:1 !important;
}


/* v0.2.78: mobile title wrap around 25-28 chars + stronger favorite hover white-patch fix */
@media(max-width:640px){
    .wp5ch-board-row-main{
        min-width:0 !important;
    }
    .wp5ch-board-row-titleline{
        max-width:27em !important;
        width:auto !important;
        white-space:normal !important;
        overflow-wrap:anywhere !important;
        word-break:normal !important;
    }
    .wp5ch-board-row-title{
        display:inline !important;
        white-space:normal !important;
        overflow-wrap:anywhere !important;
        word-break:normal !important;
    }
}
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-main,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-link,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-titleline,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-title,
.wp5ch-board-row.is-favorite-button-hover:hover .wp5ch-board-row-main,
.wp5ch-board-row.is-favorite-button-hover:hover .wp5ch-board-row-link,
.wp5ch-board-row.is-favorite-button-hover:hover .wp5ch-board-row-titleline,
.wp5ch-board-row.is-favorite-button-hover:hover .wp5ch-board-row-title,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-main,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-link,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-titleline,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-title,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-main,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-link,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-titleline,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-title{
    background:#eef8ff !important;
    background-color:#eef8ff !important;
}
.wp5ch-board-row.is-favorite-button-hover::before,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover)::before,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible)::before{
    background:#eef8ff !important;
    opacity:1 !important;
}


/* v0.2.79: mobile title 27-30 chars, row category chips, breadcrumb ajax update support */
@media(max-width:640px){
    .wp5ch-board-row-titleline{
        max-width:30em !important;
    }
}
.wp5ch-board-row-cats{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:4px;
    margin:0 0 3px;
    line-height:1.25;
    background:transparent !important;
}
.wp5ch-board-row-cat-chip{
    font-size:12px !important;
    line-height:1.25 !important;
    padding:1px 7px !important;
    margin:0 4px 0 0 !important;
    font-weight:600 !important;
}
@media(max-width:640px){
    .wp5ch-board-row-cat-chip{
        font-size:11px !important;
        padding:1px 6px !important;
    }
}
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-cats,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-cats,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-cats{
    background:#eef8ff !important;
}


/* v0.2.80: category block vertical label and category-specific count */
.wp5ch-boards{
    display:block !important;
}
.wp5ch-boards-label{
    display:block;
    margin:0 0 6px;
    color:#475569;
    font-size:13px;
    font-weight:700;
    line-height:1.4;
}
.wp5ch-board-chip-list{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:4px;
}
.wp5ch-board-chip-list .wp5ch-board-chip{
    margin:0 4px 4px 0 !important;
}


/* v0.2.81: collapsible category buttons and no title underline on row/icon hover */
.wp5ch-boards-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:0 0 6px;
}
.wp5ch-boards-head .wp5ch-boards-label{
    margin:0 !important;
}
.wp5ch-board-cats-toggle{
    margin:0;
    padding:0;
    border:0;
    background:transparent;
    color:var(--wp5ch-board-accent-color,#0095d9);
    font-size:13px;
    font-weight:700;
    line-height:1.4;
    cursor:pointer;
    white-space:nowrap;
}
.wp5ch-board-cats-toggle:hover,
.wp5ch-board-cats-toggle:focus-visible{
    text-decoration:underline;
}
.wp5ch-board-chip-list.is-collapsible{
    overflow:hidden;
    transition:max-height .18s ease;
}
.wp5ch-board-chip-list.is-expanded{
    overflow:visible;
    max-height:none !important;
}
.wp5ch-board-row-link,
.wp5ch-board-row-link:hover,
.wp5ch-board-row:hover .wp5ch-board-row-link,
.wp5ch-board-row:hover .wp5ch-board-row-title,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-link,
.wp5ch-board-row.is-favorite-button-hover .wp5ch-board-row-title,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-link,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:hover) .wp5ch-board-row-title,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-link,
.wp5ch-board-row:has(.wp5ch-thread-favorite-button:focus-visible) .wp5ch-board-row-title{
    text-decoration:none !important;
}
@media(max-width:640px){
    .wp5ch-board-cats-toggle{
        font-size:12px;
    }
}


/* v0.2.82: prevent clipped first category chip when collapsed */
.wp5ch-board-chip-list{
    padding:2px 0 4px !important;
}
.wp5ch-board-chip-list.is-collapsible{
    padding-top:3px !important;
    padding-bottom:5px !important;
}
.wp5ch-board-chip-list .wp5ch-board-chip{
    box-sizing:border-box;
}


/* v0.2.83: fix clipped left side of first category chip and Cocoon [ad] blocks */
.wp5ch-boards{
    padding-left:3px !important;
    overflow:visible !important;
}
.wp5ch-board-chip-list{
    padding-left:4px !important;
    margin-left:-1px !important;
    overflow:visible;
}
.wp5ch-board-chip-list.is-collapsible{
    padding-left:4px !important;
    overflow:hidden;
}
.wp5ch-board-chip-list.is-expanded{
    overflow:visible !important;
}
.wp5ch-board-chip-list .wp5ch-board-chip:first-child{
    margin-left:1px !important;
}
.wp5ch-cocoon-ad{
    margin:14px 0;
    clear:both;
}
.wp5ch-cocoon-ad-board-top{
    margin:12px 0 14px;
}
.wp5ch-cocoon-ad-res{
    margin:18px 0;
}


/* v0.2.84: Cocoon [ad] under thread view toggle */
.wp5ch-cocoon-ad-thread-toggle{
    margin:12px 0 14px;
}


/* v0.2.85: Cocoon [ad] in thread list */
.wp5ch-cocoon-ad-thread-list{
    margin:12px 0;
    padding:0;
}


/* v0.2.86: keep thread-list ads from breaking board list layout */
.wp5ch-board-ad-row{
    display:block !important;
    width:100% !important;
    box-sizing:border-box !important;
    border-top:1px solid #e5e5e5 !important;
    background:#fff !important;
    padding:14px 12px !important;
    overflow:hidden !important;
    clear:both !important;
}
.wp5ch-board-list > .wp5ch-board-ad-row:first-of-type{
    border-top:0 !important;
}
.wp5ch-board-ad-row .wp5ch-cocoon-ad-thread-list{
    display:block !important;
    box-sizing:border-box !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    text-align:center !important;
    background:transparent !important;
    overflow:hidden !important;
}
.wp5ch-board-ad-row iframe,
.wp5ch-board-ad-row ins{
    max-width:100% !important;
}


/* v0.2.87: keep thread-list [ad] after the configured number of thread rows */
.wp5ch-board-ad-row[hidden]{
    display:none !important;
}
.wp5ch-board-ad-row{
    order:initial !important;
}


/* v0.2.89: real anchor targets for mobile footer convenient links */
.wp5ch-anchor-target{
    display:block;
    position:relative;
    top:-72px;
    width:1px;
    height:1px;
    overflow:hidden;
    pointer-events:none;
}


/* v0.2.91: make #wp5ch-thread-write a real visible target */
#wp5ch-thread-write{
    scroll-margin-top:80px;
}


/* v0.2.92: category chips with count badges */
.wp5ch-board-head-actions .wp5ch-board-total[hidden]{
    display:none !important;
}
.wp5ch-boards{
    margin:8px 0 14px !important;
}
.wp5ch-board-chip-list{
    gap:8px !important;
}
.wp5ch-boards .wp5ch-board-chip,
.wp5ch-board-chip-list .wp5ch-board-chip{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    border-radius:999px !important;
    border:1px solid #e5e7eb !important;
    background:#fff !important;
    color:#1f2937 !important;
    box-shadow:0 1px 5px rgba(15,23,42,.06) !important;
    padding:6px 10px !important;
    min-height:30px !important;
    line-height:1 !important;
    font-size:12px !important;
    font-weight:700 !important;
    text-decoration:none !important;
    box-sizing:border-box !important;
}
.wp5ch-boards .wp5ch-board-chip:not(.wp5ch-board-chip-all){
    background:#fff !important;
    background-color:#fff !important;
    color:#1f2937 !important;
    border-color:#e5e7eb !important;
}
.wp5ch-boards .wp5ch-board-chip.is-active,
.wp5ch-board-chip-list .wp5ch-board-chip.is-active{
    background:var(--wp5ch-board-accent-color,#4f7cff) !important;
    background-color:var(--wp5ch-board-accent-color,#4f7cff) !important;
    color:#fff !important;
    border-color:var(--wp5ch-board-accent-color,#4f7cff) !important;
    box-shadow:0 4px 10px rgba(79,124,255,.28) !important;
    outline:0 !important;
}
.wp5ch-board-chip-name{
    display:inline-block;
    white-space:nowrap;
}
.wp5ch-board-chip-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:20px;
    height:18px;
    padding:0 6px;
    border-radius:999px;
    background:#f1f5f9;
    color:#475569;
    font-size:11px;
    font-weight:800;
    line-height:1;
}
.wp5ch-board-chip.is-active .wp5ch-board-chip-count{
    background:rgba(255,255,255,.22);
    color:#fff;
}
@media(max-width:640px){
    .wp5ch-board-chip-list{
        gap:6px !important;
    }
    .wp5ch-boards .wp5ch-board-chip,
    .wp5ch-board-chip-list .wp5ch-board-chip{
        padding:6px 9px !important;
        min-height:29px !important;
        font-size:12px !important;
    }
    .wp5ch-board-chip-count{
        min-width:19px;
        height:17px;
        padding:0 5px;
        font-size:10px;
    }
}


/* v0.2.93: keep category chip configured colors, count badge fixed white/black */
.wp5ch-boards .wp5ch-board-chip,
.wp5ch-board-chip-list .wp5ch-board-chip{
    border-radius:999px !important;
}

/* 「すべて」以外はカテゴリ設定の文字色・背景色をそのまま使う */
.wp5ch-boards .wp5ch-board-chip:not(.wp5ch-board-chip-all),
.wp5ch-boards .wp5ch-board-chip:not(.wp5ch-board-chip-all).is-active{
    background:var(--wp5ch-chip-bg,#eef5ff) !important;
    background-color:var(--wp5ch-chip-bg,#eef5ff) !important;
    color:var(--wp5ch-chip-text,#2f3742) !important;
    border-color:color-mix(in srgb, var(--wp5ch-chip-text,#2f3742) 24%, var(--wp5ch-chip-bg,#eef5ff)) !important;
}

/* 選択中は色を変えず、影だけで選択状態を出す */
.wp5ch-boards .wp5ch-board-chip:not(.wp5ch-board-chip-all).is-active{
    outline:0 !important;
    box-shadow:0 0 0 2px color-mix(in srgb, var(--wp5ch-chip-text,#2f3742) 22%, transparent), 0 2px 8px rgba(15,23,42,.08) !important;
}

/* 「すべて」だけは画像例のように選択中を青系にする */
.wp5ch-boards .wp5ch-board-chip-all{
    background:#fff !important;
    background-color:#fff !important;
    color:#1f2937 !important;
    border-color:#e5e7eb !important;
}
.wp5ch-boards .wp5ch-board-chip-all.is-active{
    background:var(--wp5ch-board-accent-color,#4f7cff) !important;
    background-color:var(--wp5ch-board-accent-color,#4f7cff) !important;
    color:#fff !important;
    border-color:var(--wp5ch-board-accent-color,#4f7cff) !important;
    box-shadow:0 4px 10px rgba(79,124,255,.28) !important;
}

/* 件数部分は全カテゴリ共通で、文字色は黒・背景は白固定 */
.wp5ch-board-chip-count,
.wp5ch-board-chip.is-active .wp5ch-board-chip-count,
.wp5ch-boards .wp5ch-board-chip .wp5ch-board-chip-count,
.wp5ch-boards .wp5ch-board-chip.is-active .wp5ch-board-chip-count{
    background:#fff !important;
    background-color:#fff !important;
    color:#111827 !important;
    border:1px solid rgba(15,23,42,.08) !important;
}


/* v0.2.94: force count number color even when parent category has inline white color */
.wp5ch-boards .wp5ch-board-chip > .wp5ch-board-chip-count,
.wp5ch-boards .wp5ch-board-chip.is-active > .wp5ch-board-chip-count,
.wp5ch-board-chip-list .wp5ch-board-chip > .wp5ch-board-chip-count,
.wp5ch-board-chip-list .wp5ch-board-chip.is-active > .wp5ch-board-chip-count{
    background:#fff !important;
    background-color:#fff !important;
    color:#111827 !important;
    -webkit-text-fill-color:#111827 !important;
    border:1px solid rgba(15,23,42,.08) !important;
}
.wp5ch-board-chip-count *{
    color:#111827 !important;
    -webkit-text-fill-color:#111827 !important;
}


/* v0.2.97: BBS widgets */
.wp5ch-widget-list{
    margin:0;
    padding-left:1.2em;
}
.wp5ch-widget-list .wp5ch-widget-item{
    margin:0 0 .65em;
}
.wp5ch-widget-title{
    font-weight:700;
    text-decoration:none;
}
.wp5ch-widget-meta{
    color:#64748b;
    font-size:12px;
    line-height:1.4;
    margin-top:2px;
}
.wp5ch-widget-excerpt{
    color:#475569;
    font-size:13px;
    line-height:1.5;
    margin-top:2px;
}
.wp5ch-widget-empty{
    color:#64748b;
    font-size:13px;
}


/* v0.2.98: Cocoon-like BBS widgets */
.wp5ch-cocoon-like-widget{
    background:#fff;
    border:1px solid #ddd;
    border-radius:3px;
    overflow:hidden;
}
.wp5ch-widget-black-title{
    background:#111;
    color:#fff;
    font-weight:700;
    font-size:15px;
    line-height:1.4;
    padding:10px 12px;
}
.wp5ch-heat-ranking-list,
.wp5ch-recent-comment-list{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}
.wp5ch-heat-ranking-item{
    margin:0 !important;
    padding:0 !important;
    border-bottom:1px solid #eee;
}
.wp5ch-heat-ranking-item:last-child{
    border-bottom:0;
}
.wp5ch-heat-ranking-link{
    display:flex;
    gap:10px;
    align-items:flex-start;
    padding:10px 10px;
    color:#333;
    text-decoration:none !important;
}
.wp5ch-heat-ranking-link:hover{
    background:#fafafa;
    text-decoration:none !important;
}
.wp5ch-heat-rank{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:22px;
    height:22px;
    border-radius:4px;
    background:#f3f4f6;
    color:#555;
    font-size:12px;
    font-weight:700;
    line-height:1;
}
.wp5ch-heat-rank-1{
    background:#ffb300;
    color:#fff;
}
.wp5ch-heat-rank-2{
    background:#7b8191;
    color:#fff;
}
.wp5ch-heat-rank-3{
    background:#e57900;
    color:#fff;
}
.wp5ch-heat-ranking-body{
    display:block;
    min-width:0;
    flex:1 1 auto;
}
.wp5ch-heat-ranking-title{
    display:block;
    color:#222;
    font-size:13px;
    font-weight:600;
    line-height:1.35;
}
.wp5ch-heat-rise{
    display:inline-block;
    color:#ff4040;
    font-size:11px;
    font-weight:800;
    margin-right:6px;
    white-space:nowrap;
}
.wp5ch-heat-ranking-meta{
    display:flex;
    align-items:center;
    gap:6px;
    color:#6b7280;
    font-size:12px;
    line-height:1.3;
    margin-top:3px;
}
.wp5ch-heat-comment-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#8b95a1;
    width:14px;
    height:14px;
    line-height:1;
}
.wp5ch-heat-comment-icon svg{
    display:block;
    width:13px;
    height:13px;
}

/* Recent BBS comments: Cocoon [C] recent comments style */
.wp5ch-recent-comment-item{
    display:flex;
    gap:9px;
    padding:10px;
    border-bottom:1px solid #eee;
    color:#333;
    text-decoration:none !important;
}
.wp5ch-recent-comment-item:last-child{
    border-bottom:0;
}
.wp5ch-recent-comment-item:hover{
    background:#fafafa;
    text-decoration:none !important;
}
.wp5ch-recent-comment-avatar{
    flex:0 0 auto;
    width:38px;
    height:38px;
    border-radius:50%;
    background:#f1f5f9;
    color:#667085;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}
.wp5ch-recent-comment-avatar .dashicons{
    font-size:20px;
    width:20px;
    height:20px;
}
.wp5ch-recent-comment-body{
    display:block;
    min-width:0;
    flex:1 1 auto;
}
.wp5ch-recent-comment-title{
    display:block;
    color:#222;
    font-size:12px;
    font-weight:700;
    line-height:1.35;
    margin-bottom:2px;
}
.wp5ch-recent-comment-text{
    display:block;
    color:#333;
    font-size:13px;
    line-height:1.45;
}
.wp5ch-recent-comment-meta{
    display:block;
    color:#8a93a3;
    font-size:11px;
    line-height:1.35;
    margin-top:3px;
}
.wp5ch-widget-empty{
    margin:0;
    padding:12px;
}


/* v0.2.99: widget titles as h2 and comment balloon layout */
.wp5ch-widget-h2-title{
    margin:0 0 10px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#111827 !important;
    font-size:17px !important;
    font-weight:700 !important;
    line-height:1.35 !important;
}

/* Keep heat ranking card design while using h2 title */
.wp5ch-heat-ranking-widget{
    background:#fff;
    border:1px solid #ddd;
    border-radius:3px;
    overflow:hidden;
}
.wp5ch-heat-ranking-widget .wp5ch-widget-h2-title{
    background:#111 !important;
    color:#fff !important;
    margin:0 !important;
    padding:10px 12px !important;
    font-size:15px !important;
}

/* Recent BBS comments like Cocoon comment widget with balloon */
.wp5ch-recent-board-comments-widget{
    background:transparent;
}
.wp5ch-recent-board-comment-list{
    margin:0;
    padding:0;
}
.wp5ch-recent-board-comment-item{
    margin:0 0 22px;
    padding:0;
}
.wp5ch-recent-board-comment-author{
    color:#111827;
    font-size:15px;
    font-weight:700;
    line-height:1.35;
    margin:0 0 1px;
}
.wp5ch-recent-board-comment-date{
    color:#111827;
    font-size:16px;
    line-height:1.2;
    margin:0 0 5px;
}
.wp5ch-recent-board-comment-bubble{
    position:relative;
    display:block;
    margin:0 0 8px;
    padding:8px 10px;
    border:1px solid #d7d7d7;
    border-radius:4px;
    background:#fff;
    color:#111827;
    font-size:15px;
    line-height:1.45;
    box-sizing:border-box;
}
.wp5ch-recent-board-comment-bubble:before{
    content:"";
    position:absolute;
    top:-8px;
    left:18px;
    border-width:0 8px 8px 8px;
    border-style:solid;
    border-color:transparent transparent #d7d7d7 transparent;
}
.wp5ch-recent-board-comment-bubble:after{
    content:"";
    position:absolute;
    top:-6px;
    left:20px;
    border-width:0 6px 6px 6px;
    border-style:solid;
    border-color:transparent transparent #fff transparent;
}
.wp5ch-recent-board-comment-thread{
    display:flex;
    align-items:flex-start;
    gap:4px;
    color:#111827;
    text-decoration:none !important;
    font-size:15px;
    line-height:1.45;
}
.wp5ch-recent-board-comment-thread:hover .wp5ch-recent-board-comment-thread-title{
    text-decoration:underline;
}
.wp5ch-recent-board-comment-linkicon{
    flex:0 0 20px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#111827;
    width:20px;
    height:20px;
    line-height:1;
    margin-top:2px;
}
.wp5ch-recent-board-comment-linkicon svg{
    display:block;
    width:18px;
    height:18px;
}
.wp5ch-recent-board-comment-thread-title{
    color:#111827;
}


/* v0.2.100: use theme/Cocoon default widget title display */
.wp5ch-recent-board-comments-widget,
.wp5ch-heat-ranking-widget{
    margin-top:0;
}
.wp5ch-heat-ranking-widget .wp5ch-widget-h2-title,
.wp5ch-recent-board-comments-widget .wp5ch-widget-h2-title{
    background:transparent !important;
    color:inherit !important;
    margin:0 0 10px !important;
    padding:0 !important;
}


/* v0.2.102: reply form submit-side link */
.wp5ch-reply-submit-row{
    display:flex;
    align-items:center;
    gap:16px;
    flex-wrap:wrap;
    margin-top:8px;
}
.wp5ch-reply-submit-row button[type="submit"]{
    margin:0 !important;
}
.wp5ch-reply-help-link{
    display:inline-flex;
    align-items:center;
    color:#666;
    font-size:13px;
    line-height:1.4;
    text-decoration:underline;
    text-underline-offset:2px;
}
.wp5ch-reply-help-link:hover,
.wp5ch-reply-help-link:focus-visible{
    color:var(--wp5ch-board-accent-color,#ef2d2d);
}
@media(max-width:640px){
    .wp5ch-reply-submit-row{
        gap:10px;
    }
    .wp5ch-reply-help-link{
        font-size:12px;
    }
}


/* v0.2.103: thread list pagination */
.wp5ch-board-pager{
    display:flex;
    justify-content:center;
    padding:14px 10px 16px;
    border-top:1px solid #e5e7eb;
    background:#fff;
}
.wp5ch-board-pager ul{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:6px;
    list-style:none;
    margin:0;
    padding:0;
}
.wp5ch-board-pager li{
    margin:0;
    padding:0;
}
.wp5ch-board-pager .page-numbers{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:32px;
    height:32px;
    padding:0 10px;
    border:1px solid #d8dee8;
    border-radius:999px;
    background:#fff;
    color:#334155;
    font-size:13px;
    font-weight:700;
    line-height:1;
    text-decoration:none !important;
    box-sizing:border-box;
}
.wp5ch-board-pager .page-numbers.current{
    background:var(--wp5ch-board-accent-color,#ef2d2d);
    border-color:var(--wp5ch-board-accent-color,#ef2d2d);
    color:#fff;
}
.wp5ch-board-pager a.page-numbers:hover,
.wp5ch-board-pager a.page-numbers:focus-visible{
    background:#f8fafc;
    color:var(--wp5ch-board-accent-color,#ef2d2d);
}


/* v0.2.104: keep board pager below thread rows */
.wp5ch-board-rows{
    display:block !important;
    width:100% !important;
    clear:both !important;
}
.wp5ch-board-rows > .wp5ch-board-row:first-child{
    border-top:0 !important;
}
.wp5ch-board-list > .wp5ch-board-pager{
    display:flex !important;
    position:static !important;
    float:none !important;
    clear:both !important;
    width:100% !important;
    box-sizing:border-box !important;
    margin:0 !important;
    z-index:auto !important;
}


/* v0.2.105: horizontal thread-list pagination */
.wp5ch-board-pager{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
}
.wp5ch-board-pager-inner{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:wrap !important;
    gap:6px !important;
    width:auto !important;
    margin:0 auto !important;
    padding:0 !important;
}
.wp5ch-board-pager-inner .page-numbers{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    float:none !important;
    position:static !important;
}
.wp5ch-board-pager ul.page-numbers{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:wrap !important;
    gap:6px !important;
    width:auto !important;
    height:auto !important;
    min-width:0 !important;
    margin:0 auto !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}


/* v0.2.108: thread request cancel and thread search */
.wp5ch-thread-form-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}
.wp5ch-thread-form-cancel{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 14px;
    border:1px solid #d8dee8;
    border-radius:6px;
    background:#fff;
    color:#4b5563;
    font-weight:700;
    cursor:pointer;
}
.wp5ch-thread-form-cancel:hover,
.wp5ch-thread-form-cancel:focus-visible{
    background:#f8fafc;
    color:#111827;
}
.wp5ch-thread-search-form{
    margin:10px 0 12px;
    padding:10px;
    border:1px solid #e5e7eb;
    border-radius:6px;
    background:#fafafa;
}
.wp5ch-thread-search-label{
    display:block;
    margin:0 0 6px;
    font-size:13px;
    font-weight:700;
    color:#334155;
}
.wp5ch-thread-search-row{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}
.wp5ch-thread-search-row input[type="search"]{
    flex:1 1 220px;
    min-width:0;
    height:36px;
    padding:0 10px;
    border:1px solid #d8dee8;
    border-radius:6px;
    box-sizing:border-box;
}
.wp5ch-thread-search-row button{
    min-height:36px;
    padding:0 14px;
    border:0;
    border-radius:6px;
    background:var(--wp5ch-board-accent-color,#ef2d2d);
    color:#fff;
    font-weight:700;
    cursor:pointer;
}
.wp5ch-thread-search-clear{
    color:#64748b;
    font-size:13px;
    text-decoration:underline;
    text-underline-offset:2px;
}
.wp5ch-thread-search-result,
.wp5ch-thread-search-empty{
    margin:10px 0;
    padding:10px 12px;
    border-radius:6px;
    background:#f1f5f9;
    color:#334155;
    font-size:13px;
    font-weight:700;
}
.wp5ch-thread-search-empty{
    background:#fff7ed;
    color:#9a3412;
}


/* v0.2.109: floating response search and no-jump search panel */
.wp5ch-thread-search-panel[hidden]{
    display:none !important;
}
.wp5ch-floating-search-button{
    position:fixed;
    left:206px !important;
    bottom:250px !important;
    z-index:9998;
    appearance:none;
    border:0;
    width:68px !important;
    height:68px !important;
    padding:0 !important;
    border-radius:50% !important;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:3px;
    background:#ffffff !important;
    color:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    font-weight:700;
    cursor:pointer;
    box-shadow:0 8px 22px rgba(0,0,0,.16);
    border:1px solid rgba(0,0,0,.08);
}
.wp5ch-floating-search-button:hover{
    transform:translateY(-1px);
    background:#f8fafc !important;
}
.wp5ch-floating-search-icon{
    display:block;
    font-size:18px;
    line-height:1;
}
.wp5ch-floating-search-label{
    display:block;
    font-size:10px;
    line-height:1.1;
    letter-spacing:.02em;
}
@media(max-width:1200px){
    .wp5ch-floating-search-button{
        left:156px !important;
        bottom:240px !important;
        width:64px !important;
        height:64px !important;
    }
}
@media(max-width:1023px){
    .wp5ch-floating-search-button{
        display:none !important;
    }
}


/* v0.2.110: JS/Ajax-less live thread search */
.wp5ch-search-hidden{
    display:none !important;
}
.wp5ch-thread-search-live-result[hidden],
.wp5ch-thread-search-clear[hidden]{
    display:none !important;
}
.wp5ch-thread-search-live-result{
    margin-top:8px;
    padding:8px 10px;
    border-radius:6px;
    background:#f1f5f9;
    color:#334155;
    font-size:13px;
    font-weight:700;
}
.wp5ch-thread-search-clear{
    min-height:36px;
    padding:0 12px;
    border:1px solid #d8dee8;
    border-radius:6px;
    background:#fff;
    color:#475569;
    font-weight:700;
    cursor:pointer;
}
.wp5ch-thread-search-clear:hover,
.wp5ch-thread-search-clear:focus-visible{
    background:#f8fafc;
    color:#111827;
}


/* v0.2.114: mobile thread search compact layout */
@media(max-width:640px){
    .wp5ch-thread-search-row{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) auto auto !important;
        gap:6px !important;
        align-items:center !important;
    }
    .wp5ch-thread-search-row input[type="search"]{
        flex:none !important;
        width:100% !important;
        min-width:0 !important;
        height:36px !important;
        font-size:16px !important;
        padding:0 8px !important;
    }
    .wp5ch-thread-search-row button,
    .wp5ch-thread-search-clear{
        min-width:0 !important;
        white-space:nowrap !important;
        padding:0 10px !important;
        font-size:13px !important;
    }
}
@media(max-width:380px){
    .wp5ch-thread-search-row{
        grid-template-columns:minmax(0,1fr) auto auto !important;
        gap:5px !important;
    }
    .wp5ch-thread-search-row button,
    .wp5ch-thread-search-clear{
        padding:0 8px !important;
        font-size:12px !important;
    }
}


/* v0.2.115: shorten search input only while clear button is visible on mobile */
@media(max-width:640px){
    .wp5ch-thread-search-row{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) auto !important;
        gap:6px !important;
        align-items:center !important;
    }
    .wp5ch-thread-search-row.has-search-clear{
        grid-template-columns:minmax(0,1fr) auto auto !important;
    }
    .wp5ch-thread-search-row input[type="search"]{
        min-width:0 !important;
        width:100% !important;
    }
    .wp5ch-thread-search-row .wp5ch-thread-search-clear[hidden]{
        display:none !important;
    }
}
@media(max-width:380px){
    .wp5ch-thread-search-row.has-search-clear{
        gap:5px !important;
    }
    .wp5ch-thread-search-row.has-search-clear button,
    .wp5ch-thread-search-row.has-search-clear .wp5ch-thread-search-clear{
        padding-left:8px !important;
        padding-right:8px !important;
        font-size:12px !important;
    }
}


/* v0.2.116: stronger normalized search, board search, and floating board buttons */
.wp5ch-board-search-hidden{
    display:none !important;
}
.wp5ch-board-search-panel[hidden]{
    display:none !important;
}
.wp5ch-board-search-panel{
    margin:10px 0 12px;
}
.wp5ch-board-search-form{
    padding:10px;
    border:1px solid #e5e7eb;
    border-radius:6px;
    background:#fafafa;
}
.wp5ch-board-search-label{
    display:block;
    margin:0 0 6px;
    font-size:13px;
    font-weight:700;
    color:#334155;
}
.wp5ch-board-search-row{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}
.wp5ch-board-search-row input[type="search"]{
    flex:1 1 220px;
    min-width:0;
    height:36px;
    padding:0 10px;
    border:1px solid #d8dee8;
    border-radius:6px;
    box-sizing:border-box;
}
.wp5ch-board-search-row button{
    min-height:36px;
    padding:0 14px;
    border:0;
    border-radius:6px;
    background:var(--wp5ch-board-accent-color,#ef2d2d);
    color:#fff;
    font-weight:700;
    cursor:pointer;
}
.wp5ch-board-search-clear{
    border:1px solid #d8dee8 !important;
    background:#fff !important;
    color:#475569 !important;
}
.wp5ch-board-search-live-result{
    margin-top:8px;
    padding:8px 10px;
    border-radius:6px;
    background:#f1f5f9;
    color:#334155;
    font-size:13px;
    font-weight:700;
}
.wp5ch-board-search-live-result[hidden],
.wp5ch-board-search-clear[hidden]{
    display:none !important;
}
.wp5ch-board-floating-search-button,
.wp5ch-board-floating-blog-button{
    position:fixed;
    left:206px !important;
    z-index:9998;
    width:68px !important;
    height:68px !important;
    padding:0 !important;
    border-radius:50% !important;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:3px;
    text-decoration:none !important;
    font-weight:700;
    box-shadow:0 8px 22px rgba(0,0,0,.18);
}
.wp5ch-board-floating-search-button{
    bottom:250px !important;
    appearance:none;
    border:1px solid rgba(0,0,0,.08);
    background:#ffffff !important;
    color:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    cursor:pointer;
}
.wp5ch-board-floating-blog-button{
    bottom:170px !important;
    background:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    color:#fff !important;
}
.wp5ch-board-floating-search-icon,
.wp5ch-board-floating-blog-icon{
    display:block;
    font-size:18px;
    line-height:1;
}
.wp5ch-board-floating-search-label,
.wp5ch-board-floating-blog-label{
    display:block;
    font-size:10px;
    line-height:1.1;
    letter-spacing:.02em;
}
@media(max-width:1200px){
    .wp5ch-board-floating-search-button,
    .wp5ch-board-floating-blog-button{
        left:156px !important;
        width:64px !important;
        height:64px !important;
    }
    .wp5ch-board-floating-search-button{
        bottom:240px !important;
    }
    .wp5ch-board-floating-blog-button{
        bottom:164px !important;
    }
}
@media(max-width:1023px){
    .wp5ch-board-floating-search-button,
    .wp5ch-board-floating-blog-button{
        display:none !important;
    }
}
@media(max-width:640px){
    .wp5ch-board-search-row{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) auto !important;
        gap:6px !important;
        align-items:center !important;
    }
    .wp5ch-board-search-row.has-search-clear{
        grid-template-columns:minmax(0,1fr) auto auto !important;
    }
    .wp5ch-board-search-row input[type="search"]{
        width:100% !important;
        min-width:0 !important;
        font-size:16px !important;
    }
    .wp5ch-board-search-row button{
        white-space:nowrap !important;
        padding:0 10px !important;
        font-size:13px !important;
    }
}


/* v0.2.117: BBS content top widget area */
.wp5ch-bbs-content-top{
    margin:0 0 14px;
}
.wp5ch-bbs-content-top .widget{
    margin:0 0 12px;
}
.wp5ch-bbs-content-top .widget:last-child{
    margin-bottom:0;
}


/* v0.2.118: BBS content top is supplied through theme content-top widget area replacement */
.wp5ch-bbs-content-top{
    margin:0 0 14px;
}
.wp5ch-bbs-content-top-widget{
    margin:0 0 12px;
}


/* v0.2.119: long-press close button and board floating create button */
.wp5ch-longpress-menu{
    position:relative;
}
.wp5ch-longpress-close{
    position:absolute;
    top:6px;
    right:6px;
    width:28px;
    height:28px;
    border:0;
    border-radius:50%;
    background:#f1f5f9;
    color:#334155;
    font-size:18px;
    line-height:1;
    font-weight:700;
    cursor:pointer;
}
.wp5ch-longpress-menu .wp5ch-longpress-item:first-of-type{
    margin-top:26px;
}
.wp5ch-board-floating-create-button{
    position:fixed;
    left:206px !important;
    bottom:90px !important;
    z-index:9998;
    width:68px !important;
    height:68px !important;
    padding:0 !important;
    border-radius:50% !important;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:3px;
    border:1px solid rgba(0,0,0,.08);
    background:#ffffff !important;
    color:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    font-weight:700;
    box-shadow:0 8px 22px rgba(0,0,0,.18);
    cursor:pointer;
}
.wp5ch-board-floating-create-icon{
    display:block;
    font-size:18px;
    line-height:1;
}
.wp5ch-board-floating-create-label{
    display:block;
    font-size:10px;
    line-height:1.1;
    letter-spacing:.02em;
}
@media(max-width:1200px){
    .wp5ch-board-floating-create-button{
        left:156px !important;
        bottom:88px !important;
        width:64px !important;
        height:64px !important;
    }
}
@media(max-width:1023px){
    .wp5ch-board-floating-create-button{
        display:none !important;
    }
}


/* v0.2.120: swap board floating create button colors */
.wp5ch-board-floating-create-button{
    background:var(--wp5ch-board-accent-color,#ef2d2d) !important;
    color:#ffffff !important;
}


/* v0.2.121: long-press close is a normal menu item */
.wp5ch-longpress-close{
    position:static !important;
    width:auto !important;
    height:auto !important;
    border-radius:0 !important;
    background:transparent !important;
    color:inherit !important;
    font-size:inherit !important;
}
.wp5ch-longpress-menu .wp5ch-longpress-item:first-of-type{
    margin-top:0 !important;
}
.wp5ch-longpress-close-item{
    color:#475569 !important;
}


/* v0.2.122: keep long-press menu compact */
.wp5ch-longpress-menu-backdrop{
    display:block !important;
}
.wp5ch-longpress-menu{
    position:fixed !important;
    width:190px !important;
    max-width:calc(100vw - 24px) !important;
    min-width:0 !important;
    display:block !important;
    overflow:hidden !important;
}
.wp5ch-longpress-item{
    display:block !important;
    width:100% !important;
    box-sizing:border-box !important;
    text-align:left !important;
    white-space:nowrap !important;
}
@media(max-width:640px){
    .wp5ch-longpress-menu{
        width:190px !important;
        max-width:calc(100vw - 24px) !important;
    }
}


/* v0.2.123: reduce ONLY the gap between thread title row and meta row in board list */
.wp5ch-board-row-main{
    justify-content:flex-start !important;
}
.wp5ch-board-row-titleline{
    margin-bottom:0 !important;
}
.wp5ch-board-row-meta{
    margin-top:1px !important;
    min-height:16px !important;
}
.wp5ch-board-row-meta .wp5ch-board-row-date{
    margin-top:0 !important;
    line-height:1.25 !important;
}
@media(max-width:640px){
    .wp5ch-board-row-meta{
        margin-top:1px !important;
    }
}


/* v0.2.124: [wp5ch_latest_threads] uses board-list style */
.wp5ch-latest-board-widget{
    margin:12px 0;
}
.wp5ch-latest-board-widget .wp5ch-latest-title{
    font-weight:700;
    margin:0 0 8px;
}
.wp5ch-latest-board-list{
    border:1px solid #e5e7eb;
    border-radius:6px;
    overflow:hidden;
    background:#fff;
}
.wp5ch-latest-board-list .wp5ch-board-row:first-child{
    border-top:0 !important;
}


/* v0.2.125: latest threads bottom link */
.wp5ch-latest-board-more-wrap{
    display:flex;
    justify-content:center;
    margin:12px 0 0;
}
.wp5ch-latest-board-more-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 18px;
    border-radius:999px;
    background:var(--wp5ch-board-accent-color,#00a0e9);
    color:#fff !important;
    font-weight:700;
    font-size:14px;
    line-height:1;
    text-decoration:none !important;
    box-shadow:0 4px 12px rgba(0,0,0,.12);
}
.wp5ch-latest-board-more-link:hover,
.wp5ch-latest-board-more-link:focus{
    opacity:.9;
    color:#fff !important;
    text-decoration:none !important;
}


/* v0.2.126: [wp5ch_latest_threads] top area exactly like board header/categories and no outer frame */
.wp5ch-latest-board-widget{
    margin:12px 0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.wp5ch-latest-board-head-wrap{
    margin:0 0 0 !important;
}
.wp5ch-latest-board-widget .wp5ch-latest-title{
    display:none !important;
}
.wp5ch-latest-board-widget .wp5ch-board-head{
    margin:0 0 12px !important;
}
.wp5ch-latest-board-widget .wp5ch-boards{
    margin:8px 0 14px !important;
}
.wp5ch-latest-board-see-all{
    margin-left:auto;
    color:var(--wp5ch-board-accent-color,#00a0e9) !important;
    font-size:13px;
    font-weight:700;
    text-decoration:none !important;
    white-space:nowrap;
}
.wp5ch-latest-board-see-all:hover{
    text-decoration:underline !important;
}
.wp5ch-latest-board-list{
    border:0 !important;
    border-radius:0 !important;
    overflow:visible !important;
    background:transparent !important;
    box-shadow:none !important;
}
.wp5ch-latest-board-list .wp5ch-board-rows{
    border:0 !important;
    background:transparent !important;
}
.wp5ch-latest-board-list .wp5ch-board-row{
    border-top:1px solid #e5e5e5 !important;
}
.wp5ch-latest-board-list .wp5ch-board-row:first-child{
    border-top:0 !important;
}
.wp5ch-latest-new-thread-link{
    text-decoration:none !important;
}
@media(max-width:640px){
    .wp5ch-latest-board-widget .wp5ch-board-head{
        gap:8px;
    }
    .wp5ch-latest-board-widget .wp5ch-new-thread-button-text{
        font-size:12px;
    }
}


/* v0.2.127: [wp5ch_latest_threads] thread list section matches board list */
.wp5ch-latest-board-list{
    border:1px solid #e5e7eb !important;
    border-radius:4px !important;
    overflow:hidden !important;
    background:#fff !important;
    box-shadow:none !important;
}
.wp5ch-latest-board-list .wp5ch-board-list-head{
    display:block !important;
    background:#f5f5f6 !important;
    border-bottom:1px solid #e3e5e8 !important;
}
.wp5ch-latest-board-list .wp5ch-board-rows{
    background:#fff !important;
}
.wp5ch-latest-board-list .wp5ch-board-row{
    border-top:1px solid #e5e7eb !important;
}
.wp5ch-latest-board-list .wp5ch-board-row:first-child{
    border-top:0 !important;
}
.wp5ch-board-sortbox-static .wp5ch-board-sort-trigger-static{
    cursor:default !important;
    pointer-events:none !important;
}


/* v0.2.128: latest threads header icon and category overflow match board */
.wp5ch-latest-board-widget.wp5ch-board-home .wp5ch-board-badge-icon{color:var(--wp5ch-board-accent-color,#ef2d2d) !important;}
.wp5ch-latest-board-widget.wp5ch-board-home .wp5ch-board-badge-icon svg .wp5ch-board-bubble-fill{fill:#fff !important;stroke:var(--wp5ch-board-accent-color,#ef2d2d) !important;stroke-width:2.2 !important;}
.wp5ch-latest-board-widget.wp5ch-board-home .wp5ch-board-badge-icon svg .wp5ch-board-bubble-dot{fill:var(--wp5ch-board-accent-color,#ef2d2d) !important;stroke:var(--wp5ch-board-accent-color,#ef2d2d) !important;}


/* v0.2.129: make [wp5ch_latest_threads] wider on mobile like the board page */
@media(max-width:640px){
    .wp5ch-latest-board-widget.wp5ch-board-home{
        width:calc(100vw - 24px) !important;
        max-width:none !important;
        margin-left:calc(50% - 50vw + 12px) !important;
        margin-right:calc(50% - 50vw + 12px) !important;
        box-sizing:border-box !important;
    }
    .wp5ch-latest-board-widget.wp5ch-board-home .wp5ch-board-head,
    .wp5ch-latest-board-widget.wp5ch-board-home .wp5ch-boards,
    .wp5ch-latest-board-widget.wp5ch-board-home .wp5ch-board-list,
    .wp5ch-latest-board-widget.wp5ch-board-home .wp5ch-latest-board-more-wrap{
        width:100% !important;
        max-width:none !important;
        box-sizing:border-box !important;
    }
}
@media(max-width:380px){
    .wp5ch-latest-board-widget.wp5ch-board-home{
        width:calc(100vw - 16px) !important;
        margin-left:calc(50% - 50vw + 8px) !important;
        margin-right:calc(50% - 50vw + 8px) !important;
    }
}


/* v0.2.130: collapse [wp5ch_latest_threads] categories like board top */
.wp5ch-latest-board-widget .wp5ch-board-chip-list.is-collapsible{
    overflow:hidden !important;
    transition:max-height .18s ease;
}
.wp5ch-latest-board-widget .wp5ch-board-chip-list.is-expanded{
    overflow:visible !important;
    max-height:none !important;
}
.wp5ch-latest-board-widget .wp5ch-board-cats-toggle[hidden]{
    display:none !important;
}


/* v0.2.131: reliable latest category collapse */
.wp5ch-latest-board-widget .wp5ch-board-chip-list.is-collapsible{
    overflow:hidden !important;
    transition:max-height .18s ease;
}
.wp5ch-latest-board-widget .wp5ch-board-chip-list.is-collapsible:not(.is-expanded){
    max-height:42px !important;
}
.wp5ch-latest-board-widget .wp5ch-board-chip-list.is-expanded{
    max-height:none !important;
    overflow:visible !important;
}
.wp5ch-latest-board-widget .wp5ch-board-cats-toggle{
    display:inline-flex !important;
}
.wp5ch-latest-board-widget .wp5ch-board-cats-toggle[hidden]{
    display:inline-flex !important;
}
@media(max-width:640px){
    .wp5ch-latest-board-widget .wp5ch-board-chip-list.is-collapsible:not(.is-expanded){
        max-height:42px !important;
    }
}


/* v0.2.132: isolated and reliable [wp5ch_latest_threads] category collapse */
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-collapsible{
    overflow:hidden !important;
    transition:max-height .18s ease;
}
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-collapsible.is-collapsed,
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-collapsible:not(.is-expanded){
    max-height:var(--wp5ch-latest-cats-closed-height,52px) !important;
    overflow:hidden !important;
}
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-expanded{
    max-height:none !important;
    overflow:visible !important;
}
.wp5ch-latest-board-widget .wp5ch-latest-cats-toggle{
    display:inline-flex !important;
}
.wp5ch-latest-board-widget .wp5ch-latest-cats-toggle[hidden]{
    display:none !important;
}


/* v0.2.133: latest threads AJAX category/sort and title weight */
.wp5ch-latest-board-widget .wp5ch-board-title{
    font-weight:700 !important;
}
.wp5ch-latest-board-widget.is-loading .wp5ch-latest-board-list{
    opacity:.55;
    pointer-events:none;
}
.wp5ch-latest-sortbox{
    position:relative;
}
.wp5ch-latest-sortbox.is-open .wp5ch-latest-sort-menu{
    display:block !important;
}
.wp5ch-latest-sort-option.is-active{
    font-weight:700 !important;
    color:var(--wp5ch-board-accent-color,#00a0e9) !important;
}
.wp5ch-latest-board-list.wp5ch-latest-ajax-failed::after{
    content:"読み込みに失敗しました。ページを更新してください。";
    display:block;
    padding:8px 12px;
    color:#b91c1c;
    font-size:13px;
}


/* v0.2.134: latest controls work from footer script and keep category collapse stable */
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-collapsible{
    overflow:hidden !important;
    transition:max-height .18s ease;
}
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-collapsible.is-collapsed,
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-collapsible:not(.is-expanded){
    max-height:var(--wp5ch-latest-cats-closed-height,52px) !important;
    overflow:hidden !important;
}
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-expanded{
    max-height:none !important;
    overflow:visible !important;
}
.wp5ch-latest-board-widget .wp5ch-latest-cats-toggle{
    display:inline-flex !important;
}
.wp5ch-latest-sortbox.is-open .wp5ch-latest-sort-menu,
.wp5ch-latest-sortbox.is-open [data-wp5ch-latest-sort-menu]{
    display:block !important;
}


/* v0.2.135: latest controls fallback onclick + stable menu display */
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-collapsible{
    overflow:hidden !important;
    transition:max-height .18s ease;
}
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-collapsible.is-collapsed,
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-collapsible:not(.is-expanded){
    max-height:var(--wp5ch-latest-cats-closed-height,52px) !important;
    overflow:hidden !important;
}
.wp5ch-latest-board-widget .wp5ch-latest-cat-list.is-expanded{
    max-height:none !important;
    overflow:visible !important;
}
.wp5ch-latest-board-widget .wp5ch-latest-cats-toggle{
    display:inline-flex !important;
}
.wp5ch-latest-sortbox.is-open .wp5ch-latest-sort-menu,
.wp5ch-latest-sortbox.is-open [data-wp5ch-latest-sort-menu]{
    display:block !important;
}
.wp5ch-latest-board-widget .wp5ch-board-row{
    cursor:pointer;
}
.wp5ch-latest-board-widget .wp5ch-board-row-link{
    cursor:pointer;
}


/* v0.2.137: AI moderation admin labels */
.wp5ch-admin-report-warn{
    color:#b91c1c;
    font-weight:700;
}


/* v0.2.138: admin edit button for BBS replies */
.wp5ch-res-edit-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:24px;
    padding:3px 9px;
    border:1px solid #d1d5db;
    border-radius:999px;
    background:#fff;
    color:#374151 !important;
    font-size:12px;
    font-weight:600;
    line-height:1;
    text-decoration:none !important;
    vertical-align:middle;
    cursor:pointer;
}
.wp5ch-res-edit-button:hover,
.wp5ch-res-edit-button:focus{
    border-color:var(--wp5ch-board-accent-color,#00a0e9);
    color:var(--wp5ch-board-accent-color,#00a0e9) !important;
    text-decoration:none !important;
}
.wp5ch-res-actions .wp5ch-res-edit-button{
    margin-left:6px;
}


/* v0.2.140: honeypot field for BBS spam prevention */
.wp5ch-hp-field{
    position:absolute !important;
    left:-10000px !important;
    top:auto !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
}


/* v0.2.141: AI moderation connection test output */
.wp5ch-ai-test-raw{
    max-height:260px;
    overflow:auto;
    padding:10px;
    background:#111827;
    color:#f9fafb;
    border-radius:6px;
    white-space:pre-wrap;
}
.wp5ch-ai-test-table code{
    white-space:normal;
    word-break:break-all;
}


/* v0.2.142: YouTube / X embeds in BBS replies */
.wp5ch-media-embed{
    margin:10px 0;
    max-width:640px;
}
.wp5ch-youtube-frame{
    position:relative;
    width:100%;
    aspect-ratio:16 / 9;
    background:#000;
    border-radius:10px;
    overflow:hidden;
}
.wp5ch-youtube-frame iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}
.wp5ch-x-embed{
    overflow:hidden;
}
.wp5ch-x-embed .twitter-tweet{
    margin:8px 0 !important;
}
@media(max-width:640px){
    .wp5ch-media-embed{
        max-width:100%;
    }
    .wp5ch-youtube-frame{
        border-radius:8px;
    }
}


/* v0.2.143: allow custom long-press menu on iPhone without native text selection */
@media(max-width:640px){
    .wp5ch-thread .wp5ch-res,
    .wp5ch-thread .wp5ch-res-self,
    .wp5ch-thread .wp5ch-res-head,
    .wp5ch-thread .wp5ch-res-body,
    .wp5ch-thread .wp5ch-res-body-inner{
        -webkit-touch-callout:none;
        -webkit-user-select:none;
        user-select:none;
    }
    .wp5ch-thread input,
    .wp5ch-thread textarea,
    .wp5ch-thread select{
        -webkit-user-select:text;
        user-select:text;
    }
}


/* v0.2.147: inline reply cancel button placement and color */
.wp5ch-reply-submit-row .wp5ch-reply-cancel{
    border:1px solid #555 !important;
    background:#555 !important;
    color:#fff !important;
    font-weight:700;
}
.wp5ch-reply-submit-row .wp5ch-reply-cancel:hover,
.wp5ch-reply-submit-row .wp5ch-reply-cancel:focus-visible{
    background:#333 !important;
    color:#fff !important;
    border-color:#333 !important;
}
.wp5ch-admin-reports .wp5ch-report-table code{
    word-break:break-all;
}


/* v0.2.148: make inline reply cancel button no larger than submit on PC */
@media(min-width:641px){
    .wp5ch-reply-submit-row .wp5ch-reply-cancel{
        min-height:0 !important;
        height:auto !important;
        padding:4px 10px !important;
        font-size:12px !important;
        line-height:1.2 !important;
        border-radius:4px !important;
        vertical-align:middle !important;
    }
}


/* v0.2.149: bottom threads and mobile-only BBS content top */
.wp5ch-bbs-content-top-mobile{
    display:none;
}
@media(max-width:640px){
    .wp5ch-bbs-content-top-mobile{
        display:block;
    }
}
.wp5ch-board-row-bottom .wp5ch-board-row-title{
    color:#6b7280 !important;
}
.wp5ch-board-row-bottom .wp5ch-thread-label,
.wp5ch-board-row-bottom .wp5ch-board-new-badge,
.wp5ch-board-row-bottom .wp5ch-thread-favorite-button,
.wp5ch-board-row-bottom .wp5ch-board-count-line,
.wp5ch-board-row-bottom .wp5ch-board-count{
    display:none !important;
}
.wp5ch-board-row-side-bottom{
    min-width:0 !important;
}


/* v0.2.152: temporary image uploads */
.wp5ch-image-upload-field{
    margin:10px 0 4px;
    padding:10px;
    border:1px dashed #d1d5db;
    border-radius:8px;
    background:#fff;
}
.wp5ch-image-upload-field label{
    display:block;
    margin:0;
    font-weight:700;
    color:#374151;
}
.wp5ch-image-upload-field input[type="file"]{
    display:block;
    margin-top:6px;
    max-width:100%;
}
.wp5ch-image-upload-note{
    margin:6px 0 0;
    color:#6b7280;
    font-size:12px;
}
.wp5ch-res-images{
    margin:10px 0 0;
}
.wp5ch-res-image-link{
    display:inline-block;
    max-width:100%;
    text-decoration:none !important;
}
.wp5ch-res-image-thumb{
    display:block;
    max-width:min(480px, 100%);
    max-height:420px;
    width:auto;
    height:auto;
    border-radius:10px;
    border:1px solid #e5e7eb;
    background:#f9fafb;
}
.wp5ch-image-expired,
.wp5ch-image-hold{
    display:inline-block;
    padding:7px 10px;
    border-radius:8px;
    background:#f3f4f6;
    color:#6b7280;
    font-size:13px;
}
.wp5ch-image-hold{
    background:#fff7ed;
    color:#9a3412;
}
@media(max-width:640px){
    .wp5ch-res-image-thumb{
        max-width:100%;
        max-height:360px;
        border-radius:8px;
    }
}


/* v0.2.155: image lightbox */
html.wp5ch-image-lightbox-open,
html.wp5ch-image-lightbox-open body{
    overflow:hidden;
}
.wp5ch-image-lightbox{
    position:fixed;
    inset:0;
    z-index:999999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:18px;
    background:rgba(0,0,0,.78);
}
.wp5ch-image-lightbox-inner{
    max-width:min(96vw, 1200px);
    max-height:92vh;
    display:flex;
    align-items:center;
    justify-content:center;
}
.wp5ch-image-lightbox-img{
    display:block;
    max-width:100%;
    max-height:92vh;
    width:auto;
    height:auto;
    border-radius:10px;
    background:#111;
    box-shadow:0 18px 60px rgba(0,0,0,.45);
}
.wp5ch-image-lightbox-close{
    position:fixed;
    top:14px;
    right:14px;
    width:42px;
    height:42px;
    border:0;
    border-radius:999px;
    background:rgba(255,255,255,.95);
    color:#111;
    font-size:30px;
    line-height:1;
    cursor:pointer;
}
.wp5ch-image-lightbox-close:hover,
.wp5ch-image-lightbox-close:focus-visible{
    background:#fff;
    outline:2px solid #fff;
    outline-offset:2px;
}
@media(max-width:640px){
    .wp5ch-image-lightbox{
        padding:10px;
    }
    .wp5ch-image-lightbox-img{
        max-height:88vh;
        border-radius:8px;
    }
    .wp5ch-image-lightbox-close{
        top:10px;
        right:10px;
        width:40px;
        height:40px;
        font-size:28px;
    }
}


/* v0.2.162: keep [wp5ch_latest_threads] rows below mobile sidebars/drawers */
@media(max-width:640px){
    .wp5ch-latest-board-widget{
        position:relative !important;
        z-index:0 !important;
        isolation:auto !important;
    }
    .wp5ch-latest-board-widget .wp5ch-board-list,
    .wp5ch-latest-board-widget .wp5ch-board-rows,
    .wp5ch-latest-board-widget .wp5ch-board-row,
    .wp5ch-latest-board-widget .wp5ch-board-row:hover,
    .wp5ch-latest-board-widget .wp5ch-board-row > *,
    .wp5ch-latest-board-widget .wp5ch-board-row-link,
    .wp5ch-latest-board-widget .wp5ch-board-row-main,
    .wp5ch-latest-board-widget .wp5ch-board-row-side{
        z-index:auto !important;
        isolation:auto !important;
    }
    .wp5ch-latest-board-widget .wp5ch-board-row{
        position:relative !important;
    }
    .wp5ch-latest-board-widget .wp5ch-board-row::before{
        z-index:-1 !important;
    }
    .wp5ch-latest-board-widget .wp5ch-board-row > *{
        z-index:auto !important;
    }
}
