/* ═══════════════════════════════════════════════════════════════
   BUMAGA RECEIPTS — Public Page Styles v1.0
   Location: /assets/css/receipts.css
   ═══════════════════════════════════════════════════════════════
   
   Clone of labels.css v3.0 — "Expandable Premium Catalog Card"
   Same 5-zone card, same grid, same responsive.
   
   Differences from labels.css:
   - No coverage map section
   - No ecosystem section  
   - No weight_price in Zone 4
   - Carousel lightbox (prev/next) instead of single image
   - Gallery image counter badge on method rows
   
   Namespace: rcp-*
   Dependencies: tokens.css (--bp-* variables)
   Zero hardcoded colors — all via design tokens.
   ═══════════════════════════════════════════════════════════════ */

.rcp-container { max-width:1300px; margin:0 auto; padding:40px 24px 60px; }

/* ══════════════════════════════════════════════════════════════
   HERO — 1:1 with labels.php
   ══════════════════════════════════════════════════════════════ */
.rcp-hero { text-align:center; margin-bottom:48px; }
.rcp-hero-title { font-size:42px; font-weight:900; margin-bottom:15px; display:flex; align-items:center; justify-content:center; gap:15px; color:var(--bp-text); }
.rcp-hero-icon { display:inline-flex; align-items:center; justify-content:center; width:56px; height:56px; background:linear-gradient(135deg, var(--bp-accent) 0%, #2d7cd6 100%); border-radius:var(--bp-radius); box-shadow:var(--bp-shadow-accent); }
.rcp-hero-icon svg { width:32px; height:32px; color:#fff; }
.rcp-hero-subtitle { color:var(--bp-text-secondary); font-size:18px; max-width:600px; margin:0 auto; line-height:1.6; }

/* ══════════════════════════════════════════════════════════════
   FILTERS
   ══════════════════════════════════════════════════════════════ */
.rcp-filters { display:flex; flex-direction:column; align-items:center; gap:16px; margin-bottom:36px; }
.rcp-filter-tabs { display:flex; align-items:center; gap:0; background:var(--bp-surface); border:1px solid var(--bp-border); border-radius:var(--bp-radius-sm); overflow:hidden; }
.rcp-filter-tab { padding:11px 28px; font-size:0.88rem; font-weight:600; border:none; background:transparent; color:var(--bp-text-secondary); cursor:pointer; transition:all var(--bp-transition); text-decoration:none; position:relative; }
.rcp-filter-tab:not(:last-child)::after { content:''; position:absolute; right:0; top:20%; height:60%; width:1px; background:var(--bp-border); }
.rcp-filter-tab:hover { color:var(--bp-text); background:rgba(255,255,255,0.03); }
.rcp-filter-tab.active { background:var(--bp-accent-dim); color:var(--bp-accent); }
.rcp-filter-tab.active::after { display:none; }
.rcp-search-wrap { display:flex; align-items:center; gap:10px; }
.rcp-search-input { background:var(--bp-surface); border:1px solid var(--bp-border); color:var(--bp-text); padding:11px 20px; border-radius:var(--bp-radius-sm); font-size:0.9rem; font-family:var(--bp-sans); width:340px; transition:border-color var(--bp-transition); }
.rcp-search-input::placeholder { color:var(--bp-text-muted); }
.rcp-search-input:focus { border-color:var(--bp-accent); outline:none; box-shadow:0 0 0 3px var(--bp-accent-dim); }
.rcp-search-reset { padding:11px 20px; border-radius:var(--bp-radius-sm); font-size:0.82rem; font-weight:500; border:1px solid var(--bp-red); background:transparent; color:var(--bp-red); cursor:pointer; text-decoration:none; transition:all var(--bp-transition); font-family:var(--bp-sans); }
.rcp-search-reset:hover { background:var(--bp-red-dim); }

/* ── Client-Side Search States ── */
.rcp-card--dimmed { opacity:0.2; pointer-events:none; transition:opacity 0.3s ease; }
.rcp-card--search-match { border-color:rgba(74,158,255,0.25); }
.rcp-method-row--search-hit { background:rgba(74,158,255,0.1) !important; box-shadow:inset 3px 0 0 var(--bp-accent); }
.rcp-method-row--search-hit .rcp-method-name { color:var(--bp-accent); font-weight:600; }

/* ── Filter Tab Count Badge ── */
.rcp-filter-count { font-size:0.7rem; font-weight:700; color:var(--bp-text-muted); background:rgba(255,255,255,0.06); padding:2px 7px; border-radius:var(--bp-radius-xs); margin-left:4px; }
.rcp-filter-tab.active .rcp-filter-count { color:var(--bp-accent); background:rgba(74,158,255,0.12); }

/* ── Context Bar ── */
.rcp-context-bar { display:flex; align-items:center; justify-content:center; gap:6px; margin-top:16px; font-size:0.82rem; color:var(--bp-text-muted); }
.rcp-context-item { display:inline-flex; align-items:center; gap:4px; }
.rcp-context-value { color:var(--bp-accent); font-weight:700; font-family:var(--bp-mono); }
.rcp-context-label { color:var(--bp-text-muted); }
.rcp-context-sep { color:rgba(255,255,255,0.15); font-weight:300; }

/* ══════════════════════════════════════════════════════════════
   GRID
   ══════════════════════════════════════════════════════════════ */
.rcp-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:18px; margin-bottom:48px; }

/* ══════════════════════════════════════════════════════════════
   CARD — Base container
   ══════════════════════════════════════════════════════════════ */
.rcp-card {
    background:var(--bp-card);
    border:1px solid rgba(255,255,255,0.06);
    border-radius:var(--bp-radius);
    overflow:hidden;
    transition:border-color var(--bp-transition), box-shadow var(--bp-transition), opacity 0.3s ease;
    display:flex;
    flex-direction:column;
    position:relative;
}
.rcp-card:hover { border-color:rgba(255,255,255,0.12); box-shadow:0 4px 24px rgba(0,0,0,0.3); }
.rcp-card--expanded { border-color:var(--bp-accent-border); box-shadow:0 8px 32px rgba(0,0,0,0.4), 0 0 0 1px var(--bp-accent-border); }

/* Deep link highlight */
.rcp-card--deep-highlight { border-color:var(--bp-accent) !important; animation:rcp-deep-pulse 2.5s ease; z-index:2; position:relative; }
@keyframes rcp-deep-pulse {
    0%   { box-shadow:0 0 0 0 rgba(74,158,255,0.6); }
    20%  { box-shadow:0 0 0 8px rgba(74,158,255,0.3), 0 4px 30px rgba(74,158,255,0.15); }
    100% { box-shadow:0 0 0 0 rgba(74,158,255,0); }
}

/* ══════════════════════════════════════════════════════════════
   ZONE 1 — Card Header
   ══════════════════════════════════════════════════════════════ */
.rcp-card-head { padding:16px 18px; display:flex; align-items:center; gap:10px; border-bottom:1px solid var(--bp-border); flex-shrink:0; }
.rcp-card-flag { font-size:1.75rem; line-height:1; }
.rcp-card-info { flex:1; min-width:0; }
.rcp-card-name { font-size:1rem; font-weight:700; color:var(--bp-text); }
.rcp-card-meta { font-size:0.72rem; color:var(--bp-text-muted); margin-top:1px; }
.rcp-card-count { font-size:0.72rem; padding:3px 9px; border-radius:var(--bp-radius-xs); background:rgba(255,255,255,0.06); color:var(--bp-text-secondary); font-weight:700; flex-shrink:0; }

/* Share link button */
.rcp-card-share {
    display:flex; align-items:center; justify-content:center;
    width:28px; height:28px; border:none; border-radius:6px;
    background:transparent; color:var(--bp-text-muted);
    cursor:pointer; transition:all 0.2s; flex-shrink:0;
    opacity:0;
}
.rcp-card:hover .rcp-card-share { opacity:1; }
.rcp-card-share:hover { background:rgba(74,158,255,0.12); color:var(--bp-accent); }
.rcp-card-share svg { width:15px; height:15px; }

/* ══════════════════════════════════════════════════════════════
   ZONE 2 — Methods List
   ══════════════════════════════════════════════════════════════ */
.rcp-card-methods-wrap { position:relative; flex:1; min-height:252px; }
.rcp-card-methods { padding:0; }
.rcp-card--expanded .rcp-card-methods { max-height:336px; overflow-y:auto; scroll-behavior:smooth; }

/* Custom scrollbar */
.rcp-card--expanded .rcp-card-methods::-webkit-scrollbar { width:4px; }
.rcp-card--expanded .rcp-card-methods::-webkit-scrollbar-track { background:transparent; }
.rcp-card--expanded .rcp-card-methods::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.15); border-radius:2px; }
.rcp-card--expanded .rcp-card-methods::-webkit-scrollbar-thumb:hover { background:rgba(74,158,255,0.4); }
.rcp-card--expanded .rcp-card-methods { scrollbar-width:thin; scrollbar-color:rgba(255,255,255,0.15) transparent; }

/* Fade gradient */
.rcp-methods-fade { position:absolute; bottom:0; left:0; right:4px; height:40px; background:linear-gradient(to bottom, transparent, var(--bp-card)); pointer-events:none; opacity:0; transition:opacity var(--bp-transition); z-index:1; }
.rcp-card--expanded .rcp-methods-fade.rcp-methods-fade--active { opacity:1; }

/* Method row */
.rcp-method-row { display:flex; align-items:center; padding:6px 18px; gap:10px; min-height:48px; transition:background var(--bp-transition-fast); cursor:pointer; }
.rcp-method-row:nth-child(odd) { background:rgba(255,255,255,0.02); }
.rcp-method-row:hover { background:rgba(74,158,255,0.06); box-shadow:inset 2px 0 0 var(--bp-accent); }

/* Always-visible cover thumbnail */
.rcp-method-thumb { width:36px; height:36px; border-radius:6px; object-fit:cover; border:1px solid rgba(255,255,255,0.08); flex-shrink:0; transition:border-color 0.2s, transform 0.2s; }
.rcp-method-row:hover .rcp-method-thumb { border-color:var(--bp-accent); transform:scale(1.08); }
.rcp-method-thumb--err { display:none; }
.rcp-method-thumb-empty { width:36px; height:36px; border-radius:6px; background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.06); display:flex; align-items:center; justify-content:center; font-size:0.75rem; flex-shrink:0; }

/* Hidden/visible rows */
.rcp-method-row--hidden { display:none; }
.rcp-method-row--hidden.rcp-method-row--visible { display:flex; }

.rcp-method-info { flex:1; min-width:0; line-height:1.2; }
.rcp-method-name { font-size:0.8rem; font-weight:500; color:var(--bp-text); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.rcp-method-risk { font-size:0.62rem; color:var(--bp-orange); font-style:italic; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:100%; line-height:1; }
.rcp-method-risk.safe { color:var(--bp-green); }
.rcp-method-right { display:flex; align-items:center; gap:8px; flex-shrink:0; }
.rcp-method-price { font-size:0.88rem; font-weight:700; color:var(--bp-text); font-family:var(--bp-mono); white-space:nowrap; }
.rcp-method-img-badge { font-size:0.6rem; color:var(--bp-text-muted); background:rgba(255,255,255,0.06); padding:2px 6px; border-radius:4px; }

/* Active method row */
.rcp-method-row--active { background:rgba(74,158,255,0.08) !important; box-shadow:inset 2px 0 0 var(--bp-accent); }

/* ── Inline Method Detail ── */
.rcp-method-detail { padding:10px 18px 12px; background:rgba(74,158,255,0.04); border-top:1px solid rgba(74,158,255,0.1); border-bottom:1px solid rgba(74,158,255,0.1); display:flex; gap:12px; align-items:flex-start; animation:rcp-detail-in 0.2s ease; }
@keyframes rcp-detail-in { from { opacity:0; max-height:0; padding-top:0; padding-bottom:0; } to { opacity:1; max-height:200px; } }

/* Thumbnail in detail */
.rcp-detail-thumb-wrap { position:relative; width:110px; height:80px; flex-shrink:0; cursor:pointer; border-radius:var(--bp-radius-xs); overflow:hidden; }
.rcp-detail-thumb { width:100%; height:100%; object-fit:cover; border:1px solid var(--bp-border); border-radius:var(--bp-radius-xs); transition:border-color var(--bp-transition); }
.rcp-detail-thumb-wrap:hover .rcp-detail-thumb { border-color:var(--bp-accent); }
.rcp-detail-thumb-overlay { position:absolute; inset:0; background:rgba(0,0,0,0.5); display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity var(--bp-transition); border-radius:var(--bp-radius-xs); }
.rcp-detail-thumb-wrap:hover .rcp-detail-thumb-overlay { opacity:1; }
.rcp-detail-thumb-overlay svg { width:24px; height:24px; color:#fff; }

/* Detail info */
.rcp-detail-info { flex:1; min-width:0; }
.rcp-detail-name { font-size:0.82rem; font-weight:600; color:var(--bp-text); margin-bottom:3px; }
.rcp-detail-price { font-size:0.78rem; color:var(--bp-text-secondary); font-family:var(--bp-mono); margin-bottom:4px; }
.rcp-detail-risk { font-size:0.68rem; font-style:italic; margin-bottom:4px; }
.rcp-detail-risk.warn { color:var(--bp-orange); }
.rcp-detail-risk.safe { color:var(--bp-green); }
.rcp-detail-notes { margin-top:4px; }
.rcp-detail-note-item { font-size:0.68rem; color:var(--bp-text-secondary); padding-left:10px; position:relative; line-height:1.4; margin:2px 0; }
.rcp-detail-note-item::before { content:'·'; position:absolute; left:0; color:var(--bp-orange); font-weight:700; }

/* View image / gallery button */
.rcp-detail-view-btn { display:inline-flex; align-items:center; gap:5px; margin-top:6px; padding:4px 10px; font-size:0.68rem; font-weight:600; font-family:var(--bp-sans); color:rgba(74,158,255,0.8); background:rgba(74,158,255,0.08); border:1px solid rgba(74,158,255,0.15); border-radius:6px; cursor:pointer; transition:all var(--bp-transition); }
.rcp-detail-view-btn:hover { background:rgba(74,158,255,0.15); color:var(--bp-accent); }
.rcp-detail-view-btn svg { width:12px; height:12px; }

/* No-image detail */
.rcp-method-detail--no-image { }

/* ══════════════════════════════════════════════════════════════
   LIGHTBOX — Carousel (prev/next)
   ══════════════════════════════════════════════════════════════ */
.rcp-lightbox { position:fixed; inset:0; z-index:2000; background:rgba(0,0,0,0.85); display:flex; flex-direction:column; align-items:center; justify-content:center; opacity:0; visibility:hidden; transition:opacity 0.25s ease, visibility 0.25s ease; cursor:pointer; }
.rcp-lightbox.open { opacity:1; visibility:visible; }

.rcp-lightbox-close { position:absolute; top:16px; right:20px; width:40px; height:40px; border-radius:50%; border:1px solid rgba(255,255,255,0.2); background:rgba(0,0,0,0.5); color:#fff; font-size:1.4rem; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all var(--bp-transition); z-index:2; }
.rcp-lightbox-close:hover { background:rgba(255,255,255,0.1); border-color:rgba(255,255,255,0.4); }

.rcp-lightbox-img { max-width:90vw; max-height:80vh; border-radius:var(--bp-radius); box-shadow:0 20px 60px rgba(0,0,0,0.6); cursor:default; object-fit:contain; transform:scale(0.95); transition:transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s ease; }
.rcp-lightbox.open .rcp-lightbox-img { transform:scale(1); }

.rcp-lightbox-caption { margin-top:14px; text-align:center; color:rgba(255,255,255,0.7); font-size:0.85rem; cursor:default; }
.rcp-lightbox-caption-name { font-weight:600; color:#fff; }
.rcp-lightbox-caption-price { font-family:var(--bp-mono); margin-left:8px; }
.rcp-lightbox-caption-note { display:block; font-size:0.72rem; color:rgba(255,255,255,0.4); margin-top:3px; }

/* Carousel nav arrows */
.rcp-lightbox-nav { position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; border-radius:50%; border:1px solid rgba(255,255,255,0.2); background:rgba(0,0,0,0.6); color:#fff; font-size:1.2rem; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all 0.2s; z-index:2; }
.rcp-lightbox-nav:hover { background:rgba(74,158,255,0.3); border-color:rgba(74,158,255,0.5); }
.rcp-lightbox-nav:disabled { opacity:0.2; cursor:default; }
.rcp-lightbox-nav:disabled:hover { background:rgba(0,0,0,0.6); border-color:rgba(255,255,255,0.2); }
.rcp-lightbox-prev { left:20px; }
.rcp-lightbox-next { right:20px; }

/* Counter badge */
.rcp-lightbox-counter { position:absolute; bottom:20px; left:50%; transform:translateX(-50%); font-size:0.78rem; color:rgba(255,255,255,0.5); font-weight:600; background:rgba(0,0,0,0.6); padding:4px 14px; border-radius:20px; z-index:2; }

/* ══════════════════════════════════════════════════════════════
   ZONE 3 — Expand Trigger
   ══════════════════════════════════════════════════════════════ */
.rcp-expand-trigger { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; padding:10px 18px; font-size:0.8rem; font-weight:600; font-family:var(--bp-sans); color:rgba(74,158,255,0.8); background:transparent; border:none; border-top:1px solid var(--bp-border); cursor:pointer; transition:all var(--bp-transition); }
.rcp-expand-trigger:hover { background:rgba(74,158,255,0.06); color:var(--bp-accent); text-shadow:0 0 12px rgba(74,158,255,0.3); }
.rcp-expand-trigger-count { font-size:0.68rem; padding:2px 7px; border-radius:var(--bp-radius-xs); background:rgba(74,158,255,0.08); color:rgba(74,158,255,0.7); font-weight:700; }
.rcp-expand-arrow { width:16px; height:16px; color:rgba(74,158,255,0.5); transition:transform var(--bp-transition); flex-shrink:0; }
.rcp-card--expanded .rcp-expand-arrow { transform:rotate(180deg); }

/* ══════════════════════════════════════════════════════════════
   ZONE 4 — Card Meta (notes only, no weight)
   ══════════════════════════════════════════════════════════════ */
.rcp-card-meta-zone { flex-shrink:0; }

/* Notes wrapper */
.rcp-card-notes-wrap { border-top:1px solid var(--bp-border); }
.rcp-card-notes-teaser { display:flex; align-items:center; gap:6px; width:100%; padding:7px 18px; font-size:0.72rem; color:var(--bp-text-secondary); background:transparent; border:none; cursor:pointer; font-family:var(--bp-sans); text-align:left; transition:background var(--bp-transition); }
.rcp-card-notes-teaser:hover { background:var(--bp-orange-dim); }
.rcp-notes-icon { font-size:0.8rem; flex-shrink:0; }
.rcp-notes-teaser-text { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.rcp-notes-more-badge { font-size:0.62rem; padding:1px 6px; border-radius:var(--bp-radius-xs); background:var(--bp-orange-dim); color:var(--bp-orange); font-weight:700; flex-shrink:0; }
.rcp-notes-arrow { width:14px; height:14px; color:var(--bp-text-muted); transition:transform var(--bp-transition); flex-shrink:0; margin-left:auto; }
.rcp-card-notes-wrap.open .rcp-notes-arrow { transform:rotate(180deg); color:var(--bp-orange); }

/* Full notes */
.rcp-card-notes-full { max-height:0; overflow:hidden; transition:max-height 0.3s ease, padding 0.3s ease; padding:0 18px; background:var(--bp-orange-dim); }
.rcp-card-notes-wrap.open .rcp-card-notes-full { max-height:300px; padding:8px 18px 10px; }
.rcp-card-note-item { font-size:0.72rem; color:var(--bp-text-secondary); margin:3px 0; padding-left:12px; position:relative; line-height:1.4; }
.rcp-card-note-item::before { content:'·'; position:absolute; left:0; color:var(--bp-orange); font-weight:700; }

/* ══════════════════════════════════════════════════════════════
   ZONE 5 — Primary CTA (matches Labels — unified product language)
   ══════════════════════════════════════════════════════════════ */
.rcp-card-cta { padding:12px 14px; margin-top:auto; }
.rcp-order-btn { display:block; width:100%; padding:12px; text-align:center; font-size:0.85rem; font-weight:600; color:#fff; background:linear-gradient(135deg, #4a9eff 0%, #2d7cd6 100%); border:none; border-radius:var(--bp-radius-sm); cursor:pointer; transition:all var(--bp-transition); text-decoration:none; text-transform:uppercase; letter-spacing:0.5px; }
.rcp-order-btn:hover { background:linear-gradient(135deg, #5eadff 0%, #3d8be5 100%); box-shadow:0 4px 20px rgba(74,158,255,0.3), 0 1px 6px rgba(74,158,255,0.15) inset; transform:translateY(-1px); }

/* ══════════════════════════════════════════════════════════════
   EMPTY STATE
   ══════════════════════════════════════════════════════════════ */
.rcp-empty { grid-column:1/-1; text-align:center; padding:60px 20px; }
.rcp-empty-icon { font-size:3rem; margin-bottom:12px; }
.rcp-empty-title { font-size:1.1rem; font-weight:600; color:var(--bp-text); margin-bottom:6px; }
.rcp-empty-text { font-size:0.88rem; color:var(--bp-text-muted); }

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════════ */
@media (max-width:1200px) {
    .rcp-grid { grid-template-columns:repeat(3, 1fr); }
}

@media (max-width:900px) {
    .rcp-grid { grid-template-columns:repeat(2, 1fr); gap:14px; }
    .rcp-hero-title { font-size:32px; }
    .rcp-hero-subtitle { font-size:16px; }
    .rcp-filter-tab { padding:9px 18px; font-size:0.82rem; }
    .rcp-search-input { width:260px; }
    .rcp-context-bar { font-size:0.78rem; gap:5px; }
    .rcp-detail-thumb-wrap { width:90px; height:65px; }
    .rcp-lightbox-img { max-width:92vw; max-height:75vh; }
    .rcp-lightbox-nav { width:38px; height:38px; font-size:1rem; }
    .rcp-lightbox-prev { left:10px; }
    .rcp-lightbox-next { right:10px; }
}

@media (max-width:600px) {
    .rcp-container { padding:24px 16px 40px; }
    .rcp-grid { grid-template-columns:1fr; gap:14px; }

    .rcp-hero { margin-bottom:32px; }
    .rcp-hero-title { font-size:26px; gap:10px; }
    .rcp-hero-icon { width:44px; height:44px; }
    .rcp-hero-icon svg { width:24px; height:24px; }
    .rcp-hero-subtitle { font-size:14px; }

    .rcp-filters { gap:12px; margin-bottom:24px; }
    .rcp-filter-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        width: 100%;
        /* Fade right edge hint */
        -webkit-mask-image: linear-gradient(to right, black 85%, transparent 100%);
        mask-image: linear-gradient(to right, black 85%, transparent 100%);
    }
    .rcp-filter-tabs::-webkit-scrollbar { display: none; }
    .rcp-filter-tab { padding:8px 16px; font-size:0.8rem; flex-shrink: 0; }
    .rcp-filter-tab:not(:last-child)::after { display:none; }
    .rcp-search-wrap { width:100%; }
    .rcp-search-input { width:100%; }

    .rcp-context-bar { flex-wrap:wrap; font-size:0.75rem; gap:4px 6px; margin-top:10px; }

    .rcp-card-head { padding:12px 14px; gap:8px; }
    .rcp-card-flag { font-size:1.5rem; }
    .rcp-card-name { font-size:0.95rem; }
    .rcp-card-meta { font-size:0.68rem; }
    .rcp-card-count { font-size:0.68rem; padding:2px 7px; }

    .rcp-card-methods-wrap { min-height:210px; }
    .rcp-method-row { padding:6px 14px; min-height:44px; gap:8px; }
    .rcp-method-name { font-size:0.78rem; }
    .rcp-method-price { font-size:0.82rem; }
    .rcp-method-risk { font-size:0.6rem; }

    .rcp-method-detail { flex-direction:column; padding:10px 14px 12px; gap:10px; }
    .rcp-detail-thumb-wrap { width:100%; height:120px; }
    .rcp-detail-thumb { object-fit:contain; background:rgba(0,0,0,0.2); }
    .rcp-detail-name { font-size:0.8rem; }
    .rcp-detail-view-btn { width:100%; justify-content:center; padding:8px 12px; font-size:0.72rem; }

    .rcp-expand-trigger { padding:10px 14px; font-size:0.78rem; min-height:44px; }

    .rcp-card-notes-teaser { padding:7px 14px; font-size:0.7rem; min-height:44px; }

    .rcp-card-cta { padding:10px 12px; }
    .rcp-order-btn { padding:14px; font-size:0.82rem; min-height:48px; }

    /* Thumbnails on mobile — slightly smaller */
    .rcp-method-thumb { width:32px; height:32px; }
    .rcp-method-thumb-empty { width:32px; height:32px; font-size:0.65rem; }

    .rcp-lightbox-close { top:12px; right:12px; width:36px; height:36px; font-size:1.2rem; }
    .rcp-lightbox-img { max-width:95vw; max-height:70vh; border-radius:8px; }
    .rcp-lightbox-caption { font-size:0.78rem; padding:0 16px; }
    .rcp-lightbox-caption-note { font-size:0.68rem; }
    .rcp-lightbox-nav { width:36px; height:36px; font-size:1rem; }
    .rcp-lightbox-prev { left:8px; }
    .rcp-lightbox-next { right:8px; }

    .rcp-empty { padding:40px 16px; }
    .rcp-empty-icon { font-size:2.5rem; }
    .rcp-empty-title { font-size:1rem; }
    .rcp-empty-text { font-size:0.82rem; }

    .rcp-card-share { opacity:1; }
}

/* ══════════════════════════════════════════════════════════════
   TOAST
   ══════════════════════════════════════════════════════════════ */
.rcp-toast { position:fixed; bottom:30px; left:50%; transform:translateX(-50%) translateY(80px); background:rgba(76,175,80,0.95); color:#fff; padding:12px 24px; border-radius:var(--bp-radius-xs); font-size:14px; font-weight:500; z-index:9999; opacity:0; transition:all 0.3s ease; box-shadow:0 4px 20px rgba(0,0,0,0.3); pointer-events:none; font-family:var(--bp-sans); white-space:nowrap; }
.rcp-toast.visible { opacity:1; transform:translateX(-50%) translateY(0); pointer-events:auto; }
