/* Fetcher by Arman - front-end styles */
.fba-wrap{
	--fba-bg:#f3f3f3;--fba-text:#111;--fba-muted:#767676;--fba-star:#fbbc04;--fba-star-off:#d3d3d3;
	--fba-accent:#1a73e8;--fba-head-bg:#f3f3f3;--fba-border:rgba(0,0,0,.12);
	--fba-cols-d:3;--fba-gap:16px;--fba-radius:14px;--fba-pad:20px;--fba-fs:15px;--fba-ff:inherit;
	--fba-cols:var(--fba-cols-d);
	box-sizing:border-box;position:relative;width:100%;color:var(--fba-text);
	font-family:var(--fba-ff);font-size:var(--fba-fs);line-height:1.5;
}
.fba-wrap *,.fba-wrap *::before,.fba-wrap *::after{box-sizing:border-box}
.fba-theme-dark{--fba-bg:#1f2227;--fba-text:#f2f3f5;--fba-muted:#9aa0a8;--fba-star-off:#4a4f57;--fba-head-bg:#1f2227;--fba-border:rgba(255,255,255,.14)}
@media (max-width:1024px){.fba-wrap{--fba-cols:var(--fba-cols-t,2)}}
@media (max-width:640px){.fba-wrap{--fba-cols:var(--fba-cols-m,1)}}

.fba-empty{padding:16px 20px;border:1px dashed #c3c4c7;border-radius:8px;background:#fafafa;color:#50575e;font-size:14px}

/* Stars */
.fba-stars{position:relative;display:inline-block;white-space:nowrap;line-height:1;font-size:1.25em;letter-spacing:1px;vertical-align:middle}
.fba-stars-bg{color:var(--fba-star-off)}
.fba-stars-fg{position:absolute;left:0;top:0;overflow:hidden;color:var(--fba-star);width:calc(var(--r,5) / 5 * 100%)}

/* Header */
.fba-header{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;background:var(--fba-head-bg);border-radius:var(--fba-radius);padding:14px 24px;margin:0 0 16px}
.fba-brand{font-weight:700;font-size:1.35em;letter-spacing:-.01em;color:var(--fba-text)}
.fba-brand-img{height:28px;width:auto;display:block}
.fba-label{font-weight:700}
.fba-score{display:inline-flex;align-items:center;gap:10px;font-weight:700}
.fba-sep{display:inline-block;width:1px;height:1.1em;background:currentColor;opacity:.6}
.fba-btn{margin-left:auto;display:inline-block;padding:8px 20px;border:1px solid var(--fba-text);border-radius:6px;color:var(--fba-text)!important;text-decoration:none!important;font-weight:600;font-size:.93em;line-height:1.3;background:transparent;transition:background .15s,color .15s}
.fba-btn:hover{background:var(--fba-text);color:var(--fba-head-bg)!important}
.fba-header-centered{flex-direction:column;justify-content:center;text-align:center}
.fba-header-centered .fba-btn{margin:6px 0 0}
@media (max-width:640px){.fba-header{padding:14px 16px}.fba-btn{margin-left:0}}

/* Cards */
.fba-card{background:var(--fba-bg);color:var(--fba-text);border-radius:var(--fba-radius);padding:var(--fba-pad);display:flex;flex-direction:column;gap:10px;min-width:0;position:relative;transition:transform .2s,box-shadow .2s}
.fba-has-border .fba-card{border:1px solid var(--fba-border)}
.fba-shadow-soft .fba-card{box-shadow:0 2px 10px rgba(0,0,0,.08)}
.fba-shadow-medium .fba-card{box-shadow:0 6px 20px rgba(0,0,0,.12)}
.fba-shadow-strong .fba-card{box-shadow:0 12px 32px rgba(0,0,0,.2)}
.fba-hover-lift .fba-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,0,0,.16)}
.fba-card-top{display:flex;align-items:center;gap:12px}
.fba-avatar{position:relative;flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1.15em;overflow:hidden;text-transform:uppercase}
.fba-avatar-rounded .fba-avatar{border-radius:12px}
.fba-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fba-meta{min-width:0;flex:1}
.fba-name{font-weight:700;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fba-date{color:var(--fba-muted);font-size:.87em;line-height:1.3}
.fba-src{flex:0 0 auto;margin-left:auto;align-self:flex-start;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font:700 13px/1 Arial,sans-serif;color:var(--fba-muted);background:rgba(127,127,127,.14)}
.fba-src-img{background:none;border-radius:0;object-fit:contain}
.fba-rating{display:flex;align-items:center;gap:8px}
.fba-rating .fba-stars{font-size:1.2em}
.fba-verified{color:var(--fba-accent);flex:0 0 auto}
.fba-text{margin:0;overflow-wrap:anywhere;white-space:pre-line}
.fba-full{display:none}
.fba-card.is-open .fba-full{display:inline}
.fba-card.is-open .fba-short{display:none}
.fba-more{align-self:flex-start;background:none;border:0;padding:0;margin:-2px 0 0;font:inherit;font-size:.93em;color:var(--fba-muted);cursor:pointer;text-align:left;box-shadow:none}
.fba-more:hover{color:var(--fba-text);text-decoration:underline;background:none}
.fba-reply{border-left:3px solid var(--fba-accent);padding:4px 0 4px 12px;font-size:.92em;color:var(--fba-muted)}
.fba-reply strong{color:var(--fba-text);font-size:.95em}
.fba-reply p{margin:2px 0 0;white-space:pre-line}

/* Slider */
.fba-slider{position:relative}
.fba-viewport{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;outline:none}
.fba-viewport::-webkit-scrollbar{display:none}
.fba-track{display:flex;gap:var(--fba-gap)}
.fba-track>.fba-card{flex:0 0 calc((100% - (var(--fba-cols) - 1) * var(--fba-gap)) / var(--fba-cols));scroll-snap-align:start}
.fba-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:34px;height:34px;padding:0;border:0;border-radius:50%;background:#fff;color:#222;box-shadow:0 1px 8px rgba(0,0,0,.28);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .15s,transform .15s}
.fba-arrow:hover{transform:translateY(-50%) scale(1.08);background:#fff;color:#000}
.fba-arrow:disabled{opacity:.35;cursor:default;transform:translateY(-50%)}
.fba-prev{left:-14px}.fba-next{right:-14px}
@media (max-width:782px){.fba-prev{left:4px}.fba-next{right:4px}}
.fba-dots{display:flex;justify-content:center;gap:8px;margin-top:14px}
.fba-dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:var(--fba-muted);opacity:.35;cursor:pointer;transition:opacity .15s,transform .15s}
.fba-dot.is-active{opacity:1;background:var(--fba-accent);transform:scale(1.2)}

/* Grid / masonry / list */
.fba-grid{display:grid;grid-template-columns:repeat(var(--fba-cols),minmax(0,1fr));gap:var(--fba-gap)}
.fba-masonry{column-count:var(--fba-cols);column-gap:var(--fba-gap)}
.fba-masonry .fba-card{break-inside:avoid;margin-bottom:var(--fba-gap)}
.fba-list{display:flex;flex-direction:column;gap:var(--fba-gap)}

/* Floating badge */
.fba-badge-wrap{position:fixed;bottom:20px;z-index:99990}
.fba-pos-left{left:20px}.fba-pos-right{right:20px}
.fba-badge{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border:0;border-radius:999px;background:var(--fba-head-bg);color:var(--fba-text);box-shadow:0 6px 24px rgba(0,0,0,.22);cursor:pointer;font:inherit;transition:transform .15s}
.fba-badge:hover{transform:translateY(-2px)}
.fba-badge .fba-brand{font-size:1.05em}
.fba-badge-score{font-size:.9em;white-space:nowrap}
.fba-panel{position:absolute;bottom:calc(100% + 12px);width:min(380px,calc(100vw - 40px));max-height:min(70vh,560px);overflow:auto;padding:12px;border-radius:calc(var(--fba-radius) + 4px);background:var(--fba-head-bg);box-shadow:0 14px 44px rgba(0,0,0,.28)}
.fba-pos-left .fba-panel{left:0}.fba-pos-right .fba-panel{right:0}
.fba-panel[hidden]{display:none}
.fba-panel .fba-header{margin-bottom:12px;padding:6px 8px;background:transparent}
.fba-panel .fba-card{background:rgba(127,127,127,.12)}
.fba-static .fba-badge-wrap{position:relative;left:auto;right:auto;bottom:auto;display:flex;flex-direction:column;align-items:flex-start}
.fba-static .fba-pos-right{align-items:flex-end}
.fba-static .fba-panel{position:relative;bottom:auto;margin-bottom:12px}

@media (prefers-reduced-motion:reduce){.fba-viewport{scroll-behavior:auto}.fba-card,.fba-badge{transition:none}}
