/* BasaltReef — theme additions (classes the source shell does not ship) */

body{
    --pp-accent:#f39806;
    --pp-accent-2:#ffc800;
    --pp-row-bg:#2c2317;
    --pp-row-border:#453829;
    --pp-name:#ffffff;
    --pp-bonus:#ffc800;
    --pp-muted:#b6a996;
    --pp-muted-2:#b6a996;
    --pp-num-bg:rgba(243,152,6,.20);
    --pp-num-color:#f39806;
    --pp-btn-bg:#f39806;
    --pp-btn-bg-hover:#c27905;
    --pp-btn-color:#1b160e;
    --pp-stars-off:#5d4e3a;
    --pp-wrap-bg:rgba(243,152,6,.06);
    --pp-wrap-border:rgba(243,152,6,.20);
    --pp-more-bg:rgba(243,152,6,.10);
    --pp-more-bg-hover:rgba(243,152,6,.20);
    --pp-shadow:0 8px 22px rgba(0,0,0,.38);
}

/* --- brand mark in the source header shell --- */
.i0064ea .nce2cc2{display:flex;align-items:center;gap:10px;text-decoration:none}
.br-brand{font-weight:900;font-size:22px;line-height:1;letter-spacing:.6px;color:var(--text-primary,#f4f1ed);white-space:nowrap}
.br-brand em{font-style:normal;color:var(--accent-1,#f39806)}

/* --- submenu --- */
.f5d83e8{position:relative}
.br-subnav{display:none;position:absolute;top:100%;left:0;min-width:210px;margin:0;padding:8px 0;list-style:none;background:var(--bg-content,#231d13);border:1px solid var(--border,#453829);border-radius:10px;box-shadow:0 10px 26px rgba(0,0,0,.45);z-index:40}
.f5d83e8:hover>.br-subnav{display:block}
.br-subnav li{margin:0}
.br-subnav a{display:block;padding:9px 16px;font-size:14px;color:var(--text-secondary,#cfc6b6);text-decoration:none}
.br-subnav a:hover{color:var(--accent-1,#f39806);background:rgba(243,152,6,.08)}

/* --- mobile drawer --- */
.br-drawer{position:fixed;inset:0 0 0 auto;width:min(320px,86vw);background:var(--bg-content,#231d13);border-left:1px solid var(--border,#453829);padding:20px;transform:translateX(105%);transition:transform .25s ease;z-index:120;overflow-y:auto}
.br-drawer.is-open{transform:translateX(0)}
.br-drawer__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.br-drawer__close{background:none;border:0;color:var(--text-primary,#f4f1ed);font-size:26px;line-height:1;cursor:pointer}
.br-drawer ul{list-style:none;margin:0;padding:0}
.br-drawer ul a{display:block;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07);color:var(--text-primary,#f4f1ed);text-decoration:none}
.br-drawer ul a:hover{color:var(--accent-1,#f39806)}

/* --- breadcrumbs --- */
.br-crumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:var(--text-secondary,#a99f8d);margin:0 0 18px}
.br-crumbs a{color:var(--text-secondary,#a99f8d);text-decoration:none}
.br-crumbs a:hover{color:var(--accent-1,#f39806)}
.br-crumbs__current{color:var(--text-primary,#f4f1ed)}

/* --- article cards --- */
.br-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin:22px 0 30px}
.br-card{margin:0}
.br-card__link{display:flex;flex-direction:column;gap:8px;height:100%;padding:18px;background:var(--bg-card,#2c2317);border:1px solid var(--border,#453829);border-radius:12px;text-decoration:none;transition:border-color .2s ease,transform .2s ease}
.br-card__link:hover{border-color:var(--accent-1,#f39806);transform:translateY(-2px)}
.br-card__cat{align-self:flex-start;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--accent-1,#f39806)}
.br-card__title{font-size:17px;font-weight:800;line-height:1.32;color:var(--text-primary,#f4f1ed)}
.br-card__excerpt{font-size:14px;line-height:1.55;color:var(--text-secondary,#b6a996)}
.br-card__more{margin-top:auto;font-size:13px;font-weight:700;color:var(--accent-1,#f39806)}

/* --- chips --- */
.br-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:18px 0 26px;padding:0}
.br-chip a{display:inline-block;padding:9px 16px;font-size:14px;background:var(--bg-card,#2c2317);border:1px solid var(--border,#453829);border-radius:999px;color:var(--text-primary,#f4f1ed);text-decoration:none}
.br-chip a:hover{border-color:var(--accent-1,#f39806);color:var(--accent-1,#f39806)}

/* --- pager --- */
.br-pager{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 8px}
.br-pager__link{display:inline-block;min-width:40px;padding:9px 13px;text-align:center;font-size:14px;background:var(--bg-card,#2c2317);border:1px solid var(--border,#453829);border-radius:8px;color:var(--text-primary,#f4f1ed);text-decoration:none}
.br-pager__link.is-active{background:var(--accent-1,#f39806);border-color:var(--accent-1,#f39806);color:#1b160e;font-weight:700}
.br-pager__link:hover:not(.is-active){border-color:var(--accent-1,#f39806)}

/* --- single post --- */
.br-postmeta{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;color:var(--text-secondary,#a99f8d);margin:0 0 22px}
.br-postbody{font-size:16px;line-height:1.75;color:var(--text-primary,#e8e2d6)}
.br-postbody h2{margin:34px 0 12px}
.br-postbody h3{margin:26px 0 10px}
.br-postbody p{margin:0 0 16px}
.br-postbody ul,.br-postbody ol{margin:0 0 18px;padding-left:22px}
.br-postbody li{margin:0 0 8px}
.br-postbody a{color:var(--accent-1,#f39806)}
.br-postbody table{width:100%;border-collapse:collapse;margin:0 0 22px}
.br-postbody th,.br-postbody td{border:1px solid var(--border,#453829);padding:10px 12px;text-align:left;font-size:15px}

/* --- banner button (source styles the <button>, ours is a link) --- */
.ca0c263.cf23a78.dd6e9d3 a{display:inline-block;padding:13px 45px;font-weight:700;font-size:15px;text-decoration:none;color:#1b160e;background:var(--accent-1,#f39806);border-radius:8px}
.ca0c263.cf23a78.dd6e9d3 a:hover{background:#c27905}

/* --- comments --- */
.br-comments{margin:38px 0 10px;padding-top:24px;border-top:1px solid var(--border,#453829)}
.br-comments__title{margin:0 0 16px}
.br-comment-list{list-style:none;margin:0;padding:0}
.br-comment{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.br-comment__meta{display:flex;gap:12px;font-size:12px;color:var(--text-secondary,#a99f8d);margin-bottom:6px}
.br-comment__author{font-weight:700;color:var(--text-primary,#f4f1ed)}
.br-comment__body{margin:0;font-size:15px;line-height:1.6}
.br-comments__empty{color:var(--text-secondary,#a99f8d)}

/* --- footer extras (source shell has no language switch) --- */
.br-langs{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:14px 0 0;padding:0}
.br-langs a,.br-langs span{display:inline-block;padding:6px 11px;font-size:13px;border:1px solid var(--border,#453829);border-radius:6px;color:var(--text-secondary,#cfc6b6);text-decoration:none}
.br-langs a:hover,.br-langs span.is-active{border-color:var(--accent-1,#f39806);color:var(--accent-1,#f39806)}
.br-fnote{margin:14px 0 0;font-size:12.5px;line-height:1.6;color:var(--text-secondary,#a99f8d)}

@media (max-width:700px){
    .br-grid{grid-template-columns:1fr}
    .ca0c263.cf23a78.dd6e9d3 a{display:block;text-align:center;padding:13px 20px}
}
