/* Functional stage-2 watched shelf. Stage 3 replaces the surrounding navigation design. */
.watched-intro, .watched-status, .watched-empty { color:var(--ink2); line-height:1.55; }
.watched-status:empty { display:none; }
.watched-heading { font-size:18px; margin:24px 0 12px; }
.watched-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.watched-card { position:relative; padding:0 0 12px; border:0; border-radius:18px; overflow:hidden;
                background:#fff; color:var(--ink); font:inherit; font-weight:600; text-align:start;
                cursor:pointer; box-shadow:var(--shadow); }
.watched-card:active { transform:scale(.99); }
.watched-poster { display:grid; place-items:center; width:100%; aspect-ratio:9/16; object-fit:cover;
                  background:#f4f2fc; font-size:40px; }
.watched-name { display:block; padding:10px 11px 0; line-height:1.4; }
.watched-state { display:block; padding:6px 11px 0; color:var(--ink2); font-size:12px; }
.watched-check { position:absolute; top:8px; inset-inline-end:8px; width:29px; height:29px;
                 display:grid; place-items:center; border-radius:50%; background:#e4efda;
                 color:#35652e; font-size:18px; font-weight:800; box-shadow:0 2px 8px rgba(45,42,69,.16); }
.watched-retry { margin-top:12px; padding:12px 20px; border:0; border-radius:14px; background:#fff;
                 color:var(--accent1); box-shadow:var(--shadow); font:inherit; font-weight:700; cursor:pointer; }
