/* ===== Breslev Brochures — navy + gold theme ===== */
.bb-scope{
  --bb-navy:#0c2350; --bb-navy-2:#123a7a; --bb-navy-deep:#081638;
  --bb-gold:#f4c20d; --bb-gold-deep:#d9ab00; --bb-gold-soft:#fdf3cf;
  --bb-ink:#16233d; --bb-ink-2:#38455e; --bb-muted:#6b7688; --bb-line:#e4e8f0;
  --bb-surface:#fff; --bb-surface-2:#f5f7fb; --bb-radius:12px; --bb-radius-sm:8px;
  --bb-shadow:0 2px 10px rgba(10,25,60,.08); --bb-shadow-lg:0 14px 34px rgba(10,25,60,.16);
  direction:rtl; font-family:'Segoe UI','Alef',Tahoma,Arial,sans-serif; color:var(--bb-ink); line-height:1.5;
}
.bb-scope *{box-sizing:border-box}
.bb-btn{border:none; border-radius:var(--bb-radius-sm); font-weight:700; cursor:pointer; font-family:inherit; font-size:14px; height:42px; padding:0 18px; display:inline-flex; align-items:center; gap:7px; justify-content:center; text-decoration:none; transition:.15s;}
.bb-btn-gold{background:var(--bb-gold); color:var(--bb-navy);} .bb-btn-gold:hover{background:var(--bb-gold-deep);}
.bb-btn-blue{background:var(--bb-navy-2); color:#fff;} .bb-btn-blue:hover{background:var(--bb-navy);}
.bb-btn-ghost{background:var(--bb-surface); color:var(--bb-ink-2); border:1px solid var(--bb-line);}

/* ---- Filter bar ---- */
.bb-filterbar{display:flex; flex-wrap:wrap; gap:12px; background:var(--bb-navy); border-radius:var(--bb-radius); padding:16px; border-top:4px solid var(--bb-gold);}
.bb-field{flex:1; min-width:150px; display:flex; flex-direction:column; gap:5px;}
.bb-field.bb-grow{flex:1.6} .bb-field.bb-shrink{flex:0 0 auto; min-width:120px;}
.bb-field label{font-size:11.5px; font-weight:700; color:var(--bb-gold);}
.bb-field select, .bb-field input{height:42px; border:1px solid transparent; border-radius:var(--bb-radius-sm); padding:0 12px; font-size:14px; background:#fff; color:var(--bb-ink); font-family:inherit;}
.bb-field select:focus, .bb-field input:focus{outline:2px solid var(--bb-gold);}

.bb-res-meta{display:flex; justify-content:space-between; align-items:center; margin:18px 2px 14px; font-size:14px; color:var(--bb-muted);}
.bb-res-meta b{color:var(--bb-ink);}

/* ---- Grid + cards ---- */
.bb-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
@media(max-width:760px){ .bb-grid{grid-template-columns:1fr 1fr;} }
@media(max-width:460px){ .bb-grid{grid-template-columns:1fr;} }
.bb-card{display:flex; flex-direction:column; background:var(--bb-surface); border:1px solid var(--bb-line); border-radius:var(--bb-radius); overflow:hidden; box-shadow:var(--bb-shadow); text-decoration:none; color:inherit; transition:transform .15s, box-shadow .15s, border-color .15s;}
.bb-card:hover{transform:translateY(-3px); box-shadow:var(--bb-shadow-lg); border-color:var(--bb-gold);}
.bb-card-cover{position:relative; aspect-ratio:3/4; background:linear-gradient(160deg,#e9eef7,#f5f7fb); display:flex; align-items:center; justify-content:center; overflow:hidden;}
.bb-cover-img{width:100%; height:100%; object-fit:cover;}
.bb-cover-ph{position:absolute; inset:14px 20px; background:#fff; border:1px solid var(--bb-line); border-radius:4px; box-shadow:0 6px 16px rgba(0,0,0,.1); padding:14px; display:flex; flex-direction:column; gap:6px;}
.bb-cover-ph .t{height:9px; background:var(--bb-gold); border-radius:3px; width:70%;}
.bb-cover-ph .l{height:5px; background:var(--bb-line); border-radius:3px;} .bb-cover-ph .l.s{width:60%;}
.bb-ribbon{position:absolute; inset-block-start:10px; inset-inline-end:10px; background:var(--bb-gold); color:var(--bb-navy); font-size:11px; font-weight:800; padding:3px 9px; border-radius:5px; z-index:2;}
.bb-card-body{padding:13px 14px 15px; display:flex; flex-direction:column; gap:9px; flex:1;}
.bb-chips{display:flex; flex-wrap:wrap; gap:5px;}
.bb-chip{font-size:11px; font-weight:700; padding:2.5px 8px; border-radius:20px; background:#e9eef7; color:var(--bb-navy-2);}
.bb-chip.parasha{background:var(--bb-gold-soft); color:#8a6d00;}
.bb-chip.year{background:var(--bb-surface-2); color:var(--bb-muted); border:1px solid var(--bb-line);}
.bb-card-title{font-size:15.5px; font-weight:700; color:var(--bb-ink); line-height:1.3;}
.bb-card-stats{display:flex; gap:14px; align-items:center; font-size:12.5px; color:var(--bb-muted); margin-top:auto; padding-top:9px; border-top:1px solid var(--bb-line); font-variant-numeric:tabular-nums;}
.bb-card-stats b{color:var(--bb-ink-2);}
.bb-stars{color:var(--bb-gold); letter-spacing:1px; margin-inline-start:auto;}
.bb-star{font-style:normal; color:var(--bb-line);} .bb-star.on{color:var(--bb-gold);}
.bb-rate .bb-star{cursor:pointer; font-size:22px; transition:transform .1s;}
.bb-rate .bb-star:hover{transform:scale(1.15);}

.bb-pager{display:flex; justify-content:center; gap:6px; margin-top:24px; flex-wrap:wrap;}
.bb-pager .page-numbers{min-width:38px; height:38px; display:flex; align-items:center; justify-content:center; border:1px solid var(--bb-line); border-radius:var(--bb-radius-sm); font-size:14px; font-weight:600; background:#fff; color:var(--bb-ink-2); text-decoration:none;}
.bb-pager .page-numbers.current{background:var(--bb-gold); color:var(--bb-navy); border-color:var(--bb-gold);}
.bb-empty{text-align:center; padding:44px; background:var(--bb-surface-2); border-radius:var(--bb-radius); color:var(--bb-muted);}

/* ---- Carousel ---- */
.bb-caro-head{display:flex; justify-content:space-between; align-items:flex-end; border-bottom:2px solid #e9eef7; margin-bottom:16px;}
.bb-caro-head h2{font-size:22px; margin:0 0 -2px; color:var(--bb-navy); border-bottom:3px solid var(--bb-gold); padding-bottom:8px;}
.bb-caro-head a{color:var(--bb-navy-2); font-weight:700; font-size:13.5px; text-decoration:none;}
.bb-cattabs{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:16px;}
.bb-tab{font-size:13px; font-weight:700; padding:6px 14px; border-radius:20px; background:var(--bb-surface-2); color:var(--bb-muted); border:1px solid var(--bb-line); cursor:pointer;}
.bb-tab.on{background:var(--bb-navy); color:#fff; border-color:var(--bb-navy);}
.bb-caro-vp{position:relative;}
.bb-rail{display:flex; gap:16px; overflow-x:auto; scroll-behavior:smooth; scroll-snap-type:x mandatory; padding-bottom:6px; scrollbar-width:none;}
.bb-rail::-webkit-scrollbar{display:none;}
.bb-slide{flex:0 0 calc(25% - 12px); scroll-snap-align:start;}
@media(max-width:760px){ .bb-slide{flex:0 0 calc(50% - 8px);} }
@media(max-width:460px){ .bb-slide{flex:0 0 80%;} }
.bb-arrow{position:absolute; top:34%; width:40px; height:40px; border-radius:50%; background:#fff; border:1px solid var(--bb-line); box-shadow:var(--bb-shadow); display:flex; align-items:center; justify-content:center; font-size:20px; color:var(--bb-navy); cursor:pointer; z-index:3;}
.bb-arrow.r{inset-inline-end:-14px;} .bb-arrow.l{inset-inline-start:-14px;}

/* ---- Single view ---- */
.bb-single{display:grid; grid-template-columns:1.6fr 1fr; gap:22px; margin-bottom:26px;}
@media(max-width:820px){ .bb-single{grid-template-columns:1fr;} }
.bb-viewer{border:1px solid var(--bb-line); border-radius:var(--bb-radius); overflow:hidden; background:var(--bb-surface-2);}
.bb-vtool{display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; background:var(--bb-navy); color:#fff; padding:8px 12px;}
.bb-vtool .grp{display:flex; align-items:center; gap:6px;}
.bb-vtool button{background:rgba(255,255,255,.14); border:none; color:#fff; width:32px; height:32px; border-radius:6px; font-size:15px; cursor:pointer;}
.bb-vtool button:hover{background:var(--bb-gold); color:var(--bb-navy);}
.bb-pageno,.bb-zval{font-size:13px; font-variant-numeric:tabular-nums; padding:0 6px; min-width:46px; text-align:center;}
.bb-vdl{background:var(--bb-gold); color:var(--bb-navy); font-weight:700; padding:0 14px; height:32px; border-radius:6px; font-size:13px; display:inline-flex; align-items:center; gap:6px; text-decoration:none;}
.bb-canvas-wrap{max-height:900px; overflow:auto; text-align:center; padding:20px; background:var(--bb-surface-2);}
.bb-canvas{max-width:100%; box-shadow:var(--bb-shadow-lg); background:#fff;}

.bb-meta{display:flex; flex-direction:column; gap:16px;}
.bb-box{background:var(--bb-surface-2); border:1px solid var(--bb-line); border-radius:var(--bb-radius); padding:16px;}
.bb-box h1{font-size:21px; margin:0 0 10px; color:var(--bb-ink); line-height:1.25;}
.bb-mrow{display:flex; justify-content:space-between; padding:7px 0; border-bottom:1px dashed var(--bb-line); font-size:13.5px;}
.bb-mrow:last-child{border-bottom:none;} .bb-mrow span{color:var(--bb-muted);} .bb-mrow b{color:var(--bb-ink-2);}
.bb-statgrid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
.bb-stat{background:#fff; border:1px solid var(--bb-line); border-radius:var(--bb-radius-sm); padding:11px; text-align:center;}
.bb-stat b{display:block; font-size:22px; color:var(--bb-navy-2); font-variant-numeric:tabular-nums;} .bb-stat span{font-size:11.5px; color:var(--bb-muted);}
.bb-ratebox{display:flex; align-items:center; justify-content:space-between; margin-top:12px; font-size:13px; color:var(--bb-muted);}
.bb-dl-big{width:100%; height:50px; font-size:16px;}
.bb-desc{margin-top:10px;}

/* ---- Modal ---- */
.bb-modal{position:fixed; inset:0; z-index:99999; display:none;}
.bb-modal.open{display:block;}
.bb-modal-backdrop{position:absolute; inset:0; background:rgba(8,15,40,.6);}
.bb-modal-card{position:relative; max-width:640px; margin:5vh auto; background:#fff; border-radius:16px; box-shadow:var(--bb-shadow-lg); max-height:90vh; overflow:auto; direction:rtl; font-family:'Segoe UI','Alef',Tahoma,Arial,sans-serif;}
.bb-modal-head{display:flex; justify-content:space-between; align-items:center; background:var(--bb-navy); color:#fff; padding:16px 20px; border-radius:16px 16px 0 0;}
.bb-modal-head h3{margin:0; font-size:19px; color:var(--bb-gold);}
.bb-modal-x{background:rgba(255,255,255,.15); border:none; color:#fff; width:32px; height:32px; border-radius:8px; cursor:pointer; font-size:15px;}
.bb-modal-body{padding:20px;}
.bb-modal-intro{margin:0 0 16px; font-size:13.5px; color:var(--bb-muted);}
.bb-form-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px;}
@media(max-width:520px){ .bb-form-grid{grid-template-columns:1fr;} }
.bb-f{display:flex; flex-direction:column; gap:5px; font-size:12.5px; font-weight:700; color:var(--bb-ink-2);}
.bb-f.bb-full{grid-column:1/-1;}
.bb-f input, .bb-f select, .bb-f textarea{border:1px solid var(--bb-line); border-radius:var(--bb-radius-sm); padding:9px 11px; font-size:14px; font-weight:400; font-family:inherit; color:var(--bb-ink);}
.bb-f input:focus, .bb-f select:focus, .bb-f textarea:focus{outline:2px solid var(--bb-gold);}
.bb-dropzone{display:flex; flex-direction:column; align-items:center; gap:6px; border:2px dashed var(--bb-line); border-radius:var(--bb-radius); padding:22px; margin:14px 0; cursor:pointer; background:var(--bb-surface-2); text-align:center;}
.bb-dropzone.drag{border-color:var(--bb-gold); background:var(--bb-gold-soft);}
.bb-dz-ic{font-size:30px;} .bb-dz-txt{font-size:13.5px; color:var(--bb-muted);} .bb-dz-name{font-size:13px; font-weight:700; color:var(--bb-navy-2);}
.bb-modal-foot{display:flex; justify-content:flex-end; gap:10px; margin-top:8px;}
.bb-form-msg{margin-top:12px; font-size:14px; font-weight:700; text-align:center;}
.bb-form-msg.ok{color:#1a7f46;} .bb-form-msg.err{color:#b32d2e;}
