#status{margin-top:18px;min-height:1.5em;font-weight:600}
#status.err{color:var(--danger)}
.spin{display:inline-block;width:14px;height:14px;margin-right:8px;vertical-align:-2px;border:2px solid #fff;border-right-color:transparent;border-radius:50%;animation:r .7s linear infinite}
@keyframes r{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.spin{animation:none}html{scroll-behavior:auto}}

.result{margin-top:18px;background:#fff;color:var(--text);border-radius:14px;box-shadow:0 12px 32px rgba(5,30,80,.3);padding:14px;display:grid;gap:12px;text-align:left}
.thumb{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px;background:var(--fb-tint)}
.result h3{font-size:1.05rem;font-weight:700}
.dl{display:flex;flex-wrap:wrap;gap:10px}
.dlbtn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:150px;border:0;cursor:pointer;font:inherit;font-weight:600;font-size:.95rem;background:var(--fb-tint);color:var(--fb-dark);border-radius:10px;padding:11px 18px}
.dlbtn:hover{background:var(--fb);color:#fff}
.dlbtn:disabled{cursor:progress}
.dlbtn .fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--fb);opacity:.18;transition:width .15s linear}
.dlbtn .ms,.dlbtn .lbl,.dlbtn .bspin{position:relative}
.dlbtn .bspin{display:none;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:r .7s linear infinite}
.dlbtn.loading{background:var(--fb-tint);color:var(--fb-dark)}
.dlbtn.loading .bspin{display:inline-block}
.dlbtn.loading .ms{display:none}
.dlbtn.done{background:#E6F6EC;color:#1B7F3B}
.dlbtn.fail{background:#FDECEA;color:#B3261E}
.skel .sh{background:linear-gradient(90deg,#EEF1F5 25%,#F8FAFC 50%,#EEF1F5 75%);background-size:200% 100%;animation:sh 1.2s ease-in-out infinite;border-radius:10px}
.skel .thumb{border-radius:10px}
.skel .line{height:16px}
.skel .line.short{width:55%}
.skel .btnsk{width:150px;height:42px}
@keyframes sh{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.skel .sh,.dlbtn .bspin{animation:none}}

/* Sections */
section.block{padding:64px 0 8px}
.sec-head{text-align:center;max-width:620px;margin:0 auto 36px}
.sec-h{font-size:clamp(1.6rem,4.5vw,2.2rem);font-weight:800;letter-spacing:-.02em;margin-bottom:10px}
.sec-p{margin:0;color:var(--muted)}

.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cell{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.cell .ic{width:48px;height:48px;border-radius:50%;background:var(--fb-tint);color:var(--fb);display:grid;place-items:center;margin-bottom:14px}
.cell h3{font-size:1.1rem;font-weight:700;margin-bottom:6px}
.cell p{margin:0;color:var(--muted);font-size:.95rem}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.grid{grid-template-columns:1fr}}