.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;
    }
}
