/* iCafeFX r-buffet · R1-R8 shared styles · v107rnight
   Loaded via <link> on landing + manual hub + 12 chapters. */

/* === R1 · LIGHT THEME (default is dark from base stylesheet) === */
:root[data-rb-theme="light"]{
  --bg:#F8F8F2;
  --bg-surface:#FFFFFF;
  --bg-card:#FBF9F4;
  --text-primary:#1A1A1A;
  --text-secondary:#3A3A3A;
  --gold-primary:#B8893D;
  --gold-line:rgba(184,137,61,0.3);
  --border-default:rgba(184,137,61,0.18);
  color-scheme:light;
}
:root[data-rb-theme="light"] body{background:#F8F8F2;color:#1A1A1A}
:root[data-rb-theme="light"] .topnav{background:rgba(248,248,242,0.92);border-bottom-color:rgba(184,137,61,0.18)}
:root[data-rb-theme="light"] .topnav a{color:#1A1A1A}
:root[data-rb-theme="light"] .mpv107-card{background:#FFFFFF;border-color:rgba(184,137,61,0.25);box-shadow:0 4px 24px rgba(0,0,0,0.08)}
:root[data-rb-theme="light"] .mpv107-card h3{color:#1A1A1A!important}
:root[data-rb-theme="light"] .mpv107-card p{color:#5A5A5A!important}
:root[data-rb-theme="light"] .faq-item{background:#FFFFFF;color:#1A1A1A}

/* === R1 · THEME TOGGLE BUTTON === */
.rb-theme-toggle{
  position:fixed;bottom:24px;left:24px;z-index:9998;
  width:48px;height:48px;border-radius:50%;
  background:rgba(212,168,83,0.92);color:#0A0A0F;
  border:none;cursor:pointer;font-size:22px;line-height:1;
  box-shadow:0 4px 16px rgba(0,0,0,0.4);
  display:flex;align-items:center;justify-content:center;
  transition:all 0.2s;
}
.rb-theme-toggle:hover{transform:scale(1.08);background:#E8B96A}
:root[data-rb-theme="light"] .rb-theme-toggle{background:#B8893D;color:#FFFFFF}

/* === R7 · BACK-TO-TOP BUTTON === */
.rb-back-top{
  position:fixed;bottom:24px;right:24px;z-index:9998;
  width:48px;height:48px;border-radius:50%;
  background:rgba(212,168,83,0.92);color:#0A0A0F;
  border:none;cursor:pointer;font-size:22px;line-height:1;
  font-weight:700;
  box-shadow:0 4px 16px rgba(0,0,0,0.4);
  opacity:0;pointer-events:none;transition:all 0.3s;
  display:flex;align-items:center;justify-content:center;
}
.rb-back-top.show{opacity:1;pointer-events:auto}
.rb-back-top:hover{transform:translateY(-4px) scale(1.08);background:#E8B96A}

/* === R7 · PROGRESS PERCENT (enhance existing #progress-bar from M7) === */
.rb-progress-pct{
  position:fixed;top:60px;right:16px;z-index:9999;
  background:rgba(0,0,0,0.7);color:#D4A853;
  padding:4px 10px;border-radius:12px;
  font-size:11px;font-weight:600;letter-spacing:1px;
  font-family:inherit;backdrop-filter:blur(8px);
  opacity:0;transition:opacity 0.3s;
}
.rb-progress-pct.show{opacity:1}
:root[data-rb-theme="light"] .rb-progress-pct{background:rgba(255,255,255,0.92);color:#B8893D}

/* === R3 · COPY-CODE BUTTON === */
.rb-copy-btn{
  position:absolute;top:8px;right:8px;
  padding:4px 10px;border-radius:8px;
  background:rgba(212,168,83,0.2);color:#D4A853;
  border:1px solid rgba(212,168,83,0.3);
  font-size:11px;font-weight:600;cursor:pointer;
  letter-spacing:1px;font-family:inherit;
}
.rb-copy-btn:hover{background:rgba(212,168,83,0.35)}
.rb-copy-btn.copied{background:#10B981;color:#fff}
pre,code.block{position:relative}

/* === R4 · CHAPTER SIDEBAR TOC === */
.rb-sidebar{
  position:fixed;top:120px;right:24px;z-index:90;
  width:240px;max-height:calc(100vh - 160px);
  background:rgba(10,10,15,0.85);backdrop-filter:blur(12px);
  border:1px solid rgba(212,168,83,0.2);border-radius:12px;
  padding:16px 18px;overflow-y:auto;
  font-size:13px;line-height:1.5;
}
:root[data-rb-theme="light"] .rb-sidebar{background:rgba(255,255,255,0.92);border-color:rgba(184,137,61,0.25)}
.rb-sidebar-label{font-size:11px;letter-spacing:2px;color:#D4A853;margin-bottom:10px;font-weight:700;text-transform:uppercase}
.rb-sidebar ul{list-style:none;padding:0;margin:0}
.rb-sidebar li{margin:6px 0}
.rb-sidebar a{display:block;padding:6px 10px;color:rgba(255,255,255,0.7);text-decoration:none;border-radius:6px;border-left:2px solid transparent;transition:all 0.15s}
:root[data-rb-theme="light"] .rb-sidebar a{color:rgba(0,0,0,0.7)}
.rb-sidebar a:hover{background:rgba(212,168,83,0.1);color:#D4A853;border-left-color:rgba(212,168,83,0.4)}
.rb-sidebar a.active{background:rgba(212,168,83,0.15);color:#D4A853;border-left-color:#D4A853;font-weight:600}
.rb-sidebar .h3{padding-left:24px;font-size:12px;color:rgba(255,255,255,0.5)}
:root[data-rb-theme="light"] .rb-sidebar .h3{color:rgba(0,0,0,0.55)}
@media (max-width:1280px){.rb-sidebar{display:none}}

/* === R6 · SEARCH BAR === */
.rb-search-wrap{max-width:520px;margin:0 auto 32px;padding:0 16px}
.rb-search-input{
  width:100%;padding:14px 20px;
  background:rgba(255,255,255,0.04);color:#FFF;
  border:1px solid rgba(212,168,83,0.3);border-radius:32px;
  font-size:15px;font-family:inherit;
  transition:all 0.2s;outline:none;
}
.rb-search-input::placeholder{color:rgba(255,255,255,0.4)}
.rb-search-input:focus{border-color:#D4A853;background:rgba(212,168,83,0.06);box-shadow:0 0 0 4px rgba(212,168,83,0.1)}
.rb-search-info{font-size:12px;color:#A0A0B0;margin-top:8px;text-align:center;letter-spacing:1px}
:root[data-rb-theme="light"] .rb-search-input{background:#FFFFFF;color:#1A1A1A;border-color:rgba(184,137,61,0.4)}
.rb-search-hit{outline:2px solid rgba(212,168,83,0.5)!important}

/* === R8 · PRINT + PDF-CHAPTER BUTTONS === */
.rb-print-btn,.rb-pdf-btn{
  display:inline-flex;align-items:center;gap:6px;
  margin:4px;padding:8px 16px;
  background:rgba(212,168,83,0.15);color:#D4A853;
  border:1px solid rgba(212,168,83,0.4);border-radius:9999px;
  font-size:14px;cursor:pointer;text-decoration:none;font-family:inherit;
}
.rb-print-btn:hover,.rb-pdf-btn:hover{background:rgba(212,168,83,0.25)}

/* === R2 · COMPLETION TRACKER === */
.rb-chapter-complete-badge{
  position:absolute;top:16px;left:16px;z-index:3;
  background:#10B981;color:#FFF;
  padding:4px 10px;border-radius:16px;
  font-size:11px;font-weight:700;letter-spacing:1px;
  display:none;
}
.mpv107-card.is-complete .rb-chapter-complete-badge{display:inline-block}
.mpv107-card.is-complete{border-color:#10B981!important}

.rb-progress-summary{
  max-width:1280px;margin:0 auto 24px;padding:18px 24px;
  background:linear-gradient(135deg,rgba(16,185,129,0.08),rgba(212,168,83,0.06));
  border:1px solid rgba(16,185,129,0.2);border-radius:12px;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;
}
.rb-progress-summary .label{font-size:14px;color:#10B981;font-weight:600}
.rb-progress-summary .count{font-size:24px;font-weight:800;color:#FFF;font-family:var(--font-display,inherit)}
:root[data-rb-theme="light"] .rb-progress-summary .count{color:#1A1A1A}
.rb-progress-summary .pct-track{flex:1;min-width:200px;height:8px;background:rgba(255,255,255,0.08);border-radius:4px;overflow:hidden}
.rb-progress-summary .pct-fill{height:100%;background:linear-gradient(90deg,#10B981,#D4A853);transition:width 0.5s}
.rb-progress-summary .reset-btn{background:transparent;color:#A0A0B0;border:1px solid rgba(160,160,176,0.3);padding:6px 12px;border-radius:9999px;cursor:pointer;font-size:12px;font-family:inherit}
.rb-progress-summary .reset-btn:hover{color:#D4A853;border-color:#D4A853}

/* don't print these gadgets */
@media print{
  .rb-theme-toggle,.rb-back-top,.rb-progress-pct,.rb-sidebar,
  .rb-search-wrap,.rb-print-btn,.rb-pdf-btn,.rb-progress-summary,
  .rb-chapter-complete-badge,.rb-copy-btn{display:none!important}
}
