{# `my_sea_slots` (built by `latest_draw_slots()` in `gameboard.models`) #}
{# carries one entry per spread position in DRAW_ORDER — filled slots #}
{# render the drawn card, empty slots render as labelled placeholders. #}
{# Spread lock-in: the row is created at first card draw, so the moment #}
{# 1+ cards exist all the spread's positions show in the applet. The #}
{# scroll container handles overflow (mirrors the Palettes applet). #}
{% if not request.user.significator_id %}
{# Sprint 4b applet-gate — DRYly rendered as a project-wide Brief #}
{# banner (`note-banner` Gaussian-glass shell, portaled to the #}
{# page h2). Inline body falls through to the empty-state "No #}
{# draws yet" since no sig → no draws is the only possible state.#}
{% include "apps/gameboard/_partials/_my_sea_sign_gate_brief.html" %}
No draws yet.
{% elif my_sea_slots %}
{% for slot in my_sea_slots %}
{% if slot.card %}
{# Mirrors the my_sign.html `.sig-stage-card` layout — #}
{# corner top-left, face w. name + arcana, mirror corner #}
{# bottom-right. Sized to fill the applet height via #}
{# container queries in `_gameboard.scss`. #}
{{ slot.card.corner_rank }}
{% if slot.card.suit_icon %}{% endif %}
{{ slot.card.name_title }}
{{ slot.card.get_arcana_display }}
{{ slot.card.corner_rank }}
{% if slot.card.suit_icon %}{% endif %}